KR20150094435A - Method of transmitting image data with short-term reliability - Google Patents

Method of transmitting image data with short-term reliability Download PDF

Info

Publication number
KR20150094435A
KR20150094435A KR1020140015714A KR20140015714A KR20150094435A KR 20150094435 A KR20150094435 A KR 20150094435A KR 1020140015714 A KR1020140015714 A KR 1020140015714A KR 20140015714 A KR20140015714 A KR 20140015714A KR 20150094435 A KR20150094435 A KR 20150094435A
Authority
KR
South Korea
Prior art keywords
packet
expiration
transmission
ack
value
Prior art date
Application number
KR1020140015714A
Other languages
Korean (ko)
Inventor
박찬호
신치훈
Original Assignee
한국전자통신연구원
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020140015714A priority Critical patent/KR20150094435A/en
Publication of KR20150094435A publication Critical patent/KR20150094435A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/188Time-out mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)

Abstract

The present invention relates to a UDP/IP network technology, a remote image transmission technology, and a network transmission protocol specialized for image transmission using H/W. According to an aspect of the present invention, provided is a method for transmitting image data with short-term reliability whereby a packet is not transmitted after a certain period of time regardless of reception of a counterpart by using an expiration timer set by an expiration timeout value included in a packet header. The method includes the steps of: starting the expiration timer if a re-transmission buffer is empty during packet transmission; clearing the expiration timer if the expiration timer is finished, vacating the retransmission buffer, recording a UPN tag of a next packet, and transmitting the UPN tag; and removing a received packet from the re-transmission buffer if an Ack or EACK packet is received and replacing an expiration timestamp value of a packet in the header of the re-transmission buffer with an expiration timer value.

Description

[0001] The present invention relates to a method of transmitting image data with short-

BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a UDP / IP network technology and a remote image transmission technology, and relates to a network transmission protocol specialized for image transmission using H / W.

Remote transmission of video signals is required for cloud services and remote use of PCs. The protocols that the cloud service uses to transmit video include Microsoft's RDP, RemoteFx, Citrix's ICA, HDX, and VMware's PCoIP. These protocols mainly use UDP as a lower protocol when the amount of data to be transmitted is high or a short delay is required.

The TCP protocol is suitable for secure transmission when there is little restriction on the delay time, but it is difficult to use when the delay time is a problem. Also, it is complicated and has a lot of overhead as compared with UDP, so it is difficult to implement it as hardware. While solving the problem of TCP, a protocol called RUDP has been proposed to solve problems such as packet loss and transmission order violation which are disadvantages of UDP, but this has not been adopted as an Internet standard.

As demand of real - time multimedia service increases, protocols such as RTP / RTCP, RSVP, and RSTP have been developed as transport protocols to complement existing TCP / UDP. Of these, the protocol for actually transmitting data is the RTP protocol, the UDP is used for the lower protocol, and the RTCP protocol is used for control. The RTP protocol is also complex to implement with H / W because it must be implemented with other protocols to implement connection management and retransmission.

Korean Patent Application No. 10-2007-0035103

The present invention provides a transmission protocol for reducing the overhead of existing video transmission protocols, facilitating H / W implementation, and improving the quality of real time video by eliminating repetitive retransmissions.

According to an aspect of the present invention, there is provided an image data transmission method that does not retransmit a packet after a predetermined time regardless of reception or non-reception of an opposite party using an Expiration Timer set by an Expiration Timeout Value included in a packet header, The Expiration Timer is cleared, the Expiration Timer is cleared, the retransmission buffer is cleared, a UPN tag of the next packet is recorded and transmitted, and an Ack or an EACK packet is transmitted. And removing an acknowledged packet from the retransmission buffer when it is received and replacing the Expiration Timestamp value of the packet in the header of the retransmission buffer with an Expiration Timer value.

According to the present invention, there is provided a transmission protocol that reduces the overhead of an existing video transmission protocol and facilitates H / W implementation. The developed transport protocol refers to the header format of the RUDP protocol, is suitable for H / W based transmission, and includes connection management and retransmission functions. In addition, a retransmission time limit function is attached to prevent performance degradation due to unnecessary retransmission.

Therefore, according to the present invention, it is possible to transmit data with reliability for a short period of time. It is a protocol suitable for applications where repeated retransmission is rather deteriorated in quality due to time limitation like real-time image data, and it is advantageous to implement it with H / W relatively easily.

