OSIプロトコルとTCP / IPプロトコル

・ネットワーク通信

    
        ネットワークは、リソースの共有とコミュニケーションの目的を達成するように、データ・リンクを形成するために一緒にホストワークステーションまたは単離されたそれぞれの物理リンクに接続されています。情報交換やコミュニケーションは、いくつかのメディアを通過する人々の間で行われます。通信ネットワークは、人々の間の通信のために、ネットワークを介して接続される各デバイスを単離する、コンピュータ、コンピュータと情報の交換を介してコンピュータを持つ人々。ネットワーク通信は、最も重要なネットワーク通信プロトコルです。マイクロソフトのNETBEUIは、Novell IPX / SPXおよびTCP / IPプロトコル:今日、多くのネットワークプロトコルがあり、LANは3つの最も一般的に使用されるネットワークプロトコルがあります。必要に応じて適切なネットワークプロトコルを選択するようにする必要があります。

1.OSI 7協定

        OSI(開放型システム間相互接続、オープンシステム相互接続)7層ネットワークモデルは、ISO(国際標準化機構、ISO)の参照モデルは、で作られている、ネットワーク通信を論理的に定義され、そして一般的に定義されるように理解することができますネットワーク通信仕様。種々のカプセル化処理を経て、図のカプセル化及びデカプセル化プロセスの後我々の方法と、実際にネットワーク内のデータ伝送、送信者、ビットストリームにデータを変換し、ビットストリーム伝送ハードウェア信号伝送媒体、受信機脱カプセル化ビットストリーム。ここに画像を挿入説明

(1)物理層

物理的接続の底部、および物理デバイスは、ネットワーク通信がどのように、所定の機械的、電気的、機能的および手続き的特性。例えば:のケーブルとコネクタを使用する方法
、信号電圧等を送信するための型。通信ネットワークの間の物理的な媒体(ケーブル、ケーブルなど)を必要と、そのノート、物理層の一部ではないが、通りであった
物理層は実際に予め決められている、これらの所定の物理メディアデバイスは、いつネットワークに接続されました仕様、パラメータや仕事の様々な。しかし同時に、ツイストペアケーブルおよび他の物理的
媒体は、物理層を実現することです。

(2)データリンク層

物理アドレス指定の物理回線上のどのアドレス、どのデータ(フレーム枠)信頼できる配信、フロー制御。データリンク層プロトコルはSLIP協会いる
プロトコル、CSLIPプロトコル、PPPプロトコル。スイッチは、フレームに含まれる情報に基づいて、スイッチがデータで働いているように、正しい受信者にデータを復号化されたフレームを送信する
リンク層。

(3)ネットワーク層

ネットワーク・ノードは、送信者から受信者に送信されたデータ(パケット)によってどのようなネットワークパス、どのようなものです。ネットワーク層では、ノードAから決定されたデータを送信し
、ノードB、ノードを介してネットワークへのパス。ネットワーク層は、そのための通信は、WANネットワーキングシステム内で確立することができるされているLAN通信システムを確立し、より重要であるかもしれない
、それは、(また、ルーティング可能なプロトコルとも呼ばれる)ルーティングプロトコルを介して通信ネットワークをルーティングするための作業を、自身のルーティングアドレス構造を有しています。

(4)トランスポート層

全体のデータ転送およびデータ管理の責任は、端から端までのデータを交換するためのメカニズムを提供します。トランスポート層データ(セグメント)セグメント化と再アセンブリ、およびフロー制御と
受信側適切な伝送レートの受信データの容量を決定します。イーサネットは1500バイトより大きなパケットを処理できないようなデータは、トランスポート層のデータセグメントに分割され、
そして小さなデータフラグメントSEQ ID NO。組換えSEQ ID NOに従い、受信者、トランスポート層データ。トランスポート層プロトコルTCPプロトコル、UDPプロトコルがあります。

(5)セッション層

ネットワーク内の2つのノード間の通信を確立、維持及び終了します。

(6)プレゼンテーション層

それは他のに理解できるように、アプリケーションとネットワークとの間でデータをフォーマットします。すなわち、送信者は、抽象構文層のネットワークへのアプリケーションデータ変換示す
ネットワーク文法はその逆OSIネットワーク伝送、受信機と副を送信するように適合されています。また、プレゼンテーション層は、データを暗号化および復号化します。

