第7章UDP协议_第1页
第7章UDP协议_第2页
第7章UDP协议_第3页
第7章UDP协议_第4页
第7章UDP协议_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

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

文档简介

1、第七章第七章 用户数据报协议用户数据报协议udp rfc768rfc768 tcp/iptcp/ip详解卷详解卷1 1:ch11ch11、ch12ch12、ch13ch13 主要内容主要内容 n7.1 7.1 运输层协议概述运输层协议概述 n7.2 7.2 用户数据报协议用户数据报协议udpudp n7.3 7.3 广播和多播广播和多播 n7.3 igmp7.3 igmp协议协议 n课下作业课下作业 7.1 运输层协议概述 n从通信和信息处理的角度看,运输层向它上面 的应用层提供通信服务,它属于面向通信部分 的最高层,同时也是用户功能中的最低层。 物理层 网络层 运输层 应用层 数据链路层 面

2、向信息处理 面向通信 用户功能 网络功能 运输层为相互通信的应用进程提供了逻辑通信运输层为相互通信的应用进程提供了逻辑通信 5 4 3 2 1 运输层提供应用进程间的逻辑通信 主机 a主机 b 应用进程应用进程 路由器 1路由器 2 ap1 lan2wan ap2 ap3 ap4 ip 层 lan1 ap1 ap2 ap4 端口 端口5 4 3 2 1 ip 协议的作用范围 运输层协议 tcp 和 udp 的作用范围 ap3 运输层协议和网络层协议的主要区别运输层协议和网络层协议的主要区别 应用进程 应用进程 ip 协议的作用范围 (提供主机之间的逻辑通信) tcp 和 udp 协议的作用范围

3、 (提供进程之间的逻辑通信) 因 特 网 运输层的主要功能运输层的主要功能 n运输层为应用进程之间提供端到端的逻辑通信运输层为应用进程之间提供端到端的逻辑通信 (但网络层是为主机之间提供逻辑通信)(但网络层是为主机之间提供逻辑通信) n运输层还要对收到的报文进行差错检测运输层还要对收到的报文进行差错检测 n运输层需要有两种不同的运输协议,即面向连运输层需要有两种不同的运输协议,即面向连 接的接的 tcp 和无连接的和无连接的 udp。 运输层与其上下层之间的关系运输层与其上下层之间的关系 运输实体 运输实体运输协议运输层 层接口 运输服务用户 (应用层实体) 运输服务用户 (应用层实体) 层接

4、口 网络层 (或网际层) 应用层 主机 a主机 b 运输层服务访问点 tsap 网络层服务访问点 nsap 运输层向上提供可靠的和不可靠的逻辑通信信道运输层向上提供可靠的和不可靠的逻辑通信信道 ? 应 用 层 运 输 层 发 送 进 程 接 收 进 程 接 收 进 程 数据数据 全双工可靠信道 数据数据 使用 tcp 协议 使用 udp 协议 不可靠信道 发 送 进 程 运输层的运输层的qosqos参数参数 n连接建立 连接建立时延 连接建立失败概率 n数据传送 吞吐量 传送时延 残留误码率 数据安全性 优先级 n连接释放 连接释放时延 连接释放失败概率 网络服务分类网络服务分类 n a 型网

5、络服务型网络服务 可接受的残留差错率、可接受的可报告差错率;可接受的残留差错率、可接受的可报告差错率; n b 型网络服务型网络服务 可接受的残留差错率、不可接受的可报告差错率;需要运可接受的残留差错率、不可接受的可报告差错率;需要运 输实体进行差错恢复;输实体进行差错恢复; n c 型网络服务型网络服务 不可接受的残留差错率、不可接受的可报告差错率;需要不可接受的残留差错率、不可接受的可报告差错率;需要 运输实体进行差错检测和差错恢复;运输实体进行差错检测和差错恢复; 运输层定义了运输层定义了5 5 个运输协议类个运输协议类 运输层采取的技术措施运输层采取的技术措施 n复用复用/解复用解复用

6、 目的:当网络层服务质量目的:当网络层服务质量(吞吐量、传输延迟等吞吐量、传输延迟等)较好,而运输层用较好,而运输层用 户要求不高时,可通过复用在满足运输用户要求的前提下降低费用。户要求不高时,可通过复用在满足运输用户要求的前提下降低费用。 定义:复用定义:复用/解复用是指在一个网络连接上支持多个运输层连接。解复用是指在一个网络连接上支持多个运输层连接。 n分流分流/合流合流 目的:当网络层服务质量目的:当网络层服务质量(吞吐量、传输延迟等吞吐量、传输延迟等)较差,而运输层用较差,而运输层用 户要求较高时,可通过分流满足运输用户的要求户要求较高时,可通过分流满足运输用户的要求(提高吞吐量,减提

7、高吞吐量,减 少传输延迟少传输延迟)。 定义:分流定义:分流/合流是指把一个运输连接上传送的会话数据映射到多合流是指把一个运输连接上传送的会话数据映射到多 个网络连接上传送,各网络连接可相互独立地并行传送。个网络连接上传送,各网络连接可相互独立地并行传送。 运输服务原语运输服务原语 n三个阶段三个阶段 连接建立连接建立 数据传送数据传送 连接释放连接释放 n4 种服务种服务 tc 建立建立 正常数据传送正常数据传送 加速数据传送加速数据传送 tc 释放释放 n12 种原语种原语 tc 建立建立(4 种种) 正常数据传送正常数据传送(4 种种) 加速数据传送加速数据传送(2 种种) tc 释放释

8、放(2 种种) 用户数据运输服务原语时序用户数据运输服务原语时序 n连接建立阶段连接建立阶段(3 种可能种可能) 成功建立连接、被叫用户拒绝、成功建立连接、被叫用户拒绝、ts 提供者拒绝;提供者拒绝; n数据传送阶段数据传送阶段(2 种可能种可能) 正常数据传送、加速数据传送;正常数据传送、加速数据传送; n连接释放阶段连接释放阶段(4 种可能种可能) 一个用户发起的释放、两个用户同时发起的释放、一个用户发起的释放、两个用户同时发起的释放、ts 提供提供 者发起的释放、者发起的释放、ts 用户和提供者同时发起的释放;用户和提供者同时发起的释放; tcp/ip 体系中的运输层协议体系中的运输层协

9、议 tcpudp ip 应用层 与各种网络接口 运输层 n两个对等运输实体在通信时传送的数据单位叫作两个对等运输实体在通信时传送的数据单位叫作 运输协议数据单元运输协议数据单元 tpdu (transport protocol data unit) ntcp 传送的协议数据单位是传送的协议数据单位是 tcp 报文段报文段 (segment) n udp 传送的协议数据单位是传送的协议数据单位是 udp 报文报文或或用户数用户数 据报据报 tcp 与与 udp tcp 与与 udp nudp 在传送数据之前在传送数据之前不需要先建立连接不需要先建立连接。对方的运输。对方的运输 层在收到层在收到

10、udp 报文后,不需要给出任何确认。虽然报文后,不需要给出任何确认。虽然 udp 不提供可靠交付,但在某些情况下不提供可靠交付,但在某些情况下 udp 是一种是一种 最有效的工作方式。最有效的工作方式。 ntcp 则提供则提供面向连接面向连接的服务。的服务。tcp 不提供广播或多播不提供广播或多播 服务。由于服务。由于 tcp 要提供可靠的、面向连接的运输服务,要提供可靠的、面向连接的运输服务, 因此不可避免地增加了许多的开销。这不仅使协议数因此不可避免地增加了许多的开销。这不仅使协议数 据单元的首部增大很多,还要占用许多的处理机资源。据单元的首部增大很多,还要占用许多的处理机资源。 端端 口

