Internet组播
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Internet组播
随着internet的飞速发展,利用internet进行协作开发的项目越来越多。对某些应用而言,如分布式数据库开发,一个开发工作组有很多人需在不同的地点协作并经常交换情况。在组的规模比较小的情况下,只需点对点交换信息即可;如果组的规模比较大,点对点交换信息不管对网络还是对信息发送者,都是一种负担,代价昂贵。有时虽可用广播的方式进行处理,但如果在一个上百万节点的网络上向数千台主机进行广播是很低效的甚至是不大可能的。一则绝大部分机器对此不感兴趣,造成信息垃圾;更糟糕的是,部分主机虽需要此信息但可能被误认为对此信息不感兴趣而收不到此项信息。因此,我们需要一种办法让本身规模较大而相对互连网又较小的工作组能相互方便、快捷地传递信息。为此,我们引进了IP组播的概念。
1.硬件组播的含义
1.1 含义
硬件组播(multicasting)是一种多点投递的形式,它使用硬件技术,通过使用大量组播地址来通信。当某一组机器需要通信时,选择一个组播地址,并配置好相应的网络接口硬件,识别组播地址,从而收到该组播地址上分组的拷贝。
1.2 组播与广播、单播
广播(broadcasting)是多点投递的最普遍的形式,它向每一个目的站投递一个分组的拷贝。它可以通过多个单次分组的投递完成,也可以通过单独的连接传递分组的拷贝,直到每个接收方均收到一个拷贝为止。
在多数网络中,用户是通过把分组分送给一个特殊保留的地址即广播地址(broadcast address)来进行广播投递,它的主要缺点是会耗费大量的主机资源和网络资源。
单播(unicasting)是指只有一个目的地的数据报传递。从投递目的地的数量而言,单播和广播均可看作是组播的一个子集。单播可以看作仅包括一台机器群组的组播;广播可以看作包含了所有机器群组的组播。但从数据报的投递方式而言,单播、广播和组播还是有较大的区别。
2.IP组播的基本概念
2.1 含义
IP组播(IP multicasting)是对硬件组播的抽象,是对标准IP网络层协议的扩展。它通过使用特定的IP组播地址,按照最大投递的原则,将IP数据报传输到一个组播群组(multicast group)的主机集合。它的基本方法是:当某一个人向一组人发送数据时,它不必将数据向每一个人都发送数据,只需将数据发送到一个特定的预约的组地址,所有加入该组的人均可以收到这份数据。这样对发送者而言,数据只需发送一次就可以发送到所有接收者,大大减轻了网络的负载和发送者的负担。
2.2 IP组播成员
IP组播中各个成员可以不受地域的限制,分布于各个独立的物理网络上,其关系也是动态的,一台主机可以在任何时候加入或者退出某个群组,也可以是任意群组的成员,其成员关系决定了该主机是否接收发送给该群组的组播数据报;同
时,不是某个群组的成员也可以向某个群组发送组播数据报,使之具有更大的灵活性。
参与组播的主机可以分为三个级别:
级别0:主机不能收、不能发IP组播数据报
级别1:主机只能发、不能收IP组播数据报
级别2:主机既能收、也能发IP组播数据报
级别0的主机不受组播收发数据报的影响,唯一的例外是在某些类型的局域网,级别1或级别2的主机可能将组播数据报误送给级别0 的主机(这种情况将在3.2.1中讨论),级别0 的主机需要仔细检查所有到达的数据报的目的IP地址(主机对任何数据报均需这样),丢弃误投的数据报。
级别1的主机可以分享部分基于组播的服务,比如资源定位、状态报告、发送IP组播数据报,但不能加入到任何主机组。一个主机仅需极少数代码就可以从级别0升级到级别1,即IP软件允许某个应用程序指定一个组播地址作为其目的IP地址,并将组播地址映射为相应网络的硬件组播地址(具体映射方法在3.2中讨论)
级别2的主机可以可以使用IP组播所有功能,除可以使用级别1主机所能使用的功能外,可以自由加入和离开主机组、可以发送IP组播数据报等。要实现此功能,它要求实现internet群组管理协议(internet group management protocol,简称IGMP)、IP扩展和主机的本地网络服务接口。
3. IP组播地址
3.1 基本概念
3.1.1 定义
根据internet NIC关于IP地址的规定,IP地址共分为A-E 共5类,其中A-C 类目前应用的普通IP地址,E类地址保留为将来使用,D类地址即为组播地址,其网络号为固定的1110(第0~3位),第4~31位定义了某一特殊的组播地址,范围为224.0.0.0~239.255.255.255,共有228个约27亿个地址。
IP组播地址仅能作为目的地址。它们不能作为数据报的源字段或者出现在源路由和路由记录选项中。
3.1.2 分类
IP组播地址由internet NIC负责管理,和协议端口一样,有一部分是保留的,仅供特殊群组成员使用,不管有无成员,该地址均要保留,这部分地址称为知名(well-known)地址;其余地址则不一样,仅供临时使用,被称为临时组播群组(transient multicast group),可以按需创建,成员可以动态调整,但在成员数目为0时撤销。
3.1.3 部分知名IP组播地址
如上所述,IP组播地址范围是224.0.0.0~239.255.255.255,下面列出部分知名或已用的IP组播地址。实际上,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)