传输层封装方式:TCP/UDP
TCP:
图片解析:
序号 :标识数据包的顺序;
首部长度 :数据上面部分,因长度不确定,标识以便于拆封装(最短160位,共20字节);
URG:紧急标记位(若为1,才激活紧急指针,代表有需要紧急处理的数据);
ACK:确认标记位(若为1,确认序号激活,代表确认);
PSH:若为1,此数据包不需要留在缓存,而直接进入进程;
RST:如果发送的数据包,将此位 置1,则此会话连接将会强制断开;
SYN:请求标记位,在请求建立连接时,将此位 置1;
FIN:结束标记位,断开连接时,发送的数据包将此位 置1;
窗口大小 :确定对方处理数据的最大效率,达到流控的目的
紧急指针 :将需要紧急处理的数据提到所有数据前面(需要URG激活);
选项 :可有,也可没有(导致首部长度不确定);
校验和 :确保数据完整性(采用伪头部校验)
伪头部校验:除了校验传输层头部和数据内容外,还会将网络层头部中的一部分内容一起进
行校验。 --- -确保数据完整性
UDP:
TCP和UDP的区别:
1.TCP是面向链接的协议,而UDP是无链接的协议
2.TCP协议的传输是可靠的,而UDP协议的传输“尽力而为”
3.TCP协议可以实现流控,而UDP不行
4.TCP可以分段,而UDP不行(TCP有序号,对方可以重组)
5.TCP消耗资源较大,传输效率低,UDP消耗资源小,速度快
什么是面向链接?
在传输数据之前,先使用预先的协议,建立点到点的链接。TCP建立的连接实际建立了一个双向的会话连接,即通讯双方都可以向对方发送数据
TCP建立连接的过程-----TCP的三次握手:
TCP断开连接的过程---TCP的四次挥手:
TCP和UDP的使用场景:
TCP协议更适用于可靠性要求较高,但是对传输效率和资源占用要求较低的场景
UDP协议更适用于对传输效率要求较高,可靠性要求较低的场景(例如:即时类通讯)
网络层的封装方式:IP协议
TTL----生存时间----数据包每经过一个路由器的转发,其数值减1,当一个数据包的TTL值为
0是,路由器将不再转发而直接丢弃。
8位协议:上层(传输层)使用的协议------TCP--6,UDP--17.
头部最少(没有选项时)20字节。
IP的分片和TCP的分段:
数据到达数据链路层时,数据不能超过1500个字节(可更改);
如果数据到数据链路层会超字节,则会在这之前进行 分段 或者 分片;
如果TCP已经分段,IP不会分片;
MTU---最大传输单元---默认值为1500字节
MSS---最大段长度---理论值1460,这个值需要进行协商,这个参数在TCP的SYN包携
带,如果双方不一致,则将按照小的执行。