CPIP协议第七章用户数据报协议U.ppt_第1页
CPIP协议第七章用户数据报协议U.ppt_第2页
CPIP协议第七章用户数据报协议U.ppt_第3页
CPIP协议第七章用户数据报协议U.ppt_第4页
CPIP协议第七章用户数据报协议U.ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,第七章 用户数据报协议UDP,2,主要内容,进程到进程的通信 用户数据报 检验和 UDP的操作 UDP的使用 小结,3,传输层的责任,创建进程到进程的通信(进程就是正在运行的应用程序),UDP使用端口号完成这种通信。 在传输层提供控制机制,UDP在一个非常低的水平上完成这个功能。 传输层负责为进程提供连接机制。UDP只从进程接收数据单元,并把它们交付给接收器,但这种交付是不可靠的。,4,UDP的优缺点,UDP叫做无连接、不可靠的传输协议,它除了提供进程到进程的通信(而不是主机到主机的通信)外,就没有给IP服务添加任何东西。它还完成非常有限的差错检验。 UDP是一个非常简单的协议,只有最小的开销。使用UDP发送很短的报文时,在发送站和接收站之间的交互要比使用TCP时少的多。,5,7.1 进程到进程的通信,.,.,进程 (运行的应用程序),进程 (运行的应用程序),因特网,IP协议的作用范围,UDP协议的作用范围,6,7.1 进程到进程的通信(续),对通信来说,我们必须定义: 本地主机 本地进程:客户进程使用端口号定义自己,这种端口号叫做短暂端口号。 远程主机 远程进程 如图所示当客户机想从服务器上获取时间时的工作过程,7,UDP,52000,Daytime 客户进程,Daytime 客户进程,13,数据,13,52000,13,52000,数据,8,7.1 进程到进程的通信(续),ICANN定义的范围:把端口号划分为3个范围:熟知端口、注册端端口和动态端口 熟知端口:范围从01023的端口由ICANN指派和控制,叫做熟知端口 注册端口:范围从102449151的端口,IANA不指派也不控制,它们只能在IANA注册以防止重复 动态端口:范围4915265535的端口既不用指派,也不用注册。可由任何进程使用。,9,7.1 进程到进程的通信(续),UDP的熟知端口号,有些端口号是UDP和TCP都可使用的。,10,表 续,11,7.1 进程到进程的通信(续),套接字地址 一个IP地址与一个端口号合起来就叫做套接字地址(socket address)或插口地址。 要使用UDP服务,我们需要一对套接字地址:客户套接字地址和服务器套接字地址。这四种信息时IP首部和UDP首部的一部分。,,IP地址,69,端口号, 69,套接字地址,12,UDP分组称为用户数据报(user datagram) 用户数据报格式: 首部 数据 8字节 0 15 16 31 源端口号 目的端口号 16位 16位 总长度 检验和 16位 16位,7 . 2 用户数据报,图7.7,13,7.3 检验和,UDP检验和包括三个部分:伪首部、UDP首部以及从应用层来的数据。,32位源IP地址,32位目的IP地址,全0,8位协议 (17),16位UDP 总长度,源端口地址16位,目的端口地址16位,UDP总长度16位,检验和16位,数据 (必须进行填充使数据是16位的倍数),伪 首 部,首 部,14,7.3 检验和(续),发送端的检验和计算: 伪首部填加到UDP用户数据报上。把检验和字段填入全零; 所有的位划分为每16bit为一段。若字节总数不是偶数,则增加一个字节的填充(全0); 所有的16bit段使用算术运算相加(在伪首部中的各行的顺序对检验和的计算没有任何影响。此外,增加0也不影响计算的结果),把得到的结果取反码后插入到检验和字段。 伪首部和任何增加的填充丢掉,把UDP用户数据报交付给IP软件进行封装。,15,7.3 检验和(续),接收端的检验和计算 伪首部加到UDP用户数据报。若需要,就增加填充; 所有的位划分为每16bit为一段,把所有的16bit段使用算术运算相加; 得到的结果取反码。若得到的结果是全0,则丢弃伪首部和任何增加的填充并接受这个UDP用户数据报。若得到的结果非0,说明接收端检测到校验和有差错,就丢弃这个UDP用户数据报。,16,7.3 检验和(续),举例:对给出的7字节数据的非常小的用户数据报计算检验和,05,0,全0,(17),15,1087,13,15,全0,T E S T I N G,17,7 . 4 UDP的操作,报文的封装和拆封 当进程有报文要通过UDP发送时,将UDP封装成一份IP数据报。 当这个报文到达目的主机网络层,剥去IP首部后,将用户数据报连同发送端和接收端的IP地址一起传递给UDP。,18,报文,UDP数据,UDP首部,IP数据,IP首部,帧数据,帧首部,UDP协议封装过程,19,7.4.1 排队,在客户端,当一个进程启动时,它从操作系统请求得到一个端口号,有的实现是为每一个进程创建一个入队列和一个出队列与之相关联。 当一个进程想和多个进程通信时,它也只得到一个端口号,而最后也只有一个出队列和一个入队列。大多数情况下,由客户端打开的队列由短暂端口号来标志,只要进程在运行,这些队列就起作用。当进程终止时,队列就被撤销。,20,7.4.2 多路复用与多路分用,在发送端,可能有多个需要发送用户数据报的进程。 UDP使用多路复用技术处理用户数据报的发出。 在接收端也只有一个UDP,但有多个进程可能接收用户数据报。根据端口号UDP把每一个报文交付给适当的进程。 如图所示,21,UDP (复用器),UDP (分用器),IP,IP,进程,进程,22,7.5 UDP的应用,适用需要简单的请求响应通信的进程,而不太关心流量控制和差错控制。而快速递交比精确递交更为重要的场合。 适用于具有内部流量控制和差错控制机制的进程。 适合多播和广播的运输协议。 可用于管理进程,如简单网络管理协议SNMP。 可用于某些路由选择更新协议。UDP被用于RIP选路表的更新。 与实时传输协议一起使用,对多媒体是很方便的一种协议 .,23,本章小结,UDP是传输层的协议,创建进程到进程的通信 UDP(基本上)不可靠的无连接协议,只需要很少的开销,但能很快的交付 每一个应用程序都有唯一的端口号,它可以把这个应用进程合在同一个机器同时运行的其他程序区分开来 客户程序被指派随机的端口号,叫做短暂端口号 服务器程序被指派通用的端口号,叫做熟知端口号 IP地址与端口号的组合叫做套接字地址,唯一地定义了一个进程和一个主机,24,本章小结(续),UDP需要一对套接字地址:客户套接字地址和服务器套接字地址 UDP分组叫做用户数据报 UDP在差错控制方面仅有地尝试就是检验和 把伪首部包括进来计算检验和,可以检查出IP地址和目的IP地址的差错 UDP没有流量控制机制 用户数据报封装在IP数据报字段中 UDP使用复用技术处理用户数据报的发送,这些数据报来自主机上地多个进程 UDP使用分用技术处理用户数据报地接收,这些数据报要传递给主机上的不同进程,25,练习,试给出这样一个UDP用户数据报的首部中的各项目,这个用户数据报携带了从TFTP客户发送到TFTP服务器的报文,把检验和字段填入0,试选择适当的短暂端口号和正确地熟知端口号,数据的长度是40字节,使用图7.7的格式表示这个UDP分组。 在IP地址为的主机上的SNMP客户,向IP地址为200.112.45

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论