ホームページ » の仕方 » TCPとUDPの違いは何ですか?

    TCPとUDPの違いは何ですか?

    ルータでポート転送を設定するとき、またはファイアウォールソフトウェアを設定するときに、TCPとUDPへの参照を見たことがあるでしょう。これら2つのプロトコルは異なる種類のデータに使用されます.

    TCP / IPは、インターネットおよびほとんどのローカルネットワークを介して通信するためにデバイスによって使用される一連のプロトコルです。それは、そのオリジナルのプロトコルのうちの2つ、Transmission Control Protocol(TCP)とInternet Protocol(IP)にちなんで名付けられました。 TCPは、ネットワーク上で情報パケットの順序付きでエラーチェック済みのストリームを配信(および受信)する方法をアプリに提供します。 User Datagram Protocol(UDP;ユーザデータグラムプロトコル)は、エラーチェックを廃止することで、より高速な情報ストリームを配信するためにアプリで使用されています。いくつかのネットワークハードウェアやソフトウェアを設定するときは、違いを知る必要があるかもしれません。.

    彼らが共通して持っているもの

    TCPとUDPはどちらも、インターネット上でパケットと呼ばれるデータを送信するためのプロトコルです。どちらのプロトコルもIPプロトコルの上に構築されています。つまり、TCPとUDPのどちらでパケットを送信しているかに関係なく、そのパケットはIPアドレスに送信されます。これらのパケットは、コンピュータから中間ルータに、そして宛先に転送されるため、同様に扱われます。.

    TCPとUDPは、IPの上で動作する唯一のプロトコルではありません。しかし、それらは最も広く使われています.

    TCPのしくみ

    TCPはインターネットで最も一般的に使用されているプロトコルです。.

    ブラウザでWebページを要求すると、コンピュータはWebサーバのアドレスにTCPパケットを送信し、Webページを自分に返信するように要求します。 WebサーバーはTCPパケットのストリームを送信して応答し、WebブラウザはこれをステッチしてWebページを形成します。リンクをクリックしたり、サインインしたり、コメントを投稿したり、その他の操作を行ったりすると、WebブラウザはTCPパケットをサーバーに送信し、サーバーはTCPパケットを返信します。.

    TCPは信頼性に関するもので、TCPで送信されたパケットは追跡されるため、データが転送中に失われたり破損したりすることはありません。ネットワーク障害があってもファイルのダウンロードが破損しないのはこのためです。もちろん、受信者が完全にオフラインの場合、あなたのコンピュータはあきらめて、リモートホストと通信できないというエラーメッセージが表示されます。.

    TCPはこれを2つの方法で実現します。まず、パケットに番号を付けて順序付けます。次に、受信者に、メッセージを受信したことを示す応答を送信者に送り返すことでエラーチェックを行います。送信者が正しい応答を得られない場合は、受信者が確実に正しく受信するようにパケットを再送信できます。.

    プロセスエクスプローラや他のシステムユーティリティはプロセスが作る接続の種類を表示することができます - ここで私たちはさまざまなウェブサーバーへの開かれたTCP接続でChromeブラウザを見ることができます.

    UDPのしくみ

    UDPプロトコルはTCPと同様に機能しますが、すべてのエラーチェック機能を無効にします。往復の通信はすべて待ち時間を発生させ、物事を遅くします。.

    アプリがUDPを使用する場合、パケットは受信者に送信されるだけです。送信者は受信者がパケットを受信したことを確認するのを待たずに、次のパケットを送信し続けるだけです。受信者があちこちでいくつかのUDPパケットを逃した場合、それらは単に失われます - 送信者はそれらを再送しません。このすべてのオーバーヘッドを失うことは、デバイスがより速く通信できることを意味します.

    UDPは、速度が望ましくエラー訂正が不要な場合に使用されます。たとえば、UDPはライブ放送やオンラインゲームによく使用されます。.

    たとえば、TCPの代わりにUDPを使用してブロードキャストされることが多いライブビデオストリームを見ているとしましょう。サーバは見ているコンピュータにUDPパケットの一定のストリームを送信するだけです。数秒間接続が途絶えた場合、ビデオが一時的にフリーズしたり、ぎこちなくなったりした後、ブロードキャストの現在のビットにスキップすることがあります。パケットの損失が少ない場合は、ビデオが欠落データなしで再生され続けるため、ビデオまたはオーディオがしばらく歪むことがあります。.

    これはオンラインゲームでも同様に機能します。いくつかのUDPパケットを見逃した場合、新しいUDPパケットを受信したときにプレイヤーのキャラクターがマップ全体にテレポートするように見えることがあります。あなたがそれらを逃した場合、ゲームはあなたなしで続行されるので、古いパケットを要求しても意味がありません。重要なのは、ゲームサーバーで今何が起きているかということだけで、数秒前に起きたことではありません。 TCPの誤り訂正を捨てることはゲーム接続をスピードアップし、待ち時間を減らすのを助けます.

    だから何?

    アプリケーションがTCPとUDPのどちらを使用するかは開発者次第であり、選択はアプリケーションが何を必要としているかによって異なります。ほとんどのアプリケーションはTCPのエラー訂正と堅牢性を必要としますが、一部のアプリケーションはUDPの速度と削減されたオーバーヘッドを必要とします。 Wiresharkのようなネットワーク解析ツールを起動すると、さまざまな種類のパケットが行き来することがわかります。.

    あなたがネットワーク管理者でもソフトウェア開発者でもない限り、これはあなたにあまり影響を与えないはずです。ルーターまたはファイアウォールソフトウェアを設定していて、アプリケーションがTCPまたはUDPを使用しているかどうかわからない場合は、通常、ルーターまたはファイアウォールにTCPとUDPの両方のトラフィックに同じルールを適用させることができます。.