11、口 n端口就是运输层服务访问点端口就是运输层服务访问点 tsap n端口是用来标志应用层的进程端口是用来标志应用层的进程 n由由icann负责分配负责分配 n端口用一个端口用一个 16 bit 端口号进行标志端口号进行标志 n端口号只具有本地意义端口号只具有本地意义 端口在进程之间的通信中所起的作用端口在进程之间的通信中所起的作用 应 用 层 运 输 层 网 络 层 tcp 报文段 udp 用户数据报 应用进程 tcp 复用 ip 复用 udp 复用 tcp 报文段 udp 用户数据报 应用进程 端口端口 tcp 分用udp 分用 ip 分用 ip 数据报ip 数据报 发送方 接收方 两类端口

12、两类端口 n熟知端口熟知端口 其数值一般为其数值一般为 01023。当一种新。当一种新 的应用程序出现时,必须为它指派一个熟知端的应用程序出现时,必须为它指派一个熟知端 口。口。 n一般端口一般端口 用来随时分配给请求通信的客户进用来随时分配给请求通信的客户进 程。程。 套接字套接字socket nip地址地址+port套接字套接字socket n一对套接字对应一对通信的进程一对套接字对应一对通信的进程 如:如:(,1500)和和,25) (,1500)和和(,25) 常用的端口号常用的端口号 tcp 端口号端口号 f

13、t p 传输层传输层 t e l n e t d n s s n m p t f t p s m t p udp 应用层应用层 2123255369161 r i p 520 使用使用tcp和和 udp协议的各种应用和应用层协议协议的各种应用和应用层协议 应 用应用层协议运输层协议 名字转换dns一般用udp 选路协议rip一般用udp 网络管理snmp一般用udp 网络文件服务nfs一般用udp ip电话专用协议一般用udp 流式多媒体通信专用协议一般用udp 邮件传输smtptcp 远程登陆telnettcp 超文本传输httptcp 文件传输ftptcp 同一个名词同一个名词 socke

14、t有多种不同的意思有多种不同的意思 n应用编程接口应用编程接口 api 称为称为 socket api,简称为,简称为 socket。 nsocket api 中使用的一个函数名也叫作中使用的一个函数名也叫作socket。 n调用调用 socket 函数的端点称为函数的端点称为 socket。 n调用调用 socket函数时其返回值称为函数时其返回值称为 socket描述符,可简描述符,可简 称为称为 socket。 n在操作系统内核中连网协议的在操作系统内核中连网协议的 berkeley 实现,称为实现,称为 socket 实现。实现。 7.2 用户数据报协议用户数据报协议 udp nudp

15、 只在只在 ip 的数据报服务之上增加了很少一点的功能,即端口的数据报服务之上增加了很少一点的功能,即端口 的功能和差错检测的功能。的功能和差错检测的功能。 nu d p不提供可靠性:它把应用程序封装后传给不提供可靠性:它把应用程序封装后传给i p层,被层,被ip层封层封 装后发送出去,但是并不保证它们能到达目的地。装后发送出去,但是并不保证它们能到达目的地。 n但但 udp 在某些方面有其特殊的优点:在某些方面有其特殊的优点: n发送数据之前不需要建立连接发送数据之前不需要建立连接 nudp udp 的主机不需要维持复杂的连接状态表的主机不需要维持复杂的连接状态表 nudp udp 用户数据

16、报只有用户数据报只有8 8个字节的首部开销个字节的首部开销 n网络出现的拥塞不会使源主机的发送速率降低网络出现的拥塞不会使源主机的发送速率降低,这对某些实时应用是这对某些实时应用是 很重要的。很重要的。 端口是用报文队列来实现端口是用报文队列来实现 udp 端口 51000udp 端口 69 出队列入队列出队列入队列 tftp 服务器tftp 客户 udp 用户数据报 应 用 层 运 输 层 udp被被ip封装后的格式封装后的格式 n端口号表示发送进程和接收进程。端口号表示发送进程和接收进程。 n长度长度udp数据报的长度为多少字节数据报的长度为多少字节 n校验和校验和防止防止udp数据报在传

