web-dev-qa-db-ja.com

DNS帯域幅の推定:DNSリクエストの平均サイズ?

帯域幅の観点から、1か月に20,000,000のDNSリクエストが生成するトラフィック量を見積もろうとしています。以下に私の計算を含めますが、それらはすべて、DNSサーバーへの単純なA要求を行うために使用されるデータ量の見積もりに依存しています。

私のテストから、50バイトはほぼ正しいと思いますが、誰かが別の方法で知っているかどうか疑問に思いました。

クエリごとに約50バイトに基づく私の計算:

DNSリクエストの場合は520バイト____。] 313.46 kb/s

ここまで来てくれてありがとう!

5
James C

通常のDNSサーバーの応答は520バイトよりも小さいため、データには新しい近似値が必要だと思います(実際、ほとんどのルーター(またはネットワーク機器)は、UDPパケットサイズが512 kbを超えると頭痛の種になる可能性がありますが、ここではUDPについてのみ話しているわけではありません)。

ここでそれは行く-典型的なDNS要求のサイズを概算するために2つの非常に知られているLinuxツールを使用します。 linux.org + statsを掘る

; <<>> Dig 9.6.1-P1 <<>> linux.org +stats
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7061
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;linux.org.                     IN      A

;; ANSWER SECTION:
linux.org.              43200   IN      A       198.182.196.48

;; AUTHORITY SECTION:
linux.org.              43180   IN      NS      ns0.aitcom.net.
linux.org.              43180   IN      NS      ns.invlogic.com.

;; Query time: 239 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Oct 29 11:52:44 2009
;; MSG SIZE  rcvd: 100

ご覧のとおり、ローカルDNSサーバー、ループバックインターフェイス(単純化と明確化のため)にDNSクエリを実行しました。最後の行「MSG SIZE」が面白いはずです...

Tcpdumpで確認します(ループバックインターフェイスで実行)。

IP localhost.36855 > localhost.domain: 7061+ A? linux.org. (27)
IP localhost.domain > localhost.36855: 7061 1/2/0 A 198.182.196.48 (100)

各行の最後に表示されるのは、実際のサイズ(探しているもの)です。

複数のテストクエリを実行し、計算でDNSリクエストサイズを平均化することをお勧めします。 DNSサーバーから直接提供されていないドメインに注目してください(これは興味深いビットです)。

カプラ。

6
Raven007