KR20220072386A - Method for improving performance of multi-path transmission control protocol in wireless communication environment - Google Patents

Method for improving performance of multi-path transmission control protocol in wireless communication environment Download PDF

Info

Publication number
KR20220072386A
KR20220072386A KR1020200159927A KR20200159927A KR20220072386A KR 20220072386 A KR20220072386 A KR 20220072386A KR 1020200159927 A KR1020200159927 A KR 1020200159927A KR 20200159927 A KR20200159927 A KR 20200159927A KR 20220072386 A KR20220072386 A KR 20220072386A
Authority
KR
South Korea
Prior art keywords
packet
control protocol
communication
window size
transmission
Prior art date
Application number
KR1020200159927A
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 KR1020200159927A priority Critical patent/KR20220072386A/en
Publication of KR20220072386A publication Critical patent/KR20220072386A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results
    • 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/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • 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/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Abstract

무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법이 제공된다. 상기 방법은 복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계; 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 송신 단말에서 상기 복수의 통신 인터페이스 중 어느 하나를 선택하는 단계; 및 상기 선택된 통신 인터페이스에 기초하여 수신 단말로 패킷을 전송하는 단계를 포함한다.A method for improving the performance of a multi-path transmission control protocol in a wireless communication environment is provided. The method includes measuring a round trip delay time of each of a plurality of communication interfaces, a window size of a transmission/reception side, and a transmission packet amount; selecting any one of the plurality of communication interfaces in the transmitting terminal by learning the round trip delay time, the window size of the transmitting/receiving side, and the amount of transport packets; and transmitting a packet to a receiving terminal based on the selected communication interface.

Description

무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법{METHOD FOR IMPROVING PERFORMANCE OF MULTI-PATH TRANSMISSION CONTROL PROTOCOL IN WIRELESS COMMUNICATION ENVIRONMENT}Method for improving the performance of multi-path transmission control protocol in wireless communication environment

본 발명은 무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법에 관한 것이다.The present invention relates to a method for improving the performance of a multi-path transmission control protocol in a wireless communication environment.

다중 경로 TCP(MPTCP)는 다중 경로로 데이터를 전송 제어하는 프로토콜로, 기존 TCP 세션을 통해 전송되는 데 이터를 다중 경로로 전송하게 하는 프로토콜이다. MPTCP는 사용자 단말의 무선 인터페이스를 동시에 사용하면 서 모바일 데이터 속도를 증가시키거나 보이지 않게 보조 연결을 유지함으로써 혼잡한 무선망 환경에서 안정적 인 서비스를 제공하는 수단으로 사용된다.Multipath TCP (MPTCP) is a protocol for controlling data transmission through multiple paths, and it is a protocol that allows data transmitted through an existing TCP session to be transmitted through multiple paths. MPTCP is used as a means of providing stable services in a congested wireless network environment by simultaneously using the user terminal's wireless interface while increasing the mobile data rate or maintaining an invisible auxiliary connection.

하지만, 종래 기술에 따른 MPTCP는 패킷 손실 또는 사용되는 인터페이스 간의 전송 속도의 차이로 인한 성능이 저하되는 문제가 있었다.However, MPTCP according to the prior art has a problem in that the performance is deteriorated due to packet loss or a difference in transmission speed between interfaces used.

공개특허공보 제10-2015-0123185호 (2015.11.03)Laid-open Patent Publication No. 10-2015-0123185 (2015.11.03)

본 발명이 해결하고자 하는 과제는 다중 경로 전송 제어 프로토콜에서 무선 통신 인터페이스를 활용하여 통신할 때 사용하는 네트워크의 상태를 예측하여 다중 경로를 통해 전송할 패킷을 스케줄링하여 다중 경로 전송 제어 프로토콜의 성능을 향상시키는 것을 목적으로 한다.The problem to be solved by the present invention is to improve the performance of the multi-path transmission control protocol by scheduling packets to be transmitted through the multi-path by predicting the state of the network used when communicating using the wireless communication interface in the multi-path transmission control protocol. aim to

다만, 본 발명이 해결하고자 하는 과제는 상기된 바와 같은 과제로 한정되지 않으며, 또다른 과제들이 존재할 수 있다.However, the problems to be solved by the present invention are not limited to the problems described above, and other problems may exist.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법은 복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계; 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 송신 단말에서 상기 복수의 통신 인터페이스 중 어느 하나를 선택하는 단계; 및 상기 선택된 통신 인터페이스에 기초하여 수신 단말로 패킷을 전송하는 단계를 포함한다.A method for improving the performance of a multi-path transmission control protocol in a wireless communication environment according to an aspect of the present invention for solving the above problems is to measure the round-trip delay time of each of a plurality of communication interfaces, the window size of the transmission/reception side, and the amount of transmission packets. step; selecting any one of the plurality of communication interfaces in the transmitting terminal by learning the round trip delay time, the window size of the transmitting/receiving side, and the amount of transport packets; and transmitting a packet to a receiving terminal based on the selected communication interface.

본 발명의 일부 실시예에서, 상기 복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계는, 송신 단말과 수신 단말 간의 SYN 패킷 및 ACK 패킷에 기초하여 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정할 수 있다.In some embodiments of the present invention, the step of measuring the round-trip delay time of each of the plurality of communication interfaces, the size of the transmission/reception side window, and the amount of transport packets includes the round-trip delay based on the SYN packet and the ACK packet between the transmitting terminal and the receiving terminal. It is possible to measure the time, the window size of the transmitting/receiving side, and the amount of transport packets.

본 발명의 일부 실시예에서, 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 상기 복수의 통신 인터페이스 중 어느 하나를 선택하는 단계는, 상기 송신 단말에서의 복수의 통신 인터페이스 중 왕복 지연시간이 가장 적은 왕복 지연시간을 갖는 통신 인터페이스를 선택할 수 있다.In some embodiments of the present invention, the step of selecting any one of the plurality of communication interfaces by learning the round trip delay time, the transmission/reception side window size and the amount of transport packets comprises: a round trip delay among a plurality of communication interfaces in the transmitting terminal The communication interface with the lowest round-trip latency can be selected.

본 발명의 일부 실시예에서, 상기 복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계는, 송신 단말에서 상기 복수의 통신 인터페이스를 통해 수신 단말로 패킷을 전송한 시각 및 이에 대응하여 상기 수신 단말이 전송한 ACK 패킷을 수신한 시각에 기초하여 상기 왕복 지연시간을 측정할 수 있다.In some embodiments of the present invention, the step of measuring the round-trip delay time of each of the plurality of communication interfaces, the size of the transmission/reception side window, and the amount of transmission packets comprises: transmitting the packet from the transmitting terminal to the receiving terminal through the plurality of communication interfaces. The round trip delay time may be measured based on the time and the time at which the ACK packet transmitted by the receiving terminal is received.

본 발명의 일부 실시예에서, 상기 복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계는, 상기 송신 단말과 수신 단말이 상기 다중 경로 전송 제어 프로토콜에 기반한 통신 중 서로 주고받는 TCP 패킷의 헤더에 저장된 윈도우 크기 값 및 윈도우 크기 스케일링 값에 기초하여 상기 송수신측 윈도우 크기를 측정할 수 있다.In some embodiments of the present invention, the step of measuring the round-trip delay time of each of the plurality of communication interfaces, the size of the transmission/reception side window, and the amount of transport packets comprises the transmitting terminal and the receiving terminal during communication based on the multi-path transmission control protocol. The window size of the transmitting and receiving side may be measured based on the window size value and the window size scaling value stored in the header of the TCP packet exchanged with each other.

본 발명의 일부 실시예에서, 상기 복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계는, 상기 송신 단말과 수신 단말이 상기 다중 경로 전송 제어 프로토콜에 기반한 통신 중 서로 주고받는 TCP 패킷의 헤더에 저장된 시퀀스 번호에 기초하여 상기 전송 패킷 양을 측정할 수 있다.In some embodiments of the present invention, the step of measuring the round-trip delay time of each of the plurality of communication interfaces, the size of the transmission/reception side window, and the amount of transport packets comprises the transmitting terminal and the receiving terminal during communication based on the multi-path transmission control protocol. The amount of the transport packet may be measured based on a sequence number stored in a header of a TCP packet exchanged with each other.

본 발명의 일부 실시예에서, 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 상기 복수의 통신 인터페이스 중 어느 하나를 선택하는 단계는, 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 Q-Learning 강화학습 알고리즘에 기초하여 학습한 결과 Q-table에 저장된 보상 값이 가장 큰 통신 인터페이스를 선택할 수 있다.In some embodiments of the present invention, the step of selecting any one of the plurality of communication interfaces by learning the round-trip delay time, the transmission/reception side window size, and the transmission packet amount includes the round-trip delay time, the transmission/reception side window size and the transmission packet amount. As a result of learning the quantity based on the Q-Learning reinforcement learning algorithm, the communication interface with the largest reward value stored in the Q-table can be selected.

본 발명의 일부 실시예에서, 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 상기 복수의 통신 인터페이스 중 어느 하나를 선택하는 단계는, 상기 선택된 통신 인터페이스에 상응하는 수신측 윈도우 크기와 상기 선택된 통신 인터페이스를 통해 전송한 패킷들의 크기를 비교하는 단계; 및 상기 비교 결과 상기 수신측 윈도우 크기가 더 작은 경우 상기 복수의 통신 인터페이스 중 차순으로 큰 보상 값을 갖는 통신 인터페이스를 추가적으로 선택하는 단계를 포함할 수 있다.In some embodiments of the present invention, the step of selecting any one of the plurality of communication interfaces by learning the round trip delay time, the transmission/reception side window size and the transmission packet amount includes: the receiving side window size corresponding to the selected communication interface; comparing sizes of packets transmitted through the selected communication interface; and when the size of the receiving-side window is smaller as a result of the comparison, additionally selecting a communication interface having a sequentially large compensation value from among the plurality of communication interfaces.

본 발명의 일부 실시예는, 상기 송신 단말이 수신 단말로부터 소정의 시간 동안 ACK 패킷을 미수신하거나 재전송 요청 ACK를 수신한 경우, 상기 복수의 통신 인터페이스를 통해 수신 단말로 패킷을 전송한 시각 및 송신측 윈도우 크기 중 적어도 하나를 업데이트하는 단계를 더 포함할 수 있다.In some embodiments of the present invention, when the transmitting terminal does not receive an ACK packet for a predetermined time from the receiving terminal or receives a retransmission request ACK, the time and the transmitting side at which the packet is transmitted to the receiving terminal through the plurality of communication interfaces The method may further include updating at least one of the window sizes.

상술한 과제를 해결하기 위한 본 발명의 다른 면에 따른 컴퓨터 프로그램은, 하드웨어인 컴퓨터와 결합되어 상기 무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법을 실행하며, 컴퓨터 판독가능 기록매체에 저장된다.A computer program according to another aspect of the present invention for solving the above problems is combined with a computer that is hardware to execute a method for improving the performance of a multi-path transmission control protocol in the wireless communication environment, and is stored in a computer-readable recording medium do.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

상술한 본 발명에 의하면, MPTCP를 사용하는 단말에서 다중 무선 인터페이스의 상태를 학습하며 효과적으로 네트워크를 사용할 수 있다.According to the present invention described above, it is possible to effectively use the network while learning the state of multiple air interfaces in a terminal using MPTCP.

즉, 왕복 지연시간 뿐만 아니라 송수신측 윈도우 크기, 전송 패킷 양을 수집 및 학습하여, 다음 패킷을 전달할 subflow를 결정함으로써, 보다 정확하게 네트워크 상황을 판단하여 트래픽을 효율적으로 전송할 수 있다는 장점이 있다.That is, there is an advantage in that traffic can be efficiently transmitted by more accurately determining network conditions by collecting and learning the round trip delay time as well as the window size of the transmitting and receiving side, and the amount of transmission packets, and determining the subflow to deliver the next packet.

본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

도 1은 MPTCP에서의 패킷 처리 방법을 설명하기 위한 도면이다.
도 2는 패킷 재조립 과정을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 다중 경로 전송 제어 프로토콜을 위한 시스템을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 다중 전송 경로 제어 프로토콜의 성능 향상 방법의 순서도이다.
도 5는 통신 중 패킷 재전송이 발생한 경우를 설명하기 위한 도면이다.
1 is a diagram for explaining a packet processing method in MPTCP.
2 is a diagram for explaining a packet reassembly process.
3 is a diagram illustrating a system for a multi-path transmission control protocol according to an embodiment of the present invention.
4 is a flowchart of a method for improving the performance of a multi-transmission path control protocol according to an embodiment of the present invention.
5 is a diagram for explaining a case in which packet retransmission occurs during communication.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only the present embodiments allow the disclosure of the present invention to be complete, and those of ordinary skill in the art to which the present invention pertains. It is provided to fully understand the scope of the present invention to those skilled in the art, and the present invention is only defined by the scope of the claims.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of describing the embodiments and is not intended to limit the present invention. In this specification, the singular also includes the plural unless otherwise specified in the phrase. As used herein, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other components in addition to the stated components. Like reference numerals refer to like elements throughout, and "and/or" includes each and every combination of one or more of the recited elements. Although "first", "second", etc. are used to describe various elements, these elements are not limited by these terms, of course. These terms are only used to distinguish one component from another. Accordingly, it goes without saying that the first component mentioned below may be the second component within the spirit of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used herein will have the meaning commonly understood by those of ordinary skill in the art to which this invention belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless specifically defined explicitly.

본 발명은 무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법에 관한 것이다.The present invention relates to a method for improving the performance of a multi-path transmission control protocol in a wireless communication environment.

도 1은 MPTCP에서의 패킷 처리 방법을 설명하기 위한 도면이다. 도 2는 패킷 재조립 과정을 설명하기 위한 도면이다.1 is a diagram for explaining a packet processing method in MPTCP. 2 is a diagram for explaining a packet reassembly process.

일반적인 전송 제어 프로토콜(Transmission Control Protocol, TCP)은 단일 경로(Single-path)만을 활용하여 통신을 하기 때문에 스마트폰과 같이 다중 인터페이스를 보유한 통신 단말은 네트워크 자원을 효율적으로 사용하지 못한다는 한계가 있다. 따라서, 이러한 한계점을 해결하기 위해 다중 경로 전송 제어 프로토콜(Multi-path Transmission Control Protocol, MPTCP)이 개발되었다. Since a general Transmission Control Protocol (TCP) communicates using only a single-path, there is a limitation in that a communication terminal having multiple interfaces, such as a smart phone, cannot efficiently use network resources. Therefore, in order to solve this limitation, a multi-path transmission control protocol (MPTCP) has been developed.

MPTCP는 다중 통신 인터페이스를 보유한 통신 단말들이 활용할 수 있는 모든 통신 인터페이스를 동시에 활용하여 데이터를 송수신하여, 기존 TCP에 비해 향상된 전송 속도를 보이는 것이 가능하며, 다중 인터페이스를 순차적으로 사용하여 통신 인터페이스의 부하를 줄일 수 있다는 장점이 존재한다. 또한, TCP의 헤더 필드에 존재하는 TCP 옵션 필드를 사용하여 개발되었기 때문에 기존 TCP와의 하위 호환성을 지원한다는 장점이 있다.MPTCP transmits and receives data by simultaneously utilizing all communication interfaces that communication terminals with multiple communication interfaces can utilize, and it is possible to show an improved transmission speed compared to the existing TCP. There are advantages to reducing it. In addition, since it was developed using the TCP option field existing in the TCP header field, it has the advantage of supporting backward compatibility with the existing TCP.

MPTCP에서는 각각의 통신 인터페이스로 나뉘어져 전송되는 TCP 트래픽을 subflow라 부른다. 도 1과 같이 송신자가 복수의 통신 인터페이스를 통해 전송한 패킷들은 수신자의 subflow별 버퍼에서 1차 재조립 과정과 2차 재조립 과정을 거친 뒤 상위 계층으로 전달되는데, 이때 패킷의 재조립이 2번 발생하는 이유는 도 2와 같다. In MPTCP, the TCP traffic that is divided and transmitted through each communication interface is called a subflow. As shown in FIG. 1, packets transmitted by the sender through a plurality of communication interfaces are transferred to the upper layer after the first and second reassembly processes in the buffer for each subflow of the receiver. The reason for the occurrence is as shown in FIG. 2 .

먼저, 1차 재조립이 발생하는 이유는 기존 TCP에서도 발생하는 패킷 손실 때문이다. 즉, 먼저 전송한 패킷이 손실되면 손실된 패킷을 추후에 재전송하기 때문에 패킷의 순서가 뒤바뀌어 subflow 버퍼 안에서 재조립하는 작업이 필요하다. First, the reason that the primary reassembly occurs is because of packet loss that occurs in the existing TCP. That is, if the packet transmitted first is lost, the lost packet is retransmitted later, so the order of the packets is reversed and reassembly in the subflow buffer is required.

또한, 기존 TCP에는 존재하지 않는 2차 재조립이 발생하는 이유는 사용하는 통신 인터페이스의 전송 속도에 차이에서 발생하는데, 전송 속도가 느린 인터페이스를 사용하는 subflow로 패킷을 먼저 전송하더라도 나중에 보낸 전송속도가 빠른 subflow로 보낸 패킷보다 늦게 도착하는 경우가 발생하기 때문에 이를 재조립하는 과정이 필요하다. In addition, the reason for the secondary reassembly, which does not exist in the existing TCP, occurs because of the difference in the transmission speed of the communication interface used. Since the packet arrives later than the packet sent to the fast subflow, a process of reassembling it is necessary.

이러한 이유 때문에 통신 단말이 보유한 통신 인터페이스들의 특징(대역폭, 딜레이, 전송 속도 등)이 서로 상이한 경우에는 필연적으로 2차 재조립 과정이 빈번하게 일어나 MPTCP의 전체적인 성능을 저하시키는 큰 원인이 된다. 또한, 기존 TCP에 비해 안정적이고 향상된 전송 속도를 얻기 위해서는 사용하는 인터페이스들의 특징이 유사해야 한다는 특징이 있다.For this reason, when the characteristics (bandwidth, delay, transmission speed, etc.) of the communication interfaces possessed by the communication terminal are different from each other, the secondary reassembly process inevitably occurs frequently, which is a major cause of lowering the overall performance of the MPTCP. In addition, in order to obtain a stable and improved transmission speed compared to the existing TCP, the characteristics of the interfaces used should be similar.

이와 더불어, MPTCP는 스마트폰과 같은 무선 통신 단말기에서 사용되는 통신 인터페이스들인 Wi-Fi, LTE 등의 전송 속도가 유선 통신 인터페이스에 비해 느리기 때문에 발생하는 병목현상을 해결하기 위해 주로 사용하고 있다. 이러한 무선 전파는 통신하는 장소에 따라 방해물로 인한 전파의 굴절, 반사, 산란, 회절, 간섭 등이 발생하여 신호의 감쇠가 일어나 안정적인 통신 성능을 기대하기 어렵다는 문제점이 있다.In addition, MPTCP is mainly used to solve a bottleneck that occurs because the transmission speed of Wi-Fi and LTE, which are communication interfaces used in wireless communication terminals such as smartphones, is slower than that of wired communication interfaces. Such radio waves have a problem in that it is difficult to expect stable communication performance due to the occurrence of refraction, reflection, scattering, diffraction, interference, etc.

이와 같은 문제를 해소하기 위하여, 본 발명의 일 실시예는 무선 통신 인터페이스를 활용하는 다중 경로 전송 제어 프로토콜 환경에서 왕복 지연시간(Round-Trip Time, RTT)과 송수신측 윈도우 크기, 그리고 실제 전송된 패킷의 양을 통해 해당 네트워크의 상태를 학습 및 예측하고, 다중 경로를 통해 전송할 패킷을 스케줄링함으로써 다중 경로 전송 제어 프로토콜의 성능을 향상시킬 수 있다.In order to solve such a problem, an embodiment of the present invention provides a round-trip delay time (RTT), a window size on the transmission/reception side, and an actual transmitted packet in a multi-path transmission control protocol environment using a wireless communication interface. The performance of the multi-path transmission control protocol can be improved by learning and predicting the state of the network through the amount of , and scheduling packets to be transmitted through the multi-path.

도 3은 본 발명의 일 실시예에 따른 다중 경로 전송 제어 프로토콜을 위한 시스템을 도시한 도면이다.3 is a diagram illustrating a system for a multi-path transmission control protocol according to an embodiment of the present invention.

본 발명의 일 실시예에서의 시스템은 도 3에 도시된 바와 같이, 송신 단말과 수신 단말이 복수의 통신 인터페이스를 통해 다중 경로 전송 제어 프로토콜을 이용하여 통신한다. 이때, 도 3에서는 복수의 통신 인터페이스로 Wi-Fi와 LTE 통신 인터페이스를 예로 들고 있으나 반드시 이에 한정되는 것은 아니다. 또한, 도 3에서는 두 개의 통신 인터페이스만을 도시하고 있으나, 더 많은 통신 인터페이스를 구비하는 상황도 적용 가능함은 물론이다.In the system according to an embodiment of the present invention, as shown in FIG. 3 , a transmitting terminal and a receiving terminal communicate using a multi-path transmission control protocol through a plurality of communication interfaces. At this time, although Wi-Fi and LTE communication interfaces are exemplified in FIG. 3 as a plurality of communication interfaces, the present invention is not limited thereto. In addition, although only two communication interfaces are illustrated in FIG. 3 , a situation in which more communication interfaces are provided is also applicable.

도 3은 Wi-Fi와 LTE 통신 인터페이스를 가진 송신 단말(스마트폰)이 다중 경로 전송 제어 프로토콜을 이용하여 수신 단말(서버)와 통신을 하는 상황이다. 이때, 스마트폰과 서버는 MPTCP를 사용할 수 있도록 커널 패치가 적용되어 있다. 무선 인터페이스를 활용하는 통신 구간은 스마트폰에서 Wi-Fi Access Point까지와, 스마트폰에서 LTE 기지국까지이고, 그 이후부터는 유선 인터페이스를 사용한다.3 is a situation in which a transmitting terminal (smartphone) having a Wi-Fi and LTE communication interface communicates with a receiving terminal (server) using a multi-path transmission control protocol. At this time, a kernel patch is applied so that the smartphone and the server can use MPTCP. The communication section using the wireless interface is from the smartphone to the Wi-Fi Access Point and from the smartphone to the LTE base station, and from then on, the wired interface is used.

또한, 네트워크와 서버 사이에 Wi-Fi subflow와 LTE subflow 두 개만이 표현되어 있지만, 두 개의 subflow가 의미하는 것은 MPTCP에서 사용하는 논리적인 경로가 두 가지인 것으로, 실제 물리적인 인터페이스가 두 개 또는 두 가지라는 의미는 아니다.In addition, only two Wi-Fi subflows and two LTE subflows are expressed between the network and the server, but what the two subflows mean is that there are two logical paths used in MPTCP, and there are actually two or two physical interfaces. It doesn't mean to go.

MPTCP는 어떤 통신 인터페이스(subflow)로 패킷을 전송할지를 선택하는 스케줄링 알고리즘이 동작하여 패킷을 송신한다. 본 발명의 일 실시예에서는 왕복 지연시간과 송수신측 윈도우 크기, 그리고 전송하는 패킷의 양을 활용하여 MPTCP에서의 무선 네트워크 상태를 보다 정확하게 학습 및 예측하여 그 성능을 향상시킬 수 있다.In MPTCP, a scheduling algorithm that selects which communication interface (subflow) to transmit the packet to operates to transmit the packet. In an embodiment of the present invention, the performance can be improved by more accurately learning and predicting the wireless network state in MPTCP by utilizing the round-trip delay time, the size of the window on the transceiver side, and the amount of packets to be transmitted.

도 4는 본 발명의 일 실시예에 따른 다중 전송 경로 제어 프로토콜의 성능 향상 방법의 순서도이다. 도 5는 통신 중 패킷 재전송이 발생한 경우를 설명하기 위한 도면이다.4 is a flowchart of a method for improving the performance of a multi-transmission path control protocol according to an embodiment of the present invention. 5 is a diagram for explaining a case in which packet retransmission occurs during communication.

한편, 도 4에 도시된 각 단계는 송신 단말에서 수행되는 것으로 이해될 수 있으나, 반드시 이에 한정되는 것은 아니다.Meanwhile, each step shown in FIG. 4 may be understood to be performed by the transmitting terminal, but is not necessarily limited thereto.

본 발명의 일 실시예에 따른 다중 전송 경로 제어 프로토콜의 성능 향상 방법은 복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계와, 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 송신 단말에서 상기 복수의 통신 인터페이스 중 어느 하나를 선택하는 단계와, 상기 선택된 통신 인터페이스에 기초하여 수신 단말로 패킷을 전송하는 단계를 포함하여 수행된다.A method for improving the performance of a multi-transmission path control protocol according to an embodiment of the present invention comprises the steps of: measuring a round-trip delay time of each of a plurality of communication interfaces, a window size of a transmission/reception side, and a transmission packet amount; It is performed including the step of selecting one of the plurality of communication interfaces in the transmitting terminal by learning the size and the amount of transmission packets, and transmitting the packet to the receiving terminal based on the selected communication interface.

먼저, 송신 단말과 수신 단말이 최초로 통신하는지 여부를 확인하고(S105), 최초로 통신하는 경우에는(S105-Y) TCP와 MPTCP에서 서로 간의 세션을 맺기 위한 핸드쉐이크(handshake) 과정에서 발생하는 송신 단말과 수신 단말 간의 SYN 패킷 및 ACK 패킷에 기초하여 상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정한다(S110). First, it is checked whether the transmitting terminal and the receiving terminal communicate for the first time (S105), and when the first communication is performed (S105-Y), the transmitting terminal that occurs in the handshake process for establishing a session between TCP and MPTCP Based on the SYN packet and the ACK packet between the terminal and the receiving terminal, the round-trip delay time, the window size of the transmitting/receiving side, and the amount of transmission packets are measured (S110).

하지만, 핸드쉐이크 과정에서 발생하는 패킷의 양은 굉장히 작아서 학습을 통한 의미있는 결과를 도출하기 어렵다. 따라서, 본 발명의 일 실시예는 최초 통신 과정에서는 송신측 단말이 보유한 통신 인터페이스들의 왕복 지연시간을 비교하고, 비교 결과 가장 작은 왕복 지연시간을 갖는 통신 인터페이스를 선택하여 수신 단말로 패킷을 전송하게 된다(S115, S120).However, since the amount of packets generated during the handshake process is very small, it is difficult to derive meaningful results through learning. Accordingly, an embodiment of the present invention compares round-trip delay times of communication interfaces possessed by the transmitting terminal in the initial communication process, selects a communication interface having the smallest round-trip delay time as a result of the comparison, and transmits the packet to the receiving terminal. (S115, S120).

이와 달리, 최초 통신이 아닌 경우에는(S105-N), MPTCP에서 사용하는 각 통신 인터페이스들의 왕복 지연시간, 송수신측 윈도우 크기, 그리고 전송하는 패킷 양을 측정하는 과정이 필요하다(S125).Conversely, in the case of non-first communication (S105-N), it is necessary to measure the round trip delay time of each communication interface used in MPTCP, the window size of the transmission/reception side, and the amount of packets to be transmitted (S125).

일 실시예로, 왕복 지연시간은 송신 단말에서 복수의 통신 인터페이스를 통해 수신 단말로 패킷을 전송한 시각 및 이에 대응하여 수신 단말이 전송한 ACK 패킷을 수신한 시각에 기초하여 측정할 수 있다.In one embodiment, the round trip delay time may be measured based on a time when a packet is transmitted from a transmitting terminal to a receiving terminal through a plurality of communication interfaces and a time at which an ACK packet transmitted by the receiving terminal is received in response thereto.

이때, ACK 패킷이란 수신 단말이 송신 단말로부터 패킷을 전달받았을 때 이를 잘 수신하였다는 의미로 다시 송신 단말에게 전송하는 패킷을 의미한다.In this case, the ACK packet means a packet that the receiving terminal transmits back to the transmitting terminal in the sense that it has successfully received the packet when it is received from the transmitting terminal.

이와 같이 측정되는 왕복 지연시간이 높으면 일반적으로는 해당 네트워크로 전송되는 패킷의 수가 많다는 것을 의미하지만, 무선 네트워크 환경에서는 순간적인 무선 신호의 굴절, 반사, 산란, 회절, 간섭 또는 LoS(Line of Sight) 미확보 등의 이유일 가능성도 존재한다.A high round-trip delay time measured in this way generally means that the number of packets transmitted to the network is large, but in a wireless network environment, instantaneous refraction, reflection, scattering, diffraction, interference, or Line of Sight (LoS) There is also the possibility that the reason is not secured.

일 실시예로, 송수신측 윈도우 크기는 송신 단말과 수신 단말이 다중 경로 전송 프로토콜에 기반한 통신 중 서로 주고받는 TCP 패킷의 헤더에 저장된 윈도우 크기 값 및 윈도우 크기 스케일링 값에 기초하여 측정될 수 있다.In an embodiment, the window size on the transmission/reception side may be measured based on a window size value and a window size scaling value stored in a header of a TCP packet exchanged between a transmitting terminal and a receiving terminal during communication based on a multi-path transmission protocol.

송수신측 윈도우 크기는 송신 단말과 수신 단말이 한번에 보대고 받아서 처리할 수 있는 최대 데이터의 크기를 의미한다. 이러한 송수신측 윈도우 크기는 송신 단말과 수신 단말이 MPTCP 통신 중 서로 주고받는 TCP 패킷의 헤더에 저장된 윈도우 크기 값과 윈도우 크기 스케일링 값을 활용하여 계산 및 저장할 수 있다.The transmit/receive side window size refers to the maximum data size that the transmitting terminal and the receiving terminal can see, receive, and process at once. The transmit/receive-side window size may be calculated and stored by using a window size value and a window size scaling value stored in a header of a TCP packet exchanged between a transmitting terminal and a receiving terminal during MPTCP communication.

마지막으로, 전송 패킷 양은 송신 단말과 수신 단말이 다중 경로 전송 제어 프로토콜에 기반한 통신 중 서로 주고받는 TCP 패킷의 헤더에 저장된 시퀀스 번호에 기초하여 측정할 수 있다.Finally, the amount of transport packets can be measured based on the sequence number stored in the header of the TCP packet that the sending terminal and the receiving terminal exchange with each other during communication based on the multi-path transmission control protocol.

또한, 본 발명의 일 실시예는 송신 단말이 수신 단말과의 통신 중 발생하는 패킷의 손실 또는 네트워크 혼잡으로 수신 단말로부터 일정 시간동안 ACK 패킷을 받지 못하였거나 재전송을 요청하는 ACK를 받게 되면, 해당 패킷을 재전송하여 왕복 지연시간 계산을 위해 저장하고 있던 패킷을 전송한 시간을 업데이트할 수 있다.In addition, according to an embodiment of the present invention, when the transmitting terminal does not receive an ACK packet for a certain period of time from the receiving terminal due to packet loss or network congestion occurring during communication with the receiving terminal or receives an ACK requesting retransmission, the corresponding packet can be retransmitted to update the packet transmission time, which has been stored for calculation of round-trip delay time.

다음으로, 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 복수의 통신 인터페이스 중 어느 하나의 통신 인터페이스를 선택한다.Next, one communication interface is selected from among the plurality of communication interfaces by learning the round-trip delay time, the window size of the transmission/reception side, and the amount of transport packets.

본 단계에서는 이전 수집된 네트워크 환경 정보들을 바탕으로 Q-Learning 강화학습 알고리즘을 적용하여 네트워크 상태를 학습하는 단계이다.In this step, the network state is learned by applying the Q-Learning reinforcement learning algorithm based on previously collected network environment information.

Q-Learning 강화학습 알고리즘은 어떤 주어진 환경(state)에서 어떤 행동(action)을 취하고, 취한 행동에 따른 보상(reward)을 획득하며 이를 Q-table에 저장한다. 즉, Q-Learning 강화학습 알고리즘은 앞서 서술한 일련의 동작들을 반복 수행하며 Q-table에 저장하는 보상 값을 업데이트하며 주어진 환경에서 가장 높은 보상 값을 얻을 수 있는 행동을 수행하는 방법이다.The Q-Learning reinforcement learning algorithm takes an action in a given state, obtains a reward according to the action taken, and stores it in the Q-table. That is, the Q-Learning reinforcement learning algorithm repeats the above-described series of actions, updates the reward value stored in the Q-table, and performs an action that can obtain the highest reward value in a given environment.

본 발명의 일 실시예에서의 행동(action)은 송신 단말이 보유한 다양한 통신 인터페이스(subflow)들 중 패킷을 전송할 하나의 통신 인터페이스를 선택하는 것을 의미하며, 이전 단계에서 수집된 각 통신 인터페이스에서의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양은 현재의 상태를 의미할 뿐만 아니라, 바로 이전 상타에서의 선택한 행동으로 인한 보상 값이기도 하다. An action in an embodiment of the present invention means selecting one communication interface through which a packet is to be transmitted among various communication interfaces (subflows) possessed by the transmitting terminal, and a round trip in each communication interface collected in the previous step The delay time, the window size of the transmitting/receiving side, and the amount of packets to be transmitted not only mean the current state, but are also compensation values due to the selected action in the previous state.

일반적인 경우에서는 Q-Learning 알고리즘에 의해 Q-table에 저장된 보상 값이 가장 큰 통신 인터페이스를 선택한다(S130).In a general case, the communication interface having the largest compensation value stored in the Q-table is selected by the Q-Learning algorithm (S130).

하지만, 선택된 통신 인터페이스에 상응하는 수신측 윈도우 크기와 선택된 통신 인터페이스를 통해 전송한 패킷들의 크기를 비교한 결과(S135), 수신측 윈도우 크기가 더 작은 경우에는(S135-Y) 복수의 통신 인터페이스 중 차순으로 큰 보상 값을 갖는 통신 인터페이스를 추가적으로 선택할 수 있다(S140).However, as a result of comparing the size of the receiving window corresponding to the selected communication interface with the size of packets transmitted through the selected communication interface (S135), when the receiving window size is smaller (S135-Y), among the plurality of communication interfaces A communication interface having a larger compensation value may be additionally selected in the next order ( S140 ).

즉, 송신 단말이 수신 단말에게 보내야 하는 데이터가 많은 경우에는 보상 값이 가장 높은 통신 인터페이스만 선택하여 사용할 수 없다. 그리고 송신 단말은 보상 값이 가장 높은 통신 인터페이스를 선택하여 패킷을 전송해도, 해당 패킷을 수신 단말로부터 잘 받았다는 ACK 패킷을 수신하기 전까지는 수신측 윈도우 크기보다 더 큰 패킷을 전달할 수 없다.That is, when the transmitting terminal has a lot of data to be transmitted to the receiving terminal, only the communication interface having the highest compensation value cannot be selected and used. And even if the transmitting terminal selects the communication interface with the highest compensation value and transmits a packet, it cannot transmit a packet larger than the receiving window size until it receives an ACK packet indicating that the corresponding packet has been successfully received from the receiving terminal.

따라서, 본 발명의 일 실시예는 보상 값이 높아서 선택한 통신 인터페이스의 수신측 윈도우 크기와 해당 통신 인터페이스로 전송한 패킷들의 크기를 비교하여 더 이상 해당 통신 인터페이스를 이용할 수 없다고 판단하면, 다음 보상 값이 높은 통신 인터페이스를 선택한다.Therefore, according to an embodiment of the present invention, when it is determined that the corresponding communication interface can no longer be used by comparing the size of the receiving-side window of the selected communication interface with the size of the packets transmitted to the communication interface because the compensation value is high, the next compensation value is Choose a higher communication interface.

한편, 본 발명의 일 실시예는 도 5와 같이 송신 단말이 수신 단말로부터 소정의 시간 동안 ACK 패킷을 수신하지 못하거나 수신 단말로부터 재전송을 요청하는 ACK 패킷을 수신한 경우에는, 복수의 통신 인터페이스를 통해 수신 단말로 패킷을 전송한 시각 및 송신측 윈도우 크기를 업데이트할 수 있다.Meanwhile, according to an embodiment of the present invention, as shown in FIG. 5 , when the transmitting terminal fails to receive an ACK packet from the receiving terminal for a predetermined time or receives an ACK packet requesting retransmission from the receiving terminal, a plurality of communication interfaces are configured. It is possible to update the time at which the packet is transmitted to the receiving terminal and the window size of the sender.

이와 같은 본 발명의 일 실시예에 따르면, 스마트폰과 같은 다중 무선 인터페이스를 보유한 단말에서 다중 경로 전송 제어 프로토콜(MPTCP)을 사용하는 경우, 다중 무선 인터페이스의 상태를 학습하며 효과적으로 네트워크를 사용할 수 있다. According to this embodiment of the present invention, when a terminal having multiple air interfaces, such as a smart phone, uses the multi-path transmission control protocol (MPTCP), it is possible to effectively use the network while learning the state of the multi-air interface.

기존 MPTCP에서 사용하는 스케줄링 방식은 크게 3가지로 1) 왕복 지연시간이 가장 낮은 subflow를 선택하는 방법, 2) 모든 subflow를 공평하게 한번씩 사용하는 방법, 3) 모든 subflow로 동일한 패킷을 복사하여 보내는 방법이 있고 대부분의 경우 첫 번째 방법인 왕복 지연시간이 가장 낮은 subflow를 선택하는 방법을 사용한다. There are three major scheduling methods used in the existing MPTCP: 1) selecting a subflow with the lowest round-trip latency, 2) using all subflows equally once, 3) copying and sending the same packet to all subflows In most cases, the first method, the method of selecting the subflow with the lowest round-trip latency, is used.

하지만 무선 인터페이스를 활용하는 무선 단말은 고정된 장소에서 사용하는 것이 아니라 이동하며 사용하기 때문에, 매 순간 변화하는 통신 장소에 따라 신호의 세기 변화가 발생하고, 이에 따라 왕복 지연시간도 변화하기 때문에 무선 환경에는 적합하지 않다. 이는 다음 패킷을 전송할 subflow를 결정하는데 가장 중요한 왕복 지연시간이 증가하고 감소하는 이유가, 네트워크가 혼잡해서인지 아니면 통신을 하는 장소가 변화하여 신호의 세기가 변화하였는지 여부를 파악하기 어렵기 때문이다.However, since a wireless terminal using a wireless interface is used while moving rather than being used in a fixed place, the signal strength changes depending on the communication location that changes every moment, and the round-trip delay time also changes accordingly. is not suitable for This is because it is difficult to determine whether the signal strength is changed because the network is congested or the communication location is changed because the reason that the round trip delay time increases and decreases, which is the most important factor in determining the subflow to transmit the next packet, is changed.

반면에, 본 발명의 일 실시예에 따르면, 왕복 지연시간 뿐만 아니라 송신측 윈도우 크기, 수신측 윈도우 크기, 전송한 패킷의 양을 수집하고 학습하여 다음 패킷을 전달할 subflow를 결정하게 되면 종래의 방법에 비해 보다 더 정확하게 네트워크의 상황을 판단하여 트래픽을 효율적으로 전송할 수 있다.On the other hand, according to an embodiment of the present invention, when determining a subflow to deliver the next packet by collecting and learning not only the round trip delay time, but also the sending-side window size, the receiving-side window size, and the amount of transmitted packets, the conventional method It is possible to efficiently transmit traffic by judging the network condition more accurately than compared to the previous model.

이상에서 전술한 본 발명의 일 실시예에 따른 무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The method for improving the performance of a multi-path transmission control protocol in a wireless communication environment according to an embodiment of the present invention described above may be implemented as a program (or application) and stored in a medium to be executed in combination with a computer, which is hardware. have.

상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, Ruby, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.The above-mentioned program, in order for the computer to read the program and execute the methods implemented as a program, C, C++, JAVA, Ruby, which the processor (CPU) of the computer can read through the device interface of the computer; It may include code coded in a computer language such as machine language. Such code may include functional code related to a function defining functions necessary for executing the methods, etc., and includes an execution procedure related control code necessary for the processor of the computer to execute the functions according to a predetermined procedure. can do. In addition, the code may further include additional information necessary for the processor of the computer to execute the functions or code related to memory reference for which location (address address) in the internal or external memory of the computer to be referenced. have. In addition, when the processor of the computer needs to communicate with any other computer or server located remotely in order to execute the above functions, the code uses the communication module of the computer to determine how to communicate with any other computer or server remotely. It may further include a communication-related code for whether to communicate and what information or media to transmit and receive during communication.

상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.The storage medium is not a medium that stores data for a short moment, such as a register, a cache, a memory, etc., but a medium that stores data semi-permanently and can be read by a device. Specifically, examples of the storage medium include, but are not limited to, ROM, RAM, CD-ROM, magnetic tape, floppy disk, and an optical data storage device. That is, the program may be stored in various recording media on various servers accessible by the computer or in various recording media on the computer of the user. In addition, the medium may be distributed in a computer system connected to a network, and a computer-readable code may be stored in a distributed manner.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

Claims (1)

무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법에 있어서,
복수의 통신 인터페이스 각각의 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 측정하는 단계;
상기 왕복 지연시간, 송수신측 윈도우 크기 및 전송 패킷 양을 학습하여 송신 단말에서 상기 복수의 통신 인터페이스 중 어느 하나를 선택하는 단계; 및
상기 선택된 통신 인터페이스에 기초하여 수신 단말로 패킷을 전송하는 단계를 포함하는,
무선 통신 환경에서의 다중 경로 전송 제어 프로토콜의 성능 향상 방법.
A method for improving the performance of a multi-path transmission control protocol in a wireless communication environment, the method comprising:
measuring a round trip delay time of each of a plurality of communication interfaces, a window size of a transmission/reception side, and an amount of transmission packets;
selecting any one of the plurality of communication interfaces in the transmitting terminal by learning the round trip delay time, the window size of the transmitting/receiving side, and the amount of transport packets; and
transmitting a packet to a receiving terminal based on the selected communication interface;
A method for improving the performance of a multi-path transmission control protocol in a wireless communication environment.
KR1020200159927A 2020-11-25 2020-11-25 Method for improving performance of multi-path transmission control protocol in wireless communication environment KR20220072386A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200159927A KR20220072386A (en) 2020-11-25 2020-11-25 Method for improving performance of multi-path transmission control protocol in wireless communication environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200159927A KR20220072386A (en) 2020-11-25 2020-11-25 Method for improving performance of multi-path transmission control protocol in wireless communication environment

Publications (1)

Publication Number Publication Date
KR20220072386A true KR20220072386A (en) 2022-06-02

Family

ID=81985179

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200159927A KR20220072386A (en) 2020-11-25 2020-11-25 Method for improving performance of multi-path transmission control protocol in wireless communication environment

Country Status (1)

Country Link
KR (1) KR20220072386A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150123185A (en) 2014-04-24 2015-11-03 삼성전자주식회사 Apparatus and method for transferring data using multipath transmission control protocol

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150123185A (en) 2014-04-24 2015-11-03 삼성전자주식회사 Apparatus and method for transferring data using multipath transmission control protocol

Similar Documents

Publication Publication Date Title
US8149704B2 (en) Communication apparatus and data communication method
EP2302827B1 (en) A method and device for transmitting data
US8787378B2 (en) Systems and methods to improve performance of TCP over large bandwidth-delay-product networks
US11558302B2 (en) Data transmission method and apparatus
CN107682886A (en) A kind of data transmission method of multipath
CN108696449B (en) Data scheduling method and device
JP5867160B2 (en) COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM
KR20040074625A (en) Wireless communication system which improves reliability and throughput of communication, and retransmission timeout determining method used for the same
EP2938032B1 (en) Data transmission device, data transmission method, and program therefor
CN105141542A (en) TCP communication protocol-based congestion window control algorithm and system
CN104320809A (en) Wireless multi-hop network congestion control method and system based on RTT
CN107800638B (en) Congestion control method and device
CN113014505B (en) Transmission control method for time delay differentiation in high dynamic topology satellite network
KR20200092250A (en) System for multipath packet scheduling method therefor
CN110072254B (en) Data transmission method and related equipment thereof
US11303552B2 (en) Receiver, communication system, available bandwidth estimation method, and storage medium in which program is stored
KR20220072386A (en) Method for improving performance of multi-path transmission control protocol in wireless communication environment
JP7036019B2 (en) Communication equipment, communication methods, wireless communication systems and programs
CN113542215B (en) Method and related device for improving streaming media transmission performance
Lee et al. A cross-layer approach for TCP optimization over wireless and mobile networks
CN108777607B (en) Method for intercepting acknowledgement packet and access network equipment
CN107959947A (en) A kind of data transmission method, device and base station
Kumar et al. Device‐centric data reordering and buffer management for mobile Internet using Multipath Transmission Control Protocol
WO2019146563A1 (en) Communication device, communication system, communication method, and program
JP2009044695A (en) Communication control method, transmitter, and computer program