传输层
只有主机才会有传输层
主机(五层) - 传输设备(三层) - 主机(五层)
传输层功能:进程与进程之间的通信
网络层功能:主机与主机之间的通信
复用:不同进程可以共用一个传输层传输到网络层
分用:剥去报文之后(从网络层收到数据后),能够送交给正确的进程
QQ给女朋友发的消息,微信上是收不到的
网络层首部校验和 :只检查了头部
传输层 对数据部分进行校验(差错j检测)
导学
TCP和UDP比较
TCP:
传数据之前需要建立连接,传送结束后释放连接
不提供广播和多播
UDP:
只管发不管你收不收得到
传输层的寻址 - 端口号
端口号分类
常见端口号
套接字socket = (主机IP地址,端口号)
UDP
在IP数据报基础上,增加了复用分用和差错检测
UDP面向报文:不切分,给多少就是多少,完整的
所以要选择合适的报文.尽量不要后续在网络层分片
无拥塞控制:不会从源头上限制发送报文的速度
拥塞会适量的丢包,但影响不大
UDP首部格式
UDP检验和
当校验的时候,会给数据添上伪首部
发送端校验
接收端校验
TCP
可以实现全双工通信
发送缓存: 存储了未发送的数据 和 已经发送但是还未确认达到的数据
接收缓存:存储了到达了未被读取的数据 和 没有按序到达的数据
流: 字节序列 ,流入进程或流出进程
TCP 报文段首部格式 ⭐
填充字段的作用: 用来凑数的 ,保证首部是4字节整数倍
序号字段:该报文中的第一个字节
1 |1 2 3 , 4 | 4