组播IP地址和MAC地址映射
- 格式:doc
- 大小:43.50 KB
- 文档页数:1
IP 多播地址与MAC多播地址的映射关系分类:交换芯片2012-10-08 17:13 258人阅读评论(0) 收藏举报为了支持IP 多播,以太网的大佬们已经为Ethernet和Fiber Distributed Data Interface (FDDI)的MAC地址保留了一个多播地址区间:01-00-5E-00-00-00 到01-00-5E-7F-FF-FF。
正如下图所示48位的MAC地址中的高25位是固定的,低23位是可变的。
为了映射一个IP 多播地址到MAC层的多播地址,IP多播地址的底23位可以直接映射为MAC层多播地址的底23位。
因为IP多播地址的前4位是固定的,另外还有比邻的5位不需要映射到MAC层多播地址,因此,一个主机接收到一些不属于自己所属组的MAC层多播包是可能的。
然而,这些包会被IP层通过判断IP目标地址而丢弃掉。
例如:多播地址224.192.16.1可以映射为01-00-5E-40-10-01。
用低23位,多播地址224.192.16.1的第一个8位是不会用到的,第二个8位中的后7位会被用到,第三个和第四个8位可以直接转换为十六进制字符。
第二个8位,即192的二进制表示是11000000,如果丢到最高位,就变成了1000000或64(十进制),或0X40(十六进制)。
第三个8位是16,即0X10(十六进制)。
第四个8位是1,即0X01(十六进制)。
因此,MAC地址就由224.192.16.1变成了01-00-5E-40-10-01。
IP多播地址的范围是:224.0.0.0--239.255.255.255,其中:1)224.0.0.0--224.0.0.255 本地保留,ttl=1,其中224.0.0.1是本网所有主机接收2)224.0.0.2是本网所有路由器接收3)239.0.0.0--239.255.255.255 私有组播地址4)232.0.0.0--232.255.255.255 特定源多播5)224.0.1.0--238.255.255.255 全球多播就是给一组特定的主机(多播组)发送数据,这样,数据的播发范围会小一些,多播的MAC地址是最高字节的低位为一,例如01-00-00-00-00-00。
组播ip与组播mac的映射IP组播和单播的目的地址不同,IP组播的目的地址是组地址——D类地址.D类地址是从224.0.0.0到239.255.255.255之间的IP地址其中224.0.0.0到224.0.0.255是被保留的地址224.0.0.1表示子网中所有的组播组224.0.0.2表示子网中的所有路由器224.0.0.5表示OSPF(Open Shortest Path First)路由器224.0.0.6表示OSPF指定路由器224.0.0.12表示DHCP(Dynamic Host Configuration Protocol)服务器.D类地址是动态分配和恢复的瞬态地址.每一个组播组对应于动态分配的一个D类地址;当组播组结束组播时,相对应的D类地址将被回收,用于以后的组播.在D类地址的分配中,IETF建议遵循以下的原则:全球范围:224.0.1.0~238.255.255.255;有限范围:239.0.0.0~239.255.255.255;本地站点范围:239.253.0.0~239.253.0.16;本地机构范围:239.192.0.0~239.192.0.14.2层的MAC地址是如何与3层的IP地址进行映射的呢?通过将MAC地址的前25位强行规定位0100.5e,而后23位对应IP地址的后23位,而组播IP地址的前4位均相同如:IP地址:1110yyyy.yxxxxxxx.xxxxxxx.xxxxxxxxMAC地址:00000001.00000000.01011110.0xxxxxxx.xxxxxxx.xxxxxxxx例如:组播IP地址224.215.145.230应该映射到下列哪个组播MAC地址?( )(A)01-00-5e-57-91-e6(B)01-00-5e-d7-91-e6(C)01-00-5e-5b-91-e6(D)01-00-5e-55-91-e6用二进制来换算,将215.145.230换算成1101,0111,1001,0001,1110,0110,取最后23位放到MAC地址中的23位可以计算得出答案是A。
什么是组播?让我们⼀起解密组播协议(IGMP、PIM)写在前⾯:本⼈是⼀名计算机系⼤⼆的学⽣,会不定时的将我的学习笔记分享给⼤家!如果需要更多的学习资源可以通过我的⾃⾏下载!⽬录组播技术传统的点到点单播存在的问题重复流量过多消耗设备资源、带宽资源难以保证传输质量概述信息发送者:组播源接受相同的信息接受这过程⼀个组播组,并且接受者都是定义:⼀点发出,多点接应优势提⾼效率优化性能分布式应⽤缺点基于udp尽⼒⽽为报⽂重复报⽂失序缺少拥塞避免机制61、ip组播(1) 对于IP 组播,需要关注下列问题:组播源将组播信息传输到哪⾥?即组播寻址机制;⽹络中有哪些接收者?即主机注册;这些接收者需要从哪个组播源接收信息?即组播源发现;组播信息如何传输?即组播路由。
(2) IP 组播属于端到端的服务,组播机制包括以下四个部分:寻址机制:借助组播地址,实现信息从组播源发送到⼀组接收者;主机注册:允许接收者主机动态加⼊和离开某组播组,实现对组播成员的管理;组播路由:构建组播报⽂分发树(即组播数据在⽹络中的树型转发路径),并通过该分发树将报⽂从组播源传输到接收者;组播应⽤:组播源与接收者必须安装⽀持视频会议等组播应⽤的软件,TCP/IP 协议栈必须⽀持组播信息的发送和接收。
为了让组播源和组播组成员进⾏通信,需要提供⽹络层组播地址,即IP 组播地址。
同时必须存在⼀种技术将IP 组播地址映射为链路层的组播MAC 地址。
(3) IP 组播地址IANA(Internet Assigned Numbers Authority,互联⽹编号分配委员会)将D类地址空间分配给IPv4组播使⽤,范围从224.0.0.0到239.255.255.255,具体分类及其含义如下表所⽰。
组播地址D类地址范围含义224.0.0.0-224.0.0.255为路由协议预留的永久组地址224.0.1.0-231.255.255.255 /233.0.0.0-238.255.255.255⽤户可⽤的asm临时组地址,全⽹范围有效232.0.0.0-232.255.255.255⽤户可⽤ssm临时组地址,全⽹范围内有效239.0.0.0-239.255.255.255⽤户可⽤的asm临时组地址,尽在特定的本地管理域内有效,陈伟本地管理组播地址D类地址范围含义IPv4 组播地址的范围及含义说明:组播组中的成员是动态的,主机可以在任何时刻加⼊或离开组播组。
多台电脑共享MAC和IP地址最近在论坛上看到很多人都在都在怀疑把两台电脑或多台电脑的MAC 改成一样会不会引起IP冲突或不能上网。
其实是可以的,你完全可以把两台电脑的IP 和MAC改成一样,不但可以上网而且还没IP冲突。
这种方法不但可以突破路由封锁用在ADSL共享上网,而且还可以用在IEEE802.1X认证上网的环境中,但是前提必须要用相同的账号来拨号上网(前提认证服务器没设验证账号的重复性),我的机子是通过学校校园网接入internet的,客户端采用802.1x认证客户端软件“STAR Supplicant拨号软件”来拨号上网,在我们学校里可以将两台机子的IP和MAC 改成一样然后用相同的一个账号来达到共享上网的目的,不过在我们学校只可以在同一个宿舍的两台机子才可以共享上网,因为我们学校的服务器不单只验证账号、ip、MAC而且还验证接入服务器IP(NAS IP),和接入服务器端口(NAS port),不同的宿舍接在学校交换机不同的端口,所以只限于同一个宿舍用这种法共享上网。
至于为什么不会引起IP冲突而且还能上网,这是因为ARP工作的缺陷,系统之所以会发现网上有相的IP的而提示“IP冲突”,是因为系统在启动时,TCP/IP中的ARP会广播一个免费ARP(free arp)请求包到网段上,这个ARP(free arp)包包含自己的IP和MAC,如果网段上有机子回应了这个包,这台发广播的机子就会认为局域网有别的机子使用和自己相同的IP,例如:PCA和PCB的IP和MAC完全一样,PCA的系统启动时会广播一个包含自己IP和MAC的免费ARP(free arp)请求包到网段上,如果PCB回应了这个请求,PCA会认为自己的IP和网络上的IP有冲突并发出提示(这就是为什么IP冲突一般发生系统刚启动完成时),问题是PCB根本不会回应这个请求包,这是因为这个请求包的IP和MAC和PCB自己的完全一样,而PCB会认为是自己发的包,所以不会回应,既然不会回应自然不会发生IP冲突了。
组播IP地址与组播MAC地址之间的换算方法与例子1个oui 有2 的24方个MAC地址组播地址:2的28次方,224.0.0.0-239.255.255.255可用组播范围:0100.5E00.0000----0100.5E07.FFFFMAC由48bit组成:前24位是OUI ,后24位由厂商定义共需要:16个OUI才可以与一个IP来一一对应。
32个IP才可以与一个oui来一一对应典故:Dr.Steve Deering此人研究出来的,当时因为分他的OUI是(0100.5E 0)所以这7个不变。
算法:最笨的方法,也是最安全的方法,就是把IP地址,换成二进制数。
再把二进制换成16进制,第4个8位,不用,因为有组播MAC的限制已经规定是0100.5E开头,第3个8位中的第8位规定为0.所以当不为0时,要改成0来换算。
Example:源IP 224.1.1.1换算成二进制11100000.00000001.00000001.00000001再换成16进制01 .01 .01加上组播MAC头0100.5E最后形成:0100.5E01.01.01可用的其它31个组播IP地址:224.129.1.1225.1.1.1 225.129.1.1226.1.1.1 226.129.1.1227.1.1.1 227.129.1.1228.1.1.1 228.129.1.1229.1.1.1 229.129.1.1230.1.1.1 230.129.1.1231.1.1.1 231.129.1.1232.1.1.1 232.129.1.1233.1.1.1 233.129.1.1234.1.1.1 234.129.1.1235.1.1.1 235.129.1.1236.1.1.1 236.129.1.1237.1.1.1 237.129.1.1238.1.1.1 238.129.1.1239.1.1.1 239.129.1.1加上:224.1.1.1 刚好32个。
1 Pv6中可控组播技术介绍对于IPv6的可控组播技术而言,在实现中首先要符合组播路由协议(PIM)、组播组管理协议(MLD)等基本组播协议的要求。
在此基础之上,建立IPv6可控组播的技术模型,确定在一个可控组播的部署环境中,对组播源及组播接收者的控制。
在IPv6可控组播技术应当能够提供以下功能:∙对组播源严格控制,阻止未被授权的组播流的发送。
∙对组播接收者严格控制,阻止未授权用户组播流量的获取。
∙对用户身份控制,能够针对用户的身份进行组播组的授权。
∙组播控制权限能够根据用户的在线情况实时下发,避免设备的压力过大。
∙抑制二层组播报文,使其无法在接入层泛滥。
∙与现有的认证计费系统配合,达到平滑升级的目的。
∙在现有的设备上平滑升级支持IPv6可控组播功能在IPv6的组播环境中,组播的组管理协议和组播路由协议在原理上没有发生变化,为了适应IPv6报文的特点,相关协议进行了一些适配性的修改。
同时,IPv6的组播地址与对应的组播MAC地址发生了一些变化,同IPv4的组播相比,IPv6组播的IP地址与组播的MAC 的对应关系不存在32比1的问题,这样在IPv6网络中,IPv6的组播地址分配会更加合理。
因此,在IPv6的可控组播中,需要对这些变化进行处理,才能够实现可控组播的功能。
如上所述,在IPv6的可控组播涉及到的技术主要有:组播源控制,组播组控制。
同时,当IPv6网络中开启组播业务时,要考虑到组播地址的分配问题。
下面将对IPv6网络中可控组播所涉及的技术及可控组播的实现过程进行分析。
1.1 IPv6的组播地址同IPv4组播一样,在IPv6中,使用组播组地址来确定一个组播组的接收者,接收者接收IPv6组播时,必须要知道IPv6的组播组地址,这样通过MLD协议的管理,接收者才能够获取IPv6的组播流。
IPv6的组播组地址格式如图1所示:图1 IPv6组播地址格式最高的8个bit为0xFF,标识此地址为组播地址。
IP与组播MAC地址映射关系IP与组播MAC地址映射关系2010-04-20 09:12Map Multicast MAC address to IP Multicast Addresses In the course of reading throughthe BSCI authorize self-study guide,I've come across amulticast example where the author talks about the concepts behind themulticast IP to MAC address mapping.In order to achieve the translation between aLayer 3IP multicast address and Layer 2multicast MAC address,the low-order 23 bits of the IP address(Layer 3)is mapped into the low-order 23 bits of the MAC address(Layer 2).The high order 4bits of the Layer 3IP address isfixed to 1110to indicate the Class Daddress space between 224.0.0.0 through 239.255.255.255 Ethernet MAC addresses start with 01:00:5E,allowing for arange from 01:00:5E:00:00:00through 01:00:5E:7F:FF:FF.With 32 total bits present in an IP address and 4highorder bits of it set at 1110,we are left with 28 bits of unique IP addresses we can use(32-4=28).But remember,23 low-order bits out of the 28 available bits are mapped to the MAC address,giving us 5r emaining bits of overlap.With the 5bits of extra overlap,there are32(25=32)IP multicast address that map to one MAC multicastaddress.The problem is,the book does not explain or show how itsolved the mapping.So Iwent about researching how it was done.If you happened to be studying for BSCI,I am referring to the section of the BSCI:Authorized Self-Study Guide,by Teare and Paquet,that starts on page 598– 600.The following is an example of how we arrive with those 32 IP addresses that map to asingle MAC address:For reference,use the following conversion chart for converting hex to binary and vice versa Let's start by using the example MAC address given in the book:01:00:5e:0a:00:01 Convert the hexadecimal MAC address 01:00:5e:0a:00:01to binary 0000 0001:0000 0000:0101 1110:0000 1010:0000 0000:0000 001Here's abreakdown of the conversion bit by bit:Isolate the 23 low-order binary bits from the converted MAC address:0000 0001:0000 0000:0101 1110:0000 1010:0000 0000:00000001Take the low order 23 bits from step 2and plug it into the low-order 23 bits of the IP address(do this in binary):1110 xxxx:x000 1010:0000 0000:0000 0000 1110-First 4high-order bits of the IP address for the multicast addressspace(224.x.x.x).xxxx x-5 remaining bits after the 23bits of the IP address is mapped to the MAC address plus the 4high order bits1110.This is equal to 32 total IP addresses.Convert the binary equivalent of the IP addresses to decimal,replacing the xvariableswith all the values to get all 32 possible IP addresses:111000000000 1010:0000 0000:0000 0001=224.10.0.1111000010000 1010:0000 0000:0000 0001=225.10.0.1111000100000 1010:0000 0000:0000 0001=226.10.0.1111000110000 1010:0000 0000:00000001=227.10.0.1111001000000 1010:0000 0000:00000001=228.10.0.1111001010000 1010:0000 0000:00000001=229.10.0.1111001100000 1010:0000 0000:00000001=230.10.0.1111001110000 1010:0000 0000:00000001=231.10.0.1111010000000 1010:0000 0000:00 000001=232.10.0.1111010010000 1010:0000 0000:00000001=233.10.0.1111010100000 1010:0000 0000:00000001=234.10.0.1111010110000 1010:0000 0000:00000001=235.10.0.1111011000000 1010:0000 0000:00000001=236.10.0.1111011010000 1010:0000 0000:00000001=237.10.0.1111011100000 1010:0000 0000:00000001=238.10.0.1111011110000 1010:0000 0000:00000001=239.10.0.1111000001000 1010:0000 0000:00000001=224.10.0.1111000011000 1010:0000 0000:00000001=225.138.0.1111000101000 1010:0000 0000:00000001=226.138.0.1111000111000 1010:0000 0000:00000001=227.138.0.1111001001000 1010:0000 0000:00000001=228.138.0.1111001011000 1010:0000 0000:00000001=229.138.0.1111001101000 1010:0000 0000:00000001=230.138.0.1111001111000 1010:0000 0000:00000001=231.138.0.1111010001000 1010:0000 0000:00000001=232.138.0.1111010011000 1010:0000 0000:00000001=233.138.0.1111010101000 1010:0000 0000:00000001=234.138.0.1111010111000 1010:0000 0000:00000001=235.138.0.1111011001000 1010:0000 0000:00000001=236.138.0.1111011011000 1010:0000 0000:00000001=237.138.0.1111011101000 1010:0000 0000:00000001=238.138.0.1111011111000 1010:0000 0000:0000 0001=239.138.0.1 All the 32 IP addresses on step 4map to MAC address 01:00:5e:0a:00:01Convert IP Multicast Address to Multicast MAC Address Conversely,a multicast IP address can be converted to its equivalent MAC address.Once you've figured out how to convert from Layer 2MAC to Layer 3IP,doing the reverse is easy.To start,we can pick any address from the 32 IP addresses we converted above.Let's pick arandom one like 227.138.0.1 First convert the address 227.138.0.1 to binary:11100011:10001010 00000000 00000001 We're only concerned with the red colored portion which represents the low-order 23bits of the IP address.Notice that we are dropping the high order bit of the second octet.Convert those 23 bits to hexadecimal:0A:00:01We already know that the first 3-bytes(24 bits)of the MAC address is 01:00:5E.This was established earlier in thearticle.Simply append the result on step 2to the first 3-bytes andyou have your MAC address:01:00:5E:0A:00:01*You can pick any of the 32 Ip addresses we have on the list above and you will always get 01:00:5E:0A:00:01as your MAC address following the steps just mentioned.To summarize:1st octet– Notice that the first octet is left alone.2nd octet–You only need to convert the last 7bits to hex.The second octet in decimal is 138.But if you drop the highest order bit,it becomes adecimal 10 or hex 0A.3rd octet– Convert it directly to hex.4thoctet– Convert it directly to hex.。
组播MAC地址和各类IP地址MAC地址是以太⽹⼆层使⽤的⼀个48bit(6字节⼗六进制数)的地址,⽤来标识设备位置。
MAC地址分成两部分,前24位是组织唯⼀标识符(OUI, Organizationally unique identifier),后24位由⼚商⾃⾏分配。
MAC地址有单播、组播、⼴播之分。
单播地址(unicast address)表⽰单⼀设备、节点,多播地址或者组播地址(multicast address、group address)表⽰⼀组设备、节点,⼴播地址(broadcast address)是组播的特例,表⽰所有地址,⽤全F表⽰:FF-FF-FF-FF-FF-FF。
当然,三层的IP地址也有单播、组播、⼴播之分。
48bit的MAC地址⼀般⽤6字节的⼗六进制来表⽰,如XX-XX-XX-XX-XX。
IEEE 802.3规定:以太⽹的第48bit(2012-04-11修改为The first bit) ⽤于表⽰这个地址是组播地址还是单播地址。
如果这⼀位是0,表⽰此MAC地址是单播地址,如果这位是1,表⽰此MAC地址是多播地址。
见IEEE 802.3 3.2.3 Address fields:“The first bit (LSB) shall be used in the Destination Address field as an address type designation bit to identify the Destination Address either as an individual or as a group address. If this bit is 0, it shall indicate that the address field contains an individual address. If this bit is 1, it shall indicate that the address field contains a group address that identifies none, one or more, or all of the stations connected to the LAN. In the Source Address field, the first bit is reserved and set to 0.”以太⽹线路上按“Big Endian”字节序传送报⽂(也就是最⾼字节先传送,关于字节序请参考相关⽂档),⽽⽐特序是”Little Endian”(也就是最低位先传送)。
组播组播(multicast)IP网络数据传输方式组播技术是IP网络数据传输三种方式之一,在介绍IP组播技术之前,先对IP网络数据传输的单播、组播和广播方式做一个简单的介绍:单播(Unicast)传输:在发送者和每一接收者之间实现点对点网络连接。
如果一台发送者同时给多个的接收者传输相同的数据,也必须相应的复制多份的相同数据包。
如果有大量主机希望获得数据包的同一份拷贝时,将导致发送者负担沉重、延迟长、网络拥塞;为保证一定的服务质量需增加硬件和带宽。
组播(Multicast)传输:在发送者和每一接收者之间实现点对多点网络连接。
如果一台发送者同时给多个的接收者传输相同的数据,也只需复制一份的相同数据包。
它提高了数据传送效率。
减少了骨干网络出现拥塞的可能性。
广播(Broadcast)传输:是指在IP子网内广播数据包,所有在子网内部的主机都将收到这些数据包。
广播意味着网络向子网每一个主机都投递一份数据包,不论这些主机是否乐于接收该数据包。
所以广播的使用范围非常小,只在本地子网内有效,通过路由器和交换机网络设备控制广播传输。
组播的好处●提高效率:降低网络流量,减轻服务器和CPU负荷;●优化性能:减少冗余流量;●分布式应用:使多点应用成为可能。
组播的劣势组播是基于UDP的,因此,它的劣势主要在于:●尽力投递:报文丢失是不可避免的,因此组播应用程序不能依赖组播网络来保证可靠性,必须针对组播网络的这个特点进行特别设计。
“可靠的组播”目前仍然处于研究阶段。
●没有拥塞避免机制:缺少TCP窗口机制和慢启动机制,组播可能会出现拥塞。
●有的组播路由协议可能会造成偶尔的报文重复和失序情况。
组播与单播的比较1.单播关心数据包去哪里。
2.组播关心数据包来源于哪里。
路由器只隔离了4个255的广播(全向广播),当没有隔离定向广播(主播)关闭组播的命令:no ip directed-broadcast(建议关闭,避免跨路由攻击)IP组播地址224.0.0.0 基准地址(保留)224.0.0.1 所有主机的地址224.0.0.2 所有组播路由器的地址224.0.0.3 不分配224.0.0.4 dvmrp路由器224.0.0.5 ospf路由器224.0.0.6 ospfdr 224.0.0.7 st路由器224.0.0.8 st主机224.0.0.9 rip-2 路由器224.0.0.10 Eigrp路由器224.0.0.11 活动代理224.0.0.12 dhcp服务器/中继代理224.0.0.13 所有pim路由器224.0.0.14 rsvp 封装224.0.0.15 所有cbt路由器224.0.0.16 指定sbm224.0.0.17 所有sbms 224.0.0.18 vrrp以太网组播MAC地址在以太网应用单播时,采用ARP协议机制来获取与单播IP地址对应的单播MAC地址。
ip地址和mac地址ip地址就是你的机器在网络上面的门牌号码,子网掩码的作用就是告诉网络你的机器是处在哪一个小的子网络中。
网关是你的机器通过什么服务器来访问的网络。
mac地址是网卡在出厂的时候,制造商给网卡赋予的唯一的一个地址标识ip地址就是你的机器在网络上面的门牌号码,子网掩码的作用就是告诉网络你的机器是处在哪一个小的子网络中。
网关是你的机器通过什么服务器来访问的网络。
mac地址是网卡在出厂的时候,制造商给网卡赋予的唯一的一个地址标识MAC地址MAC地址1212一,MAC(Media Access Control, 介质访问控制)MAC地址是烧录在Network Interface Card(网卡,NIC)里的.MAC地址,也叫硬件地址,是由48比特长(6字节),16进制的数字组成.0-23位是由厂家自己分配.24-47位,叫做组织唯一标志符(oganizationally unique ,是识别LAN(局域网)节点的标识。
其中第40位是组播地址标志位。
网卡的物理地址通常是由网卡生产厂家烧入网卡的EPROM(一种闪存芯片,通常可以通过程序擦写),它存储的是传输数据时真正赖以标识发出数据的电脑和接收数据的主机的地址。
也就是说,在网络底层的物理传输过程中,是通过物理地址来识别主机的,它一般也是全球唯一的。
比如,著名的以太网卡,其物理地址是48bit(比特位)的整数,如:44-45-53-54-00-00,以机器可读的方式存入主机接口中。
以太网地址管理机构(IEEE)将以太网地址,也就是48比特的不同组合,分为若干独立的连续地址组,生产以太网网卡的厂家就购买其中一组,具体生产时,逐个将唯一地址赋予以太网卡。
形象的说,MAC地址就如同我们身份证上的身份证号码,具有全球唯一性。
如何获取本机的MAC?对于数量不多的几台机器,我们可以这样获取MAC地址:在Windows 98/Me中,依次单击“开始”→“运行” →输入“winipcfg”→回车。
摘要IP 组播技术实现了 IP 网络中点到多点的高效数据传送。
因为组播能够有效地节约网络带宽、降低网络负载,所以在实时数据传送、多媒体会议、数据拷贝、游戏和仿真等诸多方面都有广泛的应用。
本文介绍了组播的基本概念和目前通用的组播协议,以及组播组网的基本方案;并针对组播业务需求和运营过程中面临的问题,提出了电信级的可运营、可管理的“受控组播”解决方案,包括信源管理、用户管理和组播安全控制等方面的内容。
关键词组播运营管理受控组播 IGMP DVMRP PIM-SM PIM-DM MBGP MSDP1组播概述1.1组播技术的产生原因传统的IP 通信有两种方式:第一种是在一台源 IP 主机和一台目的 IP 主机之间进行,即单播(unicast);第二种是在一台源 IP 主机和网络中所有其它的 IP 主机之间进行,即广播(broadcast)。
如果要将信息发送给网络中的多个主机而非所有主机,则要么采用广播方式,要么由源主机分别向网络中的多台目标主机以单播方式发送 IP 包。
采用广播方式实现时,不仅会将信息发送给不需要的主机而浪费带宽,也可能由于路由回环引起严重的广播风暴;采用单播方式实现时,由于 IP 包的重复发送会白白浪费掉大量带宽,也增加了服务器的负载。
所以,传统的单播和广播通信方式不能有效地解决单点发送多点接收的问题。
IP 组播是指在 IP 网络中将数据包以尽力传送(best-effort)的形式发送到网络中的某个确定节点子集,这个子集称为组播组(multicast group)。
IP 组播的基本思想是,源主机只发送一份数据,这份数据中的目的地址为组播组地址;组播组中的所有接收者都可接收到同样的数据拷贝,并且只有组播组内的主机(目标主机)可以接收该数据,网络中其它主机不能收到。
组播组用 D 类 IP 地址(224.0.0.0 ~ 239.255.255.255)来标识。
1.2组播技术的市场前景IP 组播技术有效地解决了单点发送多点接收的问题,实现了 IP 网络中点到多点的高效数据传送,能够大量节约网络带宽、降低网络负载。
组播IP与组播Mac的对应关系
1.IPv4组播MAC地址
IANA规定,IPv4组播MAC地址的高24位为0x01005E,第25位为0,低23位为IPv4组播地址的低23位。
IPv4组播地址与MAC 地址的映射关系如下图所示。
由于IPv4组播地址的高4位是1110,代表组播标识,而低28位中只有23位被映射到IPv4组播MAC地址,这样IPv4组播地址中就有5位信息丢失。
于是,就有32个IPv4组播地址映射到了同一个IPv4组播MAC地址上,因此在二层处理过程中,设备可能要接收一些本IPv4组播组以外的组播数据,而这些多余的组播数据就需要设备的上层进行过滤了。
VRRP4的组播IP:224.0.0.18 组播Mac:0100-5e00-0012
2、IPV6对应的MAC地址
映射规则:组播MAC地址的前16位固定为0x3333,将组播IPV6地址的后32位直接映射到组播MAC地址的后32位就可以了。
如:IPV6地址为--FF12::1234:5678/64
对应的组播MAC地址为--3333:1234:5678
VRRP6的组播IP:FF02::12组播Mac:3333-0000-0012。
组播⼀、组播概述:(基于UDP)在IP⽹络中,节点之间的通信通常采⽤点到点的⽅式。
点到多点的传输:使⽤⼴播:占⽤不必要的带宽,不需要的⼈,也会接收到。
数据源发送⼀份数据包链路上传输⼀份数据包所有主机都会接收数据包使⽤单播:需要向每⼀个接收者单独发送⼀份数据,当接收者数量增加时,发送源复制的⼯作负荷会⽐例增加,当接收者数据巨⼤时,⼀些接收者接收数据的延时⼤⼤增加,对延时敏感的应⽤如多媒体会议、视频监控。
数据源发送多份数据包链路上传输多份数据包只有数据接收者才会收到数据包使⽤组播:数据源发送⼀份数据包链路上传输⼀份数据包只有数据接收者才会收到数据包组播优缺点:只要是组播都是⽤UDP优点:增强效率,控制⽹路流量,减少服务器和CPU的负载优化性能,消除流量冗余分布式应⽤,使多点传输成为可能缺点:尽最⼤努⼒交付(UDP),不会重传⽆拥塞控制(qos),⽆法保证优先传输数据包重复数据包的⽆需交付组播典型应⽤:多媒体会议、IP视频监控,QQ共享⽩板等多对⼀。
组⽹技术需求:组播地址:224.0.0.0-- 239.255.255.255(没有什么⼴播地址和⽹络地址)本地协议预留组播地址:224.0.0.0--224.0.1.255(保留给某些协议具体使⽤)仅供本地⽹段上的⽹络协议使⽤。
本地管理组地址:(私⽹)239.0.0.0--239.255.255.255⽤户组播地址:(公⽹)224.0.2.0--238.255.255.255组播MAC地址:以太⽹:01-00-5e-xx-xx-xx组播IP地址到组播MAC地址的映射:组播中:32个IP地址对应⼀个MAC组播MAC地址,第⼀个字节的最后⼀位为1。
单播MAC地址,第⼀个字节的最后⼀位为0。
⼆、组播组管理协议:(1)IGMP简介:是运⾏在主机和路由设备之间的协议→ 主机通过组播组管理协议加⼊或离开某些组播组→ 路由设备通过组播组管理协议管理和维护本地的组播组信息常⽤的组播组管理协议为IGMP(管理和维护本地组的信息)加⼊、查询、离开离开时,得表⽰⾃⼰是不是最后⼀个⼈,如果是最后⼀个⼈,路由设备得删除组播组信息(2)、组播分发树模型(路由器和路由器之间)是组播数据的转发路径根据树根位置的不同,组播分发树模型分为:→ 最短路径树模型:源到每⼀个接收者的最短路径(⽐较耗资源)→ 共享树模型:源到每⼀个接收者的路径不⼀定是最短的(3).组播转发机制:组播转发机制和单播转发机制不同:→ 单播转发关⼼报⽂到哪⾥去(只关⼼报⽂的⽬的地址)→ 组播转发关⼼报⽂从哪⾥来组播转发机制-----当收到两个数据包,会通过单播路由表查询到组播源最短的路径,从⽽确认收哪个数据包,不收哪个数据包,所有没有单播路由表,就不可能有组播转发表。
MAC组播地址和各类IP地址不理解的:CCNA上说组织唯一标识符(OUI)是由IEEE分配给单位组织的,它包含24位(3个字节)。
各个单位组织依此被分配一个全局管理地址(24位或3个字节),这个地址是唯一的。
47位高位是Individual/Group(I/G)位,当它的值为0时,可以认为这个地址实际上是设备的MAC地址,可能出现在MAC报头的源地址部分。
当它的值为1时,就可以认为这个地址表示Ethernet中的广播地址或组播地址,或者表示TR和FDDI中的广播地址或功能。
理解的:MAC地址的第8位为0时,为单播地址,为1时,为组播地址。
一块网卡的地址一定是单播地址哪位网络达人可以帮我解释一下上面的,何为47位高位?附:组播ip与组播mac的映射IP组播和单播的目的地址不同,IP组播的目的地址是组地址——D类地址.组播IP 地址是本地管理组播地址:239.0.0.0 ~239.255.255.255D类地址是从224.0.0.0到239.255.255.255之间的IP地址其中224.0.0.0到224.0.0.255是被保留的地址224.0.0.1表示子网中所有的组播组224.0.0.2表示子网中的所有路由器224.0.0.5表示OSPF(Open Shortest Path First)路由器224.0.0.6表示OSPF指定路由器224.0.0.12表示DHCP(Dynamic Host Configuration Protocol)服务器.D类地址是动态分配和恢复的瞬态地址.每一个组播组对应于动态分配的一个D 类地址;当组播组结束组播时,相对应的D类地址将被回收,用于以后的组播.在D类地址的分配中,IETF建议遵循以下的原则:全球范围:224.0.1.0~238.255.255.255;有限范围:239.0.0.0~239.255.255.255;本地站点范围:239.253.0.0~239.253.0.16;本地机构范围:239.192.0.0~239.192.0.14.2层的MAC地址是如何与3层的IP地址进行映射的呢?通过将MAC地址的前25位强行规定位0100.5e,而后23位对应IP地址的后23位,而组播IP地址的前4位均相同如:IP地址:1110yyyy.yxxxxxxx.xxxxxxx.xxxxxxxxMAC地址:00000001.00000000.01011110.0xxxxxxx.xxxxxxx.xxxxxxxx例如:组播IP地址224.215.145.230应该映射到下列哪个组播MAC地址?( )(A)01-00-5e-57-91-e6(B)01-00-5e-d7-91-e6(C)01-00-5e-5b-91-e6(D)01-00-5e-55-91-e6用二进制来换算,将215.145.230换算成1101,0111,1001,0001,1110,0110,取最后23位放到MAC地址中的23位可以计算得出答案是A。
组播IP地址和MAC地址映射
2007/05/02 06:07 P.M.
IP组播地址用于标识一个IP组播组。
IANA把D类地址空间分配给IP组播,范围从224.0.0.0到239.255.255.255,IP组播地址前四位均为1110。
从224.0.0.0至224.0.0.255被IANA保留为网络协议使用。
例如:244.0.0.1 全主机组244.0.0.2 全多播路由器组244.0.0.3 全DVMRP路由器组244.0.0.5 全OSPF路由器组。
在这一范围的多播包不会被转发出本地网络,也不会考虑多播包的TTL值。
地址从239.0.0.0至239.255.255.255作为管理范围地址,保留为私有内部域使用。
如下图所示,以太网和FDDI的MAC地址01:00:5E:00:00:00到
01:00:5E:7F:FF:FF用于将三层IP组播地址映射为二层地址,即IP组播地址中的低23位放入IEEE MAC地址的低23位。
IP组播地址有28位地址空间,但只有23位被映射到IEEE MAC地址,这样会有32个IP组播地址映射到同一MAC
地址上。
此处第4bytes的第一位默认值为0,不做映射,如239.192.0.1,组播MAC地址为01:00:5E:40:00:01,192的二进制为:1100 0000,第一个1,不作映射,为0,所以改为:0100 0000,对应的mac地址为40,所以239.192.0.1,组播MAC地址为01:00:5E:40:00:01。
总之,最高位置0。