CN106100803A - The method and apparatus determined is retransmitted for making - Google Patents
The method and apparatus determined is retransmitted for making Download PDFInfo
- Publication number
- CN106100803A CN106100803A CN201610566114.1A CN201610566114A CN106100803A CN 106100803 A CN106100803 A CN 106100803A CN 201610566114 A CN201610566114 A CN 201610566114A CN 106100803 A CN106100803 A CN 106100803A
- Authority
- CN
- China
- Prior art keywords
- network
- data
- video data
- video
- packets
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000005540 biological transmission Effects 0.000 claims description 37
- 238000004891 communication Methods 0.000 claims description 5
- 230000006854 communication Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 4
- 239000000835 fiber Substances 0.000 claims description 3
- 230000002457 bidirectional effect Effects 0.000 claims 1
- 238000005728 strengthening Methods 0.000 claims 1
- 230000001502 supplementing effect Effects 0.000 claims 1
- 238000012937 correction Methods 0.000 abstract description 3
- 230000001186 cumulative effect Effects 0.000 abstract description 3
- 230000003139 buffering effect Effects 0.000 abstract 1
- 239000010410 layer Substances 0.000 description 87
- 230000032258 transport Effects 0.000 description 13
- 238000011084 recovery Methods 0.000 description 12
- 238000012544 monitoring process Methods 0.000 description 9
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 description 6
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 239000011229 interlayer Substances 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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
- H04L1/1671—Details of the supervisory signal the supervisory signal being transmitted together with control information
-
- 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/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
- H04L1/1877—Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本文描述了包括分析(410)抽象层首标以及对要发送的分组指定优先级的方法和装置。将发送器的网络监控器(270,405)连接在网络接口(250)与重发决定器(275)之间,用于根据,例如,指定的优先级和收集的网络统计量或状况,例如,分组丢失率决定重发哪些分组。网络监控器(271)也可以配备在接收器上,用于收集像丢失分组的累计数量那样的当前网络统计量,并将这样的统计量提供给发送器(200)。该方法进一步包括与指定的优先级一起缓存要发送的数据,经由数据报协议(240,245)发送从缓冲器(235)中检索的数据,接收(405)重发数据的请求,确定(415)所请求数据是否在缓冲器中,并经由提供数据的端到端确认和错误纠正的协议重发所请求数据。
Methods and apparatus are described herein that include analyzing (410) abstraction layer headers and assigning priorities to packets to be sent. A sender's network monitor (270, 405) is connected between the network interface (250) and the retransmission decider (275) for use in accordance with, for example, assigned priorities and collected network statistics or conditions, such as , the packet loss rate determines which packets to resend. A network monitor (271) may also be provided on the receiver for collecting current network statistics like cumulative number of lost packets and providing such statistics to the sender (200). The method further includes buffering the data to be sent along with the assigned priority, sending the data retrieved from the buffer (235) via the datagram protocol (240, 245), receiving (405) a request to resend the data, determining (415 ) whether the requested data is in the buffer, and resend the requested data via a protocol that provides end-to-end acknowledgment and error correction of the data.
Description
本申请是申请日为2010年1月28日、申请号为201080065862.2、发明名称为“用于作出重发决定的方法和装置”的发明专利申请的分案申请。This application is a divisional application of an invention patent application with a filing date of January 28, 2010, an application number of 201080065862.2, and an invention title of "Method and Device for Making Reissue Decision".
交叉参考相关申请Cross Reference Related Applications
本申请与如下同时待审、共同拥有的美国专利申请有关:(1)2009年10月7日作为国际专利申请(申请号PCT/US09/005499,汤姆森公司案号PU090136)提交的发明名称为“ANEFFICIENT APPLICATION-LAYER AUTOMATIC REPEAT REQUEST(ARQ)RETRANSMISSIONSCHEME FOR RELIABLE REAL-TIME STREAMING IN WIRELESS NETWORKS”的第XXX号;以及(2)作为国际专利申请(申请号XXX,汤姆森公司案号PU090157)提交的发明名称为“AMETHOD AND APPARATUS FOR PARSING A NETWORK ABSTRACTON-LAYER FOR RELIABLE DATACOMMUNICA TION”的第XXX号。This application is related to the following co-pending, commonly-owned U.S. patent applications: (1) filed on October 7, 2009 as International Patent Application (Application No. PCT/US09/005499, Thomson Corporation Docket No. PU090136) titled No. XXX of "ANEFFICIENT APPLICATION-LAYER AUTOMATIC REPEAT REQUEST (ARQ) RETRANSMISSIONSCHEME FOR RELIABLE REAL-TIME STREAMING IN WIRELESS NETWORKS"; and (2) an invention filed as an International Patent Application (Application No. XXX, Thomson Corporation Docket No. PU090157) No. XXX entitled "AMETHOD AND APPARATUS FOR PARSING A NETWORK ABSTRACTON-LAYER FOR RELIABLE DATA COMMUNICA TION".
技术领域technical field
本申请一般涉及数字数据网络,尤其涉及可靠数字数据发送的网络监控器和数据重发决定器。This application relates generally to digital data networks, and more particularly to network monitors and data retransmission deciders for reliable digital data transmission.
背景技术Background technique
在多播或广播应用中,通常在有线和/或无线网络上将数据从服务器发送给多个接收器。如本文所使用的多播系统是服务器同时将相同数据发送给多个接收器的系统,其中这些接收器形成多达和包括所有服务器的所有服务器的一个子集。广播系统是服务器同时将相同数据发送给所有接收器的系统。也就是说,多播系统按定义可以包括广播系统。In multicast or broadcast applications, data is sent from a server to multiple receivers, typically over a wired and/or wireless network. A multicast system as used herein is a system in which a server simultaneously sends the same data to multiple receivers, where the receivers form a subset of all servers up to and including all servers. A broadcast system is one in which the server sends the same data to all receivers simultaneously. That is, a multicast system may by definition include a broadcast system.
数据通常被格式化成分组和/或帧来发送。也就是说,分组和/或帧是数据格式化方案。如本文所使用,数据可以格式化成包括分组和/或帧的任何方便发送的格式。因此,“分组”在本文中用于定义本领域的普通技术人员公知的任何数据格式化方案。Data is usually formatted into packets and/or frames for transmission. That is, packets and/or frames are data formatting schemes. As used herein, data may be formatted in any convenient format for transmission including packets and/or frames. Accordingly, "packet" is used herein to define any data formatting scheme known to those of ordinary skill in the art.
作为本文数字数据网络的一种应用的例子,使用无线网络中的视频发送或分发。无线数据网络中的视频发送通常牵涉到由像干扰、信道衰落、冲突等那样的信道错误状况引起的分组丢失。当出现这样的信道错误状况时,协议栈的无线链路层可能试图在固定时间间隔内重发分组固定次数。如果这些重发都不成功,无线链路层就丢弃分组。基于互联网协议(IP)网络的视频发送通常使用实时传输协议(RTP)的协议将视频分组输送到目的地(接收器;本文有时称为客户机),该实时传输协议(RTP)的协议又使用可靠传输控制协议(TCP)传输协议或较不可靠用户数据报协议(UDP)传输协议。当例如使用较不可靠UDP协议时,该协议并不提供检测混乱分组或恢复丢失分组的手段,并把责任交给纠正分组输送错误的应用。相反,当使用TCP协议时,提供端到端确认,以便该协议设法严格按该应用管理分组的次序发送和/或接收媒体(音频、视频、多媒体......)分组(数据)。当检测到分组错误时,TCP提供用于数据流控制的滑动窗口机制,并降低分组传输速率。TCP继续重发丢失的分组直到它们得到恢复。As an example of an application of the digital data network herein, video transmission or distribution in a wireless network is used. Video transmission in wireless data networks typically involves packet loss caused by channel error conditions like interference, channel fading, collisions, and the like. When such a channel error condition occurs, the radio link layer of the protocol stack may attempt to retransmit the packet a fixed number of times within a fixed time interval. If these retransmissions are unsuccessful, the radio link layer discards the packet. Video distribution over Internet Protocol (IP) networks typically transports video packets to their destinations (receivers; sometimes referred to herein as clients) using the Real-time Transport Protocol (RTP) protocol, which in turn uses A reliable Transmission Control Protocol (TCP) transport protocol or a less reliable User Datagram Protocol (UDP) transport protocol. When the less reliable UDP protocol is used, for example, the protocol does not provide a means of detecting garbled packets or recovering lost packets, leaving the onus to the application to correct packet delivery errors. In contrast, when using the TCP protocol, end-to-end acknowledgments are provided so that the protocol tries to send and/or receive media (audio, video, multimedia...) packets (data) strictly in the order of the application management packets. When a packet error is detected, TCP provides a sliding window mechanism for data flow control and reduces the packet transmission rate. TCP continues to resend lost packets until they are recovered.
视频发送是实时发生和具有与数据的接收和再现相联系的用户观看体验的应用的例子。在其内分组必须得到输送或恢复的延迟或时间约束不应该影响最终用户的观看体验。因此,分组错误理应在有限时间内得到纠正,否则,数据可能是不可视的。TCP目前不能根据时间约束来为分组恢复的控制提供保证。因此,将TCP作为传输协议用于无线网络将导致不好的用户观看体验。而且,TCP要求对于所有发送数据分组的肯定确认。TCP上行链路确认(从数据接收器到数据发送器(发送者))与下行链路数据业务(从发送器(发送者)到接收器)竞争无线带宽。如果在下行链路发送与上行链路发送之间发生冲突,则这些冲突将导致进一步吞吐量减少。Video transmission is an example of an application that occurs in real time and has a user viewing experience tied to the reception and reproduction of data. Delays or time constraints within which packets must be delivered or recovered should not affect the end user's viewing experience. Therefore, grouping errors should be corrected within a limited time, otherwise, the data may not be visible. TCP currently cannot provide guarantees for control of packet recovery based on time constraints. Therefore, using TCP as a transport protocol for wireless networks will result in poor viewing experience for users. Also, TCP requires positive acknowledgments for all sent data packets. TCP uplink acknowledgments (from data receiver to data sender (sender)) compete for wireless bandwidth with downlink data traffic (from sender (sender) to receiver). If collisions occur between downlink and uplink transmissions, these collisions will result in further throughput reduction.
2009年10月7日提交的PCT申请US/09/005,499公开了一种有效应用层自动重复请求重发方法,其中将要发送的数据被缓存或高速缓存在实现可靠媒体协议的模块上,以便恢复丢失的数据分组以及有助于例如实时流式(如视频)数据应用。简要地参照图1(源自上述的PCT申请US/09/005,499的图5),将实时协议分组化模块120配备在例如实时服务器100上,以便接收视频数字数据输入105。提供流式应用的实时协议(RTP)分组化模块120经由例如一个或多个类似套接字应用编程接口(API)115与可靠媒体协议模块130连接。可靠媒体协议模块130接受像高速缓存或缓冲器大小、等待分组恢复的最大时间等那样的配置数据参数125。这些参数是例如由数字应用,例如,电话、音频、视频或多媒体以及其他已知应用决定的。本地缓冲器或高速缓冲存储器135临时存储初始发送分组,直到可以确定需要重发还是丢弃它们。服务器100通过UDP/IP发送器接口140或TCP/IP发送器/接收器接口145之一和数字数据网络接口,例如,以太网/802.11接口150发送数字数据。随着实时分组,例如,在等待重发ACK/NACK控制155的接收或预定时限时,被临时存储在高速缓存/缓冲器135中,可能经由向网络110的初始发送160发生初始实时发送。PCT application US/09/005,499 filed on October 7, 2009 discloses an efficient application layer automatic repeat request retransmission method in which data to be transmitted is buffered or cached on a module implementing a reliable media protocol for recovery Lost data packets are also useful for real-time streaming (eg video) data applications, for example. Referring briefly to FIG. 1 (derived from FIG. 5 of the aforementioned PCT application US/09/005,499), a real-time protocol packetization module 120 is provided, eg, on real-time server 100 , to receive video digital data input 105 . A real-time protocol (RTP) packetization module 120 that provides streaming applications interfaces with a reliable media protocol module 130 via, for example, one or more socket-like application programming interfaces (APIs) 115 . The reliable media protocol module 130 accepts configuration data parameters 125 like cache or buffer size, maximum time to wait for packet recovery, and the like. These parameters are for example determined by digital applications such as telephony, audio, video or multimedia and other known applications. A local buffer or cache memory 135 temporarily stores initially transmitted packets until it can be determined whether to retransmit or discard them. Server 100 transmits digital data through one of UDP/IP sender interface 140 or TCP/IP sender/receiver interface 145 and a digital data network interface, eg, Ethernet/802.11 interface 150 . Initial real-time transmission may occur via initial transmission 160 to network 110 as real-time packets are temporarily stored in cache/buffer 135 , eg, while awaiting receipt of retransmission ACK/NACK control 155 or a predetermined time limit.
发明内容Contents of the invention
拥有进一步增加像公开在上述PCT申请US/09/005,499中的那种那样的基于可靠媒体协议实时数据传输系统的可靠性的有效方法和装置是有利的。本发明解决了这些和/或其他问题。It would be advantageous to have efficient methods and apparatus for further increasing the reliability of real-time data transmission systems based on reliable media protocols like the one disclosed in the aforementioned PCT application US/09/005,499. The present invention addresses these and/or other problems.
依照本发明的一个方面,公开了一种方法。按照一个示范性实施例,该方法包含监控数字数据网络以收集网络传输统计量;以及根据收集的网络传输统计量决定是否向接收器重发数字数据分组。According to one aspect of the invention, a method is disclosed. According to an exemplary embodiment, the method includes monitoring the digital data network to collect network transmission statistics; and deciding whether to retransmit the digital data packet to the receiver based on the collected network transmission statistics.
依照本发明的另一个方面,公开了一种装置。按照一个示范性实施例,像数字数据发送器那样的装置包含数字数据网络监控器,用于收集网络传输统计量;以及重发决定器,用于根据指定的数字数据分组优先级和收集的网络传输统计量决定是否重发数字数据分组。According to another aspect of the present invention, an apparatus is disclosed. According to an exemplary embodiment, a device such as a digital data transmitter includes a digital data network monitor for collecting network transmission statistics; Transmission statistics determine whether to retransmit a digital data packet.
依照本发明的另一个方面,公开了一种装置。按照一个示范性实施例,像数字数据发送器那样的装置包含像网络监控器那样,收集网络传输统计量的器件;以及像重发决定器那样,根据指定的数字数据分组优先级和收集的网络传输统计量决定是否重发数字数据分组的器件。According to another aspect of the present invention, an apparatus is disclosed. According to an exemplary embodiment, the device as a digital data transmitter includes means, like a network monitor, for collecting network transmission statistics; Transmission Statistics A device that determines whether to retransmit a digital data packet.
依照本发明的另一个方面,公开了一种装置。按照一个示范性实施例,像数字数据接收器那样的装置包含网络监控器,用于从接收装置的视角收集网络统计量;以及网络接口,用于输出包括所述收集网络统计量的控制信道消息。According to another aspect of the present invention, an apparatus is disclosed. According to an exemplary embodiment, a device such as a digital data receiver includes a network monitor for collecting network statistics from the perspective of the receiving device; and a network interface for outputting a control channel message including said collected network statistics .
依照本发明的另一个方面,公开了一种装置。按照一个示范性实施例,像数字数据接收器那样的装置包含像网络监控器那样,从接收装置的视角收集网络统计量的器件;以及像网络接口那样,输出包括所述收集网络统计量的控制信道消息的器件。According to another aspect of the present invention, an apparatus is disclosed. According to an exemplary embodiment, a device such as a digital data receiver includes means, such as a network monitor, that collects network statistics from the perspective of the receiving device; and, such as a network interface, outputs controls that include said collected network statistics A device for channel messages.
附图说明Description of drawings
通过参考结合附图所作的本发明实施例的如下描述,本发明的上述和其他特征和优点以及实现它们的方式将变得更加显而易见,并且使本发明得到更好理解,在附图中:The above and other features and advantages of the present invention and the manner of realizing them will become more apparent and the present invention can be better understood by referring to the following description of the embodiments of the present invention made in conjunction with the accompanying drawings, in which:
图1是源自上述的相关PCT申请US/09/005,499的图5的含有可靠媒体协议模块和在等待重发决定时存储例如实时分组的本地高速缓存或缓冲器的服务器的示意性方块图。Figure 1 is a schematic block diagram of a server containing reliable media protocol modules and a local cache or buffer storing eg real-time packets while awaiting a retransmission decision from Figure 5 of the aforementioned related PCT application US/09/005,499.
图2A是依照本发明的原理的服务器的示意性方块图,它示出了按照本发明就当前网络统计数据监控网络接口并将输入提供给可靠媒体协议(RMP)模块的网络抽象层(NAL)首标分析器、网络监控器和重发决定器;图2B是依照本发明的原理的含有收集接收器网络特有统计数据以便发送给图2A的服务器的网络监控器的相关客户机的示意性方块图。Figure 2A is a schematic block diagram of a server in accordance with the principles of the present invention showing a Network Abstraction Layer (NAL) monitoring network interfaces for current network statistics and providing input to a Reliable Media Protocol (RMP) module in accordance with the present invention Header Analyzer, Network Monitor, and Retransmission Decider; FIG. 2B is a schematic block diagram of an associated client including a network monitor that collects receiver network-specific statistics for sending to the server of FIG. 2A in accordance with the principles of the present invention picture.
图3A是依照本发明的原理的流式服务器的简化方块示意图,其含有从可伸缩视频编码(SVC)编码器接收输入的NAL首标分析器、网络监控器和重发决定器。图3A进一步描绘了从流式服务器接收数字数据的流式接收器。图3B是示出NAL首标分析器从本地MP4文件阅读器接收输入的图3A的流式服务器的方块示意图。图3C示出了经由去分组化器从网络接收输入的图3A的NAL首标分析器。3A is a simplified block diagram of a streaming server including a NAL header analyzer receiving input from a scalable video coding (SVC) encoder, a network monitor, and a retransmission decider in accordance with the principles of the present invention. Figure 3A further depicts a streaming receiver receiving digital data from a streaming server. 3B is a block schematic diagram of the streaming server of FIG. 3A showing the NAL header analyzer receiving input from a local MP4 file reader. Figure 3C shows the NAL header analyzer of Figure 3A receiving input from the network via a depacketizer.
图4示出了依照本发明的原理在发送者方进行抽象层首标分析和网络监控的操作的流程图,其中发送者可以是图2A或图3的发送器、服务器或流式服务器。图4进一步示出了数据接收器和相关网络监控操作,其中接收器可以是图2B的客户机或图3的流式接收器。FIG. 4 shows a flow chart of the operation of abstract layer header analysis and network monitoring at the sender side according to the principle of the present invention, where the sender can be the sender, server or streaming server in FIG. 2A or FIG. 3 . FIG. 4 further illustrates a data receiver and related network monitoring operations, where the receiver may be the client of FIG. 2B or the streaming receiver of FIG. 3 .
图5示出了依照本发明的原理分析的可伸缩视频编码器(SVC)网络抽象层(NAL)扩展首标的示范性数据内容表示格式。FIG. 5 shows an exemplary data content representation format of a Scalable Video Coder (SVC) Network Abstraction Layer (NAL) extension header analyzed according to the principles of the present invention.
图6示出了依照本发明的原理可以发送优先级数据和可以从中计算网络统计量的实时协议(RTP)首标的示范性格式。Figure 6 illustrates an exemplary format of a Real Time Protocol (RTP) header from which priority data may be transmitted and from which network statistics may be calculated in accordance with the principles of the present invention.
图7示出了按照本发明的一些方面包括可以导出网络监控统计量的连续计数(CC)字段的MPEG传输流(TS)首标,例如,MPEG-2的示范性格式。7 illustrates an exemplary format of an MPEG Transport Stream (TS) header, eg, MPEG-2, including a Continuation Count (CC) field from which network monitoring statistics may be derived, in accordance with aspects of the present invention.
图8示出了按照本发明的一些方面包括发送请求和可以导出网络监控统计量的端到端分组丢失率的消息的示范性格式。8 illustrates an exemplary format of a message including a send request and an end-to-end packet loss rate from which network monitoring statistics may be derived in accordance with aspects of the invention.
图9示出了按照本发明的一些方面可以导出网络监控统计量的ARQ请求(NACK)分组的第一示范性格式。9 illustrates a first exemplary format of an ARQ request (NACK) packet from which network monitoring statistics may be derived in accordance with aspects of the present invention.
图10示出了按照本发明的一些方面可以导出和发送网络监控统计量的RMP ARQ请求(NACK)分组的第二示范性格式。10 illustrates a second exemplary format of an RMP ARQ request (NACK) packet from which network monitoring statistics may be derived and transmitted in accordance with aspects of the present invention.
具体实施方式detailed description
本发明针对在发送器或发送者上用于分析作为对于图2A和图2B的改进可靠媒体协议模块为一个模块的实时(例如,实时协议或RTP)分组化模块的输入的抽象层首标的方法和装置,以及可以根据监控的网络状况,例如,分组丢失率,利用分析器的优先级输出有选择地重发数据的发送器/服务器200(图2A)的网络监控器和重发决定器。按照一个实施例,像MPEG-4可伸缩视频编码器(SVC)那样的实时视频编码器的网络抽象层,例如,H.264/AVC网络抽象层包含提供可以加以分析以确定数字数据优先级的字段的首标。例如,NAL是网络友好的,可以代表视频电话,例如,视频会话应用和像将下载电影存储在存储器中、广播或多播应用或流式应用、或其他非会话应用那样的非会话应用。可以将NAL定义成,例如,以含有一个或多个字节的分组形式的多个抽象层单元。每个NAL单元的第一字节可以是指示该单元的数据类型的首标字节,而其余字节包含NAL首标所指的类型的有效载荷数据。The present invention is directed at a sender or method for analyzing an abstraction layer header as input to a real-time (e.g., real-time protocol or RTP) packetization module for which the improved reliable media protocol module of FIGS. 2A and 2B is a module. and devices, and the network monitor and retransmission decider of the sender/server 200 (FIG. 2A) that can selectively retransmit data using the priority output of the analyzer according to the monitored network conditions, such as packet loss rate. According to one embodiment, the network abstraction layer of a real-time video encoder such as MPEG-4 Scalable Video Coder (SVC), for example, H.264/AVC network abstraction layer includes providing The header of the field. For example, the NAL is network friendly and can represent video telephony, eg, video conversational applications and non-conversational applications like storing downloaded movies in memory, broadcast or multicast applications or streaming applications, or other non-conversational applications. A NAL can be defined, for example, as a number of abstraction layer units in packets containing one or more bytes. The first byte of each NAL unit may be a header byte indicating the data type of the unit, while the remaining bytes contain payload data of the type indicated by the NAL header.
按照一个实施例,抽象层首标分析器包含分析可伸缩视频编码器抽象层首标以便从多个字段之一中获取数据。按照这个实施例的一些方面,抽象层首标分析器可以,例如,对MPEG 4文件阅读器的输出数字视频数据进行操作,或接受如在去分组化器上接收的来自网络的数字数据。例如,抽象层首标分析器可以分析代表层表示的层间编码依赖程度的DID字段。QID字段代表中等粒度可伸缩性(MGS)层表示的质量水平。TID字段代表层表示的时间水平。分析包含这样字段的抽象层首标的一个结果是识别随后有效载荷数据与之相联系的层。响应有效载荷数据类型的识别,可以为每个识别层指定不同优先级。例如,基本层可以接收从缓冲器或高速缓冲存储器重发的高优先级,因为基本层对于接收器上的完全解码是绝对必要的。响应有效载荷数据类型的识别,分析器可以为如下数据的每个识别层指定不同优先级。例如,基本层可以接收从缓冲器或高速缓冲存储器重发的高优先级,因为基本层数据对于接收器上的完全解码是绝对必要的。可以对增强层指定中等优先级,因为增强层数据对于较高层的解码是必要的。另一方面,可以对有效载荷数据的高增强层指定低优先级。一旦指定了优先级,例如,低、中和高,如果要求在传输层上重发,则可以在实时协议(RTP)首标的“有效载荷类型(PT)”或类似字段中表示优先级信息,或者可以在IP首标的服务类型(TOS)字段中表示优先级信息。服务类型字段在现有技术中也可以称为,举例来说,差别化服务(DS)字段。前两个位被称为显式拥塞通知(ECN)位,DS字段字节的接着六个位被称为差别化服务代码点(DSCP)位。服务类型在本文中一般用于指提供服务类型数据的这些和其他格式。因此,当被修改成并入按照一个实施例的抽象层首标分析器和方法中时,可靠媒体控制协议模块作出的实时分组重发决定可以是层意识的。According to one embodiment, the abstraction layer header parser includes parsing the scalable video coder abstraction layer header to obtain data from one of the plurality of fields. According to some aspects of this embodiment, the abstraction layer header parser may, for example, operate on output digital video data from an MPEG 4 file reader, or accept digital data from a network as received at a depacketizer. For example, the abstraction layer header analyzer may analyze the DID field representing the degree of inter-layer coding dependency of layer representations. The QID field represents the quality level represented by the Medium Granular Scalability (MGS) layer. The TID field represents the time level represented by the layer. One result of analyzing an abstraction layer header containing such a field is to identify the layer to which the subsequent payload data is associated. Each identification layer may be assigned a different priority in response to the identification of the payload data type. For example, the base layer may receive high priority for retransmission from a buffer or cache since the base layer is absolutely necessary for full decoding at the receiver. In response to identification of payload data types, the analyzer may assign different priorities to each identified layer of data as follows. For example, the base layer may receive high priority for retransmission from a buffer or cache because base layer data is absolutely necessary for full decoding at the receiver. Medium priority may be assigned to enhancement layers, since enhancement layer data is necessary for decoding of higher layers. On the other hand, low priority can be assigned to high enhancement layers of payload data. Once a priority is specified, e.g., low, medium, and high, the priority information may be indicated in the "Payload Type (PT)" or similar field of the Real-Time Protocol (RTP) header if retransmissions are required at the transport layer, Or priority information may be indicated in a Type of Service (TOS) field of an IP header. The service type field may also be called, for example, a differentiated service (DS) field in the prior art. The first two bits are called Explicit Congestion Notification (ECN) bits, and the next six bits of the DS field byte are called Differentiated Services Code Point (DSCP) bits. Service types are used herein generally to refer to these and other formats that provide service type data. Thus, real-time packet retransmission decisions made by the reliable media control protocol module may be layer aware when modified to be incorporated into the abstraction layer header analyzer and method according to one embodiment.
在进一步的实施例中,提供了经由数据网络接口监控数据网络质量以及,例如,收集输入到重发决定器中的当前网络数据统计量,例如,分组丢失率、可用带宽、和往返延迟的网络监控器。重发决定器又可以提供至可靠媒体协议(RMP)模块的输入,以便重发决定可以基于按照在网络监控器中收集的数据网络统计数据的当前网络状况,以及根据它的优先级和监控的网络状况有选择地决定重发分组。In a further embodiment, a network is provided that monitors data network quality via a data network interface and, for example, collects current network data statistics input into a retransmission decider, such as packet loss rate, available bandwidth, and round-trip delay monitor. The retransmission decider can in turn provide an input to the Reliable Media Protocol (RMP) module so that the retransmission decision can be based on the current network condition according to the data network statistics collected in the network monitor, and according to its priority and monitored Network conditions selectively determine the retransmission of packets.
于是,数字发送方法包含分析数字数据分组的抽象层首标以获取层表示数据,以及响应该分析将优先级指定给表示层的数字数据分组。获取层表示数据可以包含一个或所有如下步骤:确定层间编码依赖程度;确定粒度可伸缩性的质量水平;以及确定层表示的时间等级。此外,该方法可以进一步包含在实时传输分组首标的有效载荷类型字段中或在互联网协议分组首标的服务类型字段中表示优先级别之一。如上所述,至抽象层首标分析器的输入可以从接收网络数据的去分组化器接收或从像与MPEG文件阅读器相联系的那种那样的本地服务器存储器接收。Accordingly, the digital sending method includes analyzing an abstraction layer header of a digital data packet to obtain layer representation data, and assigning a priority to the digital data packet of the presentation layer responsive to the analysis. Obtaining layer representation data may comprise one or all of the following steps: determining the degree of inter-layer encoding dependencies; determining the quality level of granular scalability; and determining the temporal scale of the layer representation. In addition, the method may further include indicating one of the priority levels in the payload type field of the real-time transmission packet header or in the service type field of the Internet protocol packet header. As mentioned above, the input to the abstraction layer header parser may be received from a depacketizer receiving network data or from local server memory such as that associated with an MPEG file reader.
此外,在进一步的实施例中,数字数据发送器可以包含抽象层首标分析器,用于从数字数据分组中获取层表示数据以及对层表示数据指定优先级;数字数据监控器,用于收集网络传输统计量;以及重发决定器,用于根据指定的数字数据分组优先级和收集的网络传输统计量决定是否重发数字数据分组。如上所述,在进一步的实施例中这样的抽象层首标分析器可以是数字视频数据分组应用的网络抽象层首标分析器。Additionally, in a further embodiment, the digital data transmitter may comprise an abstraction layer header analyzer for obtaining and prioritizing layer representation data from a digital data packet; a digital data monitor for collecting a network transmission statistic; and a retransmission decider, configured to decide whether to retransmit the digital data packet according to the assigned priority of the digital data packet and the collected network transmission statistic. As mentioned above, in a further embodiment such an abstraction layer header parser may be a network abstraction layer header parser for a digital video packet application.
更具体地说,参照图2-图10,服务器的抽象层首标分析器、数据监控器和重发决定器以及接收器的网络监控器如本文进一步所述,为RMP模块235在作出是否重发在发送控制信道255上报告丢失了的分组的决定时的高可靠性操作提供了保证。无线网络中的视频发送或分发通常使用UDP上的实时传输协议(RTP)运动图像专家组2传输流(MPEG2TS)。实时视频可以从单个源分发给单个目的地(单播模式)或从单个源分发给多个目的地(多播模式)。由于在无线网络中信道状况是变化的,所以当信道状况不好时,如果链路层错误纠正不成功,则分组发送导致分组丢失。在这些状况下,在分组序列中存在导致最终用户观看质量差的间隙。本发明提供了本文叫做可靠媒体协议(RMP)的基于应用层有效重发方案的抽象层首标分析功能来恢复丢失分组,以有助于可靠实时流式应用。本发明还在发送器方和在接收器方提供网络监控能力,以便改进图2A的服务器/发送器200上的分组重发决定的作出。因此,在图2B的接收器/客户机201上配备网络监控器271。More specifically, with reference to Fig. 2-Fig. 10, the abstraction layer header analyzer of server, data monitor and retransmission decider and the network monitor of receiver are further described for RMP module 235 in making whether to retransmit High reliability operation is guaranteed when the decision to report a lost packet on the transmit control channel 255 is made. Video transmission or distribution in wireless networks typically uses the Real-time Transport Protocol (RTP) Moving Picture Experts Group 2 Transport Stream (MPEG2TS) over UDP. Live video can be distributed from a single source to a single destination (unicast mode) or from a single source to multiple destinations (multicast mode). Since channel conditions are changing in wireless networks, when channel conditions are bad, packet transmission results in packet loss if link layer error correction is not successful. Under these conditions, there are gaps in the sequence of packets that result in poor viewing quality for the end user. The present invention provides an abstract layer header analysis function here called Reliable Media Protocol (RMP) based application layer efficient retransmission scheme to recover lost packets to facilitate reliable real-time streaming applications. The present invention also provides network monitoring capabilities on the sender side and on the receiver side to improve packet retransmission decision making at the server/sender 200 of FIG. 2A. Therefore, a network monitor 271 is provided on the receiver/client 201 of FIG. 2B.
参照图2A和图2B,在本发明的可靠媒体协议(RMP)方法中,通过按照本发明的原理并入NAL首标分析器210来帮助RTP分组化模块220和可靠媒体协议(RMP)模块230。此外,与网络接口250交接的网络监控器270收集当前网络统计量,并经由重发决定器275提高RMP模块230的可靠性。在图2A中强调了NAL首标分析器210、网络监控器270和重发决定器275,以表明如下面进一步说明的图2A不同于图1。2A and FIG. 2B, in the reliable media protocol (RMP) method of the present invention, help RTP packetization module 220 and reliable media protocol (RMP) module 230 by incorporating NAL header analyzer 210 according to the principle of the present invention . In addition, the network monitor 270 interfacing with the network interface 250 collects current network statistics and improves the reliability of the RMP module 230 via the retransmission decider 275 . NAL header analyzer 210, network monitor 270, and retransmission decider 275 are emphasized in FIG. 2A to show that FIG. 2A differs from FIG. 1 as further described below.
最初,RMP模块230经由网络接口250,使用UDP 240发送常规单播和多播数据或分组,以便使用初始发送信道260将分组发送给网络110。数据最初经由RTP分组化模块220以NAL首标分析器210指定的优先级存储在本地高速缓存235中。除此之外,在图2A的源(发送器,发送者)200与图2B的目的地(接收器,信宿,客户机)201之间建立附加可靠基于TCP控制信道245。TCP/IP 245经由到网络110的重发ACK/NACK控制信道255,通过网络接口250请求重发和接收丢失的分组。为了使这种机制正常运行,发送器(发送者,服务器)200保留发送给它的接收器/客户机的最近分组于高速缓存235。一个或多个接收器/客户机210从发送器/服务器200接收数据分组,并且可以使用存在于RTP(图6)或MPEG传输流(TS)首标(图7)中的序列号字段在接收的数据分组中检测序列间隙。如果接收器201检测到序列间隙,则接收器201在基于TCP控制信道255上发送用于有选择重发丢失数据分组的请求。当发送器/服务器200从一个或多个它的接收器/客户机210接收到重发请求时,它就在其本地高速缓存235中寻找最近分组。如果在本地高速缓存235中找到请求的分组,则发送器/服务器200经由网络110,在基于TCP控制信道255上以单播形式重发分组的副本给接收器201。如果在其本地高速缓存/缓冲器235中未找到请求的分组,则发送者200继续为其余重发请求服务。接收器/客户机201维持输送队列(缓冲器/高速缓存)236以保留来自数据信道和控制信道两者的所有接收数据分组。接收器/客户机201还将重发分组重排到这个队列内的正常序列(位置)中,并在正确时间以适当次序将分组输送给应用,例如,视频播放器应用221以便加以显示206。Initially, RMP module 230 sends conventional unicast and multicast data or packets using UDP 240 via network interface 250 to send packets to network 110 using initial send channel 260 . The data is initially stored in the local cache 235 via the RTP packetization module 220 with the priority specified by the NAL header analyzer 210 . In addition to this, an additional reliable TCP-based control channel 245 is established between the source (sender, sender) 200 of FIG. 2A and the destination (receiver, sink, client) 201 of FIG. 2B. TCP/IP 245 requests retransmissions and receives lost packets through network interface 250 via retransmission ACK/NACK control channel 255 to network 110 . In order for this mechanism to work properly, the sender (sender, server) 200 keeps in cache 235 the most recent packets sent to its receiver/client. One or more receivers/clients 210 receive data packets from the sender/server 200, and may use the sequence number field present in the RTP (FIG. 6) or MPEG Transport Stream (TS) header (FIG. 7) Detect sequence gaps in the data packets. If the receiver 201 detects a sequence gap, the receiver 201 sends a request on the TCP-based control channel 255 for selective retransmission of the missing data packets. When a sender/server 200 receives a retransmission request from one or more of its receiver/clients 210, it looks in its local cache 235 for the most recent packet. If the requested packet is found in the local cache 235 , the sender/server 200 retransmits a copy of the packet to the receiver 201 via the network 110 in unicast form on the TCP-based control channel 255 . If the requested packet is not found in its local cache/buffer 235, the sender 200 continues to service the remaining retransmission requests. The receiver/client 201 maintains a transmit queue (buffer/cache) 236 to hold all received data packets from both the data channel and the control channel. The receiver/client 201 also reorders the retransmitted packets into their normal sequence (position) within this queue and delivers the packets to an application, eg, a video player application 221 for display 206, in the proper order at the correct time.
接收器/客户机201(图2B)保持可配置时间窗口来等待任何重发而不是永远地等下去,以便可以使分组延迟和延迟抖动保持在应用界线内。此外,按照一个实施例,接收器/客户机201配有从接收器/客户机201的视角收集网络统计量以便经由控制信道255发送给发送器/服务器200的网络监控器271。在图2B中强调示出了网络监控器271,以表明如本文进一步所述,按照本发明收集网络统计量并将其提供给发送器/服务器200以便改进重发决定作出的网络接口251与网络监控器271之间的协作。The receiver/client 201 (FIG. 2B) maintains a configurable time window to wait for any retransmission instead of waiting forever so that packet delay and delay jitter can be kept within application bounds. Furthermore, according to one embodiment, the receiver/client 201 is equipped with a network monitor 271 that collects network statistics from the perspective of the receiver/client 201 to send to the sender/server 200 via the control channel 255 . Network monitor 271 is highlighted in FIG. 2B to show that network interface 251 and network statistics are collected and provided to sender/server 200 in accordance with the present invention to improve retransmission decision making, as further described herein. Collaboration between monitors 271 .
如果未及时接收到一些丢失分组的重发应答,则图2B的接收器/客户机201将其余接收分组从输送队列传递给应用,例如,视频播放器221和显示器206。如果在可接受恢复时间窗口之外接收到一些重发分组,则接收器丢弃掉它们。应该注意到,视频应用在视频解码时可以使用错误隐藏技术容忍一些数据分组丢失。If retransmission acknowledgments for some lost packets are not received in time, the receiver/client 201 of FIG. If some retransmitted packets are received outside the acceptable recovery time window, the receiver discards them. It should be noted that video applications can tolerate some data packet loss using error concealment techniques during video decoding.
再次参照图2A,为了借助于网络监控器270和271分组化和改进重发决定作出,本发明中的可靠媒体协议(RMP)方案通过分析器210的帮助经由RMP模块230,231运行在实时应用/RTP/MPEG TS与UDP/TCP/IP之间。在服务器/发送器200上,抽象层首标分析器,例如,网络抽象层(NAL)首标分析器210对本地提供或网络的数字视频数据205加以操作。NAL首标分析器210为实时协议(RTP)分组化模块220输出优先级和数据。此外,网络监控器270重新获取当前网络114的统计量,并将控制数据输出到重发决定器275以帮助RMP模块230。例如,将增强层被指定中等优先级与基本层被指定高优先级的例子推进一步,RMP模块230面对网络监控器270检测的可用带宽低于给定阈值时,重发高优先级基本层数据而不发送中等优先级增强层数据。例如,取代发送保存在高速缓冲/缓冲存储器235中的所有分组,重发决定器275可以根据像分组丢失率或其他网络状况那样的网络监控器收集统计量、和NAL首标分析器210指定的优先级来选择保存在存储器235中的一部分分组用于重发。因此,如结合图4的讨论所进一步描述,在分析器210上对数据指定优先级与按照重发决定器275的重发决定作出的结合为高度可靠媒体协议(RMP)模块230提供了保证。Referring again to FIG. 2A , in order to make packetization and improve retransmission decisions by means of network monitors 270 and 271, the Reliable Media Protocol (RMP) scheme in the present invention operates in real-time applications via RMP modules 230, 231 with the help of analyzer 210 Between /RTP/MPEG TS and UDP/TCP/IP. On the server/transmitter 200, an abstraction layer header parser, eg, a Network Abstraction Layer (NAL) header parser 210 operates on locally provided or networked digital video data 205 . NAL header analyzer 210 outputs priority and data for real-time protocol (RTP) packetization module 220 . In addition, the network monitor 270 retrieves current network 114 statistics and outputs control data to the retransmission decider 275 to assist the RMP module 230 . For example, taking the example where the enhancement layer is assigned a medium priority and the base layer is assigned a high priority, the RMP module 230 retransmits the high priority base layer when the available bandwidth detected by the network monitor 270 is lower than a given threshold data without sending medium priority enhancement layer data. For example, instead of sending all packets stored in cache/buffer memory 235, retransmission decider 275 may collect statistics based on network monitors such as packet loss rate or other network conditions, and NAL header analyzer 210 specified Priority is used to select a portion of packets stored in memory 235 for retransmission. Thus, as further described in connection with the discussion of FIG. 4 , the combination of prioritizing data at analyzer 210 and making retransmission decisions per retransmission decider 275 provides guarantees for highly reliable media protocol (RMP) module 230 .
再次参照图2A,典型网络接口250被显示在网络110与服务器/发送器200上的RMP模块230之间。网络接口模块的例子是与计算机网络110连接的以太网卡、IEEE 802.11/WiFi卡。Referring again to FIG. 2A , a typical network interface 250 is shown between the network 110 and the RMP module 230 on the server/sender 200 . Examples of network interface modules are Ethernet cards, IEEE 802.11/WiFi cards connected to the computer network 110 .
图2B示出了客户设备201的示范性实现的示意图。该客户机可以包括视频播放器/流式应用模块221、显示器206、缓冲器(高速缓冲存储器)236、可选媒体协议(RMP)模块231、UDP/IP模块241、TCP/IP模块246和网络接口251。网络接口251可以是,例如,以太网接口或IEEE 802.11接口或其他已知网络接口。网络接口251接收所有到来消息。这些消息到达不同套接口/地址。网络监控器271从接收器/客户机201的视角从网络接口251收集当前网络统计量,并在报告收集统计量的信道255上输出适当控制消息。因此,网络接口251可以确定转发来自网络110的接收消息的地方,并输出来自网络监控器271的统计数据和来自TCP/IP模块246的消息。新到来数据分组由网络接口模块251转发给UDP/IP接口。重发数据分组的请求和重发数据分组由RMP模块231转发给TCP/IP模块246。RMP模块231确定接收的数据分组是否已损坏,并利用UDP/IP和TCP/IP两者精心安排分组恢复。RMP模块231为任何损坏数据分组生成重发请求。然后,RMP模块231将重发请求转发给TCP/IP模块246以便在网络110上发送。在网络接口251上,将网络监控器271收集的任何网络统计数据并入重发请求中以便在网络110上发送。RMP模块231还将接收的分组存储在本地缓冲器236中以便重新排序。一旦经由TCP/IP模块246从TCP控制信道接收到重发分组,RAMP模块231就按正确次序排列分组。RMP 231保持按序列号排序的队列,并将分组重新排序和插入这个缓冲器区域/队列中。当恢复窗口到期时,RMP模块231将分组输送给例如播放器/流式应用221以便加以显示206。RMP模块231为数据传递和与应用的集成提供类似套接字应用协议接口(API)216。注意,一些分组在恢复窗口到期时可能未得到恢复。FIG. 2B shows a schematic diagram of an exemplary implementation of a client device 201 . The client computer may include a video player/streaming application module 221, a display 206, a buffer (cache memory) 236, an optional media protocol (RMP) module 231, a UDP/IP module 241, a TCP/IP module 246 and a network Interface 251. Network interface 251 may be, for example, an Ethernet interface or an IEEE 802.11 interface or other known network interface. The network interface 251 receives all incoming messages. These messages arrive on different sockets/addresses. The network monitor 271 collects current network statistics from the network interface 251 from the perspective of the receiver/client 201 and outputs appropriate control messages on the channel 255 reporting the collected statistics. Thus, the network interface 251 can determine where to forward received messages from the network 110 and output statistics from the network monitor 271 and messages from the TCP/IP module 246 . New incoming data packets are forwarded by the network interface module 251 to the UDP/IP interface. The request to resend the data packet and the resent data packet are forwarded by the RMP module 231 to the TCP/IP module 246 . The RMP module 231 determines whether a received data packet is corrupted and orchestrates packet recovery using both UDP/IP and TCP/IP. RMP module 231 generates retransmission requests for any corrupted data packets. Then, the RMP module 231 forwards the retransmission request to the TCP/IP module 246 for sending on the network 110 . At network interface 251 , any network statistics collected by network monitor 271 are incorporated into a retransmission request for transmission over network 110 . RMP module 231 also stores received packets in local buffer 236 for reordering. Once the retransmitted packets are received from the TCP control channel via the TCP/IP module 246, the RAMP module 231 arranges the packets in the correct order. RMP 231 maintains a queue sorted by sequence number and reorders and inserts packets into this buffer area/queue. When the recovery window expires, the RMP module 231 delivers the packet to, for example, the player/streaming application 221 for display 206 . The RMP module 231 provides a socket-like application protocol interface (API) 216 for data transfer and integration with applications. Note that some packets may not be recovered when the recovery window expires.
恢复窗口到期之后到达的数据分组按图4丢弃。取决于应用,例如,对于视频,流式/播放器应用221将数据去分组化和/或解码,并将数据传递给显示器/扬声器206。将到来分组存储在RMP“缓冲器区域”中,并且每当应用请求分组时,就转交给,例如,应用以便加以渲染(显示)206。标着“配置”226的方框是与RMP模块231的“配置接口”。RMP模块可以在初始化的时候配置,以便设置像高速缓存大小、等待分组恢复的最大时间等那样的参数。Data packets arriving after the recovery window expires are discarded as shown in FIG. 4 . Depending on the application, eg, for video, the streamer/player application 221 depacketizes and/or decodes the data and passes the data to the display/speaker 206 . Incoming packets are stored in the RMP "buffer area" and forwarded to, eg, the application for rendering (display) 206 whenever an application requests a packet. The box labeled "Configuration" 226 is the "Configuration Interface" with the RMP module 231 . The RMP module can be configured at initialization time to set parameters like cache size, maximum time to wait for packet recovery, etc.
在按照图2B的接收器/客户机201上,网络监控器271可以从接收器/客户机201的视角经由接口251收集网络监控器271上的当前网络统计量,并经由控制信道255将接收器/客户机201的网络体验输出到经由数字数据网络110与之连接的服务器。一旦在发送器/服务器200经由网络110接收,经由接口250将这样收集的网络统计量输出到网络监控器270,以便补充如上面所讨论网络监控器270从网络110的发送器/服务器的视角收集的统计量。数字数据网络110可以是包括但不局限于卫星网络、陆基无线网络、光纤网络、同轴电缆网络、双绞线网络、局域网、广域网和其他已知数字数据网络的任何数字数据网络。典型网络接口251被显示在网络110与客户机/服务器201上的RAM模块231之间。网络接口模块的例子包括与计算机网络110连接的以太网卡、IEEE 802.11/WiFi卡等。On receiver/client 201 according to FIG. The client 201's network experience is output to a server connected to it via the digital data network 110. Once received at sender/server 200 via network 110, the network statistics thus collected are output to network monitor 270 via interface 250 in order to supplement what network monitor 270 collects from the sender/server perspective of network 110 as discussed above statistics. Digital data network 110 may be any digital data network including, but not limited to, satellite networks, terrestrial wireless networks, fiber optic networks, coaxial cable networks, twisted pair networks, local area networks, wide area networks, and other known digital data networks. A typical network interface 251 is shown between the network 110 and the RAM module 231 on the client/server 201 . Examples of network interface modules include Ethernet cards, IEEE 802.11/WiFi cards, etc. connected to the computer network 110 .
在讨论图3之前,重要的是要注意到,相似标号表示图中的相似元件。此外,像网络110的标号110的第一个数字1那样的标号的第一个数字指示该元件第一次出现的图号。因此,例如,RAM模块230第一次出现在图2中,与图1的可靠媒体协议(RAM)模块130类似,但与图1的可靠媒体协议(RAM)模块130不同,因为引入了都未出现在图1中的NAL首标分析器210、网络监控器270和重发决定器275。此外,依照本发明的原理,图2B的客户机/接收器201的网络监控器271改进了图2A的RMP模块230和重发决定器275的操作。分析器210、网络监控器270和271和重发决定器275的一些优点上面已经描述过,但下面将结合图3和图4的讨论作进一步描述。Before discussing Figure 3, it is important to note that like numerals refer to like elements in the Figures. Furthermore, the first digit of a reference number like the first digit 1 of reference numeral 110 of network 110 indicates the figure number in which the element first appears. Thus, for example, RAM module 230 appears for the first time in FIG. 2 and is similar to, but different from, Reliable Media Protocol (RAM) module 130 of FIG. NAL header analyzer 210, network monitor 270 and retransmission decider 275 appear in FIG. Additionally, network monitor 271 of client/receiver 201 of FIG. 2B improves the operation of RMP module 230 and retransmission decider 275 of FIG. 2A in accordance with the principles of the present invention. Some of the advantages of analyzer 210, network monitors 270 and 271, and retransmission decider 275 have been described above, but will be further described below in connection with the discussion of FIGS. 3 and 4 .
图3提供了涉及向经由网络110连接的一个或多个流式接收器发送的NAL抽象层首标分析器210、网络监控器270和重发决定器275的直接表示。参照图3A,其中示出了可以处在流式服务器中或远离它的可伸缩视频编解码器(SVC)的编码器300。如下文进一步所述,可伸缩视频编解码器(SVC)提供时间或帧速率可伸缩性、空间或画面大小可伸缩性(例如,以多个分辨率和宽高比编码视频)、和信噪比(SNR)或质量/保真度可伸缩性。如结合图4进一步所述,NAL首标分析器210可以是H.264兼容AVC网络抽象层(NAL)首标分析器或具有相似功能的其他抽象层首标分析器。例如,参考图3B,NAL首标分析器210可以从本地存储器存储体,例如,MP-4文件阅读器302接收输入。示范性流式服务器实施例可以是提供IP电视频道或电影服务的流式服务器。在可替代实施例图3C中,示出了接收,例如,来自网络110的流式视频并将接收的分组输出到NAL首标分析器210的去分组化器304。图3C的流式服务器的示范性视频应用可以是描绘的流式服务器是从一个视频通信终端到另一个视频通信终端的网络路径中的一个服务器的视频电话。FIG. 3 provides a direct representation of NAL abstraction layer header analyzer 210 , network monitor 270 and retransmission decider 275 involved in sending to one or more streaming receivers connected via network 110 . Referring to FIG. 3A, there is shown a scalable video codec (SVC) encoder 300 which may be located in the streaming server or remotely from it. As described further below, a scalable video codec (SVC) provides temporal or frame rate scalability, spatial or frame size scalability (e.g., encoding video at multiple resolutions and aspect ratios), and signal-to-noise ratio (SNR) or quality/fidelity scalability. As further described in connection with FIG. 4, NAL header analyzer 210 may be an H.264 compliant AVC Network Abstraction Layer (NAL) header analyzer or other abstraction layer header analyzer with similar functionality. For example, referring to FIG. 3B , NAL header analyzer 210 may receive input from a local memory bank, eg, MP-4 file reader 302 . An exemplary streaming server embodiment may be a streaming server providing IP television channel or movie services. In an alternative embodiment FIG. 3C , a depacketizer 304 that receives, for example, streaming video from network 110 and outputs the received packets to NAL header analyzer 210 is shown. An exemplary video application for the streaming server of FIG. 3C may be video telephony in which the streaming server is depicted as a server in a network path from one video communication terminal to another video communication terminal.
在图3A、图3B和图3C的每一个中,NAL首标分析器210可以经由分组化器310将分组/帧优先级提供给本地高速缓存235。对于初始发送,分析器210将分析器数据和优先级输出到分组化器310。经由路径312,将副本放在本地高速缓存235中,并经由路径314,分组化器将分组数据发送给流式服务器的去分组化器320。网络监控器270将网络传输状况数据提供给重发决定器275,以便为经由网络110到去分组化器320的路径316上的重发有选择决定是否重发存储在本地高速缓存235中的分组/帧。路径316用于根据传输状况和分析器指定的优先级重发选择的分组。In each of FIGS. 3A , 3B, and 3C , NAL header analyzer 210 may provide packet/frame priority to local cache 235 via packetizer 310 . For an initial transmission, analyzer 210 outputs the analyzer data and priorities to packetizer 310 . Via path 312 a copy is placed in the local cache 235 and via path 314 the packetizer sends the packetized data to the depacketizer 320 of the streaming server. Network monitor 270 provides network traffic status data to retransmission decider 275 to selectively decide whether to retransmit packets stored in local cache 235 for retransmission on path 316 via network 110 to depacketizer 320 /frame. Path 316 is used to retransmit selected packets based on traffic conditions and analyzer-specified priorities.
现在,参考图4,参考示出发送者或发送器/服务器方操作和接收器/客户机/终端方操作的所描绘流程图进一步描述按照本发明的抽象层首标分析器、网络监控器和重发决定器的功能操作。在方块400中,图3的服务器/发送器获取例如来自本地文件,按图3B,文件阅读器302的数据或接收来自网络接口,例如,来自图3C的网络110和去分组化器304的数据。将接收的数据提供给代表图2A和图3的抽象层首标分析器210的方块410。Referring now to FIG. 4 , the abstraction layer header analyzer, network monitor and Functional operation of the retransmission decider. In block 400, the server/transmitter of FIG. 3 retrieves, for example, data from a local file, according to FIG. 3B, file reader 302 or receives data from a network interface, e.g., from network 110 and depacketizer 304 of FIG. 3C . The received data is provided to block 410 representing abstraction layer header analyzer 210 of FIGS. 2A and 3 .
简要参照图5,其中示出了提供要分析的字段的典型抽象层首标,例如,SVC NAL扩展首标。例如,抽象层首标分析器410可以分析被显示成出现在代表层表示的层间编码依赖性或空间/分辨率可伸缩性的水平的第二字节(字节1)的1-3位置上的DID字段。在例如第二字节(字节1)的4-7位置上的QID字段可以接在后面,代表中等粒度可伸缩性(MGS)层表示的质量水平。在,例如,第三字节(字节2)的0-2位置上的TID字段代表层表示的时间等级。分析包含这样字段的抽象层首标的一个结果是识别随后有效载荷数据与之相联系的层。响应有效载荷数据类型的识别,图4的分析块410上的分析器可以为如下数据的每个识别层指定不同优先级:例如,高、中等和低优先级。在可替代实施例中可以应用不止三个级别的优先级。例如,基本层可以接收从缓冲器或高速缓冲存储器重发的高优先级,因为基本层对于接收器上的完全解码是绝对必要的。可以对增强层指定中等优先级,因为增强层数据对于较高层的解码是必要的。数字数据的SVC编码流可以包含基本层和一个增强层。另一方面,为了享受更高的画面质量,可以提供第二或更高增强层,因此,对于相关有效载荷数据,可以在高速缓存235中对较高增强层指定低优先级。Referring briefly to FIG. 5, there is shown a typical abstraction layer header providing fields to be analyzed, eg, an SVC NAL extension header. For example, abstraction layer header analyzer 410 may analyze positions 1-3 of the second byte (byte 1) that are shown to occur at a level representing inter-layer coding dependencies or spatial/resolution scalability of the layer representation DID field on the . The QID field, for example at positions 4-7 of the second byte (byte 1), may follow, representing the quality level indicated by the Medium Granular Scalability (MGS) layer. The TID field at, for example, position 0-2 of the third byte (byte 2) represents the temporal level of the layer representation. One result of analyzing an abstraction layer header containing such a field is to identify the layer to which the subsequent payload data is associated. In response to identification of payload data types, the analyzer at analysis block 410 of FIG. 4 may assign different priorities to each identified layer of data: eg, high, medium, and low priority. More than three levels of priority may be applied in alternative embodiments. For example, the base layer may receive high priority for retransmission from a buffer or cache since the base layer is absolutely necessary for full decoding at the receiver. Medium priority may be assigned to enhancement layers, since enhancement layer data is necessary for decoding of higher layers. An SVC encoded stream of digital data may contain a base layer and an enhancement layer. On the other hand, in order to enjoy a higher picture quality, a second or higher enhancement layer may be provided, so a lower priority may be assigned to the higher enhancement layer in the cache 235 for the relevant payload data.
为了提供简化例子,如果SVC编码视频数据具有416×240的分辨率和600kbps的位速率的基本层以及832×480的更高分辨率和对于视频流来说1.2兆位每秒(Mbps)的随之位速率的一个基本层,那么,分析器410可以根据它的DID字段识别基本层NAL单元并对基本层指定较高优先级。另一方面,可以对增强层指定较低优先级(以便提供较高分辨率)。在本例中对基本层指定比增强层高的优先级。输出优先级别可以在9-15位置上显示在图6中的RTP首标的有效载荷类型(PT)字段中指示出来。一旦指定了优先级,例如,高、中和低,如果要求在传输层上重发,则也可以在实时协议(RTP)首标的类似字段中表示优先级信息,或者可以在IP首标的服务类型(TOS)字段中表示优先级信息。最初,随着通过“发送分组”450经由网络110向接收器发送分组,在方块420中将副本缓存在430上的本地高速缓存/缓冲存储器中。分组可能丢失在网络中或被接收。本地高速缓存430中的分组等待有关网络状况和是否接收分组的确定。To provide a simplified example, if SVC encoded video data has a base layer resolution of 416×240 and a bit rate of 600 kbps and a higher resolution of 832×480 and a random bit rate of 1.2 megabits per second (Mbps) for the video stream A base layer of the bit rate, then, the analyzer 410 can identify the base layer NAL unit according to its DID field and assign a higher priority to the base layer. On the other hand, enhancement layers can be assigned lower priority (in order to provide higher resolution). In this example the base layer is assigned a higher priority than the enhancement layer. The output priority level may be indicated in the Payload Type (PT) field of the RTP header shown in FIG. 6 at positions 9-15. Once a priority is specified, e.g., high, medium, and low, the priority information can also be indicated in a similar field of the Real-Time Protocol (RTP) header if retransmission is required at the transport layer, or in the Type of Service header of the IP header The priority information is indicated in the (TOS) field. Initially, as the packet is sent to the receiver via "Send Packet" 450 via the network 110 , a copy is cached in a local cache/buffer at 430 in block 420 . Packets may be lost in the network or received. Packets in local cache 430 await a determination regarding network conditions and whether the packet was received.
如果接收分组和网络状况表现良好,则在460上接收分组并在465上接收器确定预期分组丢失了(是)还是没有丢失(否)。如果丢失了(是),则在485上发送重发请求,并经由图2B的控制信道255将接收器的恢复定时设回到发送者/发送器/服务器200中。如果不是,则在490中,例如,为接收器/客户机201上的显示功能206按适当次序将接收分组放置在接收缓冲器中。If the packet is received and network conditions appear to be good, the packet is received at 460 and the receiver determines at 465 that the expected packet was lost (Yes) or not (No). If lost (Yes), a retransmission request is sent at 485 and the receiver's recovery timing is set back into the sender/transmitter/server 200 via the control channel 255 of FIG. 2B. If not, then in 490 the received packets are placed in the receive buffer in the proper order, eg, for the display function 206 on the receiver/client 201 .
如果经由485发送重发请求,则激活网络监控器功能405,然后处理接收的重发请求。如本文进一步所述,可以在网络监控器271上确定给定时间的端到端分组丢失率作为来自接收器方的当前网络110状况。将当前网络状况,例如,端到端分组丢失率与重发请求一起作为405的输出提供给重发决定器415。If a retransmission request is sent via 485, the network monitor function 405 is activated and then the received retransmission request is processed. As further described herein, the end-to-end packet loss rate at a given time can be determined on the network monitor 271 as current network 110 conditions from the receiver side. The current network conditions, eg, end-to-end packet loss ratio are provided to the retransmission decider 415 as an output of 405 together with the retransmission request.
网络监控器405的示范性应用可以是发送者/服务器处在有线网络110上,例如,机顶盒(电缆或卫星)或家庭网关以及接收器是与无线接入点AP相联系的移动设备或个人计算机的情况。中间节点/无线接入点(AP/路由器)可以向发送者报告网络和无线信道状况。因此,当被修改成并入按照一个实施例的抽象层首标分析器和方法中时,按照本发明的原理的可靠媒体协议(RMP)模块230作出的实时分组重发决定可以是具有层意识的。An exemplary application of the network monitor 405 could be that the sender/server is on the wired network 110, e.g. a set-top box (cable or satellite) or a home gateway and the receiver is a mobile device or a personal computer associated with a wireless access point AP Case. Intermediate nodes/wireless access points (AP/routers) can report network and wireless channel conditions to the sender. Thus, real-time packet retransmission decisions made by the Reliable Media Protocol (RMP) module 230 according to the principles of the present invention may be layer-aware when modified to be incorporated into the abstraction layer header analyzer and method according to one embodiment. of.
重发决定器415询问,例如,当前端到端发送分组丢失率是否是高的,意味着它是否在设置在RMP模块230的存储器中的阈水平之上。如果答案是“是”,则在445丢弃较低优先级分组,并只从高速缓存/缓冲器430中恢复和重发较高优先级分组。除了分组丢失率之外的传输状况的其它度量可以是可用带宽(例如,端到端路径中的最低可用带宽)和往返延迟(较长的往返延迟可能要求为了重发而保存在高速缓存/缓冲器235中的分组的暂停)。可以将包括可用带宽的这些传输状况的每一个与设置在存储器中的相关阈水平相比较,以决定重发分组。可以将一种或多种传输状况应用在作出重发决定以及通过分析410设置的分组优先级中。如果返回否定的答案,则在435上,经由“发送分组”440和网络110从高速缓存/缓冲器430重发所有请求分组。The retransmission decider 415 asks, for example, whether the current end-to-end transmission packet loss rate is high, meaning whether it is above a threshold level set in the memory of the RMP module 230 . If the answer is "yes", then the lower priority packets are dropped at 445 and only the higher priority packets are retrieved from cache/buffer 430 and retransmitted. Other measures of transmission conditions besides packet loss rate may be available bandwidth (e.g., lowest available bandwidth in an end-to-end path) and round-trip delay (longer round-trip delays may require storage in cache/buffer for retransmission) Pause of packets in device 235). Each of these transmission conditions, including available bandwidth, may be compared to an associated threshold level set in memory to decide to retransmit the packet. One or more transmission conditions may be applied in making the retransmission decision and in the packet prioritization set by analysis 410 . If a negative answer is returned, then at 435 all request packets are resent from cache/buffer 430 via "Send Packets" 440 and network 110 .
一旦接收,在460上接收重发分组,并在470上将其识别为重发分组。给定实时观看体验,在475上检查接收时间。问一下:重发晚了?如果重发分组被接收太晚,也就是说,节目观看体验已经转移到下一个帧上,则在480上丢弃重发分组。另一方面,如果重发分组不晚(即,答案是否定的),则在490上按次序将重发分组放在接收缓冲器中以便加以显示。Once received, the retransmission packet is received at 460 and identified as a retransmission packet at 470 . Given the live viewing experience, check the reception time on the 475. Ask: Too late to repost? If the retransmission packet is received too late, that is, the program viewing experience has shifted to the next frame, then the retransmission packet is discarded at 480 . On the other hand, if the retransmitted packet is not too late (ie, the answer is no), then at 490 the retransmitted packet is placed in the receive buffer in order for display.
本发明的RMP方法可以在灵活软件库、硬件、固件、任何计算机或处理器、专用集成电路(ASIC)、精简指令集计算机(RISC)、现场可编程门阵列(FPGA)或它们的组合体中实现。本发明的RMP方法使用类似套接字用户空间API和底层传输手段以便易于与流式服务器和播放器应用集成。本发明的RMP方法对它支持的流式应用是透明的。内部保持UDP数据信道和TCP控制信道。本发明的RMP方法是可扩展的,以支持像FEC和混合ARQ那样的其它错误纠正方案。The RMP method of the present invention can be implemented in flexible software library, hardware, firmware, any computer or processor, application specific integrated circuit (ASIC), reduced instruction set computer (RISC), field programmable gate array (FPGA) or their combination accomplish. The RMP method of the present invention uses a socket-like user-space API and underlying transport for easy integration with streaming server and player applications. The RMP method of the present invention is transparent to the streaming applications it supports. Internally maintain UDP data channel and TCP control channel. The RMP method of the present invention is extensible to support other error correction schemes like FEC and hybrid ARQ.
现在参考图6、图7和图8进一步描述本发明的网络监控器功能405。一种可能手段显示在图6中,其中网络监控器271可以例如从序列号,即,第一行的6-1位置中检测序列间隙。另一种手段是如图7所示,利用一个字节的MPEG-2传输流首标的连续计数(CC)字段。The network monitor function 405 of the present invention is now further described with reference to FIGS. 6 , 7 and 8 . One possible approach is shown in Figure 6, where the network monitor 271 can detect sequence gaps eg from the sequence number, ie the 6-1 position of the first row. Another approach is to use a Continuation Count (CC) field of a one-byte MPEG-2 transport stream header as shown in FIG. 7 .
将图2B的接收器/客户机201的网络监控器271收集的统计量发送给图2A的服务器/发送器200的消息的示范性格式显示在图8中。该消息格式可能类似于RTP控制协议(RTCP)接收器报告(RR)消息。尤其,例如,在第4行的0-7位置上可以提供“丢失比例”字段。还可以提供像丢失分组的累计数量那样的其它相关数据,可以将该丢失分组的累计数量与在相同信道上接收的丢失分组的以前接收累计数量相比较。该差值提供了在相继消息被成功接收之间的时间所定义的间隔内丢失的分组的数量。An exemplary format of a message to send statistics collected by network monitor 271 of receiver/client 201 of FIG. 2B to server/sender 200 of FIG. 2A is shown in FIG. 8 . The message format may be similar to an RTP Control Protocol (RTCP) Receiver Report (RR) message. In particular, for example, a "loss ratio" field may be provided on the 4th row at positions 0-7. Other relevant data may also be provided such as the cumulative number of lost packets which may be compared with previously received cumulative numbers of lost packets received on the same channel. The difference provides the number of packets lost in the interval defined by the time between successive messages being successfully received.
图9提供了发送者/服务器/发送器通过从接收器/客户机201接收的重发请求获取网络分组丢失的格式。图4的网络监控器功能405从“开始分组的基本序列号”和“结束分组的偏移量”字段中计算丢失分组的数量。类似地,图10的RMP ARQ请求(NACK)分组提供了可以存储以及与随后接收基本序列号相比较的基本序列号。描绘的基本序列号和位图指示要重发的接收器请求的分组的序列。确定网络传输状况的又一种手段是监控较低层例如网络/MAC/PHY层次发送统计量,以估计信道状况和可用带宽。FIG. 9 provides a format for a sender/server/transmitter to obtain network packet loss through a retransmission request received from a receiver/client 201. The network monitor function 405 of Figure 4 calculates the number of lost packets from the "Basic Sequence Number of Starting Packet" and "Offset of Ending Packet" fields. Similarly, the RMP ARQ request (NACK) packet of Figure 10 provides a base sequence number that can be stored and compared with a subsequently received base sequence number. The depicted base sequence numbers and bitmap indicate the sequence of receiver requested packets to be retransmitted. Yet another means of determining network traffic conditions is to monitor lower layer eg network/MAC/PHY layer transmission statistics to estimate channel conditions and available bandwidth.
在上述的本发明的RMP方案中,未对在数据信道255上发送的分组作出变更。因此,保持了向后兼容性。此外,本发明的RMP方案有效利用了带宽,因为只在低开销的控制信道上请求和重发丢失媒体分组。丢失分组请求用作NACK(否定确认),并且还提供到发送者的反馈。因为可以在恢复时间窗口内多次重发丢失分组,所以可以在广泛不同信道状况下提供高可靠性。此外,本发明的RMP方案通过让重发具有最大等待时间(即,恢复窗口)加强了应用延迟约束,因此在给定时间约束下作用于最大努力输送模型。In the RMP scheme of the present invention described above, no changes are made to the packets sent on data channel 255 . Therefore, backward compatibility is maintained. Furthermore, the RMP scheme of the present invention utilizes bandwidth efficiently, since lost media packets are only requested and retransmitted on low-overhead control channels. The lost packet request serves as a NACK (Negative Acknowledgment) and also provides feedback to the sender. Because lost packets can be retransmitted multiple times within the recovery time window, high reliability can be provided under widely varying channel conditions. Furthermore, the RMP scheme of the present invention enforces application delay constraints by having retransmissions with a maximum latency (ie, recovery window), thus acting on a best-effort delivery model given time constraints.
注意,上面的实施例是使用视频发送来说明的。但本发明也可以应用于音频的发送,例如,电话、和其它实时多媒体流式应用。Note that the above embodiments are described using video transmission. But the invention can also be applied to the transmission of audio, for example, telephony, and other real-time multimedia streaming applications.
尽管本发明的上述方案是针对无线网络来描述的,但该方案也可以用在牵涉到分组丢失的任何类型网络中。Although the above scheme of the invention has been described for a wireless network, the scheme can also be used in any type of network involving packet loss.
应该明白,本发明可以以硬件、软件、固件、专用处理器、或它们的组合的各种形式实现。优选的是,将本发明实现成硬件和软件的组合。此外,软件可以优选地实现成有形地具体化在程序存储设备上的应用程序。应用程序可以上载到包含任何适当架构的机器上并由它执行。优选的是,在含有像一个或多个中央处理单元(“CPU”)、随机访问存储器(“RAM”)、和输入/输出(“I/O”)接口那样的硬件的计算机平台上实现该机器。该计算机平台还包括操作系统和微指令代码。本文所述的各种过程和功能可以是可经由操作系统执行的部分微指令代码或部分应用程序(或它们的组合)。另外,像附加数据存储设备和打印设备那样的各种其它外围设备可以与计算机平台连接。It should be understood that the present invention can be implemented in various forms of hardware, software, firmware, special purpose processors, or combinations thereof. Preferably, the invention is implemented as a combination of hardware and software. Furthermore, the software is preferably implemented as an application program tangibly embodied on a program storage device. Applications can be uploaded to and executed by a machine containing any suitable architecture. Preferably, the implementation is implemented on a computer platform containing hardware such as one or more central processing units ("CPUs"), random access memory ("RAM"), and input/output ("I/O") interfaces. machine. The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may be part microinstruction code or part application program (or a combination thereof) executable via the operating system. In addition, various other peripheral devices, such as additional data storage devices and printing devices, may be connected to the computer platform.
还应该明白,因为描绘在附图中的一些分系统部件和方法步骤优选地用软件来实现,所以系统部件(或过程步骤)之间的实际连接可能随编程本发明的方式而异。给定本文的教导,相关领域的普通技术人员能够设想出本发明的类似实现或配置。It should also be understood that because some of the subsystem components and method steps depicted in the figures are preferably implemented in software, the actual connections between system components (or process steps) may vary depending on the manner in which the invention is programmed. Given the teachings herein, one of ordinary skill in the relevant art can contemplate similar implementations or configurations of the present invention.
Claims (6)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610566114.1A CN106100803A (en) | 2010-01-28 | 2010-01-28 | The method and apparatus determined is retransmitted for making |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610566114.1A CN106100803A (en) | 2010-01-28 | 2010-01-28 | The method and apparatus determined is retransmitted for making |
| CN2010800658622A CN103109485A (en) | 2010-01-28 | 2010-01-28 | Method and apparatus for making a retransmission decision |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN2010800658622A Division CN103109485A (en) | 2010-01-28 | 2010-01-28 | Method and apparatus for making a retransmission decision |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN106100803A true CN106100803A (en) | 2016-11-09 |
Family
ID=57240753
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201610566114.1A Pending CN106100803A (en) | 2010-01-28 | 2010-01-28 | The method and apparatus determined is retransmitted for making |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN106100803A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109428683A (en) * | 2017-08-24 | 2019-03-05 | 福建省华渔教育科技有限公司 | Packet acknowledgement method and terminal based on bitmap |
| CN113900816A (en) * | 2021-10-15 | 2022-01-07 | 无锡江南计算技术研究所 | Multi-depth buffer activation retransmission method and device |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6021516A (en) * | 1996-01-23 | 2000-02-01 | Ntt Mobile Communications Network, Inc. | Communication system and transmission station |
| CN1476267A (en) * | 2002-05-10 | 2004-02-18 | ���ǵ�����ʽ���� | Device and method for retransmitting data in mobile communication system |
| CN101180831A (en) * | 2005-05-24 | 2008-05-14 | 诺基亚公司 | Method and apparatus for hierarchical transmission/reception in digital broadcasting |
| CN101543018A (en) * | 2007-01-12 | 2009-09-23 | 庆熙大学校产学协力团 | Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, qos control algorithm and apparatus for ipv6 label switching using the fo |
-
2010
- 2010-01-28 CN CN201610566114.1A patent/CN106100803A/en active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6021516A (en) * | 1996-01-23 | 2000-02-01 | Ntt Mobile Communications Network, Inc. | Communication system and transmission station |
| CN1476267A (en) * | 2002-05-10 | 2004-02-18 | ���ǵ�����ʽ���� | Device and method for retransmitting data in mobile communication system |
| CN101180831A (en) * | 2005-05-24 | 2008-05-14 | 诺基亚公司 | Method and apparatus for hierarchical transmission/reception in digital broadcasting |
| CN101543018A (en) * | 2007-01-12 | 2009-09-23 | 庆熙大学校产学协力团 | Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, qos control algorithm and apparatus for ipv6 label switching using the fo |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109428683A (en) * | 2017-08-24 | 2019-03-05 | 福建省华渔教育科技有限公司 | Packet acknowledgement method and terminal based on bitmap |
| CN109428683B (en) * | 2017-08-24 | 2021-06-08 | 福建省华渔教育科技有限公司 | Bitmap-based packet acknowledgement method and terminal |
| CN113900816A (en) * | 2021-10-15 | 2022-01-07 | 无锡江南计算技术研究所 | Multi-depth buffer activation retransmission method and device |
| CN113900816B (en) * | 2021-10-15 | 2024-03-22 | 无锡江南计算技术研究所 | Multi-depth buffer activation retransmission method and device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9306708B2 (en) | Method and apparatus for retransmission decision making | |
| EP2529528B1 (en) | A method and apparatus for parsing a network abstraction-layer for reliable data communication | |
| KR101242663B1 (en) | Packet transmission apparatus, communication system and computer-readable recording medium | |
| CN100539544C (en) | Medium streaming distribution system | |
| EP2061174B1 (en) | Data communication system, data transmitting device and method, using probe packets and having a transmission buffer control | |
| US20120170445A1 (en) | Efficient application-layer automatic repeat request retransmission method for reliable real-time data streaming in networks | |
| CN108781139A (en) | Data in packet network retransmit | |
| JP2004187286A (en) | Mpeg-4 live unicast video streaming system in wireless network equipped with congestion control of end-to-end bit rate reference | |
| CN106658223B (en) | Video uplink transmission method and device under Long Term Evolution (LTE) network | |
| CN101741752B (en) | The methods, devices and systems of video streaming | |
| CN106100803A (en) | The method and apparatus determined is retransmitted for making | |
| JP5523163B2 (en) | Transmission device, transmission method, and program | |
| EP1947859A1 (en) | Video transmission method and system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| AD01 | Patent right deemed abandoned | ||
| AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20191022 |