「ジャンボフレーム」の版間の差分
ナビゲーションに移動
検索に移動
(同期) |
Kusanaginoturugi (トーク | 投稿記録) (リダイレクトに変更(英語版に追従)) タグ: 新規リダイレクト |
||
1行目: | 1行目: | ||
− | [[ |
+ | #redirect [[ネットワーク設定#MTU とキューの長さの設定]] |
− | [[en:Jumbo frames]] |
||
− | {{Related articles start}} |
||
− | {{Related|ファイアウォール}} |
||
− | {{Related|ネットワーク設定}} |
||
− | {{Related|ワイヤレス設定}} |
||
− | {{Related|ネットワークブリッジ}} |
||
− | {{Related|アプリケーション一覧/インターネット#ネットワーク管理}} |
||
− | {{Related articles end}} |
||
− | [[Wikipedia:Jumbo_frame|Wikipedia]] より: |
||
− | :''コンピュータネットワークにおいて、ジャンボフレームとは 1,500 バイト以上の通信量 (MTU) を持つ Ethernet フレームのことを指す。基本、ジャンボフレームは 9,000 バイトまでの通信を運ぶことができるが、決まった数値はないため注意が必要である。大抵の Gigabit Ethernet スイッチや Gigabit Ethernet ネットワークインターフェイスカードはジャンボフレームに対応しているが、全てではない。また Fast Ethernet スイッチや Fast Ethernet ネットワークインターフェイスカードは通常容量のフレームしかサポートしていない。'' |
||
− | |||
− | MTU の値を大きくする (ジャンボフレーム) ことでネットワークの転送速度は跳ね上がります。 |
||
− | |||
− | == 注意事項 == |
||
− | |||
− | 標準にない MTU 容量を使用した場合、e1000e など、特定のカーネルドライバーでは CPU が C3 の C ステートに入れないようになります。詳しくは開発者のコメントを参照: [https://bugzilla.kernel.org/show_bug.cgi?id=77361 bugzilla #77361]。 |
||
− | |||
− | == 要件 == |
||
− | |||
− | # GigLAN のバックボーン (1000baseT) |
||
− | # ローカル PC のローカル NIC がジャンボフレーム (JF) に対応していること |
||
− | # スイッチが JF に対応していること |
||
− | |||
− | == 設定 == |
||
− | |||
− | 以下のように mtu パラメータを付けて {{ic|ip}} を実行してください: |
||
− | {{bc|# ip link set ethx mtu <size>}} |
||
− | |||
− | {{ic|ethx}} は使用するイーサネットアダプタ (eth0, eth1 など) に、{{ic|<size>}} は使用したいフレームのサイズ (1500, 4000, 9000) に置き換えてください。 |
||
− | |||
− | 設定が適用されたことは {{ic|<nowiki>ip link show | grep mtu</nowiki>}} で確認できます。 |
||
− | |||
− | 例: |
||
− | {{hc|<nowiki>$ ip link show | grep mtu</nowiki>| |
||
− | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN |
||
− | 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 4000 qdisc pfifo_fast state UP qlen 1000 |
||
− | 3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000 |
||
− | }} |
||
− | |||
− | === Systemd ユニット === |
||
− | |||
− | {{Tip|[[アプリケーション一覧/インターネット#ネットワーク管理|ネットワークマネージャ]]で MTU の値を設定できる場合はそちらを使うことを推奨します ([[Systemd-networkd#.5BLink.5D|systemd-networkd]] も参照)。}} |
||
− | |||
− | 設定を永続するには、systemd ユニットを作成します: |
||
− | |||
− | {{hc|/etc/systemd/system/setmtu@.service|<nowiki> |
||
− | [Unit] |
||
− | Description=Set mtu on device |
||
− | Before=network.target |
||
− | |||
− | [Service] |
||
− | Type=oneshot |
||
− | EnvironmentFile=/etc/conf.d/setmtu |
||
− | ExecStart=/usr/bin/ip link set dev %i up mtu ${%i} |
||
− | |||
− | [Install] |
||
− | WantedBy=multi-user.target |
||
− | </nowiki>}} |
||
− | |||
− | 次に設定を作成します。必要に応じて調整してください。一行ごとに一つのデバイスを設定します: |
||
− | |||
− | {{hc|/etc/conf.d/setmtu|<nowiki> |
||
− | eth0=4000 |
||
− | </nowiki>}} |
||
− | |||
− | 上記の設定で {{ic|eth0}} の mtu が 4000 になります。 |
||
− | |||
− | サービスと設定を作成したらデバイス名を指定してサービスを[[デーモン|有効化]]してください (上記の例なら、サービス名は {{ic|setmtu@eth0.service}} となります)。 |
||
− | |||
− | === Netctl === |
||
− | |||
− | [[netctl]] でアダプタを設定している場合、ネットワークプロファイルで {{ic|ExecUpPost}} 変数を使って mtu を永続的に設定することもできます: |
||
− | |||
− | ExecUpPost='/usr/bin/ip link set eth0 mtu 4000' |
||
− | |||
− | == サンプル == |
||
− | |||
− | {{Note|以下のテストは古いハードウェアで行ったものであり RAM ディスクは使っていません。そのため新しいシステムで RAM ディスクを使ってテストを実行した場合、結果が大きく異なる可能性があります。RAM ディスクを使うことで HDD による性能の低下を抑えることができ、ジャンボフレームを使用するメリットが増大します。}} |
||
− | |||
− | 最適な設定を確認するために、実際にファイル転送を行なってみて様々なフレームサイズをテストすることは重要です。ジャンボフレームにおいて万能のサイズはありません。事実、以下で示しているように、ハードウェアによっては、フレームサイズを大きくしすぎるとネットワークのスループットが落ちてしまうこともあります。 |
||
− | |||
− | 以下では複数の異なる状況 (巨大なファイルが単体の場合と小さなファイルが多数の場合) で3つの異なるフレームサイズ (標準の 1500, ジャンボの 4000, ジャンボの 9000) をテストしています。テストしたハードウェアでは、フレームサイズは 4000 にするのが一番良い結果が得られました。どのハードウェアでもこうなるというわけではありません。自分で実際にフレームサイズを様々に変更し、ファイルを転送してみて効果を評価してください。 |
||
− | |||
− | マシン A とマシン B は2004年以前に製造された EIDE ハードドライブを使っています。新しい SATA II HDD や MB ではもっと高いスループットが出るはずです。また、両方のマシンでは [http://us.dlink.com/search/keyword/530T/ D-Link 530T] NIC (PCI バス) を使用しており、表に示したフレームサイズ (1500, 4000, 9000) を使うように設定されています。 |
||
− | |||
− | '''テスト 1 - Samba で単体の巨大なファイルを転送 (1,048,522 kb)''' |
||
− | |||
− | ''経過時間やスループットは3回実行した結果の平均です。'' |
||
− | |||
− | {| class="wikitable" |
||
− | | mtu=1500 || t (秒) || Kb/秒 || || mtu=4000 || t (秒) || Kb/秒 || || mtu=9000 || t (秒) || Kb/秒 |
||
− | |- |
||
− | |A から B || 48 || 21,844 || || A から B || 44 || 23,830 || || A から B || 49 || 21,398 |
||
− | |- |
||
− | |B から A || 81 || 12,945 || || B から A || 41 || 25,574 || || B から A || 41 || 25,574 |
||
− | |- |
||
− | |} |
||
− | |||
− | '''テスト 1 のまとめ''' |
||
− | {| class="wikitable" |
||
− | | 4k vs. 1.5k || % 変化 || || 9k vs. 1.5k || % 変化 |
||
− | |- |
||
− | |A から B || +9 % || || A から B || -2 % |
||
− | |- |
||
− | |B から A || +98 % || || B から A || +98 % |
||
− | |- |
||
− | |} |
||
− | <!--Test 2 --> |
||
− | |||
− | '''テスト 2 - Samba で複数の小さなファイルを転送 (合計で 1,283,439 kb)''' |
||
− | |||
− | ''経過時間やスループットは3回実行した結果の平均です。'' |
||
− | |||
− | {| class="wikitable" |
||
− | | mtu=1500 || t (秒) || Kb/秒 || || mtu=4000 || t (秒) || Kb/秒 || || mtu=9000 || t (秒) || Kb/秒 |
||
− | |- |
||
− | |A から B || 59 || 21,753 || || A から B || 51 || 25,165 || || A から B || 57 || 22,516 |
||
− | |- |
||
− | |B から A || 94 || 13,654 || || B から A || 46 || 27,901 || || B から A || 49 || 26,193 |
||
− | |- |
||
− | |} |
||
− | |||
− | '''テスト 2 のまとめ''' |
||
− | {| class="wikitable" |
||
− | | 4k vs. 1.5k || % 変化 || || 9k vs. 1.5k || % 変化 |
||
− | |- |
||
− | |A から B || +16 % || || A から B || +4 % |
||
− | |- |
||
− | |B から A || +4% || || B から A || +92 % |
||
− | |- |
||
− | |} |
||
− | <!--Test 3 --> |
||
− | |||
− | '''長時間の転送速度''' |
||
− | |||
− | 4k ジャンボフレームを使用した 30 GB 以上のファイル転送の平均速度は 26.6 MB/s でした。リンクの一番低速なドライブは Western Digital WD3200JB - 2004年製造, EIDE 320 GB (ATA100/7200 RPM/8 MB キャッシュ) でした。ネットワークのバースト速度 (300-400 MB ファイル) はドライブ間のバースト速度の約 80% になりました。悪くない値です (ネットワーク速度が 30 MB/s でドライブの速度が 38 MB/s)。 |
||
− | |||
− | === ジャンボフレームを使用する LAN 構成 === |
||
− | |||
− | PC1 (JF 有効) |
||
− | |||
− | PC2 (JF 有効) <----> Gigabit Ethernet スイッチ (JF 有効) <----> ルーター (JF 無効) <----> ケーブルモデム (JF 無効) |
||
− | |||
− | PC3 (JF 有効) |
||
− | |||
− | 上記の例では、PC の NIC は全て JF を使うように設定され、同じく JF を使用する Gigabit Ethernet スイッチに接続されています。スイッチは更にアップリンクポートでルーターに接続されていますが、ルーターではジャンボフレームを使うことはできず、さらにルーターが接続するケーブルモデムもジャンボフレームを使用しません。 |
||
− | |||
− | 一部のウェブサイトが何を言っていようと、上記の構成は 100% 問題なく動作します。ネットワーク内の JF が有効になった転送 (スイッチ間) は非常に高速です。PC から WAN (インターネット) への転送速度は JF が無効になっている場合と変わりません。 |