インターネットプロトコルスイート

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ

一般にTCP / IPとして知られているインターネットプロトコルスイートは、インターネットおよび同様のコンピュータネットワークで使用される通信プロトコルのセットですスイートの現在の基本プロトコルは、伝送制御プロトコル(TCP)とインターネットプロトコル(IP)です。

その開発中、そのバージョンは国防総省DoDモデルとして知られていました。これは、ネットワーク方式の開発がDARPAを通じて米国国防総省によって資金提供されたためです。その実装はプロトコルスタックです。[2]

インターネットプロトコルスイートは、データのパケット化、アドレス指定、送信、ルーティング、および受信の方法を指定するエンドツーエンドのデータ通信を提供します。この機能は4つの抽象化レイヤーに編成されており、各プロトコルのネットワークの範囲に従って、関連するすべてのプロトコルを分類します。[3] [4]最下位から最上位まで、層はリンク層であり、単一のネットワークセグメント(リンク)内に残るデータの通信方法を含みます。インターネット層、独立したネットワーク間インターネットワーキングを提供します。トランスポート層ホスト間の通信を処理します。そしてそのアプリケーション層。アプリケーションにプロセス間のデータ交換を提供します。

インターネットプロトコルスイートとその構成プロトコルの基礎となる技術標準は、インターネット技術特別調査委員会(IETF)によって維持されますインターネットプロトコルスイートは、一般的なネットワークシステム用のより包括的なリファレンスフレームワークである OSIモデルよりも前のものです。

歴史

初期の研究

最初のインターネット接続の図
SRI International Packet Radio Vanは、最初の3方向インターネット通信に使用されました

インターネットプロトコルスイートは、1960年代後半に国防高等研究計画局( DARPA )によって実施された研究開発から生まれました。[2] 1969年に先駆的なARPANETを開始した後、DARPAは他の多くのデータ伝送技術の研究を開始しました。1972年、ロバートE.カーンはDARPA情報処理技術部に加わり、衛星パケットネットワークと地上無線パケットネットワークの両方に取り組み、両方を介して通信できることの価値を認識しました。1973年の春、既存のARPANET Network Control Program(NCP)プロトコルの開発を支援したVinton Cerfが、Kahnに参加して作業を行いました。ARPANETの次世代プロトコル生成を設計することを目的としたオープンアーキテクチャ相互接続モデル。[要出典]彼らは、ARPANET研究コミュニティとCerfが議長を務めたInternational Networking WorkingGroupの経験を利用しました。[5]

1973年の夏までに、カーンとサーフは根本的な改革を行いました。この改革では、ローカルネットワークプロトコル間の違いは、既存のARPANETプロトコルのように、ネットワークが信頼性に関与するのではなく、共通のインターネットワークプロトコルを使用して隠されていました。 、この機能はホストに委任されました。Cerfは、 CYCLADESネットワークの設計者であるHubertZimmermannLouisPouzinが、この設計に重要な影響を与えたことを認めています。[6] [7]新しいプロトコルは、1974年にトランスミッション制御プログラムとして実装されました。 [8]

当初、伝送制御プログラムはデータグラムの伝送とルーティングの両方を管理していましたが、プロトコルの経験が増えるにつれて、共同作業者は機能を個別のプロトコルのレイヤーに分割することを推奨しました。支持者には、南カリフォルニア大学の情報科学研究所のJonathan Postelが含まれ、Request for Comments(RFC)、インターネット開発の文書化と触媒化の両方を行った技術的および戦略的文書シリーズ[9] 、およびRobertMetcalfe研究グループがXeroxPARC[10] [11]ポステル氏は、「私たちは、階層化の原則に違反することで、インターネットプロトコルの設計を台無しにしている」と述べた。[12]さまざまなメカニズムのカプセル化は、上位層が下位層から必要なものだけにアクセスできる環境を作成することを目的としていました。モノリシック設計は柔軟性がなく、スケーラビリティの問題につながります。1978年に作成されたTCPのバージョン3では、伝送制御プログラムは2つの異なるプロトコルに分割されました。コネクションレス層としてのインターネットプロトコルと、信頼性の高いコネクション型サービスとしての伝送制御プロトコルです。[13]

ネットワークの設計には、エンドノード間でトラフィックを効率的に送信およびルーティングする機能のみを提供する必要があり、他のすべてのインテリジェンスはネットワークのエッジのエンドノードに配置する必要があるという認識が含まれていました。この設計は、エンドツーエンド原理として知られています。この設計を使用することで、他のローカル特性に関係なく、同じ原理を使用するARPANETに他のネットワークを接続することが可能になり、カーンの初期のインターネットワーキングの問題を解決しました。人気のある表現は、CerfとKahnの作品の最終的な製品であるTCP / IPは、「2つのブリキ缶と1つのストリング」を超えることができるというものです。[要出典]数年後、冗談として、鳥類キャリアによるIP正式なプロトコル仕様が作成され、正常にテストされました。

DARPAは、 BBN Technologiesスタンフォード大学、およびユニバーシティカレッジロンドンと契約を結び、いくつかのハードウェアプラットフォームでプロトコルの運用バージョンを開発しました。[14]プロトコルの開発中に、パケットルーティング層のバージョン番号はバージョン1からバージョン4に進み、後者は1983年にARPANETにインストールされました。プロトコルとしてインターネットプロトコルバージョン4(IPv4)として知られるようになりました。これは、現在の後継であるインターネットプロトコルバージョン6(IPv6) とともに、インターネットでまだ使用されています。

初期の実装

1975年に、スタンフォード大学とロンドン大学ユニバーシティカレッジの間で2ネットワークIP通信テストが実施されました。1977年11月、米国、英国、ノルウェーのサイト間で3ネットワークIPテストが実施されました。他のいくつかのIPプロトタイプは、1978年から1983年の間に複数の研究センターで開発されました。1983年1月1日の「フラグデー」以前は、インターネットはトランスポート層プロトコルとしてTCPではなくNCPを使用していました。

ルーターと呼ばれるコンピューターには、各ネットワークへのインターフェースが備わっています。それらの間でネットワークパケットを前後に転送します。[15]元々ルーターはゲートウェイと呼ばれていましたが、他のタイプのゲートウェイとの混同を避けるために用語が変更されました[16]

採用

1982年3月、米国国防総省は、TCP / IPをすべての軍用コンピュータネットワークの標準として宣言しました。[17]同じ年に、ロンドン大学ユニバーシティカレッジのNORSARピーターカースタインの研究グループがプロトコルを採用した。[14] [18] [19] ARPANETのTCP / IPへの移行は、新しいプロトコルが恒久的にアクティブ化された1983年1月1日の国旗制定記念日に正式に完了しました。[20]

1985年、インターネット諮問委員会(後のインターネットアーキテクチャ委員会)は、コンピュータ業界向けに3日間のTCP / IPワークショップを開催し、250のベンダーの代表者が参加し、プロトコルを宣伝し、その商用利用を拡大しました。1985年、最初の相互運用会議は、TCP / IPの幅広い採用によるネットワークの相互運用性に焦点を当てました。この会議は、初期のインターネット活動家であるダンリンチによって設立されました。当初からIBMやDECなどの大企業が参加していました。[21]

IBM、AT&T、およびDECは、独自のプロトコルが競合しているにもかかわらず、TCP / IPを採用した最初の主要企業でした。IBMでは、1984年から、BarryAppelmanのグループがTCP / IP開発を行いました。彼らは企業の政治をナビゲートして、 MVSVMOS / 2などのさまざまなIBMシステム用のTCP / IP製品のストリームを入手しました同時に、FTPソフトウェアWollongong Groupなどのいくつかの中小企業が、 DOSおよびMicrosoftWindows用のTCP / IPスタックの提供を開始しました。[22]最初のVM / CMS TCP / IPスタックは、ウィスコンシン大学からのものでした。[23]

初期のTCP / IPスタックのいくつかは、数人のプログラマーによって片手で書かれていました。IBMResearchのJayElinskyとOlegVishnepolsky  [ ru ]は、それぞれVM / CMSとOS / 2用のTCP / IPスタックを作成しました。[要出典] 1984年、MITのDonald Gilliesは、 1983年から4年にMITのJohnRomkeyによって維持されていたIP / PacketDriverレイヤー上で実行されるntcpマルチ接続TCPを作成しました。Romkeyは、FTPソフトウェアが設立された1986年にこのTCPを活用しました。[24] [25] 1985年から、Phil Karnはアマチュア無線システム用のマルチ接続TCPアプリケーション(KA9Q TCP)を作成しました。[26]

TCP / IPの普及は、カリフォルニア大学バークレー校がBSDUNIX用に開発されたTCP / IPコードをパブリックドメインに置くことに合意した1989年6月にさらに促進されました。IBMを含むさまざまな企業ベンダーが、このコードを商用TCP / IPソフトウェアリリースに含めました。MicrosoftはWindows95でネイティブTCP / IPスタックをリリースしました。このイベントは、IBMのSystems Network Architecture (SNA)を含むMicrosoftベースのネットワーク、およびDigital EquipmentCorporationなどの他のプラットフォームでTCP / IPの優位性を強化するのに役立ちました。DECnetOpen Systems Interconnection(OSI)、およびXerox Network Systems(XNS)。

それにもかかわらず、1980年代後半から1990年代初頭にかけて、エンジニア、組織、および国は、どの標準、OSIモデル、またはインターネットプロトコルスイートが最良かつ最も堅牢なコンピュータネットワークをもたらすかという問題について二極化しました。[27] [28] [29]

正式な仕様と規格

インターネットプロトコルスイートとその構成プロトコルの基礎となる技術標準は、インターネット技術特別調査委員会(IETF)に委任されます

インターネットプロトコルスイートの特徴的なアーキテクチャは、そのコア機能を構成するプロトコルの動作範囲への幅広い分割です。スイートの定義仕様はRFC1122であり、4つの抽象化レイヤーの概要を示しています。[3] IETFがこの構造を変更したことは一度もないため、これらは時の試練に耐えてきました。このようなネットワーキングのモデルとして、インターネットプロトコルスイートは、一般的なネットワーキングシステムのより包括的なリファレンスフレームワークであるOSIモデルよりも前のものです。[29]

主要なアーキテクチャの原則

それぞれのルーター間のリンクによって接続された2つのホスト( AB )の単純なネットワークトポロジでの概念的なデータフロー。各ホスト上のアプリケーションは、プロセスが何らかのデータパイプによって互いに直接接続されているかのように、読み取りおよび書き込み操作を実行します。このパイプの確立後、通信の基本原則は下位のプロトコル層に実装されるため、通信のほとんどの詳細は各プロセスから隠されます。同様に、トランスポート層では、アプリケーションデータ構造と接続ルーターの知識がなくても、通信はホスト間で表示されますが、インターネットワーキングレイヤーでは、各ルーターで個々のネットワーク境界が通過します。
RFC1122で説明されているレイヤーを下るアプリケーションデータのカプセル化

エンドツーエンドの原則時間とともに進化してきました。その元々の表現は、状態の維持と全体的なインテリジェンスをエッジに置き、エッジを接続するインターネットは状態を保持せず、速度と単純さに集中していると想定していました。ファイアウォール、ネットワークアドレストランスレータ、Webコンテンツキャッシュなどの実際のニーズにより、この原則の変更が余儀なくされています。[30]

