KR20160123562A - Receiver for processing data packet and data packet processing method of receiver - Google Patents

Receiver for processing data packet and data packet processing method of receiver Download PDF

Info

Publication number
KR20160123562A
KR20160123562A KR1020150053730A KR20150053730A KR20160123562A KR 20160123562 A KR20160123562 A KR 20160123562A KR 1020150053730 A KR1020150053730 A KR 1020150053730A KR 20150053730 A KR20150053730 A KR 20150053730A KR 20160123562 A KR20160123562 A KR 20160123562A
Authority
KR
South Korea
Prior art keywords
data packet
rtp data
sequence number
rtp
queue
Prior art date
Application number
KR1020150053730A
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 KR1020150053730A priority Critical patent/KR20160123562A/en
Publication of KR20160123562A publication Critical patent/KR20160123562A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/54Loss aware scheduling
    • H04L65/608

Abstract

The present invention relates to a system and method for transmitting RTP data packets, And extracting a sequence number from the header of the RTP data packet, determining whether the extracted sequence number satisfies a queue storage limit range, storing the RTP data packet in the queue buffer when satisfied, If the RTP data packet is not received in response to the retransmission request, the RTP data packet is transmitted to the streaming device, and replacing the previous data with the previous data when the stream is generated. The receiver device for data packet processing according to the present invention has an advantage that it can simplify the CPU processing and prevent excessive CPU occupation and processing time delay.

Description

Technical Field [0001] The present invention relates to a receiver apparatus for processing data packets and a data packet processing method in a receiver apparatus.

The present invention relates to a receiver apparatus for data packet processing and a data packet processing method in a receiver apparatus, and more particularly, to a receiver apparatus for data packet processing, which simplifies CPU processing and prevents excessive CPU occupation and processing time delay, And a method of processing data packets in a receiver apparatus.

Audio and / or video data packets are exchanged based on a particular transmission protocol when transmitted between a transmitter device and a receiver device. The transmission protocol includes a real time protocol such as RTP (Real Time Transport Protocol). RTP is a protocol based on the so-called UDP / IP (User Datagram Protocol / Internet Protocol) protocol. RTP has been developed to provide synchronization between transmitted data packets for real-time transmission on a single point and multi-point link using the UDP / IP protocol, and is used in conjunction with audio and / or video data packets in an IP network Form the basis for data transmission.

A RTP-based data packet (hereinafter referred to as "RTP data packet") basically includes a header having a fixed size and specific information and data following the header.

Each field of the RTP data packet header will be briefly described with reference to FIG. 1. The V (Version) field is a version field, and the P (Padding) field is used to form a packet in units of 32 bits. The X (Header Extension) field indicates whether to extend the header. The CC (CSRC Count) field indicates the number of CSRC identifiers (Contributing Source Identifiers). The M (Marker) field indicates a frame area for multimedia data. In other words, it is used to distinguish audio and video data within a packet. The PT (RTP Payload Type) field refers to the form of the RTP payload of the profile defined in RFC 1890 and is interpreted by the application program. The Sequence Number field indicates the order of the RTP data packets. The initial value is randomly selected and incremented by 1 each time an RTP data packet is transmitted. Therefore, the receiver device can find the packet loss or order reversal based on the sequence number. The Time Stamp field indicates the time at which the first octet (Octec) of the RTP data packet is sampled. The SSRC Identifier (Synchronization Source Identifier) field is an identifier of a data source such as a camera or a microphone. The CSRC Identifier (Contributing Source Identifier) field indicates an identifier capable of distinguishing the sources when the RTP data packet is mixed in the intermediate system.

The header of the RTP data packet is followed by data formatted as a UDP packet. FIG. 2 shows a format of data encapsulated by UDP. Referring to FIG. 2, the UDP packet includes an IP header, a UDP header, and UDP data. The IP header records the source and destination address of the data, the upper layer protocol, and the checksum. The UDP header contains the source and destination port numbers, the size of the UDP header and data, and the UDP checksum. UDP data is data to be transmitted. UDP header and UDP data are called UDP datagrams, and IP header and UDP datagrams are called IP datagrams. Therefore, an RTP data packet consists of an RTP header and an IP datagram.

The receiver device sequentially stores the RTP data packets received from the transmitter device in a queue buffer using a sequence number included in the header of the RTP data packet.

However, if the sequence numbers are not correct due to excessive packet loss when storing RTP data packets in the queue buffer, an infinite loop is formed so that previously received data packets are filled up by the number of lost packets, Processing unit occupation occurs.

Korean Registered Patent No. 10-0539161 (registered on December 21, 2005)

SUMMARY OF THE INVENTION Accordingly, the present invention has been made to solve the above-mentioned problems, and it is an object of the present invention to provide a receiver device for data packet processing and a data packet processing method in a receiver device for simplifying CPU processing to prevent excessive CPU occupation and processing time delay It has its purpose.

However, the technical problems of the present invention are not limited to the above-mentioned problems, and other technical problems which are not mentioned can be clearly understood by those skilled in the art from the following description.

A receiver apparatus for data packet processing according to an embodiment of the present invention includes:

A queue buffer for storing RTP data packets received from a transmitter device; And extracting a sequence number from a header of the RTP data packet, determining whether the sequence number satisfies a queue storage limit range, storing the RTP data packet in the queue buffer when the determination result is satisfied, The RTP data packet is stored in the queue buffer, and when an RTP data packet not received in response to the retransmission request is generated, the RTP data packet is transmitted to the stream device stream to the previous data.

Determining whether the sequence number satisfies a queue storage limit range in the processor may comprise determining whether a difference from a sequence number of a previous RTP data packet is within a queue storage limit range.

Further, a method of processing a data packet in a receiver apparatus according to an embodiment of the present invention includes:

Extracting a sequence number from a header of an RTP data packet received from a transmitter apparatus; Determining whether the sequence number satisfies a queue storage limit range; Storing the RTP data packet in a queue buffer if the determination is satisfied; Requesting the transmitter device to retransmit the lost RTP data packet if the determination result is not satisfied; And storing the lost RTP data packet in the queue buffer when the RTP data packet is received, and replacing the RTP data packet with the previous data when the RTP data packet is not received despite the retransmission request.

The step of determining whether the sequence number satisfies the queue storage limit range may include determining whether a difference from the sequence number of the previous RTP data packet is within a queue storage limit range.

The method of processing data packets in a receiver apparatus and a receiver apparatus for data packet processing according to the present invention has an effect of simplifying CPU processing and preventing excessive CPU occupation and processing time delay.

1 shows a format of an RTP packet header.
2 is a diagram showing a format of data encapsulated by UDP.
3 is a block diagram of a system including a receiver apparatus for processing data packets in accordance with an embodiment of the present invention.
4 is a flowchart illustrating a method of processing a data packet in a receiver apparatus according to an embodiment of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. It should be understood, however, that the invention is not limited to the disclosed embodiments, but may be embodied in many other forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the present invention is only defined by the claims.

Like reference numerals refer to like elements throughout the specification.

Hereinafter, a data packet processing method in a receiver apparatus and a receiver apparatus for data packet processing according to an embodiment of the present invention will be described with reference to the accompanying drawings.

It will be appreciated that the combinations of blocks and flowchart illustrations in the process flow diagrams may be performed by computer program instructions.

These computer program instructions may be loaded into a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, so that those instructions, which are executed through a processor of a computer or other programmable data processing apparatus, Thereby creating means for performing functions.

These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory The instructions stored in the block diagram (s) are also capable of producing manufacturing items containing instruction means for performing the functions described in the flowchart block (s).

The computer program instructions It is also possible to mount on a computer or other programmable data processing equipment, so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer-executed process to perform a computer or other programmable data processing equipment May also provide steps for performing the functions described in the flowchart block (s).

Each block may also represent a portion of a module segment or code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative implementations, the functions mentioned in the blocks may occur out of order. For example, two blocks that are shown one after the other may actually be executed substantially concurrently, or the blocks may sometimes be performed in reverse order according to the corresponding function.

3 is a block diagram of a system including a receiver apparatus for processing data packets in accordance with an embodiment of the present invention.

Referring to FIG. 3, a system including a receiver apparatus for processing data packets according to an embodiment of the present invention includes a transmitter apparatus 100 and a receiver apparatus 200.

The transmitter device 100 and the receiver device 200 connected via a data link may be electronic devices in which audio and / or video data packets may be exchanged.

The transmitter device 100 and the receiver device 200 may be connected to a network, such as an IP (Internet Protocol) network, in which case the data link may be an IP network link.

The data packet is exchanged over a data link between the transmitter device 100 and the receiver device 200 based on RTP (Real Time Transport Protocol). Hereinafter, such a data packet is referred to as an "RTP data packet ".

The RTP data packet may be generated in the transmitter device 100 itself or may be generated in a device (not shown) separate from the transmitter device 100 and transmitted to the transmitter device 100. And the RTP data packet is transmitted from the transmitter device 100 to the data link.

The header of the RTP data packet has a fixed size, and data formatted as a UDP packet is located behind the header. The header of the RTP data packet includes a sequence number indicating the order of packets.

The receiver device 200 includes a queue buffer for storing RTP data packets and a processing unit 210 for processing RTP data packets.

A queue is a data structure such as a sequence list in which a continuous space is allocated from a main storage device in a computer and the data is stored and used when necessary. The queue has a FIFO (First In First Out) structure, At the end, the output occurs at the other end. Such a queue may be a linear queue, or it may be a circular queue with the beginning and end of the array connected.

The processing unit 210 extracts the sequence number from the header of the RTP data packet received from the transmitter apparatus 100 and sequentially stores the received RTP data packet in the queue buffer using the extracted sequence number.

In other words, the processing unit 210 checks the sequence number of the RTP data packet every time an RTP data packet is received, and generates a write pointer value of the queue buffer 220. The processing unit 210 stores the RTP data packet in the queue buffer 220 corresponding to the recording pointer value of the queue buffer 220. [ For example, the recording pointer value of the queue buffer 220 may be generated as a sequence number of the received RTP data packet. In this case, the corresponding RTP data packet may be stored in the queue buffer 220 at the same address as the sequence number of the RTP data packet.

Meanwhile, a queue storage limit range is set in the queue buffer 220. The queue storage limit range is a maximum limit range in which an RTP data packet can be written to the queue buffer 220. [ Excessive packet loss may be determined depending on whether the difference between the sequence number of the previous RTP data packet and the sequence number of the current RTP data packet is within the queue storage limit range. If the difference between the sequence number of the previous RTP data packet and the sequence number of the current RTP data packet is out of the queue storage limit range (i.e., the sequence number does not match), it can be determined that an excessive packet loss has occurred. For example, when the queue storage limit range is 20, if the difference between the sequence number of the previous RTP data packet and the sequence number of the current RTP data packet exceeds 20, the processing unit 210 determines that an excessive packet loss occurs.

In order to correct this packet loss, the processing unit 210 requests retransmission of the RTP data packet lost to the transmitter apparatus 100 if the sequence number of the RTP data packet does not satisfy the queue storage limit range. For example, when the RTP data packet having the queue storage limit of 20 and the sequence numbers # 1, # 2, # 3, # 4, and # 5 is being received sequentially by the receiver device 200, , The difference between the sequence number # 5 of the previous RTP data packet and the sequence number # 26 of the current RTP data packet exceeds 20. Accordingly, the processor 210 may determine that the RTP data packet having the currently received sequence number # 26 does not satisfy the queue storage limit range. Then, the processing unit 210 requests the transmitter apparatus 100 to retransmit the lost RTP data packet. The processing unit 210 stores the lost RTP data packet in the queue buffer 220 when the RTP data packet is received. However, when an RTP data packet that is not received despite the retransmission request is generated, the processing unit 210 replaces it with the previous data when a stream is generated.

Of course, when the sequence number of the RTP data packet satisfies the queue storage limit range, the processing unit 210 stores the RTP data packet in the queue buffer 220 and waits for the next RTP data packet to be received.

A method of processing data packets in the receiver 200 according to an embodiment of the present invention will now be described with reference to the flowchart of FIG.

First, the processing unit 210 extracts the sequence number from the header of the RTP data packet received from the transmitter apparatus 100 (S100, S110).

The processing unit 210 determines whether the extracted sequence number satisfies the queue storage limit range (S120).

If the extracted sequence number satisfies the queue storage limit, the processing unit 210 stores the received RTP data packet in the queue buffer 220 and waits for the next RTP data packet to be received (S150).

However, if the extracted sequence number does not satisfy the queue storage limit, the processing unit 210 requests the transmitter apparatus 100 to retransmit the lost RTP data packet (S130).

The processing unit 210 stores the lost RTP data packet in the queue buffer 220 (S140, S150). However, when an RTP data packet that is not received despite the retransmission request is generated, the processing unit 210 replaces the RTP data packet with the previous data when generating a stream (S140, S160).

Meanwhile, the embodiments of the present invention described above can be implemented in a general-purpose digital computer that can be created as a program that can be executed by a computer and operates the program using a computer-readable recording medium.

The computer-readable recording medium may be a magnetic storage medium such as a ROM, a floppy disk, a hard disk, etc., an optical reading medium such as a CD-ROM or a DVD and a carrier wave Transmission).

The present invention has been described with reference to preferred embodiments thereof. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

According to the data packet processing method in the receiver apparatus and the receiver apparatus for data packet processing according to the present invention, it is possible to simplify the CPU processing and prevent excessive CPU occupation and processing time delay.

100: transmitter device 200: receiver device
210: processing unit 220: queue buffer

Claims (4)

A queue buffer for storing RTP data packets received from a transmitter device; And
Extracts a sequence number from the header of the RTP data packet, determines whether the sequence number satisfies the queue storage limit range, stores the RTP data packet in the queue buffer when the determination is satisfied, The method comprising: requesting retransmission of a lost RTP data packet to the transmitter device; storing the lost RTP data packet in the queue buffer; generating an RTP data packet that is not received despite the retransmission request, ) With the previous data when generating the data packet.
The method according to claim 1,
Wherein determining in the processor whether the sequence number satisfies a queue storage limit range comprises determining whether a difference from a sequence number of a previous RTP data packet is within a queue storage limit range.
Extracting a sequence number from a header of an RTP data packet received from a transmitter apparatus;
Determining whether the sequence number satisfies a queue storage limit range;
Storing the RTP data packet in a queue buffer if the determination is satisfied;
Requesting the transmitter device to retransmit the lost RTP data packet if the determination result is not satisfied; And
Storing the lost RTP data packet in the queue buffer and replacing the received RTP data packet with previous data when generating an RTP data packet that is not received despite the retransmission request / RTI >
The method of claim 3,
Wherein the step of determining whether the sequence number satisfies a queue storage limit range comprises determining whether a difference from a sequence number of a previous RTP data packet is within a queue storage limit range.
KR1020150053730A 2015-04-16 2015-04-16 Receiver for processing data packet and data packet processing method of receiver KR20160123562A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150053730A KR20160123562A (en) 2015-04-16 2015-04-16 Receiver for processing data packet and data packet processing method of receiver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150053730A KR20160123562A (en) 2015-04-16 2015-04-16 Receiver for processing data packet and data packet processing method of receiver