(7)アプリケーション層

アプリケーションのためのネットワークサービスを提供して最上位のOSI層。このような電子メール、ファイル転送機能のためのプロトコルサポートの提供など。HTTPアプリケーション層のプロトコルには、FTP協会持っている
プロトコル、SMTPプロトコルを。

2.TCP / IPプロトコル

プロトコル・スイートは、複数の異なるネットワーク間での情報の伝送を可能にするTCP / IP(伝送制御プロトコル/インターネットプロトコル、伝送制御プロトコル/インターネットプロトコル)を指します。TCP / IPプロトコルだけでなく、2つのTCP及びIPプロトコルを指すのではなく、単にTCP及びIPプロトコルにTCP / IPプロトコルとして、FTP、SMTP、TCP、UDP、IPおよび他のプロトコルからなるプロトコルスタックを指し最も代表的には、それはTCP / IPプロトコルと呼ばれています。

ここに画像を挿入説明
これは、TCP / IPモデルと4つの関連協定の一つです。
ここに画像を挿入説明

・TCP / IPネットワークインタフェース層

主要な役割:データのカプセル化/デカプセル化フレーミング(フレーム)。フレーム - 本明細書に物理層パケット伝送構造に加工することができるデータ伝送ネットワーク層上に信頼性のある伝送を保証するために。データフレームが送信されるなどに加えて、だけでなく、送信者と受信者をチェックする物理アドレスと制御情報との誤差を含みます。ここで、フレームを送信し、エラー検出制御情報を物理アドレスを決定すること、エラーのないデータが到着を確実にするために使用されます。

2の主な役割:制御フレーム送信。送信制御フレームは、主にフィードバック再送タイマー、側面のフレーム数に反映されます。エラーコード(パリティまたはCRCコード)によって受信フレームのフレーム送信中にエラーが発生し、伝送エラーが発生した場合、それが正しい再送する必要があり、送信フィードバックを送信するかどうかを決定するためにチェック。送信されるように、送信フレームの後には、フィードバックタイマTimeouフレーム送信エラーが発生した後である避ける停滞変速機、自動再送信するために、一定の時間内に受信されない場合、フレームを送信した後、タイマを開始すると同時に、場合。複数のケースを回避するために、受信したネットワーク層は、各フレームが送信所要数、受信したフレームが繰り返されるかどうかを決定するために受信機を生じるように同じフレームに送信します。

3の主な役割:フロー制御。各トランシーバおよびバッファメモリ空間の両方を使用して高速デバイスを動作の違いによる、送信側は、フロントフレームに、送信者の適切な伝送レートを行わず、受信した時刻を、この制限時間を受信者が力を受ける現象の伝送容量よりも大きく表示されることフレームは、継続的に失われたフレームとの誤差が生じ、バック「洪水」に送られます。それは受信側の速度を超えないようにこのように、フロー制御は、実際に送信側制御データトラフィック、送信レートです。私たちは、送信者は、その後どのような状況の下で、次のフレームを送信することができ、どのような状況下で、より送信する前にいくつかのフィードバックを受け取るのを待って、送信を停止しなければならないので、いくつかのルールを知っておく必要があります。

・TCP / IPのネットワーク層

それがネットワーク層になると、それはTCP / IPプロトコルスイートでIPプロトコル、合意の核心である言及する必要があります。すべてのTCP、UDP、ICMP、IGMPプロトコルデータは、IPデータグラムの形式で送信されます。IPプロトコルは、コネクションレスのデータグラム配信サービスを提供する信頼できません。信頼できないが到着、唯一のトランスポートサービス、送信エラーの成功を保証するものではありませんIPデータグラムプロトコルである、誤ったデータパケットが破棄されています。いいえ接続は、データパケットのIPプロトコル処理されていない、その受信機が必ずしも送信順序に従ってデータパケットを受信しないことを意味独立しています。次のようにIPデータグラムの形式は次のとおりです。
ここに画像を挿入説明
これは、ネットワーク層、IPV4通信種別情報を含む20バイトの追加IPヘッダ、データ識別、フラグメントオフセット、を介してデータ・パケットであるTTL(TTLであります期間)送信元IP送信先IPとIPオプションの拡張、など。

・TCP / IPトランスポート層

