itLinkedInPocketCopyインターフェースのMTUを適切に設定すれば環境によっては通信効率を向上することができます。利用されているOSであるWindowsとLinuxについてMTUの設定方法について書いていきたいと思います。Unitの略で、ネットワーク上に1フレーム(1回の転送)で送信できるデータの最大値を表す数値です。イーサネットではMTUの上限は1500オクテット(バイト)となりますが、通信経路上のメディアやカプセル化によってMTUの上限値は変わってきます。NTT東日本のフレッツを利用した回線であれば、PPPoEやNTT局舎内のカプセル化のためMTUの上限値は1454となります。MTUと直接は関係ないことですが、最近ではPPPoEセッションの通信負荷が問題となっておりIPv6のIPoE方式を利用できるプロバイダも増えてきています。IPoE方式の場合、IPv6はMTUの上限値が1500バイトのまま利用することができます。IPoE方式のIPv4通信についてはIPv6でカプセル化されるためMTUの上限値は1460程度となります。以下のように-fと-lオプションを付けたpingコマンドを利用します。www.google.co.jppingが通る最大の-lの後の数字を探します。20(IPv4ヘッダ))となります。※IPv6だとヘッダサイズは40バイトとなります。※同じ環境前提だとIPv6では1406以下でpingが通り、1407以上でpingが通らなくなります。1454※OSのインターフェースのMTUが既に変更されている場合、そちらのMTUに制限される場合があります。※例えば上と同じMTUが1454の環境でも既にインターフェースのMTUが1400に設定されている場合はpingで調査した時の-lの最大値は1372となります。doオプションを付けたpingコマンドを利用します。www.google.co.jpMTUの求め方や注釈についてはWindowsの場合と同じです。以下の調査サイトにアクセスすることにより、アクセスしたクライアント-サーバ間の通信からMTU値を確認することができます。以下のコマンドでインターフェースのIdx番号を調べます。interface次に以下のように設定したい値でMTUをセットします。ようにifconfigコマンドを使用します。1454ipコマンドでも設定できます。1454※コマンドだけではOSを再起動すると初期値の1500に戻ります恒久設定MTUの恒久設定はディストリビューションによって異なります。●Debian系のディストリビューションの場合は/etc/network/interfacesファイルにmtuを設定できます。interfaces」を参照して下さい。●RedHat系のディストリビューションの場合は/etc/sysconfig/network-scripts/ifcfg-eth0(eth0の部分はインターフェース名)などの初期化スクリプトに以下の変数を追加することで設定できます。MTU=1454※AWSのEC2など、dhcpからmtu設定を行っている環境ではdhcpオプションの設定を変更する必要がある場合があります。...Linuxにおけるネットワークの初期ウィンドウサイズの変更方法TCP通信のパフォーマンスを決める要素の一つとしてウィンドウサイズがあります。...このアカスブログは全てリンクフリーです。無断リンクして頂いて全く問題ございません。(※転載は禁止)相互リンク希望の方は「お問合せ」かTwitterのDMにご連絡ください。