UDP协议
因特网协议组也支持无连接的传输协议UDP(user data protocol)。 UDP使用底层的因特网协议来传送报文,提供与IP一样的不可靠的、无连接的数据报传输服务。它不使用确认信息对报文的到达进行确认,不对收到的数据报进行排序,也不提供反馈信息来控制机器之间传输的信息流量。UDP通信的可靠性方面的工作,包括报文的丢失、重复、乱序等现象,由使用UDP的应用程序来承担。
一个UDP数据报包括一个8字节的头和数据部分。报头的格式如下图4所示,它包括四个长为16字节的字段。源端口和目的端口的作用与TCP中的相同,是用来标明源端和目的端的端口号。UDP长度字段指明包括8个字节的头和数据在内的数据报长度。UDP校验和字段是可选项,用于纪录 UDP头、UDP伪头、用户数据三者的校验和。
IP协议
IP协议提供了不可靠的、无连接的数据报传输机制。TCP/IP是为了适应物理网络的多样性而设计的,而这种适应性主要是通过IP层来体现的。由于物理网络的多样性,各种物理网络的数据帧格式、地址格式之间的差异很大。为了将这些底层的细节屏蔽起来,使得采用不同物理网络的网络之间进行通讯, TCP/IP分别采用了IP数据报和IP地址作为物理数据帧与物理地址的统一描述形式。这样IP向上层提供统一的IP数据报和统一的IP地址,使得各种物理帧及物理地址的差异性对上层协议不复存在。
4.1 IP数据报头
一个IP数据报由一个头部和数据部分构成。头部包括一个20字节的固定长度部分和一个可选任意长度部分。头部格式如图5所示。
版本:4位长。记录了数据报对应的协议版本号。当前的IP协议有两个版本:IPV4 和IPV6。
IHL:4位长。代表头部的总长度,以32位字节为一个单位。
服务类型:8位长。使主机可以告诉子网它想要什么样的服务。如下图所示,服务类型域又分为了5个部分。优先权字段是标志优先级的;三个标志位分别代表延迟、吞吐量、可靠性。
总长:16位。指头部和数据的总长。最大长度是65535个字节。
标识:16位。通过它使目的主机判断新来的分段属于哪个分组,所有属于同一分组的分段包含同样的标识值。
DF:代表不要分段。它命令路由器不要将数据报分段,因为目的端不能重组分段。
MF:代表还有进一步的分段,用它来标志是否所有的分组都已到达。除了最后一个分段的所有分段都设置了这一位。
分段偏移:13位。标明分段在当前数据报的什么位置。
生命期:8位。用来限制分组生命周期的计数器。它在每个节点中都递减,而且当在一个路由器中排队时可以倍数递减。
协议:8位。说明将分组发送给那个传输进程,如TCR、VDP等。
头校验和:16位。仅用来校验头部。
源地址: 32位。产生IP数据报的源主机IP地址。
目的地址:32位。IP数据报的目的主机的IP地址。
可选项:是变长的。每个可选项用一个字节标明内容。有些可选项还跟有一字节的可选项长度字段,其后是一个或多个数据字节。现在已定义了安全性、严格的源路由选择、松的源路由选择、记录路由和时间标记五个可选项。但不是所有的路由器都支持全部5个可选项。
安全性选项说明了信息的安全程度。
严格的源路由选择选项以一系列的IP地址方式,给出了从源到目的地的完整路径。数据报必须严格地从这条路径传送。当路由选择表崩溃,系统管理员发送紧急分组时,或作时间测量时,此字段很有用。
松的源路由选择选项要求分组遍及所列的路由器,但它可以在其间穿过其它的路由器。
记录路由选项让沿途的路由器都将其IP地址加到可选字段之后,这使系统管理者可以跟踪路由选择算法的错误。
时间标记选项像记录路由选项一样,除了记录32位的IP地址外,每个路由器还要记录一个32位的时间标记。同样地,这一选择可用来为路由选择算法查错。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
在开源控制器上 ONOS和ODL更趋向协作
ONOS和ODL项目在SDN控制器方面很可能会共享成果,这样几乎所有事情都可以在Linux基金会上实现了。
-
观点集:Docker将成主流 新Linux可改良虚拟化管理
在本期博客观点集中,分析师探讨了Docker、行业认证的实际价值以及针对虚拟环境的新Linux项目的作用。
-
“命名数据网络”来了 TCP/IP会退休吗?(下)
面对当今的互联网需求,TCP/IP有些不堪重负,研究人员想要用新的互联网协议栈取代它,这个新协议被称为“命名数据网络(Named Data Networking)”。
-
“命名数据网络”来了 TCP/IP会退休吗?(上)
面对当今的互联网需求,TCP/IP有些不堪重负,研究人员想要用新的互联网协议栈取代它,这个新协议被称为“命名数据网络(Named Data Networking)”。