Hereinafter, the present invention will be described with reference to the embodiments shown in the accompanying drawings. For the sake of clarity, throughout the accompanying drawings, like elements have been assigned the same reference numerals. It is to be understood that the present invention is not limited to the embodiments illustrated in the accompanying drawings, but may be embodied in many other specific forms without departing from the spirit or essential characteristics thereof.
FIG. 1 exemplarily shows a video transmission system in which a video data transmission method with short-term reliability is implemented.
2 is a diagram exemplarily showing a basic header format of a protocol for implementing a video data transmission method having short-term reliability.
3 is a diagram illustrating a structure of a SYN packet and a UPM packet for implementing a video data transmission method having short-term reliability.
FIG. 4 is a diagram illustrating a structure of EACK, RST, ACK, and IMA packets for implementing a video data transmission method having short-term reliability.
5 is a diagram illustrating an example of a register set used in implementing a video data transmission method having short-term reliability.

While the present invention has been described in connection with certain exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and similarities. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

FIG. 1 exemplarily shows a video transmission system in which a video data transmission method with short-term reliability is implemented.

Referring to FIG. 1, in the image transmission system, a video transmission card 103 mounted on a server or a PC 101 receives a video signal output from a video card 102 and transmits the video signal to one or more clients via an Ethernet switch 104 FIG. 2 illustrates an example of a service to be performed. The client can receive the video signal through the network. The client can be implemented in various forms, for example, a thin client 105 such as a PC or a tablet, or a monitor 107 connected to the image receiving card 106. Thin client consumes a little delay time for network packet processing. If the image is compressed, the time to release it is delayed, but the release is simpler than compression. The video data transmission method having short-term reliability is a transmission protocol that can be used between the video transmission card 103 and the video reception card 106 or the thin client 105 in FIG.

2 is a diagram exemplarily showing a basic header format of a protocol for implementing a video data transmission method having short-term reliability. The basic format is similar to RUDP and uses UDP as the underlying protocol.

The first 7 bits of the tags function to tell you what kind of packet is. Here, SYN, ACK, and RST have the same meaning as those used in the TCP and RUDP protocols. That is, SYN means connection request, ACK means packet reception confirmation, and RST means connection termination request. On the other hand, the EAK tag is a tag used in RUDP or the like, and when the order is changed, the EAK tag is used to confirm it. The IMA tag is a tag for requesting an Ack packet. When a packet having an IMA tag is received, the receiver must immediately transmit an Ack packet. The UAN tag is a tag for instructing the receiver to update the Ack number forcibly, and the UPM tag is a tag for instructing to change related parameters during connection.

Header Length, Sequence Number, Acknowledge Number, and Timestamp are also similar to those used in protocols such as TCP. The length of the header (Bytes), the number of the packet to be transmitted, the number of the acknowledged packet, and the time information at the time of transmission. Sequence Number is a serial number of a packet that is not a Byte Count, and is a value that increases when a packet including SYN, RST, UPM, IMA, or data is transmitted.

The packet may further include an additional header or user data. A packet to which an additional header is added is a SYN, UPM, or EACK packet, and can not contain User Data.

3 is a diagram illustrating a structure of a SYN packet and a UPM packet for implementing a video data transmission method having short-term reliability. The structure of two packets has the same form, only the tag value is different.

Max Outstanding Kbytes is a value that determines the maximum transmission size that can be transmitted without receiving an Ack. This is because the protocol is based on the hardware implementation, so the size of the retransmission buffer must be considered. Here, the transmitting and receiving sides can be connected with different Max Outstanding Kbytes values. The Max Outstanding Kbytes value used in the connection is determined to be smaller than the size of the retransmission buffer.

Expiration Timeout Value is a value that determines to what extent to perform retransmission. After the initial transmission, if the time equal to the Expiration Timeout Value is exceeded, the packet is no longer retransmitted regardless of whether it is received or not. This is possible because the image has time-dependent properties. In other words, the video becomes data that is no longer needed after a certain period of time, so retransmission only degrades the quality further. Therefore, it is necessary to set a fixed time and to support retransmission only within that period.

Ack Wait Timeout Value is a value used to check the connection status when ACK is not received for a certain period of time although ACK is received. When confirming the connection status, the IMA field is checked to transmit a packet, thereby prompting the receiving side to immediately send an Ack packet. If such a timeout occurs consecutively as many as the Max Check Count, it is considered to be disconnected.

Time Scale is a field for determining the basic unit of Timestamp and Timeout Values. For example, if the Time Scale value is 10, the value of Timestamp is incremented every 10 seconds.

