KR20140049581A - 네트워크 정체를 회피하기 위한 방법 및 그의 장치 - Google Patents

네트워크 정체를 회피하기 위한 방법 및 그의 장치 Download PDF

Info

Publication number
KR20140049581A
KR20140049581A KR1020147005423A KR20147005423A KR20140049581A KR 20140049581 A KR20140049581 A KR 20140049581A KR 1020147005423 A KR1020147005423 A KR 1020147005423A KR 20147005423 A KR20147005423 A KR 20147005423A KR 20140049581 A KR20140049581 A KR 20140049581A
Authority
KR
South Korea
Prior art keywords
window size
connections
ack
delay
workers
Prior art date
Application number
KR1020147005423A
Other languages
English (en)
Other versions
KR101709932B1 (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 알까뗄 루슨트
Publication of KR20140049581A publication Critical patent/KR20140049581A/ko
Application granted granted Critical
Publication of KR101709932B1 publication Critical patent/KR101709932B1/ko

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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • 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
    • H04L43/0864Round trip delays
    • 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/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05BELECTRIC HEATING; ELECTRIC LIGHT SOURCES NOT OTHERWISE PROVIDED FOR; CIRCUIT ARRANGEMENTS FOR ELECTRIC LIGHT SOURCES, IN GENERAL
    • H05B3/00Ohmic-resistance heating
    • H05B3/10Heating elements characterised by the composition or nature of the materials or by the arrangement of the conductor
    • H05B3/12Heating elements characterised by the composition or nature of the materials or by the arrangement of the conductor characterised by the composition or nature of the conductive material
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05BELECTRIC HEATING; ELECTRIC LIGHT SOURCES NOT OTHERWISE PROVIDED FOR; CIRCUIT ARRANGEMENTS FOR ELECTRIC LIGHT SOURCES, IN GENERAL
    • H05B3/00Ohmic-resistance heating
    • H05B3/40Heating elements having the shape of rods or tubes
    • H05B3/54Heating elements having the shape of rods or tubes flexible
    • H05B3/56Heating cables
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01CRESISTORS
    • H01C7/00Non-adjustable resistors formed as one or more layers or coatings; Non-adjustable resistors made from powdered conducting material or powdered semi-conducting material with or without insulating material
    • H01C7/008Thermistors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1832Details of sliding window management
    • 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/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions

Landscapes

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

Abstract

데이터 센터 네트워크들은 공통적으로 인캐스트 통신 패턴을 본질적으로 도시하는 애플리케이션들 및 웹 검색을 수용한다; 다수의 서버들은 단일 집성기로 TCP 데이터를 동시에 송신한다. 이 환경에서, TCP 성능은 탑 오브 랙(Top of Rack; ToR) 스위치들에서의 심각한 패킷 손실의 결과로서, 굿풋(goodput) 및 쿼리 완료 시간에 관하여 상당히 저하된다. TCP 전송기들은 네트워크 파이프 크기 즉, 대역폭-지연 곱이 극히 적을지라도, 처리량 폭락을 야기하는 패킷들을 공격적으로 송신한다. 본 발명은 TCP 인캐스트 정체 문제점을 야기하는 새로운 단-대-단 정체 제어 알고리즘을 도입한다. 종래 기술들이 주로 윈도우-기반 제어 알고리즘들에 촛점을 맞추는 반면에, 본 발명은 두드러진 패킷들의 총 수가 네트워크 파이프 크기를 초과하지 않음을 보장하기 위해 레이트-기반 제어를 이용한다. 또한, 시뮬레이션들은 IA-TCP 알고리즘이 강화된 굿풋 및 제로 타임아웃들(zero timeouts)을 성취하는 전송기들의 수에 관하여 확장가능함을 입증한다.

Description

네트워크 정체를 회피하기 위한 방법 및 그의 장치{A METHOD FOR AVOIDING NETWORK CONGESTION AND AN APPARATUS THEREOF}
최근에, 데이터 중심 애플리케이션들 및 웹 검색은 일반적으로 분할/집성 통신 패턴을 도시한다. 먼저, 요청이 분할되고 복수의 워커 노드들(worker nodes)로 전송된다. 그리고 그 다음, 워커들에 의해 생성된 응답 패킷들은 집성을 위한 공통 노드 즉, 집성기 노드로 송신된다. 이러한 유형의 트래픽은, 다수의 워커들이 동시에 동일한 집성기로 응답 패킷들을 전송하기 때문에 네트워크 정체를 유발할 수 있다. 데이터 센터 네트워크들을 위한 전송 프로토콜들의 설계는 이 인캐스트(incast) 정체 문제점으로 인해 도전적인 것이 되고 있다.
A. 관련 동작
TCP 인캐스트 문제점은 먼저 확장가능한 저장 아키텍처의 설계에서 디. 네이글 등에 의해 리포트되었다. 그들은 클라이언트와 많은 저장 디바이스들 사이의 동시 트래픽이, 저장 디바이스들의 수가 증가함에 따라 네트워크를 압도함(overwhelm)을 발견했다. 이것은 다수의 패킷 손실들 및 타임아웃(timeout)을 야기하여, 클라이언트로 하여금 긴 RTO 지속기간 동안 유휴 상태에 있도록 한다. 인캐스트 정체를 완화시키기 위해, 그들은 클라이언트의 수신 소켓 버퍼 크기를 64kB 아래로 감소시킨다. 그들은 또한 재송신 타임아웃을 회피하기 위해 중복 ACK 임계치를 감소시키고 느린 시작(slow-start)을 디스에이블(disable)하는 것과 같은, TCP 레벨에서 튜닝(tuning)하는 것을 제안한다. 그러나, 그들은 기본적인 인캐스트 문제점을 해결하지 않는다.
인캐스트 문제점을 해결하는 2가지 주요 방식들이 제안되었다. 제 1 방식은 밀리초로부터 마이크로초 그래뉼래리티(granularity)로 RTOmin를 감소시키는 것이다. 이 해결책은 주 성능 메트릭이 TCP 처리량을 높이는 것인 클러스터-기반 저장 시스템들에 대해 매우 효과적이다. 그럼에도 불구하고, 그것은 웹 검색과 같은 소프트 실시간 애플리케이션들에 대해 적절하지 않는데, 이는 그것이 여전히 높은 큐잉 지연을 유발하기 때문이다. 제 2 방식은 버퍼가 오버플로우(overflow)하기 전에 정체 회피를 이용하는 것이다. RTT는 일반적으로 광역 네트워크에서의 양호한 정체 표시자여서, 상기 TCP 베가스(Vegas)와 같은 지연 기반 정체 회피 알고리즘이 양호한 후보일 수 있다. 그러나, 데이터 센터들에서의 RTT의 마이크로초 그래뉼래리티가 너무 민감하여 네트워크 정체와 패킷/포워딩 처리 오버헤드에 의해 야기된 지연 스파이크들(delay spikes)을 구별하지 못할 수 있음이 잘 공지된다. 따라서, DCTCP는 네트워크 정체를 명백하게 검출하기 위해 명백한 정체 통보(Explicit Congestion Notification; ECN)를 이용하고, 복수의 ECN 마크들을 이용함으로써 작은 단위의(fine-grained) 정체 윈도우 기반 제어를 제공한다. 또 다른 방식은 ICTCP이다. ICTCP는 이용가능한 대역폭을 얻기 위해 총 인입 트래픽의 대역폭을 측정하고 그 다음, 이 정보에 기초하여 각각의 접속의 수신 윈도우를 제어한다. 그러나, 워커들의 수가 상기 방식들에서 증가하기 때문에 이 인캐스트 정체는 불가피하다.
B. 윈도우 -기반 정체 제어의 제한
도 1은 인캐스트 정체가 발생하는 전형적인 토폴로지를 도시한다. 이러한 인캐스트 정체를 회피하기 위해, 두드러진 패킷들(outstanding packets)의 총 수는 네트워크 파이프 크기를 초과해서는 안되고, 상기 네트워크 파이프 크기는 대역폭 지연 곱(Bandwidth Delay Product; BDP)으로부터 얻어진다.
이것은:
[수학식 1]
Figure pct00001
(1)으로서 표현되고,
여기서 MSS는 최대 세그먼트 크기를 나타내고, n은 동시 접속들의 총 수이고, wi는 i번째 접속의 윈도우 크기이다. 이 경우에, BDP는 데이터 센터 네트워크들에서 극히 적을 수 있다. 예를 들면, 네트워크 경로가 1Gbps의 링크 용량 및 100us의 지연을 가지면, BDP는 MSS가 1.5kB일 때, 대략 12.5kB 또는 8.3MSS이다. 이것은
Figure pct00002
가 파이프 오버플로우를 회피하기 위해 8.3 미만이어야 함을 암시한다. 이 경우에, 경로가 유지할 수 있는 TCP 접속들의 수는 최소 윈도우 크기가 1이면, 기껏해야 8일 것이다. 즉, 9개보다 많은 TCP 접속들은 모든 전송자들이 동시에 적어도 하나의 패킷을 송신하면, 큐잉 지연 및 패킷 손실을 야기할 수 있다. 이러한 이유로, 기존의 윈도우-기반 제어 방식들은 기본적으로 복수의 워커들을 이용하는 전형적인 데이터 센터 네트워크 애플리케이션들에서 확장가능하지 않다. 이 통찰력은 데이터 센터 환경들에 대한 BDP 측정들에 기초한 레이트-기반 제어 방식으로 이어진다.
TCP가 이전 인캐스트 통신 패턴 하에서 잘 동작하지 않는 몇몇 이유들이 존재한다. 첫째, 탑 오브 랙(Top of Rack; ToR) 스위치들은 전형적으로 비용을 감소시키기 위해 작은 버퍼 메모리들(예를 들면, 52개의 포트들에 대해 4MB의 공유 메모리)을 이용하고, 이는 빈번한 버퍼 오버플로우들 즉, 패킷 손실들로 이어진다. 둘째, 심지어 소수의 패킷 손실들도 TCP 타임아웃들을 야기할 수 있고, 이는 흐름에서의 응답 패킷들의 수가 일반적으로 빠른 재송신 및 복구가 발생하기에 너무 적기 때문이다. 또한, 상품 운영 체계들에서, 최소 재송신 타임아웃(RTOmin)은 일반적으로 200ms 또는 300ms로 설정되고, 데이터 센터 네트워크들에서의 왕복 시간들(RTT)은 250us 미만일 수 있다. 이 경우에, 패킷 손실을 검출하기 위해 800 RTT들보다 많은 시간이 걸릴 것이다. 마지막으로, 분할/집성 패턴에서, 집성기는 의미있는 결과를 만들기 위해 그것의 워커들로부터의 모든 응답들을 기다릴 필요가 있어서, 전체적인 성능은 대부분의 접속들이 임의의 패킷 손실들을 경험하지 않을지라도, 단일 정체 접속에 의해 결정된다. 요약하면, 분할/집성 트래픽 패턴은 일반적으로 데이터 센터 네트워크들에서 네트워크 정체를 야기하고, 이것은 TCP 처리량 폭락을 야기하여, 웹 애플리케이션들의 서비스 품질(QoS)을 저하시킨다.
본 발명은 인캐스트 문제점을 해결하기 위해 단-대-단 정체 회피 알고리즘을 이용한다. 특히, 본 발명은 인캐스트-회피 TCP(IA-TCP), 및 대역폭-지연-곱(BDP)을 충족시키기 위해 네트워크 파이프로 주입된 패킷들의 총 수를 제한하는 레이트-기반 정체 제어 알고리즘을 제안한다. 본 발명의 알고리즘은 워커들의 TCP 데이터 전송 레이트를 제어하기 위해, TCP 수신확인(ACK) 조절에 의해 집성기 측에서 동작하도록 설계된다. NS-2 시뮬레이션들을 통해, 본 발명은 IA-TCP가 완전하게 인캐스트 정체를 회피함을 도시하고 높은 굿풋(goodput) 및 빠른 쿼리 완료 시간을 도시한다.
TCP 인캐스트 정체 문제점은 이전에 종래 기술의 많은 문헌들에서 연구되어 왔다. 상기 종래 기술들은 주로 윈도우-기반 정체 제어에 촛점을 맞춘 반면에, 본 발명은 레이트-기반 정체 제어 알고리즘을 제안한다.
본 발명의 일 양태에 따라, 집성기 및 복수의 워커들을 포함하는 네트워크에서 네트워크 정체를 회피하기 위한 방법이 제공되고, 복수의 워커들은 집성기로의 동일한 병목 링크(bottleneck link)를 공유하고, 방법은: 집성기와 워커 사이의 접속들의 수를 카운팅(counting)하는 단계; 워커들 각각의 윈도우 크기(W)를 조절하는 단계로서, 윈도우 크기(W)는 접속들의 수에 기초하는, 상기 조절하는 단계; ACK에 ACK 지연(
Figure pct00003
)을 부가하는 단계로서, ACK 지연(
Figure pct00004
)은 윈도우 크기(W)에 기초하는, 상기 부가하는 단계; 및 워커로 윈도우 크기(W)를 갖는 ACK를 전송하는 단계를 포함한다.
바람직한 일 실시예에 따라, 접속들의 수를 카운팅하는 단계는 또한 접속들의 수를 초기화하는 단계를 포함한다.
방법의 바람직한 또 다른 실시예에 따라, 접속들의 수는 접속이 생성될 때마다 증가되고, 접속들의 수는 접속이 폐쇄될 때마다 감소된다.
방법의 바람직한 또 다른 실시예에 따라, 접속들의 수를 카운팅하는 단계는 또한 워커들 각각으로 쿼리 요청을 전송하는 단계를 포함한다.
방법의 바람직한 또 다른 실시예에 따라, 모든 접속들의 윈도우 크기들(W)은 동일하다.
방법의 바람직한 또 다른 실시예에 따라, 윈도우 크기(W)를 조절하는 단계는 또한 윈도우 크기(W)를 최대 값으로 설정하는 단계를 포함한다.
방법의 바람직한 또 다른 실시예에 따라, 윈도우 크기의 최대 값은
Figure pct00005
이고 여기서, 애드버타이즈(advertise)는 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수이다.
방법의 바람직한 또 다른 실시예에 따라, ACK 지연(
Figure pct00006
)은
Figure pct00007
이고 여기서, 애드버타이즈는 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수이다.
방법의 바람직한 또 다른 실시예에 따라, ACK 지연(
Figure pct00008
) 중 제 1 지연 대신에, 균일 분포에 뒤따르는, 0으로부터 (RTT+
Figure pct00009
)까지의 랜덤 값이 선택되고 여기서, RTT는 최소 왕복 시간이다.
방법의 바람직한 또 다른 실시예에 따라, 윈도우 크기(W)를 갖는 ACK를 전송하는 단계는 ACK 지연(
Figure pct00010
)이 0보다 크면, 지연 타이머가 만료된 후에 실행된다.
방법의 바람직한 또 다른 실시예에 따라, 윈도우 크기(W)를 갖는 ACK를 전송하는 단계는 ACK 지연(
Figure pct00011
)이 음이면, 지연 없이 즉시 실행된다.
방법의 바람직한 또 다른 실시예에 따라, 방법은 TCP 계층에서 실행된다.
방법의 바람직한 또 다른 실시예에 따라, 방법은 레이트-기반 정체 제어 알고리즘이다.
본 발명의 또 다른 양태에 따라, 집성기 및 복수의 워커들을 포함하는 네트워크에서 네트워크 정체를 회피하기 위한 집성기가 제공되고, 복수의 워커들은 집성기로의 동일한 병목 링크를 공유하고, 집성기는 처리기(도시되지 않음) 및 트랜시버(도시되지 않음)를 포함하고, 처리기는 집성기와 워커 사이의 접속들의 수를 카운팅하는 것; 워커들 각각의 윈도우 크기(W)를 조절하는 것으로서, 윈도우 크기(W)는 접속들의 수에 기초하는, 상기 조절하는 것; 및 ACK에 ACK 지연(
Figure pct00012
)을 부가하는 것으로서, ACK 지연(
Figure pct00013
)은 윈도우 크기(W)에 기초하는, 상기 부가하는 것을 수행하도록 구성되고, 트랜시버는 워커로 윈도우 크기(W)를 갖는 ACK를 전송하는 것을 수행하도록 구성된다.
집성기의 바람직한 일 실시예에 따라, 접속들의 수를 카운팅하는 것은 또한 접속들의 수를 초기화하는 것을 포함한다.
집성기의 바람직한 또 다른 실시예에 따라, 접속들의 수는 접속이 생성될 때마다 증가되고, 접속들의 수는 접속이 폐쇄될 때마다 감소된다.
집성기의 바람직한 또 다른 실시예에 따라, 접속들의 수를 카운팅하는 것은 또한 트랜시버를 통해 워커들 각각으로 쿼리 요청을 전송하는 것을 포함한다.
집성기의 바람직한 또 다른 실시예에 따라, 모든 접속들의 윈도우 크기들(W)은 동일하다.
집성기의 바람직한 또 다른 실시예에 따라, 윈도우 크기(W)를 조절하는 것은 또한 윈도우 크기(W)를 최대 값으로 설정하는 것을 포함한다.
집성기의 바람직한 또 다른 실시예에 따라, 윈도우 크기의 최대 값은
Figure pct00014
이고 여기서, 애드버타이즈는 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수이다.
집성기의 바람직한 또 다른 실시예에 따라, ACK 지연(
Figure pct00015
)은
Figure pct00016
이고 여기서, 애드버타이즈는 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수이다.
집성기의 바람직한 또 다른 실시예에 따라, ACK 지연(
Figure pct00017
) 중 제 1 지연 대신에, 균일 분포에 뒤따르는, 0으로부터 (RTT+
Figure pct00018
)까지의 랜덤 값이 선택되고 여기서, RTT는 최소 왕복 시간이다.
집성기의 바람직한 또 다른 실시예에 따라, 윈도우 크기(W)를 갖는 ACK를 전송하는 것은 ACK 지연(
Figure pct00019
)이 0보다 크면, 지연 타이머가 만료된 후에 실행된다.
집성기의 바람직한 또 다른 실시예에 따라, 윈도우 크기(W)를 갖는 ACK를 전송하는 것은 ACK 지연(
Figure pct00020
)이 음이면, 지연 없이 즉시 실행된다.
본 발명의 또 다른 양태에 따라, 집성기 및 복수의 워커들을 포함하는 네트워크 시스템이 제공되고, 워커들은 집성기로의 동일한 병목 링크를 공유하고, 집성기는 처리기 및 트랜시버를 포함하고, 처리기는 집성기와 워커 사이의 접속들의 수를 카운팅하는 것; 워커들 각각의 윈도우 크기(W)를 조절하는 것으로서, 윈도우 크기(W)는 접속들의 수에 기초하는, 상기 조절하는 것; ACK에 ACK 지연(
Figure pct00021
)을 부가하는 것으로서, ACK 지연(
Figure pct00022
)은 윈도우 크기(W)에 기초하는, 상기 부가하는 것을 수행하도록 구성되고, 트랜시버는 워커로 윈도우 크기(W)를 갖는 ACK를 전송하는 것을 수행하도록 구성되고, 집성기는 집성기에 대한 상기 실시예들을 따른다.
본 발명의 또 다른 양태에 따라, 집성기 및 복수의 워커들을 포함하는 네트워크에서 네트워크 정체를 회피하기 위한 컴퓨터 프로그램이 제공되고, 복수의 워커들은 집성기로의 동일한 병목 링크를 공유하고, 컴퓨터 프로그램은 집성기와 워커 사이의 접속들의 수를 카운팅하는 것; 워커들 각각의 윈도우 크기(W)를 조절하는 것으로서, 윈도우 크기(W)는 접속들의 수에 기초하는, 상기 조절하는 것; ACK에 ACK 지연(
Figure pct00023
)을 부가하는 것으로서, ACK 지연(
Figure pct00024
)은 윈도우 크기(W)에 기초하는, 상기 부가하는 것; 및 워커로 윈도우 크기(W)를 갖는 ACK를 전송하는 것을 실행하고, 컴퓨터 프로그램은 방법에 대한 상기 실시예들을 따른다.
본 발명의 가치는 데이터 센터 네트워크들에서 잘-공지된 인캐스트 정체가 완전히 회피될 수 있는 것이다. 따라서, 주 잇점은 클라우드 서비스들, 웹 검색 등과 같은 데이터 센터 애플리케이션들이 실질적으로 더 양호한 성능 즉 서비스 품질(QoS)을 나타낼 것이다.
도 1은 분할/집성 애플리케이션에 대한 전형적인 네트워크 토폴로지의 구조를 도시한 도면.
도 2는 네트워크 정체를 회피하기 위한 집성기에서 수행된 인캐스트-회피 알고리즘을 도시한 도면.
도 3은 제 1 ACK 기간 동안 랜덤 지연의 일례를 도시한 도면.
도 4는 어떠한 백그라운드 흐름도 갖지 않는 집성 굿풋(Mbps)을 도시한 도면.
도 5는 어떠한 백그라운드 흐름도 갖지 않는 TCP 타임아웃(%)의 비를 도시한 도면.
도 6은 롱-텀 TCP 흐름을 갖는 집성 굿풋(Mbps)을 도시한 도면.
도 7은 30개의 짧은 흐름 및 하나의 긴 흐름을 갖는 쿼리 완료 시간(ms)을 도시한 도면.
도 8은 IA-TCP 흐름들 사이의 굿풋 공정성(goodput fairness)을 도시한 도면.
이 섹션에서, 인캐스트-회피에 대한 이상적인 데이터 패킷 레이트가 얻어지고 그 다음, 본 발명의 IA-TCP 알고리즘이 상세하게 설명된다.
A. 인캐스트 -회피에 대한 데이터 패킷 레이트
인캐스트-회피는 두드러진 패킷들의 총 수가 경로의 BDP를 초과하지 않아서 분할/집성 애플리케이션이 임의의 네트워크 정체를 전혀 야기하지 않음을 의미한다. 이를 위해, 워커들의 집성 데이터 패킷 레이트를 제어하는 것이 필요할 것이고,
Figure pct00025
×MSS/RTT는 [수학식 1]로부터의 링크 용량 미만일 것이다. 본 발명의 방식은 패킷 데이터들의 총 수가 증가하는 경우에, RTT에
Figure pct00026
(s)를 부가하는 것이다. 예를 들면, 링크 용량이 10MSS/RTT임을 가정하라. 이것은 단지 10개의 패킷들이 네트워크 정체를 회피하기 위해 하나의 왕복 시간 동안 경로에 있도록 허용됨을 의미한다. 이 순간에, 본 발명은 동일한 레이트(20MSS/2RTT)를 성취하기 위해 분모에 1RTT의 지연을 부과함으로써 20MSS를 허용할 수 있다. 이제, 인캐스트-회피에 대한 집성 데이터 패킷 레이트(IA 레이트)는 다음으로서 규정된다.
[수학식 2]
Figure pct00027
(2)
결과적으로, 본 발명은 모든 워커들이 IA 레이트로 데이터 패킷들을 전송하면, ToR 스위치에서 발생하는 인캐스트 정체를 활성적으로 회피할 수 있다.
도 2는 본 발명에 따른 인캐스트-회피 알고리즘을 제공한다. 인캐스트-회피 알고리즘은 집성기 및 복수의 워커들을 포함하는 네트워크에서 네트워크 정체를 회피하기 위한 집성기에서 수행된다. 요약하면, 라인 수들(9 내지 16)은 동일한 병목 링크를 공유하는 TCP 접속들(즉, 워커들)의 총 수를 카운팅하기 위한 것이다. 집성기가 ACK를 전송할 필요가 있을 때마다, 집성기는 라인들(19 내지 21)에서, 워커들에 의해 주입된 패킷들의 총 수를 제어하기 위한 애드버타이즈를 계산한다. 그리고 그 다음, 23 내지 28에서 ACK_지연(
Figure pct00028
)이 행해질 것이지만, 그것은 제 1 ACK에 대한 균일 랜덤 지연이다. 라인들(20)에서, 링크 용량은 ToR 스위치에 접속된 인터페이스의 링크 레이트를 의미하고, 그것은 TCP 계층에서의 획득가능한 정보임이 가정된다. 마지막으로, ACK_지연이 0보다 크면, 애드버타이즈를 갖는 ACK는 라인들(30 내지 34)에서, 지연 타이머가 만료된 후에 전송될 것이다. 이것은 또한 본 발명의 알고리즘이 지연된 ACK가 아니라 즉각적인 ACK를 이용함을 암시한다.
상세한 IA-TCP 알고리즘이 뒤따른다. 집성기는 집성기와 워커들 사이의 TCP 접속들의 수를 카운팅한다(라인들(9 내지 16)). 전역 변수(global variable)는 tcp_num←0으로서 초기화된다(라인들(9 및 10)). 그리고, 전역 변수는 접속이 생성될 때마다(라인들(12 및 13)), 증가된다. 마찬가지로, 전역 변수는 접속이 폐쇄될 때마다(라인들(15 및 16)), 감소된다. 상기 경우들에서, 쿼리 요청들은 일반적으로 집성기로부터 각각의 워커로 전송된다. 이 이유 때문에, 본 발명은 데이터 패킷 제어보다 수신확인(ACK) 패킷 제어를 수행한다.
그리고 그 다음, 각각의 워커의 윈도우 크기(wi) 및 ACK 간격(
Figure pct00029
)은 집성 데이터 패킷 레이트를 링크 용량 미만으로 만들기 위해 집성기에서 조절된다.
먼저, 각각의 워커의 윈도우 크기(wi)는 조절된다(라인들(19 내지 21)). 집성기가 ACK를 전송할 필요가 있을 때마다(라인(19)), 윈도우 크기(wi)는 워커들에 의해 주입된 패킷들의 총 수를 제어하도록 계산된다(라인들(20 및 21)). 이 경우에, 모든 접속들의 윈도우 크기들은 IA-TCP 접속들 사이의 단순성 및 공정성을 위해 W와 같은 것이 되도록 가정된다. 그 다음, [수학식 1]로부터의 윈도우 크기들(W)은 다음과 같다.
[수학식 3]
Figure pct00030
(3)
표준 TCP를 이용하는 워커들이 기본적으로 인캐스트 회피를 위한 능력이 없기 때문에, 본 발명은 ACK 헤더에서의 애드버타이즈먼트 필드를 이용하여 각각의 접속의 윈도우 크기를 제어하기 위해 이 W를 이용한다. 예를 들면, BDP가 10MSS이고 n이 5이면, 애드버타이즈먼트 윈도우는 2일 수 있어서 각각의 워커는 RTT 당 2개의 데이터 패킷들을 전송하도록 허용된다. 그리고 그 다음, W의 최대 값에 대한 애드버타이즈먼트 윈도우는 다음의 것들로서 설정될 수 있다(라인(21)). 또한, 윈도우 크기는 정수 값이어야 하고 윈도우 크기의 최소 값은 1임에 주의한다.
[수학식 4]
Figure pct00031
(4)
둘째, ACK_지연(
Figure pct00032
)이 조절될 것이지만, 그것은 제 1 ACK에 대한 균일 랜덤 지연이다(라인들(23 내지 28)). 각각의 ACK 패킷에 ACK_지연(
Figure pct00033
)을 부가하는 것은 집성기 측에서 실행된다. 이 지연은 집성 데이터 패킷 레이트가, W가 1 미만일 때, 링크 용량을 초과하는 것을 방지하지만, 애드버타이즈먼트 윈도우는 [수학식 4]에 의해 1이 된다. [수학식 2], [수학식 3], 및 [수학식 4]로부터, 결과로서 다음식이 된다.
[수학식 5]
Figure pct00034
(5)
그리고 그 다음, ACK_지연이 0보다 크면, 애드버타이즈를 갖는 ACK는 지연 타이머가 만료된 후에 전송될 것이다(라인들(30 내지 34)).
Figure pct00035
가 음이면, ACK는 지연 없이 즉시 전송될 수 있다(라인들(30, 32 내지 34)). 마지막으로, 두드러진 패킷들의 총 수가 집성기에 의해 제어될지라도, 모든 워커들의 전송 시간들이 비정상적으로 동기화되면, 오버플로우할 가능성이 있을 수 있다. 이러한 송신 동기화를 방지하기 위해,
Figure pct00036
대신에, 제 1 ACK_지연에 대한 균일 분포에 뒤따르는, 0으로부터 (RTT+
Figure pct00037
)까지의 랜덤 값이 선택된다. 도 3은 랜덤 지연이 랜덤 지연 기간(즉, 제 1 ACK) 동안 각각의 접속에 대해 주어져서, 모든 두드러진 패킷들이 다음 기간으로부터 n/(RTT+
Figure pct00038
)의 평균 간격을 갖는 경로를 통해 시기적절하게 분포되는 일례를 도시한다.
시뮬레이션 결과들
이제, IA-TCP 알고리즘은 NS-2에 의해 구현된다. 하나의 집성기 및 다수의 워커들은 동일한 ToR 스위치에 접속되고, 그의 버퍼 크기(포트 당)는 56 패킷들(공유 메모리의 4MB/52 포트들/MSS의 1.5kB를 가정하면)이다. 링크 용량은 1Gbps로 설정되고, 워커들과 집성기 사이의 왕복 전파 지연은 100us로 설정된다. 모든 실험들에서, 집성기는 워커들로 10B의 요청 쿼리를 전송하고 그 다음, 각각의 워커는 집성기에 특정 크기의 데이터를 응답한다. 패킷 크기는 1500 바이트들로 고정되고 RTOmin는 200ms로 설정된다.
기존의 정체 회피 방식들(예를 들면, ICTCP)의 코드 비이용가능성 때문에, IA-TCP 알고리즘은 TCP SACK 및 1-win TCP와 비교되고, 그의 전송 윈도우 크기는 1로 고정되고, 이에 의해 확장가능성에 관한 윈도우-기반 정체 제어 방식들의 제한이 확인될 수 있다.
- A. 어떠한 백그라운드 트래픽도 갖지 않는 집성 굿풋 및 타임아웃의 비
제안된 방식을 평가하기 위한 가장 중요한 성능 메트릭은 얼마나 많은 인캐스트 정체가 완화되는지를 도시하는 것일 것이다. 응답 데이터 크기를 64kB, 128kB, 및 256kB로 설정함으로써 집성 굿풋 및 타임아웃의 비가 측정된다. 집성 굿풋은 다수의 워크들 사이에 쿼리 요청을 전송하는 것으로부터 마지막 데이터 패킷을 수신하는 것까지 시간에 따라 워커들로부터 수신된 데이터의 총 량을 의미한다. 결과들은 100번 반복들로 평균된다. 타임아웃의 비는 반복의 총 수(즉, 100)에 따라 적어도 한번의 타임아웃을 경험하는 시뮬레이션들의 수를 의미한다. 실제의 데이터 센터에서 90번째 백분위수에 대해 집성기로의 약 100개의 동시 접속들이 존재할 수 있기 때문에, 최대 96까지 워커들의 수가 증가될 수 있다. 여기서 어떠한 백그라운드 트래픽도 존재하지 않는다.
도 4는 집성 굿풋의 그래프를 제공하고 1-win TCP가, 그것이 특정한 범위에서 가장 높은 굿풋을 도시할지라도, 워커들의 수가 32보다 많을 때 성능 저하를 도시함이 관측된다. 이 결과는 데이터 센터 네트워크들에서 윈도우-기반 정체 제어에 대한 제한을 드러낸다. 즉, 최소 윈도우 크기(1-윈도우)는 워커들의 수가 증가함에 따라 인캐스트 정체를 야기할 수 있다. 한편, IATCP의 굿풋은 높은 집성 굿풋을 성취하고 있다. 이것은 워커들이 높은 확장가능성을 갖는 작은 네트워크 파이프를 공유할 수 있도록, 제안된 방식이 모든 접속들의 데이터 패킷 레이트를 잘 제어함을 도시한다.
도 5는 TCP 타임아웃의 비의 그래프를 제공한다. 그래프는 워커들의 수가 8 및 24보다 많을 때의 100%의 타임아웃의 비에 대한 TCP SACK 및 1-win TCP 경험 각각을 도시하지만, IA-TCP는 모든 실험들에서 0의 타임아웃을 도시한다. 또한, 기존의 윈도우-기반 인캐스트 회피 방식들 즉, DCTCP 및 ICTCP가 적어도 하나의 타임아웃을 야기함을 고려할 때(그들의 실험 셋업에서 35보다 많은 워커들일 경우), 본 발명의 IA-TCP 알고리즘은 워커들의 수에 관하여 더 확장가능하다.
- B. 롱-텀 백그라운드 TCP 흐름을 갖는 집성 굿풋
도 6은 분할/집성 흐름들의 집성 굿풋을 도시한다. 1-win TCP 및 TCP SACK 둘 모두가 백그라운드 TCP 흐름으로 인해 매우 저하되지만, IA-TCP의 굿풋은 워커들의 수가 증가함에 따라 높아지고 있음이 관측된다. 응답 데이터의 크기에서의 차는 IA-TCP의 굿풋에 거의 영향을 주지 않을 것 같다. 이 시뮬레이션은 또한 IA-TCP에 대해 타임아웃이 없음을 도시하지만, 이것은 여기서 스킵(skip)된다.
- C. 쿼리 완료 시간
많은 분할/집성 애플리케이션들이 소프트 실시간 특성을 갖기 때문에, 짧고 긴 흐름들이 공존할 때의 쿼리 완료 시간을 측정하는 것이 중요하다. 30개의 짧은 흐름들 및 1개의 긴 흐름이 구동되고, 그들의 완료 시간은 도 7에서 도시된 바와 같이 측정된다. 응답 데이터 크기는 짧은 흐름들에 대해 10kB이고 긴 흐름에 대해 10MB이다. TCP SACK의 경우에, 짧은 흐름들의 평균 쿼리 완료 시간이 상대적으로 높음이 관측되는데, 이는 대부분의 짧은 흐름들이 인캐스트 정체에 의해 야기된, 패킷 손실 및 타임아웃을 경험하기 때문이다. 1-win TCP는 TCP SACK보다 훨씬 낮은 평균 완료 시간을 도시하지만, 긴 흐름에 의해 영향을 받는 일부 흐름들이 더 긴 완료 시간을 갖기 때문에, 전체적인 성능은 저하될 수 있다. IA-TCP는 인캐스트 정체를 회피함으로써 짧은 흐름들에 대해 매우 빠른 평균 및 가장 긴 완료 시간을 도시한다. IA-TCP가 네트워크 파이프를 효율적으로 이용함으로써 다른 것들보다 빠르게 긴 메시지를 전송함이 또한 관측된다.
- D. IA - TCP 흐름들 사이의 공정성
마지막으로, 동일한 병목 링크를 공유하는 다수의 IA-TCP 흐름들 사이의 굿풋 공정성이 측정된다. 레거시 프로토콜들(legacy protocols)에 대한 공정성은 고려되지 않는데, 이는 데이터 센터 환경이 일반적으로 동종 네트워크 및 단일의 관리 제어와 같은 럭셔리들(luxuries)을 제공하기 때문이다. 공정성을 측정하기 위해, 5개의 IA-TCP 흐름 그룹들은 도 8에서 도시된 바와 같이 3초 간격을 갖고 순차적으로 시작한다. 각각의 그룹은 8개의 IA-TCP 흐름들로 구성되고, 각각의 흐름의 응답 데이터 크기는 100MB이다. 도 8로부터, 각각의 그룹에서의 모든 흐름들은 동일한 대역폭 부분을 갖고, 모든 그룹들은 그룹들이 부가되고/종료될 때 대역폭을 공정하게 공유함이 관측된다.
본 발명이 레이트-기반 정체 제어 알고리즘인 인캐스트-회피 TCP(IA-TCP)에 대하여 설명될지라도, 본 발명은 그렇게 제한되지 않는다. 당업자는 하나의 노드가 또 다른 노드로 그것의 접속을 전송하는 다른 네트워크들로 여기서의 교시들을 용이하게 확장할 수 있다. 게다가, 본 발명은 무선, 라디오, 셀룰러 또는 다른 비-유선 애플리케이션들에서 이용하기 위해 바람직할 수 있지만, 본 발명은 그렇게 제한되지 않고 패킷-기반 통신을 지원하는 유선 또는 광 네트워크들에서 이용될 수 있다.
본 발명은 상기 방법들을 실행하기 위해, 방법들, 장치, 디바이스들, 및 시스템들의 형태로 구현될 수 있다. 본 발명은 또한 CD-ROMS, 하드 드라이브들과 같은, 유형의 매체들, 또는 임의의 다른 기계-판독가능한 저장 매체에서 컴퓨터 프로그램 코드의 형태로 구현될 수 있고, 프로그램 코드가 컴퓨터와 같은, 기계로 로딩(loading)되고 상기 기계에 의해 실행될 때, 기계는 본 발명을 실행하기 위한 장치가 된다. 본 발명은 또한 예를 들면, 저장 매체에 저장되거나, 기계에 로딩되고/로딩되거나 상기 기계에 의해 실행되거나, 전기 배선 또는 케이블링(cabling)을 통하거나, 광섬유들을 통하는 것과 같은, 일부 송신 매체를 통해, 또는 전자기 방사를 통해 송신되든지 간에 프로그램 코드의 형태로 구현될 수 있고, 프로그램 코드가 컴퓨터와 같은, 기계로 로딩되고 상기 기계에 의해 실행될 때, 기계는 본 발명을 실행하기 위한 장치가 된다. 범용 처리기 상에서 구현될 때, 프로그램 코드 세그먼트들은 특정 논리 회로들과 유사하게 동작하는 고유 디바이스를 제공하기 위해 처리기와 조합한다.
본 발명의 본질을 설명하기 위해 설명되고 도시된 상세들, 재료들, 및 부분들의 배열들에서의 다양한 변경들이 다음 청구항들에서 표현된 바와 같이 본 발명의 원리 및 범위로부터 벗어나지 않고 당업자들에 의해 행해질 수 있음이 또한 이해될 것이다.
본 발명은 온라인 서비스들에 제공될 수 있고 데이터 센터 네트워크들에서 전형적인 인캐스트 정체 문제점을 완전하게 회피하기 위해 그들 자신의 데이터 센터들을 동작시킨다. 본 발명은 클라우드 서비스들, 웹 탐색, 등과 같은 데이터 센터 애플리케이션들이 실질적으로 더 양호한 성능 즉, 서비스 품질(QoS)을 도시할 잇점을 위해 제공된다.

Claims (26)

  1. 집성기 및 복수의 워커들(workers)을 포함하는 네트워크에서 네트워크 정체를 회피하기 위한 방법으로서, 상기 복수의 워커들은 상기 집성기로의 동일한 병목 링크(bottleneck link)를 공유하는, 상기 방법에 있어서:
    상기 집성기와 상기 워커 사이의 접속들의 수를 카운팅(counting)하는 단계;
    상기 워커들 각각의 윈도우 크기(W)를 조절하는 단계로서, 상기 윈도우 크기(W)는 상기 접속들의 수에 기초하는, 상기 조절하는 단계;
    ACK에 ACK 지연(
    Figure pct00039
    )을 부가하는 단계로서, 상기 ACK 지연(
    Figure pct00040
    )은 상기 윈도우 크기(W)에 기초하는, 상기 부가하는 단계; 및
    상기 워커로 상기 윈도우 크기(W)를 갖는 ACK를 전송하는 단계를 포함하는, 네트워크 정체를 회피하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 접속들의 수를 카운팅하는 단계는 또한 상기 접속들의 수를 초기화하는 단계를 포함하는, 네트워크 정체를 회피하기 위한 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 접속들의 수는 상기 접속이 생성될 때마다 증가되고, 상기 접속들의 수는 상기 접속이 폐쇄될 때마다 감소되는, 네트워크 정체를 회피하기 위한 방법.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 접속들의 수를 카운팅하는 단계는 또한 상기 워커들 각각으로 쿼리 요청을 전송하는 단계를 포함하는, 네트워크 정체를 회피하기 위한 방법.
  5. 제 1 항에 있어서,
    모든 접속들의 윈도우 크기들(W)은 동일한 것인, 네트워크 정체를 회피하기 위한 방법.
  6. 제 1 항 또는 제 5 항에 있어서,
    상기 윈도우 크기(W)를 조절하는 단계는 또한 상기 윈도우 크기(W)를 최대 값으로 설정하는 단계를 포함하는, 네트워크 정체를 회피하기 위한 방법.
  7. 제 6 항에 있어서,
    상기 윈도우 크기의 최대 값은
    Figure pct00041
    이고
    여기서, 애드버타이즈(advertise)는 상기 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수인, 네트워크 정체를 회피하기 위한 방법.
  8. 제 1 항에 있어서,
    상기 ACK 지연(
    Figure pct00042
    )은
    Figure pct00043
    이고
    여기서, 애드버타이즈는 상기 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수인, 네트워크 정체를 회피하기 위한 방법.
  9. 제 1 항 또는 제 8 항에 있어서,
    상기 ACK 지연(
    Figure pct00044
    ) 중 제 1 지연 대신에, 균일 분포에 뒤따르는, 0으로부터 (RTT+
    Figure pct00045
    )까지의 랜덤 값이 선택되고,
    여기서, RTT는 최소 왕복 시간인, 네트워크 정체를 회피하기 위한 방법.
  10. 제 1 항에 있어서,
    상기 윈도우 크기(W)를 갖는 상기 ACK를 전송하는 단계는 상기 ACK 지연(
    Figure pct00046
    )이 0보다 크면, 지연 타이머가 만료된 후에 실행되는, 네트워크 정체를 회피하기 위한 방법.
  11. 제 1 항에 있어서,
    상기 윈도우 크기(W)를 갖는 상기 ACK를 전송하는 단계는 상기 ACK 지연(
    Figure pct00047
    )이 음이면, 지연 없이 즉시 실행되는, 네트워크 정체를 회피하기 위한 방법.
  12. 제 1 항에 있어서,
    상기 방법은 TCP 계층에서 실행되는, 네트워크 정체를 회피하기 위한 방법.
  13. 제 1 항에 있어서,
    상기 방법은 레이트-기반 정체 제어 알고리즘인, 네트워크 정체를 회피하기 위한 방법.
  14. 집성기 및 복수의 워커들을 포함하는 네트워크에서 네트워크 정체를 회피하기 위한 상기 집성기로서, 상기 복수의 워커들은 상기 집성기로의 동일한 병목 링크를 공유하고, 상기 집성기는 처리기 및 트랜시버를 포함하는, 상기 집성기에 있어서,
    상기 처리기는:
    상기 집성기와 상기 워커 사이의 접속들의 수를 카운팅하는 것;
    상기 워커들 각각의 윈도우 크기(W)를 조절하는 것으로서, 상기 윈도우 크기(W)는 접속들의 수에 기초하는, 상기 조절하는 것; 및
    ACK에 ACK 지연(
    Figure pct00048
    )을 부가하는 것으로서, 상기 ACK 지연(
    Figure pct00049
    )은 상기 윈도우 크기(W)에 기초하는, 상기 부가하는 것을 수행하도록 구성되고,
    상기 트랜시버는 상기 워커로 상기 윈도우 크기(W)를 갖는 상기 ACK를 전송하는 것을 수행하도록 구성되는, 네트워크 정체를 회피하기 위한 집성기.
  15. 제 14 항에 있어서,
    상기 접속들의 수를 카운팅하는 것은 또한 상기 접속들의 수를 초기화하는 것을 포함하는, 네트워크 정체를 회피하기 위한 집성기.
  16. 제 14 항 또는 제 15 항에 있어서,
    상기 접속들의 수는 상기 접속이 생성될 때마다 증가되고, 상기 접속들의 수는 상기 접속이 폐쇄될 때마다 감소되는, 네트워크 정체를 회피하기 위한 집성기.
  17. 제 14 항 또는 제 15 항에 있어서,
    접속들의 수를 카운팅하는 것은 또한 트랜시버를 통해 워커들 각각으로 쿼리 요청을 전송하는 것을 포함하는, 네트워크 정체를 회피하기 위한 집성기.
  18. 제 14 항에 있어서,
    모든 접속들의 윈도우 크기들(W)은 동일한 것인, 네트워크 정체를 회피하기 위한 집성기.
  19. 제 14 항 또는 제 18 항에 있어서,
    상기 윈도우 크기(W)를 조절하는 것은 또한 상기 윈도우 크기(W)를 최대 값으로 설정하는 것을 포함하는, 네트워크 정체를 회피하기 위한 집성기.
  20. 제 19 항에 있어서,
    상기 윈도우 크기의 최대 값은
    Figure pct00050
    이고
    여기서, 애드버타이즈는 상기 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수인, 네트워크 정체를 회피하기 위한 집성기.
  21. 제 14 항에 있어서,
    상기 ACK 지연(
    Figure pct00051
    )은
    Figure pct00052
    이고
    여기서, 애드버타이즈는 상기 윈도우 크기이고, MSS는 최대 세그먼트 크기이고, RTT는 최소 왕복 시간이고, n은 동시 접속들의 총 수인, 네트워크 정체를 회피하기 위한 집성기.
  22. 제 14 항 또는 제 21 항에 있어서,
    상기 ACK 지연(
    Figure pct00053
    ) 중 제 1 지연 대신에, 균일 분포에 뒤따르는, 0으로부터 (RTT+
    Figure pct00054
    )까지의 랜덤 값이 선택되고,
    여기서, RTT는 최소 왕복 시간인, 네트워크 정체를 회피하기 위한 집성기.
  23. 제 14 항에 있어서,
    상기 윈도우 크기(W)를 갖는 상기 ACK를 전송하는 것은 상기 ACK 지연(
    Figure pct00055
    )이 0보다 크면, 지연 타이머가 만료된 후에 실행되는, 네트워크 정체를 회피하기 위한 집성기.
  24. 제 14 항에 있어서,
    상기 윈도우 크기(W)를 갖는 상기 ACK를 전송하는 것은 상기 ACK 지연(
    Figure pct00056
    )이 음이면, 지연 없이 즉시 실행되는, 네트워크 정체를 회피하기 위한 집성기.
  25. 네트워크 정체를 회피하기 위한 네트워크 시스템으로서, 제 14 항 내지 제 26 항 중 어느 한 항에 따른 집성기 및 복수의 워커들을 포함하는, 상기 네트워크 시스템에 있어서,
    상기 워커들은 상기 집성기로의 동일한 병목 링크를 공유하는, 네트워크 정체를 회피하기 위한 네트워크 시스템.
  26. 집성기 및 복수의 워커들을 포함하는 네트워크에서 네트워크 정체를 회피하기 위한 컴퓨터 프로그램에 있어서,
    복수의 워커들은 상기 집성기로의 동일한 병목 링크를 공유하고, 상기 컴퓨터 프로그램은 제 1 항 내지 제 13 항 중 어느 한 항에 따른 방법을 실행하는, 네트워크 정체를 회피하기 위한 컴퓨터 프로그램.
KR1020147005423A 2011-09-06 2011-09-06 네트워크 정체를 회피하기 위한 방법 및 그의 장치 KR101709932B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2011/006566 WO2013035897A1 (en) 2011-09-06 2011-09-06 A method for avoiding network congestion and an apparatus thereof

Publications (2)

Publication Number Publication Date
KR20140049581A true KR20140049581A (ko) 2014-04-25
KR101709932B1 KR101709932B1 (ko) 2017-02-24

Family

ID=47832324

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147005423A KR101709932B1 (ko) 2011-09-06 2011-09-06 네트워크 정체를 회피하기 위한 방법 및 그의 장치

Country Status (8)

Country Link
US (1) US9356878B2 (ko)
EP (1) EP2754274B1 (ko)
JP (1) JP5819530B2 (ko)
KR (1) KR101709932B1 (ko)
CN (1) CN103782534B (ko)
BR (1) BR112014005189A2 (ko)
TW (1) TWI487389B (ko)
WO (1) WO2013035897A1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10230610B2 (en) * 2013-07-31 2019-03-12 Adaptive Spectrum And Signal Alignment, Inc. Method and apparatus for continuous access network monitoring and packet loss estimation
US9219671B2 (en) * 2013-12-06 2015-12-22 Dell Products L.P. Pro-active MPIO based rate limiting to avoid iSCSI network congestion/incast for clustered storage systems
CN104092625B (zh) * 2014-05-28 2017-07-18 中南大学 一种用于dcn中的自适应请求分批调度方法
TWI580226B (zh) * 2014-06-12 2017-04-21 智邦科技股份有限公司 決定最大分段大小値之方法
CN105530110B (zh) * 2014-09-30 2019-07-23 华为技术有限公司 一种网络故障检测方法以及相关网元
US9893944B2 (en) * 2014-10-01 2018-02-13 International Business Machines Corporation Managing network bandwidth based on cognitive analysis of site content against organizational needs
JP6409558B2 (ja) * 2014-12-19 2018-10-24 富士通株式会社 通信装置、中継装置、および、通信制御方法
CN106576100B (zh) * 2015-03-26 2019-08-16 华为技术有限公司 Tcp网络代理配置方法和装置
CN105207944B (zh) * 2015-08-13 2019-01-15 清华大学 基于fast tcp的传输控制方法
CN105847175A (zh) * 2016-04-21 2016-08-10 中国科学院信息工程研究所 数据中心网络中的应用层调度方法
EP3442180B1 (en) * 2016-04-28 2020-11-11 Huawei Technologies Co., Ltd. Congestion processing method, host, and system
CN108713311A (zh) * 2016-04-29 2018-10-26 华为技术有限公司 一种传输控制协议tcp报文的传输方法、设备及***
CN106059914B (zh) * 2016-05-09 2019-05-03 中国人民解放军国防科学技术大学 一种基于单维最小化分组的不确定incast流量聚合方法
CN105827537B (zh) * 2016-06-01 2018-12-07 四川大学 一种基于quic协议的拥塞改进方法
US10091118B2 (en) * 2017-01-27 2018-10-02 Verizon Patent And Licensing Inc. Maximizing throughput over a TCP link by boosting packet transmission
JP6859776B2 (ja) * 2017-03-16 2021-04-14 日本電気株式会社 無線アクセスネットワーク装置
CN108833293B (zh) * 2018-06-20 2021-01-26 北京邮电大学 一种基于软件定义网络sdn的数据中心拥塞控制方法及装置
US11102129B2 (en) * 2018-09-09 2021-08-24 Mellanox Technologies, Ltd. Adjusting rate of outgoing data requests for avoiding incast congestion
KR102139378B1 (ko) * 2018-11-20 2020-07-29 울산과학기술원 혼잡 제어 방법 및 장치
CN111079948B (zh) * 2019-12-27 2023-02-24 电子科技大学 一种基于sdn的分布式机器学习训练加速方法
CN114629847B (zh) * 2022-03-08 2023-09-08 西安电子科技大学 基于可用带宽分配的耦合多流tcp拥塞控制方法
CN115174500B (zh) * 2022-05-23 2023-09-12 北京大学 一种基于pisa的用于网内聚合传输的发送节点和交换机
CN116527585B (zh) * 2023-07-05 2023-08-29 天地信息网络研究院(安徽)有限公司 一种流长度感知的拥塞控制方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060155870A1 (en) * 2000-10-06 2006-07-13 Apple Computer Inc. Connectionless protocol
JP2009077036A (ja) * 2007-09-19 2009-04-09 Nec Corp 通信装置および通信方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193151A (en) * 1989-08-30 1993-03-09 Digital Equipment Corporation Delay-based congestion avoidance in computer networks
SG87029A1 (en) 1999-05-08 2002-03-19 Kent Ridge Digital Labs Dynamically delayed acknowledgement transmission system
JP2009284529A (ja) * 2003-11-27 2009-12-03 Nec Corp 帯域制御装置、帯域制御方法及び帯域制御プログラム
JP2005286530A (ja) * 2004-03-29 2005-10-13 Matsushita Electric Ind Co Ltd ルーター
US20090268747A1 (en) * 2005-10-03 2009-10-29 Hiroshi Kurata Communication apparatus
US20100054123A1 (en) * 2008-08-30 2010-03-04 Liu Yong Method and device for hign utilization and efficient flow control over networks with long transmission latency
US9001663B2 (en) * 2010-02-26 2015-04-07 Microsoft Corporation Communication transport optimized for data center environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060155870A1 (en) * 2000-10-06 2006-07-13 Apple Computer Inc. Connectionless protocol
JP2009077036A (ja) * 2007-09-19 2009-04-09 Nec Corp 通信装置および通信方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YANG ZHANG, On Mitigating TCP Incast in Data Center Networks, IEEE INFOCOM 2011, 2011년 4월 *

Also Published As

Publication number Publication date
JP2014529974A (ja) 2014-11-13
CN103782534A (zh) 2014-05-07
BR112014005189A2 (pt) 2017-03-21
EP2754274A1 (en) 2014-07-16
KR101709932B1 (ko) 2017-02-24
US20140185453A1 (en) 2014-07-03
CN103782534B (zh) 2018-01-23
WO2013035897A1 (en) 2013-03-14
EP2754274A4 (en) 2015-04-29
TWI487389B (zh) 2015-06-01
TW201318446A (zh) 2013-05-01
JP5819530B2 (ja) 2015-11-24
US9356878B2 (en) 2016-05-31
EP2754274B1 (en) 2017-06-14

Similar Documents

Publication Publication Date Title
KR101709932B1 (ko) 네트워크 정체를 회피하기 위한 방법 및 그의 장치
Hwang et al. IA-TCP: a rate based incast-avoidance algorithm for TCP in data center networks
CN104092625B (zh) 一种用于dcn中的自适应请求分批调度方法
Sreenivas et al. L2DB-TCP: An adaptive congestion control technique for MANET based on link layer measurements
Zheng et al. An effective approach to preventing TCP incast throughput collapse for data center networks
Oo et al. A proxy acknowledgement mechanism for TCP variants in mobile ad hoc networks
CN102088414B (zh) 随机和弃头结合的被动队列管理的方法
Pu et al. Enhancements on router-assisted congestion control for wireless networks
Isobe et al. Tcp acceleration technology for cloud computing: Algorithm, performance evaluation in real network
Jasem et al. Evaluation study for delay and link utilization with the new-additive increase multiplicative decrease congestion avoidance and control algorithm
Bianco Performance of the TCP Protocol over ATM Networks
Pradeep et al. Comparison of drop rates in different TCP variants against various routing protocols
JP6973511B2 (ja) 通信装置、通信システム、通信方法及びプログラム
Abed et al. Influence of parameters variation of TCP-Vegas in performance of congestion window over large bandwidth-delay networks
Sreekumari et al. A simple and efficient approach for reducing TCP timeouts due to lack of duplicate acknowledgments in data center networks
CN102123094B (zh) 两次随机丢包的被动队列管理的方法
Alubady et al. Enhancing transmission control protocol performance for Mobile Ad-hoc network
Deng et al. Mip: Minimizing the idle period of data transmission in data center networks
Chen et al. Improved solution to TCP incast problem in data center networks
Oo et al. How good delayed acknowledgement effects rate-based pacing tcp over multi-hop wireless network
Sarkar et al. Modified TCP Peach Protocol for Satellite based Networks
Ahmad et al. Packet loss estimation using Poisson random process for improving multimedia transmission in MANETs
Kadhum et al. The effect of ECN on short TCP sessions
Daniel et al. Enhancing TCP with cross-layer notifications and capacity estimation in heterogeneous access networks
Pu et al. Applying router-assisted congestion control to wireless networks: challenges and solutions

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2015101004791; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20150819

Effective date: 20161216

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant