第2章 TCP/IPの基礎知識 情報通信ネットワーク 1 2.1 TCP/IP登場の背景と その歴史 4407056 田端晃一 情報通信ネットワーク 2 軍事技術の応用から アメリカ国防総省(DoD)はネットワーク の一部が破壊されても通信が停止しないよ うなネットワークを望んだ 回路がたくさんある分散型のネットワークが 理想 パケット通信が重要 情報通信ネットワーク 3 ARPANETの誕生 1969年にパケット交換技術の実用性を試験するた めのネットワークが構築される(ARPANET) ◦ 当初のネットワークは、アメリカ西海岸の大学と研究機関 のうちの4つのノードを結んだものであった その後3年間でノードの数が34に増える この実験によって、パケットによるデータ通信手 法が実用に耐えることが証明された 情報通信ネットワーク 4 TCP/IPの誕生 ARPANETの実験では相手先のコンピュータ との間で信頼性の高い通信手段を供給する 総合的な通信プロトコルの実験も行われた 1970年代前半にTCP/IPが開発される 1983年にARPANETで使う唯一のプロトコル となる 情報通信ネットワーク 5 UNIXの普及とインターネットの 拡大 TCP/IPが登場した当時、OSとしてBSD UNIX が利用されていた このOSにTCP/IPが実装された 1980年代に、LANの発達により、UNIXワー クステーションが普及し始める 大学や企業の研究所などがARPANETやその 後継のNSFnetに接続するようになる TCP/IPによる世界的なネットワークを「イン ターネット」と呼ぶようになる 情報通信ネットワーク 6 商用インターネットサービスの 開始 インターネットは当初、実験や研究目的で スタートしたが、1990年代に企業や一般家 庭に普及し始める 研究ネットワークとして長い間インター ネットを運用してきた結果、TCP/IPは商用 サービスにも耐えうる成熟を遂げていた インターネットは有料の商用サービスとし て急成長した 情報通信ネットワーク 7 2.2 TCP/IPの標準化 4407036 榊原 悠 情報通信ネットワーク 8 2.2.1 TCP/IPという語は何を指すのか TCPとIPという2つのプロトコルである か? 多くの場合は、IPで通信をする時に必要と なる多くのプロトコル群の総称として使われ る。 情報通信ネットワーク 9 2.2.2 TCP/IP標準化の精神 1. 2. オープンである。 標準化するプロトコルが実際に使える プロトコルであるかどうか重視する 情報通信ネットワーク 10 オープン TCP/IPのプロトコルは、IETFでの議論 (通常電子メールのメーリングリスト)を通 して決められ、このIETFには誰でも参加 することができる。 情報通信ネットワーク 11 標準化するプロトコルが実際に使えるプ ロトコル プロトコルの仕様を決めることを重視するの ではなく、互いに通信できる技術を追い求め てきた 実用性が高いプロトコルに仕上がる。 情報通信ネットワーク 12 2.2.3 TCP/IPの仕様書RFC 標準化しようとするプロトコルは、RFCと 呼ばれるドキュメントになり、インターネッ トで公開される。 RFCになったドキュメントには番号が付け られる。 一度RFCになると内容を改訂できないの で、拡張する場合は新しい番号が付けら れる。 変更する場合も新しいRFCが発行され、 古いRFCが無効になる。 情報通信ネットワーク 13 STD や FYI STDやFYIでは、どの番号がどのプロトコ ルの仕様を示すかが決められていて、同 じプロトコルならば仕様が更新されても 番号は変化しない。 情報通信ネットワーク 14 2.2.4 TCP/IPプロトコルの標準化の流れ プロトコルの標準化作業は、IETFでの議 論を通して行われる。 IETFでは年三回のミーティングが行われ るが、通常はメーリングリストによる電子 メールで議論が行われる。 情報通信ネットワーク 15 プロトコル標準化の流れ 情報通信ネットワーク 16 特徴 TCP/IPの標準化は、標準を決めてから 普及させようとするほかの標準化団体と 違い、標準になった時には既に普及が 終わっている。 非常に実用性が高い技術となる。 情報通信ネットワーク 17 RFCの入手方法 インターネットを利用して入手する RFCのオリジナル(英語)は次のURLから 配布されている。 ftp://ftp.isi.edu/in-notes/ 情報通信ネットワーク 18 2.3 インターネットの基礎知識 4407402 丹野 雅弘 情報通信ネットワーク 19 2.3.1 インターネットとは 今の意味 昔の意味 ・ ネットワーク間接続という2 つのイーサネットセグメント をルーターで接続する方 法 ・企業内部の部署間や社内、 企業間で互いに通信でき るように接続したもの ・地域や世界的規模でのネッ トワーク間接続 ・ ARPANET (Advanced Research Projects Agency Network)か ら発展し、全世界を 接続しているコン ピュータネットワーク 情報通信ネットワーク 20 2.3.2 インターネットとTCP/IPの関係 インターネットをするためにはプロトコル は絶対に必要 インターネットのプロトコル TCP/IP 情報通信ネットワーク 21 2.3.3 インターネットの構造 • インターネットは、階層的な構造をもっている 世界中を結ぶ巨大なインターネット 地域ネットワーク 組織ネットワーク 小さなネットワーク 情報通信ネットワーク 22 • それぞれのネットワークは、バックボーンと呼 ばれる基幹ネットワークとスタブと呼ばれる末 端のネットワーク部分から構成される • 一言でネットワークを表現すると、“異なる組 織が、IXによって接続された巨大なネットワー ク” ・NOC(Network Operation Center) ネットワーク同士の接続 ・IX(Internet Exchange) ネットワークの運営者や運用方針、利用方針 など異なるネットワークを対等に接続するポ イント 情報通信ネットワーク 23 図1.インターネットの構造 情報通信ネットワーク 24 2.3.4 ISPと地域ネット • 会社や家庭でインターネットを利用するため にはISP(Internet Service Provider/通称:プロ バイダー)や地域ネット(特定の自治体やボラ ンティアが管理運営)と接続契約を結ばなけ ればならない • サービス内容、価格、条件が様々なので、良 く調べた上で自分の利用目的に合わせ契約 しましょう 情報通信ネットワーク 25 2.4 TCP/IPプロトコルの 階層モデル 4407402 丹野 雅弘 情報通信ネットワーク 26 2.4.1 TCP/IPとOSI参照モデル OSI参照モデル アプリケーション層 プレゼンテーション層 TCP/IPの階層モデル アプリケーション プログラム アプリケーション層 オペレーティング システム トランスポート層 デバイスドライバと ネットワークインター フェイス ネットワーク インターフェイス層 (ハードウェア) セッション層 トランスポート層 ネットワーク層 データリンク層 物理層 情報通信ネットワーク インターネット層 27 2.4.2 ハードウェア(物理層) • ハードウェア=イーサネットや 電話回線等 • 通信媒体は何でもよく、利用 に制限がない。 情報通信ネットワーク 28 2.4.3 ネットワークインターフェイス層 (データリンク層) • データリンクを利用して通信をす るためのインタフェースとなる階 層 • NIC(Network Interface Card)を動 かすためのデバイスドライバの 役割を果たす。 情報通信ネットワーク 29 2.4.4 インターネット層(ネットワーク層) • IPプロトコル(IP、ARP、ICMP)を使用 ホストA ホストB ATM(専用回線) イーサネット イーサネット 情報通信ネットワーク 30 2.4.4 インターネット層(ネットワーク層) • IPプロトコル(IP、ARP、ICMP)を使用 ホストA ホストB インターネット 情報通信ネットワーク 31 2.4.4 インターネット層(ネットワーク層) • IP(Internet Protocol) ネットワークをまたいでパケット転送し、イン ターネット全体にパケットを送り届けるプロトコ ル →地球の裏側まで送ることが可能 ホストを識別するためにIPアドレスを使用 情報通信ネットワーク 32 2.4.4 インターネット層(ネットワーク層) • ICMP (Internet Control Message Protocol) IPパケットに異常が発生してパケット転送でき なかったときに異常を知らせるプロトコル • ARP(Address Resolution Protocol) 物理的アドレス(MAC)をIPアドレスから取得す るプロトコル 情報通信ネットワーク 33 2.4.5 トランスポート層 • アプリケーションプログラム間の通信を実現 する。 情報通信ネットワーク 34 TCP(Transmission Control Protocol) • コネクション型で信頼性のあるトランスポート層 のプロトコル ホストのデータの到達を保証 →順番が入れ替わっても、解決 →帯域幅の有効利用 →ネットワークの混雑緩和 ※コネクションの確立、接続の制御を行う →データやり取りが多いので、パケット量が少な いファイルや音声や映像には不向き。 情報通信ネットワーク 35 UDP(User Datagram Protocol) • コネクションレス型で信頼性のないトランス ポート層プロトコル ホストのデータの到達をチェックしない →アプリケーションプログラムがチェックする →TCPでの欠点であった、パケット量が少ない もの、ブロードキャストの通信、映像、音楽向 き 情報通信ネットワーク 36 2.4.6 アプリケーション層 (セッション層以上の上位層) • TCP/IPはセッション層以上はアプリケーション 層に全て統一 情報通信ネットワーク 37 WWW(World Wide Web) ・インターネットで情報をやり取りする仕組み。 ・サーバーに公開された様々な情報を閲覧でき る。 ・HTTP(HyperText Transfer Protocol)がブラウ ザとサーバーの間の通信で使われるプロトコ ル、HTML(HyperText Markup Language)が送 信に使われるデータフォーマット 情報通信ネットワーク 38 電子メール(E-Mail) ・ネットワーク上で連絡を取り合える(Outlook Expressなど) →SMTP(Simple Mail Transfer Protocol)はアプ リケーション層、MIMEはプレゼンテーション 層のプロトコル ※電子メールの発展がTCO/IPの発展に大きな 影響をもたらした。 情報通信ネットワーク 39 ファイル転送 ・ 異なるパソコンのハードディスクにあ るファイルを転送・受信すること。 ・ファイル転送のプロトコルとして、 FTP(File Transfer Protocol) が利用さ れている。 ・TCPが2種類(制御、データ転送)存 在 情報通信ネットワーク 40 遠隔ログイン(TELNETとSSH) • 遠く離れたコンピュータにログインして、その コンピュータでプログラムを走ることができる ようにする機能 情報通信ネットワーク 41 ネットワーク管理 (SNMP(Simple Network Management Protocol)) • SNMPは、エージェントとマネージャの通信に 使われるプロトコル。 • SNMPのエージェントは、ネットワークインター フェイスの情報や通信パケットの量、機種の 温度の情報などの様々な情報を格納してい る。 • SNMPを利用することでネットワークの混雑具 合の調査や、障害の発見、ネットワーク拡張 のための情報収集に役立てることができる。 情報通信ネットワーク 42 2.5.TCP/IP階層モデルと通信例 4407003 飯田 正成 情報通信ネットワーク 43 2.5.1. パケットヘッダ(1) パケットの構造 ヘッダ 運びたい情報(データ) ヘッダ • 送信されるデータに付加 • 運んでいるデータに関する情報が入っている • 階層を動くことによってヘッダが変化する 情報通信ネットワーク 44 2.5.1. パケットヘッダ • パケットヘッダの階層化 イーサネット (IPヘッダ) (TCPヘッダ) (データ) ヘッダ インサーネットではデータ IPヘッダ (TCPヘッダ) (データ) IPではデータ 黄・・・データ オレンジ・・・ヘッダ TCPヘッダ データ TCPでのデータ 下位層から見ると、上位層から受け取るものはすべてひとつのデータになる。 情報通信ネットワーク 45 2.5.2. パケットの送信処理 1.アプリケーションの処理 2.TCPモジュールの処理 3.IPモジュールの処理 4.ネットワークインタフェースの処理 情報通信ネットワーク 46 2.5.2.1. アプリケーションの処理 アプリケーションプログラムでメールの作成 文字を入力 送信ボタンクリック 符号化の処理 TCPにコネクションの確立を指示 データの送信 TCPへ 情報通信ネットワーク 47 2.5.2.2. TCPモジュールの処理 アプリケーションの指示によってコネクションの確立やデータ の送信、コネクションの切断を行う 信頼性のあるデータ転送の提供 アプリケーションからデータを受け取る TCPのヘッダを付ける IPへ 情報通信ネットワーク TCPヘッダ • ポート番号 • シーケンス番号 • チェックサム 48 2.5.2.3. IPモジュールの処理 TCPからデータを受け取る IPのヘッダを付ける ネットワークインタフェースへ IPヘッダ • 宛先のIPアドレス • 送信元のIPアドレス • プロトコルタイプ 情報通信ネットワーク 49 2.5.2.4. ネットワークインタフェース (イーサネットドライバ)の処理 IPからデータを受け取る イーサネットのヘッダ • 宛先のMACアドレス イーサネットのヘッダを付ける • 送信元のMACアドレス • イーサネットタイプ 相手先に送信 • 送信処理中にFCSが計算されフレームの最後に付けられる 情報通信ネットワーク 50 2.5.3. データリンクを流れる パケットの様子 データ リンク層 データリンク層 ネットワーク層 宛先 送信者 イーサ 送信元 宛先 プロト MAC MAC IP IP ネット コル アドレス アドレス タイプ アドレス アドレス タイプ イーサネットヘッダ IPヘッダ トランスポート層 アプリケーション層 送信元 ポート 番号 宛先 ポート 番号 TCPヘッダ データ FCS アプリケーション のヘッダやデータ データの流れる方向 データが処理される順 情報通信ネットワーク 51 2.5.4. パケットの受信処理 1.ネットワークインタフェースの処理 2.IPモジュールの処理 3.TCPモジュールの処理 4.アプリケーションの処理 情報通信ネットワーク 52 2.5.4.1. ネットワークインタフェース の処理 相手側からデータ受信 イーサネットヘッダの宛先MACを確認 自分宛でない 削除 イーサネットタイプを確認 IPの処理ルーチンにデータを渡す 情報通信ネットワーク 53 2.5.4.2. IPモジュールの処理 データの受け取り 宛先IPアドレスの確認 プロトコルタイプの確認 TCPの処理ルーチンにデータを渡す 情報通信ネットワーク 54 2.5.4.3. TCPモジュールの処理 チェックサムを計算してデータが壊れてないか確認 番通り受信しているか確認 ポート番号の確認 送信ホストに「確認応答」を返す 送信したホストに届かない データを繰り返し送信 アプリケーションプログラムにデータを渡す 情報通信ネットワーク 55 2.5.4.4. アプリケーションの処理 送信側が送信したデータをそのまま受信 受信したデータを解析 メールボックスが存在しない エラーを返す メッセージを格納 格納できない 異常終了のメッセージ送信 処理が正常に終了された事を送信元へ伝える メールソフト起動後、ディスプレイ上に文字が表示される 情報通信ネットワーク 56 2.5.5. まとめ パケットのヘッダにはプロトコルの仕様が 明確に表されている つまり ヘッダを見ればプロトコルの仕様がわかる ヘッダはプロトコルの顔 情報通信ネットワーク 57
© Copyright 2025 ExpyDoc