もしキャッシュDNSが無かったら、バルスでインターネット崩壊?

バルスの瞬間最大風速は 143,199tps と、公式アカウントはいう。


キャッシュDNSが返した応答は、たった 88 byte しかない。
これは以下のコマンドで分かる。


# dig twitter.com


ここから MSG SIZE を見るだけ。


じゃあ、キャッシュDNSが無かったら。
root DNS に聞いてみた。
dig @a.root-servers.net. twitter.com.


うん、単純に 528 byte あった。
単純に、呟きの数を掛け合わせると 75609072 byte くらい。
2を10乗した数で単位を変換。
75609072 / 1024 / 1024 = 72.1064300537109375
一度 1024 で割る毎に、単位は kb → mb になる。
root DNS が秒間 14 万 3 千クエリーを捌くと、72MBもの応答を返す必要に迫られる。


単位が MB だから気にしにくいけど、通信の世界だと 1 byte を 8bit にして bps (bit per second)で計算する(1Mbpsで125kb/s)から 9000 Mbps の帯域速度を持つ回線が必要だよね。計算が間違ってなければ。
秒間9ギガビット。普通の DDoS 並み。


これ、職場の演習問題にしてみようかな。
「キャッシュDNSが無い場合、バルスが唱えられたら何が起きるか」


一番被害を受けるのは root DNS だとしても、Twitter の権威 DNS もかなりヤバ気なんじゃないかな。


# dig twitter.com +trace


あんまり関係ないけど twitter.com. の TTL って 30 秒なんだね。
強気だなぁ…いろいろ弊害がありそうなものなんだけど。


とりあえずこれで NS を探して…


# dig @ns1.p34.dynect.net. twitter.com


これで MSG SIZE を出すと174 byte だったから 143,199tps を掛けて 24916626 byte の応答量。
ざっと計算して 2875 Mbps くらい?


やっぱり、キャッシュDNSって偉大だ…
なかったら、バルスを唱えられてインターネットが文字通り崩壊する危険性があるってんだから。
あって当然だけれども。
目立たないけれども。
地味だけれども。


とりあえず、ユーザ数の多いキャッシュDNSだと、メモリー上の内容を応答するだけとはいえ、どれだけの仕事をしてたのか気になる。