CN102763359A - 多播网络中流控制传输协议的协议增强器 - Google Patents
多播网络中流控制传输协议的协议增强器 Download PDFInfo
- Publication number
- CN102763359A CN102763359A CN2009801634213A CN200980163421A CN102763359A CN 102763359 A CN102763359 A CN 102763359A CN 2009801634213 A CN2009801634213 A CN 2009801634213A CN 200980163421 A CN200980163421 A CN 200980163421A CN 102763359 A CN102763359 A CN 102763359A
- Authority
- CN
- China
- Prior art keywords
- data packets
- data
- packet
- server
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims abstract description 24
- 230000008569 process Effects 0.000 claims abstract description 8
- 230000004044 response Effects 0.000 claims abstract description 6
- 238000012545 processing Methods 0.000 claims description 14
- 239000000872 buffer Substances 0.000 claims description 8
- 230000003139 buffering effect Effects 0.000 claims description 6
- 230000003111 delayed effect Effects 0.000 claims 4
- 238000005457 optimization Methods 0.000 description 40
- 230000014509 gene expression Effects 0.000 description 17
- 238000012546 transfer Methods 0.000 description 8
- 235000014510 cooky Nutrition 0.000 description 6
- 230000008859 change Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000008034 disappearance Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1836—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with heterogeneous network architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1836—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with heterogeneous network architecture
- H04L12/184—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with heterogeneous network architecture with heterogeneous receivers, e.g. layered multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1854—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/189—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast in combination with wireless systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0092—Error control systems characterised by the topology of the transmission link
- H04L2001/0093—Point-to-multipoint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1016—IP multimedia subsystem [IMS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/326—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
通信量优化器通过多播网络在服务器和多个客户机中的至少一个客户机之间使用单播协议以促进数据分组的通信。通信量优化器包括通信处理器和分组处理器。通信处理器使用单播协议从服务器接收包括关联数据的数据和数据分组二者。关联数据包括服务器的IP地址和多个客户机中可用于通信的至少一个客户机的IP地址。分组处理器响应于对数据分组的分析来处理数据分组以优化数据传输,并且使用单播协议通过多播网络将处理后的数据分组转发到多个客户机中的位于所接收的IP地址中相应的IP地址处的至少一个客户机。
Description
技术领域
本布置向在使用标准协议之外的组件的多链路/多路径联网环境下采用流控制传输协议(SCTP)和流控制传输协议-部分可靠性(SCTP-PR)的系统提供多播支持。
背景技术
SCTP是由因特网工程任务组(IETF)标准化的可靠的传输协议。SCTP支持诸如多重流传输和多宿主(multihoming)之类的特征,如在IETF RFC4960“stream control transmission protocol”中描述的,以及在S.Fu和M.Atiquzzaman在2004年4月的电气与电子工程师协会(IEEE)CommunicationMagazine中的标题为“SCTP:state of the art in research,products,and technicalchallenges”中描述的,其允许SCTP实现方式向上层协议提供部分可靠的数据传输服务。
在2005年的National Computer Science Postgraduate Colloquium(NaCSPC)中发现的F.Yong,W.Chee和S.Ramadass的标题为“M-SCTP:transport layer multicasting protocol”的论文中描述了利用多播SCTP(M-SCTP)的方案。该方案在SCTP服务器和其SCTP客户机之间添加了M-SCTP服务器堆栈。该服务器堆栈管理多播服务的资源并且控制多播成员。然而,该方案通过使用递归的单播协议消息传输来实现多播性能。换言之,服务器堆栈通过复制数据分组并且使用多个单播协议消息传输将它们单独地发送给每个客户机来实现多播。因此,该方案不能解决源自于低带宽效率或者差的系统可扩展性的问题。
存在向SCTP添加多播支持的方案。在该方案中,在服务器侧打开包括多个关联(association)的一对多样式(style)的SCTP套接字(socket)。每个关联具有两个端点,在具有单播能力的多播网络中,一个端点在服务器处,另一个端点在相应的客户机处。此外,每个关联包含对应于多播网络链路的一个路径,以及对应于单播网络链路的其它路径。SCTP套接字的多个关联中的多播路径共享相同的多播IP地址和传输端口地址。因此,服务器能够通过多播发送数据分组的一个副本,但是却能够抵达所有的客户机。结果,可以实现高的带宽效率并且采用这种方案的系统将在多播网络中客户机数量增加的情况下良好地进行扩展(scale)。
然而,前述的方案需要对协议进行某些改变。例如,必须修改SCTP协议使得在服务器侧跨越(across)套接字中的多个关联,通过共享的多播路径仅仅发送数据分组的一个副本。在其中对协议的改变进行限制的应用中,这可能阻止了该方案操作。另外,由于共享的多播路径,需要所有客户机具有相同的SCTP端口地址,这是因为所有的客户机要接收相同的一组数据分组。具有被占用的端口地址的客户机可能不能使用相同的端口地址来接收多播数据分组。本布置将允许在不对SCTP或SCTP-PR协议进行明显的改变的情况下使前述的方案操作。
发明内容
通信量(traffic)优化器通过多播网络在服务器和多个客户机中的至少一个客户机之间使用单播协议,来促进数据分组的通信。通信量优化器包括通信处理器和分组处理器。通信处理器使用单播协议从服务器接收包括关联数据的数据和数据分组二者。关联数据包括服务器的IP地址和多个客户机中可用于通信的至少一个客户机的IP地址。分组处理器响应于对数据分组的分析来处理数据分组以优化数据传输,并且使用单播协议通过多播网络将处理后的数据分组转发到多个客户机中的位于所接收的IP地址中相应的IP地址处的至少一个客户机。
单播协议可以是SCTP或SCTP-PR之一。该装置还可以包括IP地址储存库,其存储供分组处理器访问以转发处理后的数据分组的关联数据。
该装置还可以包括分组缓冲器,其在接收的数据分组被处理之前对数据分组进行缓冲直至接收到期望数目的数据分组。该装置还可以包括分组分析器,其对缓冲的数据分组进行分析以确定所需的处理类型。
可以通过确定哪些数据分组是冗余的来分析缓冲的数据分组,并且分组处理器可以通过移除冗余的数据分组来处理数据分组。
还可以通过确定哪些数据分组保存了数据的最完整的集合来分析缓冲的数据分组,并且分组处理器可以通过对数据分组的基本上完整的集合进行编译来处理数据分组。
客户机可以向服务器发送确认,用于指示从多播网络正确接收到数据分组并且还指示包括分组是否被延迟的信息。
在客户机已经通过多播网络接收到数据分组之后,通信量优化器可以从服务器接收指令以便基于分组被延迟的指示而跳过向关联的特定IP地址传送某些数据分组。
在客户机已经通过多播网络接收到数据分组之后,如果确定特定的IP地址经历了大量分组延迟,通信量优化器还可以从服务器接收指令以移除关联中的IP地址。
一种利用通信量优化器通过多播网络在服务器和多个客户机中的至少一个客户机之间使用单播协议以促进数据分组的通信的方法。使用单播协议从服务器接收包括关联数据的数据和数据分组二者。关联数据包括服务器的IP地址和多个客户机中可用于通信的至少一个客户机的IP地址。响应于对数据分组的分析,处理分析后的数据分组以便优化数据传输。使用单播协议通过多播网络将处理后的数据分组转发给多个客户机中的位于接收到的IP地址中相应的IP地址处的至少一个客户机。
该方法还可以包括对接收的数据分组进行缓冲直至接收到期望数目的数据分组并且分析缓冲的数据分组以确定所需的处理类型。
可以通过确定哪些数据分组是冗余的来执行分析,并且可以通过移除冗余的数据分组来执行处理。
还可以通过确定哪些数据分组保存了数据分组的最完整的集合来执行分析,并且通过对数据分组的基本上完整的集合进行编译来执行处理。
该方法还包括利用客户机向服务器发送确认,用于指示从多播网络正确接收到数据分组和包括分组数据是否被延迟的信息。
该方法还包括,在客户机通过多播网络已经接收到数据分组之后,基于分组被延迟的指示,跳过对于关联的特定IP地址的某些数据分组的传送。
该方法还可以包括,在客户机通过多播网络已经接收到数据分组之后,如果确定特定的IP地址经历了大量分组延迟,则从关联中移除IP地址。
该方法的单播协议可以是SCTP或SCTP-TR之一。
从参照附图进行的说明性实施例的以下详细描述中,本布置的附加特征和优点是明显的。
附图说明
图1描绘了根据本布置的支持SCTP用于跨越单播和多播网络二者的并发的多路径传输的系统的示例;
图2描绘了根据本布置的通信量优化器以及怎样处理和传输数据;
图3描绘了用于图示根据本布置的通信量优化器为改进数据传输的效率所使用的处理的流程图;以及
图4描绘了用于图示根据本布置的通信量优化器为改进数据传输的效率所使用的另一处理的流程图。
具体实施方式
在此公开的本布置提供了使得能够向能支持SCTP,SCTP-PR或者TCP的系统应用多播广播的方案。图1示出了可以应用于使用多播网络的SCTP和SCTP-PR的协议增强(boosting)方案的实现方式。在图1中,服务器10包括在存储介质上存储的、被选择性地递送到请求客户机的内容。该内容可以包括在以下进一步讨论的、代表服务器10和客户机之间的关联的数据、以及基于对应的关联要被发送给某些客户机的数据分组。在图1中,单播链路被指示为表示使用一对链路的双向通信的一对闭合(close)的实线链路。虚线单向链路指示多播链路。图1中的三角形和方形指示SCTP关联。具体地,三角形代表SCTP关联A,方形代表SCTP关联B。在图1的特定示例中,关联A 24与服务器10和客户机A设备12之间的关联有关。关联B 26与服务器10和客户机B 14设备之间的关联有关。
在图1中,示例性的客户机被描绘为分别代表客户机A,B和C的客户机12,14和16。尽管图1描绘了三个客户机,但系统不限于利用三个客户机进行操作并且可以支持从一个到多个客户机的任何情况。单独的每个客户机12,14或16可以包括用于与服务器10交换数据分组的若干IP地址。单独的客户机的IP地址被用于创建与服务器10的IP地址的通信路径以便促进在单独的客户机和服务器10之间交换数据分组。服务器10还可以通过多个接入网络与各个客户机形成通信路径。例如,如图1中所示,服务器10可以与单播接入网络18、以及多播接入网络20和22形成通信路径,单播接入网络18、以及多播接入网络20和22分别对应于第三代伙伴项目(3GPP)单播网络、3GGP多媒体广播和多播服务MBMS网络和数字视频广播-手持(DVB-H)网络。尽管图1描绘了三种接入网络,但本系统不限于利用三种接入网络进行操作并且可以支持在服务器10与用于支持单播或多播数据传输的一个到多个接入网络之间的连接路径。单播接入网络18利用服务器10和每个相应的客户机之间的双向的上行链路和下行链路提供单播通信支持能力。多播接入网络20和多播接入网络22二者是多播网络,并且仅仅支持单向的下行链路。结果,通过多播接入网络20和22从相应的客户机12,14或16到服务器10没有反馈信道可用。客户机12,14和16还可以具有多个网络接口并且能够经由不同类型的通信网络与远程系统连接。具体地,客户机12和14可以通过所有三种前述的接入网络连接到远程系统并且因此具有单播双向和多播单向链路,而客户机16可以仅仅通过多播接入网络20和22连接到远程系统。结果,客户机16仅仅支持多播单向链路。
客户机可以是包括例如能够处理数据文件、运行应用程序以及与服务器进行通信以传递关于传送和接收数据并且处理数据的指令的计算机或者移动设备的硬件设备。
客户机可能需要来自服务器的数据内容或者其它内容以便能够执行特定的功能。例如,客户机可能是必须从服务器接收特定的数据以便合适地处理并且为用户显示数据的音频/视频设备。因此,需要客户机和服务器之间的关联以便促进数据传输。
在以下段落中讨论创建SCTP关联的示例。如讨论的,客户机12具有到服务器10的单播上行链路。该单播上行链路用于做出与服务器10的SCTP连接请求。该连接请求通过使用标准的四路握手(four-way handshake)例程而导致可能创建SCTP关联,并且在以下进一步详细描述。
可以将关联定义为两个端点之间的连接。例如,客户机12和服务器10之间的关联表示与客户机12对应的各个IP地址和与服务器10对应的各个IP地址之间的通信路径。因此,关联表示位于各个IP地址的系统之间的通信路径。关联还包括代表要被递送到多播网络内的具体的多播路径的特定数据分组的数据。此外,关联还包括用于指示未与服务器相关联的客户机的IP地址的数据,以用于数据传输。接入网络使用该数据来确定可以怎样发送数据分组。
为了发起与服务器10通信的请求,客户机12通过单播上行链路向服务器10传送表示如在SCTP中定义的INIT块(chunk)的数据。INIT块包括与客户机12连接的通信路径对应的所有IP地址并且包括表示在客户机12处证实多播接收的数据。服务器10通过在表示INIT ACK块的数据中包括对应的IP地址来证实哪些识别的路径对于服务器10而言是可用的。表示如在SCTP中定义的INIT ACK块的数据由服务器10经由采用单播通信的接入网络(例如,单播接入网络18)传送到客户机12。在客户机12接收到表示INIT ACK块的数据时,客户机12生成表示用于客户机侧的SCTP关联的TCB(传输控制区块(Transmission Control Block))的数据。TCB包括将由SCTP使用的诸如缓冲器大小、最大传输单元(MTU)数据和序列号之类的信息以便识别关联。客户机12然后利用表示如在SCTP中定义的COOKIE ECHO块的数据对服务器10进行应答。当服务器10接收到表示COOKIE ECHO块的数据时,服务器10生成表示用于服务器侧的SCTP关联的服务器自身的TCB的数据并且利用被发送到客户机12的表示如在SCTP中定义的COOKIE ACK块的数据进行应答。这完成了四路握手例程并且形成如被表示为图1中的关联A24的、服务器10和客户机12之间的SCTP关联。
SCTP关联设立的另一示例涉及与上述相同的四路握手例程,除了服务器10而不是客户机12发起通信之外。服务器10周期性地通过多播网络路径向客户机12(或者另外的客户机)发送表示INIT块的数据。该INIT块包括与服务器10连接的网络路径对应的所有IP地址。对于对与服务器10进行SCTP连接感兴趣的、支持单播上行链路的任何客户机,例如客户机12,向服务器10发送包括表示INIT ACK块的数据的应答。客户机12通过在表示INIT ACK块的数据中包括用于多播通信的对应的IP地址以及客户机12使用的用于单播通信的IP地址,来证实多播接收能力。当服务器10接收到表示INIT ACK块的数据时,服务器10利用被发送给客户机12的、表示COOKIEECHO块的数据进行响应。服务器10还生成表示用于与客户机12的SCTP关联的、服务器侧的TCB的数据。当客户机12接收到表示COOKIE ECHO块的数据时,客户机12向服务器10发送表示COOKIE ACK块的数据并且生成表示客户机侧的用于SCTP关联的TCB的数据。这种类型的关联也将被表示为图1中的关联A 24。
如果服务器10从另一客户机(例如,客户机14)接收到后续的SCTP关联请求,可以遵循以上概述的相同的例程来设立另外的SCTP关联,例如,图1中所示的关联B 26。可以设立多个关联并且这些关联可以属于一个一对多SCTP套接字或者多个一对一SCTP套接字。具体地,多个SCTP关联可以共享一个SCTP传输端口地址,或可替换地,每个关联可以具有其自身的端口地址。
对于不具有单播反馈能力、而是仅仅支持多播接收能力的客户机而言,诸如客户机16,不能在客户机和服务器10之间设立SCTP关联。然而,当利用SCTP关联在服务器10和客户机(诸如客户机12和14)之间递送数据分组时,这些客户机可以指定要通过多播接入网络被发送给客户机16的某些数据分组。在本发明的布置中,客户机16可以被表示为仅仅能够从多播网络接收信息的被动接收器。具体地,客户机12和/或14可以向服务器10发送特定请求以便向多播接入网络20和22发送某些数据分组,客户机12、14和16向多播接入网络20和22进行了请求数据和接收数据的服务预定(subscription)。客户机16能够从多播接入网络20和22接收数据。响应于关联数据,服务器10决定要将每个数据分组发送到的目的地网络。
一旦已经在服务器10和其相应的客户机12、14和16之间建立了SCTP关联,就可以在服务器10和客户机之间开始数据交换。如图1中所示,服务器10可以与多个客户机建立多个SCTP关联。每个关联包含表示服务器10和客户机12、14和16之间的通信链路的多播路径。如所建立的,SCTP关联允许服务器10使用SCTP向使用对应关联的每个客户机发送数据分组。因为服务器10采用SCTP与客户机12和14进行通信,服务器10向多播接入网络20和22传送所请求的数据分组的多个副本。然而,这导致了带宽效率低。为了解决这个问题,本布置通过在SCTP域之外增加通信量优化器模块28和30来平衡多播网络路径的多播能力,这使得与SCTP相关联的低效率最小化并且利用多播接入网络20和22的高效率。图1示出了与服务器10耦接的两个通信量优化器28和30。在服务器10和客户机可访问的相应的多播接入网络20和22之间连接相应的用于MBMS的通信量优化器28或用于DVB-H的通信量优化器30。
如图1所示的,为了减轻网络通信量的目的,存在通信量优化器模块28和30。在本布置中,通信量优化器还用来促进通过多播网络利用数据关联从服务器到客户机传输数据分组。通信量优化器还处理从服务器接收的数据以确保以网络资源效率最高的方式将正确的数据发送到合适的客户机。例如,如果某个客户机是大带宽(heavy bandwidth)用户或者如果在网络内通常存在重度拥塞,则通信量优化器可以处理接收的数据分组并且还监视网络状况以确保相应地使用和分配带宽。
图2描绘了示例性的通信量优化器28内的组件的框图。通信处理器208从服务器10接收包括关联数据的数据和打算去往客户机的数据分组。通信处理器208耦接到IP地址储存库210,IP地址储存库210可以包括计算机化的存储介质,其接收并存储用于建立通信路径的包括服务器10和客户机12、14和16的IP地址的关联信息。存储表示IP地址的关联数据以便允许通信量优化器28能够适当地将数据路由到正确的客户机IP地址。IP地址储存库210向通信量优化器28提供数据分组源自哪里以及应将它们发送到哪里的知识。还将分组缓冲器220耦接到通信处理器208,并且分组缓冲器220从服务器10接收数据分组并且存储数据分组直至存在足够的要被分析的数据分组。接收并存储的数据分组对应于由客户机12和14任一个所请求的内容。当已经接收到必需数目的数据分组时,耦接到分组缓冲器220的分组分析器230解析来自分组缓冲器220的存储的数据分组,并且分析分组以便识别数据分组的最完整的集合(most complete set)或者找到相同数据的冗余副本。分组分析器230通过使用数据分组的序列号的列表或者与数据分组相关联的指针的列表来执行分析和识别,以便与存储的数据分组的序列号进行比较。这些数据分组表示客户机12和/或14从服务器10请求的数据。
耦接到分组分析器230的分组处理器240然后从分组分析器230接收分析后的数据分组以及作为结果的分析。这允许分组处理器240向客户机发送数据分组的最完整的集合,或者削减相同数据的冗余副本并仅仅发送数据的一个副本。所有冗余副本被丢掉和丢弃,而保存数据的一个副本用于传输到多播接入网络。结果,使用了更少的带宽,这是因为对于多个客户机仅仅发送数据分组的一个副本而不是多个数据分组。另外,在网络拥塞或者连接损坏的情况下,还发送数据分组的最完整的集合以进一步确保存在最小的数据损失以及确保传输的高效率。为了确保将分组处理器240发送的数据分组发送给正确的客户机,还将分组处理器240耦接到包含客户机和服务器10之间的各种关联的IP地址的IP地址储存库210。
具体地,分组处理器240查询IP地址储存库210以利用用于表示哪些具体的客户机或者接入网络IP地址要接收特定数据分组的数据来进行响应。在以下段落中,与通信量优化器28和图1中描绘的客户机(12、14、16)、服务器10、以及网络(18、20和22)的互连相关地,提供了关于通信量优化器28的功能的进一步的细节。
图3描绘了通信量优化器28采取的用于改进从服务器10向其相应的客户机传输数据分组的效率的步骤的流程图。该处理开始于步骤310,其中通信量优化器28从识别要将数据分组发送到哪里和怎样发送该数据分组的特定的客户机/服务器关联中获得IP地址。在步骤320中,通信量优化器28从服务器10接收数据分组。所接收的数据分组都被链接到客户机的特定的目的地IP地址和指示数据分组的目的地的对应的关联信息。在步骤330中,通信量优化器28缓冲所接收的由服务器10发送的分组。因为服务器10必须在多播网络中向所有的客户机发送相同的数据分组,所以通信量优化器28从服务器10接收的与各个关联对应的数据分组应是相同的。结果,在步骤340中,通信量优化器28可以分析数据分组以识别相同数据的冗余副本。然后,在步骤350中,通信量优化器28可以处理分析后的数据以便消减相同数据的冗余副本,使得仅仅将数据分组的一个副本转发给目的地网络。步骤360涉及:通信量优化器28递送包括数据分组的一个副本的处理后的数据、以及包括目的地客户机的IP地址的关联数据。该数据被转发到目的地网络,目的地网络可以包括网络18、20和22之一或者全部。目的地网络基于包括客户机的目的地IP地址的关联数据最终负责将数据分组发送到特定的客户机。
通信量优化器28的步骤可以替换地作为在服务器10内的处理而运行,例如在网络层上运行。具体地,可以在服务器10内而不是作为单独的模块来实现通信量优化器28的功能。负责通过DVB-H网络22进行通信的、在图1中被示为另外的通信量优化器的通信量优化器30与上述的通信量优化器28类似地操作。
客户机12和14可以接收通过多播网络路径递送的公用数据分组。对于图1中所示的具有另外的单播路径的客户机,具体是客户机12和14,这些客户机可能能够通过图1所示的单播下行链路从服务器10接收额外的数据分组。每个具有单播路径的客户机可以通过其单播下行链路而不是通过多播向服务器10做出发送不同的数据分组的特定请求。可以出于各种原因,通过单播下行链路发送额外的数据分组。某些数据可能是特定的客户机专用的,或者差的多播网络状况可能需要通过单播发送某些数据。
客户机12和14还能够通过单播上行链路向服务器10发送代表关联中的所有路径(包括多播路径)的选择性确认(SACK)。SACK是已经接收到分组的确认。当客户机发送SACK时,其确认与特定关联对应的IP地址是可服务的并且可以参与发送和接收数据。
因为客户机可能在多播网络中经历不同的接收状况,所以在SACK内还报告丢失的数据分组的量。因此,SACK还用作来自多个SCTP关联的反馈。由于每个关联可能经历不同级别的接收损坏,所以在用于不同关联的不同IP地址之间,丢失的分组的量将不同。接收损坏在其中由于差的数据接收状况而经常发生数据讹误的无线通信网络中是尤为普遍的。结果,服务器10可以通过单播下行链路向支持单播的各个客户机重传通过多播链路未能成功发送的数据分组,以便促进连接和数据分组恢复。即使在多播链路正在经历延迟或者如果多播链路不是可行的选择,这也向系统提供了允许客户机接收想要的数据的安全机制。如果客户机在多播链路内检测到丢失了数据,则客户机可以使用其单播链路向服务器10发送反馈以请求服务器通过单播链路重新发送缺失的数据。
然而,由于SCTP拥塞控制机制,服务器10可能在某些时间对于不同的关联以不同的数据率发送数据分组。图4描绘了在服务器对于与不同关联对应的不同IP地址以不同速率发送数据分组时由通信量优化器采取的优化数据分组传输的步骤的流程图。结果,多个关联的不同的数据分组可能在不同时间到达通信量优化器28。因此,通信量优化器28整理(sort through)数据分组以确保特定的数据分组到达正确的客户机并且这些数据分组尽可能完整。该处理开始于步骤410,其中通信量优化器28从用于要通过接入网络发送的数据分组的对应关联中获得目的地IP地址。在步骤420中,通信量优化器28基于来自目的地旨在去往各个客户机的数据分组的对应关联中的IP地址从服务器10接收所述数据分组。在步骤430中,通信量优化器28高速缓存所接收的数据分组。然后,在步骤440,分析被高速缓存的数据分组以发现与相应的客户机所请求的内容对应的分组的最完整的集合。在步骤450中可以分析数据分组的不完整的集合并且然后进行编译以形成数据分组的基本上完整的集合或者完整的集合。分析数据分组的序列号来确定数据分组的集合是完整的还是缺失某些部分,以便与存储的数据分组的序列号进行比较。在步骤460,将分组的基本上完整的集合或者分组的完整的集合转发给目的地多播网络用于向特定的客户机传输。
以上描述本布置的段落还可应用到使用SCTP-PR的系统。此外,在使用SCTP-PR的系统中,如果关联的特定的IP地址与相同关联的其它IP地址相比较遭受大的延迟量,则服务器10能够跳过通过多播链路对某些数据分组的传输。这允许用于关联的特定IP地址的滞后的多播链路追上(catch up)已经被发送给其它IP地址的数据分组。当特定的链路相比于其它链路遭受更大的损失时,通过具有更好连接的链路传输的数据分组在数据传输时遭受延迟。由于不是所有的数据分组都需要被客户机完整地接收,所以服务器10能够确定哪些数据分组正在通过滞后的链路进行发送并且适当地跳过对这些数据分组的传输。该过程对于客户机是透明的。客户机还可以在特定的多播链路中报告过量的分组丢失。在接收到表示过量的分组丢失的数据时,服务器10可以从其对应的关联中移除使用特定的多播链路的IP地址以防止对客户机的其它IP地址的数据传输的延迟。
尽管已经按照示例性实施例描述了本布置,但其不限于此。相反,应该将所附的权利要求宽泛地解释为包括本领域技术人员在不脱离本布置的等效物的范围和界限的情况下可能做出的本布置的其它变形和实施例。本公开旨在覆盖在此讨论的实施例的任何适配或变形。
Claims (19)
1.一种通信量优化器,其通过多播网络在服务器和多个客户机中的至少一个客户机之间使用单播协议以促进数据分组的通信,该通信量优化器包括:
通信处理器,其使用单播协议从服务器接收包括关联数据的数据和数据分组二者,所述关联数据包括服务器的IP地址和多个客户机中可用于通信的至少一个客户机的IP地址;以及
分组处理器,其响应于对数据分组的分析来处理数据分组以优化数据传输,并且使用单播协议通过多播网络将处理后的数据分组转发到多个客户机中的位于所接收的IP地址中相应的IP地址处的至少一个客户机。
2.如权利要求1所述的装置,其中单播协议是SCTP或SCTP-PR之一。
3.如权利要求1所述的装置,还包括IP地址储存库,其存储供分组处理器访问以转发处理后的数据分组的关联数据。
4.如权利要求1所述的装置,还包括分组缓冲器,其在数据分组被处理之前对接收的数据分组进行缓冲直至接收到期望数目的数据分组。
5.如权利要求4所述的装置,还包括分组分析器,其对缓冲的数据分组进行分析以确定所需的处理类型。
6.如权利要求5所述的装置,其中,通过确定哪些数据分组是冗余的来分析缓冲的数据分组,并且分组处理器通过移除冗余的数据分组来处理数据分组。
7.如权利要求5所述的装置,其中,通过确定哪些数据分组保存了数据的最完整的集合来分析缓冲的数据分组,并且分组处理器通过对数据分组的基本上完整的集合进行编译来处理数据分组。
8.如权利要求1所述的装置,其中,客户机向服务器发送确认,用于指示从多播网络正确接收到数据分组以及包括分组是否被延迟的信息。
9.如权利要求8所述的装置,其中,在客户机已经通过多播网络接收到数据分组之后,通信量优化器从服务器接收指令以便基于分组被延迟的指示跳过向关联的特定IP地址传送某些数据分组。
10.如权利要求8所述的装置,其中,在客户机已经通过多播网络接收到数据分组之后,如果确定特定的IP地址经历了大量分组延迟,则通信量优化器从服务器接收指令以从关联中移除IP地址。
11.一种利用通信量优化器通过多播网络在服务器和多个客户机中的至少一个客户机之间使用单播协议以促进数据分组的通信的方法,该方法包括:
使用单播协议从服务器接收包括关联数据的数据和数据分组二者,关联数据包括服务器的IP地址和多个客户机中可用于通信的至少一个客户机的IP地址;
响应于对数据分组的分析,处理分析后的数据分组以便优化数据传输;以及
使用单播协议通过多播网络将处理后的数据分组转发给多个客户机中的位于接收到的IP地址中相应的IP地址处的至少一个客户机。
12.如权利要求11所述的方法,还包括:对接收的数据分组进行缓冲直至接收到期望数目的数据分组。
13.如权利要求12所述的方法,还包括分析缓冲的数据分组以确定所需的处理类型。
14.如权利要求13所述的方法,其中,通过确定哪些数据分组是冗余的来执行分析,并且通过移除冗余的数据分组来执行处理。
15.如权利要求13所述的方法,其中,通过确定哪些数据分组保存了数据分组的最完整的集合来执行分析,并且通过对数据分组的基本上完整的集合进行编译来执行处理。
16.如权利要求11所述的方法,还包括:利用客户机向服务器发送确认,用于指示从多播网络正确接收到数据分组和包括分组数据是否被延迟的信息。
17.如权利要求16所述的方法,还包括:在客户机通过多播网络已经接收到数据分组之后,基于分组被延迟的指示,跳过对于关联的特定IP地址的某些数据分组的传送。
18.如权利要求16所述的方法,还包括:在客户机通过多播网络已经接收到数据分组之后,如果确定特定的IP地址经历了大量分组延迟,则从关联中移除IP地址。
19.如权利要求11所述的方法,其中,单播协议是SCTP或SCTP-PR之一。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2009/006490 WO2011071474A1 (en) | 2009-12-10 | 2009-12-10 | Protocol booster for sctp in muticast networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102763359A true CN102763359A (zh) | 2012-10-31 |
CN102763359B CN102763359B (zh) | 2016-01-20 |
Family
ID=44145807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980163421.3A Expired - Fee Related CN102763359B (zh) | 2009-12-10 | 2009-12-10 | 多播网络中流控制传输协议的通信量优化器及方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8976787B2 (zh) |
EP (1) | EP2510642B1 (zh) |
JP (1) | JP5550198B2 (zh) |
KR (1) | KR101600060B1 (zh) |
CN (1) | CN102763359B (zh) |
WO (1) | WO2011071474A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109756846A (zh) * | 2017-11-06 | 2019-05-14 | 成都鼎桥通信技术有限公司 | 群组通信的补包方法和系统 |
CN114363830A (zh) * | 2020-09-28 | 2022-04-15 | 中国移动通信有限公司研究院 | 多播数据的处理方法、核心网网关、业务服务器及终端 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8780907B2 (en) * | 2011-10-03 | 2014-07-15 | Verizon Patent And Licensing Inc. | Optimized file repair architecture for mobile broadcast multicast system (MBMS) |
US9628935B2 (en) * | 2011-11-15 | 2017-04-18 | Qualcomm Incorporated | Group communications with mixed casting services |
EP2672671A1 (en) | 2012-06-04 | 2013-12-11 | Thomson Licensing | Data transmission using a multihoming protocol such as SCTP |
EP2685664A1 (en) | 2012-07-12 | 2014-01-15 | Thomson Licensing | Multicast transmission using a unicast protocol |
US11888867B2 (en) * | 2020-12-09 | 2024-01-30 | Arbor Networks, Inc. | Priority based deep packet inspection |
US20220217225A1 (en) * | 2021-01-06 | 2022-07-07 | Parallel Wireless, Inc. | Handling of SCTP Packets with T-bit Set at SCTP Load Balancer |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050002365A1 (en) * | 2002-01-22 | 2005-01-06 | Shugong Xu | Systems and methods for acknowledgement of multi-cast traffic |
US6873659B2 (en) * | 1999-12-30 | 2005-03-29 | Itis | Transmission system with spatial, temporal, and frequential diversity |
US20050208942A1 (en) * | 2004-03-19 | 2005-09-22 | Nokia Corporation | Advanced handover in phased-shifted and time-sliced networks |
CN1697354A (zh) * | 2005-06-17 | 2005-11-16 | 顾红波 | 用组播和单播协议可靠传输数据的方法及接收数据的主机 |
US20060193295A1 (en) * | 2004-11-19 | 2006-08-31 | White Patrick E | Multi-access terminal with capability for simultaneous connectivity to multiple communication channels |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6189039B1 (en) | 1997-04-10 | 2001-02-13 | International Business Machines Corporation | Selective tunneling of streaming data |
US6259701B1 (en) | 1997-09-11 | 2001-07-10 | At&T Corp. | Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session |
US6724761B1 (en) * | 1999-09-29 | 2004-04-20 | Northrop Grumman Corporation | Method and apparatus for serial cell replication for multicast in a cell switch |
US20030063608A1 (en) * | 2001-10-03 | 2003-04-03 | Moonen Jan Renier | Multicast discovery protocol uses tunneling of unicast message |
JP3809813B2 (ja) * | 2002-08-21 | 2006-08-16 | 日本電信電話株式会社 | コンテンツ配信方法およびこれを用いるコンテンツ配信システム |
US20050188108A1 (en) * | 2002-10-31 | 2005-08-25 | Volera, Inc. | Enriched tree for a content distribution network |
JP3731885B2 (ja) * | 2003-07-03 | 2006-01-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ディジタル・コンテンツ配信システム、ディジタル・コンテンツ配信方法、そのためのサーバ、クライアント、サーバとしてコンピュータを制御するためのコンピュータ実行可能なプログラムおよびクライアントとしてコンピュータを制御するためのコンピュータ実行可能なプログラム |
EP1667381A4 (en) * | 2003-07-07 | 2011-07-27 | Ntt Docomo Inc | COMMUNICATION SYSTEM, MULTICAST OPERABLE ROUTER, TRANSMITTER TERMINAL, RECEIVER TERMINAL, AND COMMUNICATION METHOD |
WO2005036818A1 (en) * | 2003-10-07 | 2005-04-21 | Thomson Licensing | Multicast over unicast in a network |
US20070110074A1 (en) * | 2004-06-04 | 2007-05-17 | Bob Bradley | System and Method for Synchronizing Media Presentation at Multiple Recipients |
JP4524215B2 (ja) * | 2005-03-24 | 2010-08-11 | 富士通株式会社 | マルチキャスト通信方法及びホームエージェント及び移動ノード |
US8625548B2 (en) | 2005-11-14 | 2014-01-07 | Broadcom Corporation | Access points of different types exchanging addresses and rules to support end points devices |
US7889732B2 (en) * | 2005-12-22 | 2011-02-15 | Alcatel-Lucent Usa, Inc. | Method for converting between unicast sessions and a multicast session |
US8238242B2 (en) * | 2006-02-27 | 2012-08-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Flow control mechanism using local and global acknowledgements |
TWI527409B (zh) * | 2008-05-30 | 2016-03-21 | 馬維爾國際股份有限公司 | 網路處理器單元及其相關方法 |
US8713627B2 (en) * | 2008-08-14 | 2014-04-29 | Juniper Networks, Inc. | Scalable security services for multicast in a router having integrated zone-based firewall |
JP5195583B2 (ja) * | 2009-03-30 | 2013-05-08 | 日本電気株式会社 | 階層化マルチキャスト受信中継システム、方法、装置、及びプログラム |
-
2009
- 2009-12-10 EP EP09852119.8A patent/EP2510642B1/en not_active Not-in-force
- 2009-12-10 KR KR1020127017837A patent/KR101600060B1/ko not_active IP Right Cessation
- 2009-12-10 JP JP2012543056A patent/JP5550198B2/ja not_active Expired - Fee Related
- 2009-12-10 US US13/514,064 patent/US8976787B2/en not_active Expired - Fee Related
- 2009-12-10 WO PCT/US2009/006490 patent/WO2011071474A1/en active Application Filing
- 2009-12-10 CN CN200980163421.3A patent/CN102763359B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6873659B2 (en) * | 1999-12-30 | 2005-03-29 | Itis | Transmission system with spatial, temporal, and frequential diversity |
US20050002365A1 (en) * | 2002-01-22 | 2005-01-06 | Shugong Xu | Systems and methods for acknowledgement of multi-cast traffic |
US20050208942A1 (en) * | 2004-03-19 | 2005-09-22 | Nokia Corporation | Advanced handover in phased-shifted and time-sliced networks |
US20060193295A1 (en) * | 2004-11-19 | 2006-08-31 | White Patrick E | Multi-access terminal with capability for simultaneous connectivity to multiple communication channels |
CN1697354A (zh) * | 2005-06-17 | 2005-11-16 | 顾红波 | 用组播和单播协议可靠传输数据的方法及接收数据的主机 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109756846A (zh) * | 2017-11-06 | 2019-05-14 | 成都鼎桥通信技术有限公司 | 群组通信的补包方法和系统 |
CN114363830A (zh) * | 2020-09-28 | 2022-04-15 | 中国移动通信有限公司研究院 | 多播数据的处理方法、核心网网关、业务服务器及终端 |
CN114363830B (zh) * | 2020-09-28 | 2023-09-05 | 中国移动通信有限公司研究院 | 多播数据的处理方法、核心网网关、业务服务器及终端 |
Also Published As
Publication number | Publication date |
---|---|
WO2011071474A1 (en) | 2011-06-16 |
US8976787B2 (en) | 2015-03-10 |
JP2013513996A (ja) | 2013-04-22 |
EP2510642A1 (en) | 2012-10-17 |
CN102763359B (zh) | 2016-01-20 |
US20120243459A1 (en) | 2012-09-27 |
KR20120123308A (ko) | 2012-11-08 |
EP2510642B1 (en) | 2016-02-24 |
EP2510642A4 (en) | 2013-10-02 |
KR101600060B1 (ko) | 2016-03-14 |
JP5550198B2 (ja) | 2014-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102763359A (zh) | 多播网络中流控制传输协议的协议增强器 | |
US6981032B2 (en) | Enhanced multicast-based web server | |
US10419329B2 (en) | Switch-based reliable multicast service | |
US7054948B2 (en) | Collaborative host masquerading system | |
US20160182368A1 (en) | Multi-nonce enabled interest packet design for named-data networking | |
WO2006133655A1 (fr) | Procede pour la transmission fiable de donnees utilisant un protocole de multidiffusion et de diffusion individuelle et hote pour la reception des donnees | |
US9264365B2 (en) | Split transport control protocol (TCP) flow control management in a cellular broadband network | |
CN101605304A (zh) | 内容分发系统、内容分发装置、终端设备和内容分发方法 | |
JP5857135B2 (ja) | 複数の受信機にメッセージを伝送する装置および方法 | |
CN110324254A (zh) | 利用子网上的网络接口控制器进行消息的传送 | |
Su et al. | Mftp: A clean-slate transport protocol for the information centric mobilityfirst network | |
US8363573B2 (en) | Method for ringcasting with improved reliability | |
CN106130746B (zh) | 一种数据传输方法及装置 | |
US7535916B2 (en) | Method for sharing a transport connection across a multi-processor platform with limited inter-processor communications | |
JP2023033600A (ja) | コンテンツ配信システム、ユニキャストマルチキャスト変換装置、コンテンツ配信方法及びコンテンツ配信プログラム | |
CN106603205B (zh) | 数据传输方法、装置和系统 | |
US12034558B2 (en) | Content distribution system, multicast unicast / multicast multicast converter, multicast unicast converter, content distribution method and content distribution program | |
US7860920B2 (en) | Multicast enabled web-based application data distribution | |
US12218841B1 (en) | Ethernet traffic over scalable reliable datagram protocol | |
US9172774B2 (en) | Technique for managing communications at a router | |
JP2021087036A (ja) | 受信装置、配信システム、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160120 Termination date: 20161210 |