インターネット


ネットワーク通信


🔎インターネットとは?


複数の通信網を接続することは、世界中のコンピュータを接続することを意味する.
2台のパソコン間の通信を見てみましょう.

各コンピュータはクライアントとサーバに分かれています.要求されたコンピュータをクライアントと呼び,要求されたコンピュータをサーバと呼ぶ.
クライアントでハローワールド!サーバにメッセージを送信すると、複数のノードと呼ばれるサーバを介して安全に転送されます.
では、この過程で、どのように情報を伝えるのでしょうか.
メッセージを転送するには、次のプロトコルを使用します.つまり、約束通りにメッセージを転送します.

1.IP(インターネットプロトコル)


インターネットプロトコルの役割は、指定されたIPアドレスにデータをパケット形式で転送することである.
パケット単位でパケット転送を行うのは、データの送信が大きすぎるとデータ転送がスムーズでないためである.
 Hello,world!를 서버로 보내는 과정을 살펴보자

送信するデータをIPパケットで送信し、IPパケットは出発地IP、目的地IPを含む.IPパケットを作成してノードに投げ込むと、IPプロトコルは各ノードに出発地と目的地を理解させるため、ノード間で互いに投げ合い、最終的に目的地に到着する.
クライアントリクエストとサーバ応答の場合、各ノードはネットワークの複雑さによって異なる場所に置かれる可能性があります.
* 데이터는 HTTP형식으로 작성된다

📌 IPプロトコルの限界


①非接続性


ターゲット受信パケットがなくても、サービス不可状態であっても、パケットを送信

②信頼性が低い


パケットが途中で消失したり、順番にXに到達したりしていることを確認します.

③プログラム区分


同じIPを用いたサーバ通信を区別するアプリケーションX

2. TCP


これらのIPプロトコルの限界により,TCPが出現した.
まず、プロトコル階層図がデータをどのように伝達するかを見てみましょう.
1. 웹브라우저나 채팅프로그램등 응용프로그램에 의해서 전달하고자 하는 메시지를 생성한다
2. socket 라이브러리를 통해 os게층에 전달한다
3. 메시지에 TCP를 씌우고 IP에 전달한다
4. TCP 데이터를 포함하여 IP 패킷을 생성한다
5. 랜카드에 의해 이더넷 프레임, 즉 랜카드에 등록된 mac주소 포함되어 전송된다

📌 TCP特性


TCPは伝送制御プロトコルであり、3つの特徴を有する.

①接続向け-3回握手(仮想接続)


②データ転送保証


③保障手順



2-1) TCP 3 way handshake



図に示すように、クライアントとサーバとの間で3回のSYN(接続要求)とACK(受信要求)による通信が行われる場合、次に、データの伝送方式が行われる.
ここでは、クライアントとサーバは実際に接続されているのではなく、論理的に接続されています.
これは、クライアントがSYNを送信し、サーバが応答しなければ接続もメッセージも送信しない問題の例です.
しかし,ディザが3回で伝送速度が遅くなるという欠点がある.特にパケットを増やすと,データ量が多く,伝送速度も速くなりにくい.

2-2)データ転送保証



クライアントからデータを転送すると、サーバはデータを受信したと返信します.
サーバが応答していない場合は、サーバに問題があります.

2-3)保証された手順



IPから投げ出されたパケットは各ノードを介してサーバに到着するが,IPには順序情報がないため順序保障がない.しかしTCPは順序に関する情報を持っているので順序を保証できる.上図では、パケット3番の順序が間違っているため、サーバはクライアントにパケット2番からパケットの再送信を要求する.

2-4) PORT


同じIP内でプロセスを区別する役割をportと呼ぶ.

TCPはこれらのポート情報を含み、TCPとIPをTCP/IPパケットに統合する.

上の図に示すように、200.20.200.2の1120 PORTを使用してパケットを接続して送信すると、ゲームサーバに接続できます.これにより、サーバは、クライアントが送信したパケット情報に私のIPとPORTの情報が含まれているため、私のIPとPORTを知って送信することができる.
IPをマンションにたとえると、portは何棟何番を表しますか.
ポートは0~65535に割り当てることができます.0~1023は既知のポートとして使用しないほうがいいです.
FTP - 20, 21
TELNET - 23
HTTP - 80
HTTPS - 443

3. UDP


ユーザデータレポートプロトコル

📌UDP特性


① 3way handshake X


②データ転送保証X


③順序保障X


④データの伝達や順序は保証できませんが、簡単で速いです。


⑤IPとほぼ同じですが、PORT+チェックサムを追加


整理する


💡 複雑なインターネット上でデータを交換するために、プロトコルに従います.
💡 転送するデータはHTTP形式で作成され、プロトコル階層図に従ってデータの処理と転送が順次行われる
以上の記事は、インフラストラクチャの金英漢先生の「すべての開発者向けHTTP Web基本知識」の授業が終わった後、PPTを用いて作成したものです.