一种大规模多媒体接入网关的方法

文档序号:7596445阅读:193来源:国知局
专利名称:一种大规模多媒体接入网关的方法
技术领域
本发明涉及大规模多媒体网络的应用,尤其是涉及一种大规模媒体接入网关的方法。
背景技术
多媒体视频会议系统是一种大流量的群组通信系统,采用传统的客户/服务器模式将给中心服务器带来大量的数据压力,进而影响到系统的可扩展性。反之,采用组播通信模式,将非常有效的节省网络带宽和主机处理能力。
尽管组播协议是为多媒体通讯设计的,但是受到网络条件的限制,组播协议往往在一些高速网络和试验网络中开通,并不能够保证参与视频会议的节点都处于这样的网络中。本发明所提出的接入网关技术将为所有的应用程序提供透明的接口,并能够根据网络拓扑结构,尽可能的利用支持组播的网络,减少系统的网络带宽消耗。接入网关系统将能够充分利用接入客户端所在的网络实际情况,充分利用组播网络的实际开通范围,充分参考实际网络的拓扑组成结构,充分参考用户的实际需求,为客户端提供多媒体网络接入支持。
尽管目前已经有很多研究提出网络层的多媒体接入网关(例如单播-组播转换网关mrouted,MSB等)来解决上述问题。但是对于网络层的多媒体接入网关,如果一个多媒体群组通讯中的数据超过10Mbps,那么向多个客户端节点转发这种大规模的通讯数据流就存在很大的问题。另外,在实际情况中,很多网络之间的链路连接都是有限的,远远低于网络内部的带宽。因此,本发明的目的是通过应用层的方法,使接入网关能够在应用层对多媒体数据进行处理,仅仅转发用户定制的多媒体数据,从而节省网络带宽,提高系统效率。目前还有一些研究集中于覆盖网络技术的研究(如ESM)。总体而言,覆盖网络技术是将数据处理分布化的一种方式,与本发明所提出的接入网关技术的集中多媒体处理技术是两个不同的数据处理方式,两者并不矛盾。同时,在本发明的基础上,利用覆盖网络技术,理论上可以将本文提出的接入网关分布化,从而进一步提高整个多媒体系统的处理能力。
因此,本发明的任务是为了解决如何在应用层实现多媒体数据处理和转发的机制,并且该机制要比现有的网络层的处理网关在效率、性能方面都将有所提高。

发明内容
针对上面的描述,本发明提出了一种大规模媒体接入网关的方法,并具体包括以下步骤一种大规模媒体接入网关的方法,包括步骤(A)启动网关,网关和控制服务器间会以网络状态检测技术相互联系,使服务器能够实时的识别出所有可提供服务的网关,获取所有网关的当前负载,并生成一个“可用网关列表”;(B)任何一个用户通过控制服务器登录系统时,控制服务器都会根据负载均衡技术从“可以网关列表”中为其自动选择一个负载最轻的网关作为其“接入网关”,并同时通知网关需要为此用户提供服务;(C)网关系统建立一个“连接者”对象,所有“连接者”对象记录在一个以发送者地址为键的Hash表中;(D)网关系统根据每个报文的发送者信息找到“连接者”以对所接收到的报文进行转发。
根据本发明的一个方面,其中步骤(D)进一步包括步骤(a)网关接收到报文后首先根据接收报文的socket信息检查该报文是普通报文或NSP报文;
(b)根据“报文到达报告”根据中的socket句柄信息,查找到该报文对应会议的“连接者列表”,即正在参与该会议的所有接入客户端信息;(c)对于控制RTCP报文,直接向上述用户的地址转发,然后跳转至步骤5;(d)对于数据(RTP)报文,需要分析RTP报文,并获得该报文的网络传送地址等信息,然后根据该信息在“连接者列表”中查找订阅了此视频源的“连接者”,并向这些用户转发数据;(e)至此一个报文的处理过程完成,接收到其它报文后重复该过程。
根据本发明的另一个方面,其中步骤(a)进一步包括对于NSP报文还要特别检查其类型是否为“notify packet”,如果是则将其携带的源地址和端口信息记录到NSP模块的AddressTable中以实现端口复用;普通报文或其它类型的NSP报文不作特殊处理。
根据本发明的又一个方面,其中步骤(d)进一步包括(d1)如果用户接入类型与发送者类型相同时,不需要改变报文的长度和格式,直接向用户转发即可;(d2)如果用户以穿越防火墙方式接入,而报文来源为普通类型报文,则在报文前添加NSP报文头,再向用户转发;(d3)如果用户未使用穿越防火墙方式接入,而报文来源为NSP报文,则去掉NSP报文头信息,再向用户转发。
根据本发明的又一个方面,其中网络状态检测技术是指接入网关会定期发送一些消息,以使客户端和新启动的接入网关系统确认网络状态。
根据本发明的又一个方面,其中网络状态检测技术是指独立的接入网关系统或者群组的接入网关系统。


图1给出了根据本发明的接入网关的拓扑结构示意图;图2给出了根据本发明的多媒体数据转发技术的示意图;图3给出了根据本发明的独立的接入网关系统的示意图;图4给出了根据本发明的群组的接入网关系统的示意图;图5给出了根据本发明的数据转发的流程图;图6给出了根据本发明的实际测试效果的示意图。
具体实施例方式
对下面我们参考附图,对本发明的实施例进行详细的说明。
首先对本发明的系统体系结构进行说明。
通常情况下,连接到多媒体中心服务器的方式主要有以下两种。
●通过组播方式连接●通过单播方式连接在以前的研究中往往将这两种问题单独讨论,而实际上往往用户也无法确定具体的网络连接模式。因此,本发明提出的接入网关系统将考虑一种自动检测的方式,来为用户自动检测网络连接模式。并采用隧道和接入节点两种模式,将两种不同类型的网络有机的连接在一起,从而解决用户连接方式的不确定性。
具体而言,本发明所提出的接入网关的拓扑结构如图1所示。
接入网关系统分为两种工作模式接入网关中心,接入网关代理。接入网关系统中心位于组播网络中,按照接入用户的需求,提供单播与组播两种网络之间的多媒体数据转发和基于用户数据源定制信息的处理,可以连接接入代理,也可以连接多媒体客户端。接入网关系统代理位于单播网络中,功能与接入网关中心基本相同。但需要与代理中心连接以获取多媒体数据。接入代理接收到数据以后,代理会将数据在当前网络中,以组播方式发送,将数据传送给多媒体客户端系统。多媒体客户端系统位于不确定的网络中,可以通过和接入中心或者接入代理连接,以获取数据。多媒体客户端系统具体连接接入中心或者连接接入代理具体将根据其自身的网络条件和实际情况动态决定。
本发明提出的接入网关系统主要应用在网间带宽远远低于网内带宽的拓扑结构上。在这种结构上,采用树性的多媒体数据传输方式能够解决大规模平面式多媒体数据传输方式的规模和扩展缺陷。
本发明主要包括三项核心技术网络状态检测技术、多媒体数据转发技术、负载均衡技术。
首先,对网络状态检测技术进行说明。
采用状态检测技术的目的是,任何多媒体客户端在启动之后,就会自动检测目前的网络状况。然后根据网络状况来选择系统的多媒体数据通讯模式。
(1)接入网关状态的维护在接入网关中,网络环境被细分为三个类型纯粹组播网络,局域组播网络和单播网络。能够采用组播方式连接到多媒体服务器的网络叫做局域组播网络;无法采用组播方式连接到多媒体服务器的局域网络叫做局域组播网络;不支持组播协议的网络叫做单播网络(例如,xDSL网络)。通常情况下,局域组播网络是一个不和多媒体服务器采用组播方式连接的高速网络,往往支持该网络范围内部的IGMP协议。
不管客户端的网络情况如何,接入网关系统会定期发送一些消息,以帮助客户端和新启动的接入网关系统确认网络状态,该技术称为网络状态检测技术。对于接入网关而言,接入网关中心将运行在组播网络中;接入网关代理将运行在局域组播网络中。而多媒体客户端可能运行在任何一个上述的网络环境中。
所有的接入网关中心将组成一个接入网关群组,在其中的每个中心将定期发送心跳报文来维护整个接入网关群组的网关状态信息。每个中心的信息每秒钟最多发送一次,20秒钟最少发送一次。在每个心跳报文中,都包含了所有已知中心的信息。如果一个接入网关中心20秒没有发送任何信息,我们就任务该网关中心经停止运行了。所有心跳报文的发送间隔采用[500ms,1000ms]的随机方式避免冲突,均采用组播数据的方式传播。
在接入网关代理群组中,状态信息的维护也采用同样的机制。只不过接入网关代理的心跳报文的格式不同,而且每个代理仅能够获取本局域组播网络范围内的其他网关代理信息。
(2)接入网关状态的检测通过这些状态报告,一个接入网关中心群组和多个接入网关代理群组的信息就始终在网络上发布。多媒体客户端可以通过这些发布的信息了解用户所在的网络状态信息。
如果一个用户在1秒钟内没有收到任何网络状态的报告信息,就说明用户处在单播网络中;如果一个用户能够接收到接入网关中心的状态报告信息,就说明用户处在纯粹的组播网络中如果一个用户能够接收到接入网关代理的状态报告信息,就说明用户处在局域组播网络中。多媒体客户端可以根据这个网络状态信息,采用相应的连接方式和接入网关连接,并进行进一步的网络通讯。
(3)接入网关状态的变更因为任何接入网关系统只能够作为一种模式运行(中心或者代理模式)。因此如果接入网关处在网络的环境,接入网关也需要对工作模式进行相应的修改。
如果任何接入网关代理接收到接入网关中心发送的状态信息,说明该代理和中心处在同一个网络中,需要将该代理升级为接入网关中心。如果一个接入网关代理接收到另外一个代理发送的状态信息,说明原来认为分离的两个局域组播网络是连接的,需要将该代理连接到另外的接入网关代理上面。
心跳报文的数据格式如下接入网关中心Version=1\n
Description=Server\n{Name=xxx\nServerAddress=uca\nTimeout=xx\n}\n接入网关代理Version=1\nDescription=Proxy\n{Name=xxx\nProxyAddress=uca\nServerAddress=uca\nTimeout=xx\n}\n下面,结合附图2对多媒体数据转发技术进行说明。
如图2所示,多媒体数据的发送者通过接入网关的数据处理和转发的机制,向所有连接到接入网关系统中的用户进行处理和转发。这种数据转发可能是组播到单播、单播到组播、或者单播到单播的。对于每个多媒体数据流,系统将提供一组转发通道(Channel);对于每个通道,可能存在多个连接者(Listener)。系统从其中一个连接者收到数据以后,向其他的连接者根据相应的需求传送需要的多媒体数据。
●RTP转发器转发器根据多媒体数据中的RTP报文头中的SSRC信息,向用户转发指定的SSRC的多媒体数据。用户是通过其他控制命令向转发器通告用户需要的SSRC信息。
●RTCP转发器多媒体的RTCP数据将被直接转发,不进行任何的区分。
接下来,结合图3和图4对负载均衡技术进行说明。
对于网关的部署,有以下两种方案(1)独立的接入网关系统如图3所示,可以配置独立的接入网关系统,使多媒体数据接入中心的客户端可以接收到所有会议节点的音视频信息,其他所有的客户端可以接收到部分客户端的音视频信息。同时,还可以有一个或者几个客户端处于发言状态,其他的客户端都可以接收这些客户端和会议中心的交互情况。
(2)群组的接入网关系统如图4所示,也可以在不同的地区配置网关,保证各地用户能够利用网关系统能够接收到会议中心的信息。这种地区性的网关的目的是扩展会议节点的规模,使每一个地区内的会议规模不局限在一个会议节点。
在群组接入网关中,客户端将根据状态信息得到当前负载最低的接入网关系统,或者根据网络带宽测量情况得到带宽条件最好的接入网关系统。这样,客户端可以通过均衡接入网关的负载,来扩展系统的应用规模。
因此,将以上三项核心技术有机组合即为有效的解决多媒体数据处理中心的数据转发问题,提高网间数据传输效率的方法。
首先,网关启动后,网关和控制服务器间会以网络状态检测技术相互联系,使服务器能够实时的识别出所有可提供服务的网关,获取所有网关的当前负载,并生成一个“可用网关列表”。而后,任何一个用户通过控制服务器登录系统时,控制服务器都会根据负载均衡技术从“可以网关列表”中为其自动选择一个负载最轻的网关作为其“接入网关”,并同时通知网关需要为此用户提供服务。
根据IETF关于RTP/RTCP协议的RFC3550的要求,音、视频的数据和控制流需要各不相同的四个网络传输地址。因此网关系统使用四个转发通道来分别管理音、视频的RTP和RTCP数据报文的接收和转发工作,并将同一个用户的四个转发通道抽象为一个“连接者”对象,该对象在控制服务器通知增加新的使用者时建立。由于网关系统的任务需要将组播组和多个单播用户连通起来,因此本网关系统特别为组播组也建立了一个专门的“连接者”对象,该对象是在会议中的第一个用户登录后自动建立的。所有“连接者”对象记录在一个以发送者地址为键的Hash表中,以便在接收到报文后迅速查找到其发送者的相应对象并进行转发。
考虑到需要同时支持多个并发的会议,网关系统在对于于会议的“连接者列表”之上又建立了一个“会议列表”,用于索引到每个会议不同的“连接者列表”。该列表也是一个Hash表,使用监听socket的句柄为键,因此可以在接收到“报文到达通知”后就根据该通知的参数迅速找到对应的“连接者列表”。当用户切换会议时,其“连接者”对象被从原会议的“连接者列表”上删除,然后加入新会议的“连接者列表”。会议结束后,该会议的“连接者列表”被删除,其上的所有连接者也自动删除。
通过以上方法,网关系统能够有效而准确的根据每个报文的发送者信息找到“连接者”对象,并调用该对象的方法实现转发。
接下来,如图在数据的转发流程(应用多媒体数据转发技术)中,网关系统对收到的每个数据(RTP)和控制(RTCP)报文作如下处理1、网关接收到报文后首先根据接收报文的socket信息检查该报文是普通报文或NSP报文。
对于NSP报文还要特别检查其类型是否为“notify packet”,如果是则将其携带的源地址和端口信息记录到NSP模块的AddressTable中以实现端口复用。
普通报文或其它类型的NSP报文不作特殊处理。
2、根据“报文到达报告”根据中的socket句柄信息,查找到该报文对应会议的“连接者列表”,即正在参与该会议的所有接入客户端信息。
3、对于控制(RTCP)报文,直接向上述用户的地址转发,然后跳转至步骤5。(可见RTCP报文是无条件转发的,这样作的目的是保留RTCP报文作为源识别信息的作用,以尽量小的服务器计算量,保持接入网关后用户的群体感知功能。如不转发RTCP报文,实现相同的效果则必须在网关上加入RTCP报文的分析处理功能,网关负载将进一步增加)。
4、对于数据(RTP)报文,需要分析RTP报文,并获得该报文的网络传送地址等信息,然后根据该信息在“连接者列表”中查找订阅了此视频源的“连接者”,并向这些用户转发数据。此时有如下几种情况(1)如果用户接入类型与发送者类型相同时,不需要改变报文的长度和格式,直接向用户转发即可;(2)如果用户以穿越防火墙方式接入,而报文来源为普通类型报文,则在报文前添加NSP报文头,再向用户转发;(3)如果用户未使用穿越防火墙方式接入,而报文来源为NSP报文,则去掉NSP报文头信息,再向用户转发。
5、至此一个报文的处理过程完成,接收到其它报文后重复本过程。
因此,根据本发明,假设接入网关的处理能力为50Mbps,每个多媒体数据流占用带宽1Mbps。每个用户可以选择3个多媒体数据流。系统的规模能够达到

