Presentation is loading. Please wait.

Presentation is loading. Please wait.

ネットワークと コミュニケーション技法 第7回 - インターネット(1) -.

Similar presentations


Presentation on theme: "ネットワークと コミュニケーション技法 第7回 - インターネット(1) -."— Presentation transcript:

1 ネットワークと コミュニケーション技法 第7回 - インターネット(1) -

2 講義内容 1.インターネットアーキテクチャ  ・プロトコル(TCP/IP)  ・誤り制御等各種制御 2.IPアドレスとルーティング

3 インターネットとは <特徴3:管理は独立> ネットワーク1 ネットワーク4 <特徴2:TCP/IPで通信> ネットワーク2 ネットワーク3
<特徴1:ネットワークのネットワーク(世界規模)>

4 インターネットの概要 インターネット インターネット サービス プロバイダ メールサーバ WWWサーバ ブラウザ:Webページを見る
メーラ:電子メール送受信

5 インターネットの構成 基幹ネットワークへ インターネット 電話網 サービス モデム ルータ ルータ プロバイダ ADSLモデム 認証サーバ
WWWサーバ メールサーバ 専用線 ルータ ルータ

6 インターネットの主要機器 各種機器の集線 パケットを中継し、宛先へ向けて送信 ルータ ルータ ハブ ハブ LAN1 LAN2

7 TCP/IP通信プロトコル群の主要通信サービス
SMTP (Simple Mail Transfer Protocol) 電子メールを送信するための 通信プロトコル FTP (File Transfer Protocol) ファイル転送のための通信プロトコル TELNET (TELecommunication NETwork) 遠隔コンピュータに接続し、ログ インするための通信プロトコル MNTP (Network News Transfer Protocol) ネットワークニュースを転送する際に使用する通信プロトコル SNMP (Simple Network Management Protocol) ネットワーク管理に使用する通信プロトコル DNS (Domain Name System) ドメイン名とIPアドレスを管理するためのシステム POP3 (Post Office Protocol 3) メールサーバからメールを取得するための通信プロトコル HTTP (Hyper Text Transfer Protocol) HTMLファイルを転送するための通信プロトコル

8 インターネットのプロトコル階層 OSI参照モデル インターネットの階層 [代表的プロトコル] 7 アプリケーション 6 プレゼンテーション
セッション トランスポート ネットワーク データリンク 物理 アプリケーション トランスポート インターネット (ネットワーク) ネットワーク インターフェース HTTP、SMTP、POP、FTP、TELNET、DNS、DHCP、SNMP TCP、UDP、RTP IP、ICMP Ethernet

9 TCPヘッダとIPヘッダ 送信方向 データリンク層で付けるヘッダ IPヘッダ TCPヘッダ データ 通信サービスを示す情報 種々の 情報
通信サービスの作成データ データリンク層で付けるヘッダ IPヘッダ TCPヘッダ データ 通信サービスを示す情報 種々の 情報 誤り検出用情報 通し番号 送信元のIPアドレス(受取用) 種々の情報 宛先のIPアドレス(転送用) 種々の情報

10 コネクション型とコネクションレス型 コネクション型通信 コネクションレス型通信 送信側 受信側 受信側 送信側 コネクション設定 OK
データ1 データ1 OK データ2 データ2 OK コネクション解放 OK コネクション型通信 コネクションレス型通信

11 コネクション型とコネクションレス型 ★コネクション型 ★コネクションレス型 データの伝送に先立ってコネクション(論理的な通信路)を確立する
信頼性の高い通信が可能 通信の高速性が損なわれる プロトコルが複雑 ★コネクションレス型 データの伝送に先立ってコネクション(論理的な通信路)を確立をおこなわず、いきなりデータを伝送する 信頼性の高い通信ができない 高速な通信が可能 プロトコルが単純

12 IP(Internet Protocol)
★ネットワーク間のアドレッシング IPアドレス ★ネットワーク間のルーティング ★パケット分割 フラグメンテーション(データの断片化)

13 IPアドレス IPアドレス:TCP/IPネットワーク上で特定のコンピュータを識別するための番号 ・グローバルIPアドレス
・プライベートIPアドレス:LANを運用する組織が独自に各コンピュータに割り当てるIPアドレス。

14 IPネットワークアドレスとIPホストアドレス
クラス識別子 (クラスAを示す) クラスA 大規模ネットワーク用 7 bit 8 bit 8 bit 8 bit IPネットワークアドレス部 IPホストアドレス部 クラス識別子 (クラスBを示す) クラスB 1 中規模ネットワーク用 6 bit 8 bit 8 bit 8 bit IPネットワークアドレス部 IPホストアドレス部 クラス識別子 (クラスCを示す) クラスC 1 1 小規模ネットワーク用 5 bit 8 bit 8 bit 8 bit

15 IPアドレス(1) 012345678 15 16 23 24 31 クラスA ネットワークID ホストID IPアドレス: ~ ネットワークID: ~ ネットワークID ネットワークID ホストID部 ホストID部 012345678 15 16 23 24 31 クラスB クラスA  クラスAでは、ネットマスクの値は「 」となる。この結果IPアドレスは、1byteのネットワーク・アドレス部と3bytesのホスト・アドレス部に分けられることになる。クラスAでは、IPアドレスの最上位bitは常に「0」に固定なので、結局、ネットワーク・アドレスとしては、「0~127」までの全部で128個が利用でき、それぞれのネットワーク内には最大でそれぞれ約1600万台(0.0.0~ )のホストを収容できる。 クラスB  クラスBでは、ネットマスクの値は「 」となる。この結果IPアドレスは、2bytesのネットワーク・アドレス部と2bytesのホスト・アドレス部に分けられることになる。クラスBでは、IPアドレスの最上位の2bitは常に「1-0」に固定なので、結局、ネットワーク・アドレスとしては、「128.0~ 」までの全部で1万6384個が利用でき、それぞれのネットワーク内には最大でそれぞれ約6万5000台(0.0~ )のホストを収容することができる。 クラスC  クラスCでは、ネットマスクの値は「 」となる。この結果IPアドレスは、3bytesのネットワーク・アドレス部と1byteのホスト・アドレス部に分けられることになる。クラスAでは、IPアドレスの最上位の3bitは常に「1-1-0」に固定なので、結局、ネットワーク・アドレスとしては、「 ~ 」までの全部で約200万個が利用でき、それぞれのネットワーク内には最大でそれぞれ約250台(0~255)のホストを収容することができる。 ネットワークID ホストID IPアドレス: ~ ネットワークID: ~ 012345678 15 16 23 24 31 クラスC ネットワークID ホストID IPアドレス: ~ ネットワークID: ~

16 IPアドレス(2) 012345678 15 16 23 24 31 クラスA ネットワークID ホストID 先頭は必ず「0」、「 ~ 」はプライベートアドレスとして予約されている。 012345678 15 16 23 24 31 クラスB クラスA  クラスAでは、ネットマスクの値は「 」となる。この結果IPアドレスは、1byteのネットワーク・アドレス部と3bytesのホスト・アドレス部に分けられることになる。クラスAでは、IPアドレスの最上位bitは常に「0」に固定なので、結局、ネットワーク・アドレスとしては、「0~127」までの全部で128個が利用でき、それぞれのネットワーク内には最大でそれぞれ約1600万台(0.0.0~ )のホストを収容できる。 クラスB  クラスBでは、ネットマスクの値は「 」となる。この結果IPアドレスは、2bytesのネットワーク・アドレス部と2bytesのホスト・アドレス部に分けられることになる。クラスBでは、IPアドレスの最上位の2bitは常に「1-0」に固定なので、結局、ネットワーク・アドレスとしては、「128.0~ 」までの全部で1万6384個が利用でき、それぞれのネットワーク内には最大でそれぞれ約6万5000台(0.0~ )のホストを収容することができる。 クラスC  クラスCでは、ネットマスクの値は「 」となる。この結果IPアドレスは、3bytesのネットワーク・アドレス部と1byteのホスト・アドレス部に分けられることになる。クラスAでは、IPアドレスの最上位の3bitは常に「1-1-0」に固定なので、結局、ネットワーク・アドレスとしては、「 ~ 」までの全部で約200万個が利用でき、それぞれのネットワーク内には最大でそれぞれ約250台(0~255)のホストを収容することができる。 ネットワークID ホストID 先頭は必ず「10」、「 ~ 」はプライベートアドレスとして予約されている。 012345678 15 16 23 24 31 クラスC ネットワークID ホストID 先頭は必ず「110」、「 ~ 」はプライベートアドレスとして予約されている。

17 IPアドレスの容量  クラスが変わると、表現できるネットワークの数もその中に収容できる最大ホスト数も変わることになる。そのため、実際にネットワーク・アドレスやホスト・アドレスをどのように割り振るかは、使用するネットワークの規模に応じて決めることになる。一般的には、イーサネットの1セグメントを1つのネットワーク・アドレスに対応させるのが普通なので(それぞれのセグメントをルータで接続して、全体的なネットワークを構築する)、それぞれのイーサネット・セグメントに何台のホストを接続するかによって、どのクラスを使用するかを選択するとよい。  例えば、1つのイーサネット・セグメントに接続するホストの数が最大でも200台程度ならば、クラスCのIPアドレスを使ってネットワークを構築すればよいだろう。つまり、各ネットワーク(=イーサネット・セグメント)には ~ のいずれかを割り当て、それぞれのネットワーク内のホストには、1byteのホスト・アドレスを割り当てればよい。  1セグメントに接続するホストの数がもっと多い場合や、もしくは、管理の都合などでもっと大まかにホスト・アドレスを割り当てるのならば(例:ネットワーク機器のアドレスは10~99、サーバ系は100~199、クライアント系200~などというように、識別しやすいように割り当てたいのならば)、クラスBを使うという方法もあるだろう。

18 IPv4 IPv6

19 サブネット 012345678 15 16 23 24 31 クラスB ネットワークID ホストID 「サブネット・アドレス」は、ホスト・アドレスの上位何bitかをサブネットの番号として扱う(ネットワーク・アドレスに隣接するように分ける)。 デフォルトのネットワークをさらに細かく分割して、より小さな「サブネット」として取り扱うことができる。物理的にネットワークの分割が可能。  ユーザー自身が自由にネットワーク・アドレスとホスト・アドレスを決定できるようにするために、TCP/IPでは「サブネット分割」という手段が用意されている。これは、クラスごとのデフォルトのネットワークをさらに細かく分割して、より小さな「サブネット」として取り扱うという手法である。いままではIPアドレスを「ネットワーク・アドレス」と「ホスト・アドレス」の2つに分けていたが、サブネット対応のTCP/IPネットワークでは、新たに「サブネット・アドレス」部を設けている。つまりIPアドレスを「ネットワーク・アドレス」と「サブネット・アドレス」「ホスト・アドレス」の3つに分けるのである 。  新たに用意される「サブネット・アドレス」は、もともとは「ホスト・アドレス」として使われていた部分である。ホスト・アドレスの上位何bitかをサブネットの番号として扱う(サブネット・アドレスは、ネットワーク・アドレスに隣接するように分ける)。元のネットワークをいくつのサブネットに分けるかはネットワークの構成に応じて自由に決めてよい。バイト単位で分けておくと、IPアドレスを10進数のドット区切り形式で表現した場合に分かりやすいというメリットがあるが、実際にはビット単位で任意に決めることができる。 012345678 15 16 23 24 31 クラスB ネットワークID サブネット ホストID インターネット部分 物理ネットワーク ホスト サブネットマスク : 255.255.255.0 (クラスBの基本) IPアドレス : 133.78.113.30

20 ネットワークのルーティング ルータを介して異なるネットワーク同士を接続できる。

21 ルータによって相互接続されたTCP/IPネットワーク

22 IPルーティング WAN ホストα ネットワーク n6 ネットワーク n2 ネットワーク n1 ネットワーク n3 ネットワーク n5
ルータD ネットワーク n1 ルータA ルータCのテーブル ルータAのテーブル ネットワーク n3 送信先 次のルータ 送信先 次のルータ WAN ルータB n ー n - n B n B n B n D n ー n ー n ー ルータC ルータBのテーブル ネットワーク n5 送信先 次のルータ n ー n ー n C n C n D ネットワーク n4 ホストβ

23 フラグメンテーション パケットで転送するためにデータを断片化すること。 オフセット(断片化されたフラグメントがどこに位置していたかを示す)
IPヘッダ

24 IPヘッダ 0 31 バージョ ン ヘッダ長 サービス・タイプ パケット長 識別子 フラグ フラグメント・オフセット 生存時間 プロトコル
ヘッダ・チェックサム ヘッダ フィールド 送信元IPアドレス 送信先IPアドレス オプション データ フィールド データ

25 IPヘッダ(用語) バージョン:使用しているIP通信プロトコルのバージョン番号。 ヘッダ長:IPヘッダの長(バイト数)を表す情報を指定。
パケット長:パケット全体の長さ(バイト数)を表す情報を指定。 識別子:上位層の通信プロトコルが分割されたパケットから元のデータを組み立てる際に参考にする情報。 フラグ:パケットが途中なのか最後なのかを示す情報。 フラグメント・オフセット:データを分割した何番目のパケットなのかを示す情報。 生存時間:パケットがネットワーク内に存在できる時間(秒数)を指定。 プロトコル:IPの上位の通信プロトコルが何かを示す情報。 ヘッダ・チェックサム:パケットの誤りを検出する情報。 送信元IPアドレス:パケットを送信するコンピュータアドレス。 宛先IPアドレス:パケットの届け先のコンピュータアドレス。

26 TCP(Transmission Control Protocol)
★コネクションの設定 ①送信元ホストのIPアドレス ②送信元ソフトウェアのTCPポート番号 ③送信先ホストのIPアドレス ④送信先ソフトウェアのTCPポート番号 ★誤り再送制御による高信頼性通信 シーケンス番号 チェックサム ★ウィンドウ制御による効率的な通信 ★フロー制御

27 誤り制御 誤り検出 誤り再送 データ CRC CRC:Cyclic Redundancy Check Code (3)タイムアウト
(2)誤り検出 (3)タイムアウト (1)正常 1 1 1 × × OK NG 2 (再送) タイムアウト (再送)

28 誤り検出/訂正 誤り検出/訂正コードの生成、及び誤り検出/訂正  データ  データ 誤り検出/訂正コードの生成 インターネット網 誤り検出/訂正

29 誤り検出コード ★パリティチェックコード 誤り検出コードで、奇数個または偶数個の誤りビットを検出することができる。
 誤り検出コードで、奇数個または偶数個の誤りビットを検出することができる。 パリティビット付加 111011001 偶数パリティ 011011001 奇数パリティ “1”の個数が奇数の場合 は誤りと判定 “1”の個数が偶数の場合 は誤りと判定 ★サイクリックコード(CRC)  ランダムに発生する誤り(burst error)に対して有効な誤り検出コード。

30 ウィンドウ制御 TCPヘッダのウィンドウ部分に指定したウィンドウサイズでパケットの送信量を制御 データ1 データ2
送信側 受信側 データ1 データ2 送信側の端末は受信側の到着確認を待たずに連続して4つのパケットを送信する。 ウィンドウ サイズ=4 データ3 データ4 OK データ5

31 フロー制御 送信/受信のコンピュータ間で通信を行い、パケット量を制御 送信側 受信側 データ(200バイト) データ(200バイト)
到着確認(400バイトまで可能) データ(200バイト) データ(200バイト) 到着確認(送信待て) 処理をしながら一定時間が経過 通知が来るまで送信を待つ 600バイトまで可能 データ(200バイト)

32 TCPセグメント・フォーマット 0 31 送信元ポート番号 送信先ポート番号 シーケンス番号 確認応答番号 ヘッダ フィールド データ・
コード・ ウィンドウ オフセット ビット チェックサム 緊急ポインタ オプション データ フィールド データ

33 TCPセグメント・フォーマット(用語) 送信元ポート番号:通信サービスを示す番号。 送信先ポート番号:通信サービスを示す番号。
シーケンス番号:何番目のパケットかを示す番号。 確認応答番号:パケットの受信確認に使用する番号 データ・オフセット:TCPのヘッダの長さを示す。 コード・ビット:通信の開始を要求する符号や通信の終了を通知する符号などを指定。 ウィンドウ:連続して送受信できるパケットの容量(バイト数)を指定。 チェックサム:パケットの誤りを検出するために使用。 緊急ポインタ:緊急を要するデータの格納場所を示す情報を指定。 オプション:通常は使用しない。

