KR102334877B1 - reordering system and method for realtime transport protocol packet - Google Patents
reordering system and method for realtime transport protocol packet Download PDFInfo
- Publication number
- KR102334877B1 KR102334877B1 KR1020200086521A KR20200086521A KR102334877B1 KR 102334877 B1 KR102334877 B1 KR 102334877B1 KR 1020200086521 A KR1020200086521 A KR 1020200086521A KR 20200086521 A KR20200086521 A KR 20200086521A KR 102334877 B1 KR102334877 B1 KR 102334877B1
- Authority
- KR
- South Korea
- Prior art keywords
- real
- transport protocol
- time transport
- packet
- protocol packet
- Prior art date
Links
Images
Classifications
-
- H04L67/2852—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2416—Real-time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
- H04L47/6235—Variable service order
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9057—Arrangements for supporting packet reassembly or resequencing
-
- H04L65/608—
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 실시간 전송 프로토콜 패킷 재정렬 시스템 및 방법에 관한 것으로, 보다 상세하게는 미정렬 구간의 실시간 전송 프로토콜 패킷을 재정렬하는 실시간 전송 프로토콜 패킷 재정렬 시스템 및 방법에 관한 것이다.The present invention relates to a real-time transport protocol packet reordering system and method, and more particularly, to a real-time transport protocol packet reordering system and method for rearranging real-time transport protocol packets in an unaligned section.
일반적인 엄격한 타이밍 요구조건을 갖는 TCP 기반의 HTTP, FTP와는 달리 RTP는 주로 미디어 스트림에 대한 전송을 목적으로 설계되었으며, 모든 RTP 버퍼들은 타임 스탬프를 가지고 있어서, 타임 스탬프와 실제 전역적인 동기화된 클럭 사이의 매핑을 수행한다. 타임 스탬프의 역할은 다양한 데이터 소스로부터 제공되는 미디어들을 통합하는 기능을 지닌다.Unlike TCP-based HTTP and FTP, which have general strict timing requirements, RTP is mainly designed for the purpose of transmitting media streams. perform mapping. The role of the timestamp has the function of integrating media provided from various data sources.
이때 전송되는 각각의 패킷은 순서 번호(Sequence Number)와 함께 타임 스탬프를 갖게 되는데, 순서 번호는 각 패킷마다 서로 다른 고유의 번호로서, 수신단에서 패킷 손실에 대한 검출과 복구에 이용된다.At this time, each transmitted packet has a time stamp together with a sequence number. The sequence number is a unique number different for each packet, and is used for detection and recovery of packet loss at the receiving end.
RTP 역시 UDP 기반의 프로토콜로서 수신단에서는 수신되어지는 데이타 패킷이 일정하게 알맞은 순서로 전송되었는지 알수 없다. 그러므로 수신단에서는 패킷의 순서 번호를 이용하여 패킷을 재정렬해야 한다.RTP is also a UDP-based protocol, and the receiving end cannot know whether the received data packets are transmitted in the proper order. Therefore, the receiving end must rearrange the packets using the packet sequence number.
일반적으로 실시간 전송 프로토콜 패킷을 수신하여 처리함에 있어 실시간 전송 프로토콜 패킷의 순서 번호에 따른 미정렬 구간에 대한 패킷의 재정렬이 요구될 수 있다.In general, when receiving and processing real-time transport protocol packets, it may be required to rearrange packets for unaligned sections according to sequence numbers of real-time transport protocol packets.
기존에는 이러한 미정렬 구간에 대한 실시간 전송 프로토콜 패킷의 재정렬 시 RTP 수신단에서 수신되는 데이터를 일정량만큼 버퍼링하고, 버퍼링되는 데이터를 이용하여 RTP 패킷 재정렬을 실시하였다. 그러나, 이러한 방법의 경우에는 패킷 버퍼의 크기만큼의 데이터 처리시간 지연이 발생하는 문제점이 있었다.Conventionally, when real-time transport protocol packets are rearranged for this unaligned section, data received from the RTP receiving end is buffered by a certain amount, and RTP packet rearrangement is performed using the buffered data. However, in the case of this method, there is a problem in that the data processing time is delayed by the size of the packet buffer.
본 발명은 이와 같은 문제점을 해결하기 위해 창안된 것으로서, 실시간 전송 프로토콜 패킷의 미정렬 구간정보에 기초하여 데이터 처리시간 지연 없이 패킷 재정렬을 할 수 있도록 한 실시간 전송 프로토콜 패킷 재정렬 시스템 및 방법을 제공함을 목적으로 한다.The present invention was devised to solve such a problem, and it is an object of the present invention to provide a real-time transport protocol packet reordering system and method that enables packet rearrangement without delay in data processing time based on unaligned section information of real-time transport protocol packets. do it with
상기한 목적을 달성하기 위한 본 발명에 따른 실시간 전송 프로토콜 패킷 재정렬 시스템의 일측면에 따르면, 입력되는 실시간 전송 프로토콜 패킷의 순서를 검사하여 미정렬 구간 검출 시 미정렬 구간의 실시간 전송 프로토콜 패킷을 요청하는 클라이언트; 및 상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 실시간 전송 프로토콜 캐싱 서버를 포함하고, 상기 클라이언트는 상기 실시간 전송 프로토콜 캐싱 서버로부터 수신한 실시간 전송 프로토콜 패킷을 미정렬 구간에 순서 번호대로 삽입하여 재정렬하고, 미정렬 구간에 삽입된 실시간 전송 프로토콜 패킷과 중복되는 패킷을 제거할 수 있다.According to one aspect of the real-time transport protocol packet reordering system according to the present invention for achieving the above object, the real-time transport protocol packet of the unaligned section is requested when the unaligned section is detected by examining the order of the input real-time transport protocol packets. Client; and a real-time transport protocol caching server that transmits, to the client, a real-time transport protocol packet of an unaligned section requested from the client, wherein the client stores the real-time transport protocol packet received from the real-time transport protocol caching server in the unaligned section. It is possible to insert and rearrange them in sequence number, and to remove packets overlapping the real-time transport protocol packets inserted in the unaligned section.
또한, 상기 클라이언트는 상기 입력되는 실시간 전송 프로토콜 패킷의 순서를 검사하여 미정렬 구간을 검출하는 패킷 검사 재정렬부; 및 상기 패킷 검사 재정렬부에서 검출된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 캐싱 서버로 요청하여 수신하는 재정렬 패킷 요청부를 포함하고, 상기 패킷 검사 재정렬부는 상기 재정렬 패킷 요청부로부터 수신된 미정렬 구간의 실시간 전송 프로토콜 패킷을 미정렬 구간에 순서 번호대로 삽입하여 재정렬하고, 미정렬 구간에 삽입된 실시간 전송 프로토콜 패킷과 중복되는 패킷을 제거하며, 상기 패킷 검사 재정렬부에서 재정렬된 실시간 전송 프로토콜 패킷의 순서 번호 재정렬 상태를 확인하여 출력하는 실시간 전송 프로토콜 패킷 처리부를 더 포함할 수 있다.In addition, the client includes: a packet inspection reordering unit for detecting an unaligned section by inspecting the order of the incoming real-time transport protocol packets; and a reordering packet requesting unit for requesting and receiving a real-time transport protocol packet of an unaligned section detected by the packet inspection reordering unit to the real-time transport protocol caching server, wherein the packet inspection reordering unit receives the unordered packet received from the reordering packet requesting unit. Real-time transport protocol packets in the sorted section are inserted and rearranged in sequence number in the unaligned section, packets overlapping with real-time transport protocol packets inserted in the unaligned section are removed, and the real-time transport protocol packets rearranged in the packet inspection reordering unit It may further include a real-time transport protocol packet processing unit to check and output the sequence number rearrangement status of the .
또한, 상기 실시간 전송 프로토콜 캐싱 서버는 서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 실시간 전송 프로토콜 서비스 스트림 버퍼링부; 클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 실시간 전송 프로토콜 패킷 요청정보 수신부; 상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신된 실시간 전송 프로토콜 패킷 요청정보를 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부에서 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정하는 실시간 전송 프로토콜 패킷 위치 확정부; 상기 실시간 전송 프로토콜 패킷 위치 확정부에서 확정된 위치에서 검색된 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 스트림 버퍼링부로부터 획득하는 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부; 및 상기 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부에서 획득한 실시간 전송 프로토콜 패킷을 클라이언트로 송신하는 실시간 전송 프로토콜 패킷 송신부를 포함할 수 있다.In addition, the real-time transport protocol caching server includes: a real-time transport protocol service stream buffering unit for buffering the real-time transport protocol service stream transmitted from the service network and storing the buffering information in a memory; a real-time transport protocol packet request information receiver configured to receive real-time transport protocol packet request information from a client; a real-time transport protocol packet position determining unit configured to determine a location by searching for the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiver from among the buffering information buffered by the real-time transport protocol service stream buffering unit; a real-time transport protocol packet acquisition unit for client transmission that acquires, from the real-time transport protocol stream buffering unit, the real-time transport protocol packet retrieved from the location determined by the real-time transport protocol packet position determining unit; and a real-time transport protocol packet transmitter configured to transmit the real-time transport protocol packet obtained by the real-time transport protocol packet acquisition unit for client transmission to the client.
또한, 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부는 버퍼링 정보를 메인 메모리 또는 고속 메모리에 저장할 수 있다.Also, the real-time transport protocol service stream buffering unit may store buffering information in a main memory or a high-speed memory.
또한, 상기 실시간 전송 프로토콜 패킷 요청정보 수신부가 클라이언트로부터 수신하는 실시간 전송 프로토콜 패킷 요청정보는 패킷의 시작 순서번호와 끝 순서번호 정보를 포함할 수 있다.Also, the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiver from the client may include information on a start sequence number and an end sequence number of the packet.
또한, 상기 실시간 전송 프로토콜 패킷 위치 확정부는 상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신한 실시간 전송 프로토콜 패킷 요청정보에 포함된 패킷의 시작 순서번호와 끝 순서번호 정보를 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부에서 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정할 수 있다.In addition, the real-time transport protocol packet position determining unit stores the start sequence number and end sequence number information of the packets included in the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiving unit from the real-time transport protocol service stream buffering unit. The location can be determined by searching among the buffered buffering information.
또한, 상기 실시간 전송 프로토콜 패킷 송신부는 클라이언트로 송신하는 실시간 전송 프로토콜 패킷을 사용자 데이터그램 프로토콜 방식으로 송신할 수 있다.In addition, the real-time transport protocol packet transmitter may transmit the real-time transport protocol packet to be transmitted to the client using a user datagram protocol method.
또한, 상기 실시간 전송 프로토콜 캐싱 서버는 서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 실시간 전송 프로토콜 서비스 스트림 버퍼링부; 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부에서 버퍼링되어 메모리에 저장되는 실시간 전송 프로토콜 패킷의 위치정보를 생성하여 관리하는 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부; 클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 실시간 전송 프로토콜 패킷 요청정보 수신부; 상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 위치를 상기 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부로부터 획득하는 실시간 전송 프로토콜 패킷 위치 획득부; 상기 실시간 전송 프로토콜 패킷 위치정보 획득부에서 획득한 실시간 전송 프로토콜 패킷의 위치에 존재하는 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부로부터 획득하는 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부; 및 상기 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부에서 획득한 실시간 전송 프로토콜 패킷을 클라이언트로 송신하는 실시간 전송 프로토콜 패킷 송신부를 포함할 수 있다.In addition, the real-time transport protocol caching server includes: a real-time transport protocol service stream buffering unit for buffering the real-time transport protocol service stream transmitted from the service network and storing the buffering information in a memory; a real-time transport protocol packet location information data generation and management unit for generating and managing location information of real-time transport protocol packets buffered by the real-time transport protocol service stream buffering unit and stored in a memory; a real-time transport protocol packet request information receiver configured to receive real-time transport protocol packet request information from a client; a real-time transport protocol packet position acquisition unit for acquiring a location of a requested real-time transport protocol packet from the real-time transport protocol packet position information data generation and management unit according to the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiving unit; a real-time transport protocol packet acquisition unit for client transmission that acquires, from the real-time transport protocol service stream buffering unit, a real-time transport protocol packet existing at a location of the real-time transport protocol packet acquired by the real-time transport protocol packet location information acquisition unit; and a real-time transport protocol packet transmitter configured to transmit the real-time transport protocol packet obtained by the real-time transport protocol packet acquisition unit for client transmission to the client.
또한, 상기 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부에서 생성하는 실시간 전송 프로토콜 패킷의 위치정보는 실시간 전송 프로토콜 패킷의 순서번호 정보와 각 순서번호별 패킷의 위치정보를 포함할 수 있다.In addition, the location information of the real-time transport protocol packet generated by the real-time transport protocol packet location information data generation and management unit may include sequence number information of the real-time transport protocol packet and location information of the packet for each sequence number.
또한, 상기 각 순서번호별 패킷의 위치정보는 각 순서번호별 패킷의 처음 시작위치 정보를 포함할 수 있다.In addition, the location information of the packet for each sequence number may include information on the first start location of the packet for each sequence number.
또한, 상기 실시간 전송 프로토콜 패킷 요청정보 수신부가 클라이언트로부터 수신하는 실시간 전송 프로토콜 패킷 요청정보는 패킷의 시작 순서번호와 끝 순서번호 정보를 포함할 수 있다.Also, the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiver from the client may include information on a start sequence number and an end sequence number of the packet.
또한, 상기 실시간 전송 프로토콜 패킷 위치 획득부는 상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 시작 순서번호와 끝 순서번호에 해당하는 메모리 상의 위치를 상기 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부로부터 획득할 수 있다.In addition, the real-time transport protocol packet position acquisition unit determines the locations in the memory corresponding to the start sequence number and the end sequence number of the real-time transport protocol packet requested according to the real-time transport protocol packet request information received from the real-time transport protocol packet request information receiving unit. It can be obtained from the real-time transport protocol packet location information data generation and management unit.
또한, 상기 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부는 상기 실시간 전송 프로토콜 패킷 위치 획득부에서 획득한 실시간 전송 프로토콜 패킷의 시작 순서번호와 끝 순서번호에 해당하는 메모리 상의 위치에 존재하는 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부로부터 획득할 수 있다.In addition, the real-time transport protocol packet acquisition unit for client transmission obtains the real-time transport protocol packet existing at a location in the memory corresponding to the start sequence number and the end sequence number of the real-time transport protocol packet obtained by the real-time transport protocol packet position acquisition unit. It can be obtained from the real-time transport protocol service stream buffering unit.
한편, 상기한 목적을 달성하기 위한 본 발명에 따른 실시간 전송 프로토콜 패킷 재정렬 방법의 일측면에 따르면, 클라이언트는 입력되는 실시간 전송 프로토콜 패킷의 순서를 검사하여 미정렬 구간 검출 시 미정렬 구간의 실시간 전송 프로토콜 패킷을 요청하는 단계; 실시간 전송 프로토콜 캐싱 서버가 상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계; 상기 클라이언트는 상기 실시간 전송 프로토콜 캐싱 서버로부터 수신한 실시간 전송 프로토콜 패킷을 미정렬 구간에 순서 번호대로 삽입하여 재정렬하는 단계; 및 상기 클라이언트는 미정렬 구간에 삽입된 실시간 전송 프로토콜 패킷과 중복되는 패킷을 제거하는 단계를 포함할 수 있다.On the other hand, according to one aspect of the real-time transport protocol packet reordering method according to the present invention for achieving the above object, the client checks the order of the input real-time transport protocol packets and, when detecting the unaligned section, the real-time transport protocol of the unaligned section requesting a packet; transmitting, by a real-time transport protocol caching server, a real-time transport protocol packet of an unaligned section requested from the client to the client; rearranging, by the client, inserting the real-time transport protocol packets received from the real-time transport protocol caching server into an unaligned section in sequence number; and removing, by the client, a packet overlapping with the real-time transport protocol packet inserted in the unaligned section.
또한, 상기 실시간 전송 프로토콜 캐싱 서버가 상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계는, 서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 단계; 상기 클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 단계; 상기 수신된 실시간 전송 프로토콜 패킷 요청정보를 상기 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정하는 단계; 상기 확정된 위치에서 검색된 실시간 전송 프로토콜 패킷을 획득하는 단계; 및 상기 획득한 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계를 포함할 수 있다.In addition, the step of the real-time transport protocol caching server transmitting the real-time transport protocol packet of the unaligned section requested from the client to the client includes buffering the real-time transport protocol service stream transmitted from the service network and storing the buffering information in the memory. to do; receiving real-time transport protocol packet request information from the client; determining a location by searching for the received real-time transport protocol packet request information from among the buffered buffering information; acquiring a real-time transport protocol packet retrieved from the determined location; and transmitting the obtained real-time transport protocol packet to the client.
또한, 상기 실시간 전송 프로토콜 캐싱 서버가 상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계는, 서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 단계; 버퍼링되어 메모리에 저장되는 실시간 전송 프로토콜 패킷의 위치정보를 생성하여 관리하는 단계; 상기 클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 단계; 상기 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 위치를 획득하는 단계; 상기 획득한 실시간 전송 프로토콜 패킷의 위치에 존재하는 실시간 전송 프로토콜 패킷을 획득하는 단계; 및 상기 획득한 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계를 포함할 수 있다.In addition, the step of the real-time transport protocol caching server transmitting the real-time transport protocol packet of the unaligned section requested from the client to the client includes buffering the real-time transport protocol service stream transmitted from the service network and storing the buffering information in the memory. to do; generating and managing location information of real-time transport protocol packets that are buffered and stored in a memory; receiving real-time transport protocol packet request information from the client; acquiring a location of a requested real-time transport protocol packet according to the received real-time transport protocol packet request information; acquiring a real-time transport protocol packet existing at a location of the acquired real-time transport protocol packet; and transmitting the obtained real-time transport protocol packet to the client.
본 발명에 의하면, 실시간 전송 프로토콜 패킷의 미정렬 구간정보에 기초하여 미정렬 구간의 패킷을 즉시 획득함으로써 데이터 처리시간 지연 없이 패킷 재정렬을 할 수 있는 효과가 있다.According to the present invention, there is an effect that packets can be rearranged without delay in data processing time by immediately acquiring a packet of an unaligned section based on unaligned section information of a real-time transport protocol packet.
도 1은 실시간 전송 프로토콜 재정렬(RTP reordering)을 위한 RTP 패킷 구조를 나타내는 도면이다.
도 2는 RTP 패킷 수신 처리부에서의 일반적인 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 방법을 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템 구성을 나타내는 도면이다.
도 4는 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 방법의 일예를 나타내는 도면이다.
도 5는 본 발명의 일실시예에 따른 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템의 세부 구성을 나타내는 도면이다.
도 6은 본 발명의 다른 실시예에 따른 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템의 세부 구성을 나타내는 도면이다.1 is a diagram illustrating an RTP packet structure for real-time transport protocol reordering (RTP reordering).
2 is a diagram illustrating a general real-time transport protocol packet reordering (RTP reordering) method in the RTP packet reception processing unit.
3 is a diagram showing the configuration of a real-time transport protocol packet reordering (RTP reordering) system according to an embodiment of the present invention.
4 is a diagram illustrating an example of a real-time transport protocol packet reordering (RTP reordering) method.
5 is a diagram illustrating a detailed configuration of a real-time transport protocol packet reordering (RTP reordering) system according to an embodiment of the present invention.
6 is a diagram illustrating a detailed configuration of a real-time transport protocol packet reordering (RTP reordering) system according to another embodiment of the present invention.
이하 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Prior to this, the terms or words used in the present specification and claims should not be construed as being limited to conventional or dictionary meanings, and the inventor should properly understand the concept of the term in order to best describe his invention. It should be interpreted as meaning and concept consistent with the technical idea of the present invention based on the principle that it can be defined. Therefore, the configuration shown in the embodiments and drawings described in the present specification is only the most preferred embodiment of the present invention and does not represent all of the technical spirit of the present invention, so at the time of the present application, various It should be understood that there may be equivalents and variations.
도 1은 실시간 전송 프로토콜 재정렬(RTP reordering)을 위한 RTP 패킷 구조를 나타내는 도면이다.1 is a diagram illustrating an RTP packet structure for real-time transport protocol reordering (RTP reordering).
도시된 바와 같이, 실시간 전송 프로토콜 패킷 구조에 대해 살펴보면, V(version)는 2bit로서 실시간 전송 프로토콜의 버전을 나타낼 수 있으며, 현재는 2 값을 항상 표시할 수 있다.As shown, looking at the real-time transport protocol packet structure, V (version) is 2 bits, which may indicate the version of the real-time transport protocol, and currently may always indicate a value of 2.
P(padding)는 1bit로서 만일 패킷 마지막에 하나 이상의 패딩 바이트가 있을 경우를 나타낼 수 있다. 여기서, 패딩 비트란 의미가 없는 비트를 의미할 수 있으며, 패킷을 만들기 위해 의도적으로 추가된 비트일 수 있다.P (padding) is 1 bit and may indicate if there is one or more padding bytes at the end of the packet. Here, the padding bit may mean a meaningless bit, and may be a bit intentionally added to make a packet.
X(Extension)는 1bit로서 고정 헤더 이후의 하나의 확장 헤더가 추가적으로 있음을 의미할 수 있다.X (Extension) is 1 bit and may mean that there is one extension header after the fixed header.
CC(CSRC Count)는 4bit로서 12 바이트 고정 헤더 이후에 표시되는 CSRC identifier의 수를 표시할 수 있다.CC (CSRC Count) is 4 bits and may indicate the number of CSRC identifiers displayed after the 12-byte fixed header.
M(Market)은 1bit로서 패킷 스트림 내에서 프레임 경계와 같은 중요한 이벤트들을 표시하는데 이용될 수 있다. 항상 트러블 슈팅시에 보면 중요할 것 같지만 별로 의미가 없는 비트일 수 있으며, 다음에 오는 PT 필드를 확장하여 표시 비트를 없애기도 할 수 있다.M (Market) is 1 bit and can be used to indicate important events such as frame boundaries within a packet stream. It may always be an important bit when looking at troubleshooting, but it may be meaningless, and it is possible to remove the indication bit by expanding the PT field that follows.
PT(Payload Type)는 7bit로서 RTP 페이로드의 타입을 나타낼 수 있다. 즉, RTP가 전송하고 있는 내용이 G.711로 되어 있는지 H.264로 되어 있는지 등에 대한 정보를 나타낼 수 있다. 또한, 수신 장비가 페이로드 타입을 이해할 수 없다면 반드시 무시해야 한다. 이 의미는 실제 Payload Type은 Capability Exchange시에 항상 교환되므로 상호 인지를 하고 있어야 한다.PT (Payload Type) is 7 bits and may indicate the type of RTP payload. That is, information on whether the content transmitted by the RTP is in G.711 or H.264 can be indicated. Also, if the receiving equipment cannot understand the payload type, it MUST ignore it. This means that the actual payload type is always exchanged at the time of capability exchange, so mutual recognition must be made.
순서 번호(Sequence number)는 16bit로서 보안상의 이유로 랜덤한 번호에서 시작하지만 패킷이 증가할 때마다 1씩 증가될 수 있다. 이를 통해 수신장비는 패킷 손실을 인지하고 복구 매커니즘을 동작하도록 할 수 있다.The sequence number is 16 bits and starts from a random number for security reasons, but may be increased by 1 whenever the number of packets increases. Through this, the receiving device can recognize the packet loss and operate a recovery mechanism.
타임 스탬프(Timestamp)는 32bit로서 RTP 패킷의 첫번째 바이트의 샘플링 순간을 나타낼 수 있다. 초기값은 순서 번호 와 마찬가지로 랜덤하게 결정될 수 있으며, 만일 샘플링이 160 단위로 발생한다면 각 블럭은 160 단위로 증가하게 될 수 있다. 실제 코덱마다 샘플링 레이트가 차이가 있으므로 그에 맞게 증가할 수 있다.The timestamp is 32 bits and may indicate the sampling moment of the first byte of the RTP packet. The initial value can be randomly determined like the sequence number, and if sampling occurs in 160 units, each block can be increased by 160 units. Since the sampling rate is different for each actual codec, it may increase accordingly.
SSRC(Synchronization Source) identifier는 32bit로서 동기화 소스를 나타내고 랜덤하게 결정될 수 있으며, 같은 RTP 세션 내에 서로 다른 값을 가져야 한다.The SSRC (Synchronization Source) identifier indicates a synchronization source as 32 bits and can be randomly determined, and must have different values within the same RTP session.
CSRC(Contributing Source) identifier는 32bit로서 다수의 음원이 Audio Mixer를 통해 하나로 통합될 경우 나타낼 수 있다. 따라서, 이 필드를 통해 원 음원에 대해 나타낼 수 있으며, 이 목록에서는 모든 음원의 SSRC identifier가 포함될 수 있다.CSRC (Contributing Source) identifier is 32-bit and can be indicated when multiple sound sources are integrated into one through Audio Mixer. Therefore, the original sound source can be indicated through this field, and SSRC identifiers of all sound sources can be included in this list.
특히, 순서 번호는 16bit value로서 이 값을 기준으로 패킷의 순서를 확인하여 패킷을 재정렬할 수 있다.In particular, as the sequence number is a 16-bit value, packets can be rearranged by checking the order of the packets based on this value.
재정렬은 네트워크를 통해 RTP protocol로 데이터를 전송할 경우, 수신기에서의 수신 패킷의 순서가 순차적으로 수신되지 않을 수 있다. 이 경우, 정상적인 payload 데이터 처리를 위해서는 일정시간 버퍼링을 한 뒤에 패킷의 순서를 순서 번호 를 기준으로 정확히 재정렬을 한 후 데이터 처리를 진행할 수 있다. 이러한 과정을 RTP 패킷 재정렬이라 할 수 있다.In the case of reordering, when data is transmitted using the RTP protocol over the network, the order of received packets at the receiver may not be sequentially received. In this case, for normal payload data processing, after buffering for a certain period of time, the order of packets can be accurately rearranged based on the sequence number, and then data processing can be performed. This process may be referred to as RTP packet reordering.
도 2는 RTP 패킷 수신 처리부에서의 일반적인 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 방법을 나타내는 도면이다.2 is a diagram illustrating a general real-time transport protocol packet reordering (RTP reordering) method in the RTP packet reception processing unit.
도시된 바와 같이, RTP 패킷 수신 처리부(10)의 패킷 버퍼(11)로 RTP 패킷이 입력될 수 있으며 이때 입력되는 RTP 패킷의 순서는 미정렬 상태일 수 있다. 패킷 버퍼(11)는 미정렬 상태의 RTP 패킷을 패킷 재정렬부(12)로 전달하여 패킷 재정렬을 요청할 수 있다. 패킷 재정렬부(12)는 패킷 버퍼(11)에서 전달된 미정렬 상태의 RTP 패킷의 순서를 재정렬할 수 있으며, RTP 패킷 순서 재정렬 상태를 RTP 패킷 처리부(13)로 전달할 수 있다. 즉, RTP 수신단에서 수신되는 데이터를 일정량만큼 버퍼링을 할 수 있으며, 버퍼링되는 데이터를 이용하여 RTP 패킷 재정렬(reordering)을 실시할 수 있다. 그러나, 이러한 방법의 경우에는 패킷 버퍼(11)의 크기만큼의 데이터 처리시간 지연이 발생할 수 있다.As illustrated, RTP packets may be input to the
도 3은 본 발명의 일실시예에 따른 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템 구성을 나타내는 도면이고, 도 4는 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 방법의 일예를 나타내는 도면이다.3 is a diagram showing the configuration of a real-time transport protocol packet reordering (RTP reordering) system according to an embodiment of the present invention, and FIG. 4 is a diagram showing an example of a real-time transport protocol packet reordering (RTP reordering) method.
도시된 바와 같이, 본 발명의 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템은 RTP 패킷 수신 처리부(20)와 RTP 캐싱서버(30)를 포함할 수 있다.As shown, the real-time transport protocol packet reordering (RTP reordering) system of the present invention may include an RTP packet
RTP 패킷 수신 처리부(20)는 실시간 전송 프로토콜 패킷을 입력받아 패킷의 순서를 검사하여 미정렬 상태 검출 시 미정렬 구간 정보에 대한 실시간 전송 프로토콜 패킷을 RTP 캐싱서버(30)로 요청할 수 있으며, 요청한 실시간 전송 프로토콜 패킷을 수신하여 재정렬할 수 있다.The RTP packet
RTP 캐싱서버(30)는 RTP 패킷 수신 처리부(20)의 요청에 따라 요청된 실시간 전송 프로토콜 패킷을 RTP 패킷 수신 처리부(20)로 송신할 수 있다.The
RTP 패킷 수신 처리부(20)는 패킷 검사 재정렬부(21)와 재정렬 패킷 요청부(22) 및 RTP 패킷 처리부(23)를 포함할 수 있다.The RTP packet
패킷 검사 재정렬부(21)는 실시간 전송 프로토콜 패킷이 입력되면 입력된 실시간 전송 프로토콜 패킷의 순서 번호(sequence number)를 실시간으로 체크하여 순서가 미정렬된 미정렬 상태의 구간 정보를 검사할 수 있다. 여기서, 실시간 전송 프로토콜 패킷의 미정렬 상태 검출 시에는 미정렬 구간 정보를 재정렬 패킷 요청부(22)로 전달하여 미정렬 구간의 실시간 전송 프로토콜 패킷을 요청할 수 있다.When a real-time transport protocol packet is input, the packet
패킷 검사 재정렬부(21)는 재정렬 패킷 요청부(22)로부터 요청한 미정렬 구간의 실시간 전송 프로토콜 패킷을 수신하면 수신한 미정렬 구간의 실시간 전송 프로토콜 패킷을 재정렬할 수 있다. 여기서, 패킷 재정렬은 실시간 전송 프로토콜 패킷의 순서 번호에 따라 재정렬할 수 있다.When receiving the real-time transport protocol packet of the unaligned section requested from the
재정렬 패킷 요청부(22)는 패킷 검사 재정렬부(21)로부터 미정렬 구간의 실시간 전송 프로토콜 패킷 요청을 수신하면 RTP 캐싱서버(30)로 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 요청할 수 있다. 이에 따라, RTP 캐싱서버(30)로부터 요청한 미정렬 구간의 실시간 전송 프로토콜 패킷을 수신하면 수신한 미정렬 구간의 실시간 전송 프로토콜 패킷을 패킷 검사 재정렬부(21)로 전달할 수 있다.When the reordering
RTP 패킷 처리부(23)는 패킷 검사 재정렬부(21)에서 재정렬된 실시간 전송 프로토콜 패킷을 수신하여 수신한 실시간 전송 프로토콜 패킷을 처리할 수 있다.The RTP
전술한 바와 같이, 본 발명의 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템에 의하면, RTP 수신단에서 버퍼링을 하지 않고 RTP 패킷의 순서 번호(Sequence Number)를 실시간으로 체크하여 순서 미정렬 상태의 구간을 검출할 수 있다.As described above, according to the real-time transport protocol packet reordering system of the present invention, the sequence number of the RTP packet is checked in real time without buffering at the RTP receiving end, and a section in the unordered state is detected. can do.
또한, RTP 캐싱서버(30)에 미정렬된 패킷 구간을 재정렬 구간으로 만들 수 있는 패킷을 요청할 수 있으며, RTP 캐싱서버(30)에서는 캐싱하고 있는 데이터에서 수신기에서 요청한 순서 번호를 가진 패킷 구간을 찾아서 수신기로 전달할 수 있다.In addition, the
이에 따라, RTP 패킷 수신 처리부(20)의 패킷 검사 재정렬부(21)는 RTP 캐싱서버(30)로부터 수신한 실시간 전송 프로토콜 패킷을 미정렬 상태부에 삽입 후 RTP 패킷 처리부(23)로 출력할 수 있다.Accordingly, the packet
RTP 패킷 수신 처리부(20)의 패킷 검사 재정렬부(21)는 이 후 입력되는 패킷에서 RTP 캐싱서버(30)로부터 수신한 패킷과 동일한 순서 번호(Sequence Number)를 가지는 패킷이 발견되면 해당 패킷을 제거할 수 있다. 이때 제거되는 패킷 혹은 패킷 구간 이후 패킷을 패킷 순서에 맞추어 출력할 수 있다.The packet
이러한 본 발명의 패킷 재정렬 방법은 기본 방법의 시간 지연 요소인 버퍼링을 제거하고, 캐싱 서버로부터 최적 시간 내에 필요한 패킷 정보를 수신할 수 있도록 하여 기본 방법 대비 시간 지연을 감소시킬 수 있다.The packet reordering method of the present invention can reduce the time delay compared to the basic method by removing buffering, which is a time delay element of the basic method, and allowing necessary packet information to be received from the caching server within an optimal time.
도 4에서는 전술한 본 발명의 실시간 전송 프로토콜 패킷의 재정렬 방법에 대한 구체적인 예를 나타내고 있다. 이에 대해 살펴보면, RTP 패킷 수신 처리부(20)의 패킷 검사 재정렬부(21)에서 RTP 패킷 수신 중 순서 번호(SN)가 불연속인 위치를 검출할 수 있다. 예를 들어, 도 4에서와 같이 0x0001, 0x0002, 0x0003, 0x0004, 0x0005 다음 순서가 0x0006이 아닌 0x0009임을 체크하여 패킷 미정렬을 검출할 수 있다.4 shows a specific example of a method for rearranging real-time transport protocol packets according to the present invention. In this regard, the packet
이에 따라, 요청 구간 정보 생성 방법으로 순서 번호 불연속 구간의 시작과 끝 패킷 순서 번호를 도출하여 패킷 미정렬 구간 정보를 생성할 수 있다. 여기서, 패킷 미정렬 구간 정보는 0x0005와 0x0009 사이에 해당하는 0x0006 ~ 0x0008 일 수 있다.Accordingly, packet unaligned section information can be generated by deriving the start and end packet sequence numbers of the sequence number discontinuous section as a method of generating the requested section information. Here, the packet misalignment section information may be 0x0006 to 0x0008 corresponding to between 0x0005 and 0x0009.
이어서, 요청 구간 패킷 요청 및 수신 방법으로 순서 번호 불연속 구간의 시작과 끝 패킷 순서 번호 정보를 RTP 캐싱서버(30)로 송신할 수 있으며, 요청 구간 패킷인 순서 번호 불연속 구간 패킷을 RTP 캐싱서버(30)로부터 수신할 수 있다. 예를 들어, 요청 구간 패킷인 0x0006 ~ 0x0008을 수신할 수 있다.Subsequently, as a request and reception method of the request interval packet, the sequence number information of the start and end packets of the sequence number discontinuous interval may be transmitted to the
이어서, 패킷 재정렬 방법으로 RTP 패킷 수신 처리부(20)의 패킷 검사 재정렬부(21)에서는 요청 구간 패킷을 삽입하여 패킷을 재정렬할 수 있다. 예를 들어, 0x0005와 0x0009 사이에 요청 구간 패킷인 0x0006, 0x0007, 0x0008 순서로 삽입하여 패킷을 재정렬할 수 있다.Subsequently, as a packet reordering method, the packet
이어서, 요청 구간 패킷 삽입 이후 삽입 패킷과 중복되는 패킷을 제거할 수 있다. 예를 들어, 0x0005와 0x0009 사이에 요청 구간 패킷인 0x0006, 0x0007, 0x0008 순서로 삽입한 후 요청 구간 패킷과 중복되는 0x0006, 0x0007, 0x0008 패킷을 제거할 수 있다.Subsequently, after the request interval packet is inserted, a packet overlapping with the inserted packet may be removed. For example, 0x0006, 0x0007, 0x0008 packets overlapping with the request interval packet may be removed after inserting the request interval packets in the order 0x0006, 0x0007, and 0x0008 between 0x0005 and 0x0009.
즉, 클라이언트 측에서의 실시간 전송 프로토콜 패킷 재정렬(RTP Reordering) 방법은 먼저 미정렬된 실시간 전송 프로토콜 패킷을 검출할 수 있다. 예를 들어, SN #5 ~ SN #9 순서의 실시간 전송 프로토콜 패킷에서 SN #9 패킷 수신 시 미정렬 실시간 전송 프로토콜 패킷을 검출할 수 있다.That is, the real-time transport protocol packet reordering (RTP reordering) method on the client side may first detect unaligned real-time transport protocol packets. For example, when an
이어서, 미정렬 실시간 전송 프로토콜 패킷을 검출함에 따라 미정렬 구간을 확정할 수 있다. 예를 들어, 미정렬 구간을 SN #5 ~ SN #9 구간으로 확정할 수 있다.Then, the unaligned section may be determined by detecting the unaligned real-time transport protocol packet. For example, the unaligned section may be determined as the
이어서, 미정렬 구간을 확정한 이후에는 [Start SN#, End SN#]와 같은 형식으로 요청 패킷 정보를 확정할 수 있다. 예를 들어, 미정렬 구간을 SN #5 ~ SN #9로 확정한 경우 요청 패킷 정보를 Start (SN#6) ~ End (SN#8)와 같이 확정할 수 있다.Subsequently, after determining the unaligned section, the request packet information may be determined in a format such as [Start SN#, End SN#]. For example, when the unaligned section is determined to be
이어서, 클라이언트는 확정된 요청 패킷 정보를 서버로 송신할 수 있으며, 요청한 패킷을 서버로부터 수신할 수 있다. 예를 들어, 확정된 요청 패킷 정보인 Start (SN#6) ~ End (SN#8)를 서버로 송신하여 RTP packet(SN#6) ~ RTP packet(SN#8)을 서버로부터 수신할 수 있다.Subsequently, the client may transmit the determined request packet information to the server, and may receive the requested packet from the server. For example, it is possible to receive RTP packets (SN#6) to RTP packets (SN#8) from the server by transmitting Start (SN#6) to End (SN#8), which are determined request packet information, to the server. .
이어서, 클라이언트는 서버로부터 수신한 패킷을 기존 서버스 수신 중인 패킷에 삽입할 수 있다. 예를 들어, 서버로부터 수신한 패킷 RTP packet(SN#6) ~ RTP packet(SN#8)을 기존 서버스 수신 중인 패킷 RTP packet(SN#5) ~ RTP packet(SN#9)에 삽입할 수 있다.Subsequently, the client may insert the packet received from the server into the existing server receiving packet. For example, a packet RTP packet (SN#6) to RTP packet (SN#8) received from the server may be inserted into a packet RTP packet (SN#5) to RTP packet (SN#9) being received by the existing server. .
이어서, 클라이언트는 서버로부터 수신한 패킷과 중복되는 패킷을 삭제할 수 있다. 예를 들어, 서버로부터 수신한 패킷이 RTP packet(SN#6) ~ RTP packet(SN#8)인 경우 이와 중복되는 패킷 RTP packet(SN#6) ~ RTP packet(SN#8)을 삭제할 수 있다.Subsequently, the client may delete a packet that overlaps with the packet received from the server. For example, when the packets received from the server are RTP packets (SN#6) to RTP packets (SN#8), overlapping packets RTP packets (SN#6) to RTP packets (SN#8) may be deleted. .
도 5는 본 발명의 일실시예에 따른 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템의 세부 구성을 나타내는 도면이다.5 is a diagram illustrating a detailed configuration of a real-time transport protocol packet reordering (RTP reordering) system according to an embodiment of the present invention.
도시된 바와 같이, 본 발명의 실시간 전송 프로토콜 패킷 재정렬 시스템은 클라이언트(100)와 실시간 전송 프로토콜 패킷 재정렬을 위한 실시간 전송 프로토콜 캐싱 서버(200)를 포함할 수 있다.As shown, the real-time transport protocol packet reordering system of the present invention may include a
클라이언트(100)는 미정렬된 구간의 실시간 전송 프로토콜 패킷 요청 정보를 실시간 전송 프로토콜 캐싱 서버(200)로 전송하여 요청할 수 있으며, 요청한 실시간 전송 프로토콜 패킷 정보를 실시간 전송 프로토콜 캐싱 서버(200)로부터 수신할 수 있다. 여기서, 실시간 전송 프로토콜 패킷 요청 정보에는 예를 들어, 미정렬 구간정보로서 시작 순서번호와 끝 순서번호 [Start SN#, End SN#] 정보가 포함되어 전송될 수 있다.The
실시간 전송 프로토콜 캐싱 서버(200)는 클라이언트(100)의 요청에 따라 미정렬 구간의 시작 순서번호와 끝 순서번호 [Start SN#, End SN#] 정보에 기초하여 요청된 실시간 전송 프로토콜 패킷을 송신할 수 있다.The real-time transport
실시간 전송 프로토콜 캐싱 서버(200)는 실시간 전송 프로토콜 패킷 요청정보 수신부(210)와, 실시간 전송 프로토콜 패킷 위치 확정부(220)와, 실시간 전송 프로토콜 서비스 스트림 버퍼링부(230)와, 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부(240) 및 실시간 전송 프로토콜 패킷 송신부(250)를 포함할 수 있다.The real-time transport
실시간 전송 프로토콜 패킷 요청정보 수신부(210)는 클라이언트(100)로부터 실시간 전송 프로토콜 패킷 요청정보를 수신할 수 있다. 여기서, 클라이언트(100)로부터 수신하는 실시간 전송 프로토콜 패킷 요청정보는 패킷의 시작 순서번호와 끝 순서번호 정보를 포함할 수 있다.The real-time transport protocol packet
실시간 전송 프로토콜 패킷 위치 확정부(220)는 실시간 전송 프로토콜 패킷 요청정보 수신부(210)에서 수신된 실시간 전송 프로토콜 패킷 요청정보를 실시간 전송 프로토콜 서비스 스트림 버퍼링부(230)에서 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정할 수 있다. 즉, 실시간 전송 프로토콜 패킷 위치 확정부(220)는 실시간 전송 프로토콜 패킷 요청정보 수신부(210)에서 수신한 실시간 전송 프로토콜 패킷 요청정보에 포함된 패킷의 시작 순서번호와 끝 순서번호 정보를 실시간 전송 프로토콜 서비스 스트림 버퍼링부(230)에서 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정할 수 있다.The real-time transport protocol packet
실시간 전송 프로토콜 서비스 스트림 버퍼링부(230)는 서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장할 수 있다. 여기서, 버퍼링 정보가 저장되는 메모리는 메인 메모리 또는 고속 메모리를 사용하는 것이 바람직할 수 있다.The real-time transport protocol service
클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부(240)는 실시간 전송 프로토콜 패킷 위치 확정부(220)에서 확정된 위치에서 검색된 실시간 전송 프로토콜 패킷을 실시간 전송 프로토콜 서비스 스트림 버퍼링부(230)로부터 획득할 수 있다.The real-time transport protocol
실시간 전송 프로토콜 패킷 송신부(250)는 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부(240)에서 획득한 실시간 전송 프로토콜 패킷을 사용자 데이터그램 프로토콜(UDP) 방식으로 클라이언트(100)로 송신할 수 있다. 여기서, 요청 패킷 정보는 사용자 데이터그램 프로토콜(UDP) 방식 이외의 다른 방법으로 TCP나 기타 방법을 사용할 수도 있다.The real-time transport
이와 같이, 본 발명의 서버는 서비스 망으로부터 서비스 스트림을 수신하여 일정 구간 버퍼링을 수행할 수 있다. 이때, 버퍼링 데이터는 메인 메모리 혹은 기타 고속 메모리에 저장되어 처리될 수 있으며, 메인 메모리 혹은 디스크에 저장될 수 있으나, 최소 시간내 패킷 데이터를 처리하기 위해서는 메인 메모리 혹은 기타 고속 메모리에 저장되어 처리되는 것이 바람직할 수 있다.As described above, the server of the present invention may receive a service stream from a service network and perform buffering for a predetermined period. In this case, the buffering data may be stored and processed in the main memory or other high-speed memory, and may be stored in the main memory or disk. may be desirable.
또한, 서버는 클라이언트로부터 RTP 패킷 요청 정보를 수신할 수 있다. RTP 패킷 요청 정보는 [Start SN#, End SN#]와 같은 형식으로 수신할 수 있으며, 예를 들어, RTP 패킷 요청 정보 Start (SN#6) ~ End (SN#8)를 수신할 수 있다.Also, the server may receive RTP packet request information from the client. The RTP packet request information may be received in a format such as [Start SN#, End SN#], for example, RTP packet request information Start (SN#6) to End (SN#8) may be received.
또한, 서버는 버퍼링 정보 중 해당 순서 번호(SN) 패킷 정보를 검색하여 위치를 확정할 수 있다. 하기에서 설명되는 바와 같이 순서 번호별 패킷 위치 정보가 별도로 생성되어 관리되는 경우 이 정보를 이용하여 보다 빠르게 저복잡도로 요청 패킷을 획득할 수 있다. 즉, 서버는 검색된 실시간 전송 프로토콜 패킷을 버퍼링부로부터 획득할 수 있다.Also, the server may determine the location by searching for corresponding sequence number (SN) packet information among the buffering information. As described below, when packet location information for each sequence number is separately generated and managed, a request packet can be acquired more quickly and with low complexity by using this information. That is, the server may obtain the searched real-time transport protocol packet from the buffering unit.
도 6은 본 발명의 다른 실시예에 따른 실시간 전송 프로토콜 패킷 재정렬(RTP reordering) 시스템의 세부 구성을 나타내는 도면이다.6 is a diagram illustrating a detailed configuration of a real-time transport protocol packet reordering (RTP reordering) system according to another embodiment of the present invention.
도시된 바와 같이, 본 발명의 다른 실시예에 따른 실시간 전송 프로토콜 패킷 재정렬 시스템은 클라이언트(100)와 실시간 전송 프로토콜 패킷 재정렬을 위한 실시간 전송 프로토콜 캐싱 서버(300)를 포함할 수 있다.As shown, the real-time transport protocol packet reordering system according to another embodiment of the present invention may include a
클라이언트(100)는 미정렬된 구간의 실시간 전송 프로토콜 패킷 요청 정보를 실시간 전송 프로토콜 캐싱 서버(300)로 전송하여 요청할 수 있으며, 요청한 실시간 전송 프로토콜 패킷 정보를 실시간 전송 프로토콜 캐싱 서버(300)로부터 수신할 수 있다. 여기서, 실시간 전송 프로토콜 패킷 요청 정보에는 예를 들어, 미정렬 구간정보로서 시작 순서번호와 끝 순서번호 [Start SN#, End SN#] 정보가 포함되어 전송될 수 있다.The
실시간 전송 프로토콜 캐싱 서버(300)는 클라이언트(100)의 요청에 따라 미정렬 구간의 시작 순서번호와 끝 순서번호 [Start SN#, End SN#] 정보에 기초하여 요청된 실시간 전송 프로토콜 패킷을 송신할 수 있다.The real-time transport
실시간 전송 프로토콜 캐싱 서버(300)는 실시간 전송 프로토콜 패킷 요청정보 수신부(310)와, 실시간 전송 프로토콜 패킷 위치 획득부(320)와, 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부(330)와, 실시간 전송 프로토콜 서비스 스트림 버퍼링부(340)와, 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부(350) 및 실시간 전송 프로토콜 패킷 송신부(360)를 포함할 수 있다.The real-time transport
실시간 전송 프로토콜 패킷 요청정보 수신부(310)는 클라이언트(100)로부터 실시간 전송 프로토콜 패킷 요청정보를 수신할 수 있다. 여기서, 클라이언트(100)로부터 수신하는 실시간 전송 프로토콜 패킷 요청정보는 패킷의 시작 순서번호와 끝 순서번호 정보를 포함할 수 있다.The real-time transport protocol packet
실시간 전송 프로토콜 패킷 위치 획득부(320)는 실시간 전송 프로토콜 패킷 요청정보 수신부(310)에서 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 위치를 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부(330)로부터 획득할 수 있다. 즉, 실시간 전송 프로토콜 패킷 위치 획득부(320)는 실시간 전송 프로토콜 패킷 요청정보 수신부(310)에서 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 시작 순서번호와 끝 순서번호에 해당하는 메모리 상의 위치를 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부(330)로부터 획득할 수 있다.The real-time transport protocol packet
실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부(330)는 실시간 전송 프로토콜 서비스 스트림 버퍼링부(340)에서 버퍼링되어 메모리에 저장되는 실시간 전송 프로토콜 패킷의 위치정보를 생성하여 관리할 수 있다. 여기서, 실시간 전송 프로토콜 패킷의 위치정보는 실시간 전송 프로토콜 패킷의 순서번호 정보와 각 순서번호별 패킷의 위치정보를 포함할 수 있다. 또한, 각 순서번호별 패킷의 위치정보는 각 순서번호별 패킷의 처음 시작위치 정보를 포함할 수 있다.The real-time transport protocol packet location information data
실시간 전송 프로토콜 서비스 스트림 버퍼링부(340)는 서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장할 수 있다.The real-time transport protocol service
클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부(350)는 실시간 전송 프로토콜 패킷 위치 획득부(320)에서 획득한 실시간 전송 프로토콜 패킷의 위치에 존재하는 실시간 전송 프로토콜 패킷을 실시간 전송 프로토콜 서비스 스트림 버퍼링부(340)로부터 획득할 수 있다. 즉, 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부(350)는 실시간 전송 프로토콜 패킷 위치 획득부(320)에서 획득한 실시간 전송 프로토콜 패킷의 시작 순서번호와 끝 순서번호에 해당하는 메모리 상의 위치에 존재하는 실시간 전송 프로토콜 패킷을 실시간 전송 프로토콜 서비스 스트림 버퍼링부(340)로부터 획득할 수 있다.The real-time transport protocol
실시간 전송 프로토콜 패킷 송신부(360)는 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부(350)에서 획득한 실시간 전송 프로토콜 패킷을 클라이언트(100)로 송신할 수 있다.The real-time transport
이와 같이, 본 발명의 서버는 보다 빠른 요청 구간 정보 획득을 위해 버퍼링되는 실시간 전송 프로토콜 패킷의 순서 번호(SN) 정보와 해당 순서 번호의 패킷의 처음 시작위치 정보로 구성되는 패킷 위치정보를 생성하여 데이터로 관리할 수 있다.In this way, the server of the present invention generates packet location information composed of sequence number (SN) information of a real-time transport protocol packet buffered for faster request section information acquisition and first start location information of a packet of the corresponding sequence number to obtain data can be managed with
즉, 서버는 패킷 위치정보를 통해 클라이언트로부터 요청된 시작 및 끝 패킷의 위치를 메모리 검색을 하지 않고, 관리 데이터로부터 직접적으로 획득하여 최단 및 최소 복잡도로 해당 메모리 위치에서 요청 패킷 정보를 획득할 수 있다. 예를 들어, 서버는 클라이언트로부터 실시간 전송 프로토콜 패킷 요청 정보 Start (SN#6) ~ End (SN#8)를 수신하는 경우 순서 번호별 패킷 위치 정보를 이용하여 메인 메모리 상에서의 해당 요청 패킷의 위치를 확정할 수 있다.That is, the server can obtain the requested packet information from the corresponding memory location with the shortest and minimum complexity by directly obtaining the location of the start and end packets requested from the client through the packet location information from the management data without performing a memory search. . For example, when the server receives the real-time transport protocol packet request information Start (SN#6) ~ End (SN#8) from the client, the server uses the packet location information for each sequence number to determine the location of the corresponding request packet in the main memory. can be confirmed
이에 따라, 서버는 확정된 메인 메모리 상에서의 시작과 끝 위치에 존재하는 정보를 획득하여 요청 패킷 데이터로 확정할 수 있으며, 확정된 요청 패킷 데이터를 클라이언트로 송신할 수 있다. 이때, 요청 패킷 데이터는 전술한 바와 같이 사용자 데이터그램 프로토콜(UDP) 방식으로 송신할 수 있으며, 다른 방법으로 TCP나 기타 방법을 사용할 수도 있다.Accordingly, the server may acquire information existing at the determined start and end positions on the main memory, determine it as the request packet data, and transmit the determined request packet data to the client. In this case, the request packet data may be transmitted using the user datagram protocol (UDP) method as described above, or TCP or other methods may be used as another method.
이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.As described above, although the present invention has been described with reference to limited embodiments and drawings, the present invention is not limited thereto, and the technical idea of the present invention and the following by those skilled in the art to which the present invention pertains. Of course, various modifications and variations are possible within the scope of equivalents of the claims to be described.
20 : RTP 패킷 수신 처리부
21 : 패킷 검사 재정렬부
22 : 재정렬 패킷 요청부
23 : RTP 패킷 처리부
23 : RTP 캐싱 서버20: RTP packet reception processing unit
21: packet inspection reordering unit
22: reordering packet request unit
23: RTP packet processing unit
23 : RTP caching server
Claims (16)
상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기클라이언트로 송신하는 실시간 전송 프로토콜 캐싱 서버를 포함하고,
상기 재정렬 패킷 요청부는 상기 실시간 전송 프로토콜 캐싱 서버로부터 수신한 실시간 전송 프로토콜 패킷을 상기 패킷 검사 재정렬부로 전달하고,
상기 패킷 검사 재정렬부는 상기 전달된 실시간 전송 프로토콜 패킷을 미정렬 구간에 순서 번호대로 삽입하여 재정렬하고, 이후 입력되는 패킷에서 미정렬 구간에 삽입된 실시간 전송 프로토콜 패킷과 동일한 순서 번호를 갖는 중복되는 패킷을 제거하는 실시간 전송 프로토콜 패킷 재정렬 시스템.a client comprising: a packet inspection reordering unit detecting an unaligned section by inspecting the order of input real-time transport protocol packets, and a reordering packet requesting unit requesting a real-time transport protocol packet of the unaligned section when detecting an unaligned section; and
A real-time transport protocol caching server for transmitting a real-time transport protocol packet of an unaligned section requested from the client to the client,
The reordering packet request unit transmits the real-time transport protocol packet received from the real-time transport protocol caching server to the packet inspection reordering unit,
The packet inspection reordering unit inserts and rearranges the delivered real-time transport protocol packets in an unaligned section in order of order number, and in subsequent incoming packets, overlapping packets having the same sequence number as the real-time transport protocol packets inserted in the unsorted section Real-time transport protocol packet reordering system that removes.
상기 클라이언트는,
상기 입력되는 실시간 전송 프로토콜 패킷의 순서를 검사하여 미정렬 구간을 검출 하는 패킷 검사 재정렬부; 및
상기 패킷 검사 재정렬부에서 검출된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 캐싱 서버로 요청하여 수신하는 재정렬 패킷 요청부를 포함하고,
상기 패킷 검사 재정렬부는 상기 재정렬 패킷 요청부로부터 수신된 미정렬 구간의 실시간 전송 프로토콜 패킷을 미정렬 구간에 순서 번호대로 삽입하여 재정렬하고, 미정렬 구간에 삽입된 실시간 전송 프로토콜 패킷과 중복되는 패킷을 제거하며,
상기 패킷 검사 재정렬부에서 재정렬된 실시간 전송 프로토콜 패킷의 순서 번호 재정렬 상태를 확인하여 출력하는 실시간 전송 프로토콜 패킷 처리부를 더 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.The method according to claim 1,
the client,
a packet inspection reordering unit for detecting an unaligned section by examining the order of the input real-time transport protocol packets; and
and a reordering packet requesting unit for requesting and receiving a real-time transport protocol packet of an unaligned section detected by the packet inspection reordering unit to the real-time transport protocol caching server,
The packet inspection reordering unit inserts and rearranges real-time transport protocol packets in the unaligned section received from the reordering packet requester in sequence numbers in the unaligned section, and removes packets that overlap with the real-time transport protocol packets inserted in the unaligned section and
The real-time transport protocol packet reordering system according to claim 1, further comprising a real-time transport protocol packet processing unit for checking and outputting sequence number reordering status of real-time transport protocol packets rearranged by the packet inspection reordering unit.
상기 실시간 전송 프로토콜 캐싱 서버는,
서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 실시간 전송 프로토콜 서비스 스트림 버퍼링부;
클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 실시간 전송 프로토콜 패킷 요청정보 수신부;
상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신된 실시간 전송 프로토콜 패킷 요청정보를 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부에서 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정하는 실시간 전송 프로토콜 패킷 위치 확정부;
상기 실시간 전송 프로토콜 패킷 위치 확정부에서 확정된 위치에서 검색된 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부로부터 획득하는 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부; 및
상기 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부에서 획득한 실시간 전송 프로토콜 패킷을 클라이언트로 송신하는 실시간 전송 프로토콜 패킷 송신부를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.The method according to claim 1,
The real-time transport protocol caching server,
a real-time transport protocol service stream buffering unit for buffering a real-time transport protocol service stream transmitted from a service network and storing buffering information in a memory;
a real-time transport protocol packet request information receiver configured to receive real-time transport protocol packet request information from a client;
a real-time transport protocol packet position determining unit configured to determine a location by searching for the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiver from among the buffering information buffered by the real-time transport protocol service stream buffering unit;
a real-time transport protocol packet acquisition unit for client transmission that acquires, from the real-time transport protocol service stream buffering unit, the real-time transport protocol packet retrieved from the location determined by the real-time transport protocol packet position determining unit; and
and a real-time transport protocol packet transmitter configured to transmit the real-time transport protocol packet obtained by the real-time transport protocol packet acquisition unit for client transmission to the client.
상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부는 버퍼링 정보를 메인 메모리 또는 고속 메모리에 저장하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.4. The method according to claim 3,
The real-time transport protocol packet reordering system, wherein the real-time transport protocol service stream buffering unit stores buffering information in a main memory or a high-speed memory.
상기 실시간 전송 프로토콜 패킷 요청정보 수신부가 클라이언트로부터 수신하는 실시간 전송 프로토콜 패킷 요청정보는 패킷의 시작 순서번호와 끝 순서번호 정보를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.4. The method according to claim 3,
The real-time transport protocol packet reordering system, characterized in that the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiver from the client includes information on a start sequence number and an end sequence number of the packet.
상기 실시간 전송 프로토콜 패킷 위치 확정부는 상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신한 실시간 전송 프로토콜 패킷 요청정보에 포함된 패킷의 시작 순서번호와 끝 순서번호 정보를 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부에서 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.6. The method of claim 5,
The real-time transport protocol packet position determining unit buffers the start sequence number and the end sequence number information of the packets included in the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiver in the real-time transport protocol service stream buffering unit. A real-time transport protocol packet reordering system, characterized in that the location is determined by searching among buffering information.
상기 실시간 전송 프로토콜 패킷 송신부는 클라이언트로 송신하는 실시간 전송 프로토콜 패킷을 사용자 데이터그램 프로토콜 방식으로 송신하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.4. The method according to claim 3,
The real-time transport protocol packet reordering system, characterized in that the real-time transport protocol packet transmitter transmits the real-time transport protocol packet to the client in a user datagram protocol method.
상기 실시간 전송 프로토콜 캐싱 서버는,
서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 실시간 전송 프로토콜 서비스 스트림 버퍼링부;
상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부에서 버퍼링되어 메모리에 저장되는 실시간 전송 프로토콜 패킷의 위치정보를 생성하여 관리하는 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부;
클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 실시간 전송 프로토콜 패킷 요청정보 수신부;
상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 위치를 상기 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부로부터 획득하는 실시간 전송 프로토콜 패킷 위치 획득부;
상기 실시간 전송 프로토콜 패킷 위치 획득부에서 획득한 실시간 전송 프로토콜 패킷의 위치에 존재하는 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부로부터 획득하는 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부; 및
상기 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부에서 획득한 실시간 전송 프로토콜 패킷을 클라이언트로 송신하는 실시간 전송 프로토콜 패킷 송신부를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.The method according to claim 1,
The real-time transport protocol caching server,
a real-time transport protocol service stream buffering unit for buffering a real-time transport protocol service stream transmitted from a service network and storing buffering information in a memory;
a real-time transport protocol packet location information data generation and management unit for generating and managing location information of real-time transport protocol packets buffered by the real-time transport protocol service stream buffering unit and stored in a memory;
a real-time transport protocol packet request information receiver configured to receive real-time transport protocol packet request information from a client;
a real-time transport protocol packet position acquisition unit for acquiring a location of a requested real-time transport protocol packet from the real-time transport protocol packet position information data generation and management unit according to the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiving unit;
a real-time transport protocol packet acquisition unit for client transmission that acquires, from the real-time transport protocol service stream buffering unit, a real-time transport protocol packet existing at a location of the real-time transport protocol packet acquired by the real-time transport protocol packet position acquisition unit; and
and a real-time transport protocol packet transmitter configured to transmit the real-time transport protocol packet obtained by the real-time transport protocol packet acquisition unit for client transmission to the client.
상기 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부에서 생성하는 실시간 전송 프로토콜 패킷의 위치정보는 실시간 전송 프로토콜 패킷의 순서번호 정보와 각 순서번호별 패킷의 위치정보를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.9. The method of claim 8,
The real-time transport protocol packet location information generated by the real-time transport protocol packet location information data generation and management unit includes sequence number information of the real-time transport protocol packet and location information of the packets for each sequence number. system.
상기 각 순서번호별 패킷의 위치정보는 각 순서번호별 패킷의 처음 시작위치 정보를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.10. The method of claim 9,
The real-time transport protocol packet reordering system, characterized in that the location information of the packet for each sequence number includes information on the first start location of the packet for each sequence number.
상기 실시간 전송 프로토콜 패킷 요청정보 수신부가 클라이언트로부터 수신하는 실시간 전송 프로토콜 패킷 요청정보는 패킷의 시작 순서번호와 끝 순서번호 정보를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.10. The method of claim 9,
The real-time transport protocol packet reordering system, characterized in that the real-time transport protocol packet request information received by the real-time transport protocol packet request information receiver from the client includes information on a start sequence number and an end sequence number of the packet.
상기 실시간 전송 프로토콜 패킷 위치 획득부는 상기 실시간 전송 프로토콜 패킷 요청정보 수신부에서 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 시작 순서번호와 끝 순서번호에 해당하는 메모리 상의 위치를 상기 실시간 전송 프로토콜 패킷 위치정보 데이터 생성관리부로부터 획득하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.12. The method of claim 11,
The real-time transport protocol packet position acquisition unit determines the locations in the memory corresponding to the start sequence number and the end sequence number of the real-time transport protocol packet requested according to the real-time transport protocol packet request information received from the real-time transport protocol packet request information receiver in the real time A real-time transport protocol packet reordering system, characterized in that it is acquired from the transport protocol packet location information data generation and management unit.
상기 클라이언트 송신용 실시간 전송 프로토콜 패킷 획득부는 상기 실시간 전송 프로토콜 패킷 위치 획득부에서 획득한 실시간 전송 프로토콜 패킷의 시작 순서번호와 끝 순서번호에 해당하는 메모리 상의 위치에 존재하는 실시간 전송 프로토콜 패킷을 상기 실시간 전송 프로토콜 서비스 스트림 버퍼링부로부터 획득하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 시스템.13. The method of claim 12,
The real-time transport protocol packet acquisition unit for client transmission transmits the real-time transport protocol packet existing at a location in the memory corresponding to the start sequence number and the end sequence number of the real-time transport protocol packet acquired by the real-time transport protocol packet position acquisition unit in the real-time A real-time transport protocol packet reordering system, characterized in that it is obtained from a protocol service stream buffering unit.
상기 클라이언트는 재정렬 패킷 요청부를 통해 미정렬 구간 검출 시 미정렬 구간의 실시간 전송 프로토콜 패킷을 요청하는 단계;
실시간 전송 프로토콜 캐싱 서버가 상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 클라이언트의 상기 재정렬 패킷 요청부로 송신하는 단계;
상기 클라이언트의 상기 재정렬 패킷 요청부가 상기 실시간 전송 프로토콜 캐싱 서버로부터 수신한 실시간 전송 프로토콜 패킷을 상기 패킷 검사 재정렬부로 전달하는 단계;
상기 패킷 검사 재정렬부가 상기 전달된 실시간 전송 프로토콜 패킷을 미정렬 구간에 순서 번호대로 삽입하여 재정렬하는 단계; 및
상기 클라이언트는 이후 입력되는 패킷에서 미정렬 구간에 삽입된 실시간 전송 프로토콜 패킷과 동일한 순서 번호를 갖는 중복되는 패킷을 제거하는 단계를 포함하는 실시간 전송 프로토콜 패킷 재정렬 방법.detecting, by the client, an unaligned section by examining the order of the real-time transport protocol packets input through the packet inspection reordering unit;
requesting, by the client, a real-time transport protocol packet of the unaligned section when the unaligned section is detected through the reordering packet requesting unit;
transmitting, by a real-time transport protocol caching server, a real-time transport protocol packet of an unaligned section requested from the client to the reordering packet request unit of the client;
transferring the real-time transport protocol packet received from the real-time transport protocol caching server by the reordering packet request unit of the client to the packet inspection reordering unit;
reordering, by the packet inspection reordering unit, by inserting the delivered real-time transport protocol packets in an unaligned section in sequence number; and
and removing, by the client, a duplicate packet having the same sequence number as that of a real-time transport protocol packet inserted in an unaligned section from a subsequent packet.
상기 실시간 전송 프로토콜 캐싱 서버가 상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계는,
서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 단계;
상기 클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 단계;
상기 수신된 실시간 전송 프로토콜 패킷 요청정보를 상기 버퍼링된 버퍼링 정보 중에서 검색하여 위치를 확정하는 단계;
상기 확정된 위치에서 검색된 실시간 전송 프로토콜 패킷을 획득하는 단계; 및
상기 획득된 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 방법.15. The method of claim 14,
The step of the real-time transport protocol caching server transmitting the real-time transport protocol packet of the unaligned section requested from the client to the client,
Buffering a real-time transport protocol service stream transmitted from a service network and storing buffering information in a memory;
receiving real-time transport protocol packet request information from the client;
determining a location by searching for the received real-time transport protocol packet request information from among the buffered buffering information;
acquiring a real-time transport protocol packet retrieved from the determined location; and
and transmitting the obtained real-time transport protocol packet to the client.
상기 실시간 전송 프로토콜 캐싱 서버가 상기 클라이언트로부터 요청된 미정렬 구간의 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계는,
서비스 망으로부터 전송되는 실시간 전송 프로토콜 서비스 스트림을 버퍼링하여 버퍼링 정보를 메모리에 저장하는 단계;
버퍼링되어 메모리에 저장되는 실시간 전송 프로토콜 패킷의 위치정보를 생성하여 관리하는 단계;
상기 클라이언트로부터 실시간 전송 프로토콜 패킷 요청정보를 수신하는 단계;
상기 수신된 실시간 전송 프로토콜 패킷 요청정보에 따라 요청된 실시간 전송 프로토콜 패킷의 위치를 획득하는 단계;
상기 획득된 실시간 전송 프로토콜 패킷의 위치에 존재하는 실시간 전송 프로토콜 패킷을 획득하는 단계; 및
상기 획득된 실시간 전송 프로토콜 패킷을 상기 클라이언트로 송신하는 단계를 포함하는 것을 특징으로 하는 실시간 전송 프로토콜 패킷 재정렬 방법.15. The method of claim 14,
The step of the real-time transport protocol caching server transmitting the real-time transport protocol packet of the unaligned section requested from the client to the client,
Buffering a real-time transport protocol service stream transmitted from a service network and storing buffering information in a memory;
generating and managing location information of real-time transport protocol packets that are buffered and stored in a memory;
receiving real-time transport protocol packet request information from the client;
acquiring a location of a requested real-time transport protocol packet according to the received real-time transport protocol packet request information;
acquiring a real-time transport protocol packet existing at the location of the acquired real-time transport protocol packet; and
and transmitting the obtained real-time transport protocol packet to the client.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200086521A KR102334877B1 (en) | 2020-07-14 | 2020-07-14 | reordering system and method for realtime transport protocol packet |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200086521A KR102334877B1 (en) | 2020-07-14 | 2020-07-14 | reordering system and method for realtime transport protocol packet |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102334877B1 true KR102334877B1 (en) | 2021-12-03 |
Family
ID=78866464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200086521A KR102334877B1 (en) | 2020-07-14 | 2020-07-14 | reordering system and method for realtime transport protocol packet |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102334877B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050113618A (en) * | 2003-02-28 | 2005-12-02 | 소니 가부시끼 가이샤 | Transmission/reception system, transmitting device and method, and receiving device and method |
KR20090116700A (en) * | 2007-01-09 | 2009-11-11 | 티디에프 | Method for the real-time transmission/reception of data in packets between a server and a client terminal, corresponding server and terminal |
KR101578047B1 (en) | 2010-01-13 | 2015-12-17 | 삼성전자 주식회사 | Apparatus and method to reorder data packets in a communication system |
-
2020
- 2020-07-14 KR KR1020200086521A patent/KR102334877B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050113618A (en) * | 2003-02-28 | 2005-12-02 | 소니 가부시끼 가이샤 | Transmission/reception system, transmitting device and method, and receiving device and method |
KR20090116700A (en) * | 2007-01-09 | 2009-11-11 | 티디에프 | Method for the real-time transmission/reception of data in packets between a server and a client terminal, corresponding server and terminal |
KR101578047B1 (en) | 2010-01-13 | 2015-12-17 | 삼성전자 주식회사 | Apparatus and method to reorder data packets in a communication system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2383941B1 (en) | Client terminal, method and system for downloading streaming media | |
US8078744B2 (en) | Communication method and apparatus using hypertext transfer protocol | |
US8031734B2 (en) | System, method and computer program for in-place, lightweight ack promotion in network environment | |
US7734806B2 (en) | Compatible progressive download method and system | |
US20220030040A1 (en) | Set-Up of Media Stream Transmission and Server and Client for Media Stream Transmission | |
US20170161377A1 (en) | Methods and apparatus to process call packets collected in a communications network | |
KR20080068690A (en) | Method and apparatus for rtp egress streaming using complementrary directing file | |
KR100798926B1 (en) | Apparatus and method for forwarding packet in packet switch system | |
JP2004180127A (en) | Communication equipment, and transmitter and receiver | |
US20060174058A1 (en) | Recirculation buffer for semantic processor | |
CN110830460B (en) | Connection establishing method and device, electronic equipment and storage medium | |
US11153360B2 (en) | Methods and systems for codec detection in video streams | |
KR101163770B1 (en) | Method for processing a sequence of data packets in a receiver apparatus, as well as a receiver apparatus | |
US8068515B2 (en) | Faster multimedia synchronization of broadcast streams using router caching of RTCP packets | |
CN107888710A (en) | A kind of message forwarding method and device | |
KR102334877B1 (en) | reordering system and method for realtime transport protocol packet | |
CN109951425A (en) | TCP flow state integrity detection method based on FPGA | |
US20070220432A1 (en) | Isochronous Audio Network Software Interface | |
CN108200481B (en) | RTP-PS stream processing method, device, equipment and storage medium | |
US7466654B1 (en) | Method of detecting intermediary communication device | |
KR20160123562A (en) | Receiver for processing data packet and data packet processing method of receiver | |
CN113364790B (en) | Data transmission method and device | |
US20240137431A1 (en) | Packet sorting and reassembly circuit module | |
CN114978437B (en) | Data compensation system, method, electronic equipment and storage medium | |
KR100847168B1 (en) | Apparatus and method for rearranging packet sequence for processing jitter in network based on udp/rtp |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |