プライベートな連絡先の最初の情報
送料メール:
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
前の章では、ファイルを操作するための Java コードの使用について紹介しました。今日は、後でネットワークをより深く理解できるように、ネットワークの基本的な知識のポイントについて説明します。
如果各位对文章的内容感兴趣的话,请点点小赞,关注一手不迷路,讲解的内容我会搭配我的理解用我自己的话去解释。如果有什么问题的话,欢迎各位评论纠正 🤞🤞🤞
ホームページ:N_0050-CSDN ブログ
関連コラム:java SE_N_0050 のブログ - CSDN ブログ java data Structure_N_0050 のブログ - CSDN ブログjava EE_N_0050 のブログ - CSDN ブログ
ネットワークは次のように分かれています ネットワーク原理とネットワークプログラミング,ネットワーク通信: 複数のコンピュータが相互に接続され、データ共有が完了します。, 実際には、ネットワークを介したコンピュータ間のデータ伝送であり、ネットワークデータ伝送とも言えます。
ローカル、LAN 内のホスト間のネットワーク通信を可能にする、ローカルに確立されたプライベート ネットワーク、イントラネットとも呼ばれます。接続がなければ、ローカル エリア ネットワークとローカル エリア ネットワーク間の通信は不可能です。LANの範囲は固定です学校や工場など、カバレッジが小さく、伝送効率が高く、遅延が短く、主にローカル リソースの共有と通信に使用されます。
複数のローカルエリアネットワークがルータを介して物理的に接続され、大規模なネットワークを形成し、広域ネットワークを形成します。 。 WAN 内の LAN はすべてそのサブネットに属します。実際には、各ローカル エリア ネットワークはルータを介して接続されており、ワイド エリア ネットワークと呼ばれる巨大なローカル エリア ネットワークとみなすことができます。カバー範囲が広い、伝送効率が遅い、遅延が長い、主にリモート接続とデータ送信に使用されます。
グローバルなパブリック ワイド エリア ネットワークの場合は、ワイド エリア ネットワークのサブセットであるインターネット (パブリック ネットワーク、外部ネットワークとも呼ばれます) と呼ばれます。広域ネットワークは、実際にはインターネットを指します。
LAN と WAN の関係と違い:
たとえば、企業にはさまざまな地域に多数の支店があり、各支店はローカル エリア ネットワークとみなすことができます。すべての拠点をネットワーク接続することで、地域を越えた通信を実現できます。これを広域ネットワークと呼びます。
OSI モデルの 3 番目の層 (ネットワーク層) は、主に複数のネットワークを接続し、データ パケットの宛先アドレスに基づいて転送に最適なパスを選択するために使用されます。
通常、コンピュータ室のコンピュータはルータに接続されており、その少数のコンピュータだけが通信できると考えられますが、再びルータが接続されると、徐々に巨大なネットワークが形成され、より多くのコンピュータとルータが通信できるようになります。外部ネットワークに接続できるので、どこにいてもコンピュータと通信できます。
通常、ルーターには 5 つのネットワーク ポートがあり、WAN ポートが 1 つ、LAN が 4 つあります。WAN ポートは、複数のコンピューターが同じ LAN 内で通信できるようにルーターに接続されます。制限があるため、スイッチを導入すると、LAN ポートにも接続されているスイッチを介してより多くのデバイスに接続できます。
OSI モデルの第 2 層 (データリンク層) では、各スイッチに MAC アドレス テーブルがあります。(アドレス転送テーブルとも呼ばれます)、各ポートに接続されているデバイスのMACアドレスを記録 。このテーブルをクエリすると、スイッチは各データ フレームの転送パスを決定し、データ フレームを宛先デバイスに転送できます。
スイッチのポートは、ルーターの LAN ポートに直接接続する必要はありません (つまり、より多くのデバイスを接続できます)。より多くのポート (8、16、24 またはそれ以上) を使用すると、より多くのデバイスを接続し、同じネットワークに接続してネットワーク通信を容易にすることができます。
2 つの違い:
ルーターはネットワーク層にあり、IP アドレスに基づいてアドレス指定されます。,ルーターは TCP/IP プロトコルを処理できます、スイッチはできませんスイッチは MAC アドレスに基づいてアドレス指定されます。スイッチはデータリンク層にあります
ルーターは 1 つの IP を多数のホストに割り当てることができ、これらのホストは外部に対して 1 つの IP のみを表示します。 。スイッチは多くのホストに接続でき、これらのホストにはそれぞれ独自の IP アドレスがあります。
ルーターはさまざまな種類のネットワークに接続でき、WAN 接続機能を備えています。、そのため、大規模な企業ネットワークやインターネット アクセスの構築に適しています。スイッチは複数のデバイスを接続するために内部 LAN で使用されます
例:私たち一人ひとりがホストに相当し、ルーターが配達員に相当し、寮の管理人が交換機に相当し、学校がローカルエリアネットワークに相当します。 。宅配業者は学校の住所(IP)に基づいて学校に荷物を届け、寮の建物(サブネットIP)に基づいて寮の管理人に荷物を届けます。寮の管理者はあなたの名前(MAC)に基づいて荷物をあなたに届けます。 。
IP アドレスは、デバイス (ホスト、ルーターなど) を見つけるために使用されるネットワーク アドレスです。 、ネットワーク上のコンピューターのアドレスを記述するものとして理解できます。 ネットワークにおける IP アドレスの役割:データ パケットがネットワーク上のターゲット デバイスを確実に見つけられるようにするため、デバイス間のルーティングとネットワーク ポジショニングに使用されます。 。IPアドレスは変更される可能性があることに注意してください
フォーマット:コンピュータでは通常、32 ビットの 2 進数を 4 つの「8 ビット 2 進数」(つまり 4 バイト) に分割してアドレスを表現しますが、2 進数で表現するのは不便です。通常、ドット付き 10 進数は IP アドレスを表すために使用されます。0 ~ 255 の 4 つの 10 進数を使用し、次に 3 つのドットを使用して IP アドレスを表します。
IP アドレスは、ネットワーク上のホストのアドレスを特定します。しかし、データがホストに送信された後、どのプログラムがそれを受信するのでしょうか?識別のためにポート番号を使用する必要がある
ポート番号は、ホスト上のさまざまなアプリケーションを区別するために使用され、ホスト内のプロセスを特定するためにも使用されます。。異なるプログラムが同じポート番号をバインドすることはできません、mysql のポート番号が 3306 にバインドされているのと同じように、他のプログラムもこのポート番号にバインドされている場合、混乱が生じます。ただし、プログラムは複数のポート番号をバインドできます
フォーマット:システムのポート番号の範囲は 0 ~ 65535 (2 バイト)、0 ~ 1023 です。通常、システムには特別な目的があるため、通常は使用しません。
IP とポート番号はペアとして考えることができ、速達の送信原理と同様に、送信者アドレス (送信元 IP)、送信者電話番号 (送信元ポート番号)、受信者アドレス (宛先 IP)、受信者の電話番号 (宛先ポート番号)と契約(運送会社)については後ほど詳しく説明します。
IP アドレスとポート番号を使用してネットワーク内の唯一のプロセスを特定できますが、ネットワーク通信では送信にバイナリ データが使用されます。このとき、送信するデータがどのようなものであるかを相手に伝える必要があり、双方のデータ形式を指定する必要があります。
ネットワークの本質は、光/電気信号を介してデータを送信することです。合意は、双方が望むものを実現するために合意する必要があります。そうしないとただのシュアシュアになってしまいます。
5倍:
TCP/IP プロトコルでは、ネットワーク通信を識別するために 5 つのタプルが使用されます。 ネットワーク通信に必要な情報は次のとおりです。
1. ソース IP: ソース ホストを識別します。
2. 送信元ポート番号: この通信のデータを送信する送信元ホストのプロセスを識別します。
3. 宛先 IP: 宛先ホストを識別します。
4. 宛先ポート番号: この通信のデータを受信する宛先ホストのプロセスを識別します。
5. プロトコル番号: 送信プロセスと受信プロセスの両方で合意されたデータ形式を識別します。
送信元ポート番号と宛先ポート番号はトランスポート層にあり、送信元 IP と宛先 IP はネットワーク層にあります。 ! !
分からない人は下の写真を見てください
ネットワークプロトコルの場合は、定義と管理のためにいくつかのレベルに分かれています。プロトコルをその種類と機能に応じて分類し、インターフェースを呼び出すのと同じように、上位層が下位層を呼び出し、下位層が上位層をサポートするという階層関係を設定します。その利点は、インターフェイスを呼び出すときに下部でどのように実装されているかを知る必要がないことです。必要なのは、このインターフェイスの使用方法とその機能を知ることだけです。インターフェースは誰を呼び出しているかを知る必要がなく、変更を避けるために実装の詳細をカプセル化します。
レイヤリングの例:大企業と同じように、上司が再帰的に指示を出し、それを各階層のリーダーが受け取り、それを従業員に渡して処理し、最終的には部下に戻します。上司の返答。この方法でコミュニケーションをとることは、管理にとっても便利であり、全体的に秩序あるものになります。
OSI 7 層モデルは複雑かつ非現実的であるため、OSI 7 層モデルは実装または実装されていません。本の中に登場するだけなので、お互いを知りましょう。ほとんどの企業は依然として TCP/IP 5 層ネットワーク モデルを使用しています。
これは、OSI の 7 層ネットワーク モデルの簡易バージョンであり、OSI のアプリケーション層、プレゼンテーション層、セッション層を 1 つのアプリケーション層に結合したものです。 。 TCP/IPの通信プロトコルは5層の階層構造を採用しています。各層は、その下の層によって提供されるネットワークを呼び出して、そのニーズを満たします
各層を説明する例を示します。たとえば、淘宝網で衣類を購入する場合、アプリケーション層に属するパンツやその他のアイテムを購入することも選択できます。次に、販売者は、受信者、電話番号などの注文関連情報を受け取ります。これはトランスポート層に属します。次に、販売者は宅配会社に電話して対応してもらい、宅配会社はネットワークに属する上海から杭州、紹興への輸送など、適切な経路を選択します(効率やコストなどの多くの要素を考慮します)。層。次に、上海から杭州まで鉄道で輸送する、杭州から紹興まで飛行機で輸送するなど、隣接する場所への輸送方法を検討する必要があります。これはデータリンク層に属します。最後のステップは、物理層に属する輸送に輸送機器を使用することです。以下のカプセル化と分離について例を挙げて説明します。
物理層:データリンク層でデータフレームを2進数に変換する、物理メディア (ケーブル、光ファイバーなど) を介して送信されます。
データリンク層: を担当しますデータフレームは同一LAN上で送信される,隣接ノード間の送信の詳細、スイッチの層に注意してください。
ネットワーク層: を担当します異なるネットワーク間でのデータパケットの転送、最適なパスを選択します。通信におけるルート計画、つまりルーターが存在する層に焦点を当てています。
トランスポート層: エンドツーエンドを提供します通信サービス、完全なデータ送信を保証します。コミュニケーションの始まりと終わりに焦点を当てる
アプリケーション層: アプリケーションと直接対話し、ネットワーク サービスを提供します。
ネットワークデバイスが配置されている層:
のためにホストたとえば、そのオペレーティング システムのカーネルは以下を実装します。トランスポート層から物理層へコンテンツ
のためにルーターつまり、達成したのは、ネットワーク層から物理層へ
のためにスイッチつまり、達成したのは、データリンク層から物理層へ
のためにハブつまり、達成したのは、物理層
ネットワーク通信におけるデータ送信のプロセスを説明します。実際、最初にカプセル化について説明します。
差出人
アプリケーション層:
チャット プログラムを使用して誰かにメッセージを送信します。wx は入力した Java をアプリケーション層のデータ パケットにパッケージ化します。(この形式は wx プログラマーのみが知っています) スプライシングに文字列を使用することは、アイテムを速達で送るときと同じで、自分でアイテムにパッケージを追加し、宅配便 (輸送層) に到着したときにパッケージ化されます。また。アプリケーション層プロトコルはプログラマによって柔軟に調整可能
次に、アプリケーション層のデータ パケットはトランスポート層に送信され、オペレーティング システムの API を介して処理されます。
トランスポート層:
TCP、UDPなどのトランスポート層プロトコル 。アプリケーション層のデータ パケットを再パッケージ化するとは、文字列を使用して TCP や UDP などのトランスポート層ヘッダーをトランスポート層に属するデータ パケットに接続することです。データパケット = ヘッダー + ペイロード
このとき、トランスポート層のデータパケット=UDPヘッダ+次のアプリケーション層のデータパケット(すなわち、パケットヘッダのペイロード)となる。 UDP ヘッダーは、送信元ポート番号と宛先ポート番号という重要な情報を含むバイナリ データです。たとえば、ディスプレイ画面を発送する場合は、壊れやすいものとしてラベルを付け、破損の可能性を減らすためにいくつかの保護措置を追加します。
送信元ポート番号と宛先ポート番号はトランスポート層にあることに注意してください。データ パケットはトランスポート層で処理され、処理のためにネットワーク層に渡されます。
ネットワーク層:
ネットワーク層で最も重要なプロトコルは IP プロトコルです、ネットワーク層はトランスポート層のデータ パケットも再パッケージ化し、文字列を使用して IP ヘッダーを結合し、ネットワーク層に属するデータ パケットに変換します。
このとき、ネットワーク層のデータパケット=IPヘッダ+UDPヘッダ+アプリケーション層のデータパケット(すなわち、IPヘッダのペイロード)となる。 IP ヘッダーには多くの属性が含まれており、その中で最も重要なものは送信元 IP と宛先 IP です。
送信元 IP と宛先 IP はネットワーク層にあることに注意してください。データ パケットはネットワーク層で処理され、処理のためにデータリンク層に渡されます。
データリンク層:
データリンク層の典型的なプロトコルはイーサネットであり、イーサネットはネットワーク データ伝送の媒体を表すために使用されます。、データリンク層はネットワーク層データパケットを再パッケージ化し、文字列を使用してイーサネットフレームヘッダーを結合し、フレームトレーラーを追加して、データリンク層に属するデータパケットに変換します。
このとき、データリンク層パケット=イーサネットフレームヘッダ+IPパケットヘッダ+UDPパケットヘッダ+アプリケーション層データパケット(すなわち、イーサネットパケットヘッダのペイロード)+フレームテールとなる。イーサネット ヘッダーには多くの属性も含まれており、その中で最も重要なものは送信元 MAC アドレスと宛先 MAC アドレス (ネットワーク カード/ネットワーク アダプターのアドレスを記述する) です。
ネットワークカード/ネットワークアダプターとは何ですか?コンピュータがコンピュータ ネットワーク上で通信できるように設計されたコンピュータ ハードウェアの一部、製造時にアドレスが固定されています。通常、ネットワーク カード/ネットワーク アダプターを識別するために MAC アドレスを使用します。。LAN では、デバイスは MAC アドレスを介して相互に通信し、データ フレームが正しいネットワーク カードを見つけられるようにします。
次に、データ パケットはデータ リンク層で処理され、処理のために物理層に渡されます。
物理層:
上記のイーサネットデータフレーム(データが0、1の2値構造)を光・電気信号に変換して送信します。 。最初の上位層プロトコルから下位層プロトコルまで、各層はヘッダー (実際にはカプセル化) を追加します。
送信プロセスではルーターが発生します。データは送信された後、スイッチとルーターを介して転送されます。コンピューターには多数のスイッチとルーターがあるため、相互に通信できると想像できます。なお、ルータを通過する際は、物理層が光電信号を受信してバイナリデータに変換し、データリンク層に渡します。データリンク層は同様の処理を行い、解析してペイロード部分を取り出して渡します。ネットワーク層に送信され、ネットワーク層がそれを分析して、転送に最適なパスを選択し、それをデータリンク層にカプセル化してから、ルーターに再度遭遇すると、処理が実行されます。まだ同じです。
送信プロセスでスイッチが発生します。ただし、スイッチを通過する場合も同様です。物理層は光電信号をバイナリに変換してデータリンク層に送信し、データリンク層はペイロード部分の情報に基づいてデータの送信先を決定します。新しいパケットのヘッダーとテールを作成し、カプセル化が物理層に渡され、物理層がそれを送信します。データが受信者に到着したら、データを解析 (共有) する必要があります。つまり、速達です。
受信機
物理層:受け取った送信側からの光電信号をバイナリデータに変換し、イーサネットフレームヘッダを取得します。、処理のためにデータリンク層に渡されます
データリンク層:イーサネットプロトコルを使用するイーサネットデータパケットを分析し、パケットのヘッダーと末尾を取り出します。、処理のためにペイロード部分をネットワーク層にスローします
ネットワーク層:IP プロトコルを使用して、ネットワーク層でデータ パケットを分析します。IPヘッダを取り出して解析する、その後、処理のためにペイロード部分をトランスポート層にスローします
トランスポート層: UDP プロトコルを使用してトランスポート層でデータ パケットを解析します。UDPヘッダを取り出して解析する、ペイロード部分を処理のためにアプリケーション層にスローします。
アプリケーション層:トランスポート層から送信されるデータポート番号に従って対応するプログラムに投げますそして、wx プログラムはその中のデータを解析します。解析方法は、プログラマがカスタマイズしたアプリケーション層プロトコルに基づいています。
プロセス全体の概要:あなたが送ったメッセージ層ごとにカプセル化された後、送信のために物理信号 (光/電気信号など) に変換されます。、最初に入ります現在の LAN を特定し、ローカル ルーティングに進みます。,ローカル ルーティングはカプセル化され、逆多重化されて適切なパスが選択されます。、そして途中で他のルータに遭遇すると、ターゲット ネットワークに近づくまでカプセル化と逆多重化を実行して適切なパスを選択します。 。最終ルーターでは、カプセル化と分割が実行されます。APR プロトコルを介して IP アドレスを MAC アドレスに解析する、対応する MAC アドレスが見つからない場合、ルーターはブロードキャスト要求を送信します。ターゲット デバイスは MAC アドレスを提供することで応答し、LAN 内の送信は最終的にターゲット デバイスに到達します。
以上がインターネットに関する基礎的な知識ですが、インターネットには多くのコンテンツがあり、後ほど詳しく説明します。💕