DNS Working Group 報告

第5回 ETJP 全体ミーティング
2004/7/27

藤原和典
株式会社日本レジストリサービス(JPRS)
fujiwara@jprs.co.jp

DNS-WG:概要と目的
概要
日本国内で展開しうるENUMのDNSモデル
定義
要求仕様
評価基準
現在のDNS実装を性能評価

DNSSECのENUMへの適用について検討と評価
活動の成果
ENUM DNSに関するモデル・要求仕様
DNSサーバ評価結果
DNSSECのENUMへの適用についての調査結果

DNS-WG: 活動のマイルストーン:2004/3 DNSSEC対応レジストリシステムの提供
2004/4/E モデル定義
2004/4/E 要求仕様策定
2004/5/E 評価基準策定
2004/6DNSSECについての中間報告

2004/6/E テスト環境構築
2004/9/E DNSパフォーマンス評価報告
2004/9/E DNSSECについての報告

DNS-WGで想定するENUM DNS要求条件
目的トライアルおよび将来のENUMの商用利用に向けた基礎データ収集
DNSサーバの負荷について実機検証

DNS-WGで想定するENUMモデル
電話サービスのアドレス解決にENUMを用いる場合を想定
電話契約数、通話数をもとに必要条件を決定

登録数
系全体で1億件

DNSパフォーマンス条件
系全体で5万qps

DNSデータ更新頻度条件
変更までに30分

DNS-WG:想定するENUM DNS Tier構造
ENUM研究グループ報告書 23,24ページ (2)と(3)を検討
e164.arpa.

e164.arpa.
Tier0

Tier0
1.8.e164.arpa.

1.8.e164.arpa.
Tier1
Tier1
050xxxx 050yyyy03xxxx

Tier2
TNTN

Tier2

(2)

(2)たけのこモデル: NS Record: NAPTR Record(3)(3)割り当て単位モデル

DNS-WG: DNSサーバ性能評価
単体DNSコンテンツサーバの能力測定
共通のテストデータ
たけのこモデル、割り当て単位モデル
Tier1、Tier2 それぞれパラメータで電話番号数を指定
データがメモリに入り切るサイズのデータ
メモリの量により、測定できるエントリ数が変わる

DNSSEC適用時についても調査(予定)

測定項目DNSデータロード時間・リロード時間
メモリ使用量(プロセスサイズ)
サーバ問い合わせ応答性能(queryperf)

その他テスト条件できる範囲でそろえるテストデータ(1)たけのこ Tier1
機械的に生成するゾーンファイル
エントリ数を指定して生成一つの番号あたり、NS RR 2行
9.8.7.6.5.4.3.2.1.0.1.8.e164.arpa. IN NS ns1.etjp.jp.
9.8.7.6.5.4.3.2.1.0.1.8.e164.arpa. IN NS ns2.etjp.jp.

たけのこ Tier2
機械的に生成する多数のゾーンファイル
1番号にNAPTR RRを1行, NS RRを2行
ゾーン数を指定して生成
named.confも生成$ORIGIN 9.8.7.6.5.4.3.2.1.0.1.8.e164.arpa.
IN SOAIN NS ns1.etjp.jp.
IN NS ns2.etjp.jp.
IN NAPTR 100 0 "u" "E2U+sip" "!^.*$!sip:810123456789@example.jp!" .

テストデータ(2)局番単位 Tier1
機械的に生成するゾーンファイル
局番数を指定、15万エントリ程度
一つの局番あたり、NS RR 2行$ORIGIN 1.8.e164.arpa.
@ IN SOA ns0.etjp.jp. postmaster.etjp.jp. (1 1H 5M 7D 10M)
IN NS ns1.etjp.jp.
IN NS ns2.etjp.jp.
0.0.0.0.0.0 IN NS ns1.isp000.jp.
0.0.0.0.0.0 IN NS ns2.isp000.jp.
1.0.0.0.0.0 IN NS ns1.isp001.jp.

局番単位 Tier2
機械的に生成する多数のゾーンファイルとnamed.conf
各ゾーンファイルに1万番号
1番号ごとに1行 NAPTR RR

