KR100672979B1 - Congestion control method - Google Patents

Congestion control method Download PDF

Info

Publication number
KR100672979B1
KR100672979B1 KR1020050071403A KR20050071403A KR100672979B1 KR 100672979 B1 KR100672979 B1 KR 100672979B1 KR 1020050071403 A KR1020050071403 A KR 1020050071403A KR 20050071403 A KR20050071403 A KR 20050071403A KR 100672979 B1 KR100672979 B1 KR 100672979B1
Authority
KR
South Korea
Prior art keywords
congestion
size
congestion window
packet loss
window
Prior art date
Application number
KR1020050071403A
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 KR1020050071403A priority Critical patent/KR100672979B1/en
Application granted granted Critical
Publication of KR100672979B1 publication Critical patent/KR100672979B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • 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/29Flow control; Congestion control using a combination of thresholds
    • 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/37Slow start

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A congestion control method is provided to improve an availability ratio of an entire bandwidth by reducing linearly a size of a congestion window. A slow start process is performed to increase exponentially a size of a congestion window when a transmission side does not generate packet loss(S101,S102). A congestion avoidance process is performed to perform repeatedly the slow start process when the congestion window is less than a slow start threshold or increase linearly the size of the congestion window when the congestion window is less than the slow start threshold(S103). A constant process is performed to maintain the congestion window at a maximum state when the size of the congestion window approaches the maximum congestion window(S104). A reverse congestion avoidance process is performed to reduce linearly the size of the congestion window when the packet loss is generated from each of the slow start process, the congestion avoidance process, and the constant process. A slow stop process is performed to reduce exponentially the size of the congestion window.

Description

혼잡 제어 방법{Congestion control method}Congestion control method

도 1은 본 발명의 실시예에 따른 혼잡 제어 방법의 순서도.1 is a flow chart of a congestion control method according to an embodiment of the present invention.

도 2a는 본 발명의 실시예에 따른 혼잡 제어 방법의 슬로우 스타트 단계의 수행 과정을 도시한 순서도.2A is a flowchart illustrating a process of performing a slow start step of a congestion control method according to an exemplary embodiment of the present invention.

삭제delete

도 2b는 본 발명의 실시예에 따른 혼잡 제어 방법의 혼잡 회피 단계의 수행 과정을 도시한 순서도.2B is a flowchart illustrating a process of performing a congestion avoidance step of a congestion control method according to an embodiment of the present invention.

도 2c는 본 발명의 실시예에 따른 혼잡 제어 방법의 컨스턴트 단계의 수행 과정을 도시한 순서도.2C is a flowchart illustrating a process of performing a constant step of a congestion control method according to an embodiment of the present invention.

도 2d는 본 발명의 실시예에 따른 혼잡 제어 방법의 역혼잡 회피 단계의 수행 과정을 도시한 순서도.
도 2e는 본 발명의 실시예에 따른 혼잡 제어 방법의 슬로우 스톱 단계의 수행 과정을 도시한 순서도.
2d is a flowchart illustrating a process of performing a congestion avoidance step of a congestion control method according to an exemplary embodiment of the present invention.
Figure 2e is a flow chart illustrating a process of performing a slow stop step of the congestion control method according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 따른 혼잡 제어 방법을 위한 패킷 손실 정도 설정 방법을 설명하기 위한 도면3 is a diagram illustrating a packet loss degree setting method for a congestion control method according to an embodiment of the present invention.

도 4는 본 발명의 실시예에 따른 혼잡 제어 방법을 위한 네트워크 구조도.4 is a network structural diagram for a congestion control method according to an embodiment of the present invention;

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

200 : 게이트웨이200: gateway

210, 220, 230 : 베이스 스테이션
240 : 무선 이동 단말장치
210, 220, 230: base station
240: wireless mobile terminal device

본 발명은 임베디드 단말의 이동성을 지원하는 데이터그램 혼잡 제어 프로토콜(Datagram Congestion Control Protocol; 이하 "DCCP"라 한다.) 기반의 혼잡 제어 방법에 관한 것으로, 특히 패킷 손실 정도에 따라 혼잡 윈도우의 크기를 조절하여 대역폭을 향상시키고, 게이트웨이를 통하여 공평하게 세션을 관리할 수 있도록 한 혼잡 제어 방법에 관한 것이다.The present invention relates to a congestion control method based on a Datagram Congestion Control Protocol (hereinafter referred to as "DCCP") that supports mobility of an embedded terminal. In particular, the size of the congestion window is adjusted according to packet loss. To improve bandwidth and to manage sessions fairly through a gateway.

유비쿼터스 컴퓨팅 환경에는 이질적인 특성의 다양한 단말들이 유무선망에 존재하고, 여러 종류의 컴퓨팅 능력을 가진 단말들이 공존한다. 특히, 유비쿼터스 네트워크에서는 여러 단말들의 이동성을 극대화하기 위해서 모바일 네트워크나 센스 네트워크와 같은 많은 무선 접속망들이 포함될 것이고, 단말들은 이러한 이동성으로 인하여 경량화, 소형화된 임베디드 단말들이 주를 이룰 것이다. 이동성은 네트워크 대역폭의 빠른 변화를 야기시키고 이를 효율적으로 처리하기 위한 혼잡 제어 방법은 필수적이다.In a ubiquitous computing environment, various terminals having heterogeneous characteristics exist in wired and wireless networks, and terminals with various kinds of computing capabilities coexist. In particular, in the ubiquitous network, in order to maximize the mobility of various terminals, many wireless access networks such as a mobile network or a sense network will be included, and the terminals will be mainly made up of lightweight and miniaturized embedded terminals. Mobility causes a rapid change in network bandwidth and congestion control methods are essential to efficiently handle it.

인터넷에서 멀티미디어나 물류 데이터와 같은 대용량의 연속성 데이터를 신뢰성 있게 전송하기 위하여 전송 제어 프로토콜(Transmission Control Protocol; 이하 "TCP"라 한다.)이나 사용자 데이터그램 프로토콜User Datagram Protocol; 이 하 "UDP"라 한다.)을 사용한다. 그러나 BSD(Berkeley Software Distribution) 소켓 기반의 TCP는 혼잡 제어와 흐름 제어, 그리고 재전송 기법들과 같은 많은 기능들로 인해 두터운 프로토콜 스택으로 구성되었으며, 경량화, 소형화된 임베디드 단말과 같은 하드웨어의 자원이 제한적인 경우에는 매우 큰 부담으로 작용한다. Transmission Control Protocol (hereinafter referred to as "TCP") or User Datagram Protocol to reliably transmit large amounts of continuity data such as multimedia or logistics data over the Internet; Hereinafter referred to as "UDP"). However, BSD (Berkeley Software Distribution) socket-based TCP consists of a thick protocol stack due to many features such as congestion control, flow control, and retransmission techniques, and limited hardware resources such as lightweight, miniaturized embedded terminals. The case is a very big burden.

반면에, UDP는 혼잡 제어 등의 기능이 없는 경량화된 프로토콜 스택을 가지지만 신뢰성을 보장하지 못한다.UDP, on the other hand, has a lightweight protocol stack that lacks features such as congestion control, but does not guarantee reliability.

이에, 경량화된 프로토콜을 가짐과 동시에 약간의 신뢰성을 가지는 DCCP 기반의 TCP-Friendly와 TCP-Like 같은 전송 계층의 혼잡 제어 방법들이 표준으로 제안되었다.Accordingly, congestion control methods of transport layers such as TCP-Friendly and TCP-Like based on DCCP, which have a lightweight protocol and some reliability, have been proposed as a standard.

DCCP기반의 TCP-Friendly 혼잡 제어 방법은 지연 시간을 기반으로 하며, TCP와 거의 유사하게 혼잡을 제어하지만, 전송률 향상을 위하여 여러 개의 ACK 메시지를 한 번에 보내는 ACK 벡터를 사용하여 ACK 메시지를 보내는 빈도를 줄인다. DCCP-based TCP-Friendly congestion control method is based on delay time and controls congestion almost similar to TCP, but sends ACK message using ACK vector which sends several ACK messages at once to improve transmission rate. Reduce

DCCP기반의 TCP-Like 혼잡 제어 방법은 패킷 손실 비율에 기반을 두며, TCP와 친화적인 흐름을 지향하는 TFRC(TCP-Friendly Rate Control) 방식으로서 혼잡 윈도우는 패킷 손실 발생률에 맞춰서 서서히 증가하고, 몇 개의 연속적인 패킷 손실이 발생하면 혼잡 윈도우를 반으로 줄인다. DCCP-based TCP-Like congestion control method is based on the packet loss rate, TCP-Friendly Rate Control (TFRC) method for TCP-friendly flow, the congestion window gradually increases in accordance with the packet loss rate, If consecutive packet loss occurs, reduce the congestion window in half.

이들은 모두 UDP와 마찬가지로 비신뢰적 전송을 하지만 약간의 신뢰성을 부여하기 위한 연결 설정과 해제 과정이 있다. These are all unreliable transmissions, just like UDP, but with connection establishment and teardown to provide some reliability.

이와 같은 종래의 혼잡 제어 방법들은 유선 환경을 기반으로 구현되었으므로 높은 비트 에러율이 발생하는 무선 환경에 수정 없이 도입되면 대역폭의 성능 저하 를 유발시킨다. 이러한 비트 에러율 때문에 패킷이 손실로 처리되면, 혼잡이 발생하지 않았지만 기존의 혼잡 제어 방법들은 그것을 혼잡으로 인식하고 혼잡 윈도우의 크기를 감소시켜서 전송량을 줄인다. 이처럼 종래의 혼잡 제어 방법들은 비트에러에 의한 패킷 손실과 혼잡에 의한 패킷 손실을 구분하지 못하였다.Since the conventional congestion control methods are implemented based on a wired environment, if they are introduced without modification into a wireless environment in which a high bit error rate occurs, bandwidth degradation occurs. If a packet is treated as a loss due to this bit error rate, no congestion has occurred, but conventional congestion control methods recognize it as congestion and reduce the amount of transmission by reducing the size of the congestion window. As such, the conventional congestion control methods cannot distinguish packet loss due to bit error and packet loss due to congestion.

또한, 종래의 TCP나 유사한 정책을 표방하는 프로토콜의 혼잡 제어 방법에서는 손실이 발생하게 되면 혼잡 윈도우를 반으로 줄이게 되고, 그 이후로는 혼잡 윈도우의 크기를 선형적으로 증가시킨다. 하지만, 혼잡이 심하지 않은 경우, 혼잡 윈도우의 크기가 큰 단말에서 동시에 전송률을 반으로 줄이게 되면 네트워크 대역폭의 상당 부분이 사용되지 않을 것이다. 그리고 상대적으로 혼잡 윈도우가 작은 다른 단말에서의 혼잡 윈도우 증가량은 이에 미치지 못하게 되어 일정 시간 동안 네트워크 대역폭이 낭비되는 문제점이 있었다.In addition, in the congestion control method of the conventional TCP or a similar policy, when the loss occurs, the congestion window is reduced in half, and thereafter, the size of the congestion window is linearly increased. However, if the congestion is not severe, a large portion of the network bandwidth will not be used if the transmission rate is cut in half at the same time in a large congestion window. In addition, the amount of congestion window increase in another terminal with a relatively small congestion window is less than this, which causes a problem of wasting network bandwidth for a certain time.

현재의 네트워크 구조는 게이트웨이를 기준으로 단말들이 인터넷에 접속하기 위해서 사용되는 접속망과 인터넷으로 구분된다. 이 중, 접속망은 단말들의 연결 방법에 따라서 무선 접속망과 유선 접속망으로 나뉜다. 유선 접속망의 경우에는 정해진 수의 단말들이 접속해 있기 때문에 인터넷이나 무선 접속망에 비하여 트래픽의 변동이 작다. 그러나 무선 접속망의 경우에는 단말들의 이동성에 기인하여 실질적인 접속점인 베이스 스테이션에 접속할 수 있는 단말들의 수가 가변적이다. 그러므로 트래픽도 매우 가변적이다. 즉, 갑자기 많은 단말들이 이동하여 하나의 베이스 스테이션에 베이스 스테이션의 처리 한계보다 많은 데이터 전송 요구가 들어온다면 그 셀은 혼잡으로 인하여 단말들이 요구하는 모든 데이터를 전송하기는 힘들 다. 종래의 혼잡 제어 방법들은 이러한 혼잡의 구조를 기반으로 설계되지 않았기 때문에 효율적인 혼잡 제어가 어려운 문제점이 있었다.The current network structure is divided into the access network and the Internet used by terminals to access the Internet based on the gateway. Among them, the access network is divided into a wireless access network and a wired access network according to the connection method of the terminals. In the case of a wired access network, since a fixed number of terminals are connected, traffic fluctuations are smaller than that of the Internet or wireless access network. However, in the case of a wireless access network, due to the mobility of the terminals, the number of terminals that can access the base station, which is a practical access point, is variable. The traffic is therefore very variable. That is, if many terminals suddenly move and a data transmission request comes in more than one base station's processing limit, the cell is difficult to transmit all data required by the terminals due to congestion. Conventional congestion control methods have not been designed based on such a congestion structure, and thus, congestion control is difficult.

이에 본 발명은 상기와 같은 제반 문제점을 해소하기 위해 제안된 것으로, 본 발명의 목적은 손실 발생 시 무선 환경의 특성에 의해서 발생하는 비트 에러에 의한 손실과 혼잡에 의한 손실을 구분하기 위하여 혼잡 윈도우의 크기를 선형적으로 감소시킴으로써 혼잡이 아닌 상황에서 혼잡 윈도우가 절반으로 감소되는 가능성을 배제하여 전체적인 대역폭 이용률을 향상시키고, 약간의 혼잡 발생 시 혼잡 윈도우의 크기를 절반이 될 때까지 지수적으로 감소시키면서, 감소되는 과정 속에서 추가적인 에러 발생 시 에러의 발생횟수를 지수적으로 가중치시켜 감소시킴으로써, 대역폭이 큰 폭으로 감소함으로 인해 발생할 수 있는 대역폭의 낭비를 방지하는 혼잡 제어 방법을 제공하는 데 있다.Accordingly, the present invention has been proposed to solve the above problems, and an object of the present invention is to provide a congestion window in order to distinguish between loss due to congestion and loss due to bit error caused by characteristics of a wireless environment. By linearly reducing the size, the overall bandwidth utilization is improved by excluding the possibility of the congestion window being halved in non-congestion situations, and exponentially reducing the size of the congestion window to half when there is some congestion. In addition, by reducing the number of occurrences of an error exponentially when additional errors occur in the process of reducing, to provide a congestion control method to prevent the waste of bandwidth that can occur due to a significant reduction in bandwidth.

본 발명의 다른 목적은 게이트웨이가 전체 단말의 세션을 통합적으로 관리함으로써 전체 단말의 세션에 대하여 공평하게 관리할 수 있는 혼잡 제어 방법을 제공하는 데 있다.Another object of the present invention is to provide a congestion control method in which the gateway can manage the sessions of the entire terminals by managing the sessions of the entire terminals.

상기와 같은 목적을 달성하기 위하여 본 발명의 기술적 사상에 의한 혼잡 제어 방법은 패킷 손실 여부에 따라서 혼잡 윈도우의 크기를 증가시키거나 감소시켜 혼잡을 제어하는 방법에 있어서, 송신측이 상기 혼잡 윈도우 크기만큼의 패킷을 전송하여 패킷이 손실되지 않으면, 상기 혼잡 윈도우의 크기를 지수적으로 증가시키는 슬로우 스타트 단계와, 상기 슬로우 스타트 단계에서 상기 혼잡 윈도우가 상기 슬로우 스타트 임계치 미만이면 상기 슬로우 스타트 단계를 반복 수행하고, 상 기 혼잡 윈도우가 상기 슬로우 스타트 임계치 이상이면 상기 혼잡 윈도우의 크기를 선형적으로 증가시키는 혼잡 회피 단계와, 상기 혼잡 회피 단계에서 상기 혼잡 윈도우의 크기가 최대에 도달하면 상기 혼잡 윈도우의 크기를 최대로 유지하는 컨스턴트 단계와, 상기 송신측이 상기 혼잡 윈도우 크기만큼의 패킷을 전송하여 패킷 손실이 발생하면, 무선 환경의 특성에 의해 발생하는 비트에러와 혼잡에 의해 발생하는 손실을 구분하기 위하여 상기 혼잡 윈도우의 크기를 선형적으로 감소시키는 역혼잡 회피 단계와, 혼잡으로 인한 대역폭의 낭비를 최소화하기 위하여 상기 혼잡 윈도우의 크기가 절반이 될 때까지 상기 혼잡 윈도우의 크기를 지수적으로 감소시키는 슬로우 스톱 단계를 포함하여 이루어지고, 상기 패킷의 손실이 발생하면, 상기 각 단계들은 상기 패킷 손실 정도에 따라서 슬로우 스타트 단계, 역혼잡 회피 단계, 슬로우 스톱 단계 중 어느 하나를 수행하는 것을 그 기술적 구성상의 특징으로 한다. In order to achieve the above object, a congestion control method according to the present invention provides a method of controlling congestion by increasing or decreasing the size of a congestion window according to whether a packet is lost or not. If the packet is not lost due to the packet transmission, the slow start step of exponentially increasing the size of the congestion window, and the slow start step is repeated if the congestion window is less than the slow start threshold in the slow start step A congestion avoidance step of linearly increasing the size of the congestion window if the congestion window is greater than or equal to the slow start threshold; and maximum size of the congestion window if the size of the congestion window reaches a maximum in the congestion avoidance step Constant step to maintain the song When a new side transmits a packet corresponding to the size of the congestion window, and a packet loss occurs, the size of the congestion window is linearly reduced to distinguish between bit error caused by a characteristic of a wireless environment and loss caused by congestion. A congestion avoidance step and a slow stop step of exponentially reducing the size of the congestion window until the size of the congestion window is half to minimize waste of bandwidth due to congestion. When a loss occurs, each of the above steps is characterized by performing any one of a slow start step, a reverse congestion avoidance step, and a slow stop step according to the degree of packet loss.

여기서, 상기 패킷 손실 정도는 증가된 혼잡 윈도우 크기만큼의 패킷 개수에서 패킷 손실 개수를 뺀 값인 것을 특징으로 한다.The packet loss degree is a value obtained by subtracting the packet loss number from the number of packets corresponding to the increased congestion window size.

또한, 상기 슬로우 스타트 단계는, 상기 슬로우 스톱 단계의 수행 여부를 결정하는 슬로우 스톱 플래그를 검사하여 상기 슬로우 스톱 플래그가 1인 경우, 상기 슬로우 스톱 단계를 수행하고, 상기 슬로우 스톱 플래그가 0인 경우, 패킷 손실 개수가 상기 증가된 혼잡 윈도우 크기 절반만큼의 패킷 개수보다 작거나 같으면 역혼잡 회피 단계를 수행하고, 패킷 손실 개수가 상기 증가된 혼잡 윈도우 크기만큼의 패킷 개수보다 작고 상기 증가된 혼잡 윈도우 크기 절반만큼의 패킷 개수보다 크면 슬로우 스톱 단계를 수행하며, 패킷 손실 개수가 상기 증가된 혼잡 윈도우 크기만큼의 패킷 개수보다 크거나 같으면 혼잡 윈도우의 크기를 절반으로 감소시킨 후, 슬로우 스타트 단계를 수행하는 것을 특징으로 한다.The slow start step may include: checking the slow stop flag for determining whether to perform the slow stop step and performing the slow stop step when the slow stop flag is 1, and when the slow stop flag is 0, If the number of packet losses is less than or equal to the number of packets by the increased congestion window size half, a reverse congestion avoidance step is performed, and the number of packet losses is less than the number of packets by the increased congestion window size and the increased congestion window size half If the number of packets is greater than the number of packets, the slow stop step is performed. If the number of packet losses is greater than or equal to the number of packets corresponding to the increased congestion window size, the size of the congestion window is reduced by half, and then the slow start step is performed. It is done.

또한, 상기 혼잡 회피 단계는, 상기 슬로우 스톱 플래그를 검사하여 상기 슬로우 스톱 플래그가 1인 경우, 상기 슬로우 스톱 단계를 수행하고, 상기 슬로우 스톱 플래그가 0인 경우, 패킷 손실 개수가 상기 증가된 혼잡 윈도우 크기의 패킷 하나의 크기와 같으면 역혼잡 회피 단계를 수행하고, 패킷 손실 개수가 상기 증가된 혼잡 윈도우 크기만큼의 패킷 개수보다 크고 이 단계에서 증가된 모든 혼잡 윈도우 크기보다 작다면 슬로우 스톱 단계를 수행하며, 패킷 손실 개수가 이 단계에서 증가된 모든 혼잡 윈도우 크기만큼의 패킷 개수보다 크거나 같으면 현재의 혼잡 윈도우를 절반으로 줄인 후 슬로우 스타트 단계를 수행하는 것을 특징으로 한다.The congestion avoidance step may include: checking the slow stop flag and performing the slow stop step when the slow stop flag is 1; and when the slow stop flag is 0, the number of packet loss increases the congestion window. If the size of one packet equals the size, a congestion avoidance step is performed; if the number of packet losses is greater than the number of packets equal to the increased congestion window size and smaller than all the congestion window sizes increased in this step, a slow stop step is performed. If the number of packet losses is greater than or equal to the number of packets corresponding to all the congestion window sizes increased in this step, the current congestion window is reduced by half, and then a slow start step is performed.

또한, 상기 컨스턴트 단계는, 상기 슬로우 스톱 플래그를 검사하여 상기 슬로우 스톱 플래그가 1인 경우, 상기 슬로우 스톱 단계를 수행하고, 상기 슬로우 스톱 플래그가 0인 경우, 상기의 혼잡 회피 단계와 동일한 혼잡 제어를 수행하는 것을 특징으로 한다.The constant step may include the same congestion control as in the congestion avoidance step when the slow stop flag is inspected and the slow stop flag is 1, and the slow stop flag is 0 and the slow stop flag is 0. It characterized in that to perform.

또한, 상기 역혼잡 회피 단계는, 상기 슬로우 스톱 플래그를 검사하여 상기 슬로우 스톱 플래그가 1인 경우, 상기 슬로우 스톱 단계를 수행하고, 상기 슬로우 스톱 플래그가 0인 경우, 패킷 손실 개수가 0이면 상기 역혼잡 회피 단계의 이전 단계를 수행하고, 패킷 손실 개수가 1이면 상기 역혼잡 회피 단계를 수행하며, 패킷 손실 개수가 상기 역혼잡 회피 단계 이전 단계의 패킷 손실 개수보다 작거나 같으면 슬로우 스톱 단계를 수행하고, 패킷 손실 개수가 상기 역혼잡 회피 단계 이전 단계의 패킷 손실 개수보다 크면 상기 혼잡 윈도우의 크기를 절반으로 감소시킨 후, 상기 슬로우 스타트 단계를 수행하는 것을 특징으로 한다.The reverse congestion avoidance step may include: checking the slow stop flag to perform the slow stop step when the slow stop flag is 1; and when the slow stop flag is 0, when the packet loss count is 0, the reverse stop. Perform the previous step of the congestion avoidance step, perform the reverse congestion avoidance step if the packet loss number is 1, perform the slow stop step if the number of packet loss is less than or equal to the packet loss number of the step before the congestion avoidance step If the number of packet losses is greater than the number of packet losses before the step of avoiding congestion, the size of the congestion window is reduced by half, and then the slow start step is performed.

또한, 상기 슬로우 스톱 단계는, 상기 슬로우 스톱 플래그를 검사하여 상기 슬로우 스톱 플래그가 1인 경우, 상기 슬로우 스톱 단계를 수행하고, 상기 슬로우 스톱 플래그가 0인 경우, 상기 혼잡 윈도우의 크기를 지수적으로 감소시키면서, 감소되는 과정 속에서 추가적인 에러 발생 시 에러의 발생횟수를 지수적으로 가중치시켜 감소시킨 후, 상기 혼잡 회피 단계를 수행하는 것을 특징으로 한다.The slow stop step may include: checking the slow stop flag to perform the slow stop step when the slow stop flag is 1, and when the slow stop flag is 0, exponentially increasing the size of the congestion window. While reducing, by reducing the number of occurrences of an error exponentially weighted in the process of further error reduction, characterized in that the congestion avoidance step is performed.

또한, 상기 최대 혼잡 윈도우 임계치 및 슬로우 스타트 임계치는 게이트웨이 기반의 공평한 세션 관리를 위하여 다음과 같은 수학식에 의해 계산된 값으로 설정되는 것을 특징으로 한다.The maximum congestion window threshold and the slow start threshold may be set to values calculated by the following equation for fair session management based on the gateway.

Figure 112006095016113-pat00052
Figure 112006095016113-pat00052

Figure 112006095016113-pat00053
Figure 112006095016113-pat00053

여기서, T

Figure 112005043160957-pat00006
은 세션
Figure 112005043160957-pat00007
의 최대 혼잡 윈도우 임계치를 나타내고, T
Figure 112005043160957-pat00008
은 세션
Figure 112005043160957-pat00009
의 슬로우 스타트 임계치를 나타내고, N은 게이트웨이를 통해서 서비스 중인 모든 세션 수를 나타내고, W
Figure 112005043160957-pat00010
은 게이트웨이의 최대 가용 윈도우 크기를 나타내 고, W
Figure 112005043160957-pat00011
은 세션
Figure 112005043160957-pat00012
의 최대 수신 윈도우 크기를 나타낸다.Where T
Figure 112005043160957-pat00006
Session
Figure 112005043160957-pat00007
Represents the maximum congestion window threshold of
Figure 112005043160957-pat00008
Session
Figure 112005043160957-pat00009
Slow start threshold of N, N denotes the number of all sessions in service through the gateway, W
Figure 112005043160957-pat00010
Represents the maximum available window size of the gateway, W
Figure 112005043160957-pat00011
Session
Figure 112005043160957-pat00012
Represents the maximum receive window size.

또한, 상기 게이트웨이는 상기 최대 혼잡 윈도우 임계치 및 슬로우 스타트 임계치를 통하여 상기 게이트웨이에 연결되는 각 단말의 혼잡 윈도우 크기 및 상기 게이트웨이의 가용 윈도우 크기를 인식하는 것을 특징으로 한다.In addition, the gateway recognizes the congestion window size of each terminal connected to the gateway and the available window size of the gateway through the maximum congestion window threshold and the slow start threshold.

또한, 본 발명은 상기 패킷의 손실이 발생하지 않으면, 상기 각 단계들은 상기 혼잡 윈도우 크기가 상기 슬로우 스타트 임계치보다 작으면 상기 슬로우 스타트 단계를 수행하고, 상기 혼잡 윈도우 크기가 상기 슬로우 스타트 임계치보다 크거나 같은 경우, 상기 혼잡 윈도우 크기가 최대이면 컨스턴트 단계를 수행하고, 그렇지 않으면 혼잡 회피 단계를 수행하는 것을 특징으로 한다.In addition, if the packet loss does not occur, the present invention performs the slow start step if the congestion window size is less than the slow start threshold, the congestion window size is greater than the slow start threshold or In the same case, if the congestion window size is maximum, the constant step is performed; otherwise, the congestion avoidance step is performed.

이하, 상기와 같은 본 발명의 기술적 사상에 따른 실시예를 첨부된 도면을 참조하여 구체적으로 설명하면 다음과 같다.Hereinafter, embodiments of the present invention as described above will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 혼잡 제어 방법의 순서도이다.1 is a flowchart of a congestion control method according to an embodiment of the present invention.

도 1에 도시한 바와 같이, 본 발명의 실시예에 따른 혼잡 제어 방법은 송신측이 상기 혼잡 윈도우 크기만큼의 패킷을 전송하여 패킷 손실이 없고, 상기 혼잡 윈도우가 상기 슬로우 스타트 임계치 미만이면 슬로우 스타트 단계(S106)를 수행하고, 상기 혼잡 윈도우가 상기 슬로우 스타트 임계치 이상이면 상기 혼잡 윈도우의 크기를 선형적으로 증가시키는 혼잡 회피 단계(S108)와, 상기 혼잡 회피 단계(S108)에서 상기 혼잡 윈도우의 크기가 최대에 도달하면 상기 혼잡 윈도우의 크기를 최대로 유지하는 컨스턴트 단계(S109)와, 상기 송신측이 상기 혼잡 윈도우 크기만큼의 패킷을 전송하여 패킷 손실이 발생하면, 무선 환경의 특성에 의해 발생하는 비트에러와 혼잡에 의해 발생하는 손실을 구분하기 위하여 상기 혼잡 윈도우의 크기를 선형적으로 감소시키는 역혼잡 회피 단계(S103)와, 상기 송신측이 상기 혼잡 윈도우 크기만큼의 패킷을 전송하여 부정응답을 수신하면, 혼잡으로 인한 대역폭의 낭비를 최소화하기 위하여 상기 혼잡 윈도우의 크기가 절반이 될 때까지 상기 혼잡 윈도우의 크기를 감소시키는 슬로우 스톱 단계(S104)를 포함하여 구성된다.As shown in FIG. 1, in a congestion control method according to an embodiment of the present invention, if a transmitting side transmits a packet corresponding to the congestion window size, there is no packet loss, and a slow start step is performed if the congestion window is less than the slow start threshold. A congestion avoidance step (S108) of linearly increasing the size of the congestion window if the congestion window is greater than or equal to the slow start threshold, and the congestion avoidance step (S108) A constant step (S109) of maintaining the maximum size of the congestion window when the maximum is reached, and a packet loss caused by the transmitting side transmitting a packet as large as the congestion window size, Inversely reducing the size of the congestion window to distinguish between losses caused by bit errors and congestion Job avoidance step (S103), and when the transmitting side transmits a packet corresponding to the size of the congestion window and receives a negative response, until the size of the congestion window is half to minimize waste of bandwidth due to congestion; And a slow stop step S104 of reducing the size of the congestion window.

여기서, 상기 슬로우 스타트 단계, 혼합 회피 단계, 컨스턴트 단계에서 패킷 손실이 발생하면, 패킷 손실 개수에 따른 패킷 손실 정도에 의해 슬로우 스타트 단계(S102), 역혼잡 회피 단계(S103), 슬로우 스톱 단계(S104) 중 어느 하나를 수행한다. 반면에, 패킷의 손실이 발생하지 않으면 혼잡 윈도우와 슬로우 스타트 임계치를 비교하여 다음의 상태를 결정한다(S105). 즉, 패킷의 손실이 발생하지 않고(S101) 혼잡 윈도우의 크기가 슬로우 스타트 임계치보다 작으면(S105) 슬로우 스타트 단계를 수행하고(S106), 패킷의 손실이 발생하지 않고(S101) 혼잡 윈도우의 크기가 슬로우 스타트 임계치보다 작지 않고(S105) 혼잡 윈도우의 크기가 최대 혼잡 윈도우의 크기보다 작으면(S107) 혼잡 회피 단계를 수행하고(S110), 패킷의 손실이 발생하지 않고(S101) 혼잡 윈도우의 크기가 슬로우 스타트 임계치보다 작지 않고(S105) 혼잡 윈도우의 크기가 최대 혼잡 윈도우의 크기보다 작지 않으면(S107) 컨스턴트 단계를 수행한다(S109). 참고로, 여기서 최대 혼잡 윈도우 크기는 가장 많은 패킷을 전송할 수 있는 크기의 윈도우 상태를 의미한다.Here, if packet loss occurs in the slow start step, the mixed avoidance step, and the constant step, the slow start step (S102), the reverse congestion avoidance step (S103), and the slow stop step (depending on the packet loss amount according to the number of packet losses) Perform any one of S104). On the other hand, if no packet loss occurs, the next state is determined by comparing the congestion window and the slow start threshold (S105). That is, if no packet loss occurs (S101) and the size of the congestion window is smaller than the slow start threshold (S105), the slow start step is performed (S106), and no packet loss occurs (S101). Is not smaller than the slow start threshold (S105) and the size of the congestion window is smaller than the maximum congestion window (S107), the congestion avoidance step is performed (S110), and no packet loss occurs (S101). If is not smaller than the slow start threshold (S105) and the size of the congestion window is not smaller than the size of the maximum congestion window (S107) a constant step is performed (S109). For reference, the maximum congestion window size here means a window state of a size that can transmit the most packets.

한편, 상기 패킷 손실 정도는 증가된 혼잡 윈도우 크기에서 손실된 패킷 개수를 뺀 값을 의미한다. Meanwhile, the packet loss degree means a value obtained by subtracting the number of lost packets from the increased congestion window size.

이를 더 구체적으로 설명하면, 도 3에 도시한 바와 같이, i 구간의 혼잡 윈도우의 패킷 개수는 m개이고 손실된 패킷이 없으므로 ACK 벡터의 m비트는 모두 1로 채워진다. 그 결과 i+1 구간에서는 n개의 패킷 개수만큼 혼잡 윈도우가 증가하고 총 m+n개의 패킷을 전송한 후에 k개의 패킷이 손실된다. 이 손실은 i 구간에서 이미 무손실 전송을 확인했던 m개의 패킷이 아닌 n개의 패킷이 새로 증가하였기 때문에 발생한 것이다. 따라서 본 발명의 실시예에서는 패킷 손실 정도를 증가된 n개의 패킷에서 손실된 k개의 손실 패킷 개수를 감한 값으로 정의한다.More specifically, as shown in FIG. 3, since the number of packets of the congestion window in the interval i is m and no packets are lost, all m bits of the ACK vector are filled with one. As a result, the congestion window increases by the number of n packets in the i + 1 interval, and k packets are lost after transmitting a total of m + n packets. This loss is caused by a new increase in n packets instead of m packets which have already confirmed lossless transmission in interval i. Therefore, in the embodiment of the present invention, the degree of packet loss is defined as the value obtained by subtracting the number of k lost packets lost from n increased packets.

한편, 상기 두 개의 임계치(최대 혼잡 윈도우 임계치, 슬로우 스타트 임계치)는 게이트웨이 기반의 공평한 세션 관리를 위하여 다음과 같은 값으로 설정된다. 여기서, 슬로우 스타트 임계치는 단말의 혼잡 윈도우가 선형적 증가를 수행하는 혼잡 회피 단계로 전이하는 슬로우 스타트 단계의 한계를 의미한다. 이러한 임계치 값들은 게이트웨이에서 전체 세션들을 고려하여 구한다.On the other hand, the two thresholds (maximum congestion window threshold, slow start threshold) is set to the following values for fair session management based on the gateway. Here, the slow start threshold means a limit of a slow start step in which a congestion window of the terminal transitions to a congestion avoidance step of performing a linear increase. These threshold values are obtained by considering the entire sessions at the gateway.

Figure 112006095016113-pat00054
Figure 112006095016113-pat00054

여기서, T

Figure 112006095016113-pat00016
은 세션
Figure 112006095016113-pat00017
의 최대 혼잡 윈도우 임계치를 나타내고, N은 게이트웨이를 통해서 서비스 중인 모든 세션 수를 나타내고,
Figure 112006095016113-pat00055
는 게이트웨이의 최대 가용 윈도우 크기를 나타내고, W
Figure 112006095016113-pat00018
은 세션
Figure 112006095016113-pat00019
의 최대 수신 윈도우 크기를 나타낸다.Where T
Figure 112006095016113-pat00016
Session
Figure 112006095016113-pat00017
Denotes the maximum congestion window threshold of N, N denotes the number of all sessions in service through the gateway,
Figure 112006095016113-pat00055
Represents the maximum available window size of the gateway, W
Figure 112006095016113-pat00018
Session
Figure 112006095016113-pat00019
Represents the maximum receive window size.

상기의 수학식 1을 이용하여 게이트웨이 기반의 공평한 세션 관리를 위한 최대 혼잡 윈도우 임계치를 설정할 수 있다. Equation 1 may be used to set the maximum congestion window threshold for fair session management based on the gateway.

수학식 1을 참조하면, 최대 혼잡 윈도우 임계치는 게이트웨이의 최대 가용 윈도우 크기를 게이트웨이를 통해서 서비스중인 모든 세션 수로 나눈 값과 세션의 최대 수신 윈도우 크기 중에서 최소값으로 설정된다. 다시 말해서, 게이트웨이가 세션에 할당할 수 있는 최대 혼잡 윈도우 크기와 세션의 수신 윈도우 크기 중에서 최소값이 설정된다. 이러한 최대 혼잡 윈도우 임계치는 새로운 세션이 추가되거나 종료되면 그 때마다 그 값을 다시 설정한다. 이로써, 전체 세션에 대하여 공평한 관리가 이루어져 대역폭을 효율적으로 사용할 수 있게 된다.Referring to Equation 1, the maximum congestion window threshold is set to the minimum of the maximum available window size of the gateway divided by the number of all sessions being served through the gateway and the maximum received window size of the session. In other words, a minimum value is set between the maximum congestion window size that the gateway can allocate for the session and the reception window size of the session. This maximum congestion window threshold resets its value each time a new session is added or terminated. This makes it possible to manage the entire session fairly and to use the bandwidth efficiently.

Figure 112006095016113-pat00056
Figure 112006095016113-pat00056

여기서, T

Figure 112005043160957-pat00022
은 세션
Figure 112005043160957-pat00023
의 슬로우 스타트 임계치이고, T
Figure 112005043160957-pat00024
은 세션
Figure 112005043160957-pat00025
의 최대 혼잡 윈도우 임계치이고, N은 게이트웨이를 통해서 서비스 중인 모든 세션 수이고, W
Figure 112005043160957-pat00026
은 게이트웨이의 최대 가용 윈도우 크기이다.Where T
Figure 112005043160957-pat00022
Session
Figure 112005043160957-pat00023
Is the slow start threshold of T
Figure 112005043160957-pat00024
Session
Figure 112005043160957-pat00025
Is the maximum congestion window threshold of N, N is the number of all sessions in service through the gateway, W
Figure 112005043160957-pat00026
Is the maximum available window size of the gateway.

상기의 수학식 2를 이용하여 게이트웨이 기반의 공평한 세션 관리를 위한 슬로우 스타트 임계치를 설정할 수 있다. Using Equation 2 above, a slow start threshold for fair session management based on a gateway may be set.

수학식 2를 참조하면, 슬로우 스타트 임계치는 게이트웨이를 통해서 서비스 중인 모든 세션의 최대 혼잡 윈도우 임계치의 합이 게이트웨이의 최대 가용 윈도우 크기보다 작으면 최대 혼잡 윈도우 임계치로 설정되고, 그렇지 않으면 (1-

Figure 112005043160957-pat00027
)× T
Figure 112005043160957-pat00028
로 설정된다. 즉, 게이트웨이의 가용 윈도우에 여유가 있을 때는 T
Figure 112005043160957-pat00029
(최대 혼잡 윈도우 임계치)가 설정되고, 게이트웨이의 가용 윈도우에 여유가 없을 때는 (1-
Figure 112005043160957-pat00030
)× T
Figure 112005043160957-pat00031
가 설정된다. 이는 새로운 세션이 들어올 여유 폭을 미리 남겨두어서 혼잡을 사전에 방지하기 위한 것이다. 이러한 슬로우 스타트 임계치는 새로운 세션이 추가되면 수학식 2를 재계산하여 새로운 슬로우 스타트 임계치를 구한다. 이때, 혼잡에 의해서 패킷 손실이 발생하면, 슬로우 스타트 임계치를 최대 혼잡 윈도우 임계치의 절반으로 설정한다. 이로써, 트래픽이 매우 가변적인 무선 접속망에서 갑자기 많은 단말들이 접속함으로 인해 발생하는 혼잡을 효율적으로 제어할 수 있게 된다.Referring to Equation 2, the slow start threshold is set to the maximum congestion window threshold if the sum of the maximum congestion window thresholds of all sessions serving through the gateway is less than the maximum available window size of the gateway, otherwise (1-
Figure 112005043160957-pat00027
) × T
Figure 112005043160957-pat00028
Is set to. That is, if there is room in the available window of the gateway, T
Figure 112005043160957-pat00029
When (Maximum Congestion Window Threshold) is set, and there is no room in the available window of the gateway,
Figure 112005043160957-pat00030
) × T
Figure 112005043160957-pat00031
Is set. This is to prevent congestion in advance by leaving room for new sessions in advance. This slow start threshold is recalculated by Equation 2 when a new session is added to obtain a new slow start threshold. At this time, if packet loss occurs due to congestion, the slow start threshold is set to half of the maximum congestion window threshold. As a result, in a wireless access network where traffic is very variable, congestion caused by sudden access of many terminals can be efficiently controlled.

이와 같이, 게이트웨이는 게이트웨이 기반의 공평한 세션 관리를 위해서 최대 혼잡 윈도우 크기 및 슬로우 스타트 임계치를 설정한다. 따라서, 모든 단말들이 게이트웨이의 통제하에 있게 되어 효율적인 혼잡 제어를 수행할 수 있게 된다.As such, the gateway sets the maximum congestion window size and slow start threshold for gateway-based fair session management. Therefore, all terminals are under the control of the gateway, thereby enabling efficient congestion control.

이하에서는 본 발명의 실시예에 따른 혼잡 제어 방법의 각 단계의 수행 과정을 설명하기로 한다.Hereinafter, a process of performing each step of the congestion control method according to an embodiment of the present invention will be described.

참고로, 본 발명의 실시예에 따른 혼잡 제어 방법의 각 단계를 수행하는 과정에서 먼저 슬로우 스톱 플래그를 검사하게 된다. 슬로우 스톱 플래그는 현재 슬로우 스톱 단계를 수행하고 있는지의 여부를 나타내는 플래그로서, 그 값이 1인 경 우에 현재 슬로우 스톱 단계를 수행하고 있음을 나타낸다. 이와 같이 슬로우 스톱 플래그를 먼저 검사하는 이유는 만약 슬로우 스톱 플래그가 1의 값을 가져 슬로우 스톱 단계를 수행하는 경우, 혼잡 윈도우가 슬로우 스톱 이전 단계에서의 혼잡 윈도우 크기의 절반으로 감소하기 전까지 계속하여 이 슬로우 스톱 단계를 유지할 수 있도록 하기 위함이다.For reference, in the process of performing each step of the congestion control method according to an embodiment of the present invention, the slow stop flag is first examined. The slow stop flag is a flag indicating whether the current slow stop step is being performed. If the value is 1, the slow stop flag indicates that the slow stop step is being performed. The reason for checking the slow stop flag first is that if the slow stop flag has a value of 1 and performs the slow stop step, it continues until the congestion window is reduced to half the size of the congestion window from the step prior to the slow stop. This is to maintain the slow stop phase.

도 2a는 본 발명의 실시예에 따른 혼잡 제어 방법의 슬로우 스타트 단계의 수행 과정을 도시한 순서도로서, 슬로우 스타트 단계에서는 패킷의 손실이 발생하지 않으면 혼잡 윈도우의 크기에 따라서 슬로우 스타트 단계 -> 혼잡 회피 단계 -> 컨스턴트 단계를 차례로 수행하여 전송 가능한 패킷의 수를 증가시킨다. 반면에, 패킷의 손실이 발생하면 패킷의 손실 정도에 따라서 역혼잡 회피 단계 또는 슬로우 스톱 단계 또는 슬로우 스타트 단계를 수행한다.2A is a flowchart illustrating a slow start step of a congestion control method according to an exemplary embodiment of the present invention. In the slow start step, if packet loss does not occur, a slow start step → congestion avoidance depending on the size of a congestion window. Increase the number of packets that can be sent by following the steps-> constant steps. On the other hand, if a packet loss occurs, the reverse congestion avoidance step, the slow stop step, or the slow start step is performed according to the packet loss level.

도 2a에 도시한 바와 같이, 본 발명의 실시예에 따른 혼잡 제어 방법의 슬로우 스타트 단계는 패킷의 손실이 발생하면 먼저 슬로우 스톱 플래그를 검사하여 그 값이 0보다 큰 경우에는(S111) 슬로우 스톱 단계를 수행한다(S112). 반면에, 슬로우 스톱 플래그가 0보다 크지 않은 경우에는(S111) 패킷 손실 정도(p_loss)가 증가된 혼잡 윈도우 크기만큼의 패킷 개수의 절반(w_inc/2)보다 크거나 같고, 증가된 혼잡 윈도우 크기보다 작으면(w_inc/2<=p_loss<w_inc), 역혼잡 회피 단계를 수행하고(S114), 패킷 손실 정도(p_loss)가 증가된 혼합 윈도우 크기 절반보다 작고, 0보다 크면(0<p_loss<w_inc/2)(S115), 슬로우 스톱 단계를 수행하며(S112), 상기의 조건을 모두 만족하지 않으면, 혼잡 윈도우의 크기를 절반으로 감소시킨 후에(S116) 슬로우 스타트 단계를 수행한다(S117).As shown in FIG. 2A, the slow start step of the congestion control method according to the embodiment of the present invention first checks the slow stop flag when a packet loss occurs, and if the value is greater than zero (S111), a slow stop step. To perform (S112). On the other hand, if the slow stop flag is not greater than zero (S111), the packet loss degree (p_loss) is greater than or equal to half (w_inc / 2) of the number of packets by the increased congestion window size and greater than the increased congestion window size. If it is small (w_inc / 2 <= p_loss <w_inc), the congestion avoidance step is performed (S114), and if the packet loss degree (p_loss) is smaller than half of the increased mixed window size, and greater than 0 (0 <p_loss <w_inc / 2) (S115), the slow stop step is performed (S112), if all of the above conditions are not satisfied, the size of the congestion window is reduced to half (S116) and then the slow start step is performed (S117).

한편, 도 2b는 본 발명의 실시예에 따른 혼잡 제어 방법의 혼잡 회피 단계의 수행 과정을 도시한 순서도로서, 혼잡 회피 단계에서는 패킷 손실이 발생하지 않으면 혼잡 윈도우의 크기를 선형적으로 증가시키며, 패킷 손실이 발생하지 않고 혼잡 윈도우의 크기가 최대에 도달하면 컨스턴트 단계를 수행한다. 반면에 패킷의 손실이 발생하면 패킷의 손실 정도에 따라서 슬로우 스타트 단계나 슬로우 스톱 단계 혹은 역혼잡 회피 단계를 수행한다.2B is a flowchart illustrating a congestion avoidance step of the congestion control method according to an embodiment of the present invention. In the congestion avoidance step, if a packet loss does not occur, the size of the congestion window is linearly increased. If no loss occurs and the size of the congestion window reaches its maximum, a constant step is performed. On the other hand, if a packet is lost, a slow start step, a slow stop step, or a reverse congestion avoidance step is performed according to the packet loss level.

도 2b에 도시한 바와 같이, 본 발명의 실시예에 따른 혼잡 제어 방법의 혼잡 회피 단계는 패킷의 손실이 발생하면 먼저 슬로우 스톱 플래그를 검사하여 그 값이 0보다 큰 경우(S121)에는 슬로우 스톱 단계를 수행한다(S122). 반면에, 슬로우 스톱 플래그가 0보다 크지 않은 경우(S121)에는 패킷 손실 정도(p_loss)가 증가된 혼잡 윈도우 크기만큼의 패킷 개수(w_inc)보다 작고 0보다 크거나 같으면(0<=p_loss<w_inc)(S123), 역혼잡 회피 단계를 수행하고(S124), 패킷 손실 정도(p_loss)가 0보다 작고, 슬로우 스타트 임계치 만큼의 패킷 개수(ssthresh)에서 현재 혼잡 윈도우 크기 만큼의 패킷 개수(cwnd)를 뺀 값보다 크면(ssthresh-cwnd<p_loss<0)(S125), 슬로우 스톱 단계를 수행하며(S122), 상기의 조건을 모두 만족하지 않으면, 혼잡 윈도우의 크기를 절반으로 감소시킨 후에(S126) 슬로우 스타트 단계를 수행한다(S127).As shown in FIG. 2B, the congestion avoidance step of the congestion control method according to the embodiment of the present invention first checks the slow stop flag when a packet loss occurs, and if the value is greater than zero (S121), the slow stop step. To perform (S122). On the other hand, if the slow stop flag is not greater than 0 (S121), if the packet loss degree (p_loss) is smaller than the number of packets (w_inc) by the increased congestion window size and is greater than or equal to 0 (0 <= p_loss <w_inc) In step S123, the congestion avoidance step is performed (S124), and the packet loss degree (p_loss) is less than 0, and the packet count (cws) corresponding to the current congestion window size is subtracted from the packet count (ssthresh) by the slow start threshold. If greater than the value (ssthresh-cwnd <p_loss <0) (S125), the slow stop step is performed (S122). If all of the above conditions are not satisfied, the size of the congestion window is reduced to half (S126) and then the slow start is performed. Step S127 is performed.

한편, 도 2c는 본 발명의 실시예에 따른 혼잡 제어 방법의 컨스턴트 단계의 수행 과정을 도시한 순서도로서, 본 발명의 실시예에 따른 혼잡 제어 방법의 컨스턴트 단계는 상기 혼잡 회피 단계의 연장 단계, 즉 패킷의 손실이 발생하지 않고, 혼잡 회피 단계에서 혼잡 윈도우가 최대 혼잡 윈도우에 이르렀을 때 수행되는 단계이다.2C is a flowchart illustrating a process of performing a constant step of a congestion control method according to an embodiment of the present invention. The constant step of the congestion control method according to an embodiment of the present invention is an extension step of the congestion avoidance step. In other words, the packet loss does not occur, and the congestion avoidance step is performed when the congestion window reaches the maximum congestion window.

삭제delete

도 2c에 도시한 바와 같이, 본 발명의 실시예에 따른 혼잡 제어 방법의 컨스턴트 단계는 패킷 손실이 발생하면, 먼저 슬로우 스톱 플래그를 검사하여 그 값이 0보다 큰 경우(S131)에는 슬로우 스톱 단계를 수행한다(S132). 반면에, 슬로우 스톱 플래그가 0보다 크지 않은 경우(S131)에는 패킷 손실 정도(p_loss)가 -1보다 크거나 같고 0보다 작으면(-1<=p_loss<0)(S133), 역혼잡 회피 단계를 수행하고(S134), 패킷 손실 정도(p_loss)가 -1보다 작고 슬로우 스타트 임계치 만큼의 패킷 개수(ssthresh)에서 최대 혼잡 윈도우 임계치 만큼의 패킷 개수(maxthresh)를 뺀 값보다 크면(ssthresh-maxthresh<p_loss<-1)(S135), 슬로우 스톱 단계를 수행하며(S132), 상기의 조건을 모두 만족하지 않으면, 혼잡 윈도우의 크기를 절반으로 감소시킨 후에(S136) 슬로우 스타트 단계를 수행한다(S137).As shown in FIG. 2C, when the packet loss occurs, the constant step of the congestion control method according to the embodiment of the present invention first checks the slow stop flag, and if the value is greater than 0 (S131), the slow stop step. To perform (S132). On the other hand, when the slow stop flag is not greater than 0 (S131), if the packet loss degree (p_loss) is greater than or equal to -1 and less than 0 (-1 <= p_loss <0) (S133), the reverse congestion avoiding step (S134), if the packet loss degree (p_loss) is less than -1 and is greater than the packet count (ssthresh) by the slow start threshold minus the packet count (maxthresh) by the maximum congestion window threshold (ssthresh-maxthresh < p_loss <-1) (S135), the slow stop step is performed (S132), if all of the above conditions are not satisfied, the size of the congestion window is reduced to half (S136) and then the slow start step is performed (S137). .

이와 같은 상기 슬로우 스타트 단계, 혼잡 회피 단계 및 컨스턴트 단계는 패킷 손실 시 혼잡의 정도에 따라서 슬로우 스타트 단계, 역혼잡 회피 단계 또는 슬로우 스톱 단계를 수행한다. 즉, 슬로우 스타트 단계, 혼잡 회피 단계 및 컨스턴트 단계는 패킷 손실이 발생할 경우, 증가된 혼잡 윈도우 크기만큼의 패킷 개수에서 패킷 손실 개수를 뺀 값인 패킷 손실 정도에 따라서 각각 슬로우 스타트 단계, 역혼잡 회피 단계, 슬로우 스톱 단계 중 어느 하나의 단계를 수행한다. The slow start step, congestion avoidance step and constant step perform a slow start step, a reverse congestion avoidance step or a slow stop step depending on the degree of congestion at the time of packet loss. That is, the slow start step, congestion avoidance step, and constant step are each a slow start step and a reverse congestion avoidance step according to the packet loss degree, which is a value obtained by subtracting the packet loss count from the packet count corresponding to the increased congestion window size when packet loss occurs. To perform any one of the steps, slow stop.

이하에서는 혼잡 윈도우의 크기를 증가시키거나 유지하는 단계가 아닌, 혼잡을 효율적으로 처리하기 위해 혼잡 윈도우의 크기를 감소시키는 역혼잡 회피 단계와 슬로우 스톱 단계에 대해서 설명하기로 한다. Hereinafter, the reverse congestion avoidance step and the slow stop step of reducing the size of the congestion window in order to efficiently handle the congestion, rather than increasing or maintaining the size of the congestion window, will be described.

여기서, 상기 역혼잡 회피 단계 또는 슬로우 스톱 단계는 패킷 손실이 발생하지 않은 때에는 수행되지 않는 단계이며, 패킷 손실이 발생한 때에만 수행되는 단계이다. Here, the congestion avoidance step or the slow stop step is not performed when packet loss does not occur, and is performed only when packet loss occurs.

도 2d는 본 발명의 실시예에 따른 혼잡 제어 방법의 역혼잡 회피 단계의 수행 과정을 도시한 순서도로서, 역혼잡 회피 단계에서는 혼잡 윈도우의 크기를 1씩 감소시키면서 현재의 손실 상태가 무선망의 특성에 의한 비트 에러인지 혼잡에 의한 패킷 손실인지를 구분한다. 따라서, 역혼잡 회피 단계는 역혼잡 회피 단계 이전 단계에서 발생한 패킷 손실에 따른 혼잡을 제어한다.2d is a flowchart illustrating a process of performing a congestion avoidance step of a congestion control method according to an embodiment of the present invention. In the reverse congestion avoidance step, a current loss state is a characteristic of a wireless network while decreasing the size of a congestion window by one. It distinguishes between bit error caused by packet loss and packet loss caused by congestion. Therefore, the congestion avoidance step controls congestion due to packet loss occurring in the step before the congestion avoidance step.

도 2d에 도시한 바와 같이, 본 발명의 실시예에 따른 혼잡 제어 방법의 역혼잡 회피 단계는 패킷의 손실이 발생하면 먼저 슬로우 스톱 플래그를 검사하여 그 값이 0보다 큰 경우(S141)에는 슬로우 스톱 단계를 수행한다(S142). 반면에, 슬로우 스톱 플래그가 0보다 크지 않은 경우(S141)에는 손실된 패킷 개수가 0이면(nack=0)(S143), 역혼잡 회피 단계 이전 단계를 수행하고(S144), 손실된 패킷 개수가 1이면(nack=1)(S145), 역혼잡 회피 단계를 수행하며(S146), 손실된 패킷 개수가 역혼잡 회피 단계 이전 단계의 손실된 패킷 개수보다 작거나 같으면(nack<=pre_rca_nack)(S147), 슬로우 스톱 단계를 수행하고(S142), 상기 조건을 모두 만족하지 않으면, 혼잡 윈도우의 크기를 절반으로 감소시킨 후에(S148) 슬로우 스타트 단계를 수행한다(S149).As shown in FIG. 2D, the congestion avoidance step of the congestion control method according to an embodiment of the present invention first checks the slow stop flag when a packet loss occurs, and if the value is greater than zero (S141), a slow stop is performed. To perform the step (S142). On the other hand, if the slow stop flag is not greater than zero (S141), if the number of packets lost is zero (nack = 0) (S143), the previous step of the decongestion avoidance step is performed (S144), and the number of lost packets is If 1 (nack = 1) (S145), the reverse congestion avoidance step is performed (S146), and if the number of lost packets is less than or equal to the number of lost packets from the step before the decongestion avoidance step (nack <= pre_rca_nack) (S147) In step S142, if the above conditions are not satisfied, the size of the congestion window is reduced to half (S148), and then the slow start step is performed (S149).

한편, 도 2e는 본 발명의 실시예에 따른 혼잡 제어 방법의 슬로우 스톱 단계의 수행 과정을 도시한 순서도로서, 슬로우 스톱 단계에서는 패킷의 손실이 작을 때, 즉 혼잡 정도가 약할 때 혼잡으로 인해서 대역폭이 낭비되는 것을 최소화한다. Meanwhile, FIG. 2E is a flowchart illustrating a slow stop step of the congestion control method according to an embodiment of the present invention. In the slow stop step, when the packet loss is small, that is, when the degree of congestion is low, bandwidth is increased due to congestion. Minimize waste.

도 2e에 도시한 바와 같이, 본 발명의 실시예에 따른 혼잡 제어 방법의 슬로우 스톱 단계는 먼저 슬로우 스톱 플래그를 검사하여 그 값이 0보다 큰 경우(S151)에는 슬로우 스톱 단계를 수행하고(S152), 슬로우 스톱 플래그가 0보다 크지 않은 경우(S151)에는 혼잡 회피 단계를 수행한다(S153). 다시 말해서, 슬로우 스톱 단계는 혼잡 윈도우의 크기가 절반이 될 때까지 슬로우 스톱 플래그를 1로 설정하여 혼잡 윈도우의 크기를 지수적으로 감소시킴으로써 슬로우 스톱 단계를 유지하며, 슬로우 스톱 단계의 진행중 추가적으로 에러가 발생할 경우에는 에러의 발생횟수를 지수적으로 가중치 적용하여 감소폭을 증가시키게 된다. 그리고 혼잡 윈도우의 크기가 절반이 되어 슬로우 스톱 단계가 끝나면 슬로우 스톱 플래그를 0으로 설정한 후에 혼잡 회피 단계를 수행한다.As shown in FIG. 2E, the slow stop step of the congestion control method according to the embodiment of the present invention first checks the slow stop flag, and if the value is greater than zero (S151), performs a slow stop step (S152). If the slow stop flag is not greater than zero (S151), a congestion avoidance step is performed (S153). In other words, the slow stop phase maintains the slow stop phase by exponentially reducing the size of the congestion window by setting the slow stop flag to 1 until the size of the congestion window is half the size of the congestion window. In case of occurrence, the decrease is increased by exponentially weighting the number of occurrences of the error. When the congestion window is half the size and the slow stop step is completed, the congestion avoidance step is performed after setting the slow stop flag to zero.

이와 같은 본 발명의 실시예에 따른 혼잡 제어 방법은 도 4에 도시한 바와 같이, 게이트웨이(200)는 베이스 스테이션(210, 220, 230)이 공평하게 세션을 관리할 수 있도록 임계치를 설정함으로써, 베이스 스테이션(210, 220, 230)에 연결되는 단말(240)이 이동하면서 데이터를 전송할 때에도 베이스 스테이션(210, 220, 230)에 혼잡이 일어나지 않도록 한다. 이렇게 설정된 임계치를 통하여 게이트웨이(200)는 패킷 손실 및 지연은 물론, 모든 단말들(240)이 전송과정에서 얻게 되는 혼잡 윈도우의 크기를 알 수 있으며, 현재 게이트웨이(200)가 서비스하고 있는 모든 단말들(240)의 전송 윈도우 총 크기도 알 수 있다. 따라서 패킷 손실과 지연뿐만 아니라 게이트웨이(200)가 관찰하는 각 단말(240)의 윈도우 크기와 게이트웨이(200)의 가용 윈도우 크기를 동시에 고려하여 공평하고 효율적인 혼잡 제어를 수행할 수 있게 된다.In the congestion control method according to the embodiment of the present invention as shown in FIG. 4, the gateway 200 sets a threshold value so that the base stations 210, 220, and 230 manage sessions fairly. Congestion does not occur in the base station 210, 220, 230 even when the terminal 240 connected to the station 210, 220, 230 moves while transmitting data. In this way, the gateway 200 may know the packet loss and delay, as well as the size of the congestion window that all the terminals 240 obtain in the transmission process, and all terminals currently serviced by the gateway 200. The total transmission window size of 240 may also be known. Therefore, it is possible to perform a fair and efficient congestion control by considering not only packet loss and delay but also the window size of each terminal 240 observed by the gateway 200 and the available window size of the gateway 200.

참고로, 상기 각 단계(슬로우 스타트 단계, 혼잡 회피 단계, 컨스턴트 단계, 역혼잡 회피 단계, 슬로우 스톱 단계)를 수행한 후에는 송신측은 데이터 패킷에 바뀐 혼잡 윈도우 크기를 변화 옵션(change option)으로 추가하여 전송하고, 수신측은 긍정응답률(ack ratio)을 게이트웨이에서 전송한 변화 옵션(change option)의 값으로 바꾸고 이 수만큼의 패킷을 받을 때까지 대기한 후, 변화된 긍정응답률(ack ratio)만큼 패킷을 수신한 후에 다시 ACK 벡터를 송신측에 전송한다. For reference, after performing each of the above steps (slow start step, congestion avoidance step, constant step, reverse congestion avoidance step, slow stop step), the sender changes the congestion window size changed in the data packet to a change option. In addition, the receiving side changes the ack ratio to the value of the change option transmitted from the gateway, waits until receiving the number of packets, and then changes the packet to the changed ack ratio. After receiving, the ACK vector is transmitted to the transmitting side again.

본 발명은 손실 발생 시 무선 환경의 특성에 의해서 발생하는 비트 에러에 의한 손실과 혼잡에 의한 손실을 구분하기 위하여 혼잡 윈도우의 크기를 선형적으로 감소시킴으로써 전체적인 대역폭 이용률을 향상시키고, 약간의 혼잡 발생 시 혼잡 윈도우의 크기를 절반이 될 때까지 지수적으로 감소시키면서, 감소되는 과정 속에서 추가적인 에러 발생 시 에러의 발생횟수를 지수적으로 가중치시켜 감소시킴으로써, 혼잡 윈도우 크기를 큰 폭으로 감소시켜 발생하는 대역폭의 낭비를 방지하면서, 혼잡으로 인한 상황과 비트 에러에 의한 손실을 판단하여 대역폭을 효율적으로 관리할 수 있게 한다.The present invention improves overall bandwidth utilization by linearly reducing the size of the congestion window in order to distinguish between loss due to bit error and loss due to congestion caused by the characteristics of the wireless environment when loss occurs. Bandwidth generated by drastically reducing the size of the congestion window by exponentially reducing the size of the congestion window by half, while exponentially weighting the number of occurrences of the error when additional errors occur in the decreasing process. It is possible to efficiently manage the bandwidth by judging the situation caused by congestion and the loss due to bit error while preventing waste of data.

또한, 본 발명은 게이트웨이가 전체 단말의 세션을 통합적으로 관리함으로써 전체 단말의 세션에 대하여 공평하게 관리할 수 있다.In addition, according to the present invention, the gateway can manage the sessions of all terminals in an integrated manner.

또한, 본 발명은 게이트웨이가 모든 혼잡 제어에 관한 기능을 수행하므로 단말은 데이터를 수신하고 Ack 벡터를 포함하는 응답 메시지를 전송하는 단순한 기능만을 가진 전송계층 프로토콜 스택을 가짐으로써, 전체적인 단말의 부담을 감소시켜 단말의 성능을 향상시킬 수 있다.In addition, in the present invention, since the gateway performs all congestion control functions, the terminal has a transport layer protocol stack having only a simple function of receiving data and transmitting a response message including an Ack vector, thereby reducing the overall burden on the terminal. The performance of the terminal can be improved.

Claims (9)

패킷 손실 여부에 따라서 혼잡 윈도우의 크기를 증가시키거나 감소시켜 혼잡을 제어하는 방법에 있어서,In the method of controlling the congestion by increasing or decreasing the size of the congestion window according to the packet loss, 송신측이 상기 혼잡 윈도우 크기만큼의 패킷을 전송하여 패킷 손실이 발생하지 않으면, 상기 혼잡 윈도우의 크기를 지수적으로 증가시키는 슬로우 스타트 단계와;A slow start step of exponentially increasing the size of the congestion window if a transmitting side transmits the packet as large as the congestion window and no packet loss occurs; 상기 슬로우 스타트 단계에서 상기 혼잡 윈도우가 상기 슬로우 스타트 임계치 미만이면 상기 슬로우 스타트 단계를 반복 수행하고, 상기 혼잡 윈도우가 상기 슬로우 스타트 임계치 이상이면 상기 혼잡 윈도우의 크기를 선형적으로 증가시키는 혼잡 회피 단계와;A congestion avoidance step of repeating the slow start step if the congestion window is less than the slow start threshold in the slow start step and linearly increasing the size of the congestion window if the congestion window is above the slow start threshold; 상기 혼잡 회피 단계에서 상기 혼잡 윈도우의 크기가 최대 혼잡 윈도우에 도달하면 상기 혼잡 윈도우의 크기를 최대로 유지하는 컨스턴트 단계와;A constant step of maintaining the maximum size of the congestion window when the size of the congestion window reaches a maximum congestion window in the congestion avoidance step; 상기 송신측이 상기 슬로우 스타트, 혼잡 회피, 컨스턴트 단계에서 각 단계별 혼잡 윈도우 크기만큼의 패킷을 전송하여 패킷 손실이 발생하면, 무선 환경의 특성에 의해 발생하는 비트에러와 혼잡에 의해 발생하는 손실을 구분하기 위하여 상기 혼잡 윈도우의 크기를 선형적으로 감소시켜 비트에러로 판명되면 에러 발생 이전단계로 회귀시키고, 혼잡으로 판명될 경우 혼잡 정도에 따라 뒤에서 설명할 슬로우 스톱 단계와 앞에서 설명한 슬로우 스타트 단계 중 한 단계로 전이되는 역혼잡 회피 단계와;When the transmitting side transmits a packet corresponding to the size of the congestion window in each step in the slow start, congestion avoidance, and constant phase, if packet loss occurs, the loss caused by the bit error and congestion caused by the characteristics of the wireless environment is eliminated. In order to distinguish the congestion window, the size of the congestion window is linearly reduced, and if it is found to be a bit error, the process returns to the previous stage of error occurrence. A reverse congestion avoiding step transitioned to the step; 상기 역혼잡 회피 단계에서 에러 발생 원인이 혼잡으로 판명되면, 대역폭 낭비를 최소화하면서 혼잡을 제어하기 위해 혼잡 윈도우의 크기를 현재 혼잡 윈도우 크기의 절반이 될 때까지 지수적으로 감소시키고, 혼잡 윈도우 크기 감소과정 중에 에러 발생이 추가적으로 발생하면, 2(에러 발생횟수)만큼 기존 감소폭에 곱하여 혼잡 윈도우 크기를 감소시켜 빠르게 혼잡을 제어할 수 있는 슬로우 스톱 단계를 포함하여 이루어지고, If the cause of the error is found to be congestion in the congestion avoidance step, the size of the congestion window is exponentially reduced to half of the current congestion window size and the congestion window size is reduced in order to control the congestion while minimizing wasting bandwidth. If an additional error occurs during the process, a slow stop step is performed to control congestion quickly by reducing the size of the congestion window by multiplying the existing reduction by 2 (number of errors) . 상기 슬로우 스타트, 혼잡회피, 컨스턴트 단계에서 패킷손실이 발생될 때, 각 단계별로 식 1), 식 2), 식 3)과 같이 혼잡 제어 단계가 전이되어 수행하는 것을 특징으로 하는 혼잡 제어 방법.When the packet loss occurs in the slow start, congestion avoidance, and the constant step, the congestion control method is performed by transferring the congestion control step as shown in Equation 1), Equation 2), Equation 3) in each step. 식 1) 슬로우 스타트 단계에서 패킷 손실에 따른 혼잡 제어 단계 전이식Equation 1) Congestion Control Phase Transition According to Packet Loss in Slow Start Phase
Figure 112006095016113-pat00057
Figure 112006095016113-pat00057
식 2) 혼잡 회피 단계에서 패킷 손실에 따른 혼잡 제어 단계 전이식Equation 2) Congestion Control Stage Transition Formula According to Packet Loss in Congestion Avoidance Stage
Figure 112006095016113-pat00058
Figure 112006095016113-pat00058
식 3) 컨스턴트 단계에서 패킷 손실에 따른 혼잡 제어 단계 전이식Equation 3) Congestion Control Phase Transition According to Packet Loss in Constant Phase
Figure 112006095016113-pat00059
Figure 112006095016113-pat00059
Figure 112006095016113-pat00060
: 패킷 손실 정도
Figure 112006095016113-pat00060
Packet loss
Figure 112006095016113-pat00061
: 세션 i의 현재 혼잡 윈도우 크기
Figure 112006095016113-pat00061
: Current Congestion Window Size in Session i
Figure 112006095016113-pat00062
: 세션 i의 증가된 혼잡 윈도우 크기
Figure 112006095016113-pat00062
: Increased Congestion Window Size in Session i
Figure 112006095016113-pat00063
: 세션 i의 최대 혼잡 윈도우 임계치
Figure 112006095016113-pat00063
: Maximum Congestion Window Threshold for Session i
Figure 112006095016113-pat00064
: 세션 i의 슬로우 스타트 임계치
Figure 112006095016113-pat00064
: Slow Start Threshold in Session i
제 1 항에 있어서, The method of claim 1, 상기 패킷 손실 정도는 증가된 혼잡 윈도우 크기만큼의 패킷 개수에서 패킷 손실 개수를 뺀 값인 것을 특징으로 하는 혼잡 제어 방법.The packet loss degree is a congestion control method, characterized in that the number of packets as much as the increased congestion window size minus the number of packet loss. 삭제delete 삭제delete 삭제delete 제 1 항에 있어서, 상기 역혼잡 회피 단계는,The method of claim 1, wherein the congestion avoidance step, 슬로우 스타트 단계, 혼잡 회피 단계, 컨스턴트 단계에서 패킷 손실이 발생하고, 제 1 항의 식 1) ~ 식 3)을 사용하여 패킷 손실 정도가 큰 경우가 아닐 경우, 상기 각 단계별로 실제 혼잡인지, 무선 환경의 특성에 따른 비트에러인지의 여부를 통해 혼잡 윈도우 크기 및 혼잡 제어 단계를 식 4)를 사용하여 제어하는 것을 특징으로 하는 혼잡 제어 방법.If packet loss occurs in the slow start phase, congestion avoidance phase, and constant phase, and the packet loss degree is not large by using Equation 1) to Equation 3), whether the packet is actually congested in each step, A congestion control method characterized by controlling the congestion window size and the congestion control step using Equation 4) whether or not it is a bit error according to the characteristics of the environment. 식 4)Equation 4
Figure 112006095016113-pat00065
Figure 112006095016113-pat00065
Figure 112006095016113-pat00066
: 역혼잡 회피 단계에서 손실된 패킷 수
Figure 112006095016113-pat00066
: Number of packets lost in the congestion avoidance phase
Figure 112006095016113-pat00067
: 역혼잡 회피 단계로 전이되기 전의 단계에서 손실된 패킷 수
Figure 112006095016113-pat00067
: Number of packets lost in the stage before transitioning to the congestion avoidance phase
제 1 항에 있어서, 상기 슬로우 스톱 단계는,The method of claim 1, wherein the slow stop step, 슬로우 스타트 단계, 혼잡 회피 단계, 컨스턴트 단계에서 패킷 손실이 발생하고, 제 1 항의 식 1) ~ 식 3)을 사용하여 패킷 손실 정도가 클 경우, 실제 혼잡 상황으로 판명하고 혼잡 윈도우 크기를 식 5)를 사용하여 제어하는 것을 특징으로 하는 혼잡 제어 방법.If packet loss occurs in the slow start phase, congestion avoidance phase, and constant phase, and the packet loss degree is large using Equation 1) to Equation 3), it is proved to be a real congestion situation and the congestion window size is expressed by Equation 5 Congestion control method characterized in that the control using. 식 5)Equation 5)
Figure 112006095016113-pat00068
Figure 112006095016113-pat00068
Figure 112006095016113-pat00069
: 현재 혼잡 윈도우 크기
Figure 112006095016113-pat00069
: Current Congestion Window Size
Figure 112006095016113-pat00070
: 슬로우 스톱 단계로 전이되기 전의 혼잡 윈도우 크기
Figure 112006095016113-pat00070
: Congestion window size before transition to slow stop
Figure 112006095016113-pat00071
: 슬로우 스톱 단계 종료 이후의 혼잡 윈도우 크기
Figure 112006095016113-pat00071
: Congestion Window Size After Slow Stop Phase Ends
Figure 112006095016113-pat00072
: 슬로우 스톱 단계의 진행 횟수 (초기값 : 0)
Figure 112006095016113-pat00072
: Number of times of slow stop step progress (default: 0)
Figure 112006095016113-pat00073
: 슬로우 스톱 단계 진행 중의 에러 발생 횟수 (초기값 : 0)
Figure 112006095016113-pat00073
: Number of error occurrences during the slow stop phase (initial value: 0)
제 1 항에 있어서,The method of claim 1, 상기 혼잡 윈도우 크기의 최대값을 나타내는 최대 혼잡 윈도우 임계치 및 슬로우 스타트 단계에서 혼잡 회피 단계로의 진입값을 나타내는 상기 슬로우 스타트 임계치는 게이트웨이 기반의 공평한 세션 관리를 위하여 식 6)에 의해 계산된 값으로 설정되는 것을 특징으로 하는 혼잡 제어 방법.The maximum congestion window threshold indicating the maximum value of the congestion window size and the slow start threshold indicating the entry value from the slow start step to the congestion avoidance step are set to values calculated by Equation 6) for fair session management based on the gateway. Congestion control method characterized in that. 식 6)(6)
Figure 112006095016113-pat00074
: 최대 혼잡 윈도우 설정식
Figure 112006095016113-pat00074
: Maximum congestion window setting formula
Figure 112006095016113-pat00075
: 슬로우 스타트 임계치 설정식
Figure 112006095016113-pat00075
: Slow start threshold setting formula
Figure 112006095016113-pat00076
: 게이트웨이를 통해서 서비스 중인 모든 세션 수
Figure 112006095016113-pat00076
: All sessions in service through the gateway
Figure 112006095016113-pat00077
: 게이트웨이의 최대 가용 윈도우 크기
Figure 112006095016113-pat00077
: Maximum Available Window Size of Gateway
Figure 112006095016113-pat00078
: 세션 i의 최대 수신 윈도우 크기
Figure 112006095016113-pat00078
: Maximum receive window size for session i
삭제delete
KR1020050071403A 2005-08-04 2005-08-04 Congestion control method KR100672979B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050071403A KR100672979B1 (en) 2005-08-04 2005-08-04 Congestion control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050071403A KR100672979B1 (en) 2005-08-04 2005-08-04 Congestion control method

Publications (1)

Publication Number Publication Date
KR100672979B1 true KR100672979B1 (en) 2007-01-22

Family

ID=38014538

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050071403A KR100672979B1 (en) 2005-08-04 2005-08-04 Congestion control method

Country Status (1)

Country Link
KR (1) KR100672979B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101334990B1 (en) * 2012-03-06 2013-12-02 서강대학교산학협력단 Congestion window control method in Transmission Control Protocol

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010058119A (en) * 1999-12-24 2001-07-05 이계철 Congestion control method of TCP Vegas
WO2001097438A2 (en) 2000-06-14 2001-12-20 Nokia Inc. Performance enhancement of transmission control protocol (tcp) for wireless network applications
KR20020093543A (en) * 2001-06-09 2002-12-16 주식회사 하이닉스반도체 Method for controling multi-packet loss
US6646987B1 (en) 1998-10-05 2003-11-11 Nortel Networks Limited Method and system for transmission control protocol (TCP) packet loss recovery over a wireless link
KR20040027176A (en) * 2002-09-27 2004-04-01 주식회사 케이티 congestion control method over wireless link
KR20050111194A (en) * 2004-05-21 2005-11-24 삼성전자주식회사 Method for transmitting data in mobile ad hoc network and network apparatus using the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6646987B1 (en) 1998-10-05 2003-11-11 Nortel Networks Limited Method and system for transmission control protocol (TCP) packet loss recovery over a wireless link
KR20010058119A (en) * 1999-12-24 2001-07-05 이계철 Congestion control method of TCP Vegas
WO2001097438A2 (en) 2000-06-14 2001-12-20 Nokia Inc. Performance enhancement of transmission control protocol (tcp) for wireless network applications
KR20020093543A (en) * 2001-06-09 2002-12-16 주식회사 하이닉스반도체 Method for controling multi-packet loss
KR20040027176A (en) * 2002-09-27 2004-04-01 주식회사 케이티 congestion control method over wireless link
KR20050111194A (en) * 2004-05-21 2005-11-24 삼성전자주식회사 Method for transmitting data in mobile ad hoc network and network apparatus using the same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1020010058119

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101334990B1 (en) * 2012-03-06 2013-12-02 서강대학교산학협력단 Congestion window control method in Transmission Control Protocol

Similar Documents

Publication Publication Date Title
US6646987B1 (en) Method and system for transmission control protocol (TCP) packet loss recovery over a wireless link
CN107508655B (en) Self-adaptive end-to-end network coding transmission method
US7706269B2 (en) Method, system and device for controlling a transmission window size
EP2979514B1 (en) Transmission control protocol in long term evolution radio access network
KR100526187B1 (en) Method of obtaining the optimum rate control in mobile ad hoc network circumstance
JP4878391B2 (en) Scheduling and queue management with adaptive queue latency
CN101854738B (en) Transmission control protocol method for satellite network
US7821924B2 (en) Method and apparatus for timeout reduction and improved wireless network performance by delay injection
EP1653678A2 (en) TCP flow controlling method in high-speed mobile communications network
US20050002412A1 (en) Method and system of retransmission
US20220295340A1 (en) Video pacing based on radio conditions
CN108111434A (en) A kind of aeronautical Ad hoc networks method for reliable transmission based on reliable UDP and fountain codes
KR20170097129A (en) Data transmission method and apparatus
US10524175B2 (en) Data transmission method and network device
CN106471847B (en) Method and apparatus for communicating data communication sessions between radio access networks
Najm et al. Improvement of SCTP congestion control in the LTE-A network
KR100672979B1 (en) Congestion control method
RU2340119C2 (en) Method of adjusting transmit window size on radio channel control level
CN117676695A (en) TCP transmission method, device and system
JP2011155406A (en) Transmitter, transmission method and program
CN113347681B (en) Data transmission method and device, storage medium and electronic device
CN113424578B (en) Acceleration method and device for transmission control protocol
Hsieh et al. Transport over wireless networks
US7154850B1 (en) Wireless data transmission using time out control
KR20080044797A (en) Methods and apparatus for optimizing a tcp session for a wireless network

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110104

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee