帧与数据包 数据包,就是从最上层,一层一层封装,直到网络层的,最后借由数据链路层发送出去的数据单元。 帧,是数据链路层的传输单元。 这么一看,数据包和帧好像没什么不一样,好像数据传递的都是一样的。可是为什么会把它们区分开呢?学习 TCP/IP 协议的同学应该都知道,数据链路层中有 MTU 这样一个东 ...
分类:
其他好文 时间:
2017-03-15 18:37:12
阅读次数:
262
URG和PSH都属于TCP包头中的标志位,URG和PSH为1时,都表示当前有紧急数据。不同的是对紧急数据的处理方式不同。URG:为1时,表明紧急指针字段有效,它告诉系统此报文段中有紧急数据,应尽快传递,相当于高优先级,不再需要在接收队列中排队。例如,当我们想使用Ctrl+C终止一个..
分类:
其他好文 时间:
2017-03-06 09:57:20
阅读次数:
173
1.TCP客户进程发送请求连接SYN报文[SYN=1,ACK=1](不携带数据但是要消耗一个序号,所以确认报文ACK=1) 2.TCP服务进程同意建立连接,发送确认SYN连接接受报文(SEQ=0 ACK=1) 3.TCP客户进程再次确认(ACK报文段[SYN=0,ACK=1]不携带数据则不消耗序号, ...
分类:
其他好文 时间:
2017-02-25 12:03:56
阅读次数:
919
1.客户端发出请求连接报文段,其中报文的控制位SYN=1,初始序号seq=x,客户端进入SYN-SENT同步已发送状态 2.服务端收到请求报文段之后,向客户端发送确认报文段,在确认报文段中,SYN=1,ACK=1,确认号为ack=x+1,同时为自己选择一个初始序列号y,服务端进入SYN-RCVD同步 ...
分类:
其他好文 时间:
2017-02-08 10:37:17
阅读次数:
248
TIME_WAIT的产生原因 因为TCP连接是双向的,所以在关闭连接的时候,两个方向各自都需要关闭。先发FIN包的一方执行的是主动关闭;后发FIN包的一方执行的是被动关闭。主动关闭的一方会进入TIME_WAIT状态,并且在此状态停留两倍的MSL时长。 MSL指的是报文段的最大生存时间,如果报文段在网 ...
分类:
其他好文 时间:
2017-01-13 21:08:06
阅读次数:
268
TCP建立连接 客户端必须将确认序号设置为服务端的ISN加1以对服务器的SYN报文段进行确认。 TCP连接终止 建立一个连接需要三次握手,而终止一个连接要经过4次握手。这是由TCP的半关闭造成的。既然一个TCP连接是全双工(即数据在两个方向上能同时传递),因此每个方向必须单独的进行关闭。 服务端收到 ...
分类:
其他好文 时间:
2017-01-07 21:12:03
阅读次数:
217
TCP提供一种面向连接的,可靠的字节流服务。 TCP 通过如下方式来提供可靠性: 应用数据被分割成TCP认为最适合发送的数据块。 超时重传机制。TCP发出一个段后,启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到确认,将重发报文段。 TCP收到数据后,将发送一个确认。这个确认不是立即发 ...
分类:
其他好文 时间:
2017-01-07 01:18:45
阅读次数:
164
刚刚学完这个知识,感觉很重要,在此记录下来,参考资料,《计算机网络》 谢希仁 第六版 TCP报文格式 注意:在理解三次握手之前必须理解首部中的这几个字段的含义 首部的重要字段 序号(seq):TCP连接中传送的字节流中的每一个字节都按顺序编号,首部中的序号字段的意思是本报文段所发送的数据的第一个字节 ...
分类:
其他好文 时间:
2016-12-12 01:35:46
阅读次数:
259
3.2 TCP头部结构 TCP头部信息出现在每个TCP报文段中,用于指定通信的源端端口,目的端端口,管理TCP连接等,本节详细介绍TCP的头部结构,包括固定头部结构和头部选项。 3.2.1 TCP固定头部结构 TCP头部结构如图3-3所示,其中的诸多字段为管理TCP连接和控制数据流提供了足够的信息。 ...
分类:
其他好文 时间:
2016-11-30 21:45:45
阅读次数:
137
同为端到端的通信,传输层与网络层的区别是什么? 任务:负责向两个主机中应用进程之间的通信提供服务(提供逻辑通信)。 区别:运输层为运行在不同主机上的进程之间提供端到端的逻辑通信,但网络层是提供主机之间的逻辑通信。 一、多路分解与多路复用 每个运输层的报文段中设置了几个字段,包括源端口号和目的端口号等 ...
分类:
其他好文 时间:
2016-11-06 20:09:32
阅读次数:
320