2 台のコンピューターはどのようにして相互に通信するのでしょうか?何千台ものコンピューターを含むネットワークで、1 台のコンピューターが別のコンピューターを見つけて、正確にデータを送信するにはどうすればよいでしょうか。今日の記事では、7 層の OSI 参照モデルを使用して、コンピューターがネットワーク上の別のコンピューターを見つけてデータを送信する方法について説明します。 1. 物理層 コンピュータがネットワーク内の別のコンピュータと情報を伝送する場合、最初に行うべきことはコンピュータを接続することです。つまり、光ファイバー、ケーブル、ツイストペアなどのメディアを介してこのコンピュータを他のコンピュータに接続し、情報を伝送できるようにします。したがって、物理層の役割は、実際には 2 台のコンピューターを接続し、高周波数と低周波数を使用してコンピューター間で 0 と 1 の形式で電気信号を送信することです。 2. データリンク層 しかし、コンピュータ間で 0 と 1 の信号に関する統一されたルールが認識されていない場合、コンピュータはそれらを解釈できません。そこで、イーサネット プロトコルが登場しました。 図1 ビットストリーム 2.1 イーサネットプロトコル イーサネット プロトコルでは、電気信号のグループで構成されるデータ パケットはフレームと呼ばれます。さらに、フレームにはヘッダーとデータの 2 つの部分が含まれます。そのサイズは一般的に64~1518バイトで、ヘッダー部分のバイト数は18バイト固定です。そのため、送信するデータが大きい場合は複数のフレームに分割して送信されます。フレーム ヘッダーには通常、送信者、受信者などの説明データが格納され、データ部分には受信者に送信される特定のコンテンツが格納されます。 2.2 MACアドレス
物理層とリンク層を介して 1 台のコンピューターから別のコンピューターにデータを送信するプロセスでは、異なるコンピューターを区別するために、各コンピューターの一意の識別子である MAC アドレスが生成されます。その中で、ネットワークに接続された各コンピュータには独自のネットワーク カードがあり、各ネットワーク カードには独自の一意のアドレス、つまり MAC アドレスがあります。 2.3 放送 ネットワークでは、コンピュータ A はコンピュータ B に接続されているだけでなく、他の複数のコンピュータにも接続されています。コンピュータ A がコンピュータ B の MAC アドレスを知っていて、コンピュータ B に情報を送信したいが、コンピュータ A はコンピュータ B がどのルート上にあるか知らない場合。こうしてラジオが誕生したのです。 同じサブネット内で、コンピュータ A はコンピュータ B に情報を送信します。データ パケットにはコンピュータ B の MAC アドレスが含まれています (コンピュータ A がコンピュータ B の MAC アドレスを学習していると仮定します。その理由は次のセクションの ARP プロトコルで説明します)。情報を送信する場合、コンピュータ A はブロードキャスト経由で送信します。このとき、同じサブネット内のコンピュータ C または D は、データ パケットを受信した後、データ パケット内の MAC アドレスを取り出して比較します。それが自身の MAC アドレスと同じであればデータ パケットを受信し、そうでない場合はデータ パケットを破棄します。 3. ネットワーク層
前のセクションでは、サブネットについて説明しました。実際、私たちが属するネットワークは無数のサブネットで構成されており、ブロードキャストする場合、同じサブネット内のコンピューターだけがそれを受信できます。 サブネット分割がない場合、コンピュータ A はブロードキャストを使用してデータ パケットをコンピュータ B に送信します。この時点で、すべてのコンピュータがデータ パケットを受信し、比較と破棄を開始できます。しかし、ネットワーク内に多数のコンピューターが存在する場合、各コンピューターが他のコンピューターから送信されたデータ パケットを受信すると、ネットワークが崩壊してしまうため、サブネットが作成されます。 ここで疑問が生じます。コンピューターは、どの MAC アドレスが同じサブネットに属していて、相互にデータをブロードキャストして送信することを選択し、どの MAC アドレスが同じサブネットに属しておらず、ゲートウェイにデータを送信してゲートウェイに転送することを選択するかをどのように区別するのでしょうか。この問題を解決するために、IP プロトコルが登場しました。 3.1 IPプロトコル 2 台のコンピューターのネットワーク部分が同じである場合、それらは同じサブネット内にあると言われます (例: 192.188.88.1 と 192.188.88.2)。ネットワーク部分が両方とも 192.188.88 (合計 32 ビット) で、ホスト部分が残りの 8 ビットである場合、それらは同じサブネット内にあります。しかし、ネットワーク部分が占めるポイント数とホスト部分が占めるポイント数をどうやって知るのでしょうか?このようにして、サブネット マスクが作成されました。サブネット マスクと IP アドレスはどちらも 32 ビットの 2 進数ですが、サブネット マスクのネットワーク部分はすべて 1 で、ホスト部分はすべて 0 です。たとえば、前の例では、IP アドレスのネットワーク部分が 24 ビットで、ホスト部分が 8 ビットの場合、サブネット マスクは 11111111.1111111111.11111111.00000000、つまり 255.255.255.0 になります。したがって、2 つの IP アドレスのサブネット マスクがわかれば、それらが同じサブネット内にあるかどうかを判断できます。 3.2 ARPプロトコル 2 台のコンピューターの IP アドレスとサブネット マスクを通じて、それらが同じサブネット内にあるかどうかを判断できます。しかし、コンピュータ A はどのようにしてコンピュータ B の MAC アドレスを知るのでしょうか?この時、ARPプロトコルが登場しました。 ARP プロトコルは、受信者の IP アドレスを含むデータ パケットを、同じサブネット内のすべてのコンピューターにブロードキャスト方式で送信することを指します。データ パケットを受信すると、サブネット内のすべてのコンピューターは IP アドレスを取り出し、それを自身の IP と比較します。同じ場合は、自身の MAC アドレスで応答します。異なる場合は、データ パケットを破棄します。このようにして、コンピュータ A はコンピュータ B の MAC アドレスを認識します。 同時に、2 台のコンピューターの IP が同じサブネット内にない場合、コンピューターはデータ パケットをゲートウェイに送信し、ゲートウェイはそれを転送して送信します。 3.3 DNSサーバー この時点でのもう 1 つの疑問は、アクセスしたいコンピューターの IP アドレスをどうやって知るかということです。私たちのほとんどは、ネットワーク ドメイン名を通じてインターネットにアクセスするからです。たとえば、China Mobile Lianying Home Smart Platform にアクセスする場合、ドメイン名 https://open.home.10086.cn/ を入力します。実際、このドメイン名を入力すると、DNS サーバーの役割はこのドメイン名を解決し、対応する IP をコンピューターに返すことです。 4. トランスポート層 上記で紹介した物理層、データリンク層、ネットワーク層を経て、コンピュータ A からコンピュータ B にデータを正常に送信できました。しかし、コンピュータ B は、このデータを渡すためにインストールされているアプリケーションをどのようにして知るのでしょうか。 このとき、ポートが表示されます。実際、コンピュータ A からコンピュータ B にデータを送信する場合、特定のアプリケーションが処理するためのポートも指定する必要があります。つまり、トランスポート層の機能はポート間通信を確立することです。 IP アドレスを入力するときにポートを指定しないことがあります。実際、特定の伝送プロトコルのほとんどには、対応するデフォルト ポートがあります。たとえば、http のデフォルトの送信ポートは 80 であり、このデータはすべてデータ パケットに含まれます。 さらに、トランスポート層で最も一般的な 2 つのプロトコルは TCP と UCP です。 TCP は信頼性の高い伝送を提供しますが、UDP は信頼性の低い伝送を提供します。 5. セッション層 ネットワーク内の 2 つのノード間の通信を確立および維持し、対話型セッションの管理機能を提供します。一般的なプロトコルには、RPC、SQL、NFS などがあります。セッション層により、2 つのシステムが半二重モードまたは全二重モードで相互に通信できるようになり、またプロセスがデータに同期ポイントを追加してエラーを特定し、データ損失を防ぐことも可能になります。 6. プレゼンテーション層 アプリケーションとネットワーク間の「翻訳者」のようなものです。プレゼンテーション層では、データはネットワークが理解できる形式でフォーマットされます。このフォーマットは、使用されているネットワークの種類によって異なります。一般的なプロトコルには、JPEG、ASCII、GIF、DES、MPEG などがあります。同時に、プレゼンテーション層では圧縮を実行して、送信されるデータの量を削減することもできます。 7. アプリケーション層 アプリケーション層は、OSI モデルの第 7 層に位置します。その機能は、コンピュータ ユーザーにアプリケーション インターフェイスを提供し、さまざまなネットワーク サービスをユーザーに直接提供することです。この層プロトコルは、アプリケーション プロセス間の相互作用ルールを定義し、さまざまなアプリケーション層プロトコルを通じてさまざまなネットワーク アプリケーションにサービスを提供します。たとえば、World Wide Web をサポートする HTTP プロトコルや、電子メール システムで使用される SMTP プロトコルなどです。 要約すると、OSI 参照モデルは、上から下に向かって、アプリケーション層、プレゼンテーション層、セッション層、トランスポート層、ネットワーク層、データリンク層、物理層の 7 つの層に分かれています。さらに、より合理化された TCP/IP 参照モデルがあり、その構造は上から下に向かって、アプリケーション層、トランスポート層、ネットワーク層、ネットワーク インターフェイス層の 4 つの層に分かれています。ただし、TCP/IP 参照モデルでは、ネットワーク インターフェイス層が細分化されておらず、サービスとプロトコルが明確に区別されていません。したがって、この記事では、OSI 参照モデルに基づいて、ネットワーク間のコンピュータ通信の原理について説明します。 著者: 王 賢新 部署:中国移動スマートホームオペレーションセンター |
<<: 昔、クリーンプレートキャンペーンの時には、食べきれなかった分は本当に持ち帰らなければならなかったのですか?
>>: 毎日ニンニク一片を食べると体に何が起こるでしょうか?本当に細菌を殺すことができるのでしょうか?
金マナガツオは汕頭で比較的よく食べられる魚です。この地域の金マナガツオは肉質が柔らかく甘みがあり、味...
著者: 黄祥紅段岳中広大な宇宙の奥深くには、人類が探検して解明するのを待っている無数の謎が隠されてい...
この画像は氷についての170年以上の議論に終止符を打った氷の表面は、融点(0℃)以下の温度で溶け始め...
トビガニは、私たちのような日雇い労働者には手の届かない海産物です。基本給労働者である私たちにとっては...
千切りじゃがいもを酢で和える?千切りじゃがいもを酢で和えると言えば、誰もが知っている料理です。会社員...
長い画像を読み込んでいます...プロデューサー: Ma Lian 編集者: Wu Nanこの記事は科...
どのくらいの頻度で家を掃除しますか? 2週間に1回ですか?月に一度ですか?私は今でも毎日掃除をしてい...
「腎臓」は昔から男性に人気の媚薬で、特にバーベキューの串焼きを食べるときによく使われます。食べたも...
私の友人の多くは、豆腐を詰めた餃子について聞いたことがないと思います。なぜなら、この食べ方は一般的で...
豚足とピーナッツのスープは私たちの日常生活でよく食べられるスープで、滋養のあるスープでもあります。体...
7月30日、マイクロソフトはついに「Xiaobing」のパートナーを見つけた。マイクロソフトが当初か...
スティーブ・ジョブズの時代、Apple の携帯電話は常に携帯電話業界のベンチマークであり、多くの A...
英語がそこそこできる留学生の多くは、海外での言語コミュニケーションに問題はありませんが、忙しい授業の...
黒にきびの魚の調理方法はたくさんありますが、多くの人は理解していないため、調理方法を知りません。これ...