TCPヘッダを追加
ここに画像を挿入説明

TCPは、順次番号付けされる各バイトのTCPバイトストリームを介して送信されるバイト指向のストリームであり、シーケンスヘッダ
番号フィールドの値がデータセグメント新聞の最初のバイトを指し番号。確認応答
ナンバーは次のセグメント番号の最初のデータバイトの他方を受信することが望ましいです。オフセット:4ビットはTCPを参照する
固定20バイトのTCPとオプションフィールドを含むヘッダ長セグメント。予約は:6を占め、現在は0、将来の使用のために予約しました。TCP
C、E、U、A、のフラグ P、R、Sは、Fのフィールドは、パケットの性質を示すために使用されます。次のような意味がある:
     C(CWR)とE(ECE)は、ECN(表示ブロッキング通知)をサポートします。
     U(緊急):この緊急データパケットにシステムに指示URG = 1は、優先順位は、送信されるべきである(例えば、緊急オフなど)、緊急ポインタフィールドと嵌合するために使用されます。
     (ACK)ACK = 1が確認応答番号フィールドである場合にのみ有効。TCPコネクションを確立した後、すべてのセグメントは、1へのACKフィールドセットでなければなりません。
     P(PUSH):直ちにTCP接続応答の他端の端部を所望の場合、PSHフィールドは、送信する前に充填するためにバッファを待つことなく、お互いを「付勢」ことができます。
      R(RESET):重大なエラーTCP接続の場合、RSTは、TCP接続を切断、1にセットされ、その後、接続を再確立します。
     S(SYN):SYN = 1は、接続を表す場合、確立し、接続を解除します。
     F(FIN):FIN = 1は、送信者がTCP接続を解放するために必要な完成送信を、持っていることを示している場合、接続を解除します。ウィンドウ:2バイト。ウィンドウの値があるため、受信バッファの限られたスペースで、送信者自身の受信ウィンドウサイズを指します。
  チェックサム:2バイト。そして、UDPパケット、テストとして、パケットが送信中に間違って行くかどうかを確認します。緊急
ポインタ:2つのバイトを占有します。アクティブ場合URG = 1の場合には、緊急データセグメント新聞のバイト数を示します。

・TCP接続と切断接続ハンドシェイクを作成するための3ウェイハンドシェイク

