[RE] Internet에서 congestion(혼잡)이 발생하는 이유?
Reg. Date: April 22, 2003 By 김학용
인터넷에서 혼잡이 발생하는 이유에는 여러가지가 있습니다.
님께서 생각하고 계신 것들도 이유가 되고 앞으로 말씀드리려 하는 것들,
그리고 이곳에서 생각하지 못한 것들도 이유가 될 수 있습니다.
먼저 혼잡이 무엇인지를 생각해 봅시다. 혼잡이라는 것은 어느 수준
이상으로 큐에 패킷이 쌓여 있는 상태를 말합니다.
이렇게 되기 위해서는 다음 두 가지 현상 중 어느 하나가 발생해야 하죠.
첫째, 서비스 할 수 있는 것보다 많이 도착하는 경우.
둘째, 서비스 할 수 있는 수준 내에서 도착하지만, 제대로 서비스를
못 해주는 경우.
먼저, 두 번째 경우부터 생각하면, 그 이유는 간단합니다.
즉, 서비스 정책이 잘못 되었다던지 효율적이지 못하다던지 하는 것이죠.
예를 들어서, 우선순위가 다른 두 종류의 트래픽이 있을 때 priority queueing
을 사용하게 되면 높은 우선 순위 트래픽은 언제나 서비스가 되지만,
그렇지 않은 트래픽은 계속해서 큐에 쌓이게 되고 혼잡이 발생하게 됩니다.
그렇다면, 서비스 할 수 있는 것보다 많이 도착하는 경우는 어떤 이유 때문에
발생할까요? 여기에는 여러가지 이유가 있습니다. 첫째, TCP 처럼 흐름 제어를
하는 트래픽 소스가 전송 속도를 증가 시키는 경우가 있습니다. 둘째, 라우팅
알고리즘 때문에 많은 트래픽이 한쪽으로 몰리는 경우 발생할 수 있습니다.
셋째, 라우팅 패쓰에 오류가 발생해서 리라우팅 되는 경우가 있습니다.
그리고, 악의적으로 트래픽을 증가시키는 경우(지난번 인터넷 대란)에도
혼잡은 발생하죠. 또 하나, 트래픽이 버스트한 경우에도 혼잡이 발생할 수
있습니다. 즉, 어느 한 순간에 트래픽이 집중되서 전송되면 혼잡이 발생되죠.
부차적인 원인들로 생각해 볼 수 있는 것은, 액세스 제어 혹은 수락 제어가
제대로 구현되지 않아서 과도하게 들어오는 트래픽을 막아내지 못하는
경우도 혼잡이 발생할 수 있습니다. 이 외에도 여러 가지가 있겠지만,
이상이 제가 생각할 수 있는 것들입니다.
http://hakyongkim.net
>안녕하세요?
>저는 현재 TCP Congestion Control 부분을 공부하려고 하는 학생입니다.
>Congestion Control Algorithms에는 혼잡제어기법과 혼잡회피기법이 있잖아요
>혼잡제어 기법에는 slow start, fast retransmit등등
>혼잡회피 기법에는 RED, DECbit 등이 있는데 이런한 기법들은 말그대로 혼잡을
>막기위한 기법이고 이러한 자료는 찾아서 읽어 보았는데요
>저는 기초부터 튼튼히~*^.^* 잘 알고 싶습니다.
>즉, 인터넷상에서 왜 혼잡이 발생되는지 원인을
>자세히 알고 싶습니다.
>제가 알기로는 이렇습니다.
>첫째, TCP에서 발생하는 재전송 패킷으로 인하여 네트웤상에 전달되고 패킷의 수가 늘어남으로
>둘째, 네크웍상의 라우터나 스위치의 버퍼에 처리 대기 중인 패킷의 수가 증가함으로써 버퍼의 크기 제한때문에 전달되지 못하고 버려지는 패킷으로 인해
>....
>....
>...
>등등 혼잡 발생 원인이 많을 것인데요
>정확히 혼잡이 발생하는 근본을 알아서 TCP Congestion Control
>공부해나가는데 한걸음 나아가려 합니다.
>정확히 혼잡 발생 원인에 대해 잘 정리된 자료나 논문,,,책등을
>고수님께서 추천해주시거나 알고계시다면 답변을 듣고 싶습니다.
>
>그럼 오늘도 행복한 하루 되시길.........