[コンピュータネットワーク] TCP / IP

まず、基本的な概念

TCP / IP(伝送制御プロトコル/インターネット・プロトコル、 プロトコル・スイートは、複数の異なるネットワーク間での情報の伝送を可能にする伝送制御プロトコル/インターネットプロトコル)を意味します。TCP / IPプロトコルがないだけでいいTCP  とIPの2つのプロトコルが、手段FTPSMTP、TCP、UDPだけTCPとIPプロトコルでTCP / IPプロトコルとして、プロトコルのクラスタ構成、IPおよびその他のプロトコルを最も代表的には、それはTCP / IPプロトコルと呼ばれています。

第二に、成分

ある程度TCP / IPプロトコルは、参照がに行われ たOSI アーキテクチャ。下から上にOSIモデルの7つの層の合計は、物理層、データリンク層、ネットワーク層、トランスポート層、セッション層、プレゼンテーション層およびアプリケーション層です。しかし、これは4つのレベルに簡略化されているTCP / IPプロトコル、内ので、明らかに少し複雑です。
(1)アプリケーション層、プレゼンテーション層、セッション層違いによって提供される3つのサービスレベルが大きくないようにあるレベルのアプリケーション層に結合されるTCP / IPプロトコル。
(2)これらの2つの別々のレベルであるように、ネットワーク層とトランスポート層のネットワークプロトコルに位置するようにTCP / IPプロトコル、非常に重要であるからです。
(3)ので、データリンク層と物理層の内容が非常に似ているので、ネットワークインタフェース層にマージされるTCP / IPプロトコル。
TCP 4つのアーキテクチャ/ IPプロトコル、OSI 7層構造だけでは実用的なアプリケーションでは、単純な、それはこれです、TCP / IPプロトコル高効率化と低コストの多くと比較しています。

図1に示すように、アプリケーション層

アプリケーション層は、オープンシステムの最高レベルは、アプリケーション・プロセスに直接サービスを提供することにあります。その役割は、複数のシステム・アプリケーション・プロセス、ビジネス・サービスのシリーズを完了するために必要な処理をしながら、相互に通信することです。

トランスポート層又はトランスポート層にデータを送信するために異なるアプリケーションの要件及び方法からのデータを受信するために使用されます。主なプロトコルは、HTTPDNSFTPSMTPPOPTelnetの

1.1 DNS

DNS(ドメインネームシステムドメインネームシステム)機能は、対応するIPアドレスにドメイン名にあります。

これは、ドメイン名とIPアドレスの分散データベースが相互にマッピングされるように、それはそれが簡単にインターネットにアクセスすることができます動作します。DNSは、TCPおよびUDPポート53を使用しています。

現在、すべてのレベルのドメイン名の長さの制限のために63文字以上253の文字することはできませんドメイン名の長さの合計です。

2つの方法でDNSクエリー:再帰と反復。DNSサーバーを使用するようにDNSクライアント設定、一般的に、あなたが最終的な結果に戻るまでのみDNSクエリ要求の処理クライアント担当して再帰的なサーバーです。DNSサーバ間の一般的な反復クエリ。

www.baidu.com例を確認するには:
直接結果を返すが記録されている場合、クライアントは、DNSサーバーに「クエリwww.baidu.comを」クエリーメッセージを送信し、DNSサーバはまず、独自のキャッシュをチェックします。
レコードが、老化または存在しない場合:

  1. DNSサーバーは、ルートドメインネームサーバメッセージ「クエリwww.baidu.com」にクエリを送信し、ルートサーバは.COMトップレベルドメインネームサーバのアドレスを返します。
  2. DNSサーバは、第二レベルドメイン.baidu.comを取得し、DNSサーバーのアドレスから「クエリwww.baidu.comを」.comドメインネームサーバクエリを送信します。
  3. DNSサーバは、WWWホストを記録し、自身のキャッシュに保存され、クライアントに返され、「クエリwww.baidu.com」のクエリに、ドメインネームサーバ.baidu.comメッセージを送信します。

1.2 FTP

 FTP(ファイル転送プロトコルファイル転送プロトコル)は、OSI参照モデルの第七層で働いて、ネットワーク経由でファイル転送するための標準プロトコルである、レイヤ4 TCPのモデル、すなわち、アプリケーション層、TCPトランスポート、クライアントとサーバーを使用してクライアントとサーバー間の接続は、信頼性の高い接続指向であることを保証するために、「3ウェイハンドシェイク」プロセスを経るための接続を確立する前に、データ伝送のための信頼性の保証を提供します。FTPファイルは、ユーザが各別のホストと通信する(例えば、付加および欠失等検索ファイル転送を変更する)ように動作することを可能にします。

これは、2つのTCP接続の2つのホストのデータ転送用とFTPのコマンドおよびデータは別々に大幅に改善思っ送信される制御情報(コマンドおよび応答)を送信するための制御接続との間の通信に使用されます効率、およびその他のクライアント・サーバ・アプリケーションは、一般的にのみTCP接続。

ユーザーインターフェースは、クライアント・プロセスと顧客データ伝送制御プロセス:顧客は3人のメンバーです。サーバー制御プロセスとサーバのデータ転送処理:サーバーは、2つのコンポーネントがあります。全体インタラクティブFTPセッションでは、制御接続は、それぞれが第一のファイル転送を開いた後に常に接続された状態で、データ接続が閉じられています。

図2に示すように、トランスポート層

トランスポート層は、ホストに2つのプロセス間の通信にサービスを提供する責任があります。ホストは、このようにトランスポート層を有する、複数のプロセスを実行するための多重化および逆多重化の機能を有しています。フロー制御、セグメンテーション/リアセンブリ及びエラー制御を介して所与のリンク上のトランスポート層データ伝送の信頼性を確保します。いくつかのトランスポート層プロトコルは、リンク指向の、トランスポート層は、セグメントを追跡し、故障のそれらのセグメントを再送信することができるということです。ネットワーク層を確立し、終了するネットワーク接続をし、IPアドレスやその他の機能を見つけることができ、主要なプロトコルTCP、UDPがあります。

2.1TCP

UDPプロトコルは、ポート、一意のポート番号を指定するために、各ホスト上で同じアプリケーションを定義し、所定のデータパケット伝送ネットワークポート情報は、パケットがホストに到着すると、ポート番号に応じて求めることができ、加えなければなりません対応するアプリケーション。UDPプロトコルは、比較的単純で実装が簡単ですが、それは、TCPプロトコルが生まれた、一度発行され、パケットをメカニズムを確認しなかった、それを受信したかどうかを知ることができないので、信頼性の低い、この問題を解決するために、ネットワークの信頼性を向上させます。

2.2 UDP

TCP伝送制御プロトコル、接続指向、信頼性の高いバイトストリームプロトコルベースの通信。簡単に言えば、UDPプロトコルのTCP確認応答メカニズムを持つことで、各パケットが失われた場合、確認を求められたデータパケットを送信し、それが確認を受けることができない、送信者は、パケットを再送しなければなりません。公式の送信前に、つまり、UDPベースで3つの対話を確認するためのメカニズムを確立し、データを受信するために、TCPプロトコルを伝送の信頼性を確保するためには、信頼性の高い接続とお互いを作成する必要があります。TCPおよびUDPパケットは、唯一の違いは、TCPパケットの長さが限定されるものではないし、理論的には無限大であることができるが、ネットワークの効率を確保するために、典型的には、TCPパケットの長さではない、ヘッダと2つの部分から構成データ部分から構成されていますIPパケットの長さにわたって、単一のTCPパケットを確実にするためには、再分割する必要はありません。

 図3に示すように、ネットワーク層

ネットワーク層パケットのルーティングおよび転送。通信二つのホストは、一般的に直接接続されていないが、接続された中間ノード(ルータ)の複数。タスクネットワーク層は、2つのホスト間の通信経路を決定するために、これらの中間ノードを選択することです。一方、ネットワーク層の上位プロトコルは、トランスポート層とネットワークアプリケーションの意見、両面が直接通信で接続されるように、ネットワークトポロジの接続の詳細を隠蔽します。主なプロトコルは、IPARPRARPICMP

 3.1 IP

 別のネットワークルールへの1つのネットワークからのデータパケットの送信のためのネットワーク間のインターネット通信を担当し、提供するIP(インターネット・プロトコルインターネット・プロトコル)は、続くことができます。IPプロトコルは、また、方法及び送信データグラムのルーティングを定義し、基本ユニットとデータ伝送フォーマットを定義します。さらに、TCP / IPネットワーク、ホスト間の通信に必要なアドレスは、IPプロトコルを介して達成されます。

 3.2 ARP

ARPは、(アドレス解決プロトコルARP)、IPアドレスに基づいてTCP / IPプロトコルの物理アドレスを取得します。IPアドレスおよび物理アドレスを受信した後にリターン・メッセージは、マシンに格納され、送信情報要求は、ローカルエリアネットワーク上のすべてのホストにブロードキャスト、及びターゲットの物理アドレスを決定するために、リターン・メッセージを受信して​​、ターゲットホストのIPアドレスを含むARP ARPキャッシュと次の要求は、リソースを節約する際に直接ARPキャッシュを照会するために、一定の時間を維持します。

どのように動作します:

ホストのIPアドレスは、MACが0A-11-22-33-44-01に対処し、192.168.1.1です。
ホストBのIPアドレスが192.168.1.2では、MACは0A-11-22-33-44-02取り組みます。
AがBをホストするホストと通信するとき、ARPは、ホストB(192.168.1.2)のIPアドレスであってもよいホストBのMACアドレス、次のワークフローを解決:
  1. ホストA上のコンテンツのルーティングテーブルは、IP転送先IPアドレスは、ホストBへのアクセスを決定するために使用される192.168.1.2です。独自のローカルARPキャッシュにホストBのMACアドレスの一致のために、その後のチェックをホスト。
  2. ホストへのマッピングは、ARPキャッシュ内に見つからない場合は、ローカルネットワーク上のすべてのホストにARP要求フレームをブロードキャストするために192.168.1.2のハードウェアアドレスを尋ねます。元ホストAのIPアドレスとMACアドレスがARP要求に含まれています。ローカルネットワーク上の各ホストはIPアドレスは、独自に一致するかどうかをARP要求とチェックを受けます。ホストのIPアドレス発見要求は、自身のIPアドレスと一致しない場合は、ARP要求を破棄し、
  3. Bは、自身のIPアドレスが一致してARPリクエスト、ホストAのIPアドレスとMACアドレスでIPアドレスがローカルARPキャッシュにマッピングされたと判断したホスト。
  4. ホストBは、ホストAに戻って直接送信されるARP応答メッセージのMACアドレスを含むことになります。
  5. ホストAは、ARP応答メッセージをホストから送られたB受信すると、MACアドレスとIPホストBとARPキャッシュのマッピングを更新します このローカルキャッシュは、生存、期間終了後の生存、もう一度プロセスを繰り返しています。ホストBのMACアドレスが決定されると、ホストAは、IPホストBに通信を送信することができ

 3.3 ICMP

IPホスト、ルータ間で制御メッセージを転送するためのICMP(インターネット制御メッセージプロトコルインターネット制御メッセージプロトコル)。失敗した操作を介してネットワーク制御メッセージを指し、ホストは、そのような利用可能なルートネットワーク自体かどうかなどのメッセージ到達可能です。これらの制御メッセージは、ユーザデータを送信しないが、しかし、ユーザデータの転送のために重要な役割を果たしています。

それは、より高いレベルのプロトコルであるかのようにICMPはIPの基本的なサポートを使用して、しかし、ICMPは実際にIPの不可欠な部分であり、すべてのIPモジュールによって実施されなければなりません。

技術的な観点から、ICMPは、その目的は、私たちはネットワーク接続状態を検出することができるようにすることですが、また、接続の正確さを保証するために、「エラー検出および報酬システム」です。ICMPを介してパケットとして処理においてデータパケットを処理偶発ルータは、ソースにイベントを報告することができます。
その機能は、次のとおり、データ伝送路(ICMPリダイレクト)、データフロー制御、ICMP通信において、主に異なるタイプを通ってコードを可能にリダイレクト構築およびルーティング情報を維持し、リモートホストの存在を検出します異なる接続を識別するために、機械の状態。
タイプ コード 説明 質問 エラー
0 0 エコーReply--エコー応答(ping応答) バツ  
3 0 ネットワークUnreachable--ネットワークに到達不能   バツ
3 1 Unreachable--ホストに到達ホスト   バツ
3 2 プロトコルUnreachable--プロトコルに到達不能   バツ
3 3 ポートUnreachable--ポート到達不能   バツ
3 4 フラグメンテーションが必要なく、不要FRAG。ビットset--フラグメンテーションが、断片化していないビットがセット   バツ
3 5 failed--ソースルーティングの失敗をソースルーティング   バツ
3 6 未知の宛先ネットワークunknown--宛先ネットワーク   バツ
3 7 未知の宛先ホストunknown--宛先ホスト   バツ
3 8 孤立元ホスト(廃止) - 孤立元ホスト(なし廃止)   バツ
3 9 宛先ネットワークが管理上禁止することを余儀なくされているネットワークの目的をprohibited--   バツ
3 10 宛先ホストが管理上禁止することを余儀なくされた宛先ホストをprohibited--   バツ
3 11 サービスTOSのタイプにTOS--ための到達不能のネットワーク、ネットワークに到達不能   バツ
3 12 サービスTOSのタイプにTOS--ためのホストに到達、到達不能ホスト   バツ
3 13 通信フィルタ、通信が強制的に禁止されているので、管理上filtering--で禁止されています   バツ
3 14 越権の優先violation--ホストホスト   バツ
3 15 発効を停止するeffect--優先順位で優先順位カットオフ   バツ
4 0 ソース消光源がオフになっている(エレメンタリストリーム制御)    
5 0 ネットワークリダイレクタのnetwork--のリダイレクト    
5 1 host--ホストのリダイレクトのリダイレクト    
5 2 TOSおよびサービスとネットワークリダイレクタのnetwork--タイプにリダイレクト    
5 3 TOSおよびサービスやホストのリダイレクトのhost--タイプにリダイレクト    
8 0 エコーrequest--エコー要求(ping要求) バツ  
9 0 ルータadvertisement--ルータ広告    
10 0 ルートsolicitation--ルータ要求    
11 0 TTL時の生存率は0であるtransit--送信時に0に等しいです。   バツ
11 1 TTLはデータグラムアセンブリ0の寿命の間reassembly--中0に等しいです   バツ
12 0 IPヘッダ不良(キャッチオールエラー) - (エラーの種々含む)バートIPヘッダ   バツ
12 1 必要なオプションが欠落している必要なオプションをmissing--   バツ
13 0 タイムスタンプ要求(廃止) - タイムスタンプ要求(時代遅れではありません) バツ  
14   タイムスタンプ応答(廃止) - タイムスタンプ応答(無効なし) バツ  
15 0 情報要求(廃止) - 情報の要求(無効ではありません) バツ  
16 0 情報応答(廃止) - 情報の返信(無効なし) バツ  
17 0 Address mask request——地址掩码请求 x  
18 0 Address mask reply——地址掩码应答    

 4、网络接口层

网络接口层是数据包从一个设备的网络层传输到另外一个设备的网络层的方法。这个过程能够在网卡的软件驱动程序中控制,也可以在韧体或者专用芯片中控制。这将完成如添加报头准备发送、通过物理媒介实际发送这样一些数据链路功能。另一端,链路层将完成数据帧接收、去除报头并且将接收到的包传到网络层。

おすすめ

転載: www.cnblogs.com/6970-9192/p/11545547.html