UDP协议

UDP协议端格式

在这里插入图片描述

源端口: 占16位、源端口号。在需要对方回信时选用。不需要时可用全0。

目的端口: 占16位、目的端口号。这在终点交付报文时必须使用。

长度: 占16位、UDP用户数据报的长度,其最小值是8字节(仅有首部,没有数据)。

检验和: 占16位、检测UDP用户数据报在传输中是否有错。有错就丢弃。

UDP的特点

  • 无连接:知道目的IP和端口号就可以进行通信,无需连接
  • 不可靠:没有确认应答机制,没有重传机制;数据因网络原因丢失,UDP协议层也不会返回任何错误
  • 面向数据报:不能够灵活的控制读写数据的次数和数量;
  • 双全工:可以传输也可以接收

面向数据报

对于应用层传输的数据,添加首部后直接交接给给ip层,没有分割、合并。对于ip层交付的udp数据报,直接去除首部后上付给应用层。所有在整个过程中,报文是不可分割的最小单位,故UDP面向数据报。

传输速度快

由以下特点支持了此特性:

  • 无连接:由于UDP不需要连接,时间上不存在建立连接需要的时延。空间上,TCP需要在端系统中维护连接状态,需要一定的开销。
  • 不可靠:因为UDP传输不可靠,不需要额外的机制来保证可靠性,所有UDP的体积更小,并且UDP只用关注传输,并不关心是否传输到目的地。

检验和

为了保证数据传输过程中的安全,没用因为物理因素导致数据变动。我们需要对得到的数据进行检验。

发送方,首先是把全零放入校验和字段并且添加伪首部,然后把UDP数据报看成是由许多16位的子串连接起来,若UDP数据报的数据部分不是偶数个字节,则要在数据部分末尾增加一个全零字节(此字节不发送),接下来就按照二进制反码计算出这些16位字的和。将此和的二进制反码写入校验和字段。在接收方,把收到得UDP数据报加上伪首部(如果不为偶数个字节,还需要补上全零字节)后,按二进制反码计算出这些16位字的和。当无差错时其结果全为1,。否则就表明有差错出现,接收方应该丢弃这个UDP数据报。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值