在多节点间通过网络对数据进行接收和转发的组播通信方法及装置的制作方法

文档序号:7735014阅读:206来源:国知局
专利名称:在多节点间通过网络对数据进行接收和转发的组播通信方法及装置的制作方法
技术领域
本发明涉及一种具有网络路由功能的组播通信方法及装置,更详细地,特别涉及 一种利用动态应用层组播将对数据进行混合的方法及装置,该方法及装置用于但并不专用 于音频会议和视频会议系统(尤其,“视频会议”也称为“视听(AV)会议”或“电视(TV)会 议”)。
背景技术
应用层组播(Application Layer Multicasting, ALM)在现有的单播网络体系结 构(unicast network architecture)的上层实现,用于进行多节点的连接。与组播不同, ALM中其成员本身可以利用由ALM节点形成的覆盖网络(overlay network),进行视听(AV) 数据包的路由而不需要额外的路由器配置。ALM节点相互交换路由信息而形成一个覆盖网 络,并利用该覆盖网络交换数据包。由此提供通过大量的组播组(multicastgroup)在应用 层进行实时且延迟敏感的AV数据包的转发时的灵活性。例如,ALM可用于大规模音频会议会话群组,其中,多点控制单元(Multi-point Control Unit,MCU)节点能够为参加节点进行分散型混合。这些MCU节点接着能够在它 们之间沿最小延迟的最佳ALM路径重新路由混合了的内容,以实现实时的音频会议。所述 ALM路径能够携带原始音频内容或部分混合的音频内容以实现最小延迟和沿MCU节点路径 的负载分布。最小延迟是通过选择最佳ALM路径实现的,而负载分布是通过由ALM-MCU节 点进行源(source)音频内容的增量式混合(incremental mixing)来完成的,该ALM-MCU 节点将音频内容混合并将其传递给下一个ALM-MCU节点、另一个ALM节点或末端音频节点 (end audio node)0如果MCU节点不掌握内容或内容的源就混合了所有音频数据包,就可能造成由于 以部分混合的形式或原始形式接收来自同一源的重复的音频内容而产生的音频回声问题。非专利文献1描述了一种基于ALM的混合型对等网络(P2P)会议体系结构,它能 够在音频会议会话中利用具有不同能力的参加者。现有技术文献非专利文献非专利文献(NPL)1W. Xiaotao, K.D. Krishna, and K. Venkatesh,"EnhancingappIication-Layer Multicast for P2P Conferencing (用于P2P会议的增强应用层组播),,,2007年第四届电 气电子工程师学会(IEEE)的用户通信和网络会议,2007年1月,第986-990页

发明内容
发明要解决的问题该体系结构利用三步算法,构建这样一个基于ALM的混合型P2P会议。与现有的基于ALM的P2P会议系统相比,该方法具有更好的可扩展性。然而,该方法并未考虑在 同一节点执行混合和桥接(bridging)功能的情况下会产生的音频循环问题(audio loop problem,即音频回声问题)。因此,本发明的目的就是提供一种组播通信方法及装置,其能够通过动态ALM路 径的适应(dynamic ALM path adaptation)而降低回声。解决问题的方案本发明提供一种根据包含有数据的源节点和目标节点的路由信息,在多节点间通 过网络对数据进行接收和转发的组播通信方法,该方法步骤以下包括在第一节点接收第 一数据和第二数据;根据所述路由信息,将所述第一数据和所述第二数据转发到下一个目 标节点;以及根据所述第一数据的第一跳数和所述第二数据的第二跳数,决定是否在所述 第一节点混合所述第一数据和所述第二数据,其中,所述第一数据的所述第一跳数定义为 所述第一数据的所述源节点和所述第一数据的所述下一个目标节点之间的节点数,所述第 二数据的所述第二跳数定义为所述第二数据的所述源节点和所述第二数据的所述下一个 目标节点之间的节点数。本发明进一步提供一种在多节点间通过网络对数据进行接收和转发的组播通信 装置,该装置包括接收单元,用于从源节点接收所述数据;路由表,用于存储包含有所述 数据的所述源节点和目标节点的、所述数据的路由信息;转发单元,用于根据所述路由表的 所述路由信息,将所述数据转发到下一个目标节点;跳距表,包括被转发的所述数据的、从 所述源节点到所述下一个目标节点的跳数;以及混合处理单元,用于对从另一个节点接收 的数据进行混合处理,其中,所述混合处理单元根据所述跳距表中的所述跳数,进行所述混 合处理。发明的效果根据本发明,该组播通信方法及装置能够通过动态ALM路的径适应而降低回声。