Other values are the same as those used in RUDP. Max Segment Size refers to the size that can be transmitted per packet. Cumulative Ack Timeout Value means the maximum delay time when delaying and overlapping Ack packets. Here, the Cumulative Ack Timeout value should be determined to be smaller than the Expiration Timeout value, and the Ack Wait Timeout value should be set to be larger than the Expiration Timeout value. If there is no data to transmit, Null Segment Timeout Value indicates a Null Segment with no data for a certain period of time for Keep Alive. Max Cumulative Ack means the maximum number of stackable Acks. Max Lost Seq indicates how many packets are allowed to be received when the Sequence Number of the received packet is missing. Unlike RUDP, this protocol considers one to be consecutive.

On the other hand, the UPM packet is a packet for instructing to change connection parameters determined as a SYN packet during packet transmission / reception. Typically, the receiving side calculates the jitter using the Timestamp, determines the appropriate Expiration Timeout Value by referring to the Jitter and the Round Trip Time. This value can vary depending on the connection state and can be instructed to change the value to the sender to change it if it differs from the old value. The packets used at this time are UPM packets. The values that are not changed are recorded by recording the existing values as they are.

FIG. 4 is a diagram illustrating a structure of EACK, RST, ACK, and IMA packets for implementing a video data transmission method having short-term reliability. The EACK and RST packets can not contain user data, and the ACK / IMA packet can contain user data.

The EACK packet is a packet for confirming the reception when the sequence is changed. In other words, if there is a missing Sequence Number in the received packet, it is recorded in the Lost Sequence Number and the consecutive missing number is recorded in the Consecutive Counter. For example, if the first, second, third, fifth, ninth, and ninth packets are received, the receiver records 4 in the first lost sequence number and 1 in the first consecutive counter, 6 in the second lost sequence number, 2 " is sent to the transmitting side. In this transmission protocol, consecutively lost packets are regarded as one, and the maximum number of allowed packets is determined by the Max Lost Seq value. When this value is 0, the EACK packet can not have an additional header. If the EACK packet is received, the sender must retransmit the next packet acknowledged by the Acknowledge Number.

The RST packet is used to terminate the connection, and the ACK / IMA packet is used to indicate the packet reception status or to transmit data. If an ACK packet containing an IMA tag is received, an ACK packet must be transmitted immediately.

The above-described transmission protocol can be used and implemented in the following manner. 5 is a diagram illustrating an example of a register set used in implementing a video data transmission method having short-term reliability. Here, the left side is a register used in the video data transmission example having short-term reliability, and is a value that is compared with corresponding paramaters of the SYN packet. 5 will be described with reference to the video transmission system shown in FIG.

First, the video reception card 106 sends a SYN packet to the multi-user video transmission card 103 to make a connection request. The connection request is made through the 3-way handshake process like the TCP protocol, the connection parameters are determined, and the null packet timer is operated.

In general, the image transmission card 103 transmits image data and simultaneously stores image data in a retransmission buffer. The Null packet Timer is restarted each time a packet is transmitted. The Max Outstanding Kbytes value used in the connection is determined to be smaller than the size of the retransmission buffer. If the retransmission buffer is empty when transmitting video data, the Ack wait timer is started and the Expiration Timer is calculated and recorded.

In the case of pure ACK packets that do not contain EACK or user data and other tags, they are not recorded in the retransmission buffer and the Timer is not touched either.

When Expiration Timer expires, clear the Expiration Timer and empty the retransmission buffer. Then, when sending the next packet, the UPN tag is recorded and the corresponding sequence number is used as the Ack Number.

Increase the check counter when the Ack Wait Timer expires. If the check counter value exceeds the Max Check Count, the connection is considered broken. If the check counter value does not exceed the Max Check Count, clear the retransmission buffer and clear the Ack Wait Timer and the Expiration Timer. Then, when sending the next packet, the UPN tag is recorded and the corresponding sequence number is used as the Ack Number.

When the Null Packet Timer expires, it sends the NULL packet with the IMA tag set.

When a packet is received, the Timestamp is used to calculate the jitter value. Jitter value and Round Trip Time are combined to calculate a new Expiration Timeout Value. The new Expiration Timeout Value should be greater than the Round Trip Time + Jitter value, and should be less than the value that can significantly affect the delay. If the new Expiration Timeout Value differs from the existing Expiration Timeout Value, it is instructed to use the appropriate value by the UPM packet.

If the Sequence Number of the received packet increases, it is checked whether or not the Cumulated Ack Counter is exceeded. If you have User Data, store it in the receive data buffer and check if Received Bytes exceeds Max Outstanding Kbytes. And check if the tag contains IMA. If one of the three is applicable, an ACK packet is transmitted. Otherwise, only the Ack Number is updated. If the Cumulative Ack Timer is in the clear state, the ACK packet is started.

If the Sequence Number increases but there is a lost sequence, the EACK packet is transmitted and the Cumulative Ack Timer is cleared.

When the Cumulative Ack Timer expires, it clears and sends an Ack packet.

When an ACK or EACK packet is received, the check count is cleared and the packet confirmed to be received is removed from the retransmission buffer. After that, the Expiration Timestamp value of the packet in the Header of the retransmission buffer is changed to the Expiration Timer value and the Ack Wait Timer is restarted. If the retransmission buffer is empty, clear both timers. In case of EACK packet, if the lost packet is in the retransmission buffer, it is retransmitted.

It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

It is intended that the present invention covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents. .

101: Server
102: Video card
103: Video transmission card
104: Ethernet Switch
105: Thin client
106: Video reception card
107: Monitor

Claims (1)

A video data transmission method that does not retransmit a packet after a predetermined time regardless of whether or not the packet is received by using an Expiration Timer set by an Expiration Timeout Value included in a packet header,
Starting the Expiration Timer if the retransmission buffer is empty when transmitting a packet;
Clearing the Expiration Timer when the Expiration Timer expires, clearing the retransmission buffer, and recording and transmitting a UPN tag of a next packet; And
And removing the acknowledged packet from the retransmission buffer and replacing the Expiration Timestamp value of the packet in the header of the retransmission buffer with the Expiration Timer value when the Ack or EACK packet is received. .
KR1020140015714A 2014-02-11 2014-02-11 Method of transmitting image data with short-term reliability KR20150094435A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140015714A KR20150094435A (en) 2014-02-11 2014-02-11 Method of transmitting image data with short-term reliability

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140015714A KR20150094435A (en) 2014-02-11 2014-02-11 Method of transmitting image data with short-term reliability

Publications (1)

Publication Number Publication Date
KR20150094435A true KR20150094435A (en) 2015-08-19

Family

ID=54057924

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140015714A KR20150094435A (en) 2014-02-11 2014-02-11 Method of transmitting image data with short-term reliability

Country Status (1)

Country Link
KR (1) KR20150094435A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110138513A (en) * 2019-03-26 2019-08-16 视联动力信息技术股份有限公司 A kind of data transmission method and view networked system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110138513A (en) * 2019-03-26 2019-08-16 视联动力信息技术股份有限公司 A kind of data transmission method and view networked system
CN110138513B (en) * 2019-03-26 2020-12-29 视联动力信息技术股份有限公司 Data transmission method and video networking system

Similar Documents

Publication Publication Date Title
US11641387B2 (en) Timely delivery of real-time media problem when TCP must be used
EP3108639B1 (en) Transport accelerator implementing extended transmission control functionality
EP1397899B1 (en) Real-time packetization and retransmission in streaming applications
US10542064B2 (en) Method, server side and system for computing bandwidth of network transmission of streaming media
CN107342848B (en) Self-adaptive code stream transmission method, device and equipment
TWI559717B (en) A transport protocol for interactive real-time media
US20100005178A1 (en) Method and system for firewall friendly real-time communication
US20160323062A1 (en) Packet recovery in interactive real-time media protocol
US7949778B2 (en) Systems, methods, apparatus and computer program products for providing packet-level FEC with higher throughput using user datagram protocol (UDP)
US20220123869A1 (en) Network equipment and method for delivering data packets
EP3939191B1 (en) Device and method for delivering acknowledgment in network transport protocols
US10461892B2 (en) Low latency communications
KR20150094435A (en) Method of transmitting image data with short-term reliability
CN115348336A (en) Universal transmission architecture for heterogeneous data streams
JP2005027208A (en) Apparatus and method of transmission, recording medium, and program
US10079904B2 (en) Packet transfer system, relay device, packet transfer method, and program
Park et al. Short-term reliable protocol for low latency video transmission
CN112511573B (en) Transmission control method of UDP (user Datagram protocol) data packet
US11811877B2 (en) Universal transport framework for heterogeneous data streams
EP4313336A1 (en) Method, apparatuses and systems directed to quality of experience improvement in cloud gaming
Akzeybek et al. Concurrent multi-path data transfer using modified SCTP

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination