第2章 TCP/IP基礎知識 4405019 4405020 4405023 4405071 4405074 4405082 小尾 帯金 加治 野村 濱田 松浦 雅人 秀行 正記 尚吾 洋之 研斗 2.1 TCP/IP登場の背景と その歴史 4405074 濱田 洋之 2.1.1 軍事技術の応用から 1960年代後半 障害が発生しても分散型ネットワークであれば、 迂回路がある限り通信を続けられる パケット通信を利用すれば回線の利用効率が向上する DoD (アメリカ国防総省) A B 中心に障害が発生すると 多くの通信に支障がでる 図.障害に弱いネットワーク A B いくつかのサイトに障害が 発生しても、迂回路を通って パケットを配送できる 図.障害に強いパケットネットワーク 2.1.2 ARPANETの誕生 1969年に誕生し、当初はアメリカ西海岸の大学 と研究機関のうちの4つのノードを結んだもの 3年間で4つのノードから34のノードを 接続する形に発展 パケットによるデータ通信手法が実用に 耐えることが証明された 2.1.3 TCP/IPの誕生 1975年にARPANET内の研究グループが開発 した通信プロトコル 1982年頃までかかって仕様が決定 1982年からTCP/IPを実装したUNIXの 提供が始まる 1983年にARPANETの正式接続手順に 決定 2.1.4 UNIXの普及とインターネットの拡大 1980年代、LANの発達とともに UNIXワークステーションが急速に普及 TCP/IPネットワークの構築が盛んに 1980年代半ばごろから、 各コンピューターメーカー独自の プロトコルもTCP/IPに対応する 2.1.5 商用インターネットサービスの開始 1990年代になるとISPを通じて企業や一般家庭がイン ターネットを広く商用利用するように TCP/IPは商用サービスにも耐えうる成熟した プロトコルになっていた インターネットは当初の研究ネットワークの 形ではなく、有料の商用サービスとして 急成長している 自由でオープンなインターネットは急速に 受け入れられていった 2.2 TCP/IPの標準化 4405082 松浦 研斗 2.2.1 TCP/IPという語は何を指すのか ・TCPとIPという2つのプロトコルで あるか? ・多くの場合は、IPで通信をする時に必要 となる多くのプロトコル群の総称として使 われる。 2.2.2 TCP/IP標準化の精神 1. 2. オープンである。 標準化するプロトコルが実際に使 えるプロトコルであるかどうか重視 する オープン TCP/IPのプロトコルは、IETFでの議 論(通常電子メールのメーリングリス ト)を通して決められ、このIETFには 誰でも参加することができる。 標準化するプロトコルが実際に使 えるプロトコル プロトコルの仕様を決めることを重 視するのではなく、互いに通信で きる技術を追い求めてきた ・実用性が高いプロトコルに仕上がる。 2.2.3 TCP/IPの仕様書RFC ・ 標準化しようとするプロトコルは、RFCと 呼ばれるドキュメントになり、インターネット で公開される。 • RFCになったドキュメントには番号が付け られる。 • 一度RFCになると内容を改訂できないので、 拡張する場合は新しい番号が付けられる。 • 変更する場合も新しいRFCが発行され、 古いRFCが無効になる。 STD や FYI STDやFYIでは、どの番号がどのプ ロトコルの仕様を示すかが決められ ていて、同じプロトコルならば仕様が 更新されても番号は変化しない。 2.2.4 TCP/IPプロトコルの標準化 の流れ プロトコルの標準化作業は、IETF での議論を通して行われる。 IETFでは年三回のミーティングが 行われるが、通常はメーリングリ ストによる電子メールで議論が行 われる。 プロトコル標準化の流れ 特徴 TCP/IPの標準化は、標準を決めて から普及させようとするほかの標準 化団体と違い、標準になった時には 既に普及が終わっている。 非常に実用性が高い技術となる。 2.2.5 RFCの入手方法 インターネットを利用して入手する RFCのオリジナル(英語)は次のURLから配 布されている。 ftp://ftp.isi.edu/in-notes/ 2.3 インターネットの基礎知識 4405019 小尾 雅人 2.3.1.インターネットとは 元は複数のネットワークを結び1つのネットワー クにすること 現在ではARPANET(アーパネット)から発展し、 全世界を接続しているコンピュータネットワーク を指す インターネットは固有名詞 2.3.2.インターネットとTCP/IP インターネット用に開発されたプロトコルが TCP/IP 2.3.3.インターネットの構造 小規模のネットワーク同士を接続して中規模に ↓ 中規模のネットワークも接続、徐々に巨大化 ↓ 現在のような世界的なネットワーク 2.3.3.インターネットの構造 その他必要なもの バックボーン(基幹ネットワーク) スタブ(枝葉となるネットワーク) NOC(ネットワーク間の接続するポイント) IX(運用、利用方針の違うネットワークを接続 するポイント) 2.3.4.ISPと地域ネット インターネットを利用するためにはISP(通称 プロバイダー)や地域ネットと接続契約を結ば なければならない。 サービス内容、価格、条件を良く調べた上で 契約するようにしましょう。 2.4 TCP/IPプロトコルの 階層モデル 4405020 帯金 秀行 2.4.1 TCP/IPとOSI参照モデル OSI参照モデル アプリケーション層 プレゼンテーション層 セッション層 トランスポート層 ネットワーク層 データリンク層 物理層 TCP/IPの階層モデル アプリケーション層 トランスポート層 インターネット層 ネットワークインターフェイス層 (ハードウェア) 2.4.2 ハードウェア(物理層) 物理的に転送してくれるハードウェア →イーサネットや電話回線などの物理層 →ケーブルや無線でつなぐ 信頼性やセキュリティ、帯域、遅延時間に制 限なし ※事項のネットワークインターフェイス層とまと めて扱うことが多い。 2.4.3 ネットワークインターフェイス層 データリンクを利用して通信するためのイン ターフェイス層=デバイスドライバ ※デバイスドライバ ・OSとハードウェアを橋渡しするソフト →これがないと、パソコンで拡張したパーツ (CD/DVDドライブ、グラフィックドライバ等)が 動かない! 2.4.4 インターネット層(ネットワーク層) IPプロトコル(IP、ARP、ICMP)を使用 ホストA ホストB ATM(専用回線) イーサネット イーサネット 2.4.4 インターネット層(ネットワーク層) IPプロトコル(IP、ARP、ICMP)を使用 ホストA ホストB インターネット 2.4.4 インターネット層(ネットワーク層) IP(Internet Protocol) ネットワークをまたいでパケット転送し、イン ターネット全体にパケットを送り届けるプロトコ ル →地球の裏側まで送ることが可能 ホストを識別するためにIPアドレスを使用 2.4.4 インターネット層(ネットワーク層) ICMP (Internet Control Message Protocol) IPパケットに異常が発生してパケット転送でき なかったときに異常を知らせるプロトコル ARP(Address Resolution Protocol) 物理的アドレス(MAC)をIPアドレスから取得 するプロトコル 2.4.5 トランスポート層 2つの重要なプロトコルが含まれる層 ・TCP ・UDP アプリケーションプログラム間の通信を実現 →識別にポート番号を使用 2.4.5 トランスポート層 TCP(Transmission Control Protocol) ホストのデータの到達を保証 →順番が入れ替わっても、解決 →帯域幅の有効利用 →ネットワークの混雑緩和 ※コネクションの確立、接続の制御を行う →データやり取りが多いので、パケット量が少 ないファイルや音声や映像には不向き。 2.4.5 トランスポート層 UDP(User Datagram Protocol) ホストのデータの到達をチェックしない →アプリケーションプログラムがチェックする →TCPでの欠点であった、パケット量が少な いもの、ブロードキャストの通信、映像、音楽 向き 2.4.6 アプリケーション層(セッション層以 上) TCP/IPはセッション層以上はアプリケーション層 に全て統一 応答 ホストA Httpd Webブラウザ メールソフト Sendmail telnet telnetd サーバー クライアント 要求 ホストB 2.4.6 アプリケーション層(セッション層以 上) WWW(World Wide web) サーバーに公開された様々な情報を閲覧でき る(Internet Explorer、Sleipnir等) →HTTP(HyperText Transfer Protocol)がア プリケーション層、HTML(HyperText Markup Language)がプレゼンテーション層のプロトコ ル 2.4.6 アプリケーション層(セッション層以 上) 電子メール(E-Mail) ネットワーク上で連絡を取り合える(Outlook Express、npopなど) →SMTP(Simple Mail Transfer Protocol)は アプリケーション層、MIMEはプレゼンテー ション層のプロトコル ※電子メールの発展がTCO/IPの発展に大きな 影響をもたらした。 2.4.6 アプリケーション層(セッション層以 上) ファイル転送 FTP(File Transfer Protocol) 異なるパソコンのハードディスクにファイルを 転送・受信できる(FFFTPなど) TCPが2種類(制御、データ転送)存在 2.4.6 アプリケーション層(セッション層以 上) 遠隔操作(Telnet、HHS) 自分のパソコンで相手のパソコンのように使う。 ネットワーク管理 SNMP(Simple Network Management Protocol) ルータやサーバなど、ネットワーク全体を管理 2.5 TCP/IP階層モデルと 通信例 4405023 加治 正記 2.5.1. パケットヘッダ(1) パケットの構造 ヘッダ 運びたい情報(データ) ヘッダ 送信されるデータに付加 運んでいるデータに関する情報が入っている 2.5.1. パケットヘッダ パケットヘッダの階層化 イーサネット (IPヘッダ) (TCPヘッダ) (データ) ヘッダ IPヘッダ 黄・・・データ オレンジ・・・ヘッダ (TCPヘッダ) (データ) TCPヘッダ データ 2.5.2. パケットの送信処理 アプリケーションの処理 TCPモジュールの処理 IPモジュールの処理 ネットワークインタフェースの処理 2.5.2. アプリケーションの処理 アプリケーションプログラムでメールの作成 文字を入力 送信ボタンクリック 符号化の処理 TCPにコネクションの確立を指示 データの送信 TCPへ 2.5.2. TCPモジュールの処理 アプリケーションの指示によってコネクションの確立やデータ の送信、コネクションの切断を行う 信頼性のあるデータ転送の提供 アプリケーションからデータを受け取る TCPのヘッダを付ける IPへ TCPヘッダ ポート番号 シーケンス番号 チェックサム 2.5.2. IPモジュールの処理 TCPからデータを受け取る IPヘッダ IPのヘッダを付ける ネットワークインタフェースへ 宛先のIPアドレス 送信元のIPアドレス プロトコルタイプ 2.5.2. ネットワークインタフェース (イーサネットドライバ)の処理 IPからデータを受け取る イーサネットのヘッダを付ける 相手先に送信 イーサネットのヘッダ 宛先のMACアドレス 送信元のMACアドレス イーサネットタイプ • 送信処理中にFCSが計算されフレームの最後に付けられる 2.5.3. データリンクを流れる パケットの様子 データ リンク層 データリンク層 ネットワーク層 宛先 送信者 イーサ 送信元 宛先 プロト MAC MAC IP IP ネット コル アドレス アドレス タイプ アドレス アドレス タイプ イーサネットヘッダ IPヘッダ トランスポート層 アプリケーション層 送信元 ポート 番号 宛先 ポート 番号 TCPヘッダ データ アプリケーション のヘッダやデータ データの流れる方向 データが処理される順 FCS 2.5.4. パケットの受信処理 ネットワークインタフェースの処理 IPモジュールの処理 TCPモジュールの処理 アプリケーションの処理 2.5.4. ネットワークインタフェース の処理 相手側からデータ受信 イーサネットヘッダの宛先MACを確認 自分宛でない 削除 イーサネットタイプを確認 IPの処理ルーチンにデータを渡す 2.5.4. IPモジュールの処理 データの受け取り 宛先IPアドレスの確認 プロトコルタイプの確認 TCPの処理ルーチンにデータを渡す 2.5.4. TCPモジュールの処理 チェックサムを計算してデータが壊れてないか確認 番通り受信しているか確認 ポート番号の確認 送信ホストに「確認応答」を返す 送信したホストに届かない データを繰り返し送信 アプリケーションプログラムにデータを渡す 2.5.4. アプリケーションの処理 送信側が送信したデータをそのまま受信 受信したデータを解析 メールボックスが存在しない エラーを返す メッセージを格納 格納できない 異常終了のメッセージ送信 処理が正常に終了された事を送信元へ伝える メールソフト起動後、ディスプレイ上に文字が表示される 2.5.5. まとめ パケットのヘッダにはプロトコルの仕様が 明確に表されている つまり ヘッダを見ればプロトコルの仕様がわかる ヘッダはプロトコルの顔
© Copyright 2025 ExpyDoc