TCP/UDP传输层协议字段信息及其内容

传输层:负责端与端之间的数据传输(进程与进程间,端与端)
典型的有 TCP和UDP
UDP协议
特性:无连接,不可靠,面向数据报
字段信息:在这里插入图片描述
四个部分 16位源端口 16位目的端口 16位数据长度 16位校验和 各为2B
16位数据报长度:udp数据报的总长度(包括UDP的首部)为了避免接收半条数据,导致缓冲区的数据长度无法标识,导致交付混乱,由此每次只能整条交付(UDP向应用层交付),同时因为是16位所以整条数据(包括头部)不能超过64K;则发送数据不能大于64K-8k,大于就要分包,且分出的包不能大于64K-8;且不能保证数据包能依次到达;再应用层进行分包后,还需要用户在应用层进行包序管理。
面向数据报: 传输层向应用层交付数据的时候一条一条的交付,如果接收用的缓冲区比一整条的数据小,那么就不会进行交付。如果接收缓冲区很大的话,也只会交付一条。(原因:如果一次先接一半再接一半还需要用一个新的变量进行管理而在udp中没有封装此字段)
1)概念:从IP层来说,通信的两端是两台主机,但是真正进行通信的实体是在主机中的进程,即一台主机的进程和另一台主机的进程交换数据。
传输层基于UDP实现的应用层协议:
DHCP:动态主机配置协议
DNS等

TCP协议(传输控制协议)
特性:面向连接,可靠传输,面向字节流
协议字段信息在这里插入图片描述
16位源/目的端口:实现端于端之间的数据传输
32位序号/确认序号:保证tcp数据的有序交付(包序管理)
4位首部长度:tcp报头长度 以四字节(32位)为单位,包头范围20~60 15*4=60
6位标志位:URG:紧急指针是否有效 ACK:确认号是否有效 PSH:提示接收端程序立刻从TCP缓冲区把数据读走 RST:对方要求从新建立连接(复位报文) SYN:请求建立连接(同步报文) FIN:通知对方,本端要关闭(结束报文)
16位窗口大小:用于实现滑动窗口机制
16位效验和:发送端填充,二进制反码求和算法 接收端再效验如果不一致,认位数据有问题,此处效验不光包含头部,也包含数据部分
16位紧急指针:识别那一部分是紧急数据
40位选项信息
取数据流程:先取20个字节,然后查看字段信息,如果首部长度算出结果大于20字节,那么就继续往后取 X-20;

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值