17、输中出错数据报在传输中出错 udp的包格式的包格式 源端口 (16) 目的端口 (16) 长度 (16) 数据(可变长) 1位位 0 1516 31 校验和 (16) 8 字节字节 校校 验验 和和 n校验方式与校验方式与ip数据包的首部校验一样数据包的首部校验一样 n但:但: 校验范围为首部和数据校验范围为首部和数据 计算校验和时,在计算校验和时,在udp数据报之前增加数据报之前增加12字节的字节的伪伪 首部首部,伪首部只是在计算校验和时使用,既不向下,伪首部只是在计算校验和时使用,既不向下 传送,也不向上递交。传送,也不向上递交。 若数据是奇数字节,要在数据最后填充若数据是奇数字节,要在数

18、据最后填充1个字节的个字节的0 伪首部源端口目的端口长 度检验和 数 据首 部 udp长度源 ip 地址目的 ip 地址017 ip 数据报 字节44112 122222字节 发送在前 数 据首 部 udp 用户数据报 计算计算 udp 检验和的例子检验和的例子 10011001 00010011 153.19 00001000 01101000 8.104 10101011 00000011 171.3 00001110 00001011 14.11 00000000 00010001 0 和 17 00000000 00001111 15 00000100 00111111 1087 00

19、000000 00001101 13 00000000 00001111 15 00000000 00000000 0(检验和) 01010100 01000101 数据 01010011 01010100 数据 01001001 01001110 数据 01000111 00000000 数据和 0(填充) 10010110 11101101 求和得出的结果 01101001 00010010 检验和 04 1 12 字节 伪首部 8 字节 udp 首部 7 字节 数据 填充 二进制求和 求反码 全 0 17 15 1087 13 15 全 0 数据

20、数据 数据 数据 数据 数据 数据 全 0 注:注: nu d p的检验和是可选的,而的检验和是可选的,而t c p的检验和是必需的。的检验和是必需的。 n如果传送的检验和为如果传送的检验和为0,说明发送端没有计算检验和。,说明发送端没有计算检验和。 n如果发送端没有计算检验和而接收端检测到检验和有差如果发送端没有计算检验和而接收端检测到检验和有差 错,那么错,那么u d p数据报就要被悄悄地丢弃,不产生任何数据报就要被悄悄地丢弃,不产生任何 差错报文。差错报文。 nu d p检验和选项在默认条件下是打开的检验和选项在默认条件下是打开的 n尽管尽管u d p检验和是可选的,但是它们应该总是在用

21、。检验和是可选的,但是它们应该总是在用。 nu d p数据报的长度在检验和计算过程中出现两次。数据报的长度在检验和计算过程中出现两次。 检测到不同检验和差错的分组统计结果检测到不同检验和差错的分组统计结果 ip分片分片 n把一份把一份i p数据报分片以后,只有到达目的地才进行重新数据报分片以后,只有到达目的地才进行重新 组装。组装。 n即使只丢失一片数据也要重传整个数据报。即使只丢失一片数据也要重传整个数据报。 n因为因为i p层本身没有超时重传的机制层本身没有超时重传的机制由更高层来负责由更高层来负责 超时和重传,超时和重传,t c p有超时和重传机制,但有超时和重传机制,但u d p没有。

22、没有。 n所以要避免分片所以要避免分片 nt c p试图避免分片试图避免分片 查资料查资料 n避免分片的措施避免分片的措施 icmp不可达差错(需要分片)不可达差错(需要分片) n当路由器收到一份需要分片的数据报,但当路由器收到一份需要分片的数据报,但i p首部首部 中的中的 d f位又为位又为1,则发生,则发生i c m p不可达差错。不可达差错。 不能分片时的不能分片时的icmp不可达差错报文格式不可达差错报文格式 用用traceroute确定路径确定路径mtu n尽管大多数的系统不支持路径尽管大多数的系统不支持路径mtu发现功能,但可以修发现功能,但可以修 改改traceroute程序,

