MTU not 1454 but 1492 byte



   BフレッツのMTUサイズ

   PPPoEが実装されるLANではMTU上限が理論上1492byteであることは [ MTU ] にて解説しました。
   しかしBフレッツを使用する場合、MTUサイズは [ 1454byte ] と指定されています。はじめからMTU
   1454byte、MSS1414byteとルータ上に定義してしまうと、3way-handshakeの際、MSS1414byteにて
   通知され通信が行われる為、MTU1492、MSS1452byteよりも確実にデータ伝送は遅くなってしまい
   ます。それではなぜBフレッツ ( または Flet's ADSL ) では、MTU1454byteが指定値なのでしょうか。


   L2TPの採用

   Bフレッツ等のPPPoE接続は、NTT収容ビルにある機器( Flet's ADSLの場合はDSLAM )までであり、
   その機器から事業者網にある機器 ( BAS ) との間においては、L2TP接続が行われています。結果、
   MTUサイズが1454byteとなります。MTU値はEnd to Endの通信を実現する際に通過する通信リンク
   において最も低い値を適用するのが推奨です。PPPoE接続によるインターネット接続を行う場合では
   Flet's網で実装するL2TPのBASへのリンクが一番小さい( 1454 )ことから、この値をI./Fへ適用します。


 
   
L2TPが実装されているFlet's網におけるMTU値
Ethernet frame - Ethernet header/FCS - IP header - UDP Header - L2TP header - PPP header = MTU
 1518 18 20 8 16 2 1454




   Path MTU DiscoveryによるFeedbackは?

   例えば、BフレッツなどのPPPoE接続において、適切でないMTU値(1492)をルータに設定したとします。
   次にデータが送信される際にDFビット=1にて送信された場合、L2TP接続が行われるリンクにおいては
   フラグメントを行わないとパケット転送できないのですが、DF=1の為、フラグメントされず破棄されます。
   その結果、送信元に対してICMP( Type3 Destination Unreachable ) ( Code4 Fragmentation Needed)
   が送信されます。このICMPを受け取ることができれば、送信元は適正なMTU値に修正してから、再度
   データ転送を行えるのですが、このICMPはネットワーク上のどこかの機器で破棄されてしまうようです。
   従いましてMTU1454/MSS1414として定義していなければ、参照できないWebページなどが発生します。



   PPPoE接続の論理イメージ図 ( 例 : Flet's ADSL )





  BAS( Broadband Access Server)とは、ルータの機能を持つアクセスサーバのことです。ユーザからの接続認証や
  プロバイダ識別子に従いプロバイダの切り替え、帯域管理などを行います。DSLAM( DSL Access Multiplexer )とは、
  複数のADSL回線を束ねているL2の集線装置。束ねたADSL回線をルータと接続させバックボーンへの橋渡しを行う





← PPTP / L2F / L2TP CiscoルータによるPPPoE接続 →

ネットワークエンジニアとして

Copyright(C) 2002-2010 Cool. All Rights Reserved