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 参照モデルに基づいて、ネットワーク間のコンピュータ通信の原理について説明します。 著者: 王 賢新 部署:中国移動スマートホームオペレーションセンター |
<<: 昔、クリーンプレートキャンペーンの時には、食べきれなかった分は本当に持ち帰らなければならなかったのですか?
>>: 毎日ニンニク一片を食べると体に何が起こるでしょうか?本当に細菌を殺すことができるのでしょうか?
2023年度の個人所得税の年次調整が3月1日より始まりました。皆さん、最近税金の還付金を受け取りま...
私たちの日常生活には、さまざまな食べ物があります。これらの食べ物を選ぶとき、私たちは自分の好みに応じ...
生姜黒砂糖水は多くの女性の友人にとって馴染みのない飲み物ではないと思います。それどころか、とても身近...
現代人は大きなプレッシャーにさらされており、食生活に対する要求はますます高くなっています。満腹で美味...
クコの実は、私たちがよく知っている伝統的な漢方薬の一種です。クコの実は見た目が美しいだけでなく、味も...
日産は、GT-Rファミリーの50周年を記念して、イタルデザインと提携し、GT-Rプロトタイプの特別バ...
夏が到来し、気温も非常に高くなりました。さまざまな冷たい飲み物がこの季節のベストセラー食品となってお...
コーヒーが人体に入るとどのような反応が起こりますか?中毒性はありますか?安全な投与量はありますか?そ...
私たちは日常生活でクミンパウダーを摂取すべきです。クミンパウダーを使うと、食べ物の味がさらに良くなり...
人生において、お茶を飲むのが好きな友人がたくさんいることに気づくのは難しくありませんが、彼らの多くは...
8世紀のある日ソグド商人の一団がサマルカンドから出発した今回の彼らの旅は宇宙空間で2,000キロメ...
大根は私たちの生活の中で非常に一般的な食材であり、調理方法も数多くあります。今日お話しするのは、大根...
Microsoft の Windows Insider プログラムのユーザーであれば、Windows...
暑い夏には冷たい料理がとても人気です。冷やし大根は、よく知られた冷菜です。調理法は多種多様で、お店ご...
豚は私たち人間が最もよく食べる動物です。豚肉は栄養価が高く、必要なエネルギーやさまざまなアミノ酸を供...