23、用它来确定路径程序,用它来确定路径mtu。 n具体做法:发送分组,并设置具体做法:发送分组,并设置“不分片不分片”标志位。发送的标志位。发送的 第一个分组的长度正好与出口第一个分组的长度正好与出口m t u相等,每次收到相等,每次收到 icmp“不能分片不能分片”差错时就减小分组的长度。如果路由差错时就减小分组的长度。如果路由 器发送的器发送的icmp差错报文是新格式,包含出口的差错报文是新格式,包含出口的m t u, 那么就用该那么就用该mtu值来发送,否则就用下一个最小的值来发送,否则就用下一个最小的mtu 值来发送。值来发送。mtu值的个数是有限的,因此在程序中构造值的个数是有限的,因此

24、在程序中构造 一些由近似值构成的表,取下一个最小一些由近似值构成的表,取下一个最小mtu值来发送。值来发送。 最大最大udp数据报长度数据报长度 n理论上,理论上,i p数据报的最大长度是数据报的最大长度是6 5 5 3 5字节,字节, 这是由这是由i p首部首部1 6比特总长度字段所限制的。比特总长度字段所限制的。 n去除去除2 0字节的字节的i p首部和首部和8个字节的个字节的u d p首部,首部, u d p数据报中用户数据的最长长度为数据报中用户数据的最长长度为6 5 5 0 7字字 节。节。 n但是,大多数实现所提供的长度比这个最大值小。但是,大多数实现所提供的长度比这个最大值小。

25、n主要原因:主要原因: 1. 应用程序可能会受到其程序接口的限制应用程序可能会受到其程序接口的限制。socket api 提供了一个可供应用程序调用的函数,以设置接收和发送提供了一个可供应用程序调用的函数,以设置接收和发送 缓存的长度。对于缓存的长度。对于udp socket,这个长度与应用程序可,这个长度与应用程序可 以读写的最大以读写的最大u d p数据报的长度直接相关。现在的大部数据报的长度直接相关。现在的大部 分系统都默认提供了可读写大于分系统都默认提供了可读写大于8 1 9 2字节的字节的u d p数据数据 报(使用这个默认值是因为报(使用这个默认值是因为8 1 9 2是是n f s

26、读写用户数据读写用户数据 数的默认值)。数的默认值)。 2. 因为因为t c p / i p的内核实现,存在一些实现特性的内核实现,存在一些实现特性(或(或 差错),使差错),使i p数据报长度小于数据报长度小于6 5 5 3 5字节。字节。 icmp源站抑制差错源站抑制差错 n同样也可以使用同样也可以使用u d p产生产生i c m p“源站抑制源站抑制 (source quench)”差错。差错。 n当一个系统(路由器或主机)接收数据报的速度当一个系统(路由器或主机)接收数据报的速度 比其处理速度快时,比其处理速度快时,可能可能产生这个差错。产生这个差错。 n“可能可能”:即使一个系统已经

27、没有缓存并丢弃数:即使一个系统已经没有缓存并丢弃数 据报,也不要求它一定要发送源站抑制报文。据报,也不要求它一定要发送源站抑制报文。 icmp源站抑制差错报文格式源站抑制差错报文格式 对源站抑制的态度对源站抑制的态度 n尽管尽管rfc 1009 要求路由器在没有缓存时产生源要求路由器在没有缓存时产生源 站抑制差错报文,但是新的站抑制差错报文,但是新的router requirements rfc almquist 1993 对此作对此作 了修改,提出路由器不应该产生源站抑制差错报了修改,提出路由器不应该产生源站抑制差错报 文。由于源站抑制要消耗网络带宽,且对于拥塞文。由于源站抑制要消耗网络带宽

28、,且对于拥塞 来说是一种无效而不公平的调整,因此现在人们来说是一种无效而不公平的调整,因此现在人们 对于源站抑制差错的态度是不支持的。对于源站抑制差错的态度是不支持的。 7.3 广播和多播广播和多播 n广播和多播仅应用于广播和多播仅应用于u d p 协议栈各层对收到帧的过滤过程协议栈各层对收到帧的过滤过程 广广 播播 n受限的广播(本地广播)受限的广播(本地广播) 55 n直接广播直接广播 n-id.主机号全主机号全1 广播与多播的比较广播与多播的比较 n广播增加了对广播数据不感兴趣主机的处广播增加了对广播数据不感兴趣主机的处 理负荷理负荷 n多播减少了对应用不感兴趣