34 UDP: User Datagram Protocol
UDPプロトコル UDP: User Datagram Protocol ・トランスポート層のコネクションレス型プロトコル ・アプリケーションからIPの機能をほぼそのまま利用したものであり、プロトコルは単純 ・信頼性の保証は低いが、効率的なデータ転送が可能 ・複数の相手へデータ送信が可能 ・用途  リアルタイムな音声(インターネット電話)、映像ストリーミング配信、ブロードキャスト、マルチキャスト  TCP/IPプロトコルには、TCPと並んでもうひとつ重要なプロトコルとして、UDP(User Datagram Protocol)というプロトコルがある。UDPは、アプリケーションからIPの機能をほぼそのまま利用するために用意されたプロトコルであり、IPにプロセスを区別するためのエンド ポイントを導入しただけの比較的単純なプロトコルである。そのため、UDPのデータグラムは、IPと同様に、送信の途中で紛失したり、到着が遅れたり、順番が入れ替わって伝送されたりすることがある。UDPを利用するアプリケーションは必要に応じて、これらの事態に対処する必要がある。つまり、データグラムの紛失の検出や通知、再送処理、順番の管理などの処理を、アプリケーション自身で行わなければならないのである(逆にいうと、このような「信頼性」が不要ならば、対処しなくてもよい)。TCPでは、このような処理をTCP自身が引き受けてくれるが、データの到着が遅れるとそのデータの到着を待ったり、データの確認応答の送信や再送処理を行ったりするため、UDPと比べるとオーバーヘッドがある。リアルタイムに音声や映像を送るようなアプリケーションでは、一部のデータが欠落しても、一瞬音声や画像が途切れたり、多少劣化したりするだけなので、大きな影響はない。それよりもリアルタイムにデータが届くということのほうが重要であり(欠落したデータが遅れて届いても、音声や画像を後戻りして再生するわけにはいかない)、このような用途ではTCPよりもUDPが適している。  また、IPでは複数の相手にデータを送ることができるのだが(このような通信形態を「ブロードキャスト(broadcast)」とか「マルチキャスト(multicast)」と呼ぶ)、TCPはコネクションを利用した通信なので一度の送信で複数の相手にデータを送ることができない(「ユニキャスト(unicast)」という)。これに対してUDPでは、IPの機能をそのまま利用しているので、複数の相手にデータを送ることができるという利点もある。 ブロードキャスト:ネットワークにおいて、そのネットワーク上に存在するすべてのノードを対象としてパケットを送信する形態のこと。一斉同報通信ともいう。マルチキャストと違って、ネットワーク上のすべてのノードが送信対象となる。このとき使われる送信先アドレスをブロードキャストアドレスという。 マルチキャスト:ネットワークにおいて、あらかじめ決められた複数のノードに対して同時に送信すること。たとえばビデオオンデマンドや、音声データの配信などの用途で、複数のノードに対して一斉に放送する、というような用途で使われる。このとき使われる送信先アドレスをマルチキャストアドレスという。  機能的にはブロードキャストと似ているが、ブロードキャストでは、あるネットワーク上のすべてのノードに対して送信するのに対し、マルチキャストでは、マルチキャスト用の特別なアドレス(マルチキャストアドレス)を使うことにより、マルチキャスト受信を望んでいる(受信準備のできている)ホストにのみ送信することになる。ブロードキャストでは、すべてのノードが受け取る必要がある。  マルチキャストの反対語はユニキャスト(unicast)といい、ある特定の1ノードのみを対象とした通信を指す。

35 UDPセグメント・フォーマット TCPプロトコルのようにヘッダにシーケンス番号、確認応答などの情報を含まない。 送信元ポート番号 送信 先
フィールド ヘッダ長 チェックサム データ データ フィールド

36 課題 1.IPアドレスの役割について説明せよ。 2.TCP(Transmission Control Protocol)について  説明せよ。


Download ppt "ネットワークと コミュニケーション技法 第7回 - インターネット(1) -."

Similar presentations


Ads by Google