对于14个与会节点和一个会议中心的情况下,网关处理的数据流量为49Mbps,该数据量可以由一台计算机处理完成。而采用两个网关服务器最多可以处理23个与会节点和一个会议中心的情况。平均每增加一个网关服务器就可以增加7~8个会议节点的接入能力。
与国外的MECCANO项目相比,本发明提出的接入网关的处理能力和规模大约是MECCANO项目的三倍。
本发明中接入网关系统多次在教育部、科技部的视频会议中得到应用。在教育部,超过150个大学和各个省市的教育主管部门,已经使用该系统作为教育部内部的协同和会议平台。在平台在使用的过程中,最多110个节点同时使用该网络接入系统进行多媒体应用交互。证明了实际的应用效果。
对于本领域的普通技术人员来说可显而易见的得出其他优点和修改。因此,具有更广方面的本发明并不局限于这里所示出的并且所描述的具体说明及示例性实施例。因此,在不脱离由随后权利要求及其等价体所定义的一般发明构思的精神和范围的情况下,可对其作出各种修改。
权利要求
1.一种大规模媒体接入网关的方法,包括步骤(A)启动网关,网关和控制服务器间会以网络状态检测技术相互联系,使服务器能够实时的识别出所有可提供服务的网关,获取所有网关的当前负载,并生成一个“可用网关列表”;(B)任何一个用户通过控制服务器登录系统时,控制服务器都会根据负载均衡技术从“可以网关列表”中为其自动选择一个负载最轻的网关作为其“接入网关”,并同时通知网关需要为此用户提供服务;(C)网关系统建立一个“连接者”对象,所有“连接者”对象记录在一个以发送者地址为键的Hash表中;(D)网关系统根据每个报文的发送者信息找到“连接者”以对所接收到的报文进行转发。
2.根据权利要求1的方法,其中步骤(D)进一步包括步骤(a)网关接收到报文后首先根据接收报文的socket信息检查该报文是普通报文或NSP报文;(b)根据“报文到达报告”根据中的socket句柄信息,查找到该报文对应会议的“连接者列表”,即正在参与该会议的所有接入客户端信息;(c)对于控制RTCP报文,直接向上述用户的地址转发,然后跳转至步骤5;(d)对于数据(RTP)报文,需要分析RTP报文,并获得该报文的网络传送地址等信息,然后根据该信息在“连接者列表”中查找订阅了此视频源的“连接者”,并向这些用户转发数据;(e)至此一个报文的处理过程完成,接收到其它报文后重复该过程。
3.根据权利要求2的方法,其中步骤(a)进一步包括对于NSP报文还要特别检查其类型是否为“notify packet”,如果是则将其携带的源地址和端口信息记录到NSP模块的AddressTable中以实现端口复用;普通报文或其它类型的NSP报文不作特殊处理。
4.根据权利要求3的方法,其中步骤(d)进一步包括(d1)如果用户接入类型与发送者类型相同时,不需要改变报文的长度和格式,直接向用户转发即可;(d2)如果用户以穿越防火墙方式接入,而报文来源为普通类型报文,则在报文前添加NSP报文头,再向用户转发;(d3)如果用户未使用穿越防火墙方式接入,而报文来源为NSP报文,则去掉NSP报文头信息,再向用户转发。
5.根据权利要求1的方法,其中网络状态检测技术是指接入网关会定期发送一些消息,以使客户端和新启动的接入网关系统确认网络状态。
6.根据权利要求1的方法,其中网络状态检测技术是指独立的接入网关系统或者群组的接入网关系统。
全文摘要
本发明提出了一种大规模媒体接入网关的方法,并具体包括以下步骤一种大规模媒体接入网关的方法,包括步骤(A)启动网关,网关和控制服务器间会以网络状态检测技术相互联系,使服务器能够实时的识别出所有可提供服务的网关,获取所有网关的当前负载,并生成一个“可用网关列表”;(B)任何一个用户通过控制服务器登录系统时,控制服务器都会根据负载均衡技术从“可以网关列表”中为其自动选择一个负载最轻的网关作为其“接入网关”,并同时通知网关需要为此用户提供服务;(C)网关系统建立一个“连接者”对象,所有“连接者”对象记录在一个以发送者地址为键的Hash表中;(D)网关系统根据每个报文的发送者信息找到“连接者”以对所接收到的报文进行转发。
文档编号H04L12/66GK1588927SQ20041007049
公开日2005年3月2日 申请日期2004年8月5日 优先权日2004年8月5日
发明者金天, 盛向治, 喻湘宁, 李未 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1