思考実験です。現在のインターネットの規格や構造やインフラのことは完全に忘れてください。
さて、ネットワークシステムの実装は、OSI参照モデルに厳密に従うとは限りません。実際、インターネットではL5からL7まではほぼ一体化してしまっていますね。
それを前提に、MACアドレスとIPアドレスによる2階建てのアドレッシングが本当に必須のことなのか、よくわからずにいます(無駄ではないかと思っています)。
インターネット(というよりは、●全世界規模の ●不特定多数の利用者が参加し ●特定できるが多数のベンダが機器を提供する、コンピュータネットワーク)を全くの1から再設計するとしたら、L2とL3を分離したアドレッシングはやはり必須になるでしょうか?
必須だとしたら、分離しなかった場合のデメリットを、必須でないとしたら、分離した場合に比べて効率が向上する可能性はあるかについても教えていただきたいと思います。
必須ではないですが、分離する方が多くのメリットを享受できます。
前提として、MACアドレスはベンダーがグローバルユニークに設定するもの、
IPアドレスは各組織で一定のルールに基づき設定されるもの、とします。
分離による最も大きいメリットは、経路集約による経路制御の効率化、です。
ルータがパケットをどこに配送するかを保持するのが経路テーブルです。
IPアドレスはネットワークアドレスによりエリアを明示的に決めることができます。
たとえば、極端な話、アメリカのノードはIPアドレスの1バイト目が10で、
ヨーロッパのノードは20、というようにエリアとアドレス体系をマッピングすることが
できます。これにより、ルータの処理は簡素なものとなり、
結果としてパケット転送が高速なインターネットを形成することができます。
分離しない場合、たとえばMACアドレスしか存在しない世界だった場合、
経路テーブルのエントリ数は膨大な数になります。最悪の場合、ルータは世界中の
ノード分だけ保持する必要があります。また経路探索のプロトコルは複雑で、コストも
莫大なものになり、世界中の隅々までノードを探しにいくのは不可能ではないにしろ、
困難になると考えられます。
同じく分離しない場合で、たとえばIPアドレスしか存在しない世界では、
ノードへのIPアドレスの付与が極めて複雑/困難になるのは容易に想像できます。
有線にしろ、無線にしろ、ある程度、物理的な距離とネットワークのトポロジーが
関連している以上、今の二階層の仕組みはメリットが大きいと思います。
将来世界中をカバーするような無線が現れた場合は少し話が変わりますが。
また、かなり難しいとは思いますが、MACアドレスとIPアドレスの特性を併せ持つ
ようなアドレス体系(各国、各組織が一定のルールに基づき、グローバルユニークに
設定できるアドレス)が開発された際には、分離の必要性はなくなりますが、
これはDNSの概念とほぼ等しいものです。過去との互換性をうまく保ちながら
成長していったインターネット、そのすばらしさがわかるのがレイヤーモデルですね。
必要だと思う。
MACアドレスのみを考えているようだが、これは Ethernet の通信で必要とされているもの。
他のネットワーク(たとえば FDDI とか ATM とか )だと別のプロトコルによって実現される可能性は高い。
今は Ethernet の高速化によってほとんどのネットワークが Ethernet ベースになっているとはいえ
今後もそうであるという保証は無いし、それを制約とするとネットワークの柔軟性が失われる。
そういった現在のデータリンク層に相当するプロトコルとIPのような統一的なアドレスを持つプロトコルとの
橋渡しがあることこそ、今の TCP/IP 全盛の原因の一つとも考えられる。
もっとも、すべての通信規格がIPに相当する部分を直接持つという制約の上でなら、実装は可能だろうし
効率も上がるだろう。(変換・逆変換のコストがなくなる分)
ただ、TCP/IP が持っているような柔軟性を犠牲にしてまで有効かどうかは疑問だ。
通信効率の向上は現在も求められていることですし、検討には十分値しますが主なターゲットはIPから上の層じゃないかと思います。
( IPv6 や TCP の再実装もその一つ )
ethernetやTCP/IPの存在は前提にしていません。
あくまで、今から新しくプロトコルも作るなら、の話です。
TCP/IPの持つ柔軟性というものについて、L2/L3の分離にも絡めてもう少し詳しく解説していただけませんか?
必須ではないですが、分離する方が多くのメリットを享受できます。
前提として、MACアドレスはベンダーがグローバルユニークに設定するもの、
IPアドレスは各組織で一定のルールに基づき設定されるもの、とします。
分離による最も大きいメリットは、経路集約による経路制御の効率化、です。
ルータがパケットをどこに配送するかを保持するのが経路テーブルです。
IPアドレスはネットワークアドレスによりエリアを明示的に決めることができます。
たとえば、極端な話、アメリカのノードはIPアドレスの1バイト目が10で、
ヨーロッパのノードは20、というようにエリアとアドレス体系をマッピングすることが
できます。これにより、ルータの処理は簡素なものとなり、
結果としてパケット転送が高速なインターネットを形成することができます。
分離しない場合、たとえばMACアドレスしか存在しない世界だった場合、
経路テーブルのエントリ数は膨大な数になります。最悪の場合、ルータは世界中の
ノード分だけ保持する必要があります。また経路探索のプロトコルは複雑で、コストも
莫大なものになり、世界中の隅々までノードを探しにいくのは不可能ではないにしろ、
困難になると考えられます。
同じく分離しない場合で、たとえばIPアドレスしか存在しない世界では、
ノードへのIPアドレスの付与が極めて複雑/困難になるのは容易に想像できます。
有線にしろ、無線にしろ、ある程度、物理的な距離とネットワークのトポロジーが
関連している以上、今の二階層の仕組みはメリットが大きいと思います。
将来世界中をカバーするような無線が現れた場合は少し話が変わりますが。
また、かなり難しいとは思いますが、MACアドレスとIPアドレスの特性を併せ持つ
ようなアドレス体系(各国、各組織が一定のルールに基づき、グローバルユニークに
設定できるアドレス)が開発された際には、分離の必要性はなくなりますが、
これはDNSの概念とほぼ等しいものです。過去との互換性をうまく保ちながら
成長していったインターネット、そのすばらしさがわかるのがレイヤーモデルですね。
なるほど、事前付与されたアドレスだけではルーティングが困難、トポロジに沿ったアドレスだけ使おうとするとその付与が困難、と。
なるほど、事前付与されたアドレスだけではルーティングが困難、トポロジに沿ったアドレスだけ使おうとするとその付与が困難、と。