第7章 网络层协议(4)_IGMP协议

4. IGMP协议(Internet Group Management Protocol)

4.1 什么是组播(多播)

(1)单播同一个视频要发送90个副本,但支持收看者“快进”和“倒退”。

(2)组播:同一个多播组的90个成员并需发送一次,路由器在转发分组时复制成多个副本转发出去,即在因特网范围内的多播是靠路由器来实现的,能够运行多播协议的路由器称为多播路由器。当分组到达目的局域网时,由于局部网具有硬件多播功能因此不需要复制分组,在局部网上的多播组成员都能收到这个视频分组。

4.2 组播IP和组播MAC地址

(1)组播分为两种

  ①只在本局域上进行硬件组播(使用组播MAC地址)

  ②在因特网范围进行组播(使用组播IP)

(2)组播IP


D类地址


说明


备注


224.0.0.0


基地址(保留)


INAN指派的永久组地址,不能随意被使用!


224.0.0.1


在本子网上的所有参加多播的主机和路由器


224.0.0.2


在本子网上的所有参加多播的路由器


224.0.0.4


DVMP路由器


……


224.0.1.0

238.255.255.255


全球范围都可使用的多播地址


239.0.0.0

239.255.255.255


限制在一个组织的范围

  ①组播数据报的目的地址不能为某个具体的主机IP,而是多播组的标识符,然后将加入到这个多播组的主机IP与多播组的标识符关联起来。

  ②多播组的标识符就是D类地址每一个D类地址标志一个多播组。D类地址范围是224.0.0.0至239.255.255.255,共可标志238个多播组。

  ③组播数据报使用IGMP协议,“尽最大努力交付”数据报,但并不保证一定能够交付给多播组内的所有成员。

  ④组播地址只能用于目的地址,而不能用于源地址。此外,组播数据报不产生ICMP差错报文。因此,若ping一个多播地址,将永远得不到响应。

(2)组播MAC地址

  ①目标地址是组播IP地址的数据包到达以太网,就要使用组播MAC地址进行封装。组播MAC地址使用组播IP地址构造。

  ②组播MAC地址区间:01-00-5E-00-00-00到01-00-5E-7F-FF-FF。这是一个由48位组成的MAC地址,其中高25位是固定的,而低23位由IP多播地址的低23位直接映射而来

  ③组播IP和组播MAC地址的映射关系不是唯一的。如组播IP(224.168.64.32)和(224.0.64.32)构造出来的MAC地址都是01-00-5E-00-40-20。当收到组播数据报的主机,还要在IP层利用软件根据IP地址进行过滤,把不是本主机要接收的数据报丢弃。

4.3 IGMP:组播管理协议

(1)IGMP协议工作的两个阶段

  ①当某个主机加入新的多播组时,该主机应向多播组的多播地址发送一个IGMP报文,声明自己要成为该组的成员。本地的多播路由器收到IGMP报文后,还要利用多播路由选择协议把这种组成员关系转发给因特网上的其他多播路由器

  ②在多播过程中,一个多播组中的成员是动态变化的。随时会有主机加入或离开这个多播组。本地多播路由器要周期性地查询本地局域网上的主机,以便知道这些主机是否继续是组的成员。只要有一个主机对某个组响应,那么多播路由器就认为这个组是活跃的。但一个组在经过几次的探询后仍然没有一个主机响应,多播路由器就认为本网络上主机己经离开了这个组。因此,也就不再把这个组的成员关系转发给其他多播路由器。

(2)多播路由选择协议

  ①连接在局域网上的多播路由器还必须与因特网上的其他多播路由器协同工作,以便把多播数据报用最小代价传递给所有的组成员。这需要使用多播路由选择协议。

  ②多播路由选择实际上就是找出以源主机为根节点的多播转发树。在多播转发树上的路由器不会收到重复的多播数据报(即多播数据报不应在互联网中兜圈子)

  ③多播路由选择协议的实现有三种方法:洪泛与剪除、隧道技术和基于核心的发现技术等。

4.4 实战:跨网段观看组播视频

(1)网络拓扑图

(2)在Win2003虚拟机上架设流媒体多播服务器

  ①安装Window Media Services组件。(为方便,这里简称为“WMS”)

  ②打开“WMS”,新建发布点,这里使用默认的“Sample_Broadcast”。

  ③在“属性”选项卡→“多播流”→启用“WMS多播数据写入器”。然后查看该写入器的属性,可以看到所使用的多播地址、端口和多播数据包的TTL。

  ④发布公告:在“公告”选项卡→“运行多播公告向导” →……→“添加流格式”中通过浏览找到“racecar_300.wmv”,然后继续设置直到完成。注意,会生成一个“Sample_Broadcast.nsc”文件。

  ⑤将“Sample_Broadcast.nsc”文件从Win2003虚拟机拷贝到WinXP,双击运行可观看在Win2003流媒体服务器上正在多播的视频。

(3)路由器配置

  ①R1启用多播路由,接口为密集模式。R2路由器配置方法相同

R1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#ip multicast-routing          //启用多播路由协议
R1(config)#interface fastEthernet 0/0
R1(config-if)#ip pim dense-mode          //接口为密集模式
R1(config-if)#exit
R1(config)#interface serial 2/0
R1(config-if)#ip pim dense-mode           //接口为密集模式
R1(config-if)#exit

  ②查看R2多播路由表

R2#show ip mroute
(192.168.10.30, 239.192.2.67), 00:00:11/00:02:59, flags: T  //多播路由
  Incoming interface: Serial2/0, RPF nbr 172.16.0.1         //R2要请求239.192.2.67多播数据流,就要找172.16.0.1
  Outgoing interface list:
    FastEthernet0/0, Forward/Dense, 00:00:08/00:00:00

  ③查看接口绑定的组播地址

R2#show ip igmp groups
IGMP Connected Group Membership
Group Address    Interface                Uptime    Expires   Last Reporter   Group Accounted
239.255.255.250  FastEthernet0/0          00:25:10  00:02:14  192.168.80.50
239.192.2.67     FastEthernet0/0          00:00:44  00:02:15  192.168.80.50 //流媒体多播组(IP:239.192.2.67),接收者192.168.80.50
224.0.1.40       FastEthernet0/0          00:25:11  00:02:11  192.168.80.10

  ④查看启用IGMP协议的接口

R2#show ip igmp interface //本例中会fast0/0和serial2/0接口的启用IGMP的信息

  ⑤查看IGMP协议工作过程、主机加入和离开组播的报告

R2#debug ip igmp  //查看
R2#undebug all    //取消
时间: 2024-10-09 21:35:00

第7章 网络层协议(4)_IGMP协议的相关文章

第7章 网络层协议(1)_网络层首部

1. 网络层首部 1.1 网络层协议 (1)TCP/IP协议栈网络层的4个协议:IP协议.ICMP协议.IGMP协议和ARP协议. (2)IP协议:动态路上协议的统称,包括RIP和OSPF协议. (3)TCP/IP协议分成四层:应用层定义了客户端和服务器通信规范,传输层实现可靠传输,网络层负责为数据包选择转发路径,数据链路层负责将数据包封装成帧发送到数字链路上. 1.2 查看网络层首部 1.3 网络层首部格式 (1)版本:占4位,指IP协议的版本.目前有两个版本IPv4和IPv6. (2)首部长

【读书笔记】计算机网络1章:课程介绍、协议、分层

这是我在Coursera上的学习笔记.课程名称为<Computer Networks>,出自University of Washington. 由于计算机网络才诞生不久,目前正在以高速在发展,所以有些旧的教材可能都已经跟不上时代了.这门课程在2013年左右录制,知识相对还是比较新的.覆盖了计算机网络中的各个协议层,从物理层到应用层都讲得非常仔细.学完这门课程之后对计算机网络会有比较深刻的了解. 本章讲述了这门课程的大致情况,讲述了协议.协议层等基本概念. 目标和动机 课程的主要目标就是介绍计算