图IA表示根据本发明的一个实施方式的、在ALM会话中具有多个ALM节点和 ALM-MCU节点的网络。图IB是示出一例图IA所示的各节点的简略硬件结构的方框图。图IC表示构成图IA所示的各节点的设备的几个具体例子。图2示出根据本发明的实施方式的ALM转发(路由)表的实例。图3示出一例与图2所示的ALM转发表有关的ALM-MCU多媒体流的场景。图4A至4D示出与图2连接的四个子转发表的内容,,其中,图3所示的四个节点A 至D是传输源。图5表示根据本发明的实施方式的、基于ALM的分散型的选择性动态混合 的MCU装置。图6示出根据本发明的实施方式的ALM混合转发(ALM MixingForwarding, AMF)表。图7示出根据本发明的实施方式的混合跳距(Mixing Hop Length, MHL)表。图8示出根据本发明的实施方式的分散型ALM混合状态(Decentralized ALM Mixing State, DAMS) ■。
图9示出根据本发明的实施方式的ALM节点间的消息交换序列。图10示出根据本发明的实施方式的ALM-MCU消息的格式。图11描绘一例实现图5所述的基于ALM的分散型选择性动态混合的MCU装置的 ALM-MCU 装置。图12A表示根据本发明的实施方式的、具有四个节点的解释性实例中的路由。图12B表示图12A所示的路由中的路由表。图13A表示在图12A和12B所示的路由中,节点A按照规定的规则创建的MHL表。图1 表示在图12A和12B所示的路由中,节点B按照规定的规则创建的MHL表。 图13C表示在图12A和12B所示的路由中,节点C按照规定的规则创建的MHL表。图13D 表示在图12A和12B所示的路由中,节点D按照规定的规则创建的MHL表。图14A表示根据本发明的实施方式的、具有五个节点的解释性实例中的路由。图14B表示图14A所示的路由中的路由表。图15A表示在图14A和14B所示的路由中,节点A按照规定的规则创建的MHL表。图15B表示在图14A和14B所示的路由中,节点B按照规定的规则创建的MHL表。图15C表示在图14A和14B所示的路由中,节点C按照规定的规则创建的MHL表。图15D表示在图14A和14B所示的路由中,节点D按照规定的规则创建的MHL表。图15E表示在图14A和14B所示的路由中,节点E按照规定的规则创建的MHL表。图16A表示根据本发明的实施方式的、另一个具有五个节点的解释性实例中的路图16B表示图16A所示的路由中的路由表。图17A表示在图16A和16B所示的路由中,节点A按照规定的规则创建的MHL表。图17B表示在图16A和16B所示的路由中,节点B按照规定的规则创建的MHL表。图17C表示在图16A和16B所示的路由中,节点C按照规定的规则创建的MHL表。图17D表示在图16A和16B所示的路由中,节点D按照规定的规则创建的MHL表。图17E表示在图16A和16B所示的路由中,节点E按照规定的规则创建的MHL表。图18表示根据本发明的实施方式的、基于ALM的分散型选择性动态混合的MCU操 作的主要步骤。图19表示根据本发明的实施方式的MHL表的构建方法的步骤。图20表示根据本发明的实施方式的DAMS表的创建的步骤。图21表示根据本发明的实施方式的ALM-MCU节点的混合操作的步骤。图22表示根据本发明的实施方式的强制性混合操作的步骤。图23表示根据本发明的实施方式的选择性混合操作的步骤。标号说明160ALM 节点162处理器164输入/输出(I/O)单元166存储器单元168存储单元502ALM表生成单元
504ALM混合单元506ALM混合转发(AMF)表数据库508混合跳距(MHL)表数据库510分散型ALM混合状态(DAMS)表数据库512混合跳距(MHL)分析器514分散型ALM混合状态(DAMS)表生成器532强制性混合单元552路由引擎554转发单元562ALM消息处理单元568选择性混合单元600AMF 表700MHL 表800DAMS 表
具体实施例方式本新技术允许通过多点控制单元(MCU)节点进行分散型选择性动态的基于应用 层组播(ALM)的数据(或内容)混合。使用动态的基于ALM的路由表信息,选择性地混合应 用层的内容数据包,以消除造成内容回声的内容数据包循环。本实施方式尤其提供一种用 于在ALM-MCU节点之间执行分散型选择性动态的基于ALM的内容混合的装置及相关方法。 本技术例如适合于实时音频/视频会议以最小化由路由收敛(routeconvergence)的延迟 造成的端到端(end-to-end)数据包传递延迟并降低内容(如音频)回声。这里,尽管音频 数据中基本上会产生回声,图像数据中也可能发生图像重叠。因此,在本实施方式中,将与 音频数据相关的回声称为“音频回声”,将与广泛包括音频数据和图像数据的内容相关的回 声称为“内容回声”或“回声”。ALM要求在给定的活动会话中的所有参加节点(例如,MCU节点)共同负责通过最 佳路径在各成员之间路由该群组的流数据。这就实现以分散方式进行自我支持的AV流路 径的构建,维护和使用的目的。在2008年12月1日提交的申请号为2008-306671的日本 专利申请中提出了 N叉树算法(N-Tree algorithm),以通过构建公平带宽的树来解决带宽 公平性和快速路由收敛的问题。然而,这个自我调整型路由机制(N叉树算法)要求通过收集和传播路由信息的一 个或多个节点,在动态成员之间周期性地进行控制路径信息的交换。路由信息通过个别的 ALM节点或者通过一 ALM节点群组的协作来动态构建。这种动态性导致了 ALM会话中的路 径/方向的频繁改变,此变化造成了在ALM-MCU节点产生内容回声的内容数据包的循环或重复。基于路由表信息的ALM数据包的路由并未考虑到由MCU节点进行的内容数据包的 混合操作。MCU节点不掌握内容或内容的源就混合所接收的所有内容数据包。由此,由于以 部分混合的形式或原始形式接收来自同一源的重复的内容,从而产生内容回声问题。通过没有考虑ALM路径的ALM-MCU节点进行直接的内容混合,会造成ALM网络中的MCU到MCU信道的流的错误混合。因此,本实施方式的目的就是提供一种用于进行分散 型选择性动态的、基于ALM的数据(或内容)混合的装置及方法,以利用动态ALM路径适应 来消除回声或降低内容延迟/抖动。此外,也能够使混合负载沿ALM-MCU节点路径分布。这是通过ALM路由表信息的动态分析和沿ALM路由构建数据包混合状态信息来实 现的。所述数据包混合状态信息用于在ALM-MCU节点进行强制性或选择性内容混合,以降 低内容回声并保证将数据包延迟维持为最小。总之,本实施方式使用MCU节点的ALM技术 沿ALM路径动态路由原始内容数据包或部分混合的内容数据包,以实现最小的端到端延迟 和混合负载的分布。参照附图及具体的图项目来补充说明本实施方式。本发明的实施方式所使用的特定术语的定义列举如下。"ALM会话” :ALM会话定义为一逻辑会话,该会话中,例如图IA所示的两个或两个 以上的ALM节点(包括ALM节点或ALM-MCU节点)通过网络在多方应用中连接起来以在它 们之间同时交换数据包。“非ALM节点”(或“末端节点”)不执行任何ALM功能的节点。它通常是一个产生 内容的(源)节点或消耗内容的节点。换句话说,其为参加ALM会话的、不能执行基于ALM 的数据包路由的节点。“ALM节点”其为参加ALM会话且能够执行基于ALM的数据包路由的节点。“ALM-MCU节点”其对接收的内容进行内容混合并将该内容转发到另一个ALM节 点或ALM-MCU节点。“直接混合”即并不具体了解内容的起始源或内容,就混合所接收的所有内容的 MCU操作。“部分混合”即由ALM-MCU节点仅将一些ALM会话参加者的内容混合。“强制性混合”根据图11所示的ALM混合转发(AMF)表,由ALM-MCU节点混合特 定的内容。“选择性混合”:根据图11所示的混合跳距(MHL)表和分散型ALM混合状态(DAMS) 表,由ALM-MCU节点混合选择的内容。 "MCU到MCU信道”即ALM-MCU节点间的网络路径,用于对原始内容或部分混合的 内容进行流传输。“叶节点,,即直接连接至ALM-MCU节点的、不进行数据包路由的节点,例如图3中 的节点H和节点K。“非叶节点”即ALM节点或非ALM节点,其间接连接至ALM-MCU节点,且自己的内 容数据包由任何其它的ALM节点路由,例如图3中的节点A、B、C和D。“跳距”即从源节点到目标节点的传输次数,也称为“跳计数(hopcoimt) ”或“跳 数(hop (ping) number)”。根据本发明,使用源节点和下一个目标节点间的跳数来控制数据 的混合处理。本实施方式实现通过MCU节点的、分散型选择性动态的基于ALM的内容混合。使用 动态的基于ALM的路由表信息,选择性地混合应用层的内容数据包,以消除造成内容回声 的内容数据包的循环。本实施方式尤其提供一种用于在ALM-MCU节点之间执行分散型选择 性动态的基于ALM的内容混合的装置及方法。本技术例如适合于实时的音频/视频会议,以最小化路由收敛延迟造成的端到端数据包传递延迟并最小化内容(如音频)回声。ALM要求在给定的活动会话内的包含ALM节点和ALM-MCU节点的所有参加节点共 同负责通过最佳路径在各成员之间路由该群组的流数据。在会议会话中,ALM节点负责使 用ALM路由信息路由内容数据包。另一方面,ALM-MCU节点除了将内容转发给另一个ALM节 点、ALM-MCU节点或末端节点外,还混合该内容。如上述的在2008年12月1日提交的申请号为2008-306671的日本专利申请中所 述,包含ALM转发表的ALM路由信息通过个别的ALM节点或者通过一 ALM节点群组的协作, 基于网络和其它资源变动而动态构建。这种动态性导致了 ALM会话中的路径/方向频繁改变。新构建的ALM转发表播发到ALM会话中的所有ALM节点。本实施方式中,利用所 述ALM转发表,根据本实施方式所述的特定的方法构建包含ALM混合转发(AMF)表,混合跳 距(MHL)表和分散型ALM混合状态(DAMS)表的新表。本实施方式公开基于ALM的分散型 选择性动态混合的MCU装置及相关方法。所述装置消除导致在ALM-MCU节点产生内容回声的内容数据包循环或重复,降低 内容回声并最小化会议会话延迟,实现沿ALM路径的混合负载的分布。目前,根据ALM路由表信息进行ALM数据包的路由。然而,ALM转发表根本未考虑 到ALM-MCU节点进行的内容数据包的混合操作。所以各ALM-MCU节点不掌握内容或内容的 源地混合所接收的所有内容数据包。由此,导致由以预混合的形式或原始形式接收来自同 一源的重复内容,从而造成内容回声问题。因此,本实施方式提供用于进行分散型选择性动态的基于ALM的数据(或内容) 的混合的装置及方法,以利用动态ALM路径的适应消除回声或降低内容延迟/抖动。此外, 也实现了沿ALM-MCU节点路径的混合负载的分布。在本实施方式中,如上所述,通过进行ALM路由表信息的动态分析和数据包混合 状态信息的构建来实现。在ALM-MCU节点中使用所述数据包混合状态信息进行强制性或选 择性的内容混合,以降低内容回声并保证将数据包延迟维持为最小。总之,本实施方式使用 MCU节点的ALM技术沿ALM路径动态路由原始内容数据包或部分混合的内容数据包,以实现 最小的端到端延迟和混合负载的分布。下面结合图表和流程图详细说明本实施方式。而且,本实施方式中,假设将本实施 方式应用于多点视频会议系统的情况来进行说明。多点视频会议系统中,通常利用MCU。图IA表示连接到本地网络134、136、138、140的多个ALM节点102、104、106、108、 110、112、114、116、118、120、122、124、126、128、130、132。而本地网络 134、136、138、140 可 以通过不同的网络链路142、144、146、148、152、150相互连接。最终,ALM会话中的所有节点 都连接在一个网络中,此网络使所有的节点相互连接。例如,作为属于各客户端的视频会议 应用程序的多媒体应用能够在ALM会话中互相之间同时交换AV流。每个ALM节点160(例 如,图IA的节点A)具有计算机系统,而且例如如图IB所示,具有包括处理器162、输入/ 输出(I/O)单元164、以及诸如存储器单元166和存储单元168的计算机可读介质的硬件 配置。图IA所示的每个节点例如可以是如图IC所示的移动电话170、电话会议装置174、 IP电话178、个人计算机(PC) 182或TV会议装置186等设备。例如如图IC所示,这些设备 170、174、178、182、186通过各自的链路172、176、180、184、188连接到本地网络190。
为了实现分散型动态选择性内容混合操作,网络中必须存在至少两个以上的 ALM-MCU节点。图IA以分别在各个本地网络136、138、140、134中的四个ALM-MCU节点102、 110、118、132,说明了这一点。然而,ALM-MCU节点可以位于网络中的任何部分,未必就在同 一本地网络中。这由N叉树算法和ALM节点混合(MCU)能力而决定。上述的2008年12月 1日提交的申请号为2008-306671的日本专利申请描述的群组成员功能便于ALM会话的形 成。基于ALM会话配置,ALM节点将其内容流传输至网络内的仅一个ALM-MCU节点。上述的2008年12月1日提交的申请号为2008-306671的日本专利申请中描述了 一例用于在ALM会话中形成本地网络和ALM节点的方法。ALM节点中的一个ALM节点能够 通过与所有其它ALM节点通信来进行路由信息的收集,并相互之间同时交换网络信息。该 节点负责收集用于形成覆盖网络的信息并以ALM转发表的形式将该信息播发到所有其它 节点。所有ALM节点使用该覆盖信息在节点间形成覆盖网络,以在应用层组播数据包。本实施方式尤其涉及ALM会话中的所有ALM-MCU节点执行的ALM-MCU动作。下面 参照图2和图3说明ALM-MCU节点面临的问题。图2示出根据本实施方式的ALM转发表的简单的例子,可用于说明问题。详细的 ALM转发表如图6所示,将在后面作为ALM混合转发(ALM)表予以解释。进而,图2中,仅以 说明为目的,通过查看图3使得跳计数(或跳数)可观化。如上所述,跳计数或跳数是从源 节点到目标节点的传输次数。换句话说,跳数是源节点和目标节点之间的节点数。如果目 标节点是最终的目标节点,本说明书中还可能称其为“末端节点”。换句话说,跳计数是用于 测量数据的源和数据的目标间距的一个路由度量(routing metric),它是等同于路由器的 数量(和具有类似功能的网络装置的数量),通过这些路由器,数据沿从源到目标的路径传 送。图3示出一例关于图2所示的转发表的ALM-MCU多媒体流场景。图4A至4D示出四个 子转发表的内容,在图2中所述四个子转发表连接在一起,其中图3所示的四个节点A至D 是传输源。如图9所示,ALM节点利用图10所示的指定消息格式交换ALM转发表。将在后 面详细说明图9和图10。图2中,“节点”列202表示流的源,且“下一个目标(NextDestination) ”(根据 具体情况,图中缩略为“下一目标(Next Dest)")列250例如表示待转发流的下一个目标。 图2中存在已被连接的四个子转发表,即,表1具有“节点”列202和“下一个目标”列250, 它们的字段范围分别是204至212和252至沈0,表2具有“节点”列214和“下一个目标” 列264,它们的字段范围分别是216至224和264至272,表3具有“节点”列226和“下一 个目标”列274,它们的字段范围分别是228至234和276至282,表4具有“节点”列236 和“下一个目标”列284,它们的字段范围分别是238至248和286至296。这些表分别表 示四个节点,即,如图3和图4A至4D所示的节点A(由302指定)、节点B(由308指定)、 节点C (由306指定)和节点D(由304指定)。这四个节点保持各自的源于各个节点的播 发树。图4A、4B、4C和4D分别对应表1、表2、表3和表4。每个节点的子转发表(表1至 表4)包含描述了 AV数据包要被转发到的下一个跳的转发表信息。所有四个节点(节点A 至D)接收所有相同的ALM转发表。每个节点使用这些ALM转发表构建在后面详细描述的 各自的AMF表、MHL表和DAMS表(分别见图6、图7和图8)。具体地,表1表示如图4A所示的节点A的ALM子转发表。该表可解释为如下。源 于源节点A(参见字段204)的AV数据包被转发至下一个目标的节点B (参见字段252)。接着,节点B(参见字段206)通过复制内容将接收的数据包分别转发至下一个目标的节点 C(参见字段254)和节点D(参见字段256)。节点C(参见字段210)和节点D(参见字段 212)是末端节点,因此它们不转发(参见字段258和沈0)已接收的源为节点A(参见字段 204)的数据包。这样,表1表示节点C和节点D分别距离源节点A—个(1)跃距(节点B)。表2表示如图4B所示的节点B的ALM子转发表。源于源节点B (参见字段216) 的数据包被转发至作为下一个目标节点的节点C (参见字段沈4)和节点D (参见字段沈6)。 而节点A(参见字段220)和节点C(参见字段22 为末端节点,因而不转发(沈8,270)接 收的数据包,节点D (参见字段224)将接收的源于源节点B的数据包转发至节点A (参见字 段272)。这样,表2表示节点A距离源节点B —个(1)跃距(节点D)。表3表示如图4C所示的节点C的ALM子转发表。源于源节点C(参见字段228) 的数据包被转发至节点B (参见字段276)。节点A (参见字段230)使用来自源节点C的所 有数据包,而节点B (参见字段^3 和节点D (参见字段^34)将接收的源于源节点C (参见 字段228)的数据包分别转发至节点D (参见字段观0)和节点A(参见字段观幻。这样,表 3表示节点A距离源节点C两个(2)跃距(节点B和节点D),节点D距离源节点C 一个(1) 跃距(节点B)。表4表示如图4D所示的节点D的ALM子转发表。源于源节点D (参见字段238) 的数据包分别被转发至节点A (参见字段观6),节点B (参见字段观8)和节点C (参见字段 290)。同时,节点A(参见字段M4),节点B(参见字段M6)和节点C(参见字段M8)使用 从源节点D (参见字段238)接收到的所有数据包,并不进一步地转发(参见字段四2,四4 和四6)。这样,表4表示,节点A,节点B和节点C直接连接到节点D,它们距离源节点D为 零(0)跃距。ALM-MCU节点在转发至指定的下一个目标之前混合所接收的内容。对于ALM实例 中的该假定所带来的问题,使用图3和图4A至4D的例子予以说明。各个ALM-MCU节点302、 304、306和308负责混合各自的内容与所有叶节点的内容,然后再基于ALM转发表转发至其 它的ALM-MCU节点。图3和图4A至4D重点针对图IA所示的ALM-MCU节点102,110,118 和132提供一种基于图2所示的ALM转发表的数据包转发操作序列示意。作为一个非限制 性实施例,整个实施方式中重点说明节点B(由图3的308指定)的混合操作。参考节点A的表1,AV流通过路径334(参见图3和图4A)从节点A流向节点B。 节点B接着混合以下内容(1)通过链路336来自叶节点H(由310指定)的内容;(2)通 过链路334从节点A接收的内容;(3)自身的内容(如果存在);(4)通过链路3 从节点 C接收的内容;以及(5)通过链路332从节点D接收的内容,如果可能的话,还包括其它的 内容(也就是说,此说明可应用于所有类型的ALM表,但是为了反映图13B的例子,只有恰 当选自⑴到(5)的内容被混合)。混合的内容接着通过链路3M转发至节点C并且通过 链路322转发至节点D(参见图3和图4B)。节点D将通过链路322从节点B接收的内容通 过链路312转发至节点A(参见图3和图4B)。同样,节点B负责通过链路338转发混合的 内容至节点H(其为非ALM节点)(参见图3),但并不转发节点H自身的内容以避免回声。类似的,节点C通过链路318接收来自节点D的内容,并通过链路340接收来自叶 节点K (由344指定)的内容(参见图3和图4D),并且,将它们与节点C自身的内容(如 果存在)混合,然后再通过链路3 将所述混合内容转发至节点B(参见图3和图4C)。节点C还负责混合除节点K的内容外的、通过链路3沈、3对和318接收的所有内容,并且通过 链路342转发至节点K(参见图3)。另一方面,节点D混合其自身的内容(如果存在)与 通过链路320、322和330由节点B转发的内容(参见图3和图4Α至4C),然后再转发至节 点Α(参见图3和图4Β至4C)。节点A接着混合通过链路312、314和316接收的所有内容 (参见图3和图4Β至4D),然后再转发至其叶节点(如果存在)。举例说明,如果关注与节点C流有关的节点B的内容、就可以检查到通过采用ALM 路径未知混合(ALM path unaware mixing,进行混合的节点不掌握ALM路径路由正在变化 且内容路径的切换正在发生)的现有MCU解决方案存在的问题。由节点B混合的、通过链 路3 的内容可以表示为((A+H)+C+D)的内容(通过链路334+336+328+332接收)。然而, C的内容是(K+D)的混合内容(通过链路340+318接收)。在这种情况下,节点K通过链路 342接收节点D的重复的内容,这会产生回声。为了消除重复的内容的混合,ALM-MCU节点 需要掌握其正在处理的内容和被使用的相关路径。本实施方式通过智能检测沿着原始ALM路径什么内容要在转发前混合以及什么 内容要在不混合的状态下转发来解决该混合的问题,从而维持了最小延迟和负载分布。本 说明书余下部分将参照图5或后面的图进一步详细说明本实施方式。图5表示根据本实施方式的、基于ALM的分散型选择性动态混合的MCU的装置。图 5示出本实施方式的关键的装置500,其包括两个主要单元即ALM表生成单元502和ALM混 合单元504。所述ALM表生成单元502包括ALM消息处理单元562、ALM混合转发(AMF)表 数据库506、混合跳距(MHL)表数据库508、分散型ALM混合状态(DAMQ表数据库510、混 合跳距(MHL)分析器512和分散型ALM混合状态(DAMQ表生成器514。所述ALM混合单 元504包括强制性混合单元532和选择性混合单元568。所述强制性混合单元532进一步 包括ALM/非ALM选择器538。所述选择性混合单元568进一步包括非叶流选择器M0、叶 流选择器544和混合单元M6。该装置500进一步包括路由引擎552和转发单元554。图 6示出一例ALM表,图7示出一例MHL表,图8示出一例DAMS表。所述ALM表生成单元502负责处理与ALM转发表相关的信息,所述ALM混合单元 504的强制性混合单元532和选择性混合单元568利用该信息。例如,实现方法可以是系统 地分析混合跳距并构建DMST表(如图18的1804),该DMST表用来判定AV混合操作(如图 18的1806)。MHL分析器512系统地分析混合跳距以构建图7中的MHL表700。DAMS表生 成器514构建图8的DMST表800。图9示出ALM节点间的消息交换序列,而图10示出ALM-MCU消息的格式。如图9 所示,ALM-MCU节点908的ALM消息处理单元562通过接口 564接收来自ALM转发表构建 节点902的ALM转发表更新910和ALM会话消息912。带宽公平ALM转发表播发器904将 这些表或消息发送至ALM-MCU节点908的ALM消息处理单元562,在上述的2008年12月 1日提交的申请号为2008-306671的日本专利申请中描述了所述带宽公平ALM转发表播发 器904。图10示出ALM-MCU消息的格式,其具有起始节点IP地址字段1002、时间标记字段 1004、类型字段1006、ALM会话媒体信息字段1008 (包括媒体类型、发送/接收端口信息和 IP地址)、ALM转发表字段1010、ALM/非ALM状态字段1012和预约字段1014。类型字段 1006定义消息携带的信息类型,例如ALM转发表更新910或ALM会话消息912。这里,上述的装置可能是软件、硬件、或它们的组合。图11描述了一例配置。更具体的是,图11描绘一例实施图5的基于ALM的分散型选择性动态混合的MCU的装置的 ALM-MCU装置的。以下说明中根据需要使用图11。进一步的,图5所示的装置例如可以由中央处理器(CPU)、存储控制程序的存储介 质如只读存储器(ROM)、工作存储器如随机存储器(RAM)、以及通信电路(未图示)来实现。 参照图1B,CPU对应于处理器162,ROM和RAM对应于作为计算机可读介质的存储器单元 166,并且通信电路对应于I/O单元164。在这种情况下,通过在CPU中执行存储在R0M(计 算机可读介质)内的控制程序(组播通信程序)实现上述各个部分的功能。接着,使用图18至23详细说明具有上述配置的装置的操作。图18表示基于ALM 的分散型选择性动态混合的MCU的操作的主要步骤,图19表示MHL表构建方法的步骤,图 20表示DAMS表生成的步骤,图21表示ALM-MCU节点的混合操作的步骤,图22表示强制性 混合操作的步骤,图23表示选择性混合操作的步骤。图19和图20示出ALM表生成单元502的关键步骤。一旦接收到ALM转发表更新910或ALM会话消息912 (1902),就会构建图6所示的 AMF表600,其中的ALM/非ALM字段(列618)将通过链路564根据ALM会话消息912被更 新至AMF表数据库506 (1904)。图6是比图2更详细的AMF表,其包含完整的信息。为便于说明,图6的表项目保 持与图2相同逻辑的同时具有通用性。列602表示AV内容起始源节点的IP地址,未考虑 AMF表所在的当前ALM-MCU节点(例如,图2的节点A表示作为节点A的树源的项目604)。 列612表示特定的AV数据包的源地址(例如,13. 168. 5. 2),列614表示源端口号(例如, 13. 168. 5. 2 端口 #5555),列616表示所支持的传输协议(例如,TCP或UDP),列618表示 ALM或非ALM的信道类型,列620表示下一个目标地址(例如,13. 168. 4. 3),最后,列622表 示下一个目标端口号(例如,13. 168. 4.3 端口 #6666)。字段604 (节点A)、606 (节点B)、 608(节点C)和610(节点D)表明所述ALM树的根段,所述ALM树与图2所示相同。每个表 项目6M至662表示基于ALM转发表更新910或ALM会话消息912信息的、ALM会话中的 每个节点的相关转发表。根据ALM转发表更新910或ALM会话消息912信息,该表呈动态 变化。接着,根据图5、图7和图8说明MHL表和DAMS表的构建方法。假设AMF表600 (如图6所示)已经建立(1902),下面着重于MHL表的构建。MHL 分析器512通过链路518访问AMF表600以建立MHL表700 (如图7所示),目的是确定混 合类型(混合或转发)并检测叶节点(1906)。本发明要构建如图7所示的MHL表700。在 说明使用MHL分析器512构建MHL表700的方法之前,说明MHL表的结构。图7中,列702是树源信息的项目,其与图6中的列602的项目相同,而列704至 712是下一个目标节点地址信息的项目,其与图6中的列620的项目相同。行7 保存着混 合状态信息,而行7 为每个下一个目标节点保存叶或非叶的状态信息。MHL分析器512构建所述MHL表700由并通过链路520将已构建的MHL表700存 储于MHL表数据库508。下面,使用图12A至12B和13A至13D详细说明本实施方式的特征即MHL表。这 些图示出了具有四个节点的本实施方式。由于MHL表是为各个节点(自节点)制作的,在 本实施方式中存在如图13A至13D的四个MHL表。图12A与图3对应,表示节点间的转发路由,而图12B与图2对应,表示各个节点的路由表。图13A至13D显示在图12A和12B所 示的路由中,节点A至D根据如下规则生成的MHL表(参见图7)。在图13A至13D中,垂直 的A、B、C和D表示源节点,而水平的A、B、C和D表示下一个目标节点。“混合状态”表示各 个节点(自节点)执行转发处理时的三个状态之一状态(F)只执行转发处理;状态(MF) 先执行混合处理后再执行转发处理;以及状态(X)既不执行混合处理也不执行转发处理。 状态(X)意味着在自节点重放声音和/或视频,即只执行本地使用。“叶/非叶”状态表示 是否下一个ALM-MCU节点直接或间接连接至该ALM-MCU节点。在垂直的A、B、C和D与水 平的A、B、C和D交叉的字段内,以跳距显示数据被转发的次数。在数据不被转发而被直接 发送时这些字段显示跳距“0”,在数据被转发时,这些字段显示表示跳距的值(自然数1,2, 3···),其中跳距等于传输次数。如果数据既不直接被发送也不被传输,则字段为空白符。在各个节点(自节点)接收数据时,根据跳距表的、对于下一个目标节点的跳距 组合,本实施方式执行混合和转发处理、仅执行转发处理、或执行保持接收数据不变的处理 (即不执行混合也不执行转发),其中跳距组合与多个源节点(包括主节点)相关。这时, 仅在数据不可能重叠时,才会执行混合处理。本实施方式中,保持接收数据不变而即不执行 混合也不执行转发,意味着在自节点重放声音和/或视频。更具体的,在每个节点(自节点)处的对于下一个目标节点的“混合状态”根据如 下规则确定(1)在字段都是空白符的情况下,既不执行混合处理也不执行转发处理("X")。(2)字段里有除0以外的多个数值的情况下,仅执行转发处理而不执行混合处理 (“F,,)。(3)其余的情况下,先执行混合处理后再执行转发处理(“MF”)。例如,在图13B中,组合Cl显示“1+0+空白符”。在这种情况下,根据上述规则(3) 执行混合处理(“MF”)。因此,来自节点A的内容在节点B(自节点)处与节点B的内容混 合并被转发至下一个目标节点C。经过如此混合后,混合内容(A+B)不能分离。相比之下,在图13B中,组合C2显示“1+0+1”。在这种情况下,根据上述规则O), 只执行转发处理而不执行混合处理(“F”)。因此,来自节点A的内容和来自节点C的内容 在节点B(自节点)处不与节点B的内容混合,就被转发至下一个目标节点D。因内容A、B 和C不在自节点B处混合,如此转发的内容(A、B、C)能够在下一个目标节点D相互分离。 如果在这种情况下,如果违背了上述规则( 地在节点B(自节点)处执行混合处理,则混 合的内容(A+B+C)被转发至下一个目标节点D。在节点D,如图13D的C3所示,应将内容B 和C转发至下一个目标节点A。然而,内容B和C不能从混合内容(A+B+C)中分离。在混合 的内容(A+B+C)从节点D转发至下一个目标节点A时,内容A重复(等于重叠),这可能造 成回声(两次听到自己的声音)。相似的,在图13D中,组合C3显示“1+2+0”。在这种情况下,根据上述规则O),仅 执行转发处理而不执行在自节点D处的混合处理(“F”)。因此,来自节点B的内容和来自 节点C的内容在节点D(自节点)处不与内容D混合,就被转发至下一个目标节点A。因内 容B、C和D不在自节点D处混合,如此转发的内容(B、C、D)能够在下一个目标节点A处相
互分离。因此,如果数据不可能不重叠,则执行混合处理,而如果提供多个传输数据,一旦执行混合处理,数据就可能重叠,则只执行转发处理。用这种方法,在改善因在接收端产生 的回声造成的通信质量下降的同时,能够最大程度地改善信道使用效率。进一步,图14A至14B和15A至15E显示了具有五个节点的情况下的第一实施例, 图16A至16B和17A至17E显示了具有五个节点的情况下的第二实施例。图14A和图16A示出节点间的传输路由,图14B和图16B示出节点内的路由表,图 15A至15E和图17A至17E分别示出节点A至E准备的MHL表。这些图的观察方法与上述 四个节点的情况的实施例相同,而且图15A至15E和图17A至17E的跳距分别由图14B和 图16B的路由表定义。作为结果,例如,在图15A的自节点A处的下一个目标节点B和节点E的“混合状 态”确定为“MF”,这意味着执行了混合处理和转发处理,因为即使执行了混合处理,节点A 的数据也不可能重叠。同理,在图17A的自节点A处的下一个目标节点B的“混合状态”确 定为“MF”。另一方面,图15D的自节点D处,从源节点B、D和E到下一个目标节点C的跳距分 别是“3”、“0”和“ 1 ”。在这种情况下,根据上述规则(2),“混合状态”确定为“F”,因为在下 一个目标节点C的列有多个除0外的数值,即“3”和“1”。因此,源节点B、D和E的内容并 不在自节点D处混合就被转发至下一个节点C。同理,在图17D的自节点D处的下一个节点 C的“混合状态”和在图17E的自节点E处的下一个节点D的“混合状态”都被确定为“F” 以执行转发处理而不执行混合处理。根据本实施方式,即使节点的数目增加到四以上,也能在改善因在接收端产生的 回声造成的通信质量下降的同时,最大程度地改善信道使用效率。接着,在图19的步骤1908中,开始构建过程前,将MHL表700的各项目(图7中的 从列704,行716至列712,行724)初始化为“0”值。对MHL表700填入数值的过程(1910) 继续进行直到“树源”列602的所有项目(行拟4至行66 的处理完毕(193 。换句话 说,通过执行下面的步骤,由图19的步骤1932证实MHL表构建完成步骤1910。对图6的行 6 至662的所有项目的“树源”列602的所有字段予以检查。从IP#A(树源字段604)开 始,建立各自的MHL表(参见图7)项目(1914)。IP#A为MHL表700的位于列702,行716 上的项目。接着,步骤进到“树源”(602)的列612的源地址字段(1916)。从AMF表600中 的每个“源地址”项目(1918)开始,参照其各自下一个目标地址字段(1922)。就IP#A而言, 过程开始于源地址(列612,行624)和目标地址(列620,行624)。相似的,对于与源地址 有关的所有下一个目标地址项目(1拟4),执行从源到目标地址的跳计数(1934)。例如,因 IP#A (列612,行624)和IP#B (列620,行624)直接连接,因为其之间的跳计数为“0”。然 而,IP#C (歹Ij 620,行 626)和 IP#D (列 620,行 628)距离源地址 IP#A (列 612,行 624) “1” 个跃距。接着,在MHL表700中,对与每个树源地址有关的下一个目标节点地址(704、706、 708,710和712)进行跳计数信息的更新(1928)。根据上面的实施例,IP#C和IP#D的各自 的项目内(列716,行708和列716,行710)具有项目“1”。一旦完成MHL表的构建,就要构 建DAMS 表800 (1930)。DAMS表生成器514通过链路522访问MHL表数据库508,构建所述DAMS表800。 构建的DAMS表800通过链路5 储存在DAMS表数据库510中。
一旦完成或更新完MHL表Q002),就开始构建DAMS表。该过程中通过检查每一 列(2008)考虑MHL表700中的“目标节点地址” (704、706、708、710和712)的所有项目 (2004)。如果“下一个目标节点地址”行的所有项目值是“0”(2012),则MHL表700的混合 状态字段(726)标记为“X”,表明不存在下一个目标(例如,IP#B) (2010)。如果非零项目 不同(例如,1或2或2以上的组合)(2014),则MHL表700的混合状态字段(726)标记为 “F”,表明ALM-MCU节点转发其接收的所有内容(例如,IP#A)(2016)。如果非零项目相同 (例如,所有的都是“1”或都是“2”等),则MHL表700的混合状态字段(726)标记为“M”, 表明ALM-MCU节点混合并转发其接收的所有内容(例如,IP#D) (2020)。接着,对于特定的“下一个目标”,MHL表项目“叶/非叶”字段(728)需要编辑为 NL (非叶)或L(叶)。在混合状态是“X”或“F”的情况下,“叶/非叶”字段(728)编辑为 NL (非叶)^)24),否则,在“M”的情况下,编辑为L (叶)^)22)。直到完成MHL表700中的所有“目标节点地址” (704、706、708、710和712)对应 的“叶/非叶”字段的处理,继续上述过程O018)。一旦完成,具体对DAMS表800 (图8)的 “最终混合状态”列808进行更新O026)。特定的节点(如,节点B(308))使用DAMS表800去决定对来自不同的多个树源 (804)节点的每个AV流进行的AV操作。因此,所述DAMS表构建节点在构建自己的DAMS表 800前必须执行自我识别。接着,为了确定自我身份(808)而确定自身IP地址0028)。这可以参照其IP地 址或任何其它的地址表示法的节点本地网络配置文件。针对与DAMS表项目列804对应的 AMF表600的每个“树源”列602,所述DAMS表800被更新。通过参照与AMF表600中“源 地址”字段(612)有关的MHL表700的“下一个目标节点地址”(列702) (806),对所有的自 节点地址O030)执行此操作直到最后一个项目为止0034)。在对DAMS表800生成适当的 项目(808)前,检查作为MHL表700的混合状态(726) (2036)。如果混合状态是“X” (2046),则无需对AV内容进行任何操作O038)。然而,如果 混合状态是“M”(2048),则需要进行混合操作Q040);其它情况下,将AV内容转发至下一 个目标0044)。直到对每个节点自身在DAMS表800中到达“树源”和“下一个目标节点地 址”的最后的项目(2050),继续进行上述步骤(2042和2052)。一旦完成所述DAMS表的构 建,就能够进行AV数据包的处理。在混合状态为“M”的情况下(2048),随后执行转发操作, 所以将最终混合状态列编辑为“MF”。例如,假设节点B正在建立自己的DAMS表800,其就需要掌握自身的IP地址 IP#B (802)。在此假设前提下,要参照MHL表700的特定树源地址列702。建立DAMS表800 的过程开始于参照项目IP#A 716并检查行716的跳计数项目。既然IP#C (列708,行716) 和IP#D (列710,行716)存在项目“ 1 ”,所述DAMS表800就会以IP#C和IP#D作为下一个目 标地址(806,812和814)的项目。MHL表700的项目(列708,行726)和(列710,行726) 的混合状态是“M”,所以最终混合状态标记为“MF”,并且,基于图20 (2040, 2044),所述混合 的数据包将被转发。对图7的所有树源(70 执行相同的步骤。与AV数据包处理相比,所述DAMS表的更新是一个独立的过程。基于DAMS表的当 前状态进行AV数据包的处理。一旦接收到执行AV的混合010 的触发信息(2040),就进行强制性混合Q104)或选择性混合0106)。通过经由链路516参照AMF表数据库506,强制性混合单元532混合由路由引擎 552从其它ALM-MCU节点556接收的到来AV流550。ALM/非ALM选择器单元538识别ALM 和非ALM流。通过链路536将强制性混合的内容转发至转发单元554。另一方面,ALM混合 单元504通过各自的链路5 和5 参照MHL表数据库508和DAMS表数据库510,以混合 从其它的ALM/末端节点直接接收的AV流550或来自强制性混合单元532的AV流。接着,包括非叶流选择器单元540和叶流选择器单元M4的选择性混合单元568 分离通过链路542直接被转发的AV流或在通过链路548转发前被混合单元546混合的AV 流。最后,转发单元5M通过链路560将所有AV流转发至路由引擎552,以基于ALM表600 被转发至下一个目标558。与由图3例示的节点B(由308指定)的ALM-MCU操作相关地,图11示出进行特 定的混合操作的装置。该装置示意了用于在保持对节点B处的分散型的ALM AV会议应用 的动态且选择性混合的同时解决循环问题的方法。强制性混合单元1122和选择性混合单 元1160分别与图5中的532和568相同,但被更加详细地示出。如前面所定义的,强制性混合状态的AV流必须由ALM-MCU节点只参照AMF表600 进行混合。同时,选择性混合状态的AV流由ALM-MCU节点基于DAMS表800和MHL表700 进行混合。这两种混合操作的作用互不相同。强制性混合确保使叶节点获取通过ALM节点 混合的、除了其内容之外的所有的AV流。另一方面,选择性混合确保来自叶节点的AV流被 混合和/或转发至下一个节点。例如,就节点B(指定为308)来说,需要确保节点H(通过链路1116)获取除节点 H本身的AV数据包的所有其它AV数据包。同样,如果在节点B处存在其它叶节点的话,要 求相同(通过链路1118)。同时,其它AV内容需要通过链路1120转发至选择性混合单元 1160(568)。从节点A(通过链路1106)、节点C(通过链路1108)、节点D(通过链路1110)、节 点H(通过链路1112)、以及其它叶节点(如果存在)(通过链路1114),接收AV流。关于节 点的标号请参考图3。所有的AV流基于ALM/非ALM选择器1138的输入都映射到混合单 元1104。图22示出强制性混合单元1122(532)的关键步骤。一旦接收到混合的触发信息 (2202),基于存储在AMF表数据库506中的AMF表600,来自与源地址612和源端口号614 相关的所有信道/端口的AV数据包将为在节点B进行的AV数据包处理(2204、2206)成 为有效。ALM/非ALM选择器1138通过链路1134参照AMF表数据库506以识别信道类型 618(2212)。如果对于所有的非ALM信道Q230)来说是非ALM信道选择器(2218和2216)(例 如,1112和1114),则混合除其自身的非ALM输入信道外Q236)的ALM输入信道和非ALM 输入信道的AV流0234)(例如,对于非ALM信道H(通过链路1116)和其它叶(通过链路 1118)的1103和1117操作)。混合的AV内容在各自的非ALM信道/端口 1116和1118输 出0238)。至于ALM信道选择器0214和2220),所有非ALM信道/输入流Q224)的的 AV内容被混合(22 和222 并通过链路1120转发至选择性混合单元1160(568) (2228)。 对所有输入端口基于AMF表输入进行ALM的AV内容和非ALM的AV内容的混合(2206和 2210)。
接着,识别通过链路1120的强制性混合器的流和通过链路1106、1108和1110的 独立的输入流(2304),由此进行选择性混合(2302),其步骤见图23。然后为进行选择性混 合、识别叶节点/非叶节点并进行MHL识别。为达到上述目的,非叶流选择器1126、叶流选 择器1146和MHL检测器1142分别通过链路1136和链路1140访问MHL表数据库508和 DAMS表数据库510 (2306)。在DAMS表800中,参照自节点地址字段802和最终混合状态字 段808 (2308),而在MHL表700中,参照叶/非叶字段728 (2310)。利用这些字段信息,通过 非叶流选择器1126、叶流选择器1146和MHL检测器1142这些单元识别所有的叶节点和非 叶节点的混合状态0312)。DAMS表800中的最终混合状态字段808表示在AV流被转发至 下一个节点前进行的实际操作(无操作,仅转发,混合和转发)。接着,基于是否为叶节点0315)且基于混合状态(23 和2318),做如下决定。如 果是叶节点0316)并且混合状态0328)是“M”(2332),则在“叶流选择器”单元对与MHL 表700中的“叶”节点(728)有关的、在DAMS表中标记为“M”(808)的输入流进行混合操作 (2336),否则Q330)不对输入流进行任何操作(2334),仅将AV内容转发至各自的输出端口 (2338) 0如果是非叶节点(2314)且混合状态(2318)是“F”(2322),则在“非叶流选择器” 单元对与MHL表中的“非叶”节点(728)有关的、在DAMS表中标记为“F”的输入流进行转 发操作(23 ),否则Q320)不对输入流进行任何操作0324)。所有混合或未混合的流都 转发至各自的输出端口 0338)。参照图2、3、6、7和8,节点A(302)、节点C(306)和节点B(308)的AV内容在各自 的输出端口 1150、1152和IlM未混合而被转发。然而,来自节点A和节点B的内容被混合 (1156),以通过输出端口 1158转发至节点C。例如,本实施方式中,由于节点C将独立地接 收节点D的内容,只有节点A和节点B的内容被混合,这样就解决了图3所示的问题。也就 是说,在图3中,节点B必须掌握其只混合来自节点A的内容和其自身的内容,不应混合来 自节点D或节点C的内容。如图13B所示,节点B的MHL表中包含了该知识,以避免任何的 混合问题。在上述解决方案中,通过基于MHL表和DAMS表的选择性混合操作,解决了基于ALM 的AV会议会话中的数据包循环问题,而通过动态参照ALM表构建AMF表、MHL表和DAMS表, 确保了不断的动态变化性。工业实用性本发明可应用于在多节点间通过网络对数据进行接收和转发的组播通信方法及 装置,该方法及装置特别用于但并不专用于音频会议和视频会议系统。
权利要求
1.根据包含有数据的源节点和目标节点的路由信息,在多节点间通过网络对所述数据 进行接收和转发的组播通信方法,所述组播通信方法包括以下步骤在第一节点接收第一数据和第二数据;根据所述路由信息,将所述第一数据和所述第二数据转发至下一个目标节点;以及 根据所述第一数据的第一跳数和所述第二数据的第二跳数,决定是否在所述第一节点 混合所述第一数据和所述第二数据,其中,所述第一数据的所述第一跳数定义为所述第一数据的所述源节点和所述第一数 据的所述下一个目标节点间的节点数,所述第二数据的所述第二跳数定义为所述第二数据 的所述源节点和所述第二数据的所述下一个目标节点间的节点数。
2.如权利要求1所述的组播通信方法,所述决定是否在所述第一节点混合所述第一数 据和所述第二数据的步骤进一步包括在所述第一跳数和所述第二跳数都大于零时,决定 不在所述第一节点混合所述第一数据和所述第二数据的步骤。
3.在多节点间通过网络对数据进行接收和转发的组播通信装置,所述组播通信装置包括接收单元,从源节点接收所述数据;路由表,存储包含所述数据的所述源节点和目标节点的、所述数据的路由信息; 转发单元,根据所述路由表的所述路由信息,将所述数据转发到下一个目标节点; 跳距表,包括被转发的所述数据的、从所述源节点到所述下一个目标节点的跳数;以及 混合处理单元,对从另一个节点接收的数据进行混合处理, 其中,所述混合处理单元根据所述跳距表中的所述跳数,进行所述混合处理。
4.如权利要求3所述的组播通信装置,所述路由信息还包括所述数据的路由顺序,并且所述跳数定义为所述源节点和所述下一个目标节点之间的所述节点的数。
5.如权利要求4所述的组播通信装置,所述跳距表为所述多个节点的每个节点生成, 并对所述源节点和所述下一个节点的所有组合决定所述跳数。
6.如权利要求4或5所述的组播通信装置,所述跳距表包括是否执行所述数据混合的每个所述下一个目标节点的状态信息,以及 所述混合处理单元根据所述状态信息执行所述混合处理。
7.如权利要求6所述的组播通信装置,如果所述下一个目标节点中的一个目标节点的 所述状态信息表示转发处理,则所述转发单元对所述下一个目标节点中的所述一个目标节 点进行转发处理,而不在所述混合处理单元中进行所述混合处理。
8.如权利要求7所述的组播通信装置,如果所述下一个目标节点中的一个目标节点存 在多个除零以外的所述跳数,则所述下一个目标节点中的所述一个目标节点的所述状态信 息表示转发处理。
9.如权利要求6至8中的任一项所述的组播通信装置,如果所述状态信息表示混合处 理,则所述混合处理单元执行所述混合处理,所述转发单元将在所述混合处理单元中混合 的混合数据转发至所述下一个目标节点。
10.如权利要求6至9中的任一项所述的组播通信装置,如果所述状态信息表示重放处 理,则对由所述接收单元接收的所述数据进行重放而不进行混合处理或转发处理。
11.存储在计算机可读介质上的程序,其使计算机执行权利要求1所述的所述组播通信方法。
12.存储可执行的组播通信程序的计算机可读介质,所述组播通信程序使计算机执行在第一节点接收第一数据和第二数据;根据路由信息,将所述第一数据和所述第二数据转发至下一个目标节点;以及 根据所述第一数据的第一跳数和所述第二数据的第二跳数,决定是否在所述第一节点 混合所述第一数据和所述第二数据,其中,所述第一数据的所述第一跳数定义为所述第一数据的所述源节点和所述第一数 据的所述下一个目标节点间的节点数,所述第二数据的所述第二跳数定义为所述第二数据 的所述源节点和所述第二数据的所述下一个目标节点间的节点数。
全文摘要
公开了根据包含有数据的源节点和目标节点的路由信息,在多节点间通过网络对所述数据进行接收和转发的组播通信方法。该方法包括如下步骤在第一节点接收第一数据和第二数据;根据所述路由信息,将所述第一数据和第二数据转发至下一个目标节点;根据所述第一数据的第一跳数和所述第二数据的第二跳数,决定是否在所述第一节点混合所述第一数据和所述第二数据。所述第一数据的所述第一跳数定义为所述第一数据的所述源节点和所述第一数据的所述下一个目标节点间的节点数,并且所述第二数据的所述第二跳数定义为所述第二数据的所述源节点和所述第二数据的所述下一个目标节点间的节点数。
文档编号H04L29/08GK102077508SQ20098012471
公开日2011年5月25日 申请日期2009年12月18日 优先权日2009年3月18日
发明者艾蒂肯·坎德萨米·卡鲁皮亚 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1