udp用户数据报协议

udp用户数据报协议

ID:18456108

大小:848.91 KB

页数:10页

时间:2018-09-18

udp用户数据报协议_第1页
udp用户数据报协议_第2页
udp用户数据报协议_第3页
udp用户数据报协议_第4页
udp用户数据报协议_第5页
资源描述:

《udp用户数据报协议》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、UDP用户数据报协议UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一份待发送的IP数据报。这与面向流字符的协议不同,如TCP,应用程序产生的全体数据与真正发送的单个IP数据报可能没有什么联系。RFC768是UDP的正式规范1、UDP报文封装UDP首部报文格式如下端口号表示发送进程和接收进程,UDP长度字段指的是UDP首部和UDP数据的字节长度。该字段的最小值为8字节(发送一份0字节的UDP数据报是OK的)。这个UDP长度是有冗余的。IP数据报长度指的

2、是数据报全长,因此UDP数据报长度是全长减去IP首部的长度。特点:不可靠、易分片UDP不提供可靠性:它把应用程序传给IP层的数据发送出去,但是并不保证它们能到达目的地。分片:应用程序必须关心IP数据报的长度。如果它超过网络的MTU,那么就要对IP数据报进行分片。如果需要,源端到目的端之间的每个网络都要进行分片,并不只是发送端主机连接第一个网络才这样做。2、IP分片物理网络层一般要限制每次发送数据帧的最大长度。任何时候IP层接收到一份要发送的IP数据报时,它要判断向本地哪个接口发送数据(选路),并查询

3、该接口获得其MTU。IP把MTU与数据报长度进行比较,如果需要则进行分片。分片可以发生在原始发送端主机上,也可以发生在中间路由器上。把一份IP数据报分片以后,只有到达目的地才进行重新组装。IP首部中部分字段用于报文分片组装,具体参见tcp/ip协议学习笔记(3)InternetProtocol(IP)对于发送端发送的每份IP数据报来说,其标识字段都包含一个唯一值。该值在数据报分片时被复制到每个片中。标志字段用其中一个比特来表示“更多的片”。除了最后一片外,其他每个组成数据报的片都要把该比特置1,下面

4、简单抓一个分片ping包看一下第一片第二片在分片时,除最后一片外,其他每一片中的数据部分(除IP首部外的其余部分)必须是8字节的整数倍。标志字段中有一个比特称作“不分片”位。如果将这一比特置1,IP将不对数据报进行分片。相反把数据报丢弃并发送一个ICMP差错报文给起始端尽管IP分片过程看起来是透明的,但有一点让人不想使用它:即使只丢失一片数据也要重传整个数据报。为什么会发生这种情况呢?因为IP层本身没有超时重传的机制——由更高层来负责超时和重传(TCP有超时和重传机制,但UDP没有)IP数据报:是指

5、IP层端到端的传输单元(在分片之前和重新组装之后)分组是指在IP层和链路层之间传送的数据单元。一个分组可以是一个完整的IP数据报,也可以是IP数据报的一个分片。3、UDP数据报最大长度理论上,IP数据报的最大长度是65535字节,这是由IP首部16比特总长度字段所限制的。去除20字节的IP首部和8个字节的UDP首部,UDP数据报中用户数据的最长长度为65507字节。但是,大多数实现所提供的长度比这个最大值小。其中两个限制因素:第一,应用程序可能会受到其程序接口的限制。socketAPI提供了一个可供

6、应用程序调用的函数,以设置接收和发送缓存的长度。对于UDPsocket,这个长度与应用程序可以读写的最大UDP数据报的长度直接相关。现在的大部分系统都默认提供了可读写大于8192字节的UDP数据报第二个限制来自于TCP/IP的内核实现。可能存在一些实现特性(或差错),使IP数据报长度小于65535字节4、UDP服务器的设计与实现1./*********************************************************************************  2

7、.  *Author     :  wph  3.  *Version    :  1.0  4.  *Date       :  2014/03/01    5.  *Description:  udp server   6.  *Others     :   7.  *History    :     8.**********************************************************************************/   9.#include

8、     10.#include     11.#include     12.#include     1.#include     2.#include     3.#include     4.#include   5.#include   6. 

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。