「階層化の有害性」の版間の差分

編集の要約なし
 
(5人の利用者による、間の12版が非表示)
1行目: 1行目:
'''階層化の有害性'''(読み:かいそうかのゆうがいせい、英語:Layering Considered Harmful)とは、[[インターネットプロトコル]][[聖書]]に書かれているありがたい言葉である。
'''階層化の有害性'''(読み:かいそうかのゆうがいせい、[[英語]]:Layering Considered Harmful)とは、[[インターネットプロトコル]](通称:[[IP]])の聖書([[仕様書]])であり「インターネットとは何か」を明記した[[rfc:3439|RFC 3439]]の第三章に書かれているありがたい言葉である。


== 概要 ==
== 概要 ==
「階層化の有害性」とは、[[TCP/IP]]などを規定した[[DARPAモデル]]を解説する際に、多くの[[教科書]]において「[[TCP/IP]]は[[OSI参照モデル]]ではこの層に該当します」などと説明していることに激怒した[[インターネット]]を発明した<del>[[マッドサイエンティスト]]</del>天才技術者たちが残した言葉であり、[[RFC]]に明記された一文(章のタイトル)である。
「階層化の有害性」とは、多くの情報処理系の教科書において[[TCP/IP]]などを規定した[[DARPAモデル]]を説明する際に「[[TCP/IP]]は[[OSI参照モデル]]ではこの層に該当します」などと書かれていることに激怒した[[インターネット]]を発明した<del>[[マッドサイエンティスト]]</del>天才技術者たちが残した言葉であり、[[RFC]]に明記された一文(章のタイトル)である。


具体的には「インターネットとは何か」を明記した[[RFC 3439]]の第三章の序文で、この章には延々と過度の[[階層化]]や[[カプセル化]]は悪であるという内容が書かれており、遠まわしに「[[OSI参照モデル]]はクソである」という批判的な内容となっている。
具体的には「インターネットとは何か」を明記した[[rfc:3439|RFC 3439]]の第三章の序文であり、この章には延々と「過度の[[階層化]]や[[カプセル化]]は悪である」という内容が書かれている。これは[[Internet Engineering Task Force]] ([[IETF]])を通じて繰り返し警告を発表していたにも関わらず、それを無視するOSI参照モデル信者への最終通告として、遠まわしに「[[OSI参照モデル]]はクソである」という批判的な内容となっている。


[[要約]]すると、「[[階層化]]」という考え方が概念的および構造的にさまざまな利点を持っているが、実装面では層単位で同じような最適化が繰り返し発生することによる無駄な処理により、効率的な実装を阻害し、複雑化を招くことがあり、また低層部分のみに存在する[[データ]]に[[アクセス]]できない場面が発生するなど、[[インターネット・プロトコル]]の目指す「[[単純化]]」という原則に反するという内容である。
<amazon>OSI参照モデル</amazon>
 
要約すると、「[[階層化]]」という考え方は「概念的」および「構造的」にさまざまな利点を持っているが、実装面では層単位で同じような最適化が繰り返し発生することによる無駄な処理が増え、効率的な実装を阻害し、複雑化を招くことがあり、また将来的に低層部分のみに存在する[[データ]]に[[アクセス]]できない場面が発生すると大抵の場合はトンデモ実装で回避しようとするなど、[[インターネット・プロトコル]]の目指す「[[単純化]]」という原則に反するという内容である。これ、まさに[[X11]]がやらかした実装じゃないか。


[[DARPAモデル]]を提唱した米軍直属の闇の研究者と、[[OSI参照モデル]]を提唱した国際的な偉い研究者の意見の対立であり、どちらが正しいかは不明である。ただ少なくとも[[イーサネット]]や[[インターネット]]はアホみたいに普及し、今や[[デファクトスタンダード]]となったのは事実である。
[[DARPAモデル]]を提唱した米軍直属の闇の研究者と、[[OSI参照モデル]]を提唱した国際的な偉い研究者の意見の対立であり、どちらが正しいかは不明である。ただ少なくとも[[イーサネット]]や[[インターネット]]はアホみたいに普及し、今や[[デファクトスタンダード]]となったのは事実である。
<amazon>DARPA</amazon>


== 関連項目 ==
== 関連項目 ==
* [[カプセル化 (プログラミング)]]
* [[staticおじさん]]
* [[システムエンジニア]]
* [[RFC]]
* [[RFC]]
* [[システムエンジニア]]
== 参考文献 ==
{{reflist}}


{{stub}}
[[category: ネットワーク]]
[[category: プログラミング]]