ゾーン数を指定して生成$ORIGIN 0.0.0.0.0.0.1.8.e164.arpa.
$TTL 120@ IN SOA ns1.etjp.jp. postmaster.etjp.jp. (1 1H 5M 7D 10M)
IN NS ns1.etjp.jp.
IN NS ns2.etjp.jp.
0.0.0.0 IN NAPTR 100 0 "u" "E2U+sip" "!^.*$!sip:00000000@sipisp.jp!" .
1.0.0.0 IN NAPTR 100 0 "u" "E2U+sip" "!^.*$!sip:00000001@sipisp.jp!" .
2.0.0.0 IN NAPTR 100 0 "u" "E2U+sip" "!^.*$!sip:00000002@sipisp.jp!" .

DNS-WG: 評価基準
要件を満たす実装と、その仕組み(組合せ)の提案を目指す
各要素を実用的に実現する方法
一台のDNSコンテンツサーバの性能測定
何台に分割すると要求を満たせるか実用台数組み合わせて実現できるモデル
運用可能な実用的なシステム数 10から100と想定

DNS-WG: 測定環境
DNSサーバPC-------ethernet-------queryperf PC
測定対象DNSサーバPC 1台
queryperf PC 1台
同一ネットワークに接続(100baseTX hub)

3者が6,7月に予備評価を行なった
テスト環境例DNSサーバPC
Pentium4-3G, memory 2.5G, DragonFlyBSD 1.0rc2

queryperf PC
Pentium4-2.7G, FreeBSD-current

ethernet
100baseTX shared HUB

DNS-WG: 予備調査
OS種別による大きな違いは見受けられない
DNSSECの評価は未実施
測定対象DNSサーバ
BIND 8.3.7
BIND 9.3.0rc2
NSD 2.1.1
djbdns 1.0.5

4とおりのゾーン形式
たけのこモデルTier1, Tier2割り当て単位モデルTier1, Tier2
今回、一通りの評価を行なったが、そのうちたけのこモデルTier1についての結果を示す
次回、報告をまとめる

テストデータ(例)
たけのこモデルTier1 1000万エントリ$ORIGIN 1.8.e164.arpa.
$TTL 120@ IN SOA ns1.etjp.jp. postmaster.etjp.jp. (1 1H 5M 7D 10M)
IN NS ns1.etjp.jp.
IN NS ns2.etjp.jp.
0.0.0.0.0.0.0.0.0.0 IN NS ns1.isp000.jp.
0.0.0.0.0.0.0.0.0.0 IN NS ns2.isp000.jp.
1.0.0.0.0.0.0.0.0.0 IN NS ns1.isp001.jp.
1.0.0.0.0.0.0.0.0.0 IN NS ns2.isp001.jp.
2.0.0.0.0.0.0.0.0.0 IN NS ns1.isp002.jp.
2.0.0.0.0.0.0.0.0.0 IN NS ns2.isp002.jp.
3.0.0.0.0.0.0.0.0.0 IN NS ns1.isp003.jp.
3.0.0.0.0.0.0.0.0.0 IN NS ns2.isp003.jp.
...
9.9.9.9.9.9.9.1.0.0 IN NS ns2.isp099.jp.

評価結果例: メモリ使用量
bind8
bind9
djbdnsnsdmemory(M bytes)

3000

2000

1000
500
1M

3M 5M

10M
takenoko1

20M

評価結果例: ロード時間

load time(second)

1500

bind8
bind9
djbdns
nsd

1000

500
300
200
100
1M

3M 5M

10M
takenoko1

20M

評価結果例: 応答性能
bind8
bind9
djbdnsnsdperformance(query/sec)

30000

20000

10000

1000
1M

3M 5M

10M
takenoko1

20M

評価結果例: たけのこモデルTier1 評価
登録数
どのサーバでも 1000万番号 2000万エントリは動く
10システムにわけることで1億対応可

サーバパフォーマンス
NSDを用いると、1000万エントリで27000qps2台用いることで5万qps
BIND8, djbdnsの場合も10台程度並列に用いることで5万qps対応可
BIND9では性能がでない

更新頻度条件
NSDの場合はデータのコンパイル・ロードだけで30分弱かかる
BIND 8, DJBDNSの場合は4分弱でロード可能

DNS-WG: 予定
2004年6-8月 測定
2004年9月 評価結果報告