ip组播设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学年论文﹙设计﹚

题目 IP组播技术设计与实现

学生姓名学号

所在院(系)电子与信息工程

专业班级

指导教师

2010年 6 月 25 日

IP组播技术研究与实现

【摘要】介绍了ip组播技术的传输方式、地址、体系结构、应用模式、以及利用window 的WinSock的API应用编程的基本命令和方法步骤

【关键词】ip组播;ip地址;机构体系;组播协议;WinSock;API编程

The ip multicast engineering research with realizes

Abstract:Introduced the ip multicast technology's transmission mode, the address, the architecture, the application pattern, as well as use window WinSock the API application programming basic command and the method step

Key words:ip multicast; ,ip address, Organization system, Multicast agreement, WinSock, API programming

0 引言

随着网络技术的不断完善和发展, 以全球互联网(internet)为代表的各种网络在近十年得到了迅猛的发展。网络带宽越来越高, 用户数量越来越多, 视频点播(VOD/AOD)、远程教学、新闻发布、网络电视,多站点文件传输、多媒体远程教育、计算机支持的协同工作等新类型的多媒体业务将成为新一轮运营竞争的焦点,在这种情况下, 采用传统的客户服务器模型将重浪费网络资源, 相同的数据可能在网上传播很多次, 在一些带宽较低的链路上, 极可能引起严重的通信瓶径,就必然带来了网络拥挤问题。为了缓解网络瓶颈, 人们提出各种方案, 主要包括采用:链路聚合技术, 以增加互连带宽采用服务器的集群技术,以改变网络流量结构、减轻主干网的瓶颈应用Qos机制, 把带宽分配给一部分应用采用IP组播技术,有效解决网络的拥塞等,IP组播技术以其独特的优越性使它成为当前网络多媒体信息技术的佼佼者。

1 IP组播技术

1.1组播简介

谈IP组播技术之前我们先说说IPv4定义包的的几中传输方式:

1.1.1单播(Unicast) 传输在信息的发送者与接收者之间建立点对点的网络连接。如果一个发送者需要同时给多个接收者发送相同的数据, 就必须相应地复制多份相同的数据包。如果有大量的主机希望获得同一份数据包时,这将使发送者负担沉重、网络延时增加。为保证服务质量就需要增加硬件和带宽。

1.1.2广播(Broadcast) 传输是指在IP子网内广播数据包,所有在子网内部的主机都将收到这些数据包。广播意味着网络向子网每一个主机都投递一份数据包,不论这些主机是否乐于接收该数据包。所以广播的使用范围非常小,只在本地子网内有效,通过路由器和交换机网络设备控制广播传输。

1.1.3组播(Multicast) 传输他是在发送者和每一个接收者之间实现点到多点的网络连接。如果一个发送者需要同时给多个接收者传输相同的数据, 只需构造一份相同的数据包, 在其中的信宿地址域中添入IP 组播地址, 一次发送出去, 而不必端对端地多次重复发送。他提高了数据传输的效率, 减少了网络拥塞。

1.2 组播技术体结构

组播协议分为主机-路由器之间的组成员关系协议和路由器-路由器之间的组播路由协议。组成员关系协议包括IGMP(互连网组管理协议)。组播路由协议分为域内组播路由协议及域间组播路由协议。域内组播路由协议包括PIM-SM(Protocol Independent Multicast-Sparse Mode)、PIM-DM(Protocol Independent Multicast-Dense Mode)、DVMRP(Distance Vector Multicast Routing Protocol)等协议,域间组播路由协议包括MBGP(MultIProtocol BGP)、MSDP(Multicast Source Discovery Protocol)等协议。同时为了有效抑制组播数据在链路层的扩散,引入了IGMP Snooping、CGMP等二层组播协议。

IGMP建立并且维护路由器直联网段的组成员关系信息。域内组播路由协议根据IGMP 维护的这些组播组成员关系信息,运用一定的组播路由算法构造组播分发树进行组播数据包转发。域间组播路由协议在各自治域间发布具有组播能力的路由信息以及组播源信息,以使组播数据在域间进行转发。

1.3组播IP地址

组播IP地址用于标识一个IP组播组。IANA(internet assigned number authority)把D 类地址空间分配给IP组播,其范围是从224.0.0.0到239.255.255.255。),IP组播地址前四位均为1110. 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为本地管理组播地址,仅在

特定的本地范围内有效。

2 实现IP组播的前提条件和技术体系结构

实现IP组播传输,则组播源、接受者及两者之间的下层网络都必须支持组播。这包括以下几方面:(1)主机的TCP/IP的实现支持接受和发送IP组播;(2)主机的网络接口卡支持组播;(3)有一套用于加入、离开、查询的组播管理协议,即IGMP(V1,V2);(4)有一套IP 地址分配策略。并能将第3层IP地址映射到第2层MAC地址上;(5)支持IP组播的应用软件;(6)所有介于组播源和接受者之间的路由器,集线器、交换机、TCP/IP栈、防火墙均需支持组播。

PIM daemom通过系统调用从底层的socket接受消息,PIM消息,IGMP消息和内部控制消息,

具体的功能流程图如图1所示:

图1 组播路由协议流程图

其中PIM从PIM的socket接受的消息通过PIM接受函数处理,从IGMP的socket 接受的IGMP消息和内部控制消息通过IGMP接受函数处理各种消息的分内和含义。

(1)PIM消息的PIM-HELLO邻居发送消息,在每个端口上周期发送,消息接受方据此

确定与发送方的蔺家咀关系。(2)IGMP消息,MEMBERSHIP-REPORT:成员关系报告消息。(3)内部控制消息:nocache指示底层数据转发时未找到匹配的缓冲区,wrongvif

相关文档
最新文档