TCP と UDP の違い — 違いとどちらのプロトコルが速いか?
コンピュータ ネットワーキングを始めようとしている場合、または一部のアプリケーションのネットワーク設定を調べたことがある場合は、TCP と UDP という用語を見たことがあるでしょう。
TCP (Transmission Control Protocol の略) と UDP (User Datagram Protocol) は、インターネット プロトコル スイートの一部です。 TCP と UDP は、インターネット上で情報を送信するための異なる方法です。
しかし、それらが何を表しているかを知っていても、どのプロトコルを使用すべきか、またはなぜ一方を他方よりも優先して使用するのかを知ることは困難です.
この記事では、コンピューター ネットワーキングの基本、TCP と UDP の違い、それぞれが使用される場合などについて説明します。
コンピュータ ネットワークの基本
TCP と UDP の仕組みに飛び込む前に、インターネットの仕組みに関する基本を知っておくと役に立ちます。
一般的に言えば、インターネットは接続されたデバイスのネットワークです。スマートフォンでもサーバーでも、各デバイスはインターネット プロトコル スイートを介して通信します。
インターネット プロトコル スイートは、デバイスが相互に通信するためのさまざまなプロトコルまたはメソッドの集合です。 TCP と UDP はどちらも、インターネット プロトコル スイート内の主要なプロトコルです:
インターネットに接続されている各デバイスには、固有の IP アドレスがあります。また、2 つのデバイスがインターネット経由で通信するときは常に、TCP または UDP のいずれかを使用している可能性があります。
両者の簡単な比較は次のとおりです:
インターネットのしくみのさらに高度な概要については、次の 5 分間のビデオをご覧ください:
TCP とは?
TCP (Transmission Control Protocol) は、オンラインで最も一般的なネットワーク プロトコルです。 TCP は非常に信頼性が高く、Web サーフィン (HTTP)、電子メールの送信 (SMTP)、ファイルの転送 (FTP) など、あらゆる用途に使用されています。
TCP は、あるデバイスから送信されたすべてのデータを別のデバイスで完全にそのまま受信する必要がある場合に使用されます。
たとえば、Web サイトにアクセスすると、TCP を使用して、ページのレンダリングに必要なテキスト、画像、およびコードのすべてが到着することが保証されます。 TCP がないと、画像やテキストが欠落したり、間違った順序で到着したりして、ページが壊れる可能性があります。
TCP は接続指向のプロトコルです。つまり、データを転送する前に 2 つのデバイス間の接続を確立し、転送プロセス全体でその接続を維持します。
2 つのデバイス間の接続を確立するために、TCP はスリーウェイ ハンドシェイクと呼ばれる方法を使用します。
たとえば、お使いのデバイスでこの記事を読むために、デバイスは最初に SYN (Synchronize Sequence Number) と呼ばれるメッセージを freeCodeCamp ニュース サーバーに送信しました。
その後、freeCodeCamp ニュース サーバーは SYN-ACK と呼ばれる確認メッセージを送り返します。
デバイスがサーバーから SYN-ACK を受信すると、接続を確立する ACK 確認メッセージを返信します。
2 つのデバイス間で TCP 接続が確立されると、プロトコルはすべてのデータが送信されることを保証します。
デバイスと freeCodeCamp ニュースの例に戻ると、スリーウェイ ハンドシェイクが完了すると、ニュース サーバーは、デバイスの Web ブラウザがこの記事を表示するために必要なすべてのデータの送信を開始できます。
すべてのデバイスは、インターネット経由でデータを送信する前に、データを小さなパケットに分割します。これらのパケットは、反対側で再構成する必要があります。
そのため、freeCodeCamp ニュース サーバーがこの記事の HTML、CSS、画像、およびその他のコードを送信するとき、デバイスに送信する前にすべてをデータの小さなパケットに分割します。その後、デバイスはそれらのパケットを、この記事のレンダリングに必要なファイルと画像に再構築します。
TCP は、これらのパケットがすべてデバイスに到達することを保証します。途中でパケットが失われた場合、TCP を使用すると、デバイスがデータが欠落していることをサーバーに簡単に通知し、サーバーがそれらのパケットを再送信できます。
デバイスが記事のレンダリングに必要なすべてのデータを受信すると、TCP は 2 つのデバイス間の接続を、スリーウェイ ハンドシェイクと同様の方法 (今回は FIN および ACK パケットを使用) で自動的に終了します。
UDP とは?
UDP (ユーザー データグラム プロトコル) は、インターネット プロトコル スイートを構成する主要なプロトコルの 1 つです。 UDP は TCP よりも信頼性が低くなりますが、はるかに単純です。
UDP は、ライブ ビデオ/オーディオのようにデータ損失が許容される場合や、オンライン ゲームのように速度が重要な要素である場合に使用されます。
UDP はオンラインでデータを送受信するために使用されるという点で TCP に似ていますが、重要な違いがいくつかあります。
まず、UDP はコネクションレス プロトコルです。つまり、TCP がスリーウェイ ハンドシェイクで行うように、事前に接続を確立しません。
次に、UDP はすべてのデータが正常に転送されることを保証しません。 UDP を使用すると、たまたまリッスンしているデバイスにデータが送信されますが、データの一部が途中で失われても気にしません。これが、UDP が「fire-and-forget」プロトコルとしても知られている理由の 1 つです。
これらの違いを考える良い方法は、TCP は 2 人の人間の間の会話のようなものだということです。 AさんがBさんに話を聞いてもらいます。人 B は確かに、それでいいと言っています。人物 A は同意し、2 人とも話し始めます。
UDP は、メガホンを持った屋外の抗議者のようなものです。抗議者に注意を払っているすべての人は、彼らが言っていることのほとんどを聞くべきです.しかし、その地域の全員が抗議者の言っていることを聞いているという保証はなく、彼らが聞いているという保証さえありません.
TCP と UDP のどちらが速いですか?
一般に、UDP はより高速なプロトコルです。
UDP ははるかに単純で、データを送信する前にデバイス間の接続を確立しようとしたり、すべてのデータが到着したことを確認したりしません。要求したデバイスにデータを送信し、他のデバイスが切断されるか、送信するデータがなくなるまで送信し続けます。
ボトルから飲むのではなく、ホースから飲むことを考えてください。どちらの方法でも喉の渇きを癒すことができますが、前者の方法ではシャツが湿ってしまう可能性があります。
しかし、高速だからといって、UDP が全体的に優れたプロトコルであるとは限りません。特定の状況でより優れていることを意味するだけです.
前述のように、TCP は、すべてのデータ パケットが順番に送信され、すべてのパケットが到着することが不可欠な状況で必要になります。 Web は TCP なしでは機能しません。
また、TCP は接続を確立する方法と欠落したパケットのチェックのために低速ですが、それでも非常に高速である可能性があります。ウェブ上にあり HTTP を使用しているため、YouTube や Netflix などのサイトはすべて TCP を使用してデバイスにデータを送信します。
TCP はバッファリングも可能にするため、視聴中にブラウザがより多くのデータを要求して読み込むことができるため、スムーズな再生が可能になり、ビデオの他の部分にスキップできます。
UDP は、データ損失の可能性よりも速度が重要なライブ ビデオやオーディオ、オンライン ゲームに適しています。
Google Meet または Zoom で電話をかけると、ビデオと音声が UDP 経由で送信されます。途中で一部のパケットが失われた場合、わずかなラグやクリップされたビデオ/オーディオとして表示されます。
ビデオ ゲームをプレイする場合、すべてのデータ パケットが他のデバイスに確実に到達することを TCP が保証する方法は、TCP が理想的な選択肢になると考えるかもしれません。しかし実際には、TCP が行うすべてのデータのチェックと再送信は、遅延を追加するだけです。
ゲーム開発者は、プレーヤーの入力と状態が可能な限り正確であることを保証する他の巧妙な方法を見つけました。オンライン ゲームで UDP が好まれる理由について詳しく知りたい場合は、この記事をご覧ください。
フィン
この記事が、TCP と UDP の微妙な違いを理解するのに役立つことを願っています。また、誰かがどちらが速いか尋ねたら、ここで読んだ内容を教えてください:「UDP の方が速いですが、でも ..."
読んだ内容が気に入ったら、Twitter でお知らせください。
-
OneDrive と OneDrive for Business の違いは?
Microsoft の OneDrive クラウド ストレージ サービスを使用すると、どこにいてもファイルにアクセスできます。同社は、実際には 2 つの異なるが名前が似ている OneDrive のバージョンを維持しています。 OneDrive を使用するか、別の OneDrive for Business を使用するかは、クラウドに保存する内容と、それにアクセスする方法によって異なります。 「OneDrive」は、マイクロソフトのコンシューマ向けクラウドです。個人の Outlook アカウントに表示され、Windows 10 に自動的にリンクされます。OneDrive は、自分自身や友人や家
-
Windows 10 Home と Pro の違いは?
新しいデバイスを検討している場合でも、自分で Windows を購入する場合でも、Windows 10 Home と Pro の違いに注意することをお勧めします。どちらも表示されていない場合は、製品に Windows 10 Home が付属していると想定してください。 「ホーム」エディションは「Windows 10 Standard」というより適切なタイトルにすることができるという点で、ネーミングはおそらく少し役に立たない.これは、価格が 1,000 ポンド未満のほとんどの Windows デバイスに搭載されており、オペレーティング システムのコア機能がすべて含まれています。 Pro ディ