29、主机的处理负多播减少了对应用不感兴趣主机的处理负 荷荷 多多 播播 ni p多播提供两类服务:多播提供两类服务: 1) 向多个目的地址传送数据向多个目的地址传送数据 2) 客户对服务器的请求客户对服务器的请求 如无盘工作站如无盘工作站 多播地址(多播地址(d类地址)类地址) 分配的分配的28 bit均用作多播组号而不再表示其他均用作多播组号而不再表示其他 主机组主机组 n一个主机组可跨越多个网络一个主机组可跨越多个网络 n主机组中成员可随时加入或离开主机组主机组中成员可随时加入或离开主机组 n主机组中对主机的数量没有限制主机组中对主机的数量没有限制 n不属于某一主机组的主机可以向该组发送不属于

30、某一主机组的主机可以向该组发送 信息信息 熟知组播地址(永久组)熟知组播地址(永久组) 如:如: n2 2 4 . 0 . 0 . 1 该子网内的所有主机该子网内的所有主机 n2 2 4 . 0 . 0 . 2 该子网内的所有路由器该子网内的所有路由器 n2 2 4 . 0 . 1 . 1 用作网络时间协议用作网络时间协议ntp n2 2 4 . 0 . 0 . 9 用作用作ripv2 n2 2 4 . 0 . 1 . 2 用作用作sgi公司的公司的dogfight应用应用 d类类ip地址到以太网多播地址的映射地址到以太网多播地址的映射 ni a n a拥有一个以太网地址块,即高位拥有一个以太

31、网地址块,即高位24 bit为为0 0 : 0 0 : 5 e(十六进制表示),这意味着该地址块所拥有的地(十六进制表示),这意味着该地址块所拥有的地 址范围从址范围从0 0 : 0 0 : 5 e : 0 0 : 0 0 : 0 0到到0 0 : 0 0 : 5 e : ff : ff : ff。 ni a n a将其中的一半分配为多播地址。将其中的一半分配为多播地址。 n为了指明一个多播地址,任何一个以太网地址的首字节必为了指明一个多播地址,任何一个以太网地址的首字节必 须是须是0 1,这意味着与,这意味着与i p多播相对应的以太网地址范围从多播相对应的以太网地址范围从 0 1 : 0 0

32、 : 5 e : 0 0 : 0 0 : 0 0到到0 1 : 0 0 : 5 e : 7 f : ff : ff。 地址映射的不唯一性地址映射的不唯一性 n由于多播组号中的最高由于多播组号中的最高5 bit在映射过程中被忽略,在映射过程中被忽略, 因此每个以太网多播地址对应的多播组是不唯一的。因此每个以太网多播地址对应的多播组是不唯一的。 n3 2 个不同的多播组号被映射为一个以太网地址。个不同的多播组号被映射为一个以太网地址。 n例如:多播地址例如:多播地址2 2 4 . 1 2 8 . 6 4 . 3 2(十六进(十六进 制制e 0 . 8 0 . 4 0 . 2 0)和)和2 2 4

33、. 0 . 6 4 . 3 2 (十六进制(十六进制e 0 . 0 0 . 4 0 . 2 0)都映射为同一以)都映射为同一以 太网地址太网地址0 1 : 0 0 : 5 e : 0 0 : 4 0 : 2 0。 多播过滤多播过滤 n既然地址映射是不唯一的,那么设备驱动程序既然地址映射是不唯一的,那么设备驱动程序 或或i p层就必须对数据报进行过滤。层就必须对数据报进行过滤。 n因为网卡可能接收到主机不想接收的多播数据因为网卡可能接收到主机不想接收的多播数据 帧。另外,如果网卡不提供足够的多播数据帧帧。另外,如果网卡不提供足够的多播数据帧 过滤功能,设备驱动程序就必须接收所有多播过滤功能,设备

