커널 3.3 에 릴리즈된 주요 내용중 Bufferbloat fighting 에 대한 내용이 있습니다.

   원문은 아래와 같습니다.


   http://kernelnewbies.org/LinuxChanges


1.5. Bufferbloat fighting: Byte queue limits

Recommended LWN article: Network transmit queue limits

"Bufferbloat" is a term used to describe the latency and throughput problems caused by excessive buffering trough the several elements of a network connection. Some tools are being developed to help to alleviate these problems, and this feature is one of them.

Byte queue limits are a configurable limit of packet data that can be put in the transmission queue of a network device. As a result one can tune things such that high priority packets get serviced with a reasonable amount of latency whilst not subjecting the hardware queue to emptying when data is available to send. Configuration of the queue limits is in the tx-<n> sysfs directory for the queue under the byte_queue_limits directory.



저도 이 기능이 무엇인지 정확히 몰라 서치를 좀 해봤는데요. 의외로 흥미로운 내용이었습니다.

"Bufferbloat" 라는 것은 수많은 네트워크 연결이 있는 시스템에서 네트워크의 양이 증가하다 보면, 

대역폭을 초과하는 전송량이 발생하게 되고 버퍼가 필요한 현상이 발생하는데,

버퍼의 크기가 커지게 되면 오히려 그것이 원인이 되어 지연시간이 증가하는 효과를 가져오게 되는데

이것이 "Bufferbloat" 라고 한다고 합니다.

음성통신을 하는데 이런 현상이 발생하면 곤란하겠죠?


이러한 문제를 해결하기 위해서 Byte queue limits 라는 알고리즘을 적용한 기능이 추가되었다고 합니다.

사용법은 sysfs 에서 설정이 가능하고  byte_queue_limits 라는 이름을 갖고 있다고 합니다.


커널에는 참 다양한 기능들이 있죠?