ここに画像を挿入説明

  1. Serverクライアントは、最初にあなたの配列(x)の同期接続要求パケットセグメントを送信し、クライアントがSYN_SENT状態になります。
  2. クライアントサーバーはそのクライアントの配列(Y)とACK(X + 1)に戻って、接続要求パケットセグメントを受信し、サーバはSYN_REVD状態に入ります。
  3. クライアントサーバーがサーバーに肯定応答セグメントACK(Y + 1)を送信し、再度、受信の肯定応答を返し、このセグメントは既にデータを搬送することができます。クライアントは、確立された状態になります。
  4. 再度、クライアントサーバーからの確認を受けた後、ESTABLISHED状態に入ります。
      TCPコネクションは、これまでに確立しました。なぜ、三の方法は、それをハンドシェイクのですか?ハンドシェイクプロセスが実際に初期化指数(初期シーケンスにおいて相互に通知される
    ナンバー)、XおよびY上の図であるISN、と呼びます。XおよびYがTCPパケットが送信中に混同されないように処理された後の送信データに基づきます。
      私たちは、シーケンス番号と確認応答番号32が計上されている、ビューのTCPヘッダの構造的なポイントを返され、その範囲の配列とACKは0-2で32-1 あたり2への配列とACKゼロから再び32-1。これは、配列(ISN)の初期値は常にゼロで開始していないことを言及する価値があります。それは、ゼロからであれば私たちは、想像し、その後、接続を確立するためにTCP 3ウェイハンドシェイクが完了すると、クライアントが30件のメッセージを送信し、その後、クライアントが切断されました。クライアントは、同じ配列を持っているので、2つのメッセージがあるだろう、最初の配列として0で再び再接続し、混乱して登場しました。TCPは、実際には、ゼロからISNリーチ2 ^ 32-1時間再びISNプラス1つの操作を行うには、すべての4マイクロ秒の練習、である、と報告SEQ = 0の前に数時間を経過していますテキストは、この接続に存在し、したがって、上記の問題を回避しません。
      ここに画像を挿入説明
      
     (1)サーバセグメントにクライアント切断要求を送信し、SEQ = M(Mは1で最後のバイトのシーケンス番号の最後のセグメントを送信するためにクライアントサーバーで、クライアントは、FIN-WAIT-1状態に入ります。
      (2)サーバが切断セグメントを受信した後、クライアントは、配列への肯定応答セグメントを送信= n(nはクライアントサーバーセグメントプラス1の最後のパケットのシーケンス番号の最後のバイトを送信する場合、ACK = M + 1 CLOSE-WAIT状態に、サーバー。この時点で、TCP接続が半閉状態にある、サーバは、クライアントが依然として受信することができる、データワードを送信する。
      (3)サーバは、SEQ = U(U、切断されたセグメントクライアントに肯定応答メッセージを送信します。最後のセグメントを送信するサーバは、ACK = M + 1、、1クライアント最後のバイトのシーケンス番号に半閉状態であるサーバLAST-ACK状態に。
      (4)クライアントサーバが切断応答メッセージを受信しますセグメントの後に、サーバは、断線確認パケット、SEQ = M + 1、ACKを送信するクライアントは、= U + 1 TIME-WAIT状態に入る。
      (5)クライアントサーバーが閉状態にオフに確認応答パケットを受信し、 TCP接続が切断されている。
      (6)クライアントTIME-WAIT状態にある時間の期間(時間2 * MSL((最大セグメントライフを待っている ))、 最後の切断確認到着クライアントサーバーへ送信確認(届かない場合は、サーバークライアントへの再送信、切断確認メッセージセグメントのステップ(3)を、クライアントが最後の時間は、切断を確認しなかったあなたを教えて 受信した
    いかなるパケットがTIME-WAIT中に再度セグメントクライアントサーバーを受信されない場合)に、閉じへの状態移行が、この切断に接続.TCP ..
      
      TCPは、接続信頼性を反映する:
      (1)TCPセグメントの長さを変数は、両方の送信に応じて調整および状態、ネットワークの状態を受信バッファされている。
      (2)TCP接続のもう一方の端から送信され受信したTCPデータ、それは肯定応答を送信するとき。
      TCPセグメントを送信した場合(3)、それは速やかに確認を受信しない場合、それはこのセグメントを再送します、このセグメントの受信を確認するために、宛先のためのタイマーと待機を開始します。
      (4)TCPテスト、それはヘッダとデータを維持します。エラーが検査セグメントによって存在する場合、セグメントを再送タイムアウトを待って、廃棄されることを見出しました。
      (5)TCPは、データのバイトがソートされ、セグメントが正しい順序を保証するために、シリアル番号を有しています。
      (6)TCPは、フロー制御を提供します。各TCP接続には、送受信側のキャッシュを持っています。TCPを受信するだけ送信の他端を可能にし、受信側は、データバッファを受信することができます。これは、低速のホストオーバーフローが生じバッファ速くホストを防ぐことができます。
      送信者が受信確認を待っている状態に入った後、メッセージセグメントを送信することを意味するものではありません、セグメントの後ろを聞かせて、パケット伝送の信頼性を確保するための方法の確認を受けた後リターンを使用して、TCPパケットの送信を注意すべきです待っています。NOR受信者がパケットを受信した後、各パケットは、確認に返信されますされています。
      真実は、送信者のために、セグメントを送信した後、セグメントのコピーをコピーし、で、その後、メッセージを送信するために、次のセグメントに進み、そうでないかどうかを確認するには、送信者に返信、それがありますセグメントの再送タイムアウト。受信者の場合は、「累積確認」応答によるものです。受信者は、受信された前のデータを表す最後のセグメントを確認するだけバック、複数の連続したセグメントを受け取った後。伝送効率を向上させる目的を達成するために。

・TCP / IPアプリケーション層

アプリケーション層の接続のポートは、参照があってもよいTcpの共通ポートリスト

これらの理解では、あなたの特定の通信モデルのコンピュータネットワークを学習している拡大するには準備ができて、TCP / IPプロトコルの深い理解がより便利になります。

リリース8元の記事 ウォン称賛11 ビュー305

おすすめ

転載: blog.csdn.net/weixin_45121946/article/details/104402085