CN102687448B - 网络中可靠实时数据流传输的高效应用层自动重复请求重发的方法 - Google Patents
网络中可靠实时数据流传输的高效应用层自动重复请求重发的方法 Download PDFInfo
- Publication number
- CN102687448B CN102687448B CN200980161860.0A CN200980161860A CN102687448B CN 102687448 B CN102687448 B CN 102687448B CN 200980161860 A CN200980161860 A CN 200980161860A CN 102687448 B CN102687448 B CN 102687448B
- Authority
- CN
- China
- Prior art keywords
- data
- parts
- communication channel
- request
- packet
- 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.)
- Expired - Fee Related
Links
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/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
- H04L1/1838—Buffer management for semi-reliable protocols, e.g. for less sensitive applications such as streaming video
-
- 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
- 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/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1848—Time-out mechanisms
-
- 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/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1854—Scheduling and prioritising arrangements
-
- 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/80—Responding to QoS
-
- 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/02—Protocol performance
-
- 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/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
描述了一种方法和装置,包括:缓冲要发送的数据,通过数据报协议发送从缓冲器中取回的数据,接收对数据重发的请求,确定请求的数据是否在所述缓冲器中以及通过提供数据的端到端确认和错误恢复的协议重发所述请求的数据。
Description
技术领域
本发明大体上涉及一种网络,并且更具体地涉及一种用于实时数据流传输(streaming)的自动重复请求(ARQ)重发的应用层方法。
背景技术
在多播或广播应用中,通过有线和/或无线网络将数据从服务器发送到多个接收器。如在此使用的多播系统是其中服务器同时向多个接收器发送相同数据的系统,其中接收器形成上至并且包括所有接收器的所有接收器的子集。广播系统是其中服务器同时向所有接收器发送相同数据的系统。即,在定义上多播系统可以包括广播系统。
数据通常被格式化为用于发送的分组和/或帧。即,分组和帧是数据格式化方案。如在此使用的,可以将数据格式化为包括分组和/或帧的用于发送的任何方便的格式。
无线网络中的视频发送或分发通常涉及由诸如干扰、信道衰落、冲突等的信道错误条件造成的分组丢失。当这样的信道错误条件发生时,协议栈的无线链路层尝试在固定时间段内以固定次数重发分组。如果这些重发还不成功,则无线链路层丢弃这些分组。基于因特网协议(IP)网络的视频发送典型地使用实时传输协议(RTP)协议来向目的地(接收器)传递视频分组,而所述实时传输协议(RTP)使用可靠的发送控制协议(TCP)传输协议或者不太可靠的用户数据报协议(UDP)传输协议。当使用不太可靠的UDP协议时,该协议不提供检测无序(outoforder)分组或恢复丢失分组的手段,并且将责任留给应用(application)来恢复分组传递错误。相反,当使用TCP协议时,提供端到端确认使得协议尝试严格地以应用处理分组的顺序发送和/或恢复媒体(音频、视频、多媒体…)分组(数据)。当检测到分组错误时,TCP的滑动窗口机制激活流控制并且减少分组发送速率。TCP保持重发丢失的分组直至将它们恢复。由于视频发送必须实时出现并且具有与数据的接收和呈现相关联的用户观看体验,存在这样的等待时间或时间限制,在所述等待时间或时间限制内必须传递或恢复分组使得不影响末端用户的观看体验。因此,显然地必须在有限的时间内恢复分组错误否则数据对于末端用户将没有用。对于TCP,没有让应用基于时间限制来控制分组恢复的方式。将TCP用作无线网络的传输协议可能导致不良用户观看体验。此外,TCP对于所有发送的数据分组需要肯定确认(positiveacknowledge)。(从数据接收器到数据发送器(传送器)的)TCP上行链路确认将与(从发送器(传送器)到接收器的)下行链路数据流量竞争无线带宽。如果在下行链路和上行链路中出现冲突,该冲突可能导致进一步的吞吐量减少。
在一个现有技术方案中,提出了基于块的应用层前向纠错(FEC)机制。应用层FEC机制在诸如RTP或UDP分组的分组级工作。其与物理层FEC不同并且跨越多个数据分组应用FEC码以在服务器(发送器、传送器)侧生成冗余奇偶校验分组。发送器向目标接收器发送出数据分组和FEC分组二者。在接收器侧,FEC解码器尝试通过使用接收的数据分组和FEC分组重构丢失的分组。为了使这个方案高效,其适配用于时间变化信道条件是重要的。然而,具有挑战的是怎样事先预测信道条件以及怎样高效地并且可靠地将FEC码适配用于变化信道条件。如果出现低估,则不能恢复丢失的分组。然而,如果出现高估,则浪费带宽。因此,在不折中可靠性或带宽的情况下难以精细调谐。
在其它现有技术方案中,已经为分组丢失恢复提出了自动重复请求(ARQ)的变型。自动重复请求是一种用于数据发送的错误控制方法。在一种途径中,在ARQ方案中使用带有超时的肯定确认以实现可靠的数据发送。接收器向发送器发送肯定确认(ACK)以便指示接收器已经正确地接收数据帧或分组。发送器在发送器发送数据帧或分组之后还保持处于合理时间点的超时计时器。如果发送器在超时之前没有接收到确认,发送器通常重发数据帧或分组直至发送器接收到确认或者超过预定数目的重发。在这种途径中,当分组丢失率低时(大多数数据分组/帧被正确接收并且需要被确认)来自接收器和发送器的确认数据分组或帧流量的数量高。确认数据分组或帧将与数据分组或帧竞争无线带宽。此外,在数据分组的发送和确认分组之间可能出现冲突。
在另外一种现有技术途径中,从接收器向发送器发送否定确认(NACK)用于指示其没有正确地接收到数据帧/分组。一旦发送器接收到NACK,发送器向接收器重发丢失的分组或帧。当分组丢失率低时,来自接收器和发送器的NACK流量的量低,导致包括带宽的网络资源的更高效利用。然而,NACK数据分组或帧其自身可能丢失。如果这种情况发生,发送器将不重发丢失的分组或帧,造成低可靠性。
具有以下高效方法是有利的,该方法通过从原始发送器(传送器)仅请求丢失的分组并且尝试在对于应用可接受的时间限制内恢复分组来向基于UDP的视频发送提供可靠性,因此增强可靠性和系统吞吐量,并且改进实时应用的整体用户观看体验。
发明内容
本发明针对一种在传输或应用层用来增加网络中实时视频流传输的可靠性的方法。在此使用视频流传输作为实时数据流传输的一个特定示例。实时数据流传输可以包括任何类型的数据,包括音频、视频、多媒体或任何其组合。本发明的方法不特定于无线网络或无线局域网。其可以部署用于有线或无线网络。使用无线网络作为示例性部署。本发明的方法提供一种恢复表征为由各种信道错误引起分组丢失的网络中丢失的分组的高效手段,因此增强视频发送的可靠性和质量。本发明的方法提供了一种高效的方法,该方法通过从原始发送器(传送器)仅请求丢失的分组并且尝试在对于应用可接受的时间限制内恢复分组来向基于UDP的视频发送提供可靠性,因此增强可靠性和系统吞吐量,并且改进实时应用的整体用户观看体验。
本发明提供了一种将带有超时的肯定ACK和否定确认的优点相结合的方法。NACK用于初始发送。但是在分离的TCP信道上使用带有超时的ACK发送NACK分组或帧和重发的数据分组或帧。本发明使用TCP来提供可靠的错误恢复路径并且还通过在恢复时间窗口上实施上限来考虑到应用的实时限制。
描述了一种方法和装置,包括:缓冲要发送的数据,通过数据报协议发送从缓冲器中取回的数据,接收对数据重发的请求,确定所请求的数据是否在缓冲器中,以及通过提供数据的端到端确认和错误恢复的协议重发所请求的数据。
附图说明
当连同附图一起阅读时,根据以下具体描述最好地理解本发明。附图包括以下总地描述的图:
图1A是作为服务器向客户机设备初始发送数据中实践的本发明的方法的流程图。
图1B是作为服务器在重发损坏的数据中实践的本发明的方法的流程图。
图2A是作为客户机在初始接收数据中实践的本发明的方法的流程图。
图2B是作为客户机在接收重发的数据中实践的本发明的方法的流程图。
图2C是作为客户机在呈现数据中实践的本发明的方法的流程图。
图3是协议栈。
图4A示出用于请求重发和回复重发请求的示例性消息的公共首标。
图4B示出重发的数据分组的示例性格式。
图4C示出重发否定请求(NACK)的示例性格式。
图4D示出重发否定请求(NACK)的可替换示例性格式。
图5是根据本发明的原理的服务器的示例性实施例的示意图。
图6是根据本发明的原理的客户机设备的示例性实施例的示意图。
具体实施方式
无线网络中的视频发送或分发典型使用RTP,在UDP上移动画面专家组2传输流(MPEG2TS),并且可以从单个源分发到单个目的地(单播模式)或者从单个源分发到多个目的地(多播模式)。由于在无线网络中信道条件变化,当信道条件不好时,如果链路层错误恢复不成功则分组发送导致丢失分组。在这些情况下,在分组序列中存在间隙,导致对于末端用户的不良观看质量。本发明提供高效的基于应用层的重发方案,在此称作可靠媒体协议(RMP),以便恢复分组丢失来帮助可靠实时流传输应用。
在本发明的可靠媒体协议(RMP)方法中,定期单播和多播数据或分组发送使用UDP。除此以外,在源(发送器、传送器)和目的地(接收器、转接器(sink))之间建立额外的可靠的基于TCP的控制信道以便请求并接收丢失的分组的重发。为了让这个机制适当工作,发送器(传送器)保持向其接收器发送的最新分组的高速缓存器。一个或更多接收器接收来自发送器的数据分组并且使用RTP或MPEG传输流(TS)首标中存在的序列号码字段来检测接收的数据分组中的序列间隙(sequencegap)。如果接收器检测到序列间隙,接收器发送对基于TCP的控制信道的请求用于选择性的重发缺少的数据分组。当发送器接收到来自其接收器的一个或更多的重发请求时,该发送器在其本地高速缓存器中查找最新的分组。如果在本地高速缓存器中找到了所请求的(多个)分组,传送器以单播在基于TCP的控制信道上向接收器重发该分组的拷贝。如果在其本地高速缓存器中没有发现所请求的分组,传送器继续服务剩余的重发请求。接收器保持传递队列(缓冲器)以便保留来自数据和控制信道二者的所有接收数据分组并且将重发的分组重排序成这个队列内正确的序列(位置)并且在正确的时间以适当的顺序向应用传递分组。接收器保持可配置的时间窗口以便等待任何重发而不是永远等待,使得可以将分组延迟和延迟抖动保持在应用限度内。这暗示如果用于丢失分组的重传回复中的一些没有及时收到,接收器将从传递队列向应用传递剩余的接收分组。如果重发分组中的一些在可接受的恢复时间窗口以外被接收,则接收器丢弃它们。应该注意的是视频应用可以使用视频解码中的错误隐蔽技术来容忍一些数据分组丢失。
在图1A、1B和2A、2B中描绘了根据本发明的传送器侧和接收器侧操作的流程图。图3示出根据本发明的协议栈。本发明中的可靠媒体协议(RMP)方案在实时应用/RTP/MPEGTS和UDP/TCP/IP之间操作。
再次参照图1A,在105发送器(服务器、传送器)接收从本地文件(未示出)或从与例如内容服务器或内容分发系统(未示出)通信的另一网络接口模块(未示出)发送的数据。在110发送器缓冲在缓冲器(本地高速缓存器、存储器)中要发送的数据的拷贝,并且在115经由网络接口模块向用于发送的UDP/IP模块转发要发送的数据。
再次参照图1B,在120当接收器确定缺少(丢失、毁坏、破坏)分组时服务器(原始数据的发送器)接收来自接收器的重发请求。服务器经由TCP/IP模块接收重发请求,所述TCP/IP模块经由网络接口模块接收重发请求。在125,服务器确定所请求的(要重发的)数据分组是否在缓冲器中。如果数据分组在缓冲器中,那么在130服务器从缓冲器取回(retrieve)所请求的数据分组并且将它们经由网络接口模块转发到用于重发的TCP/IP模块。如果数据分组不在缓冲器中,那么服务器不能重发所请求的数据分组。
再次参照图2A,在205客户机设备接收(多个)新数据分组。(多个)重发的数据分组经由网络接口模块从TCP/IP模块被接收。在210客户机确定(多个)新数据分组是否丢失(毁坏、破坏)。在此,术语“损坏的数据”包括丢失、毁坏或破坏的任何数据。如果(多个)新的数据分组丢失(毁坏、破坏),那么在215客户机生成并且经由TCP/IP模块发送重发请求到服务器,TCP/IP模块将重发请求转发到用于发送的网络接口模块。在220客户机设置计时器以便限制客户机等待(多个)重发数据分组的时间。如果接收的数据不是损坏的,则将其插入到队列中用于以后呈现。
再次参照图2B,在225,客户机接收来自TCP/IP模块的(多个)重发数据分组,TCP/IP模块是从网络接口模块接收(多个)重发数据分组的。在230客户机通过检查计时器(图2A中设置的)确定(多个)重发数据分组是否太晚。如果(多个)重发数据分组不太晚则在235将(多个)重发数据分组插入到队列用于以适当顺序呈现。如果(多个)重发数据分组太晚则在240客户机丢弃该(多个)重发数据分组。
再次参照图2C,在245客户机检验序列号码来确定具有下一序列号码的数据分组是否可用。如果具有下一序列号码的数据分组可用则在250将该数据分组插入到队列用于呈现。如果具有下一序列号码的数据分组不可用则客户机继续检查数据分组直至其发现要插入到队列用于呈现的数据分组。错误隐蔽还可以用于隐藏或伪装一些错误或缺少的(多个)数据分组。
再次参照图3,示出了协议栈。协议栈示出应用层在协议栈的顶部。紧接着在应用层下面的是RTP/MPEGTS层。紧接着在RTP/MPEGTS层下面的是本发明的RMP层。TCP和UDP层支持RMP层,而因特网协议(IP)层支持TCP和UDP层。TCP、UDP和IP层典型地被认为是ISO协议栈的第3或第4层。链路层(第2层,其可以是例如媒体访问控制(MAC)层)和物理层(第1层)典型地支持第3和第4层。
可以将本发明的RMP方法实施于以下:灵活软件库、硬件、固件、任何计算机或处理器、专用集成电路(ASIC)、精简指令集计算机(RISC)、场可编程门阵列(FPGA)或其组合。本发明的RMP方法使用类似插座的用户空间API以及底层传输部件用于与流传输服务器和播放器应用的简单集成。本发明的RMP方法对于其所支持的流传输应用是透明的。内部地保持UDP数据信道和TCP控制信道。本发明的RMP方法可扩展以支持诸如FEC和混合ARQ之类的其它错误恢复方案。
图4A和4B中示出了用于重发请求和回复的交换消息的示例性格式。所有的重发请求/回复消息具有其格式在图4A示出的公共首标。图4B示出重发分组的格式,其包括分组长度字段、分组类型字段和分组子类型字段、标志、和有效载荷(重发数据)。有效载荷是在先前发送中丢失的数据分组(或帧)。如图4C所示,重发请求/NACK控制分组包含分组长度字段、分组类型和子类型字段、标志、开始序列号码和结束序列号码。开始序列号码和结束序列号码字段指示接收器请求要重发的分组的序列范围。在如图4D所示的可替换实施例中,重发请求/NACK控制分组包含分组长度字段、分组类型和子类型字段、标志、基序列号码(basesequencenumber)和比特图。基序列号码和比特图指示接收器请求要重发的分组的序列。
在以上描述的本发明的RMP方案中,没有对在数据信道上传送的分组进行改变。因此,保持了后向兼容性。此外,本发明的RMP方案高效地利用带宽,这是因为以低开销在控制信道上请求并且重发仅丢失的媒体分组。丢失分组请求用作NACK(否定确认)并且还向传送器提供反馈。其可以在宽泛的不同的信道条件下提供高可靠性,这是因为可以在恢复时间窗口内多次重发丢失的分组。此外,本发明的RMP方案通过具有最大等待时间(即,恢复窗口)实施用于重发的应用的等待时间限制,并且因此在给定时间限制内在尽力而为(besteffort)传递模型上操作。
注意到使用视频发送解释以上实施例。本发明还可以应用于音频和其它实时多媒体流传输应用的发送。
图5示出了示例性服务器实现方式的示意图。服务器包括:流传输应用模块、缓冲器(存储器)、可靠媒体协议(RMP)模块、UDP/IP模块、TCP/IP模块和网络接口模块。流传输应用模块从本地文件或网络接口模块获得实时数据。网络接口模块是在从网络发送/接收分组的计算机中出现的网卡。单个网卡进行发送和接收的双向功能。网络接口模块的示例是连接到计算机网络的以太网卡、IEEE802.11/WiFi卡。如果实时数据没有被分组,流传输应用模块将该数据分组。流传输应用模块将实时数据分组(媒体RTP分组)传递到RMP模块。RMP模块提供类似插座的应用协议接口(API)用于数据传递和与应用集成。RMP模块处理数据分组的可靠传输。对于初始发送,RMP模块使用UDP/IP数据信道并且通过网络接口向(多个)接收器发送数据分组,所述网络接口可以是,例如,以太网接口或IEEE802.11接口。RMP模块还在缓冲器中高速缓存发送的分组的本地拷贝。其通过TCP/IP控制信道从接收器接收重发请求/否定确认。如果所请求的分组在缓冲器中,则RMP模块使用TCP/IP控制信道向接收器重发所请求的分组。标记为“Conf”的方块是对于RMP模块的“配置接口”。可以在初始化的时刻将RMP模块配置为设置诸如高速缓存器大小、等待分组恢复的最大时间等的参数。
图6示出客户机设备的示例性实现方式的示意图。客户机包括播放器/流传输应用模块、显示器/扩音器模块、缓冲器(存储器)、可靠媒体协议(RMP)模块、UDP/IP模块、TCP/IP模块和网络接口。网络接口可以是,例如,以太网接口或IEEE802.11接口。网络接口接收所有输入消息。消息到达不同的插座/地址。网络接口因此确定将接收的消息转发到哪里。通过网络接口模块将新输入数据分组转发到UDP/IP接口。通过RMP模块将数据分组重发请求和重发数据分组转发到TCP/IP模块。RMP模块确定接收的数据分组中是否有任何损坏并且使用UDP/IP和TCP/IP二者来协调分组恢复。RMP模块生成任何损坏的数据分组的重发请求并且将重发请求转发到TCP/IP模块用于通过网络接口在网络上发送。RMP模块还在本地缓冲器中存储接收的分组用于重排序。一旦经由TCP/IP模块从TCP控制信道接收到重发分组,RMP模块以正确的顺序排序分组。RMP保持以序列号码排序的队列,并且将重排序并插入分组到这个缓冲器区域/队列中。当恢复窗口过期时,RMP模块向播放器/流传输应用传递分组。RMP模块提供类似插座的应用协议接口(API)用于数据传递和与应用集成。注意到,在恢复窗口过期时一些分组可能不能恢复。将在恢复窗口过期之后到达的数据分组丢弃。流传输/播放器应用将数据逆分组化(depacketize)和/或解码并且将数据传递到显示器/扩音器。在RMP“缓冲器区域”中存储输入分组并且将输入分组移交给应用以便在应用请求分组时呈现(显示)。标记为“Conf”的方块是对于RMP模块的“配置接口”。可以在初始化的时刻将RMP模块配置为设置诸如高速缓存器大小、等待分组恢复的最大时间等的参数。
虽然关于无线网络已经描述了本发明的以上方案,可以在任何类型的涉及分组丢失的网络中使用该方案。
应当理解,可以以硬件、软件、固件、专用处理器或它们的组合的各种形式来实现本发明。优选地,作为硬件和软件的组合来实现本发明。此外,可以作为在程序存储单元上有形地体现的应用程序来实现所述软件。所述应用程序可以被上载到包括任何适当架构的机器并由其执行。优选地,在具有诸如一个或多个中央处理单元(CPU)、随机存取存储器(RAM)和(多个)输入/输出(“I/O”)接口之类的硬件的计算机平台上实现所述机器。该计算机平台还包括操作系统和微指令代码。在此描述的各种处理和功能可以是由操作系统执行的微指令代码的一部分或应用程序一部分(或者它们的任何组合)。此外,诸如附加的数据存储设备和打印设备之类的各种其它外围设备可以连接到该计算机平台。
还应当理解,因为优选地用软件来实现在附图中描绘的一些组成系统组件和方法步骤,所以系统组件(或处理步骤)之间的实际连接可以根据本发明被编程的方式而不同。给出这里的教导,相关领域的普通技术人员将能够想到本原理的这些和类似的实现方式或配置。
Claims (10)
1.一种用于操作服务器的方法,所述方法包括:
在缓冲器中缓冲要发送的数据;
在第一通信信道上通过数据报协议向客户机设备多播从所述缓冲器中取回的数据;
在第二通信信道上接收来自所述客户机设备的对数据重发的请求;
确定所述请求的数据是否在所述缓冲器中;以及
在所述第二通信信道上通过提供数据的端到端确认和错误恢复的协议向所述客户机设备单播所述请求的数据。
2.如权利要求1所述的方法,其中,所述数据报协议是用户数据报协议。
3.如权利要求1所述的方法,其中,所述缓冲的数据是从本地文件取回的和通过网络接口接收的之一。
4.一种用于操作客户机设备的方法,所述方法包括:
在第一通信信道上从服务器接收数据;
第一确定所述接收的数据是否包括任何损坏的数据;
响应于所述确定将所述接收的数据插入到队列;
在第二通信信道上向所述服务器发送所述损坏的数据的重发请求;
设置计时器;
在所述第二通信信道上从所述服务器接收所述重发的数据;
使用所述计时器第二确定所述重发的数据是否及时收到;以及
进行将所述接收的重发数据插入到所述队列和丢弃所述接收的重发数据中的一个。
5.如权利要求4所述的方法,还包括呈现所排队列的数据。
6.一种用于操作服务器的装置,包括:
用于缓冲要发送的数据的部件;
用于在第一通信信道上通过数据报协议向客户机设备多播从缓冲器中取回的数据的部件;
用于在第二通信信道上接收来自所述客户机设备的对数据重发的请求的部件;
用于确定所述请求的数据是否在所述缓冲器中的部件;以及
用于在所述第二通信信道上通过提供数据的端到端确认和错误恢复的协议向所述客户机设备单播所述请求的数据的部件。
7.如权利要求6所述的装置,其中,所述数据报协议是用户数据报协议。
8.如权利要求6所述的装置,其中,所述缓冲的数据是从本地文件取回的和通过网络接口接收的之一。
9.一种用于操作客户机设备的装置,包括:
用于在第一通信信道上从服务器接收数据的部件;
用于确定所述接收的数据是否包括任何损坏的数据的部件;
用于响应于所述确定将所述接收的数据插入到队列的部件;
用于在第二通信信道上向所述服务器发送所述损坏的数据的重发请求的部件;
用于设置计时器的部件;
用于在所述第二通信信道上从所述服务器接收所述重发的数据的部件;
用于使用所述计时器确定所述重发的数据是否及时收到的部件;以及
用于进行将所述接收的重发数据插入到所述队列和丢弃所述接收的重发数据中的一个的部件。
10.如权利要求9所述的装置,还包括用于呈现所排队列的数据的部件。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2009/005499 WO2011043756A1 (en) | 2009-10-07 | 2009-10-07 | An efficient application-layer automatic repeat request retransmission method for reliable real-time data streaming in networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102687448A CN102687448A (zh) | 2012-09-19 |
CN102687448B true CN102687448B (zh) | 2016-03-16 |
Family
ID=42224310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980161860.0A Expired - Fee Related CN102687448B (zh) | 2009-10-07 | 2009-10-07 | 网络中可靠实时数据流传输的高效应用层自动重复请求重发的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20120170445A1 (zh) |
EP (1) | EP2486686A1 (zh) |
JP (1) | JP2013507826A (zh) |
KR (2) | KR20120082416A (zh) |
CN (1) | CN102687448B (zh) |
WO (1) | WO2011043756A1 (zh) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10749642B2 (en) * | 2007-02-07 | 2020-08-18 | Valens Semiconductor Ltd. | Dynamic retransmissions with fixed and minimum delays |
US9722763B2 (en) * | 2007-02-07 | 2017-08-01 | Valens Semiconductor Ltd. | Highly utilized communication channel with order and retransmissions |
US10284483B2 (en) | 2007-02-07 | 2019-05-07 | Valens Semiconductor Ltd. | Indicating delays added to packets due to retransmission |
US20110286322A1 (en) * | 2009-11-20 | 2011-11-24 | Qualcomm Incorporated | Method and apparatus for seamless transitions of data transmission transfer between radio links |
US20110286404A1 (en) * | 2009-11-20 | 2011-11-24 | Qualcomm Incorporated | Method and apparatus for seamless transitions of transfer between radio links for data reception |
CN103109485A (zh) | 2010-01-28 | 2013-05-15 | 汤姆森特许公司 | 用于作出重发决定的方法和装置 |
US9667452B2 (en) * | 2010-05-10 | 2017-05-30 | Novatium Solutions (P) Limited | Mechanism for integrating application data with available bandwidth estimation tools for cloud computing environments |
US20110282980A1 (en) * | 2010-05-11 | 2011-11-17 | Udaya Kumar | Dynamic protection of a resource during sudden surges in traffic |
US8773976B1 (en) * | 2011-03-03 | 2014-07-08 | Sprint Spectrum L.P. | Method and system for communication acknowledgement |
EP3633918B1 (en) * | 2011-06-14 | 2021-12-08 | ViaSat, Inc. | Transport protocol for anticipatory content |
GB2501474A (en) * | 2012-04-23 | 2013-10-30 | Qarva Ltd | Supporting Fast-Channel Changing (FCC) at a client receiver |
US9979773B2 (en) | 2013-03-22 | 2018-05-22 | International Business Machines Corporation | Managing task object state utilizing a reliable messaging model |
EP2830352A1 (en) | 2013-07-24 | 2015-01-28 | Panasonic Intellectual Property Corporation of America | Efficient discard mechanism in small cell deployment |
JP6463898B2 (ja) * | 2014-03-13 | 2019-02-06 | 株式会社東芝 | 通信装置、情報処理装置、通信方法及び通信プログラム |
US20150326884A1 (en) * | 2014-05-12 | 2015-11-12 | Silicon Image, Inc. | Error Detection and Mitigation in Video Channels |
WO2016013965A1 (en) * | 2014-07-25 | 2016-01-28 | Telefonaktiebolaget L M Ericsson (Publ) | Lawful intercept systems and methods in li systems |
CN104837178A (zh) | 2015-01-29 | 2015-08-12 | 小米科技有限责任公司 | 接入网络的方法及装置 |
US9742587B2 (en) | 2015-07-29 | 2017-08-22 | Oracle International Corporation | Negative acknowledgment of tunneled encapsulated media |
US10608985B2 (en) | 2015-08-14 | 2020-03-31 | Oracle International Corporation | Multihoming for tunneled encapsulated media |
JP2018007192A (ja) * | 2016-07-08 | 2018-01-11 | シントレーディング株式会社 | 音声通信システム、送信装置、受信装置、送信方法、受信方法、およびプログラム |
CN106603481A (zh) * | 2016-07-22 | 2017-04-26 | 深圳曼塔智能科技有限公司 | 数据传输方法及装置 |
RU2745113C2 (ru) * | 2016-09-30 | 2021-03-22 | Лайвстриминг Свиден АБ | Буферизация воспроизведения в системе распределения контента, транслируемого в прямом эфире |
EP3487101B1 (en) * | 2017-11-20 | 2024-01-24 | Nokia Technologies Oy | Method, receiver and network apparatus for delivering payloads through an interface |
CN110875799B (zh) * | 2018-09-04 | 2023-07-07 | 华为技术有限公司 | 一种传输控制方法和装置 |
WO2021195421A1 (en) * | 2020-03-26 | 2021-09-30 | EOS Defense Systems USA, Inc. | System for implementing a data link layer protocol in a compute host |
CN114640724B (zh) * | 2020-11-30 | 2023-11-28 | 腾讯科技(深圳)有限公司 | 基于rudp的数据传输方法、装置、设备及计算机存储介质 |
CN114422626B (zh) * | 2022-01-28 | 2022-11-08 | 北京秒如科技有限公司 | 协议传输的方法、装置及系统 |
CN114584264B (zh) * | 2022-01-29 | 2023-07-04 | 天津瑞发科半导体技术有限公司 | 具有物理层重传和实时传输功能的视频传输系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1669263A (zh) * | 2002-09-24 | 2005-09-14 | 艾利森电话股份有限公司 | 用于容错数据传输的方法和装置,其中执行错误数据重传直到剩余错误数量可接受 |
CN1848721A (zh) * | 2005-03-02 | 2006-10-18 | 埃沃列姆公司 | 选择适当harq重传方案来发送数据的方法、基站和模块 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07221789A (ja) * | 1994-01-27 | 1995-08-18 | Hitachi Ltd | 連続データ伝送方法および連続データ伝送システム |
US5822524A (en) * | 1995-07-21 | 1998-10-13 | Infovalue Computing, Inc. | System for just-in-time retrieval of multimedia files over computer networks by transmitting data packets at transmission rate determined by frame size |
JP2000036837A (ja) * | 1998-07-21 | 2000-02-02 | Matsushita Electric Ind Co Ltd | Arq画像通信方法 |
JP3637835B2 (ja) * | 2000-03-22 | 2005-04-13 | 松下電器産業株式会社 | ネットワーク伝送装置 |
JP2002084338A (ja) * | 2000-07-07 | 2002-03-22 | Matsushita Electric Ind Co Ltd | データ送信装置、データ受信装置、およびデータ通信システム |
JP2002084239A (ja) * | 2000-09-06 | 2002-03-22 | Nippon Telegr & Teleph Corp <Ntt> | メディア情報配信システムおよびメディア情報配信方法 |
US7307963B2 (en) * | 2001-08-03 | 2007-12-11 | At&T Corp. | Architecture and method for using IEEE 802.11-like wireless LAN system to emulate private land mobile radio system (PLMRS) radio service |
AU2002365821A1 (en) * | 2001-11-30 | 2003-06-17 | British Telecommunications Public Limited Company | Data transmission |
US20030206549A1 (en) * | 2002-05-03 | 2003-11-06 | Mody Sachin Satish | Method and apparatus for multicast delivery of information |
KR100876765B1 (ko) * | 2002-05-10 | 2009-01-07 | 삼성전자주식회사 | 이동 통신 시스템에서 데이터 재전송 장치 및 방법 |
JP2004056393A (ja) * | 2002-07-18 | 2004-02-19 | Fujitsu Ltd | 再生データの保存結果の修復システム |
US20110126255A1 (en) * | 2002-12-10 | 2011-05-26 | Onlive, Inc. | System and method for remote-hosted video effects |
US7643480B2 (en) * | 2004-01-22 | 2010-01-05 | Hain-Ching Liu | Method and system for reliably and efficiently transporting data over a network |
US7672003B2 (en) * | 2004-09-01 | 2010-03-02 | Eric Morgan Dowling | Network scanner for global document creation, transmission and management |
JP2006203649A (ja) * | 2005-01-21 | 2006-08-03 | Matsushita Electric Ind Co Ltd | 映像伝送装置及びシステム |
US8462627B2 (en) * | 2005-12-30 | 2013-06-11 | Altec Lansing Australia Pty Ltd | Media data transfer in a network environment |
-
2009
- 2009-10-07 JP JP2012533121A patent/JP2013507826A/ja active Pending
- 2009-10-07 WO PCT/US2009/005499 patent/WO2011043756A1/en active Application Filing
- 2009-10-07 KR KR1020127008521A patent/KR20120082416A/ko active Search and Examination
- 2009-10-07 KR KR1020167033419A patent/KR20160141871A/ko active Search and Examination
- 2009-10-07 EP EP09743972A patent/EP2486686A1/en not_active Ceased
- 2009-10-07 CN CN200980161860.0A patent/CN102687448B/zh not_active Expired - Fee Related
- 2009-10-07 US US13/395,796 patent/US20120170445A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1669263A (zh) * | 2002-09-24 | 2005-09-14 | 艾利森电话股份有限公司 | 用于容错数据传输的方法和装置,其中执行错误数据重传直到剩余错误数量可接受 |
CN1848721A (zh) * | 2005-03-02 | 2006-10-18 | 埃沃列姆公司 | 选择适当harq重传方案来发送数据的方法、基站和模块 |
Also Published As
Publication number | Publication date |
---|---|
WO2011043756A1 (en) | 2011-04-14 |
US20120170445A1 (en) | 2012-07-05 |
KR20120082416A (ko) | 2012-07-23 |
CN102687448A (zh) | 2012-09-19 |
KR20160141871A (ko) | 2016-12-09 |
JP2013507826A (ja) | 2013-03-04 |
EP2486686A1 (en) | 2012-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102687448B (zh) | 网络中可靠实时数据流传输的高效应用层自动重复请求重发的方法 | |
US7542438B2 (en) | Reliable multicast data retransmission method by grouping wireless terminals in wireless communication medium and apparatus for the same | |
US8499212B2 (en) | Method and apparatus for adaptive forward error correction with merged automatic repeat request for reliable multicast in wireless local area networks | |
US9306708B2 (en) | Method and apparatus for retransmission decision making | |
KR100831654B1 (ko) | 멀티캐스트 및 브로드캐스트 전송을 관리할 수 있는시스템에서 데이터 복구 방법 | |
US7536622B2 (en) | Data repair enhancements for multicast/broadcast data distribution | |
US8656241B2 (en) | Cell dependent multi-group hybrid automatic repeat request method for multicast in wireless networks | |
US20050216472A1 (en) | Efficient multicast/broadcast distribution of formatted data | |
US20070223526A1 (en) | Method and apparatus for handling retransmissions in a wireless communications system | |
RU2010103785A (ru) | Совместно используемые каналы обратной связи harq для виртуального группирования в беспроводной ретрансляционной сети | |
JP2007181127A (ja) | 通信装置、通信方法及びプログラム | |
EP1931082A1 (en) | Method and apparatus for multicasting data | |
AU2004318925B2 (en) | Data repair enhancements for multicast/broadcast data distribution | |
CN102752184A (zh) | 用于实时多播业务的数据通信系统及其方法 | |
CN107209713A (zh) | 按需文件修复的方法和系统 | |
US10484148B2 (en) | Method and device for transmitting and receiving multimedia data | |
US20080195911A1 (en) | Automatic repeat request (arq) reset method | |
CN101150494A (zh) | 数据分组发送设备、接收设备和方法 | |
US20070127467A1 (en) | Segmentation and reassembly receiver operation | |
US9680610B2 (en) | Method and apparatus for error control in 3D video transmissoin | |
JP2009194707A (ja) | 通信装置、通信システム及び通信方法 | |
Al-Suhail et al. | Modeling of adaptive wireless link for MPEG-4 video transport in UMTS network | |
MXPA06011288A (en) | Data repair enhancements for multicast/broadcast data distribution | |
JP2009273184A (ja) | 通信装置、通信方法及びプログラム | |
KR20070082987A (ko) | 이동통신 시스템의 수신 패킷 처리 장치 및 방법 |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190529 Address after: Paris France Patentee after: Interactive digital CE patent holding Co. Address before: I Si Eli Murli Nor, France Patentee before: THOMSON LICENSING |
|
TR01 | Transfer of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160316 Termination date: 20211007 |
|
CF01 | Termination of patent right due to non-payment of annual fee |