《IP组播(第1卷)》一2.2 MAC地址映射

2.2 MAC地址映射

传统以太网交换机(二层设备)负责处理以太网数据帧,传统路由器(三层设备)负责查看数据包,来决定如何处理这个消息。如第1章中讨论的,当设备发送的是广播数据帧时,目的地址代表所有设备,而单播消息的目的地址代表一个目的MAC地址。

如果发送方发送的是组播消息会发生什么?为了优化网络资源,以太网交换机也需要能够处理组播。这也是关键的地方。发送方设备必须将目的IP组播地址按照以下方式,转换成具体的MAC地址。

  • 最高的25比特是官方为组播预留的MAC地址范围:0100.5E00.0000~0100.5E7F.FFFF(详见RFC 1112)。这些比特是OUI(组织唯一识别符)的一部分。
  • 组播MAC地址中的最低23比特直接使用了目的组播IP地址中的最低23比特。
  • 目的组播IP地址的最高4比特在二进制中是1110(0b1110)。它代表D类地址的范围:224.0.0.0(0b11100000)~239.255.255.255(0b11101111)。
  • 在用来表示组播MAC地址的48比特二进制数值中,最高的25比特是作为OUI的一部分预留的,最低的23比特使用的是组播IP地址的最低23比特,如图2-4所示。

交换机可以使用这种方法算出组播MAC地址,判断一个数据帧是组播帧,然后做出高效的转发决策。终端主机可以侦听拥有某个组播MAC地址的数据帧,这样它就只会处理自己注册过的组播流。不过在这个过程中有个小问题。

你有没有发现IP地址和MAC地址在数量上的区别?IP地址中有5比特与OUI MAC地址重叠了。这也就导致组播IP地址与组播MAC地址的数量关系是32:1(25 = 32)。

这意味着当主机注册了一个组播流时,它实际上会收到更多不想注册的组播流,而主机将会丢弃这些多余的流量。比如主机注册了组播流224.64.7.7,这个组播IP地址映射为组播MAC地址是:0x0100.5E40.0707,对应着224.64.7.7和224.192.7.7。把这些IP地址转换成1和0的话,图2-5中展示了这种模糊对应的关系。二进制列中的“X”表示重叠的比特,图中描绘了32个组播IP地址是如何对应着1个组播MAC地址的。

时间: 2024-08-01 19:34:06

《IP组播(第1卷)》一2.2 MAC地址映射的相关文章

《IP组播(第1卷)》一第1章 IP组播入门1.1 组播解决了什么问题

第1章 IP组播入门 IP组播(第1卷) IP网络中有3种数据通信方式:单播.广播和组播.在开始深入探讨组播通信方式之前,我们先来理解单播和广播的基本组成部分,以此来建立一条基线. 单播通信位于OSI(开放式系统互联)模型的第3层,基于目的设备的IP地址进行转发.路由器会通过静态或动态的方式学到路由,然后通过查看目的IP地址来转发数据包.OSI第2层使用MAC(媒体访问控制)地址,以另一种机制在设备之间建立通信. 下面来看看图1-1.发送方正在向接收方A发送一个消息,这个消息的传输过程中需要用到

《IP组播(第1卷)》一第2章 网络访问和二层组播2.1 层的封装

第2章 网络访问和二层组播 IP组播(第1卷)第 1 章讨论了单播消息.广播消息和组播消息之间的区别.本章将深入探讨二层IP组播消息,以及它们是如何在二层域中传输的.本章的内容将包含二层域中组播功能的基本组成部分,以及组播的部署. 2.1 层的封装 在学习二层组播之前,我们必须先讨论数据包转发的基础概念,这样才能为这一过程建立一条基线.封装是OSI模型中的重要概念,在数据通信尤其是IP网络中起到重要的作用.封装是指通过一种方式,在OSI参考模型的每一层上添加相关信息,这些信息的作用是处理和转发数

《IP组播(第1卷)》一导读

