选择媒体流中转节点端的方法

文档序号:7685327阅读:199来源:国知局

专利名称::选择媒体流中转节点端的方法
技术领域
:本发明涉及一种选择媒体流中转节点端的方法。技术背景现有Internet视讯通讯系统中的媒体流主要包括音频、视频等高带宽需求的数据流,媒体流传输路径的优化选择直接影响到音视频通讯的质量,尤其在远程网络传输的品质很差、或两点间不能直接穿透的情况下,传输常须借助中转节点端,即媒体控制单元(MCU),因此MCU起到了中转两节点端或多节点端间媒体流分发的任务。在一商用的Internet视讯通讯网,通常将会部署多台MCU为大量的媒体流提供中转与分发服务,当需要进行媒体流通讯过程时,一方节点端将本地媒体流发布到其中一个具有公网IP地址的MCU,并通知对方节点端从该地址MCU的通道上获取媒体流并解码显示或播放,从而完成一次媒体交互过程。然而在Internet的不同地点、及不同运营商之间的网络传输效率并不相同,对于处于不同网段的两点间媒体的传输综合效率是以品质最差的一方为基准的。因此,提高两点间视音频通讯质量的首要问题是如何选择离本地传输效率最快的MCU和优化MCU间的传输路径,现有的做法是由主叫节点端选择离本地最快的一个MCU并通知对方节点端,而并不考虑对方节点端与所述MCU通信的通信状况,显然若对方节点端与所述MCU存在通信不畅甚至网络瓶颈时就会严重影响双方的通讯效果。因此如何避免现有媒体流传输过程存在的问题,实已成为本领域技术人员亟待解决的技术课题。
发明内容本发明的目的在于提供一种选择媒体流中转节点端的方法,以提高通过中转节点端传输媒体流的通信双方的传送效率。为了达到上述目的及其他目的,本发明提供的应用于一通信网络中的选择媒体流中转节点端的方法,包括步骤1)所述通信网络中的每一中转节点端根据其自身的处理器的平均使用率、内存平均使用率、及当前需要自身中转的媒体流数目计算出各自当前的负载状况;2)当每一中转节点端与服务端建立通信连接后,其将自身的地址及当前负载状况信息发送至所述服务端;3)所述通信网络中的每一节点端与所述服务端建立通信连接后,所述服务端根据所述节点端的业务请求及所接收到的来自各中转节点端发送的信息筛选出能适应所述节点端业务传输要求的相应多个中转节点端,并将筛选出的相应多个中转节点端的地址发送至所述节点端,其中,所筛选出的多个中转节点端的数目预先予以设定;4)所述每一节点端根据所述服务器发送至的多个中转节点端地址分别向各地址发送测试数据包以测试出自身与各中转节点端通信的数据往返时间;5)当所述通信网络中的一节点端要与另一节点端通过中转节点端传送媒体流时,其通过所述服务端发出主叫另一节点端的呼叫请求,所述另一节点端接收到所述呼叫请求后将其测试出的与相应各中转节点端通信的数据往返时间及对应中转节点端地址发送至所述节点端;6)所述节点端根据其自身测试出的与相应各中转节点端通信的数据往返时间和对应各中转节点端地址、以及接收的所述另一节点端发送至的数据往返时间和对应中转节点端地址选择相应能中转媒体流的最优中转节点端以便与所述另一节点端进行媒体流的传输。其中,所述步骤4)包括一节点端将其自身与相应各中转节点端通信的数据往返时间及对应中转节点端地址发送至所述另一节点端的步骤,此外,所述选择媒体流中转节点端的方法还可包括一更新步骤,即每一中转节点端在预设时间重新计算其当前的负载状况,并将其发送至所述服务端以进行负载状况的更新。综上所述,本发明的选择媒体流中转节点端的方法通过对需要进行媒体流传送的两节点端与各中转节点端的通信状况的全盘考虑来选择最为适合的中转节点端,有效提高了媒体流传输的速度及效率。图1为本发明的选择媒体流中转节点端的方法所应用的通信网络的结构示意图。图2为本发明的选择媒体流中转节点端的方法的操作流程示意图。具体实施方式请参阅图l,本发明的选择媒体流中转节点端的方法可应用于一通信网络中,所述通信网络包括多个节点端(例如客户端A和客户端B)、能与所述多个节点端进行媒体流中转的多个中转节点端、以及能与所述多个节点端和多个中转节点通信的服务端,此外,所述通信网络也还可设置其它部件,例如可设置与所述服务端相连接的用于存储数据的数据库等。所述选择媒体流中转节点端的方法包括以下步骤第一步所述通信网络中的每一中转节点端根据其自身的处理器(即CPU)的平均使用率、内存平均使用率、及当前需要自身中转的媒体流数目计算出各自当前的负载状况,通常负载状况根据式负载状况=当前媒体连接数+(CPU平均使用率+内存平均使用率)/2计算得到,其中,CPU平均使用率=(当前采样CPU使用率+前次采样CPU使用率)/2,内存平均使用率=(当前采样内存使用率+前次采样内存使用率)/2。第二步当每一中转节点端与服务端建立通信连接后,其将自身的地址及当前负载状况信息发送至所述服务端,通常在建立通信连接后,各中转节点端会在预设时间(例如每30秒)重新计算其当前的负载状况,并将其发送至所述服务端以进行负载状况的更新。第三步所述通信网络中的每一节点端与所述服务端建立通信连接后,所述服务端根据所述节点端的业务请求及所接收到的来自各中转节点端发送的信息筛选出能适应所述节点端业务传输要求的相应多个中转节点端,并将筛选出的相应多个中转节点端的地址发送至所述节点端,其中,所筛选出的多个中转节点端的数目预先予以设定(例如5个),通常所述服务端以本地地址缓冲表(LocalAddressCache,,LAC)的形式将相应地址信息发送至所述节点端,例如,所述服务端发送至客户端A的地址缓冲表(LAC1)如下表一表一:中转节点端的标识符中转节点端的地址<table>tableseeoriginaldocumentpage5</column></row><table>所述服务端发送至客户端B的地址缓冲表(LAC2)如下表二:表二中转节点端的标识符中转节点端的地址<table>tableseeoriginaldocumentpage5</column></row><table>第四步所述每一节点端根据所述服务器发送至的多个中转节点端地址分别向各地址发送测试数据包以测试出自身与各中转节点端通信的数据往返时间(即RTT值),例如客户端A分别向地址为00.00.01、00.00.02、00.00.03、00.00.04、及00.00.05的各中转节点端发送测试数据包以获得各RTT值,并进而生成的LAC3表,如下表三表三:<table>tableseeoriginaldocumentpage6</column></row><table>同样,客户端B也分别向地址为00.00.02、00.00.05、00.00.10、00.00.22、及00.00.34的各中转节点端发送测试数据包以获得各RTT值,并形成LAC4表,如下表四表四<table>tableseeoriginaldocumentpage6</column></row><table>第五步当所述通信网络中的一节点端(例如客户端A)要与另一节点端(例如客户端B)通过中转节点端传送媒体流时,所述客户端A通过所述服务端发出主叫另一节点端的呼叫请求,所述客户端B接收到所述呼叫请求后将其测试出的与相应各中转节点端通信的数据往返时间及对应中转节点端地址(即所述LAC4表).发送至所述客户端A,在本实施例中,为防止因网络故障而导致信息传送的丢失,同时所述客户端A也会将其测试出的与相应各中转节点端通信的数据往返时间及对应中转节点端地址(即所述LAC3表)发送至两述客户端B。第六步所述客户端A根据其自身测试出的与相应各中转节点端通信的数据往返时间和对应各中转节点端地址(即所述LAC3表)、以及接收的所述另一节点端发送至的数据往返时间和对应中转节点端地址(即所述LAC4表)选择相应能中转媒体流的最优中转节点端以便与所述客户端B进行媒体流的传输,参见所述LAC3表和所述LAC4表,所述客户端A首先将两表中具有同样地址的中转节点端予以选择出来,即中转节点端MCU-2和MCU-5,然后再根据所述客户端A和客户端B与中转节点端MCU-2和MCU-5通信的RTT值,选择中转节点端MCU-2作为最优中转节点端,并将选择的结果通知所述客户端B,同样所述客户端B也可根据所述LAC4表、以及接收的所述LAC3表进行同样的最优选择,如此即可实现客户端A和客户端B之间通过中转节点端传输媒体流的。此外需注意的是,若在所述LAC3表和所述LAC4表中不存在相同的中转节点端地址时,即说明通过一个中转节点端不能在客户端A和客户端B之间进行媒体流的中转,故需要选择至少两个中转节点端,因此可以根据所述LAC3表和所述LAC4表中的中转节点端形成两两中转节点端数列,并根据所述数列获得媒体流在两两中转节点间传输的总的RTT值,由此选择出最优的一组数列包含的两中转节点端作为媒体流中转节点端。综上所述,本发明的选择媒体流中转节点端的方法通过对需要进行媒体流传送的两节点端与各中转节点端的通信状况的全面考虑来选择最为适合的中转节点端,避免了现有技术中主叫节点端仅考虑自身与中转节点端的通信状况所存在的缺点,有效提高了媒体流传输的速度及效率,避免被叫节点端因与中转节点端通信不畅或网络阻塞而导致媒体流无法正常传输的问题。权利要求1.一种选择媒体流中转节点端的方法,应用于一通信网络中,所述通信网络包括多个节点端、能与所述多个节点端进行媒体流中转的多个中转节点端、以及能与所述多个节点端和多个中转节点通信的服务端,所述选择媒体流中转节点端的方法的特征在于包括步骤1)所述通信网络中的每一中转节点端根据其自身的处理器的平均使用率、内存平均使用率、及当前需要自身中转的媒体流数目计算出各自当前的负载状况;2)当每一中转节点端与服务端建立通信连接后,分别将自身的地址及当前负载状况信息发送至所述服务端;3)所述通信网络中的每一节点端与所述服务端建立通信连接后,所述服务端根据节点端的业务请求及所接收到的来自各中转节点端发送的信息筛选出能适应所述节点端业务传输要求的相应多个中转节点端,并将筛选出的相应多个中转节点端的地址发送至所述节点端,其中,所筛选出的多个中转节点端的数目预先予以设定;4)节点端根据所述服务器发送至的多个中转节点端地址分别向各地址发送测试数据包以测试出自身与各中转节点端通信的数据往返时间;5)当所述通信网络中的一节点端要与另一节点端通过中转节点端传送媒体流时,其通过所述服务端发出主叫另一节点端的呼叫请求,所述另一节点端接收到所述呼叫请求后将其测试出的与相应各中转节点端通信的数据往返时间及对应中转节点端地址发送至所述节点端;6)所述节点端根据其自身测试出的与相应各中转节点端通信的数据往返时间和对应各中转节点端地址、以及接收的所述另一节点端发送至的数据往返时间和对应中转节点端地址选择相应能中转媒体流的最优中转节点端以便与所述另一节点端进行媒体流的传输。2.如权利要求1所述的选择媒体流中转节点端的方法,其特征在于所述步骤4)包括一节点端将其自身与相应各中转节点端通信的数据往返时间及对应中转节点端地址发送至所述另一节点端的步骤。3.如权利要求1所述的选择媒体流中转节点端的方法,其特征在于还包括更新步骤,即每一中转节点端在预设时间重新计算其当前的负载状况,并将其发送至所述服务端以进行负载状况的更新。全文摘要一种选择媒体流中转节点端的方法,先由通信网络中的每一中转节点端根据自身处理器的平均使用率、内存平均使用率、及当前需要自身中转的媒体流数目计算出各自当前的负载状况,并将当前负载状况信息发送至服务端,接着服务端根据通信网络中的每一节点端的业务请求及所接收到的来自各中转节点端发送的负载状况信息筛选出能适应所述节点端业务传输要求的相应多个中转节点端,并通知相应节点端,接着每一节点端根据通知分别向各地址发送测试数据包以测试出自身与各中转节点端通信的数据往返时间,然后要进行媒体流传输的两节点端交换自身与各中转节点端通信的数据往返时间,由此选择出适合为双方中转媒体流的中转节点端,由此可提高媒体流的中转效率。文档编号H04N7/26GK101242367SQ20081003440公开日2008年8月13日申请日期2008年3月7日优先权日2008年3月7日发明者周小川,熊模昌申请人:上海华平信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1