ロバストネス原則は次のように述べています。「一般に、実装は送信動作が保守的で、受信動作がリベラルである必要があります。つまり、整形式のデータグラムを送信する場合は注意が必要ですが、解釈できるデータグラムはすべて受け入れる必要があります(たとえば、意味がまだ明らかな技術的エラーに反対しないでください。」[31]「原則の2番目の部分は、ほぼ同じくらい重要です。他のホスト上のソフトウェアには、合法であるがあいまいなプロトコル機能を悪用することを賢明にしない欠陥が含まれている可能性があります。」[32]

カプセル化は、プロトコルとサービスの抽象化を提供するために使用されます。カプセル化は通常、プロトコルスイートを一般的な機能のレイヤーに分割することで調整されます。一般に、アプリケーション(モデルの最高レベル)は、一連のプロトコルを使用してデータをレイヤーに送信します。データは、各レベルでさらにカプセル化されます。

初期のアーキテクチャドキュメントであるRFC1122は、レイヤリングよりもアーキテクチャの 原則を強調しています。[33] 「ホスト要件」というタイトルのRFC1122は、レイヤーを参照する段落で構成されていますが、このドキュメントは他の多くのアーキテクチャの原則を参照しており、レイヤーを強調していません。次のように、番号ではなく名前を持つ4層モデルを大まかに定義します。

  • アプリケーション層は、アプリケーションまたはプロセスがユーザーデータを作成し、このデータを別のホストまたは同じホスト上の他のアプリケーションに通信するスコープです。アプリケーションは、基盤となる下位層、特に他のプロセスに信頼できるまたは信頼できない パイプを提供するトランスポート層によって提供されるサービスを利用します。通信パートナーは、クライアントサーバーモデルピアツーピアネットワークなどのアプリケーションアーキテクチャによって特徴付けられます。これは、SMTP、FTP、SSH、HTTPなどのすべてのアプリケーションプロトコルが動作する層です。プロセスは、基本的にサービスを表すポートを介してアドレス指定されます
  • トランスポート層は、ルーターで区切られたローカルネットワークまたはリモートネットワークのいずれかでホスト間通信を実行します。[34]アプリケーションの通信ニーズに対応するチャネルを提供します。UDPは基本的なトランスポート層プロトコルであり、信頼性の低いコネクションレス型データグラムサービスを提供します。伝送制御プロトコルは、フロー制御、接続の確立、およびデータの信頼性の高い伝送を提供します。
  • インターネット層は、ネットワークの境界を越えてデータグラムを交換します。基盤となるネットワーク接続の実際のトポロジ(レイアウト)を隠す統一されたネットワークインターフェイスを提供します。したがって、インターネットワーキングを確立するレイヤーでもあります。確かに、それはインターネットを定義し、確立します。この層は、TCP / IPプロトコルスイートに使用されるアドレス指定とルーティングの構造を定義します。このスコープの主要なプロトコルは、IPアドレスを定義するインターネットプロトコルです。ルーティングにおけるその機能は、データグラムを次のホストに転送し、IPルーターとして機能し、最終的なデータ宛先に近いネットワークに接続できるようにすることです。
  • リンク層は、ホストがルーターを介さずに通信するローカルネットワークリンクの範囲内でネットワーク方式を定義します。この層には、ローカルネットワークトポロジを記述するために使用されるプロトコルと、次の隣接ホストへのインターネット層データグラムの送信に影響を与えるために必要なインターフェイスが含まれます。

リンク層

リンク層のプロトコルは、ホストが接続されているローカルネットワーク接続の範囲内で動作します。この体制は、TCP / IP用語ではリンクと呼ばれ、スイートの最下位のコンポーネント層です。リンクには、ルーターを経由せずにアクセスできるすべてのホストが含まれます。したがって、リンクのサイズはネットワークハードウェアの設計によって決まります。原則として、TCP / IPはハードウェアに依存しないように設計されており、事実上すべてのリンク層テクノロジーの上に実装できます。これには、ハードウェア実装だけでなく、仮想プライベートネットワークネットワークトンネルなどの仮想リンクレイヤーも含まれます。

リンク層は、同じリンク上の2つの異なるホストのインターネット層インターフェイス間でパケットを移動するために使用されます。リンク上でパケットを送受信するプロセスはネットワークカードのデバイスドライバーファームウェア、または専用のチップセットで制御できます。これらは、フレーミングなどの機能を実行して、インターネット層のパケットを送信用に準備し、最後にフレームを物理層に送信し、伝送媒体を介して送信します。TCP / IPモデルには、インターネットプロトコルで使用されるネットワークアドレス指定方法を、メディアアクセス制御などのリンク層アドレスに変換するための仕様が含まれています。(MAC)アドレス。ただし、そのレベルより下にある他のすべての側面は、暗黙的に存在すると想定され、TCP / IPモデルで明示的に定義されていません。

TCP / IPモデルのリンク層には、OSIモデルのレイヤー2に対応する機能があります。

インターネット層

インターネットワーキングでは、送信元ネットワークから宛先ネットワークにデータを送信する必要があります。このプロセスはルーティングと呼ばれ、階層型IPアドレス指定システムを使用したホストのアドレス指定と識別によってサポートされますインターネット層は、データグラムを適切なネクストホップルーターに転送して宛先にさらに中継することにより、潜在的に異なるIPネットワーク上にあるホスト間に信頼性の低いデータグラム送信機能を提供しますインターネット層は、潜在的に複数のネットワークを介してパケットを送信する責任があります。この機能により、インターネット層はインターネットワーキング、さまざまなIPネットワークのインターワーキングを可能にし、本質的にインターネットを確立します。

インターネット層は、さまざまなトランスポート層プロトコルを区別しません。IPは、さまざまな上位層プロトコルのデータを伝送します。これらのプロトコルは、それぞれ一意のプロトコル番号で識別されます。たとえば、インターネット制御メッセージプロトコル(ICMP)とインターネットグループ管理プロトコル(IGMP)は、それぞれプロトコル1と2です。

インターネットプロトコルはインターネット層の主要コンポーネントであり、ネットワークホストを識別し、ネットワーク上でそれらを見つけるための2つのアドレス指定システムを定義します。ARPANETとその後継であるインターネットの元のアドレスシステムは、インターネットプロトコルバージョン4(IPv4)です。32ビットのIPアドレスを使用するため、約40億のホストを識別できます。この制限は、 128ビットアドレスを使用するインターネットプロトコルバージョン6 (IPv6)の標準化により、1998年に解消されました。IPv6実稼働の実装は、2006年頃に登場しました。

トランスポート層

トランスポート層は、アプリケーションがタスク固有のデータ交換に使用する基本的なデータチャネルを確立します。この層は、基盤となるネットワークから独立し、ユーザーデータの構造や情報交換のロジスティクスから独立したエンドツーエンドのメッセージ転送サービスの形でホスト間の接続を確立します。トランスポート層での接続は、TCPで実装されたコネクション型、またはUDPで実装されたコネクションレス型のいずれかに分類できます。この層のプロトコルは、エラー制御セグメンテーションフロー制御輻輳制御、およびアプリケーションアドレス指定(ポート番号)を提供する場合があります。

アプリケーションにプロセス固有の伝送チャネルを提供する目的で、レイヤーはネットワークポートの概念を確立します。これは、アプリケーションが必要とする通信チャネルごとに特別に割り当てられた番号付きの論理構造です。多くの種類のサービスでは、これらのポート番号が標準化されているため、クライアントコンピューターは、サービス検出ディレクトリサービスを使用せずに、サーバーコンピューターの特定のサービスに対応できます。

IPはベストエフォート型の配信のみを提供するため、一部のトランスポート層プロトコルは信頼性を提供します。

TCPは、信頼性の高いバイトストリームを提供する際の多くの信頼性の問題に対処するコネクション型プロトコルです

  • データは順番に到着します
  • データのエラーは最小限です(つまり、正確さ)
  • 重複データは破棄されます
  • 失われたまたは破棄されたパケットは再送されます
  • 交通渋滞制御を含む

新しいStreamControl Transmission Protocol(SCTP)も、信頼性の高いコネクション型のトランスポートメカニズムです。TCPのようにバイトストリーム指向ではなく、メッセージストリーム指向であり、単一の接続で多重化された複数のストリームを提供します。また、マルチホーミングのサポートも提供します。このサポートでは、接続の端を複数のIPアドレス(複数の物理インターフェイスを表す)で表すことができるため、1つに障害が発生しても、接続が中断されることはありません。当初はテレフォニーアプリケーション用に開発されました(SS7 over IPを転送するため)。

信頼性は、ハイレベルデータリンクコントロール(HDLC) などの信頼性の高いデータリンクプロトコルを介してIPを実行することによっても実現できます。

ユーザーデータグラムプロトコル(UDP)は、コネクションレス型データグラムプロトコルです。IPと同様に、これはベストエフォートで信頼性の低いプロトコルです。信頼性は、チェックサムアルゴリズムを使用したエラー検出によって対処されます。UDPは通常、信頼性よりも時間通りの到着が重要なストリーミングメディア(オーディオ、ビデオ、 Voice over IPなど)などのアプリケーション、またはDNSルックアップなどの単純なクエリ/応答アプリケーションで使用されます。信頼できる接続は不釣り合いに大きいです。Real-time Transport Protocol (RTP)は、UDPを介して使用されるデータグラムプロトコルであり、ストリーミングメディアなどのリアルタイムデータ用に設計されています

任意のネットワークアドレスのアプリケーションは、TCPまたはUDPポートによって区別されます。慣例により、特定のよく知られたポートは特定のアプリケーションに関連付けられています。

TCP / IPモデルのトランスポート層またはホスト間層は、トランスポート層とも呼ばれるOSIモデルの4番目の層にほぼ対応します。

QUICは代替トランスポートプロトコルとして急速に台頭しています。技術的にはUDPパケットを介して伝送されますが、TCPに比べて強化されたトランスポート接続を提供しようとします。HTTP / 3はQUIC経由でのみ機能します。

アプリケーション層

アプリケーション層には、ユーザーサービスを提供したり、下位レベルのプロトコルによって確立されたネットワーク接続を介してアプリケーションデータを交換したりするためにほとんどのアプリケーションで使用されるプロトコルが含まれていますこれには、ルーティングプロトコルやホスト構成などの基本的なネットワークサポートサービスが含まれる場合があります。アプリケーション層プロトコルの例には、ハイパーテキスト転送プロトコル(HTTP)、ファイル転送プロトコル(FTP)、簡易メール転送プロトコル(SMTP)、および動的ホスト構成プロトコル(DHCP)が含まれます。[35]アプリケーション層プロトコルに従ってコード化されたデータは カプセル化されますトランスポート層プロトコルユニット(TCPストリームやUDPデータグラムなど)に変換されます。トランスポート層プロトコルユニットは、下位層のプロトコルを使用して実際のデータ転送を実行します。

TCP / IPモデルは、データのフォーマットと表示の詳細を考慮せず、OSIモデル(表示層とセッション層)のように、アプリケーション層とトランスポート層の間に追加の層を定義しません。TCP / IPモデルによると、このような関数はライブラリアプリケーションプログラミングインターフェイスの領域です。TCP / IPモデルのアプリケーション層は、多くの場合、OSIモデルの5番目(セッション)、6番目(プレゼンテーション)、および7番目(アプリケーション)の層の組み合わせと比較されます。

アプリケーション層プロトコルは、特定のクライアントサーバーアプリケーションに関連付けられていることが多く、一般的なサービスには、 Internet Assigned Numbers Authority(IANA)によって予約されている既知のポート番号があります。たとえば、ハイパーテキスト転送プロトコルはサーバーポート80を使用し、 Telnetはサーバーポート23を使用します。サービスに接続するクライアントは通常、一時的なポートを使用します。つまり、トランザクションの期間中にランダムに、またはで構成された特定の範囲からのみ割り当てられたポート番号です。応用。

アプリケーション層では、TCP / IPモデルはユーザープロトコルサポートプロトコルを区別します[36]サポートプロトコルは、ネットワークインフラストラクチャのシステムにサービスを提供します。ユーザープロトコルは、実際のユーザーアプリケーションに使用されます。たとえば、FTPはユーザープロトコルであり、DNSはサポートプロトコルです。

アプリケーションは通常、エンドポイントIPアドレスやポート番号などのトランスポート層接続の主要な品質を認識していますが、アプリケーション層プロトコルは通常、トランスポート層(およびそれ以下)のプロトコルを、通信するための安定したネットワーク接続を提供するブラックボックスとして扱います。 。トランスポート層と下位層は、アプリケーション層プロトコルの詳細に関係ありません。ルーターとスイッチは通常、カプセル化されたトラフィックを検査せず、そのためのコンジットを提供するだけです。ただし、一部のファイアウォールおよび帯域幅調整アプリケーションは、ディープパケットインスペクションを使用してアプリケーションデータを解釈します。例はリソース予約プロトコル(RSVP)。[要出典] NATの影響を受けるアプリケーションがアプリケーションのペイロードを考慮する 必要がある場合もあります。

文献のレイヤー名とレイヤー数

次の表に、さまざまなネットワークモデルを示します。レイヤーの数は3から7の間で異なります。

RFC 1122、インターネット標準3(1989) Cisco Academy [37] 黒瀬、[38]フォロウザン[39] カマー、[40]コジエロク[41] ストール[42] タネンバウム[43] Arpanet参照モデル(RFC 871) OSIモデル
4層 4層 5層 4 +1層 5層 5層 3層 7層
「インターネットモデル」 「インターネットモデル」 「5層インターネットモデル」または「TCP / IPプロトコルスイート」 「TCP / IP5層リファレンスモデル」 「TCP / IPモデル」 「TCP / IP5層リファレンスモデル」 「Arpanetリファレンスモデル」 OSIモデル
応用 応用 応用 応用 応用 応用 アプリケーションプロセス 応用
プレゼンテーション
セッション
輸送 輸送 輸送 輸送 ホスト間またはトランスポート 輸送 ホスト間 輸送
インターネット インターネットワーク 通信網 インターネット インターネット インターネット 通信網
リンク ネットワークインターフェース データリンク データリンク(ネットワークインターフェース) ネットワークアクセス データリンク ネットワークインターフェース データリンク
物理的 (ハードウェア) 物理的 物理的 物理的

ネットワークモデルの一部は教科書からのものであり、RFC1122および他のIETF一次資料の意図と矛盾する可能性のある二次資料です。[44]

TCP / IPとOSIの階層化の比較

OSIモデルの上位3つの層、つまりアプリケーション層、プレゼンテーション層、およびセッション層は、トランスポート層の上にアプリケーション層しかないTCP / IPモデルでは個別に区別されません。X.400などの一部の純粋なOSIプロトコルアプリケーションもそれらを組み合わせていますが、TCP / IPプロトコルスタックがトランスポート層の上にモノリシックアーキテクチャを課す必要はありません。たとえば、NFSアプリケーションプロトコルはExternal Data Representation(XDR)プレゼンテーションプロトコル上で実行され、XDRプレゼンテーションプロトコルはRemote Procedure Call(RPC)と呼ばれるプロトコル上で実行されます。RPCは信頼性の高いレコード送信を提供するため、ベストエフォートのUDPトランスポートを安全に使用できます。

さまざまな作成者がTCP / IPモデルの解釈を変えており、リンク層またはTCP / IPモデルのいずれかの側面がOSI層1(物理層)の問題をカバーしているかどうか、またはTCP / IPがハードウェア層が下に存在すると想定しているかどうかについて意見が分かれています。リンク層。

何人かの著者は、OSIモデルのレイヤー1と2をTCP / IPモデルに組み込むことを試みました。これは、これらが最新の標準(たとえば、IEEEITUによって)で一般的に参照されているためです。これにより、多くの場合、5つのレイヤーを持つモデルが作成され、リンクレイヤーまたはネットワークアクセスレイヤーがOSIモデルのレイヤー1と2に分割されます。

IETFプロトコル開発の取り組みは、厳密な階層化には関係していません。一部のプロトコルはOSIモデルに完全に適合しない場合がありますが、RFCはそれを参照することがあり、古いOSIレイヤー番号を使用することがよくあります。IETFは、インターネットプロトコルとアーキテクチャの開発はOSIに準拠することを意図していないと繰り返し述べています[要出典] 。インターネットアーキテクチャに言及しているRFC3439には、「有害と考えられる階層化」というタイトルのセクションが含まれています。

たとえば、OSIスイートのセッション層とプレゼンテーション層は、TCP / IPスイートのアプリケーション層に含まれていると見なされます。セッション層の機能は、HTTPSMTPなどのプロトコルに見られ、 TelnetSession Initiation Protocol(SIP)などのプロトコルでより明確になります。セッション層の機能は、TCP / IPスイートのトランスポート層に含まれているTCPおよびUDPプロトコルのポート番号によっても実現されます。プレゼンテーション層の機能は、データ交換のMIME標準を 使用してTCP / IPアプリケーションで実現されます。

もう1つの違いは、ルーティングプロトコルの処理にあります。OSIルーティングプロトコルIS-ISはネットワーク層に属し、あるルーターから別のルーターにパケットを配信するためにCLNSに依存しませんが、独自のレイヤー3カプセル化を定義します。対照的に、OSPFRIPBGP、およびIETFによって定義されたその他のルーティングプロトコルはIPを介して転送され、ルーティングプロトコルパケットを送受信する目的で、ルーターがホストとして機能します。結果として、RFC 1812には、アプリケーション層にルーティングプロトコルが含まれています。コンピュータネットワークのタネンバウムなどの一部の著者 、ルーティングプロトコルがルーターの転送プロセスによって行われた決定に通知することを理由に、IPと同じレイヤーのルーティングプロトコルについて説明します。

Generic Routing Encapsulation(GRE)などのトンネリングプロトコルで示されているように、IETFプロトコルは再帰的にカプセル化できます。GREは、OSIがネットワーク層でのトンネリングに使用するのと同じメカニズムを使用します。

実装

インターネットプロトコルスイートは、特定のハードウェアまたはソフトウェア環境を想定していません。コンピュータネットワーク上でパケットを送受信できるハードウェアとソフトウェアの層が存在する必要があるだけです。その結果、このスイートは基本的にすべてのコンピューティングプラットフォームに実装されています。TCP / IPの最小限の実装には、インターネットプロトコル(IP)、アドレス解決プロトコル(ARP)、インターネット制御メッセージプロトコル(ICMP)、伝送制御プロトコル(TCP)、ユーザーデータグラムプロトコル(UDP)、およびインターネットグループ管理が含まれます。プロトコル(IGMP)。IPに加えて、ICMP、TCP、UDP、インターネットプロトコルバージョン6には近隣探索プロトコル(NDP)、ICMPv6、およびマルチキャストリスナ探索(MLD)であり、多くの場合、統合されたIPSecセキュリティレイヤーが付属しています。

も参照してください

参考文献

  1. ^ W. Richard Stevens、 TCP / IP Illustrated、Volume 1:The Protocols、Addison Wesley、1994、ISBN0-201-63346-9。
  2. ^ a b Cerf、Vinton G.&Cain、Edward(1983)、「The DoD Internet Architecture Model」Computer Networks、7、North-Holland、pp。307–318、CiteSeerX 10.1.1.88.7505 
  3. ^ a b RFC 1122、インターネットホストの要件–通信層、R。Braden(ed。)、1989年10月。
  4. ^ RFC 1123、インターネットホストの要件–アプリケーションとサポート、R。Braden(ed。)、1989年10月
  5. ^ アバテ、ジャネット(2000)。インターネットの発明MITプレス。pp。123–4。ISBN 978-0-262-51115-5
  6. ^ Cerf、V。; カーン、R。(1974)。「パケットネットワーク相互通信のプロトコル」(PDF)通信に関するIEEEトランザクション22(5):637–648。土井10.1109 /TCOM.1974.1092259ISSN1558-0857_ 著者は、国際ネットワークプロトコル、特にR. Metcalfe、R。Scantlebury、D。Walden、およびH. Zimmermanの初期の議論において、有益なコメントを寄せてくれた多くの同僚に感謝したいと思います。断片化と会計の問題について建設的にコメントしたD.デイビスとL.プザン。協会の創設と破壊についてコメントしたS.クロッカー。  
  7. ^ 「インターネットの5番目の男」エコノミスト2013年12月13日2017年9月11日取得1970年代初頭、プーザン氏はフランス、イタリア、英国の場所をリンクする革新的なデータネットワークを作成しました。そのシンプルさと効率性は、数十台のマシンだけでなく、数百万台のマシンを接続できるネットワークへの道を示しました。それは、現在インターネットに電力を供給しているプロトコルにその設計の側面を含めたCerf博士とKahn博士の想像力を捉えました。
  8. ^ Vinton Cerf Yogen Dalal、Carl Sunshine(1974年12月)、 RFC 675インターネット伝送制御プロトコルの仕様(1974年12月) 
  9. ^ インターネットの殿堂
  10. ^ Panzaris、Georgios(2008)。機械とロマンス:汎用プラットフォームとしてのネットワーク化されたコンピューティングの技術的および物語的な構築、1960年から1995年スタンフォード大学p。128。
  11. ^ Pelkey、James L.(2007)。「ヨーゲンダラル」。起業家資本主義とイノベーション:コンピュータコミュニケーションの歴史、1968年から1988年2019年9月5日取得
  12. ^ Postel、Jon(1977)、「セクション3.3.3.2」インターネットプロトコルとTCPに関するコメント
  13. ^ 「TCP / IPガイド-TCP / IPの概要と歴史」www.tcpipguide.com 2020年2月11日取得
  14. ^ a b は、Bernard Aboba(1993)に伝えられたVintonCerfによるものです。「インターネットがどのようになってきたか」2017年9月26日にオリジナルからアーカイブされました2017年9月25日取得スタンフォード、BBN、ユニバーシティカレッジロンドンで同時実装を開始しました。したがって、インターネットプロトコルの開発における取り組みは、当初から国際的なものでした。... 82年3月-ノルウェーはARPANETを離れ、TCP / IP overSATNETを介したインターネット接続になりました。'82年11月-UCLはARPANETを離れ、インターネット接続になります。
  15. ^ RFC 1812、 IPバージョン4ルーターの要件、F。Baker(1995年6月)
  16. ^ クロウェル、ウィリアム; コントス、ブライアン; デロデフ、コルビー(2011)。物理的および論理的なセキュリティの統合:エンタープライズセキュリティ管理によって強化されています。Syngress。p。99. ISBN 9780080558783
  17. ^ ロンダハウベン。「ARPANETからインターネットへ」TCPダイジェスト(UUCP)2007年7月5日取得
  18. ^ マーティン、オリヴィエ(2012)。ヨーロッパの研究ネットワーキングの「隠された」先史時代トラフォード出版。ISBN 978-1466938724
  19. ^ Kirstein、PeterT。「英国でのARPANETとインターネットの初期の経験」ロンドン大学ユニバーシティカレッジコンピュータサイエンス、システムおよびネットワーク研究グループ2016年4月13日取得
  20. ^ 「TCP / IPインターネットプロトコル」2018年1月1日にオリジナルからアーカイブされました2017年12月31日取得
  21. ^ Leiner、Barry M。; etal。(1997)、インターネットの簡単な歴史(PDF)インターネットソサエティ、p。15
  22. ^ 「WindowsforWorkgroups3.11でのWollongongTCP / IPの使用」Microsoftサポート2012年1月12日にオリジナルからアーカイブされました。
  23. ^ 「CERNでのインターネットプロトコルの短い歴史」2016年11月10日にオリジナルからアーカイブされました2016年9月12日取得
  24. ^ ベイカー、スティーブン; Gillies、DonaldW。「中年のデスクトップTCP / IP」
  25. ^ Romkey、ジョン(2011年2月17日)。「について」2016年9月12日取得
  26. ^ Phil Karn、 KA9QTCPダウンロードWebサイト
  27. ^ アンドリューL.ラッセル(2013年7月30日)。「OSI:そうではなかったインターネット」IEEEスペクトラム50、いいえ。8.8。
  28. ^ Russell、Andrew L. 「ラフコンセンサスと実行中のコード」とインターネット-OSI標準戦争」(PDF)コンピューティングの歴史のIEEE年報。2019年11月17日にオリジナル(PDF)からアーカイブされました。
  29. ^ a b デイビス、ハワード; ブレッサン、ベアトリス(2010年4月26日)。国際研究ネットワーキングの歴史:それを実現させた人々ジョン・ワイリー&サンズ。ISBN 978-3-527-32710-2
  30. ^ インターネットの設計を再考する:エンドツーエンドの議論と勇敢な新世界、Marjory S. Blumenthal、David D. Clark、2001年8月
  31. ^ ジョン・ポステル編 (1981年9月)。インターネットプロトコルDARPAインターネットプログラムプロトコル仕様p。23.土井10.17487 / RFC0791RFC791_
  32. ^ R. Braden、ed。(1989年10月)。インターネットホストの要件–通信レイヤーp。13. doi10.17487 / RFC1122RFC1122_
  33. ^ B.カーペンター、編 (1996年6月)。インターネットのアーキテクチャの原則土井10.17487 / RFC1958RFC1958_
  34. ^ ハント、クレイグ(2002)。TCP / IPネットワーク管理(第3版)。オライリー。pp。9–10。ISBN 9781449390785
  35. ^ TCP / IPの図解:プロトコル ISBN 0-201-63346-9、W。リチャードスティーブンス、1994年2月 
  36. ^ RFC 1122インターネットホストの要件–通信層、1.1.3インターネットプロトコルスイート、1989
  37. ^ 染料、マーク; マクドナルド、リック; ルフィ、アントゥーン(2007年10月29日)。ネットワークの基礎、CCNA Exploration CompanionGuideシスコプレス。ISBN 97801328774352016年9月12日、 Googleブックス経由で取得。
  38. ^ James F. Kurose、Keith W. Ross、Computer Networking:A Top-Down Approach、2008 ISBN 0-321-49770-8 
  39. ^ Forouzan、Behrouz A。; Fegan、Sophia Chung(2003年8月1日)。データ通信とネットワーキングマグロウヒル高等教育。ISBN 97800729235442016年9月12日、 Googleブックス経由で取得。
  40. ^ カマー、ダグラス(2006年1月1日)。TCP / IPを使用したインターネット作業:原則、プロトコル、およびアーキテクチャプレンティスホール。ISBN 0-13-187671-62016年9月12日、 Googleブックス経由で取得。
  41. ^ Kozierok、Charles M.(2005年1月1日)。TCP / IPガイド:包括的で図解されたインターネットプロトコルリファレンススターチプレスはありません。ISBN 97815932704762016年9月12日、 Googleブックス経由で取得。
  42. ^ Stallings、William(2007年1月1日)。データおよびコンピュータ通信プレンティスホール。ISBN 978-0-13-243310-52016年9月12日、 Googleブックス経由で取得。
  43. ^ タネンバウム、アンドリューS.(2003年1月1日)。コンピュータネットワークプレンティスホールPTR。p。 42ISBN 0-13-066102-32016年9月12日–インターネットアーカイブ経由で取得。ネットワーク。
  44. ^ RFC 3439、いくつかのインターネットアーキテクチャガイドラインと哲学、R。ブッシュ、D。マイヤー(編)、2002年12月。

参考文献

外部リンク