KR100913897B1 - Transmission Control Protocol Congestion Control Method to Reduce the Number of Retransmission Timeouts - Google Patents
Transmission Control Protocol Congestion Control Method to Reduce the Number of Retransmission Timeouts Download PDFInfo
- Publication number
- KR100913897B1 KR100913897B1 KR1020030052333A KR20030052333A KR100913897B1 KR 100913897 B1 KR100913897 B1 KR 100913897B1 KR 1020030052333 A KR1020030052333 A KR 1020030052333A KR 20030052333 A KR20030052333 A KR 20030052333A KR 100913897 B1 KR100913897 B1 KR 100913897B1
- Authority
- KR
- South Korea
- Prior art keywords
- data segment
- received
- segment
- lost
- retransmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/188—Time-out mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
-
- 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/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은, 전송제어 프로토콜을 사용하는 통신 시스템을 위한 혼잡제어 방법에 있어서, 수신자로부터 수신된 데이터 세그먼트 응답(ACK)이 빠른 복구 상태인지를 판단하는 과정과, 상기 수신된 데이터 세그먼트 응답이 빠른 복구 상태가 아니고 미리 설정된 중복 응답 개수만큼 중복되어 수신된 경우 해당 데이터 세그먼트를 재전송하고, 상기 재전송 후 전송할 다음 데이터 세그먼트의 시퀀스 번호를 스코어 보드에 저장하는 과정과, 상기 수신된 데이터 세그먼트 응답이 빠른 복구 상태이고, 재전송 데이터 세그먼트에 대한 중복 응답을 수신한 경우 상기 중복 응답을 통해 수신된 수신자의 버퍼 상태 정보를 이용하여 상기 재전송 데이터 세그먼트의 손실 여부를 확인하는 과정과, 상기 재전송 데이터 세그먼트가 손실된 경우 상기 재전송 데이터 세그먼트를 다시 재전송하는 과정을 포함하는 것을 특징으로 한다.
TCP SACK, TCP SACKPlus, 재전송 데이터 세그먼트, 스코어 보드, nxt_snd.
The present invention provides a congestion control method for a communication system using a transmission control protocol, the method comprising: determining whether a data segment response (ACK) received from a receiver is in a fast recovery state; Retransmitting the corresponding data segment if the received data is duplicated by a preset number of duplicate responses, and storing the sequence number of the next data segment to be transmitted after the retransmission in a score board; When receiving a duplicate response for the retransmitted data segment, determining whether the retransmitted data segment is lost by using buffer status information of the receiver received through the duplicate response, and if the retransmitted data segment is lost, Resend Data Seg It characterized in that it comprises the step of retransmitting the tree again.
TCP SACK, TCP SACKPlus, Retransmission Data Segment, Scoreboard, nxt_snd.
Description
도 1은 본 발명이 적용될 수 있는 패킷 데이터 전송 시스템의 구성을 도시한 블록도, 1 is a block diagram showing the configuration of a packet data transmission system to which the present invention can be applied;
도 2는 상기 도 1에 나타낸 통신 단말기의 구성을 도시한 블록도,2 is a block diagram showing the configuration of the communication terminal shown in FIG. 1;
도 3은 전송제어 프로토콜의 혼잡제어를 위한 동작을 나타낸 상태도,3 is a state diagram showing an operation for congestion control of a transmission control protocol;
도 4는 일반적인 전송 제어 프로토콜 선택 응답의 혼잡제어 동작을 나타낸 흐름도,4 is a flowchart illustrating a congestion control operation of a general transmission control protocol selection response;
도 5는 본 발명의 실시예에 따른 전송제어 프로토콜 선택 응답의 혼잡제어 동작을 나타낸 흐름도.
5 is a flowchart illustrating a congestion control operation of a transmission control protocol selection response according to an embodiment of the present invention.
본 발명은 전송제어 프로토콜을 사용하는 통신 시스템에 것으로서, 특히 전 송제어 프로토콜의 혼잡제어시 재전송 타임아웃에 따른 성능 저하를 방지하기 위한 방법에 관한 것이다.The present invention relates to a communication system using a transmission control protocol, and more particularly, to a method for preventing performance degradation due to retransmission timeout during congestion control of a transmission control protocol.
인터넷을 통해 데이터를 전송하기 위한 프로토콜로서, 인터넷 표준화 단체인 IETF(Internet Engineering Task Force)에 의해 발행된 RFC(Request For Comments) 793은 전송제어 프로토콜(Transmission Control Protocol: 이하 TCP라 칭한다.)을 규정하고 있다. 전송제어 프로토콜은 인터넷을 통해 노드들간에 데이터를 패킷의 형태로 전송하기 위해 사용된다. 이러한 전송제어 프로토콜은, 네트워크 계층의 인터넷 프로토콜(Internet Protocol: 이하 IP라 칭한다.)에 대한 상위에서 트랜스포트 계층(Transport Layer)의 프로토콜로서 동작하기 때문에, 통상의 경우 TCP/IP라 표기한다.As a protocol for transmitting data over the Internet, Request For Comments (RFC) 793 issued by the Internet Engineering Task Force (IETF), an Internet standardization organization, defines the Transmission Control Protocol (hereinafter referred to as TCP). Doing. Transmission control protocols are used to transfer data in the form of packets between nodes over the Internet. Such a transmission control protocol is usually referred to as TCP / IP because it operates as a transport layer protocol above the Internet protocol of the network layer (hereinafter referred to as IP).
전송제어 프로토콜(TCP)은 사용자 데이터그램 프로토콜(User Datagram Protocol: 이하 UDP라 칭한다)과 같이 인터넷 프로토콜(IP)을 네트워크 계층으로 이용하지만 UDP와는 기본적으로 다른 연결 지향형 서비스와 신뢰성 있는 바이트 스트림 서비스를 제공한다. TCP는 네트워크의 상태를 고려하여 전송률을 조절하는 프로토콜로서, 향후 유무선 통합 망에서도 트랜스포트 계층으로서의 사용이 고려되고 있다.Transmission Control Protocol (TCP) uses the Internet Protocol (IP) as a network layer like the User Datagram Protocol (UDP), but provides connection-oriented services and reliable byte stream services that are basically different from UDP. do. TCP is a protocol that adjusts the transmission rate in consideration of network conditions, and is being considered as a transport layer in wired / wireless converged networks in the future.
TCP는 Tahoe, Reno, Newreno 등의 버전이 사용되고 있으며, TCP 통신에서 수신자는 송신자로부터 데이터 세그먼트(Data Segment)를 수신하면 상기 데이터 세그먼트와 동일한 시퀀스 번호를 가지는 애크(Acknowledge: ACK)를 전송한다. 송신자는 수신자로부터의 ACK 없이도 미리 정해지는 개수, 즉 혼잡 윈도우(Congestion Window: 이하 CWND라 칭한다.)만큼의 데이터 세그먼트들을 동시에 전송하고, 동일한 시퀀스 번호를 가지는 ACK들, 즉 중복(Duplicate) ACK들을 받으면 상기 시퀀스 번호를 가지는 데이터 세그먼트를 즉시 재전송한다. 그렇지 않은 경우 데이터 세그먼트를 전송한 이후 일정한 타임아웃 시간 동안 ACK를 받지 못하면 그 데이터 세그먼트를 재전송한다. Versions of TCP, such as Tahoe, Reno, Newreno, are used, and in TCP communication, when a receiver receives a data segment from a sender, the receiver transmits an acknowledgment (ACK) having the same sequence number as the data segment. The sender simultaneously transmits a predetermined number of data segments simultaneously without an ACK from the receiver, that is, a congestion window (hereinafter referred to as CWND), and receives ACKs having the same sequence number, that is, duplicate ACKs. Immediately resend the data segment with the sequence number. Otherwise, if no ACK is received for a certain timeout after transmitting the data segment, the data segment is retransmitted.
종래 기술에 따른 TCP Newreno의 손실 복구에서는 재전송된 데이터 세그먼트가 다시 손실되는 경우에 송신자는 재전송한 세그먼트를 성공적으로 수신하였다는 ACK가 아니라, 재전송 중 손실된 세그먼트에 대한 중복(Duplicate) ACK만을 계속 수신하게 되므로, 불가피하게 재전송 타임아웃이 발생하게 된다. 세그먼트 손실 확률이 높을수록 하나의 윈도우 내에서 손실되는 세그먼트들의 개수가 증가하고 손실된 세그먼트들을 재전송하는 과정에서 손실 확률이 다시 증가하기 때문에, 종래 기술에 따른 TCP Newreno의 손실 복구는 손실율이 높은 환경에서 전송 성능을 상당히 저하시킬 수 있다.In TCP Newreno's loss recovery according to the prior art, when a retransmitted data segment is lost again, the sender continues to receive only duplicate ACKs for the segment lost during retransmission, not an ACK indicating that the retransmitted segment was successfully received. Inevitably, a retransmission timeout occurs. As the probability of segment loss increases, the number of segments lost in one window increases and the probability of loss increases in the process of retransmitting the lost segments. Thus, the loss recovery of TCP Newreno according to the prior art is performed in a high loss rate environment. It can significantly reduce transmission performance.
또한 TCP Newreno는 중복 ACK들에 의해 해당 세그먼트를 재전송한 이후 매 중복 ACK 수신시마다 새로운 세그먼트들을 전송하는데, 이렇게 새로 전송한 세그먼트가 손실되었을 때에는 타임아웃 또는 새로 전송한 세그먼트에 대한 중복 ACK들의 수신에 의해 상기 새로 전송한 세그먼트를 재전송한다. 그러나 이러한 경우 이전 세그먼트를 재전송함에 의해 혼잡 윈도우의 크기가 반으로 감소하기 때문에 새로 손실된 세그먼트를 재전송하기에 충분한 중복 ACK들을 수신하지 못하게 될 수 있으며, 이에 따라 타임아웃이 발생하였다. In addition, TCP Newreno retransmits the segment by duplicate ACKs, and then transmits new segments after every duplicate ACK is received.When a new segment is lost, it is timed out or by receiving duplicate ACKs for the newly transmitted segment. The newly transmitted segment is retransmitted. However, in this case, the size of the congestion window is reduced by half by retransmitting the previous segment, so that it may not receive enough duplicate ACKs to retransmit the newly lost segment, resulting in a timeout.
재전송 타임아웃은 예를 들어 500ms의 비교적 긴 단위의 해상도를 갖는 타이머를 이용하기 때문에 데이터 세그먼트를 전송하고 ACK를 기다리는 시간이 타이머의 시간 단위로 이루어지게 된다. 이러한 타이머의 동작은 손실된 세그먼트에 대해 긴 시간 동안 아무런 동작도 취할 수 없게 되고 결국 전송 대역폭을 낭비하는 결과를 초래한다. 따라서 전송제어 프로토콜에서 재전송 타임아웃 확률을 감소시키기 위한 방법을 필요로 하게 되었다.
Since the retransmission timeout uses a timer having a relatively long unit resolution of, for example, 500 ms, the time for transmitting the data segment and waiting for the ACK is made in the time unit of the timer. The operation of such a timer can take no action for a long time on a lost segment, resulting in wasting transmission bandwidth. Therefore, there is a need for a method for reducing the retransmission timeout probability in the transmission control protocol.
따라서, 본 발명의 목적은 재전송된 세그먼트가 손실되었을 때 재전송 타임 아웃 없이 손실된 세그먼트를 제전송하는 전송 제어 프로토콜의 혼잡제어 방법을 제공함에 있다. Accordingly, an object of the present invention is to provide a congestion control method of a transmission control protocol for retransmitting a lost segment without retransmission timeout when the retransmitted segment is lost.
본 발명의 다른 목적은 재전송된 세그먼트가 손실되었을 때 수신자가 ACK를 통해 보내오는 버퍼 상태 정보(SACK 블록 정보)를 활용하여 재전송된 세그먼트의 손실 여부를 확인하고, 다시 한번 재전송하여 재전송 타임 아웃 발생 확률을 낮추기 위한 전송 제어 프로토콜의 혼잡제어 방법을 제공함에 있다. Another object of the present invention is to determine whether the retransmitted segment is lost by using the buffer status information (SACK block information) sent by the receiver through the ACK when the retransmitted segment is lost, and retransmits it again so that a retransmission timeout occurs A congestion control method of a transmission control protocol for lowering
상기 이러한 본 발명의 목적들을 달성하기 위한 방법은, 전송제어 프로토콜을 사용하는 통신 시스템을 위한 혼잡제어 방법에 있어서, 수신자로부터 수신된 데이터 세그먼트 응답(ACK)이 빠른 복구 상태인지를 판단하는 과정과, 상기 수신된 데이터 세그먼트 응답이 빠른 복구 상태가 아니고 미리 설정된 중복 응답 개수만큼 중복되어 수신된 경우 해당 데이터 세그먼트를 재전송하고, 상기 재전송 후 전송할 다음 데이터 세그먼트의 시퀀스 번호를 스코어 보드에 저장하는 과정과, 상기 수신된 데이터 세그먼트 응답이 빠른 복구 상태이고, 재전송 데이터 세그먼트에 대한 중복 응답을 수신한 경우 상기 중복 응답을 통해 수신된 수신자의 버퍼 상태 정보를 이용하여 상기 재전송 데이터 세그먼트의 손실 여부를 확인하는 과정과, 상기 재전송 데이터 세그먼트가 손실된 경우 상기 재전송 데이터 세그먼트를 다시 재전송하는 과정을 포함하는 것을 특징으로 한다. The method for achieving the object of the present invention, in the congestion control method for a communication system using a transmission control protocol, the process of determining whether the data segment response (ACK) received from the receiver is in a fast recovery state, Retransmitting the corresponding data segment when the received data segment response is not a fast recovery state and is duplicated by a preset number of duplicate responses, and storing the sequence number of the next data segment to be transmitted after the retransmission in a score board; When the received data segment response is in a fast recovery state and receives a duplicate response for the retransmitted data segment, checking whether the retransmitted data segment is lost using buffer status information of the receiver received through the duplicate response; The resend data segment If the bit is lost, it characterized in that it comprises the step of retransmission, the retransmitted data segment.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
이하 본 발명에 따른 구성과 동작원리를 상세히 설명함에 있어서 적어도 부분적으로 무선 네트워크를 포함하는 패킷 데이터 전송 시스템을 이용할 것이다.In the following description of the configuration and operation principle according to the present invention in detail will use a packet data transmission system including at least partly a wireless network.
도 1은 본 발명이 적용될 수 있는 패킷 데이터 전송 시스템의 구성을 도시한 블럭도이다.1 is a block diagram showing the configuration of a packet data transmission system to which the present invention can be applied.
상기 도 1을 참조하면, 패킷 데이터 전송 시스템은 무선 채널을 통해 이동 단말기(10)를 서비스하는 기지국 송수신기(Base Transceiver Subsystem: BTS)(12)와 상기 기지국 송수신기(12)를 제어하는 기지국 제어기(Base Station Controller: BSC)(14)와 상기 기지국 제어기(14)를 패킷 데이터 서비스 노드(Packet Data Service Node: PDSN)(18)를 통해 패킷 네트워크(30)로 연결하는 GAN(Global ATM(Asynchronous Transfer Mode) Network) 교환기(16)로 구성된다. 이러한 구성을 통해 상기 이동 단말기(10)는 패킷 네트워크(30)에 접속하는 컴퓨터(20)와 데이터를 교환한다.Referring to FIG. 1, a packet data transmission system includes a base transceiver station (BTS) 12 serving a
여기서 상기 이동 단말기(10)는 셀룰러 전화기(Cellular Phone)나 PCS(Personal Communications Service) 전화기에 접속된 노트북 또는 인터넷 통신이 가능한 PDA(Personal Digital Assistant) 전화기나 IMT(International Mobile Telecommunication)-2000 단말기 등이며, 상기 컴퓨터(20)는 웹 서버(Web Server), FTP(File Transfer Protocol) 서버 등이다. 예를 들어 FTP 서버(20)는 사용자에 의해 요구된 파일을 데이터 세그먼트들에 실어 이동 단말기(10)에게 제공한다. 여기서 데이터 세그먼트들은 순서의 정렬을 위한 시퀀스 번호들을 포함한다. 이러한 경우 상기 FTP 서버는 송신자가 되고 상기 이동 단말기(10)는 수신자가 된다.The
도 2는 상기 도 1에 나타낸 통신 단말기의 구성을 도시한 블럭도이다. 이 구성은 도 1에 나타낸 이동 단말기(10) 및 FTP 서버(20)에 적용된다.2 is a block diagram showing the configuration of the communication terminal shown in FIG. This configuration is applied to the
상기 도 2를 참조하면, 통신 노드는 송신부(40)와 수신부(50)와 네트워크 인터페이스(70) 및 이들을 상호 연결하는 버스(60)를 포함한다. 수신부(50)는 송신측으로부터 송신된 데이터 세그먼트들을 통신 회선을 통해 수신하여, 그 패킷을 분석한다. 송신부(40)는 전송하고자 하는 데이터를 소정 포맷의 데이터 세그먼트로 변환하여 통신 회선을 통해 수신측 노드로 송신한다.Referring to FIG. 2, the communication node includes a
도 1은 이동 단말기로서의 송신자와 웹 서버 또는 FTP 서버로서의 수신자 및 송신자와 수신자간을 연결하는 다수의 장치들을 개시하고 있지만, 본 발명이 이러한 구성에 한정되지 않음은 물론이다. 즉 본 발명은 유사한 기술적 배경을 가지는 여타의 데이터 전송 시스템에도 본 발명의 범위를 크게 벗어나지 아니하는 범위에서 약간의 변형으로 적용 가능하며, 이는 본 발명의 분야에서 숙련된 기술적 지식을 가진 자의 판단으로 가능할 것이다.Although FIG. 1 discloses a plurality of devices connecting a sender as a mobile terminal and a receiver as a web server or an FTP server and a sender and a receiver, the present invention is not limited to this configuration. That is, the present invention can be applied to other data transmission systems having a similar technical background with a slight modification without departing from the scope of the present invention, which can be determined by those skilled in the art. will be.
상기와 같은 구성에 있어서 송신자는 전송하고자 하는 파일들을 분할하여 생성한 데이터 세그먼트들을 수신자에게 송신한다. 인터넷 프로토콜(Internet Protocol: IP)에 기반한 패킷 네트워크(30)에서의 통신은 통상 전송제어 프로토콜(Transmission Control Protocol: TCP)(이하 "TCP/IP"라 한다.)을 사용하여 이루어진다.In the above configuration, the sender transmits data segments generated by dividing files to be transmitted to the receiver. Communication in the
도 3은 전송제어 프로토콜의 혼잡제어를 위한 동작을 나타낸 상태도로서 도시한 바와 같이, TCP의 혼잡 제어는 기본적으로 슬로우 스타트(Slow Start) 모드(80)와 혼잡 회피(Congestion Avoidance) 모드(82)로 구성되어 있다.3 is a state diagram illustrating an operation for congestion control of a transmission control protocol. As shown in FIG. 3, congestion control in TCP is basically performed in a
슬로우 스타트(80)는 네트워크 상에 위치한 라우터로 한꺼번에 많은 수의 세그먼트들이 도착하였을 때 라우터 버퍼용량의 한계로 인해 세그먼트들이 폐기되는 것을 막기 위한 것이다. 네트워크의 전송 대역폭이 전달하려는 세그먼트들을 다 수용할 만큼 여유가 있는 경우에도 버스트(Burst)한 트래픽의 특성 때문에 라우터들에서 세그먼트들을 전송하지 못하게 되는 경우가 발생하게 될 수 있다. 슬로우 스타트(80)는 이러한 현상을 피하기 위한 알고리즘으로서, 송신자측에서 혼잡 윈도우(Congestion Window: 이하 CWND라 칭한다)를 사용한다
The
슬로우 스타트(80)는 처음 TCP 연결 시와 타임아웃이 발생된 경우에 사용되고, CWND의 값이 슬로우 스타트 임계값(Slow Start Threshold : 이하 SSTHRESH)보다 크게 되거나 소정 개수(일반적으로 3개)의 중복 ACK 수신을 통해 전송된 세그먼트의 손실을 감지하게 되면 종료된다. 중복 ACK는 수신된 세그먼트들의 순서가 정확하지 않을 경우 수신자가 동일한 시퀀스 번호를 사용하여 발생시키는 ACK를 나타낸다. 여기서, ACK는 정상적으로 수신한 바로 다음 세그먼트의 시퀀스 번호를 담고 있다. 예를 들어, 송신한 1,2,3(손실),4,5,6,7에 대해서 2,3,( ),3,3,3,3 이 전송되므로 4,5,6,7에 대해서는 중복되는 ACK를 받게 된다.The
CWND의 값은 매 라운드 트립 시간(Round Trip Time: 이하 RTT라 칭한다.) 동안에 수신한 ACK의 개수만큼씩 증가된다. 여기서 RTT는 송신자로부터 수신자로의 사이에서 측정된 왕복 지연을 나타낸다. 그러나 실질적으로 송신자는 데이터 세그먼트를 전송할 때 송신자의 CWND와 수신자의 현재 남은 버퍼 크기를 나타내는 수신자 윈도우(Advertised Window: 이하 AWND라 칭한다)를 비교하여 둘 중 작은 값을 CWND로서 사용한다. 즉 송신자는 Min(CWND, AWDN)을 이용하여 세그먼트를 전송한다. 여기서 AWND의 값은 수신자로부터 송신자에게 보고되는 것으로서 그 최대값은 64Kbyte이고 수신자의 흐름제어에 사용된다. 이와 같이 슬로우 스타트는 CWND를 지수적으로 증가시켜 네트워크의 가용 대역폭에 빠르게 접근한다. The value of CWND is increased by the number of ACKs received during each round trip time (hereinafter referred to as RTT). Where RTT represents the round trip delay measured from sender to receiver. In practice, however, the sender compares the sender's CWND with the receiver's current remaining buffer size (hereinafter referred to as AWND) when transmitting the data segment and uses the smaller of the two as the CWND. That is, the sender transmits the segment using Min (CWND, AWDN). Here, the value of AWND is reported from the receiver to the sender. The maximum value is 64Kbyte and is used for the receiver's flow control. As such, slow start exponentially increases CWND to quickly access the available bandwidth of the network.
혼잡 회피(82)는 슬로우 스타트(80)가 종료되거나 혼잡으로 인해 발생한 세그먼트의 손실을 복구한 이후에, CWND 값을 매 RTT마다 1만큼씩 선형적으로 증가시킨다. 혼잡 회피 모드에서는 매 ACK가 수신될 때마다 CWND를 1/CWND만큼 증가시킨 다. 슬로우 스타트(80)에서의 CWND의 증가가 지수적인데 반해서 혼잡 회피(82)에서의 CWND의 증가는 선형적이다. 즉, 슬로우 스타트(80)는 한 RTT 동안에 수신된 ACK의 개수만큼 CWND를 증가시키는 반면, 혼잡회피(82)는 한 RTT 동안에 CWND를 1만큼을 증가시킨다.
슬로우 스타트(80)와 혼잡 회피(82)는 별개의 알고리즘이지만 TCP에서 같이 구현된다. 즉 슬로우 스타트(80)에서 CWND의 값이 슬로우 스타트 임계값 SSTHRESH보다 크게 되는 경우 혼잡 회피(82)가 사용된다.
한편, TCP에서 손실된 세그먼트는 재전송 타임아웃 또는 빠른 재전송(Fast Retransmit)(84)에 의해 복구된다.Meanwhile, segments lost in TCP are recovered by retransmission timeout or
슬로우 스타트 모드(80) 또는 혼잡 회피 모드(82)에서 데이터 세그먼트를 전송할 때마다 미리 설정된 재전송 타이머(예를 들어 500ms로 설정)를 시동하고, 상기 재전송 타이머가 만기되기까지 수신자로부터 아무런 응답도 수신되지 않으면 타임아웃이 발생한다. 타임아웃이 발생하면 CWND는 1로 설정되고 슬로우 스타트 모드(80)가 재시작된다.Each time a data segment is transmitted in
빠른 재전송(84)은 소정 개수의 중복(Duplicate) ACK들이 수신되는 경우에 사용된다. 빠른 재전송(84)에서는 소정 개수 이상의 중복 ACK들이 수신되면 해당 시퀀스 번호를 가지는 세그먼트가 손실된 것으로 간주하고, 상기 손실된 것으로 예상되는 세그먼트를 재전송함으로써 타임아웃이 발생하지 않도록 한다. 즉, 재전송 임계값(Retransmit Threshold) 이상의 연속된 중복 ACK들을 수신하는 경우 송신자는 해당 세그먼트를 재전송 타이머가 만료되는 것과 상관없이 즉시 재전송한다. 보 통의 경우 재전송 임계값은 3이다.
빠른 재전송(84)에서 손실된 것으로 예상되는 세그먼트가 재전송된 이후에는 빠른 복구 모드(Fast Recovery)(86)가 시작된다. 빠른 복구 모드(86)에서는 매 수신되는 중복 ACK마다 CWND를 증가시키고 증가된 CWND를 증가시키고 증가된 CWND를 기준으로 새로운 세그먼트를 전송한다. 그리고 상기 손실된 것으로 예상되는 세그먼트에 대한 ACK가 수신되면 빠른 복구 모드(86)는 종료되고 혼잡 회피 모드(82)가 시작된다. 이러한 빠른 복구 모드(86)는 특히 대역폭 지연(Bandwidth-Delay Product: 이하 BDP라 칭한다)이 큰 경우에 효율적이다. 빠른 복구 모드(86)가 사용되지 않는 경우 빠른 재전송(84) 이후에는 혼잡 회피 모드(82)가 시작된다.
이와 같은 전송제어 프로토콜의 혼합제어 동작을 전송 제어프로토콜의 여러 버전중 전송 제어 프로토콜 선택 응답(TCP Selective ACKnowledgement이하, TCP SACK이라 칭함) 버전을 적용한 혼잡제어 방법을 도면을 참조하여 설명하면 다음과 같다. 여기서 TCP SACK은 수신자로 하여금 송신자에게 어떤 세그먼트들이 손실되었는지를 정확하게 알려주기 위한 것으로서 송신자가 손실된 세그먼트를 보다 빨리 재전송하도록 할 수 있으며, 불필요한 재전송을 예방할 수 있다. The congestion control method in which the mixed control operation of the transmission control protocol is applied to the transmission control protocol selection response (TCP Selective Acknowledgment, hereinafter called TCP SACK) version among the various versions of the transmission control protocol will be described with reference to the drawings. In this case, the TCP SACK is for the receiver to accurately inform the sender of which segments have been lost, so that the sender can retransmit the lost segment more quickly and can prevent unnecessary retransmissions.
도 4는 전송제어 프로토콜의 선택응답(TCP SACK)에 따른 혼잡제어 동작을 나타낸 흐름도이다. 여기서 나타낸 흐름은 송신자에 의해 이루어지는 것이다.4 is a flowchart illustrating a congestion control operation according to a selection response (TCP SACK) of the transmission control protocol. The flow shown here is done by the sender.
100단계에서 수신자로부터 ACK가 도착하면, 110단계에서 송신자는 현재 상태가 빠른 복구 상태인지를 확인한다. 확인 결과, 현재 상태가 빠른 복구 상태가 아니라면 120단계에서 상기 수신된 ACK가 새로운 ACK인지를 확인하여 새로운 ACK인 경우 121단계에서 송신자는 스코어 보드(Score Board)를 초기화한 다음 122단계에서 CWND가 허용하는 범위 내에서 새로운 세그먼트를 전송하고 다시 100단계로 진행한다. 반면, 120단계에서 확인 결과, 새로운 ACK가 아닌 경우 130단계에서 스코어 보드를 갱신한다. 여기서 스코어 보드는 수신자로부터 상기 수신된 ACK를 통해 수신되는 버퍼 상태 정보(SACK 블록 정보)를 바탕으로 갱신되며, 다시 재전송할 데이터 세그먼트의 시퀀스를 저장한다. If the ACK arrives from the receiver in
140단계에서 송신자는 수신된 중복 ACK의 개수를 임계값 예를들어 3개와 같은지를 확인한다. 확인결과, 수신된 중복 ACK의 개수가 3이면 141단계에서 송신자는 빠른 재전송을 통해 손실된 세그먼트를 재전송하고, 142단계에서 nxt_snd, STHRESH, pipe 및 CWND 값을 새롭게 설정한다. 여기서 SSTHRESH는 1/2*CWND로 설정하고, CWND는 반으로 줄이고, CWND 대신에 사용할 pipe값은 현재 CWND에서 수신한 중복 ACK의 개수만큼을 뺀 값으로 설정한다. 이후 송신자는 빠른 복구 모드로 천이되고, 다시 100단계로 진행한다. 반면, 수신된 중복 ACK의 개수가 3이 아니면 다시 100단계로 진행한다.In
한편, 110단계에서 현재 상태가 빠른 복구 상태로 확인 되면, 150단계에서 송신자는 pipe 값을 1만큼 감소한다. 이때, 부분 ACK를 수신한 경우라면 150단계에서 pipe 값을 2만큼 감소한다. 그런 다음 160단계에서 빠른 복구 상태가 종료되었는지를 확인한다. 확인 결과, 종료시에는 171단계에서 스코어 보드(Score Board)를 초기화하고, 172단계에서 새로운 세그먼트를 전송한 후 다시 100단계로 진행한다. 여기서 TCP SACK에서 복구가 종료되는 시점은 빠른 복구가 시작되기 전까지 전송한 모든 세그먼트를 응답하는 ACK가 도착하는 시점이다. On the other hand, if the current state is confirmed as a fast recovery state in
반면, 빠른 복구 상태가 유지되는 경우 170단계에서 송신자는 스코어 보드(Score Board)를 갱신하고 180단계에서 pipe값을 1만큼 증가한다. 181단계에서 송신자는 손실된 세그먼트를 재전송하거나 새로운 세그먼트를 전송하고, 이때, 재전송의 경우에는 nxt_snd를 새롭게 설정한다. 그런 다음 송신자는 다시 100단계로 진행하여 다음 ACK를 수신 대기한다. 여기서 pipe 값은 CWND보다 작은 한도 내에서 추가로 전송할 수 있으며 매 전송시마다 증가된다.On the other hand, if the fast recovery state is maintained in
이와 같이, 종래의 혼잡제어 방법은 TCP가 수신자의 버퍼 상태 정보(SACK 블록 정보)를 사용하며, 한 윈도우안에 여러 개의 세그먼트 손실이 발생하더라도 어떤 세그먼트가 손실되었고, 재전송되어야 하는지를 정확하게 알 수 있기 때문에 한 RTT내에 여러 세그먼트를 재전송한다. 이에 따라 TCP의 다른 버전보다 빠르게 손실된 세그먼트를 재전송함으로써 타임 아웃이 발생하는 확률을 줄이게 된다. As such, the conventional congestion control method uses TCP's buffer status information (SACK block information), and it is possible to know exactly which segments are lost and need to be retransmitted even if multiple segments are lost in one window. Retransmit several segments in the RTT. This reduces the chance of timeouts by retransmitting lost segments faster than other versions of TCP.
그러나 종래의 혼잡 제어 방법(TCP SACK)은 한 윈도우 안에 여러 개의 세그먼트 손실을 복구한다. 즉, 재전송된 세그먼트가 다시 손실되었을 경우 SACK에서는 윈도우 크기와 관계없이 항상 재전송 타임 아웃이 발생한다. 이는 TCP SACK이 손실 복구 과정에서 재전송된 세그먼트가 다시 손실되는 경우에 송신자는 재전송한 세그먼트를 성공적으로 수신하였다는 ACK가 아니라 재전송 중 손실된 세그먼트에 대한 중복 ACK만을 계속 수신하게 되므로 빠른 복구를 종료하는 것이 불가능하여 불가피하게 재전송 타임 아웃이 발생하게 된다. 또한, 세그먼트 손실 확률이 높을수록 하나의 윈도우 내에서 손실되는 세그먼트의 수가 증가하고, 상기 세그먼트들을 재전 송하는 과정에서 다시 손실될 확률도 증가하므로 손실율이 높은 환경에 TCP SACK의 성능이 저하될 수 있다. 이를 개선하기 위해 본 발명은 상기 종래의 혼잡제어 방법을 개선한 TCP SACKPlus(TCP Selective ACKnowledgement Plus 이하, TCP SACKPulse라 함)를 적용하여 혼잡 제어 동작을 수행한다. However, the conventional congestion control method (TCP SACK) recovers several segment losses in one window. That is, when a retransmitted segment is lost again, a retransmission timeout always occurs in SACK regardless of the window size. When TCP SACK loses a retransmitted segment during the loss recovery process, the sender will not receive an acknowledgment that the retransmitted segment has been successfully received, but only a duplicate ACK for the segment lost during retransmission. This is impossible and inevitably causes a retransmission timeout. In addition, as the probability of segment loss increases, the number of segments lost in one window increases, and the probability of loss again in the process of retransmitting the segments increases, so that the performance of TCP SACK may be degraded in a high loss rate environment. . In order to improve this, the present invention performs a congestion control operation by applying TCP SACKPlus (hereinafter, referred to as TCP SACKPulse), which is an improvement of the conventional congestion control method.
본 발명은 수신자가 ACK를 통해 보내오는 버퍼 상태 정보(SACK 블록 정보)를 활용하여 재전송된 세그먼트의 손실 여부를 확인하고 다시 한번 재전송하여 재전송 타임 아웃 확률을 낮춘다. 즉, 전송한 세그먼트가 손실이 되었을 때 재전송 타임 아웃 없이 손실된 세그먼트를 재전송한다. SACK에서 재전송한 세그먼트가 손실되었을 때 나타나는 현상은 재전송 세그먼트를 전송하라는 중복 ACK가 계속 수신되다가 결국은 타임아웃이 발생하는데, 이를 위해 재전송 할 때마다 재전송한 이후에 보낼 다음 세그먼트의 시퀀스를 스코어 보드에 저장한다. 그리고 수신되는 중복 ACK에 포함되어 있는 SACK 블록 정보를 계속 검사한다. 여기서 재전송한 세그먼트가 수신단에 수신되지 않은 상태로 나타나고, 스코어 보드에 저장되어 있는 재전송한 이후의 세그먼트는 수신단에 정상적으로 도착되면, 재전송한 세그먼트가 손실되었음을 알 수 있다. 이러한 혼잡 제어 동작을 도면을 참조하여 설명하면 다음과 같다. The present invention utilizes buffer status information (SACK block information) sent by the receiver through ACK to check whether the retransmitted segment is lost and retransmits it to lower the retransmission timeout probability. That is, when the transmitted segment is lost, the lost segment is retransmitted without retransmission timeout. What happens when a segment that is retransmitted in a SACK is lost is a duplicate ACK to send a retransmitted segment and eventually a timeout. To do this, the sequence of the next segment to be sent after the retransmission is sent to the scoreboard. Save it. The SACK block information included in the received duplicated ACK is continuously checked. In this case, when the retransmitted segment is not received at the receiving end and the segment after retransmission stored in the score board arrives at the receiving end normally, it can be seen that the retransmitted segment is lost. This congestion control operation will be described with reference to the drawings.
도 5는 본 발명의 실시예에 따른 개선된 전송제어 프로토콜 선택 응답의 혼잡 제어 동작을 도시한 흐름도이다. 5 is a flowchart illustrating a congestion control operation of an improved transmission control protocol selection response according to an embodiment of the present invention.
200단계에서 수신자로부터 ACK를 수신하면, 210단계에서 송신자는 현재 상태가 빠른 복구 상태인지를 확인한다. 확인 결과, 현재 상태가 빠른 복구 상태가 아니라면 220단계에서 상기 수신된 ACK가 새로운 ACK인지를 확인하여 새로운 ACK인 경우 221단계에서 송신자는 SACK 블록 정보를 바탕으로 스코어 보드(Score Board)를 초기한다. 그런 다음 222단계에서 송신자는 CWND가 허용하는 범위 내에서 수신자에게 새로운 세그먼트를 전송하고 다시 200단계로 진행한다. In
반면, 220단계에서 확인 결과, 새로운 ACK가 아닌 경우 230단계에서 스코어 보드(Score Board)를 갱신한다. 240단계에서 송신자는 수신된 중복 ACK 개수가 임계값 예를 들어 3개와 같은지를 확인한다. 확인 결과, 수신된 중복 ACK의 개수가 임계값과 같지 않으면 다시 200단계로 진행하고, 같으면 241단계에서 송신자는 빠른 재전송을 통해 손실된 세그먼트를 재전송한 다음 242단계에서 전송할 세그먼트의 시퀀스를 스코어 보드(Score Board) 내에 있는 nxt_snd를 새롭게 설정한다. 이때, 1개의 손실만 발생한 경우라면, nxt_snd는 현재까지 전송한 시퀀스의 최대값(maxseq)에서 1만큼씩 더한 세그먼트 시퀀스 변수가 된다. 이에 따라 송신자는 빠른 복구 모드로 동작되며, CWND대신에 사용할 pipe값을 현재 CWND에서 수신한 중복 ACK의 개수만큼을 뺀 값으로 설정하고, CWND를 반으로 줄인다. 그리고 SSTHRESH를 1/2*CWND로 설정한다. On the other hand, if it is determined in
한편, 210단계에서 현재 상태가 빠른 복구 상태이면, 250단계에서 송신자는 pipe 값을 1만큼 감소한다. 이때, 부분 ACK를 수신한 경우라면 250단계에서 pipe 값을 2만큼 감소한다. 그런 다음 260단계에서 빠른 복구 상태가 종료되었는지를 확인한다. 확인 결과, 종료된 경우에는 261단계에서 스코어 보드를 초기화하고, 262단계에서 새로운 세그먼트를 전송한 후 다시 200단계로 진행하고, 빠른 복구 상태가 유지되는 경우 270단계에서 송신자는 스코어 보드를 갱신한다. 이후, 280단계에서 송신자는 재전송 세그먼트의 손실여부를 판단한다. 즉, 수신되는 중복 ACK에 포함되어 있는 SACK 블록 정보를 계속 검사한다. 이러한 검사 결과, 재전송 데이터 세그먼트가 손실된 경우 290 내지 291단계에서 송신자는 pipe값을 1만큼 증가하고 손실된 재전송 데이터 세그먼트를 재전송하며, 이때, 재전송일 경우에는 nxt_snd를 새롭게 설정한 다음 다시 200단계로 진행한다. 여기서 pipe 값은 CWND보다 작은 한도 내에서 추가로 전송할 수 있으며 매 전송시마다 증가된다. On the other hand, if the current state is a fast recovery state in
반면, 280단계에서 재전송 세그먼트가 손실되지 않은 경우 281단계에서 송신자는 pipe 값을 1만큼 증가한다. 282단계에서 송신자는 재전송 전에 손실된 데이터 세그먼트를 재전송하거나 새로운 세그먼트를 전송하며, 이때, 재전송하는 경우에는 nxt_snd를 새롭게 설정한 다음 다시 200단계로 진행한다. 여기서 pipe 값은 CWND보다 작은 한도 내에서 추가로 전송할 수 있으며 매 전송시마다 증가된다. 그리고 재전송한 세그먼트가 수신단에 수신되지 않은 상태로 나타나고, 스코어 보드에 저장되어 있는 재전송한 이후에 전송할 다음 데이터 세그먼트가 수신단에서 제대로 도착된 것으로 확인되면, 송신자는 재전송한 데이터 세그먼트가 손실된 것으로 판단한다. 이때 손실된 것으로 예상되는 데이터 세그먼트를 다시 재전송하여 재전송 타임아웃이 발생하는 경우를 막을 수 있게 된다. On the other hand, if the retransmission segment is not lost in
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 발명청구의 범위뿐 만 아니라 이 발명청구의 범위와 균등한 것들에 의해 정해져야 한다.
Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the scope of the following claims, but also by the equivalents of the claims.
상술한 바와 같이 본 발명은 수신자의 버퍼 상태 정보를 바탕으로 재전송된 세그먼트의 손실 여부를 확인하여 손실된 재전송 데이터 세그먼트를 다시 한번 재전송함으로써 재전송 타임아웃의 발생 확률을 낮출 수 있으므로 손실이 많이 발생하는 환경에서 성능이 향상되는 효과가 있다. As described above, the present invention can reduce the probability of occurrence of the retransmission timeout by retransmitting the lost retransmission data segment once again by checking whether the retransmitted segment is lost based on the buffer state information of the receiver, and thus, the loss-prone environment is high. This has the effect of improving performance.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030052333A KR100913897B1 (en) | 2003-07-29 | 2003-07-29 | Transmission Control Protocol Congestion Control Method to Reduce the Number of Retransmission Timeouts |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030052333A KR100913897B1 (en) | 2003-07-29 | 2003-07-29 | Transmission Control Protocol Congestion Control Method to Reduce the Number of Retransmission Timeouts |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050013777A KR20050013777A (en) | 2005-02-05 |
KR100913897B1 true KR100913897B1 (en) | 2009-08-26 |
Family
ID=37225093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030052333A Expired - Fee Related KR100913897B1 (en) | 2003-07-29 | 2003-07-29 | Transmission Control Protocol Congestion Control Method to Reduce the Number of Retransmission Timeouts |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100913897B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200043708A (en) | 2018-10-18 | 2020-04-28 | 주식회사 우리넷 | TCP retransmission control method considering wireless communication network status or terminal status |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100895182B1 (en) | 2005-12-14 | 2009-04-24 | 삼성전자주식회사 | Transmission Control Method of Wireless Communication System |
EP2234313B1 (en) | 2009-03-24 | 2021-12-15 | Samsung Electronics Co., Ltd. | Operating method and apparatus according to data duplicate retransmission in mobile communication system |
CN114095129B (en) * | 2021-11-17 | 2024-05-17 | 厦门勇仕网络技术股份有限公司 | Communication method and system for mobile terminal game network transmission |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010045532A (en) * | 1999-11-05 | 2001-06-05 | 김진찬 | Method of improving the retransmission algorithm of tcp |
EP1180869A2 (en) | 2000-08-18 | 2002-02-20 | Tsinghua University | A TCP aware local retransmission scheme for unreliable transmission network |
EP1211864A2 (en) | 2000-11-22 | 2002-06-05 | International Business Machines Corporation | Methodology for improving TCP throughput over lossy communication links |
US20020150048A1 (en) | 2001-04-12 | 2002-10-17 | Sungwon Ha | Data transport acceleration and management within a network communication system |
-
2003
- 2003-07-29 KR KR1020030052333A patent/KR100913897B1/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010045532A (en) * | 1999-11-05 | 2001-06-05 | 김진찬 | Method of improving the retransmission algorithm of tcp |
EP1180869A2 (en) | 2000-08-18 | 2002-02-20 | Tsinghua University | A TCP aware local retransmission scheme for unreliable transmission network |
EP1211864A2 (en) | 2000-11-22 | 2002-06-05 | International Business Machines Corporation | Methodology for improving TCP throughput over lossy communication links |
US20020150048A1 (en) | 2001-04-12 | 2002-10-17 | Sungwon Ha | Data transport acceleration and management within a network communication system |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200043708A (en) | 2018-10-18 | 2020-04-28 | 주식회사 우리넷 | TCP retransmission control method considering wireless communication network status or terminal status |
Also Published As
Publication number | Publication date |
---|---|
KR20050013777A (en) | 2005-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100785293B1 (en) | TCCP Congestion Control System and Method Using Multiple TCCP Acknowledgments | |
US6697331B1 (en) | Link layer acknowledgement and retransmission for cellular telecommunications | |
US8064461B2 (en) | Method and apparatus for TCIP/IP data transfer over a wireless network | |
US7593338B2 (en) | Congestion control method and system for reducing a retransmission timeout count in a transmission control protocol | |
US20040052234A1 (en) | Method and system for dispatching multiple TCP packets from communication systems | |
US7277390B2 (en) | TCP processing apparatus of base transceiver subsystem in wired/wireless integrated network and method thereof | |
US7460472B2 (en) | System and method for transmitting information in a communication network | |
CN102006283B (en) | Data transmission method and device | |
US8085669B2 (en) | Session relay device and session relay method | |
EP1771742B1 (en) | High performance tcp for systems with infrequent ack | |
KR100600607B1 (en) | Ark control device and control method in wireless portable internet system | |
Wong et al. | Improving end-to-end performance of TCP using link-layer retransmissions over mobile internetworks | |
Wang et al. | Use of TCP decoupling in improving TCP performance over wireless networks | |
US20060059256A1 (en) | Signaling a state of a transmission link via a transport control protocol | |
EP1278348A1 (en) | Long-lived TCP connection using ICMP messages in wireless mobile communications | |
JP4384676B2 (en) | Method for controlling data communication apparatus | |
JP4364763B2 (en) | Data communication device | |
KR100913897B1 (en) | Transmission Control Protocol Congestion Control Method to Reduce the Number of Retransmission Timeouts | |
EP1505759B1 (en) | Method and device for transmitting/receiving data using acknowledged transport layer protocols | |
CN115766747A (en) | Reliable and efficient transmission method suitable for wireless channel | |
Buchholcz et al. | Explicit loss notification to improve TCP performance over wireless networks | |
KR101231793B1 (en) | Methods and apparatus for optimizing a tcp session for a wireless network | |
KR20040024628A (en) | Process method of udp control system | |
Shamakumar et al. | TCP for Wireless Networks | |
JP2003198612A (en) | File transfer method in packet communication network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20030729 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20080729 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20030729 Comment text: Patent Application |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20090730 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20090818 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20090818 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20120730 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20120730 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20130730 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20130730 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20140730 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20140730 Start annual number: 6 End annual number: 6 |
|
FPAY | Annual fee payment |
Payment date: 20150730 Year of fee payment: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20150730 Start annual number: 7 End annual number: 7 |
|
FPAY | Annual fee payment |
Payment date: 20160728 Year of fee payment: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20160728 Start annual number: 8 End annual number: 8 |
|
FPAY | Annual fee payment |
Payment date: 20170728 Year of fee payment: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20170728 Start annual number: 9 End annual number: 9 |
|
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20200529 |