《IP组播(第1卷)》一1.3 组播数据包

1.3 组播数据包

如前所述,组播这种通信方式可以只通过一条数据流,将消息送到多个接收方。在运行Internet协议(IP)的以太网环境中,构成网络基础设施的设备主要是路由器和交换机,它们负责将单个数据包复制为多个数据包或消息,并高效地将这些数据包分发给有意接收这些消息的设备。

现在我们需要简要回顾开放式系统互联(OSI)模型,并解释组播在不同层中的应用。表1-1中列出了OSI模型的组成部分。

组播应用通常使用IP上的用户数据报协议(UDP)。因此需要使用传输层,使用了传输层就不能没有网络层运行的IP协议。路由器提供的主要功能也是在IP层。以太网交换机会在数据链路层上,使用MAC地址复制子网中的组播流量。

你必须完全理解OSI模型,这样才能了解IP组播技术,以及各层之间的相互作用。

注释
 

我们把数据帧称为二层消息,在这里我们关注的是源和/或目的MAC地址。我们把数据包称为三层消息,它包含源和目的IP地址。

学习组播一定要理解路由器到底是如何构建组播路由信息库(MRIB)的,以及路由器是如何通过使用单播路由信息库(RIB)来确保转发路径中不出现环路的。从数学的角度说,使用树形结构是路由设备或交换设备确保无环拓扑的最佳方式。组播路由器和交换机就是构建树形结构的专家,本书后文中将更详细地介绍相关内容。

1.3.1 组播源是什么

当说到组播时,总是涉及两种类型的主机:组播源和组播接收方。组播源可以是网络中拥有IP地址的任意设备。要想成为源设备,主机只需要向组播组(Multicast Group)IP地址发送一个消息。在图1-8中,3个发送方都在向同一个组播目的地址239.1.1.1发送消息。

组播源设备在发出一个组播消息前,不需要说明它想把这个消息发送给一个组。任何启用了IP的设备(包括路由器和交换机)都可以把数据包发往组播组。当IP组播路由器在处理一个目的地是组播组的消息时,它会建立一个新的转发条目。这个新的转发条目是“源,组”条目,被称为“源组”,简写为(S, G)。图1-8中发送方A的(S, G)条目应该是(192.168.0.2, 239.1.1.1)。

(S, G)条目指的是源IP地址和目的组地址,中间以逗号相隔。图1-8中的发送方IP地址就是源(S)地址,目的组播组IP地址就是(G)地址。注意图中的3台设备都向同一个组地址发送消息。这会引发问题吗?在继续阅读的过程中想着这个问题。

1.3.2 组播接收方是什么

组播接收方是指启用了组播的设备,并且它表达过对某个组播组或者某个(S, G)对感兴趣。除非组播是在链路本地(不会由任何路由器在网络中转发,比如224.0.0.2这个表示“所有路由器”的IPv4组)传输的,否则IP设备要想成为某个组播组的接收方,必须由管理员或某项应用向那个组播组进行注册。注册后,这个组播接收方就会侦听去往这个组播组目的地址的数据包,比如图1-8中的组播组239.1.1.1。

组播注册的过程是由Internet组播消息协议(IGMP)进行管理的。路由器收到或发起针对某个组或某些组的接收方注册行为时,路由器会在MRIB中添加(, G)条目。(, G)条目表示路由器对这个组感兴趣。

注释
 

组播转发信息库(MFIB)和组播路由信息库(MRIB)是用来解释Cisco路由器中组播流的术语。

MRIB负责维护组播协议生成的路由信息。这些信息会反馈到MFIB中,MFIB负责转发组播数据包,并且负责收集组播流的状态统计信息。

时间: 2024-12-21 16:10:05

《IP组播(第1卷)》一1.3 组播数据包的相关文章

用java的MulticastSocket实现的组播,在无线环境下接收不到数据包是怎么回事?求大牛们解释啊

问题描述 用java的MulticastSocket实现的组播,在无线环境下接收不到数据包,但是在有线环境下可以.无线环境是通过一个TL-WR340G无线路由器搭建的,有线环境是通过有线路由器搭建的 解决方案 解决方案二:自己顶下

《IP组播(第1卷)》一2.11 交换机中的数据包复制过程

2.11 交换机中的数据包复制过程 几乎所有设备上要求能够支持的组播转发都是开放标准的,由IETF之类的组织起草的标准.但网络设备中数据包的实际转发行为则没有对应的开放标准.对于单播数据包传输也是如此.每个厂商,或者有时是每条产品线,实施的转发机制是区分每个平台的标准. IP组播转发的核心内容是数据包复制过程.数据包复制指的是在物理上复制某个数据包,并把复制的数据包从转发路径上的目的接口发送出去. 在每个平台上,复制过程的区别在于网络设备是在哪里完成的复制.Cisco的每个网络平台在处理这个过程

《TCP/IP路由技术(第二卷)》一1.4 配置EGP

1.4 配置EGP TCP/IP路由技术(第二卷) 通过以下4个基本步骤即可完成路由器上的EGP配置. 第1步:利用命令autonomous-system指定路由器的AS. 第2步:利用命令router egp启动EGP进程并指定邻居的AS. 第3步:利用命令neighbor指定EGP邻居. 第4步:指定由EGP宣告的网络. 下面的第一个案例研究将详细解释前3个配置步骤,同时也给出了步骤4的多种实现方法. 1.4.1 案例研究:EGP末梢网关 图1-10给出了一台位于AS 65502的EGP末梢

网络通信-组播数据包在传输的时候,会用到网卡上的物理地址吗

问题描述 组播数据包在传输的时候,会用到网卡上的物理地址吗 组播数据包在传输的时候,会用到网卡上的物理地址吗?会用到接收方的IP地址作为目的地址吗

iOS UDP组播服务端收不到客户端发的数据

问题描述 iOS UDP组播服务端收不到客户端发的数据 客户端可以收到服务器发的数据,反过来不行.我想实现双向多播,理论上是可行的吧? 多播绑定的端口是别人向自己发数据的端口吧?加入的多播组应该是向别人发送数据的地址吧? 使用GCDAsyncUdpSocket,为什么只绑定一个端口就行?不是还要绑定IP吗? 本地Socket的IP.端口与发送的目的IP.端口,有点绕晕了,请高手指教 解决方案 bind绑定的是本地的ip地址和端口, 加入多播组的调用中使用对端向外发送的多播ip(通常是224.x.

《TCP/IP路由技术(第二卷)》一1.9 配置练习题

1.9 配置练习题 TCP/IP路由技术(第二卷) 本书附录E中提供了以下配置练习题的答案. (1)图1-14中的自治系统65531是一个核心AS,请在RTA和RTB上配置EGP,要求如下: 不要将AS内的数据链路宣告给任何外部邻居. RTA将连接在其S1接口上的网络宣告给RTB:另外,要求RTA和RTB之间不能宣告其他AS间链路. RTA和RTB向其外部邻居(除了从其他自治系统学习到的网络)宣告默认路由,而且这两个网关都不得将默认路由宣告给其内部邻居. (2)例1-26给出了图1-15中RTC

《TCP/IP路由技术(第二卷)》一导读

前 言 TCP/IP路由技术(第二卷)自从出版了<TCP/IP路由技术(第一卷)>之后,虽然Cisco Press"CCIE职业发展系列"中增加了大量新书,而且CCIE计划本身也被扩展到多个专业领域,但IP路由协议仍然是所有准CCIE们的核心基础.因此,必须透彻地对其加以理解和掌握,否则基础不牢,大厦将倾. 我在<TCP/IP路由技术(第一卷)>的前言中曾经说过,"--随着互联网络规模和复杂性的不断增大,路由问题也随即变得庞大且错综复杂".由

《TCP/IP路由技术(第二卷)》一1.1 EGP的起源

1.1 EGP的起源 TCP/IP路由技术(第二卷)在20世纪80年代早期,构成ARPANET(现代互联网的前身)的路由器(网关)设备上都运行了一种距离向量路由协议--GGP(Gateway-to-Gateway Protocol,网关到网关协议).但是随着ARPANET的不断发展,与当今许多负责管理日益增长的互联网络的网管员一样,ARPANET的架构师们也预见到了相同的问题:现在运行的路由协议没有很好的扩展性. Eric Rosen在RFC 827中阐述了以下扩展性问题. 由于所有的网关都要知

《TCP/IP路由技术(第二卷)》一1.6 附 注

1.6 附 注 TCP/IP路由技术(第二卷)1Eric Rosen,"RFC 827:外部网关协议(EGP)". 2Linda J. Seamonson和Eric C. Rosen"RFC 888:'末梢'外部网关协议". 3D.L. Mills,"RFC 904:外部网关协议正式规范". 4J. Rekhter,"RFC 1092:EGP和新NSFNET骨干网的策略路由".