34、驱动程序就必须接收所有多播 数据帧,然后对它们进行过滤。数据帧,然后对它们进行过滤。 局域网网卡趋向两种处理类型局域网网卡趋向两种处理类型 n一种是网卡根据对多播地址的散列值实行多播过一种是网卡根据对多播地址的散列值实行多播过 滤,这意味仍会接收到不想接收的多播数据;滤,这意味仍会接收到不想接收的多播数据; n另一种是网卡只接收一些固定数目的多播地址,另一种是网卡只接收一些固定数目的多播地址, 这意味着当主机想接收超过网卡预先支持多播地这意味着当主机想接收超过网卡预先支持多播地 址以外的多播地址时,必须将网卡设置为址以外的多播地址时,必须将网卡设置为“多播多播 混杂混杂(multicast p

35、romiscuous)”模式。模式。 对多播的评价对多播的评价 尽管:尽管: n地址映射不完美地址映射不完美 n需要硬件过滤需要硬件过滤 但:但: n前景非常好前景非常好 单个网多播和跨网多播单个网多播和跨网多播 n单个网多播单个网多播 多播进程将目的多播进程将目的i p地址指明为多播地址指明为多播 地址,设备驱动程序将它转换为相应的以太网地地址,设备驱动程序将它转换为相应的以太网地 址,然后把数据发送出去。址,然后把数据发送出去。 n跨网多播跨网多播 需要有一个协议让多播路由器了解确需要有一个协议让多播路由器了解确 定网络中属于确定多播组的任何一个主机,这个定网络中属于确定多播组的任何一个主

36、机,这个 协议就是协议就是internet组管理协议(组管理协议(igmp)。)。 7.4 igmp协议协议 nrfc1112 nigmp封装在封装在ip数据报中,数据报中,ip首部中协议字段值为首部中协议字段值为2。 igmp报文报文 类型类型 为为1是由多播路由器发出的查询报文是由多播路由器发出的查询报文 为为2说明是主机发出的报告报文说明是主机发出的报告报文 组地址组地址 在查询报文中组地址设置为在查询报文中组地址设置为0 在报告报文中组地址为要参加的组地址在报告报文中组地址为要参加的组地址 加入一个多播组加入一个多播组 n在一个给定接口上的多播组中的成员是动态的在一个给定接口上的多播组

37、中的成员是动态的它随时它随时 因进程加入和离开多播组而变化因进程加入和离开多播组而变化 n进程必须以某种方式在给定的接口上加入某个多播组进程必须以某种方式在给定的接口上加入某个多播组 n一个主机通过组地址和接口来识别一个多播组。一个主机通过组地址和接口来识别一个多播组。 n主机必须保留一个表,此表中包含所有至少含有一个进程主机必须保留一个表,此表中包含所有至少含有一个进程 的多播组以及多播组中的进程数量。的多播组以及多播组中的进程数量。 igmp 报告和查询报告和查询 多播路由器使用多播路由器使用igmp报文来记录与该路由器相连网络中组报文来记录与该路由器相连网络中组 成员的变化情况。使用规则如下:成员的变化情况。使用规则如下: n1) 当第一个进程加入一个组时,主机就发送一个当第一个进程加入一个组时,主机就发送一个igmp报告。报告。 如果一个主机的多个进程加入同一组,只发送一个如果一个主机的多个进程加入同一组,只发送一个igmp报报 告。这个报告被发送到进程加入组所在的同一接口上。告。这个报告被发送到进程加入组所在的同一接口上。 n2) 进程离开一个组时,主机不发送进程离开一个组时,主机不发送igmp报告,即便是组中报告,即便是组中 的最后一个进程离开。主机知道在确定的组中已不再有组成的最后一个进程离开。主机知道在确定的组中已不再有组成 员

温馨提示

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

评论

0/150

提交评论