|
|
|
|
3-2、TCP/IPのコア プロトコル ネットワーク オペレーティング システムにインストールされる「TCP/IPプロトコル」コンポーネントは、TCP/IPのコア プロトコルと呼ばれる、相互に結び付けられた一連のプロトコルである 1) ARP IP パケットを、EthernetやToken Ringのようなネットワークに送るときには、フォワードしようとしているIPアドレスに対応するMAC(Media Access Control)アドレスを解決しておかなければならない。ARPは既知のIPアドレスから、それに対応するMACアドレスを求める(解決する)ために、MACレベルのブロードキャストを使う。
○ ARPキャッシュARP 要求フレームのブロードキャストを抑えるために、ほとんどのTCP/IPプロトコル スタックではARPキャッシュ機能を組み込んでいる。ARPキャッシュは最近解決されたIPアドレスとそれに対応するMACアドレスのテーブルである。ARPキャッシュはARP要求フレームを送る前に、最初にチェックされる。エントリは、 ARP応答に基づいた動的なエントリだけでなく、静的なエントリも持つことができる。静的なARPエントリは永続的に記録され、Windows NTのARPユーティリティのようなTCP/IPユーティリティを使って、手動で追加することができる。静的なARPキャッシュ エントリは、ルーターやサーバーのような、ほぼ固定的に使われるローカルなIPアドレスに対するARP要求を防ぐために使うことができる。ただし静的なARPキャッシュ エントリには、ネットワーク インターフェイスが変わったときに、手動で変更しなくてはならないという問題がある。動的な ARPキャッシュ エントリは指定された一定の時間が経過すると、そのエントリが自動的に削除されるという、タイムアウト値を持っている。Windows NTのTCP/IPで使われる動的なARPキャッシュ エントリでは削除されるまでの時間は10分となっている。以下のレジストリで規定できる。HKEY_LOCAL_MACHINE\sytem\current control set\services\TCP/IP\parameters\Reg_Dword ARPcashlife (600) :キャッシュのタイム アウト値ARP cash size (62):保持できるエントリの最大数 ARP コマンド:ARPを使用してのIPアドレスのMACアドレスへの解決を表示、修正するARP -s [IP アドレス] [MACアドレス]:エントリの追加ARP -d [IPアドレス]:エントリの削除 ARP -a:エントリの表示 例)C:\WINDOWS>arp /a Interface: 38.160.107.131 2) ICMP ICMP は、送信不可能なパケットに対するトラブルシューティングのための機能や、エラー報告のために使われる。たとえば、IPが宛先ホストにパケットを送ることができなければ、ICMPは送信元に対して「宛先到達不能(Destination Unreachable)」メッセージを送る。ICMP メッセージ機能
ICMP の宛先到達不能(Destination Unreachable)メッセージには、到達不能となった原因を表すためのコードが含まれている。3) IGMP (Internet Group Management Protocol)IGMP は、IPマルチキャスト グループにおけるホストのメンバーシップを管理するためのプロトコルである。「IPマルチキャスト グループ」(「ホスト グループ」とも呼ばれる)とは、特定のマルチキャストIPアドレスに向けられているIPトラフィックをリスン(listen、待ち受け)するホストの集合を表す。マルチキャストIPトラフィックはある1つのMACアドレスに向けて送信されるが、複数のIPホストによって受信、処理される。各ホストはある特定のIPマルチキャスト アドレスをリスンしていて、そのIPアドレス宛のパケットをすべて受信する。4) IP(Internet Protocol) IP は、主にホスト間でのパケットのアドレッシングとルーティングを行うための、コネクションレスで、信頼性のないデータグラム プロトコルである。「コネクションレス」とは、データを交換する前にセッションを確立しないということを表し、「信頼性がない」とは、パケットか確実に相手に届くことが保証されていないことを表している。IPは常に「ベスト エフォート(最善の努力)」でパケットを配信しようとする。IPパケットは状況によっては、失われたり、到着の順序が入れ替わったり、二重に送られたり、遅れたりするかもしれない。このようなエラーが起こっても、IPでは回復を試みない。配信されたパケットの確認(確認応答)と失われたパケットの回復は、より上位の層のプロトコル、たとえばTCPなどの責任である。5) TCP(Transmission Control Protocol) TCP は信頼性のあるコネクション指向の配信サービスである。データはセグメントという単位で送信される。「コネクション指向」とは、データを交換する前に、ホストはコネクションを確立しておかなければならない、ということを意味する。信頼性は、送信するセグメントに対してそれぞれシーケンス番号を割り振ることによって実現されている。相手側のホストによってデータが正しく受け取られたことを確認するために、確認応答が行われる。受信側のホストは、送信されたそれぞれのセグメントに対して、一定時間内に、受け取ったバイトに対するACK (Acknowledgment、確認)を返さなくてはならない。もしACKが受信できなければ、データは再送される。TCP は「バイト ストリーム通信」を行います。バイト ストリーム通信では、TCPセグメントの中に置かれたデータは単なるバイトの列(並び)として扱われ、レコードやフィールドといった境界は持っていない。○TCPポート TCP のポートは、TCPセグメントを配信する先を特定するために使われる。1024以下のポート番号は「よく知られているポート(Well-Known Port)」であり、IANA(Internet Assigned Numbers Authority) によって割り当てられている。よく知られている TCPポート20 FTP (データ チャネル)21 FTP(制御チャネル) 23 Telnet 80 WWWにおけるHTTP(HyperText Transfer Protocol) 139 NetBIOSセッション サービス 6) UDP(User Datagram Protocol) UDPは信頼性のないベスト エフォート型、コネクションレスのデータグラムの送信サービスを提供する。つまり、データグラムが確実に届くという保証はないし、配信されるパケットが、送信と同じ順序で受信できるという保証もない。UDPではルートの途中でデータが失われても、再送はされない。 UDPはデータの確認応答を必要とせず、一般的には、一度に少量のデータしか送らないようなアプリケーションで使われる。 ○UDPポート UDP を使うためには、アプリケーションは宛先アプリケーションのIPアドレスとUDPポート番号を準備しなければならない。ポートは送信メッセージに対して送る場所を提供し、多重メッセージ キューとして機能する。多重メッセージ キューとは、一度に多数のメッセージを受け取れることを意味する。それぞれのポートはユニークな数によって識別される。よく知られている UDPポート53 DNS (Domain Name System)名前問い合わせ69 TFTP(Trivial File Transfer Protocol) 137 NetBIOSネーム サービス 138 NetBIOSデータグラム サービス 161 SNMP(Simple Network Management Protocol)
| ||||||||||||||||||
|
|