
Network is Fun! Quality of Service(QoS)

♩♪끊기지 않는 시그널 원해! 시그널 원해!♬♪
어떻게 하면 더 나은 인터넷 서비스를 제공할 수 있을까? 어떻게 하면 인터넷 품질을 향상시킬 수 있을까?는 네트워크 업계의 가장 큰 고민인데요.

인터넷 상에서 전송 서비스의 좋고 나쁨을 판단하는 기준인 'QoS(Quality of Service)'는 이름 그대로 '서비스의 퀄리티'를 제공하는 기술입니다. 사용자, 프로그램 데이터 흐름에 우선 순위를 정해 지속적인 네트워크 품질을 보장하죠.

QoS는 인터넷을 이루는 접속 라우터와 백본 라우터에서 주로 담당하는데요.

데이터들은 QoS에 따라 정해진 우선 순위대로 목적지로 신속하게 전송됩니다.

그런데 인터넷을 쓰다보면 짧은 시간에 처리할 수 있는 성능 이상의 패킷이 대량으로 발생되기도 하죠. 이러한 현상을 '혼잡'이라고 하는데요.

이렇게 혼잡이 발생할 경우 네트워크가 마비되는 것을 방지하기 위한 기술 중 하나로 '트래픽 성형(Traffic Shaping)'이 있습니다. 트래픽 성형은 과다 트래픽을 네트워크가 처리할 수 있는 정도로 조절해주는 기술이에요.

트래픽 성형에는 '리키 버킷(Leacky Bucket)'이라는 알고리즘이 쓰이는데요. 깔때기 모양의 리비 버킷은 용량 만큼의 패킷만 유입되고, 고정된 출구 크기 만큼의 패킷만 목적지로 전송해요.

만약 용량 이상의 패킷이 초과로 유입되면 부피 범위 내에서 내부 버퍼에 임시 저장돼 전송될 때가지 기다려야 하죠.

문제는 이렇게 한정된 리키 버킷 버퍼 내에 대량의 패킷이 한꺼번에 유입되는 '오버플로우' 현상이 발생하는 것인데요.

이럴 때는 버퍼 용량 이상의 패킷이 버려지는 '패킷 손실(Packet Loss)' 현상이 일어납니다. 이러한 패킷 손실은 특히 VoIP 품질에 큰 영향을 끼치지 유의해야 하죠.

지금까지 안 끊기는 시그널을 위한 네트워크 기술, QoS였습니다.