密かに話題のbufferbloat

21
密かに話題のBufferbloat Linux Network Schedulerの最適化 おおかわ かずひと Kauli, Inc.

Upload: kazuhito-ohkawa

Post on 24-May-2015

1.577 views

Category:

Technology


10 download

DESCRIPTION

Linux Network Schedulerの最適化

TRANSCRIPT

Page 1: 密かに話題のBufferbloat

密かに話題のBufferbloat

Linux Network Schedulerの最適化

おおかわ かずひとKauli, Inc.

Page 2: 密かに話題のBufferbloat

Bufferbloatとは

Page 3: 密かに話題のBufferbloat

不適切なネットワークキューイングや、過剰なバッファにより、

レイテンシーが悪化、または不安定な状態

Page 4: 密かに話題のBufferbloat

さらにレイテンシーの悪化、揺らぎにより、

TCPの輻輳制御の混乱を招き、スループットの低下も起こる

Page 5: 密かに話題のBufferbloat

全部LinuxのNetwork Schedulerが悪いんや…

Page 6: 密かに話題のBufferbloat

SKB

SKB

SKB

SKB

SKB

SKB

Queueing Discipline

NICBufflerIP Stack

ap db

in out

SKB

SKB

LinuxのNetwork SchedulerのデフォルトはFIFO

Page 7: 密かに話題のBufferbloat

極端な例で問題点を説明

Page 8: 密かに話題のBufferbloat

SKB

SKB

SKB

SKB

SKB

SKB

Queueing Discipline

NICBufflerIP Stack

app db

in out

SKB

SKB

なにも考えないで順番にキューイングしているだけ優先度、効率等は考慮されない

HighLatency

Low Latency

SKB

Page 9: 密かに話題のBufferbloat

同時に起こるNICのバッファサイズの問題

Page 10: 密かに話題のBufferbloat

SKB

SKB

SKB

SKB

SKB

SKB

SKB

SKB

SKB

Ring Buffer

Queue

in out

NICのバッファが大きいと・・・

HighLatency

NICSKB

バッファが大きいほどロスが増加

Low Latency

Page 11: 密かに話題のBufferbloat

遅いもの、大きいものは処理に時間がかかる

速いもの、小さいものはその逆

Page 12: 密かに話題のBufferbloat

しかも、後者の方が優先度高めのケースが多数

VoIPとかDNSとか

Page 13: 密かに話題のBufferbloat

近年議論が活発になり、対策が続々と登場

Page 14: 密かに話題のBufferbloat

アクティブキューイング (かっこいい!)

FIFOを廃止し、キューイングをさまざまな方法で制御

Page 15: 密かに話題のBufferbloat

代表的なもの

CoDel (Controlled Delay)

Page 16: 密かに話題のBufferbloat

SKB

SKB

SKB

SKB

SKB

SKB

Queueing Discipline

NICBufflerIP Stack

app db

in out

SKB

SKB

RTTやプロトコル等を考慮して必要に応じて割り込む

HighLatency

Low Latency

Page 17: 密かに話題のBufferbloat

キューの制限をする

Page 18: 密かに話題のBufferbloat

TCP small queues

Byte Queue Limits

Page 19: 密かに話題のBufferbloat

このあたりで力尽きたからオチ

Page 20: 密かに話題のBufferbloat

カーネルとOSは新しいに越したことないですね。。。

Page 21: 密かに話題のBufferbloat

おわり

フランちゃんウフフなインフラエンジニアかもしれないよ