- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
组播原理
第一章? 概? 述
随着数据通信技术的不断发展,各项基于数据通信技术的业务层出不穷,FTP,HTTP,SMTP等传统的数据通信业务已经不能满足人们对信息的需求,视频点播,远程教学,新闻发布,网络电视等新型业务也逐渐发展起来,并被引入数据通信网络。
这些新型业务的特点是,有一个服务器(我们把这个服务器称为媒体流服务器)在发布信息,而接收端数量很大,可能有成千上万个,而且具体数目不固定。在这种方式下,我们可以使用传统的客户服务器(C/S)模型解决,按照下面的思路:
1。在媒体流服务器上启动媒体流播放进程,作为服务器;
2。客户端每当想接受某个媒体流服务器的数据的时候,通过给出该媒
体流服务器的IP地址,来跟该媒体流服务器建立连接(比如,TCP
连接等);
3。媒体流服务器维护一个客户列表,采用轮循的方式向每个客户发送
媒体流。
可以看出,这样的解决方案有两个缺陷:
1。客户数目很大的时候,媒体流服务器就有可能承受不了,因为这种
媒体流跟传统的窄带业务(比如HTTP等)不同,它需要很高的带宽
来传输,而且服务器还必须维护每个客户的信息;
2。严重浪费网络资源,相同的数据可能在网上传播了很多次,在一些
带宽较低的链路上,可能引起严重的通信瓶径。
在这个时候,我们自然而然的想起了组播。这种技术最适合上面的这些新型业务。因为组播通信有下列优点:
1。媒体流服务器不必知道某个客户端的存在,它只管把媒体流以组播
地址播放出去即可,而且仅仅播放一份;
2。媒体流数据在网上仅仅传送一份即可,即使有成千上万个客户端;
3。客户端不必向媒体流服务器注册,如果想接收某个媒体流服务器的
数据,仅仅加入该媒体流服务器所播放的数据所在的多播组即可。
组播技术从提出到现在,它的一些标准和技术已经相当完善了,但推广还不是十分广泛,尤其是在我国,人们对组播的认识还处于一个朦胧的阶段,更谈不上规模应用。为了让大家尽快的了解组播技术,我们在本文中给出一些学习指引,主要有下列内容:
1。组播基础概念,这些概念是深入学习组播的最基础的东西,如果对这些基础概念不了解,学习组播将是一句空话;
2。流行组播协议,在文中我们不具体分析哪种组播协议,而给出组播协议的一些共性,并列举了目前比较流行的组播协议和它的应用场合;
3。列举了一些参考资料,这些资料按照不同的读者层次列举,既有面向组播专家的高级论题,也有面向初学者的入门文章。
总之,本文是面向组播初学者的,如果你从没有接触过组播技术,那么仔细的阅读本文并掌握介绍的一些基本概念,然后参考文中列举的其他文章,将会是一种良好的学习路径。如果您是一位组播技术方面的专家,阅读本文也不无裨益,您可以从不同的角度来了解组播的基础概念,也可以参考文中提到的其他组播文章,相信对您也是有好处的。
第二章? 二层组播基础概念
在前面的介绍中,我们讨论了用多播的方式解决新型流媒体业务的好处,在该部分中,我们结合一个实际的网络给出一些多播的基础概念,掌握这些基础概念是深入掌握多播技术的前提。
2.1 网络实例
有下面一个网络需求:
?
在图中,媒体流服务器通过以太网交换机LSWA,跟核心路由器GSRA连接起来,并启动流媒体进程,不断的以多播IP地址0发送媒体流。GSRA和GSRB之间采用以太网连接起来,GSRB通过以太网交换机LSWB连接了许多终端,其中两台终端需要媒体流服务器播放的媒体流。
下面我们仔细分析每一个步骤,在分析的过程中引入并介绍一些基础的组播概念。
2.2 组播MAC地址和组播IP地址
在前面的介绍中,我们提到了媒体流服务器不断的以多播IP地址0发送媒体流,0这个IP地址就是一个多播IP地址。按照IP协议规定,位于—55范围内的IP地址都是多播地址。所谓多播地址,实际上是一个逻辑的概念,在网络上,没有一个计算机的IP地址是一个多播IP地址,多播IP地址仅仅代表了一个逻辑的组,加入该组的终端设备可以以该组所在的多播地址为目的IP地址来发送数据,这时候,发送的数据不是针对某个具体主机的,而是针对一组机器,想接收这个多播数据流的计算机,只要倾听接收到的每个数据报,判断该数据报的目的IP地址是不是组播组的IP地址即可。若是,则接收,否则丢弃。
为了更好的理解组播IP地址的概念,我们举一个例子,如下面的网络图所示:
主机A(最左边的一台计算机)不断的以组播IP地址0发送数据,这时候主机B(中间计算机)想接收组播组0的数据,于是它就会监听每个收到的数据报,判断该数据报目的IP地址是不是0,如果不是则丢弃,如果是则接收下来送到上层处理。
这里牵涉到了一个问题:主机B的哪个模块判断接收到的数据报是不是组播数据报,并且是不是针对组0的数据报?答案是主机B的IP模块。我们看一下一台计算机接收数据的过程:
1。数据链路层把接收到的数据帧剥
文档评论(0)