KR20060100512A - 전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템 - Google Patents

전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템 Download PDF

Info

Publication number
KR20060100512A
KR20060100512A KR1020050022064A KR20050022064A KR20060100512A KR 20060100512 A KR20060100512 A KR 20060100512A KR 1020050022064 A KR1020050022064 A KR 1020050022064A KR 20050022064 A KR20050022064 A KR 20050022064A KR 20060100512 A KR20060100512 A KR 20060100512A
Authority
KR
South Korea
Prior art keywords
bandwidth
current
arrival time
ack
previous
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.)
Ceased
Application number
KR1020050022064A
Other languages
English (en)
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 KR1020050022064A priority Critical patent/KR20060100512A/ko
Priority to US11/377,719 priority patent/US20060209838A1/en
Publication of KR20060100512A publication Critical patent/KR20060100512A/ko
Ceased legal-status Critical Current

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
    • 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/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • 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/0852Delays

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

본 발명은 데이터 전송률이 빠르게 변하는 유무선 통신 네트워크에서 평균 대역폭을 추정하는 대역폭 추정 방안에 대한 것으로서, 이는 TCP(Transmission Control Protocol) 기반의 네트워크에서 평균 대역폭 추정 방법에 있어서, 현재 애크(Ack)와 이전 애크의 도달 시간차와 시퀀스 번호 차를 구하는 과정과, 이전 추정 대역폭과 현재 애크에 의한 샘플 대역폭을 계산하는 과정과, 상기 현재 애크의 도달 시간과 이전 애크의 도달 시간을 비교하는 과정과, 상기 비교 결과에 따라 상기 이전 추정 대역폭과 현재 샘플 대역폭에 각각 곱해지는 제1 및 제2 가중치의 비율을 결정하는 과정과, 상기 제1 및 제2 가중치가 적용된 이전 추정 대역폭과 현재 샘플 대역폭을 이용하여 현재 추정 대역폭을 산출하는 과정을 포함함을 특징으로 한다.
대역폭, TCP, 추정, 전송률, 가중치, Ack

Description

전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정 방법 및 시스템{METHOD AND SYSTEM FOR ESTIMATING AVERAGE BANDWIDTH IN A COMMUNICATION NETWORK BASED ON TRANSMISSION CONTROL PROTOCOL}
도 1은 TCP 기반의 네트워크에서 혼잡 제어 과정을 도시한 도면
도 2는 본 발명이 적용되는 TCP 기반의 네트워크 구성을 간략히 도시한 도면
도 3은 본 발명에 따른 TCP 기반의 네트워크에서 평균 대역폭 추정 과정을 도시한 순서도
본 발명은 전송제어 프로토콜(Transmission Control Protocol : TCP)을 사용하는 유무선 통신 네트워크의 대역폭 추정 방법 및 시스템에 대한 것으로서, 특히 데이터 전송률이 빠르게 변하는 유무선 통신 네트워크에서 평균 대역폭을 추정하는 대역폭 추정 방법 및 시스템에 대한 것이다.
인터넷을 통해 데이터를 전송하기 위한 프로토콜로서, 인터넷 표준화 단체인 IETF(Internet Engineering Task Force)에 의해 발행된 RFC(Request For Comments) 793은 전송제어 프로토콜(Transmission Control Protocol : TCP)을 규정하고 있다. 상기 TCP는 인터넷에 접속된 노드들간에 송수신되는 데이터를 패킷의 형태로 전송하기 위해 사용된다. 이러한 TCP는 네트워크 계층의 인터넷 프로토콜(Internet Protocol : IP)에 대한 상위에서 트랜스포트 계층(Transport Layer)의 프로토콜로서 동작하기 때문에, 통상의 경우 TCP/IP라 표기한다.
TCP는 사용자 데이터그램 프로토콜(User Datagram Protocol : UDP)과 같이 IP를 네트워크 계층으로 이용하지만 연결 지향형 서비스와 신뢰성 있는 통신 서비 스를 제공한다. 여기서 연결 지향형 서비스는 클라이언트와 서버에 대응되는 통신 노드들이 연결 설정 과정을 거쳐야만 하는 것을 의미한다. TCP는 네트워크의 혼잡(Congestion) 상태를 고려하여 송신 노드의 전송률을 조절하는 프로토콜로서, 향후 유무선 통합 망에서도 트랜스포트 계층으로서의 사용이 고려되고 있다. 상기 TCP는 수신 노드로부터 송신 노드로 데이터 수신 확인을 위해 전달되는 애크(Acknowledge : ACK), 수신 노드가 송신 노드로 알려주는 윈도우(Window) 및 타임아웃 기능을 이용하여 혼잡 제어(Congestion Control) 메카니즘을 구현하고 있다.
또한 TCP에서는 상기 혼잡 제어(Congestion Control)와 함께 중요한 특징으로 데이터의 흐름 제어(Flow Control)가 수행된다. 상기 흐름 제어는 수신 노드에서 송신 노드의 데이터 전송량을 조절 및 정의하는 것을 말한다. TCP는 상위 계층인 응용 프로그램으로부터 전달되는 데이터를 저장하기 위하여 버퍼를 사용하고, 전송 데이터의 크기를 결정하기 위하여 상기 윈도우를 정의한다. TCP는 상기 윈도우에 정의된 바이트 수만큼의 데이터만을 전송할 수 있다. 이러한 흐름 제어를 위해서 슬라이딩 윈도우(sliding window) 기법이 사용된다.
상기 혼잡 제어를 간략히 설명하면, 수신 노드에서 네트워크의 혼잡으로 인해 데이터 손실이 발생하였을 경우 재전송 등을 효과적으로 수행하기 위하여 사용된다. 상기 혼잡 제어는 현재 네트워크의 대역폭을 조사(probe)하기 위하여 슬로우 스타트(Slow start) 알고리듬을 사용하여 송신 노드는 데이터 전송 속도를 증가시키고, 데이터 손실이 발생되면, 혼잡 회피(congestion avoidance) 알고리듬을 통해 손실 패킷을 재전송하고 전송속도를 회복시킨다.
상기 TCP는 Tahoe, Reno, Vegas 등의 버전이 사용되고 있으며, TCP 통신에서 수신 노드는 송신 노드로부터 데이터 세그먼트(Data Segment)를 수신하면, 그 데이터 세그먼트와 동일한 시퀀스 번호를 가지는 ACK를 전송한다. 상기 데이터 세그먼트는 TCP로 전송되는 데이터 블록의 단위, 즉 PDU(Protocol Data Unit)를 의미한다. 상기 TCP에서 송신 노드는 수신 노드로부터의 상기 ACK를 수신하지 못해도 미리 정해지는 혼잡 윈도우(Congestion Window : CWND) 만큼의 데이터 세그먼트들을 동시에 전송한다. 그리고 송신 노드는 동일한 시퀀스 번호를 가지는 ACK들, 즉 중복(Duplicate) ACK들을 받으면 해당 시퀀스 번호를 가지는 데이터 세그먼트를 재전 송한다. 또한 송신 노드는 상기 중복 ACK를 수신하지 않더라도 수신 노드로 데이터 세그먼트를 전송한 이후 미리 정해진 일정한 타임아웃 시간 동안 ACK를 받지 못하면 그 데이터 세그먼트를 재전송한다.
한편 상기 슬로우 스타트는 송신 노드 CWND를 사용하여 데이터의 전송량을 안정되게 조절하는 알고리즘이다. 상기 CWND는 처음 TCP 연결 시와 타임아웃이 발생된 경우에 사용되고, 상기 CWND의 값이 상기 슬로우 스타트 임계값 보다 크게 되거나, 송신 노드가 소정 개수(일반적으로 3개)의 중복 ACK를 수신하여 수신 노드로 전송된 데이터의 손실을 감지하게 되면 종료된다.
상기 CWND의 값은 매 라운드 트립 시간(Round Trip Time : RTT) 동안에 수신한 ACK의 개수만큼씩 증가된다. 여기서 상기 RTT는 송신 노드로부터 수신 노드 사이에서 측정된 왕복 지연 시간을 나타낸다. 그러나 실질적으로 송신 노드는 데이터를 전송할 때 송신 노드의 CWND와, 수신 노드의 현재 남은 버퍼 크기를 나타내는 광고 윈도우(Advertised Window : AWND) 크기를 비교하여 둘 중 작은 값을 기준으로 데이터를 전송한다. 즉 송신 노드는 Min(CWND, AWDN)을 이용하여 데이터를 전송 한다. 여기서 상기 AWND의 값은 수신 노드로부터 송신 노드로 보고되는 것으로서, 그 최대값은 예컨대, 64Kbyte이고 수신 노드의 흐름제어에 사용된다.
이하에서는 Tahoe, Reno, Vegas의 TCP 버전에서 실행되는 혼잡 제어 방식을 구분하여 설명하기로 한다.
<TCP Tahoe>
TCP Tahoe에서는 슬로우 스타트(slow start) 알고리듬을 사용하여 전송 윈도우의 크기를 혼잡이 발생할 때까지 증가시키며, 그 제어 구간은 주어진 슬로우 스타트 임계값(Slow Start Threshold : SSTH) 까지 빠르게 윈도우 크기를 빠르게 증가시키는 슬로우 스타트 구간과, SSTH에 도달된 후, 혼잡 회피를 위해 윈도우 크기를 천천히 증가시키는 혼잡 회피 구간으로 나누어진다.
하기 <수학식 1>은 CWND < SSTH인 구간으로 상기 슬로우 스타트 구간을 수식으로 표현한 것이고, 하기 <수학식 2>는 CWND ≥ SSTH인 구간으로 상기 혼잡 회피 구간을 수식으로 표현한 것이다.
Figure 112005013936203-PAT00001
Figure 112005013936203-PAT00002
상기 <수학식 1>, <수학식 2>와 같이 증가하는 CWND의 크기에 의해 TCP는 전송률을 계속 증가시키고 이로 인해 어느 시점에서는 혼잡이 발생된다.
한편 TCP는 패킷을 수신할 때마다 지금까지 정상적으로 수신된 가장 나중 패킷을 송신측에 알려주기 때문에 이를, 누적 확인(Cumulative Ack) 방식이라 한다. Cumulative Ack 방식을 사용하기 때문에 전송도중 패킷 손실이 발생하면 같은 Ack를 중복 수신하며, 이를 중복 Ack라 한다. 송신 노드가 중복 Ack를 3개 받았을 때 타임아웃이 일어나지 않아도 패킷 손실로 간주하고 재전송을 시도하는 알고리듬을 고속 재전송(Fast Retransmit)이라고 한다. 상기한 슬로우 스타트, 혼잡 회피, 고속 재전송으로 대표되는 TCP Tahoe에서의 혼잡 윈도우(CWND) 변화를 도 1에 도시하였다. 그리고 도 1과 같은 CWND 변화 모델을 AIMD(Additive Increasement Multiple Decreasement)라 부른다.
<TCP Reno>
TCP Reno는 현재 대부분의 TCP에서 사용되고 있는 방식으로 TCP Tahoe의 모든 기능들을 포함하며 차이점은, 3개의 중복 Ack를 수신하였을 경우 슬로우 스타트를 시작하지 않고, SSTH부터 혼잡 회피를 수행한다. 이론적 근거는 BDP(Bandwidth-delay-product)에 의해 3개의 중복 Ack가 수신된 경우는 슬로우 스타트(즉, Bandwidth probing)를 수행할 필요가 없기 때문이다.
<TCP Vegas>
TCP Tahoe와 TCP Reno는 통신 노드의 버퍼 용량이 유한하여 발생되는 패킷 손실을 혼잡발생의 척도(measure)로 삼았는데, TCP Vegas는 엔드 대 엔드 큐잉 지연(End-to-End queueing delay)을 혼잡 발생의 척도로 삼는다. TCP Vegas에서는 상기 엔드 대 엔드 큐잉 지연(RTT)을 근거로 현재 네트워크의 큐(queue)에 대기중인 패킷의 수를 추정하여 윈도우 크기가 일정수준을 유지하도록 한다.
일반적으로 TCP의 전송 용량(capacity)은 대역폭 지역 산물(bandwidth-delay product)이라는 특징으로 정의된다. 즉 하기 <수학식 3>은 TCP의 전송 용량 C와 대역폭 B, 그리고 상기 엔드 대 엔드 큐잉 지연 즉, 송신 노드로부터 수신 노드 사이에서 측정된 왕복 지연 시간인 RTT 간의 관계를 나타낸 것이다.
Figure 112005013936203-PAT00003
상기 <수학식 3>으로 정의되는 TCP 전송 용량 모델에 의해 네트워크의 대역폭은
Figure 112005013936203-PAT00004
로 추정될 수 있다. 그러나 상기 <수학식 3>으로 추정되는 대역폭은 특정 시간의 샘플 대역폭(sample bandwidth)로 TCP 전송과 같은 시변 전송률(time varying rate)를 갖는 네트워크에서는 평균 대역폭(average bandwidth)으로 삼기에 부정확한 문제점이 있다.
본 발명의 목적은 데이터 전송률이 빠르게 변하는 유무선 통신 네트워크에서 정확한 평균 대역폭을 추정하는 TCP 기반의 네트워크에서 평균 대역폭 추정 방법 및 시스템을 제공하는 것이다.
본 발명의 다른 목적은 데이터 전송률이 빠르게 변하는 TCP 기반의 유무선 통신 네트워크의 송신/수신/중간 노드에서 평균 대역폭을 추정하는 대역폭 추정 방법 및 시스템을 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명의 방법은 TCP(Transmission Control Protocol) 기반의 네트워크에서 평균 대역폭 추정 방법에 있어서, 현재 애크(Ack)와 이전 애크의 도달 시간차와 시퀀스 번호 차를 구하는 과정과, 이전 추정 대역폭과 현재 애크에 의한 샘플 대역폭을 계산하는 과정과, 상기 현재 애크의 도달 시간과 이전 애크의 도달 시간을 비교하는 과정과, 상기 비교 결과에 따라 상기 이전 추정 대역폭과 현재 샘플 대역폭에 각각 곱해지는 제1 및 제2 가중치의 비율을 결정하는 과정과, 상기 제1 및 제2 가중치가 적용된 이전 추정 대역폭과 현재 샘플 대역폭을 이용하여 현재 추정 대역폭을 산출하는 과정을 포함함을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 시스템은 평균 대역폭을 추정하여 전 송률을 제어하는 TCP(Transmission Control Protocol) 기반의 네트워크 시스템에 있어서, 패킷을 전송하고 상기 패킷 전송에 따른 애크(ACK) 신호를 수신하는 적어도 하나의 제1 통신 노드와, 상기 패킷을 수신하고 상기 제1 통신 노드로 패킷 수신에 따른 애크 신호를 송신하는 적어도 하나의 제2 통신 노드를 포함하고, 상기 제1 및 제2 통신 노드 중 적어도 하나는 현재 애크(Ack)와 이전 애크의 도달 시간차와 시퀀스 번호 차를 구하고, 이전 추정 대역폭과 현재 애크에 의한 샘플 대역폭을 계산하며, 상기 현재 애크의 도달 시간과 이전 애크의 도달 시간을 비교한 후, 상기 비교 결과에 따라 대소 비율이 결정되는 제1 및 제2 가중치를 상기 이전 추정 대역폭과 현재 샘플 대역폭에 각각 적용하여 평균 대역폭을 추정함을 특징으로 한다.
이하 첨부된 도면을 참조하여 본 발명의 실시 예를 설명하기로 한다.
본 발명을 설명함에 있어 관련된 공지 기능 혹은 구성에 대한 구체적인 설명 이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략하기로 한다.
먼저 본 발명의 요지는 TCP를 이용하여 패킷을 전송하는 중에 실시간으로 평균 대역폭을 추정하는 것이다. 평균 대역폭의 추정은 송신 노드, 수신 노드 및 중간 노드에서 수행된다.
도 2는 본 발명이 적용되는 TCP 기반의 네트워크 구성을 간략히 도시한 도면으로서, 이는 패킷을 송신하는 송신 노드(210)와, 상기 송신 노드(210)로부터 전송된 패킷의 목적지 노드인 수신 노드(230)와, 상기 송신 노드(210)로부터의 패킷을 수신 노드(230)로 전달하는 중간 노드(220)를 포함하여 구성된다. 상기 송신 노드(210), 수신 노드(230) 및 중간 노드(220)는 유무선 통신망에 존재하는 각종 망 구성요소들이 될 수 있다. 예를 들어 무선망의 경우 송신 노드(210)는 패킷 서비스를 이용하는 이동 단말, PDA, AT(Access Terminal)이 될 수 있으며, 수신 노드(230)는 IP 망에 접속된 호스트(Host), 중간 노드(220)는 기지국, AR(Access Router) 등이 될 수 있다. 아울러 도 2에서 송신 노드(210), 중간 노드(220) 및 수신 노드(230) 는 편의상 하나씩 도시되어 있으나, 실제로 다수의 노드들이 망을 형성한다.
도 2의 네트워크에서는 송신 노드(210)는 중간 노드(220)를 통해 수신 노드(230)로 패킷을 전송한다. 그리고 패킷을 정상적으로 수신한 수신 노드(230)는 중간 노드(220)를 통해 송신 노드(210)로 패킷의 정상 수신을 알리는 Ack를 전송한다. 이러한 패킷과 Ack의 송수신 과정에서 트래픽 혼잡 상태에 따라 각각의 노드에서는 전송률 제어가 이루어지고, 안정적인 전송률 제어를 위해서는 정확한 대역폭 추정이 요구된다. 상기 송신 노드(210), 수신 노드(230), 그리고 중간 노드(220)에서의 대역폭 추정과 이를 이용한 전송률 제어는 각각 기존의 TCP 전송과 상호 연동(inter working)이 가능하다. 이하에서는 본 발명에 따라 각각의 노드에서 수행되는 전송률 제어 과정를 설명한 후, 이를 위한 대역폭 추정 방법을 상세히 설명하기로 한다.
<송신 노드에서 TCP 전송률 제어>
TCP 전송을 하는 송신 노드(210)에서 상위 계층의 응용 프로그램 혹은 링크 (link)에서 최소 대역폭 임계값 α와 최대 대역폭 임계값 β가 정해져 있다면, 추정된 평균 대역폭
Figure 112005013936203-PAT00005
과, 최소 및 최대 임계값 α와 β간의 관계는 하기 <수학식 4>와 같이 정해진다.
Figure 112005013936203-PAT00006
일반적으로 송신 노드(210)에서 CWND는 매 라운드 트립 시간(RTT) 동안에 수신 노드(230)로부터 수신한 ACK의 개수만큼씩 증가되지만, 상기 <수학식 4>와 같이
Figure 112005013936203-PAT00007
이 최소 대역폭 임계값 α보다 작은 경우 전송률을 높이도록 CWND를 증가시킨다. 역으로
Figure 112005013936203-PAT00008
이 최대 대역폭 임계값 β보다 큰 경우 전송률을 낮추도록 CWND를 감소시킨다. 그리고
Figure 112005013936203-PAT00009
이 최소 대역폭 α와 최대 대역폭 β사이로 추정된 경우 현재 CWND를 유지시킨다.
<수신 노드에서 TCP 전송률 제어>
Figure 112005013936203-PAT00010
상기 <수학식 5>에서 AWND는 수신 노드(230)의 현재 남은 버퍼 크기를 나타내는 송신 노드(210)로 알리기 위한 광고 윈도우(AWND)를 의미하며, AWND(230)는 수신 노드의 흐름 제어에 사용된다. 상기 <수학식 5>와 같이 Ack를 전송한 수신 노드(230)는 추정된 대역폭
Figure 112005013936203-PAT00011
이 최대 대역폭 임계값 β보다 작거나 같은 경우 전송률을 높이도록 증가된 AWND 혹은 최대 AWND를 송신 노드(210)로 전달한다. 역으로
Figure 112005013936203-PAT00012
이 최대 대역폭 임계값 β보다 큰 경우 전송률을 낮추도록 수신 노드(230)는 감소된 AWND를 전송한다.
<중간 노드에서 TCP 전송률 제어>
중간 노드(220)는 수신 노드(230)로부터의 Ack를 수신하여 송신 노드(210)로 전달하고, 이 과정에서 대역폭을 추정하여 하기 <수학식 6>과 같이 AWND를 증감시킨다.
Figure 112005013936203-PAT00013
본 발명의 경우 중간 노드(220)가 TCP 전송률 제어에 관여하므로 중간 노드(220)는 평균 대역폭을 측정하여 수신 노드(210)의 AWND 값을 실시간으로 변환하여 송신 노드(230)로 전달한다. 따라서 송신 노드(210), 수신 노드(230) 그리고 중간 노드(220)에서 상기 <수학식 4> 내지 <수학식 6>과 같은 TCP 전송률을 제어하기 위해서는 실시간으로 현재 평균 대역폭을 측정하는 것이 요구된다.
본 발명에서 평균 대역폭을 추정하는 과정을 설명하면, TCP 전송에서 k번째 Ack의 각 노드를 통한 Ack 전달 시 측정되는 샘플 대역폭은 하기 <수학식 7>, <수학식 8>과 같이 정의된다.
Figure 112005013936203-PAT00014
Figure 112005013936203-PAT00015
상기 <수학식 7>, <수학식 8>에서 "Ackdiff"는 현재 Ack의 도달시간(inter arrival time)(
Figure 112005013936203-PAT00016
)과 이전 Ack의 도달시간(
Figure 112005013936203-PAT00017
)의 차를 의미하며, "Acked bits"는 현재 Ack의 시퀀스 번호(seq number)(
Figure 112005013936203-PAT00018
)와 이전 Ack의 시퀀스 번호(
Figure 112005013936203-PAT00019
)의 차를 의미한다. 그리고 상기 <수학식 7>로 계산되는 샘플 대역폭
Figure 112005013936203-PAT00020
는 "Ackdiff"를 "Acked bits"로 나눈 값으로 결정된다.
상기와 같이 구해진 샘플 대역폭
Figure 112005013936203-PAT00021
는 트래픽 상태가 급격하게 변하는 경우 실제 대역폭과 많은 차이가 발생되므로 샘플 대역폭
Figure 112005013936203-PAT00022
를 이용하여 상기 <수학식 4> 내지 <수학식 6>과 같은 TCP 전송률 제어에 좋지 않은 영향을 줄 수 있다. 따라서 본 발명에서는 하기 <수학식 9>와 <수학식 10>으로 정의되는 동적 평균 대역폭(moving average bandwidth)(이하, "추정 대역폭"이라 칭함)을 구하여, 트래픽 상태가 급격하게 변하는 망에서도 대역폭 제어에 사용할 때 보다 신뢰할 수 있는 평균 대역폭을 추정할 수 있는 방안을 제공한다.
Figure 112005013936203-PAT00023
Figure 112005013936203-PAT00024
상기 <수학식 9>에서
Figure 112005013936203-PAT00025
Figure 112005013936203-PAT00026
는 이전 Ack의 추정 대역폭
Figure 112005013936203-PAT00027
과 현재 Ack의 샘플 대역폭
Figure 112005013936203-PAT00028
에 현재 및 이전 Ack의 도달시간을 고려한 가중치(p, q)를 적용하여 구해진 현재 Ack에 대한 추정 대역폭이다. 여기서 상기 가중치 p는 현재 Ack의 도달시간(
Figure 112005013936203-PAT00029
)을 고려한 가중치(이하, 제1 가중치)이고, 상기 가중치 q는 이전 Ack의 도달시간(
Figure 112005013936203-PAT00030
)을 고려한 가중치(이하, 제2 가중치)이다. 상기 제1 및 제2 가중치는 실제 대역폭 추정기에 구비되는 저역 통과 필터(low pass filter)의 계수(coefficient)로 이용된다.
본 발명에서 상기 제1 및 제2 가중치를 설정하는 방식은 현재 Ack의 도달 시간이 이전 Ack의 도달 시간 보다 큰 경우 이전 추정 대역폭의 영향을 더 많이 반영하기 위해 이전 추정 대역폭에 곱해지는 제1 가중치(p)를 제2 가중치(q) 보다 높게 설정하고, 역으로 현재 Ack의 도달 시간이 이전 Ack의 도달 시간 보다 작은 경우 현재 샘플 대역폭의 영향을 더 많이 반영하기 위해 현재 샘플 대역폭에 곱해지는 제2 가중치(q)를 제1 가중치(p) 보다 높게 설정한다. 그리고 제1 및 제2 가중치의 설정값들은 실험적으로 결정된 값들을 이용한다.
도 3은 본 발명에 따른 TCP 기반의 네트워크에서 평균 대역폭 추정 과정을 도시한 순서도로서, 하기 과정들은 송신 노드, 수신 노드 그리고 중간 노드 모두에서 수행될 수 있다.
먼저 301 과정에서 <수학식 8>을 통해 현재 Ack와 이전 Ack의 도달 시간 차를 구하고, 303 과정에서 현재 Ack와 이전 Ack의 시퀀스 번호 차를 구한다. 그리고 305 과정에서 상기 Ack의 도달 시간 차와 시퀀스 번호 차를 각각 <수학식 7>에 적용하여 현재 Ack의 샘플 대역폭을 계산하고, 이전 Ack 수신 시 산출된 평균 대역폭인 이전 추정 대역폭을 불러온다.
상기 301 과정 내지 305 과정에 따라 이전 추정 대역폭과 현재 샘플 대역폭이 결정되면, 307 과정에서 현재 Ack의 도달 시간과 이전 Ack의 도달 시간을 비교하여 현재 Ack의 도달 시간이 이전 Ack의 도달 시간 보다 큰 경우는 309 과정으로 진행하여 이전 추정 대역폭(
Figure 112005013936203-PAT00031
)에 곱해지는 제1 가중치(p)를 보다 높게 설정하고, 현재 Ack의 도달 시간이 이전 Ack의 도달 시간 보다 작은 경우는 311 과 정으로 진행하여 현재 샘플 대역폭(
Figure 112005013936203-PAT00032
)에 곱해지는 제2 가중치(q)를 보다 높게 설정한다.
이후 313 과정에서는 상기 <수학식 9>와 같이 상기 309 과정 또는 311 과정에서 설정된 제1 및 제2 가중치를 각각 이전 추정 대역폭과 현재 샘플 대역폭에 곱한 후, 더하여 본 발명에 따른 동적 평균 대역폭(현재 추정 대역폭)을 추정한다. 상기한 가중치 설정에 의하면, Ack가 짧은 도달 시간으로 도착할 경우(즉, Ack들의 간격이 줄어들수록) 현재 샘플 대역폭을 평균 대역폭 추정에 더 많이 반영하게 되고, 이로 인해 실제 대역폭이 갑자기 변경될 경우 평균 대역폭에 이러한 변화가 보다 빠르게 반영될 수 있다.
반대로 Ack들의 간격이 점점 더 커진다면, 현재 샘플 대역폭보다는 이전에 계산된 추정 대역폭을 현재 추정 대역폭에 더 많이 반영하게 되어 현재 추정 대역폭이 갑작스럽게 떨어지게 추정되는 것을 방지할 수 있다. 상기한 바와 같이 TCP 전송률 제어를 위해 대역폭을 추정하는 경우 대역폭의 상한 값을 구해야 하는데, 본 발명에서와 같이 가중치를 설정하게 되면 Ack 패킷들의 수신간격 변화에 따라 TCP 전송률 제어에 사용할 수 있는 상한 값으로 신뢰할 만한 현재 대역폭을 추정할 수 있다.
한편 상기한 실시예에서는 현재 추정 대역폭의 산출 시 이전 추정 대역폭과 현재 샘플 대역폭을 이용하였으나, 이전 추정 대역폭 대신 이전 샘플 대역폭을 이용하여 추정 대역폭을 산출하는 것도 가능할 것이다.
이상 설명한 바와 같이 본 발명에 의하면, TCP 전송률 제어와 같이 대역폭이 급격히 변화하는 경우 효율적인 평균 대역폭 추정 방안을 제공할 수 있으며, 이를 통해 보다 정확한 TCP 전송률 제어를 수행할 수 있다.

Claims (8)

  1. TCP(Transmission Control Protocol) 기반의 네트워크에서 평균 대역폭 추정 방법에 있어서,
    현재 애크(Ack)와 이전 애크의 도달 시간차와 시퀀스 번호 차를 구하는 과정과,
    이전 추정 대역폭과 현재 애크에 의한 샘플 대역폭을 계산하는 과정과,
    상기 현재 애크의 도달 시간과 이전 애크의 도달 시간을 비교하는 과정과,
    상기 비교 결과에 따라 상기 이전 추정 대역폭과 현재 샘플 대역폭에 각각 곱해지는 제1 및 제2 가중치의 비율을 결정하는 과정과,
    상기 제1 및 제2 가중치가 적용된 이전 추정 대역폭과 현재 샘플 대역폭을 이용하여 현재 추정 대역폭을 산출하는 과정을 포함함을 특징으로 하는 상기 방법.
  2. 제 1 항에 있어서,
    상기 현재 애크의 도달 시간이 이전 애크의 도달 시간 보다 큰 경우 상기 제1 가중치를 상기 제2 가중치 보다 높게 설정함을 특징으로 하는 상기 방법.
  3. 제 2 항에 있어서,
    상기 현재 애크의 도달 시간이 이전 애크의 도달 시간 보다 작은 경우 상기 제2 가중치를 상기 제1 가중치 보다 높게 설정함을 특징으로 하는 상기 방법.
  4. 제 3 항에 있어서,
    상기 제1 가중치(p)는 하기 <수학식 11>로 결정됨을 특징으로 하는 상기 방법.
    Figure 112005013936203-PAT00033
    상기 <수학식 11>에서
    Figure 112005013936203-PAT00034
    는 상기 현재 Ack의 도달시간과 이전 Ack의 도달시간의 차를 의미하며, k는 Ack가 수신 순번을 의미함을 특징으로 하는 상기 방법.
  5. 제 4 항에 있어서,
    상기 제2 가중치(q)는 하기 <수학식 12>로 결정됨을 특징으로 하는 상기 방법.
    Figure 112005013936203-PAT00035
  6. 평균 대역폭을 추정하여 전송률을 제어하는 TCP(Transmission Control Protocol) 기반의 네트워크 시스템에 있어서,
    패킷을 전송하고 상기 패킷 전송에 따른 애크(ACK) 신호를 수신하는 적어도 하나의 제1 통신 노드와,
    상기 패킷을 수신하고 상기 제1 통신 노드로 패킷 수신에 따른 애크 신호를 송신하는 적어도 하나의 제2 통신 노드를 포함하고,
    상기 제1 및 제2 통신 노드 중 적어도 하나는 현재 애크(Ack)와 이전 애크의 도달 시간차와 시퀀스 번호 차를 구하고, 이전 추정 대역폭과 현재 애크에 의한 샘플 대역폭을 계산하며, 상기 현재 애크의 도달 시간과 이전 애크의 도달 시간을 비 교한 후, 상기 비교 결과에 따라 대소 비율이 결정되는 제1 및 제2 가중치를 상기 이전 추정 대역폭과 현재 샘플 대역폭에 각각 적용하여 평균 대역폭을 추정함을 특징으로 하는 상기 시스템.
  7. 제 6 항에 있어서,
    상기 현재 애크의 도달 시간이 이전 애크의 도달 시간 보다 큰 경우 상기 제1 가중치를 상기 제2 가중치 보다 높게 설정함을 특징으로 하는 상기 시스템.
  8. 제 7 항에 있어서,
    상기 현재 애크의 도달 시간이 이전 애크의 도달 시간 보다 작은 경우 상기 제2 가중치를 상기 제1 가중치 보다 높게 설정함을 특징으로 하는 상기 시스템.
KR1020050022064A 2005-03-17 2005-03-17 전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템 Ceased KR20060100512A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050022064A KR20060100512A (ko) 2005-03-17 2005-03-17 전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템
US11/377,719 US20060209838A1 (en) 2005-03-17 2006-03-17 Method and system for estimating average bandwidth in a communication network based on transmission control protocol

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050022064A KR20060100512A (ko) 2005-03-17 2005-03-17 전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20060100512A true KR20060100512A (ko) 2006-09-21

Family

ID=37010227

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050022064A Ceased KR20060100512A (ko) 2005-03-17 2005-03-17 전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템

Country Status (2)

Country Link
US (1) US20060209838A1 (ko)
KR (1) KR20060100512A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100817798B1 (ko) * 2006-10-20 2008-03-31 한국정보보호진흥원 인터넷 제어 메시지 프로토콜의 타임스탬프 기능을 이용한네트워크 링크 가용 대역폭 추정 방법
KR100965058B1 (ko) * 2008-06-30 2010-06-21 주식회사 케이티 무선 센서 네트워크의 가용 대역폭 기반의 보고주기 결정방법
KR101685658B1 (ko) * 2015-12-22 2016-12-12 한국과학기술정보연구원 Yellow-Light TCP : 모바일 데이터 전송에서의 에너지 절감형 프로토콜 방법

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100548134B1 (ko) * 2003-10-31 2006-02-02 삼성전자주식회사 무선 네트워크 환경에서의 tcp의 데이터 전송효율을향상시킬 수 있는 통신시스템 및 그 방법
JP4407700B2 (ja) * 2007-02-02 2010-02-03 日本電気株式会社 通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラム
US8116225B2 (en) * 2008-10-31 2012-02-14 Venturi Wireless Method and apparatus for estimating channel bandwidth
US8374091B2 (en) * 2009-03-26 2013-02-12 Empire Technology Development Llc TCP extension and variants for handling heterogeneous applications
US9548936B2 (en) * 2011-06-30 2017-01-17 The Chinese University Of Hong Kong Method and system for improved TCP performance over mobile data networks
US10148578B2 (en) * 2014-10-17 2018-12-04 Ciena Corporation Optical and packet path computation and selection systems and methods
US9674726B1 (en) 2014-11-21 2017-06-06 Google Inc. Methods and systems for improved bandwidth estimation
JP2016184824A (ja) * 2015-03-25 2016-10-20 富士通株式会社 パケット解析プログラム、パケット解析装置およびパケット解析方法
US20190297532A1 (en) * 2018-03-20 2019-09-26 Nokia Technologies Oy Application Notifications From Network For Throughput And Flow Control Adaptation
CN111846683B (zh) * 2020-07-23 2022-08-12 江苏万德福公共设施科技有限公司 一种用于智能分类垃圾箱的控制系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5802106A (en) * 1996-12-06 1998-09-01 Packeteer, Inc. Method for rapid data rate detection in a packet communication environment without data rate supervision
US6111862A (en) * 1997-06-19 2000-08-29 Alcatel Usa Sourcing, L.P. Idle code density detector
US6327254B1 (en) * 1997-10-14 2001-12-04 Lucent Technologies Inc. Method for bandwidth sharing in a multiple access system for communications networks
US6205120B1 (en) * 1998-03-13 2001-03-20 Packeteer, Inc. Method for transparently determining and setting an optimal minimum required TCP window size
US6611506B1 (en) * 1999-01-21 2003-08-26 Lucent Technologies Inc. Enhanced channel allocation among multiple carriers in a spread spectrum communications system
US7266613B1 (en) * 2000-08-09 2007-09-04 Microsoft Corporation Fast dynamic measurement of bandwidth in a TCP network environment
US7299280B2 (en) * 2001-10-17 2007-11-20 The Regents Of University Of California Method and apparatus for TCP with faster recovery
US7426181B1 (en) * 2004-03-26 2008-09-16 Packeteer, Inc. Slow-start adaptive mechanisms to improve efficiency of bandwidth allocation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100817798B1 (ko) * 2006-10-20 2008-03-31 한국정보보호진흥원 인터넷 제어 메시지 프로토콜의 타임스탬프 기능을 이용한네트워크 링크 가용 대역폭 추정 방법
KR100965058B1 (ko) * 2008-06-30 2010-06-21 주식회사 케이티 무선 센서 네트워크의 가용 대역폭 기반의 보고주기 결정방법
KR101685658B1 (ko) * 2015-12-22 2016-12-12 한국과학기술정보연구원 Yellow-Light TCP : 모바일 데이터 전송에서의 에너지 절감형 프로토콜 방법

Also Published As

Publication number Publication date
US20060209838A1 (en) 2006-09-21

Similar Documents

Publication Publication Date Title
JP4632874B2 (ja) 通信端末
JP3789120B2 (ja) Tcpにおける受信側主体のrtt測定方法
JP4778453B2 (ja) 通信端末、輻輳制御方法および輻輳制御プログラム
JP4738594B2 (ja) データフロー制御方法および装置
US6643259B1 (en) Method for optimizing data transfer in a data network
Gerla et al. TCP Westwood with adaptive bandwidth estimation to improve efficiency/friendliness tradeoffs
KR100717219B1 (ko) 시간-파라미터를 결정하는 방법 및 장치
US7965698B2 (en) Method for preventing unnecessary retransmission due to delayed transmission in wireless network and communication device using the same
KR102187810B1 (ko) 통신 시스템에서 데이터 흐름 제어 장치 및 방법
US8509080B2 (en) Network traffic accelerator
US20060039287A1 (en) Communication apparatus and data communication method
US8565249B2 (en) Queue management system and methods
WO2002019654A2 (en) Method for improving tcp performance over wireless links
JP4708978B2 (ja) 高スループットを実現する通信システム、通信端末、セッション中継装置、及び通信プロトコル
KR20060100512A (ko) 전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템
CN108322401A (zh) 网络传输拥塞的控制方法及装置
EP2715978B1 (en) A system and method for reducing the data packet loss employing adaptive transmit queue length
Man et al. ImTCP: TCP with an inline measurement mechanism for available bandwidth
KR102176176B1 (ko) 전송 제어 프로토콜을 이용하는 무선 네트워크에서 혼잡 제어 방법 및 장치
JP4328794B2 (ja) 通信システム、通信装置、及び送信制御方法
EP2922242A2 (en) Methods and Apparatus to Determine Network Delay with Location Independence
JP2004140596A (ja) Tcp上のデータ転送における品質を推定する方法およびシステム
KR100608581B1 (ko) 애드 혹 네트워크에서의 데이터 전송 방법 및 장치
Sharma et al. Performance evaluation of TCP variants under different node speeds using OPNET simulator
Arshad et al. Issues of multihoming implementation using FAST TCP: a simulation based analysis

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20050317

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20070927

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20050317

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20090331

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20090630

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20090331

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I