Publications (1)

Publication Number Publication Date
KR20160123562A true KR20160123562A (en) 2016-10-26

Family

ID=57251635

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150053730A KR20160123562A (en) 2015-04-16 2015-04-16 Receiver for processing data packet and data packet processing method of receiver

Country Status (1)

Country Link
KR (1) KR20160123562A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108877059A (en) * 2018-06-08 2018-11-23 廊坊新奥燃气设备有限公司 Internet of Things gas meter, flow meter settlement method, Internet of Things gas meter, flow meter and meter reading Platform Server
CN108933786A (en) * 2018-07-03 2018-12-04 公安部第研究所 Method for improving radio digital communication system recipient's ciphertext voice quality

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100539161B1 (en) 2003-08-29 2005-12-27 (주)씨앤에스 테크놀로지 The queue management method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100539161B1 (en) 2003-08-29 2005-12-27 (주)씨앤에스 테크놀로지 The queue management method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108877059A (en) * 2018-06-08 2018-11-23 廊坊新奥燃气设备有限公司 Internet of Things gas meter, flow meter settlement method, Internet of Things gas meter, flow meter and meter reading Platform Server
CN108933786A (en) * 2018-07-03 2018-12-04 公安部第研究所 Method for improving radio digital communication system recipient's ciphertext voice quality
CN108933786B (en) * 2018-07-03 2021-04-09 公安部第一研究所 Method for improving cipher text voice quality of receiver of wireless digital communication system

Similar Documents

Publication Publication Date Title
TWI419565B (en) Method for buffering packets of a media stream, system for buffering a media stream, device and chipset for transmitting, server and computer program product
CN113411313B (en) Data transmission method, device and system
US9794311B2 (en) Transport accelerator implementing extended transmission control functionality
US9832745B2 (en) Transport stream packets with time stamp generation by medium access control
RU2634908C2 (en) Method and device for mediadata delivery management
US9485687B2 (en) Selective compression in a wireless communication system
EP3272128B1 (en) Video stream transmission over ip network
US11271856B2 (en) Concept for segmenting an application buffer into data packets
US9729903B2 (en) Data transmitting device and method
WO2017148419A1 (en) Data transmission method and server
CN110545161B (en) Multimedia data real-time transmission method with redundancy
KR20170124551A (en) Indications for partial segments
KR20160123562A (en) Receiver for processing data packet and data packet processing method of receiver
CN104469538A (en) Picture-quality-smaller-loss-oriented RTP video streaming data package recombination method
CN114979793A (en) Live broadcast data transmission method, device, system, equipment and medium
CN108200481B (en) RTP-PS stream processing method, device, equipment and storage medium
CN109792444B (en) Play-out buffering in a live content distribution system
CN114009030A (en) Techniques for signaling and identifying access unit boundaries
KR100847168B1 (en) Apparatus and method for rearranging packet sequence for processing jitter in network based on udp/rtp
US10554573B2 (en) Streaming media data transmission method and apparatus
JP2006319463A (en) Packet transmitting method and packet receiving device
JP6970124B2 (en) Methods for sending and receiving MMTP packets and their devices
KR101683384B1 (en) System and method for real-time stream controlling
KR101236231B1 (en) Rtp packet transmitting and receiving method and system
US8904043B2 (en) Network device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application