chapter 24 congestion control

14
1 Chapter 24 Congestion Control

Upload: lenore

Post on 22-Jan-2016

46 views

Category:

Documents


0 download

DESCRIPTION

Chapter 24 Congestion Control. 트래픽 특성. 서비스에 따라 트래픽은 다양한 특성을 갖는다 . 트래픽의 특성을 나타내는 주요 파라메터 (traffic descriptor). 데이터 트래픽. 데이터 트래픽은 매우 불규칙적인 특성을 갖는다 .(bursty traffic) 반면에 전화망의 음성 트래픽은 비교적 일정한 흐름의 트래픽이다. 망에 입력되는 트래픽 양이 망이 처리할 수 있는 한도를 초과할 경우 체증이 발생한다 . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Chapter  24 Congestion Control

1

Chapter 24

Congestion Control

Page 2: Chapter  24 Congestion Control

2

트래픽 특성

서비스에 따라 트래픽은 다양한 특성을 갖는다 .

트래픽의 특성을 나타내는 주요 파라메터(traffic descriptor)

Page 3: Chapter  24 Congestion Control

3

데이터 트래픽

데이터 트래픽은 매우 불규칙적인 특성을 갖는다 .(bursty traffic)

반면에 전화망의 음성 트래픽은 비교적 일정한 흐름의 트래픽이다 .

Page 4: Chapter  24 Congestion Control

4

Congestion( 체증 , 혼잡 )

망에 입력되는 트래픽 양이 망이 처리할 수 있는 한도를 초과할 경우 체증이 발생한다 .

다음 그림은 단위 시간 당 입력되는 패킷의 수 (input load) 와 단위 시간당 처리되는 패킷의 수 (throughput), 그리고 패킷이 처리될 때 까지의 지연 시간 (delay) 관계를 보여 주고있다 .

Page 5: Chapter  24 Congestion Control

5

Congestion control

Congestion 은 패킷 망에서 해결해야 할 가장 중요한 과제이자 가장 어려운 과제 중의 하나이다 .

두 가지 congestion control 에 대한 접근법 Preventive congestion control

사전에 망에 입력되는 트래픽 양을 조절한다 . Reactive congestion control

체증현상이 발생할 때 트패픽 양을 감소시킨다 .

Page 6: Chapter  24 Congestion Control

6

Reactive congestion control

Congestion 의 발견 (detection) Congestion 이 발생하는 것을 인식한다 . 패킷의 지연시간 , 라우터의 버퍼의 길이 등을 계속

측정을 하면 congestion 상태의 초기에 이를 발견해 낼 수 있다 .

Congestion 에 대한 대응 ( 통보와 rate control) 트래픽을 과도하게 유발시키는 소스들이 체증이

해소될 때까지 트래픽을 보내는 것을 보류하도록 통보한다 .(notification)

교과서의 후방 압박 (backpressure) 이나 초크 패킷 전송이 그 예이다 .

Page 7: Chapter  24 Congestion Control

7

TCP congestion control

Congestion 의 발견 (detection) TCP 는 송신한 패킷에 대해서 ACK 을 수신한다 . 만약 정해진 시간이 지날 때 까지 ACK 이 도착하지

않으면 congestion 이 발생한 것으로 판단하다 .(timeout)

Rate control TCP 호스트는 처음에는 적은 양의 패킷 전송을 하고

점차 양을 늘려나간다 .(slow start) Congestion 이 발생한 것으로 판단되면 전송되는

패킷의 양을 초기 상태로 줄여서 다시 시작한다 .(congestion avoidance)

Page 8: Chapter  24 Congestion Control

8

Congestion control 파라메터

Awnd (advertised window by receiver) 초기 연결 설정 단계에서 , TCP 는 상대방 TCP 에게

자신의 최대 버퍼 크기 ( 초기 Awnd) 를 알려준다 . 세그먼트를 수신할 때 마다 TCP 는 현재 자신의 버퍼

중 비어있는 공간의 크기 (Awnd) 를 알려준다 . Cwnd (congestion window)

TCP 가 세그먼트를 전송할 때 ACK 을 받지않고 연속해서 보낼 수 있는 세그먼트의 양을 결정한다 .

즉 , TCP 흐름 제어에 의하면 TCP 는 Awnd 만큼 연속해서 세그먼트를 전송할 수 있다 . 하지만 congestion control 에 의해서 Awnd 만큼 전송할 수 없고 Cwnd 만큼 전송하게 된다 .

Page 9: Chapter  24 Congestion Control

9

Slow Start

initialize: cwnd = 1 (one maximum segment size);

For each segment that is acknowleged

cwnd = cwnd + 1 until min(cwnd, awnd)

Page 10: Chapter  24 Congestion Control

10

Congestion Avoidance

TCP 는 timeout 될 때까지 ACK 을 받지 못하면 congestion avoidance 를 수행한다 .

Congestion Avoidance

If (segment timeout)

1. Set threshold = cwnd/2

2. Set cwnd = 1 and

restart “slow-start” until (cwnd = threshold)

3. If (cwnd threshold)

cwnd = cwnd + 1 every roundtrip time

Page 11: Chapter  24 Congestion Control

11

cwnd

Round-trip times

15

20

5

21

10

43 5 126 98 107 1311 15 1614

Time out occurs

Threshold

Slow Start 와 Congestion Avoidance

Page 12: Chapter  24 Congestion Control

12

Fast Retransmit 와 Fast Recovery 동일한 ACK 을 3 개 받을 경우

Fast Retransmit Timeout 되기 전이라도 바로 재전송한다 .

Fast Recovery Cwnd 를 현재의 Cwnd 의 반으로 줄인다 . 그리고 줄인 Cwnd 에서부터 linear 하게

증가시킨다 .

Page 13: Chapter  24 Congestion Control

13

Fast Retransmit 와 Fast Recovery

Page 14: Chapter  24 Congestion Control

14

Cwnd 의 변화 예