首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

TCP协议的特点TCP头部结构信息

TCP协议的特点: (1)相对于传输层的UDP协议,TCP协议的特点是面向连接的、可靠的传输和字节流。 (2)使用TCP协议通信的双方必须首先建立连接,然后才能开始数据的读写。...进行TCP通信时,客户端通常使用系统自动选择的临时端口号,而服务器则使用知名服务器端口号。在/etc/services中可以查看相关服务的端口。 如http,ftp等。...假设主机A和主机B进行TCP通信,A发送给B的第一个TCP报文段中,序号值被系统初始化为某个随机值ISN。...其值是收到的TCP报文段的序号值+1。现在假设主机A于主机B进行TCP通信,那么A发送出的TCP报文段不仅携带自己的序号,而且还包含对B发送来的TCP报文段的确认号。反之亦然。...TCP的紧急指针是发送端向接受端发送紧急数据的方法。 参考《Linux 高性能服务器编程》

62320
您找到你想要的搜索结果了吗?
是的
没有找到

进程线程剖析(二)-进程组成、状态与特点

这篇文章我们详细说下进程的组成、状态及特点进程线程概念全解析二 - 进程的组成、状态、特点 一、进程的组成及创建 进程的组成主要包括三大部分:PCB、程序段与数据段。...主要包括如下信息: 进程描述信息:PID 即唯一标识进程的整形数据,每个进程对应一个 PID;UID 表示进程对应的用户ID。...这里进程的创建其实也可以理解为进程的复制或创建子进程。过程是一样的。...三、进程特点 进程,表示是当前正在运行的进程实体(也可以理解为程序代码),“正在运行”体现了进程一个很重要的特征,那就是动态性。...其中 PCB 是一种数据结构,为操作系统管理进程提供信息 进程状态的切换,不同操作系统对进程状态细分程序不一样 进程具有动态性、并发性、结构性、独立性、异步性等特点

89920

TCPIP笔记——TCP特点、首部格式、滑动窗口

TCP主要特点 面向连接:在通信前必须建立连接(只是逻辑上存在,而不是物理连接) 只能有两个端点:即只能一对一通信(所以通常p2p是用UDP实现的) 提供可靠交付服务:保证发送的数据无差错、不丢失、不重复...TCP连接两端都有发送和接收缓存,在发送前先将数据写入缓存,TCP会自己选择合适的时候发送(接受同理,先写入缓存然后再读取) 面向字节流:流指的是流入到进程或者从进程流出的字节序列,TCP类似搬运工,只管发送接收...太长TCP会自己进行划分,太短,TCP会存下来等到一定程度后再发送。 TCP连接 TCP连接的端点叫做socket、套接字或插口。每个TCP连接有两个端点,具体定义如下: P.S....同一个IP可以有多个不同的TCP连接,同一个端口号可以出现在多个不同TCP连接中。...连接建立后所有传送的报文段必须把ACK置1 推送PSH(PuSH):接收方接收到PSH置1的报文的时候,会尽快交付接收应用进程,而不是放在缓存中。

59420

【计算机网络】传输层 : TCP 协议 ( TCP 协议特点 | TCP 报文段首部格式 | TCP 报文段控制位 )

文章目录 一、TCP 协议 特点 二、TCP 报文段首部格式 三、TCP 报文段首部 6 控制位 一、TCP 协议 特点 ---- TCP 协议 特点 : ① 面向连接 : TCP 协议的连接是 “...数据 看做 无结构的字节流 ; 二、TCP 报文段首部格式 ---- TCP 报文段首部格式 : ① TCP 报文段组成 : 由 TCP 首部 和 TCP 数据部分 组成 ; ② TCP 首部格式...③ 源端口 / 目的端口 : 进程端口号 , 每个 2 字节 , 取值范围 0 ~ 65535 ; ④ 序号 : TCP 连接中 , 字节流中的 字节按照顺序编号 , 每个字节都有一个序号...; ⑥ 数据偏移 : TCP 报文段 数据部分起始位置 , 距离 TCP 报文段的起始位置 , 有多远 , 单位 4 字节 ; 即 整个 TCP 报文段 中 TCP 首部的长度 ; ⑦ 窗口 :...: ACK = 1 时 , 确认号有效 , 连接建立后 , 所有的报文段的 ACK 都必须设置为 1 ; ③ PSH ( 推送位 ) : PSH =1 时 , 接收方 要 尽快交付接收应用进程

75100

Python TCP服务器v1.6 - multiprocessing多进程及Ctrl-c(SIGINT)退出

TCP聊天服务器套接字v1.6 所有版本记录: v1.0 : TCP聊天服务器套接字|PyQt5+socket(TCP端口映射+端口放行)+logging+Thread(含日志,html)+anaconda...打包32位exe(3.4万字)|python高阶 v1.1 : python TCP套接字服务器v1.1-新增服务端命令功能及修改bug(socket+PyQt5) v1.2 : python...TCP服务器v1.2 - 服务端新增用户登录注册(json, md5加密) v1.3 : python TCP服务器v1.3 - 服务器抗压测试及关闭套接字处理 v1.4 : python TCP服务器...v1.4 - 客户端连接服务器异常(异常情况分类)处理 v1.5 : PyQt5可编辑下拉框(comboBox):editable - python TCP服务器v1.5 - 客户端连接界面增加自定义参数...几个常用信号: SIGINT 终止进程 中断进程 (control+c) SIGTERM 终止进程 软件终止信号 SIGKILL 终止进程 杀死进程 SIGALRM 闹钟信号 | 使用 from

66940

进程服务器

一、思路 先与客户端建立好连接, 每次监听到一个客户端之后,都需要产生一个子进程去处理这个连接,然后父进程继续去等待监听,唯一一个要注意的点就是要使用信号来监听子进程是否结束,从而对其进行回收,防止僵尸进程的产生...&opt, sizeof(opt)); (3)bind函数 bind(lfd, (struct sockaddr*)&ser_addr, sizeof(ser_addr));b这个函数主要目的就是将服务器的地址结构绑定到套接字...lfd上,所以开始要设置服务器的ser_addr:ser_addr.sin_family = AF_INET, ser_addr.sin_port = htons(8888);ser_addr.sin_addr.s_addr...监听到了客户端后,就要开始创建子进程来对这个监听进行处理;pid = fork() 3、子进程处理通信 因为子进程不需要监听连接,使用可以close(lfd);之后便可以进行通信处理 void do_work...} } 4、父进程回收子进程进程使用信号机制来对子进程回收 主要是通过sigaction函数 struct sigaction act; act.sa_handler = catch_child;

4.7K20

【计算机网络】传输层 : 总结 ( TCP UDP 协议 | 寻址与端口 | UDP 协议 | TCP 协议特点 | TCP 连接释放 | TCP 流量控制 | TCP 拥塞控制 ) ★★★

文章目录 一、传输层 TCP / UDP 协议 ★ 二、寻址端口号 ★ 三、UDP 协议特点 四、UDP 协议首部格式 五、UDP 校验 六、TCP 协议 特点 ★ 七、TCP 报文段首部格式 八、TCP...; 复用与分用 : ① 复用 : 应用层 多个 应用进程 通过传输层 传输到 网络层 中 ; ② 分用 : 传输层 从 网络层 接收数据 , 分发给不同的 应用进程 ; 参考 : 【计算机网络】传输层...协议 | UDP 协议 | 复用与分用 | 端口号 | 套接字 ) 三、UDP 协议特点 ---- 四、UDP 协议首部格式 ---- 五、UDP 校验 ---- 六、TCP 协议 特点 ★ ----...TCP 首部大小是 4 字节整数倍 ; ③ 源端口 / 目的端口 : 进程端口号 , 每个 2 字节 , 取值范围 0 ~ 65535 ; ④ 序号 : TCP 连接中 , 字节流中的...报文内容 , 参考博客 【计算机网络】传输层 : TCP 协议 ( TCP 协议特点 | TCP 报文段首部格式 | TCP 报文段控制位 ) 十一、TCP 连接释放 ★★ ---- TCP 连接释放

1.6K00

Linux - lsof显示 tcp,udp 的端口和进程

文章目录 功能 语法 示例 lsof -i 显示 tcp,udp 的端口和进程等相关 查看服务器 80 端口的占用情况 使用 -p 查看指定进程打开的文件 更多命令 功能 lsof(list open...语法 语法格式:lsof -i:端口号 ---- 示例 lsof -i 显示 tcp,udp 的端口和进程等相关 [root@VM-24-3-centos ~]# lsof -i |more COMMAND...:https (ESTABLISHED) 查看服务器 80 端口的占用情况 [root@VM-24-3-centos ~]# lsof -i:80 COMMAND PID USER FD TYPE...111507996 0t0 TCP *:http (LISTEN) [root@VM-24-3-centos ~]# COMMAND:进程的名称 PID进程标识符 USER:进程所有者 FD...:80 查看TCP协议80端口占用情况 lsof -c lsof 查看lsof命令使用的所有文件 lsof -p 1234:列出进程号为1234的进程所打开的文件 lsof -g gid:显示归属gid

2.8K20

Netty搭建TCP服务器实践

在netty基本组件介绍中,我们大致了解了netty的一些基本组件,今天我们来搭建一个基于netty的Tcp服务端程序,通过代码来了解和熟悉这些组件的功能和使用方法。...首先我们自己创建一个Server类,命名为TCPServer 第一步初始化ServerBootstrap,ServerBootstrap是netty中的一个服务器引导类,对ServerBootstrap...的实例化就是创建netty服务器的入口 public class TCPServer {     private Logger log = LoggerFactory.getLogger(getClass...());     //端口号     private int port=5080;     //服务器运行状态     private volatile boolean isRunning = false...通过以上的代码我们可以看到,一个基于netty的TCP服务的搭建基本就是三大块: 1、对引导服务器类ServerBootstrap的初始化; 2、对ChannelPipeline的定义,也就是把多个ChannelHandler

1.9K20
领券