前 言 IP组播(第1卷)本书包含了基本IP组播原理和路由技术,尤其是Cisco路由器和交换机使用的组播技术,其中切合实际地讨论了 IP 组播网络的常见特性.部署模型和实战经验,之后讨论了 Cisco IP组播网络在实施和排错时使用的命令和方法. 本书读者对象本书适用于所有为IP组播网络提供支持的专业人士.本书的目标读者为以下人士,网络管理员也会从本书包含的案例学习和特性解释中获得帮助: IP网络工程师和架构师: 网络操作技术员: 网络顾问: 安全专家: 融合专家和架构师. 目 录 第1章 IP

《IP组播(第1卷)》一1.4 三层组播是建立在TCP/IP协议栈中的

1.4 三层组播是建立在TCP/IP协议栈中的 IP组播是建立在TCP/IP协议栈中的.也就是说,传输组播数据帧和数据包所需的协议是由Internet工程任务组(IETF)进行控制的.IETF成员通过RFC发布和管理相关协议,也就是说IP组播协议是开放标准. 注释 组播协议IETF标准适用于IPv4和IPv6组播技术:但和其他IP协议一样,这并不意味着所有厂商处理组播的方式都是相同的,同时也不意味着所有组播协议的实施都能够与标准完美兼容. 使用TCP/IP协议栈也意味着IP组播隶属于互联网数字分

《IP组播(第1卷)》一2.3 组播数据帧的交换

2.3 组播数据帧的交换 二层交换机会根据目的MAC地址将数据帧发送到物理接口或逻辑接口.组播MAC地址与单播MAC地址是不同的,因为单播MAC地址应该是唯一的,它应该对应着唯一一个目的接口.组播MAC地址可能会对应着多个目的接口,这取决于有多少台设备请求接收这个IP组播流中的内容. 在二层交换机能够转发组播数据帧之前,它必须知道应该把消息发往哪些目的接口.它会在目的接口列表中记录需要接收这个组播数据帧的接口,这个列表中只包含那些注册了这个组播流的设备所连接的接口.工程师可以在目的接口列表中静态

《IP组播(第1卷)》一2.4 组的注册

2.4 组的注册 前文我们已经看到了,为了使本地网段和整个网络中的 IP 组播转发能够正常工作,交换机和网关路由器需要知道有哪些主机对组播组感兴趣,以及这些主机都连接在哪里.如果没有这些信息的话,唯一的做法只有在整个网络域中泛洪组播数据帧.这样做就破坏了使用 IP组播带来的好处. 主机组成员的注册和离开是个动态的过程.当有一台主机加入一个组播组时,交换机就没有必要再向这个网段持续无目的地转发组播数据包了,组成员也就确定了下来.管理网络中组播主机位置的唯一方法就是让组播主机组成员自己向网络中通告加

《IP组播(第1卷)》一1.5 重要的组播组和组的考量

1.5 重要的组播组和组的考量 网络中有很多组播组,每个组播组都是从更大范围的组播组中细分出来的.每个组地址块范围都对应一个具体的应用或范围.每个地址块的范围可以小到一个网段,或者大到企业组播网络,甚至全球Internet.在设计组播网络时,一定要理解定义了组播组的RFC和标准.组播组地址在组播域的"范围划分"中扮演了重要的角色.第5章会更详细地介绍相关概念. 注释 IANA负责管理全球范围内的地址分配,以及应用的协议分配.如果不对这些地址进行统一管理的话,将很难把这些地址用在实现协议

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

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

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

1.3 组播数据包 如前所述,组播这种通信方式可以只通过一条数据流,将消息送到多个接收方.在运行Internet协议(IP)的以太网环境中,构成网络基础设施的设备主要是路由器和交换机,它们负责将单个数据包复制为多个数据包或消息,并高效地将这些数据包分发给有意接收这些消息的设备. 现在我们需要简要回顾开放式系统互联(OSI)模型,并解释组播在不同层中的应用.表1-1中列出了OSI模型的组成部分. 组播应用通常使用IP上的用户数据报协议(UDP).因此需要使用传输层,使用了传输层就不能没有网络层运行