博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
什么叫组播地址(Multicast Address )?
阅读量:4035 次
发布时间:2019-05-24

本文共 1762 字,大约阅读时间需要 5 分钟。

组播的地址是保留的D类地址从224.0.0.0—239.255.255.255,而且一些地址有特定的用处如,224.0.0.0— 244.0.0.255只能用于局域网中路由器是不会转发的,并且224.0.0.1是所有主机的地址,224.0.0.2所有路由器的地址, 224.0.0.5所有ospf路由器的地址,224.0.13事PIMv2路由器的地址;239.0.0.0—239.255.255.255是私有地 址(如192.168.x..x);224.0.1.0—238.255.255.255可以用与Internet上的。

2层的MAC地址是如何与3层的IP地址进行映射的呢?通过将MAC地址的前25位强行规定位0100.5e,而后23位对应IP地址的后23位,而组播IP地址的前4位均相同如:
IP地址: 1110yyyy.yxxxxxxx.xxxxxxx.xxxxxxxx
MAC地址: 00000001.00000000.01011110.0xxxxxxx.xxxxxxx.xxxxxxxx
显然有32个IP地址(有5个y可以不一样)对应一个MAC地址,所以要避免在同一网络中使用的多个组播IP地址对应一个MAC地址。

组播报文的目的地址使用d类ip地址, 范围是从224.0.0.0到239.255.255.255。d类地址不能出现在ip报文的源ip地址字段。单播数据传输过程中,一个数据包传输的路径 是从源地址路由到目的地址,利用“逐跳”(hop-by-hop)的原理在ip网络中传输。然而在ip组播环中,数据包的目的地址不是一个,而是一组,形 成组地址。所有的信息接收者都加入到一个组内,并且一旦加入之后,流向组地址的数据立即开始向接收者传输,组中的所有成员都能接收到数据包。组播组中的成 员是动态的,主机可以在任何时刻加入和离开组播组。

   组播组可以是永久的也可以是临时的。组播组地址中,有一部分由官方分配的,称为永久组播组。永久组播组保持不变的是它的ip地址,组中的成员构成可以发 生变化。永久组播组中成员的数量都可以是任意的,甚至可以为零。那些没有保留下来供永久组播组使用的ip组播地址,可以被临时组播组利用。
   224.0.0.0~224.0.0.255为预留的组播地址(永久组地址),地址224.0.0.0保留不做分配,其它地址供路由协议使用; 224.0.1.0~238.255.255.255为用户可用的组播地址(临时组地址),全网范围内有效; 239.0.0.0~239.255.255.255为本地管理组播地址,仅在特定的本地范围内有效。常用的预留组播地址列表如下:
  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 ospf dr
  224.0.0.7 st 路由器
  224.0.0.8 st 主机
  224.0.0.9 rip-2 路由器
  224.0.0.10 igrp 路由器
  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 指定sbm
  224.0.0.17 所有sbms
  224.0.0.18 vrrp
   以太网传输单播ip报文的时候,目的mac地址使用的是接收者的mac地址。但是在传输组播报文时,传输目的不再是一个具体的接收者,而是一个成员不确 定的组,所以使用的是组播mac地址。组播mac地址是和组播ip地址对应的。iana(internet assigned number authority)规定,组播mac地址的高24bit为0x01005e,mac 地址的低23bit为组播ip地址的低23bit。
  由于ip组播地址的后28位中只有23位被映射到mac地址,这样就会有32个ip组播地址映射到同一mac地址上

转载地址:http://uocdi.baihongyu.com/

你可能感兴趣的文章
排序算法的C语言实现C代码
查看>>
c语言快排函数调用方法模板
查看>>
c语言实现多行输入输出数据
查看>>
查找算法
查看>>
C语言单链表实现
查看>>
SQL基本命令集合整理
查看>>
QT中json的生成和解析
查看>>
std::function 和 std::bind 的简单例子
查看>>
CFormView简介
查看>>
Visual Studio 2010 与 VC++ 6.0 的操作差异(一)之对话框中添加OnInitDialog()函数
查看>>
VC的MFC里面控件的ID使用ID_XXXXX和IDR_XXXXX的区别
查看>>
VC++ 获取ListControl选中行
查看>>
用VC++实现应用程序窗口的任意分割(2)
查看>>
“class”类型重定义,include(头文件)重复加载 QT /c++
查看>>
MFC框架类、文档类、视图类相互访问的方法
查看>>
<转>文档视图指针互获
查看>>
C++中头文件相互包含的几点问题
查看>>
内存设备描述表
查看>>
Latex插入eps图片的方法
查看>>
Matlab subplot 图像间距调整
查看>>