《TCP/IP详解卷1:协议》第11章 UDP:用户数据报协议-读书笔记

章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(1)-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(2)-读书笔记 <TCP/IP详解卷1:协议>第4章 ARP:地址解析协议-读书笔记 <TCP/IP详解卷1:协议>第5章 RARP:逆地址解析协议-读书笔记 <TCP/IP详解卷1:协

《TCP/IP详解卷1:协议》第5章 RARP:逆地址解析协议-读书笔记

章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(1)-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(2)-读书笔记 <TCP/IP详解卷1:协议>第4章 ARP:地址解析协议-读书笔记 <TCP/IP详解卷1:协议>第5章 RARP:逆地址解析协议-读书笔记 1.引言 具有本地磁盘的系统引导

第四章 网络层

序言 没保存,电脑没动放着去吃饭,结果win7就休眠了,启动虽然网页度还在,可以我的博文没保存啊,心痛,只能在重头来了,只能说博文应该改进改进,如果直接关了,应该帮用户自动保存草稿的.重新写的.反正今天下午的任务在这里摆着.加油 ----WH 一.回顾 TCP/IP协议栈:物理层.链路层.网络层.传输层.应用层(会话层+表示层+应用层) 物理层:通过比特流在线路中传输来完成我们传输数据的目的,传输的方式很多种,传输的介质也很多中,光纤等 链路层:数据帧,在数据包(报)上加mac地址形成数据帧,其

第4章网络层

第4章网络层 4.1 网络层提供的两种服务 虚电路Virtual Circuit, 电话公司,分组 网络层向上只提供简单灵活的.无连接的.尽最大努力交付的数据报服务. 网络层不提供服务质量承诺. 虚电路服务 数据报服务 4.2 网际协议IP 与IP配套的四个协议 地址解析协议 ARP(Address Resolution Protocol) 逆地址解析协议RARP 网际控制报文协议 ICMP(Internet Control Message Protocol) 网际组管理协议 IGMP(Inte

java学习--基础知识进阶第十二天--网络编程概述、UDP协议、TCP协议

今日内容介绍 u  网络编程概述 u  UDP u  TCP 第1章 网络编程概述 1.1 网络协议 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样.在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传输格式.传输速率.传输步骤等做了统一规定,通信双方必须同时遵守才能完成数据交换. 网络通信协议有很多种,目前应用最广泛的是TCP/IP协议(Transmission Contro

Object-C非正式协议与正式协议的区别

一.非正式协议 显然这个名词是相对于正式协议而言的.在解释非正式协议之前,先引用两段话: 1.在<Cocoa设计模式>第六章类别的6.3.2把类别用于非正式协议一节中,这样写到: 非正式协议通常定义为NSObject的类别.类别接口中指定的方法可能会或者可能不会被框架类实际地实现.非正式协议位于一种设计灰区中.正式协议由编译器检查并且代表一种关于对象能力的保证,但是非正式协议不会做出保证----而只会给出提示. 2.苹果官方文档Cocoa Core Competencies一文中是这样介绍非正

TCP协议与UDP协议的区别

TCP协议与UDP协议的区别 首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! TCP/IP协议是一个协议簇.里面包括很多协议的.UDP只是其中的一个.之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了.   常用的网络协议 -UDP:概念来自于"电报"     -只管发送,不确认对方是否收到     -以数据包的形式发送,每个数据包不能

【网络协议】TCP协议简介

本文只是对TCP协议做个简要的介绍. TCP协议,即传输控制协议,与UDP协议同处于传输层,同样使用相同的网络层,但TCP提供了一种可靠的.面向连接的数据传输服务,它会在两个使用TCP的应用之间建立一个TCP连接,在该连接上进行数据的传输. TCP通过以下方式提供可靠性: 1.应用程序被分割成TCP认为最合适发送的数据块.这点与UDP完全不同,应用程序产生的UDP数据报长度将保持不变,加上IP首部后,才会进行IP分片. 2.当TCP发出一个报文段后,它会启动一个定时器,等待目的端发确认收到这个报