multicast,秒懂单播、广播或多播及其应用场景

  理解消息的传播类型,对合理应用各类型有比较重要的作用。

  IP可根据传输的消息特征将IP地址分为单播、广播或多播。主机使用IP地址进行一对一(单播)、一对多(多播)或一对所有(广播)的通信。

1.单播

  单播地址是IP网络中最常见的。包含单播目标地址的分组发送给特定主机,一个这样的例子是,IP地址为192.168.1.5(源地址)的主机向IP地址为192.168.1.200(目标地址)的服务器请求网页,如图5.8所示。

 



  要发送和接收单播分组,IP分组报头中必须有一个目标IP地址,而以太网帧报头中必须有相应的目标MAC地址。IP地址和MAC地址一起将数据传输到特定的目标主机。

  如果目标IP地址属于另一个网络,则在帧中使用的目标MAC地址将为与源IP地址位于同一个网络中的路由器接口的MAC地址。

  假设用户B、D 和E 需要该信息,则信息源Server 必须分别和用户B、D、E 的设备建立传输通道。由于网络中传输的信息量和要求接收该信息的用户量成正比,因此当用户数量很庞大时,服务器就必须要将多份内容相同的信息发送给用户。因此,带宽将成为信息传输中的瓶颈。

  从单播信息的传播过程可以看出,单播的信息传输方式不利于信息规模化发送。

2.广播

  广播分组的目标IP地址的主机部分全为1,这意味着本地网络(广播域)中的所有主机都将接收并查看该分组。诸如ARP和DHCP等很多网络协议都使用广播。

  例如:

    C类网络192.168.1.0的默认子网掩码为255.255.255.0,其广播地址为192.168.1.255,其主机部分为十进制数255或二进制数11111111(全为1);

    B类网络172.16.0.0的默认子网掩码为255.255.0.0,其广播地址为172.16.255.255;

    A类网络10.0.0.0的默认子网掩码为255.0.0.0,其广播地址为10.255.255.255。

  在以太网帧中,必须包含与广播IP地址对应的广播MAC地址。在以太网中,广播MAC地址长48位,其十六进制表示为FF-FF-FF-FF-FF-FF。图5.9所示的是一个广播IP分组。

  假设用户B、D 和E需求该信息,则信息源Server 通过路由器广播该信息,网络其他用户A 和C 也同样接收到该信息,信息安全性和有偿服务得不到保障。

  从广播信息的传播过程可以看出,广播的保密性和有偿性比较差。并且当同一网络中需求该信息的用户量很小时,网络资源利用率将非常低,带宽浪费严重。

  因此,广播不利于对特定用户进行数据交互,并且还严重的占用带宽。

 

3.多播

  多播地址让源设备能够将分组发送给一组设备。属于多播组的设备将被分配一个多播组IP地址,多播地址范围为224.0.0.0~239.255.255.255。由于多播地址表示一组设备(有时被称为主机组),因此只能用作分组的目标地址。源地址总是为单播地址。

  同单播地址和广播地址一样,多播IP地址也需要相应的多播MAC地址在本地网络中实际传送帧。多播MAC地址以十六进制值01-00-5E打头,余 下的6个十六进制位是根据IP多播组地址的最后23位转换得到的。一个MAC多播地址是01-00-5E-0F-64-C5,如图5.10所示。每个十六 进制位相对于4个二进制位。

  综上所述,单播方式适合用户较少的网络,而广播方式适合用户稠密的网络,当网络中需求某信息的用户量不确定时,单播和广播方式效率很低。

  IP组播技术的出现及时解决了这个问题。当网络中的某些用户需要特定信息时,组播信息发送者(即组播源)仅发送一次信息,借助组播路由协议为组播数据包建立组播分发树,被传递的信息在距离用户端尽可能近的节点才开始复制和分发。

  假设用户B、D 和E 需求该信息,为了将信息顺利地传输给真正需要该信息的用户,需要将用户B、D、E 组成一个接收者集合,由网络中各路由器根据该集合中各接收者的分布情况进行信息转发和复制,最后准确地传输给实际需要的接收者B、D 和E。

  相比单播来说,组播的优点在于:1. 不论接收者有多少,相同的组播数据流在每一条链路上最多仅有一份。 2. 使用组播方式传递信息,用户数量的增加不会显著增加网络的负载。

  相比广播来说,组播的优点在于:1. 组播数据流仅会发送到要求数据的接收者。 2. 不会造成网络资源的浪费,合理的利用带宽。

  组播的优势在于: 提高效率:降低网络流量,减轻服务器和CPU 负荷。 优化性能:减少冗余流量。 分布式应用:使多点应用成为可能。

  组播技术有效地解决了单点发送多点接收的问题,实现了IP 网络中点到多点的高效数据传送,能够节约大量网络带宽、降低网络负载。

  组播功能主要有以下的应用:

    多媒体、流媒体的应用,如:网络电视、网络电台、实时视/音频会议。

    培训、联合作业场合的通信,如:远程教育。

    数据仓库、金融应用(股票)等。

    任何“点到多点”的数据发布应用。

组播(IGMP协议)

  224.0.0.0~224.0.0.255为预留的组播地址(永久组地址),地址224.0.0.0保留不做分配,其它地址供路由协议使用;
  224.0.1.0~224.0.1.255是公用组播地址,可以用于Internet;
  224.0.2.0~238.255.255.255为用户可用的组播地址(临时组地址),全网范围内有效;
  239.0.0.0~239.255.255.255为本地管理组播地址,仅在特定的本地范围内有效。
  要注意的是,一些标准软件已经使用了固定的组播IP地址,如Upnp使用了239.255.255.250,OSPF使用了224.0.0.5等。
  一般而言你使用临时组播地址就可以了。
  组播MAC地址是针对组播IP地址经过转换而来的,算是一种虚拟的MAC地址;之所以出现这个,是因为TCP/IP层之下的链路层是基于MAC地址来传输数据的。组播因为既不是点对点的传输,又不是广播,所以需要一个特殊的MAC地址


  224.0.0.0---224.2.255.255的绝大部分地址已被使用,建议使用时避开上述地址(详细使用情况请参阅RFC 1700)。
  224.0.0.0 基础地址,保留,不能被任何群组使用
  224.0.0.1 全主机群组(all hosts group),指参加本IP组播的所有主机、路由器、网关(不是指整个互连网)
  224.0.0.2 本子网上的路由器(all routers on a LAN) 224.0.0.4 DVMRP*路由器(DVMRP Routers)
  224.0.0.5 本子网上的OSPF*路由器(all OSPF routers on a LAN) 224.0.0.6 本子网上被指定的OSPF路由器(all designated OSPF routers on a LAN)
  224.0.1.1 网络时间协议(Network Time Protocol,NTP) 224.0.5.000-224.0.5.127 蜂窝式数字信息包数据发送主机组(CDPD Groups)
  224.1.0.0-224.1.255.255 基于流的协议组播主机组(Stream Protocol Multicast Groups)
  224.2.0.0-224.2.255.255 多媒体会议呼叫(Multimedia Conference Calls) *注:DVMRP是Distance vector multicast routing protocol的缩写

posted @ 2018-08-22 11:52  阿牛20  阅读(7780)  评论(0编辑  收藏  举报