UDPホールパンチングとは
UDPホールパンチは、同じネットワークに接続された2台のコンピューター間の通信を可能にするために使用されるネットワーク伝送技術です。 ホールパンチは、ネットワークアドレス変換器を介して接続を作成することにより機能します。 それ以外の場合は許可されないネットワーク境界を越えてデータを送信できます。 通常、ピアツーピアネットワーキングやVoice over Internet Protocol(VoIP)伝送などのアプリケーションで使用されるUDPホールパンチは、ネットワーク上の2つの異なるコンピューター間のリンクを形成します。
UDP(User Datagram Protocol)メソッドは、通常、ネットワーク上でデータのリアルタイムパケットを転送するために使用されます。 時間が非常に重要なアプリケーションで使用されます。 言い換えれば、送信される情報が合理的または一定の期間内に受信されなければならない場合。 UDPを使用する最も一般的なアプリケーションは、ボイスオーバー通信またはWebブロードキャストなどのその他の種類のリアルタイムメディアです。通信の遅延または中断により、ブロードキャストの有用性が損なわれます。 たとえば、数秒ごとに任意に切断または一時停止するビデオ接続は、ヘルプよりも刺激を引き起こす可能性があります。
UDPホールパンチは、2台のコンピューターを接続する仮想「トンネル」を作成することで機能します。 この接続を維持するため、情報パケットの一定のストリームが両当事者によって送受信されます。 本質的には、2つのコンピューター間のネットワークを「パンチ」されたトンネルのようなものです。 これにより、コンピューターはほとんど仲介者なしで通信できます。 コンピューター間にある唯一のものは、ネットワークアドレス変換器です。ネットワークアドレス変換器は、ネットワークを介して送信されるパケットのインターネットプロトコル(IP)情報を変更します。
UDPホールパンチ接続を介して送信された情報は、コンピューターネットワークの「ポート」を通過します。 ポートとは、まさにコンピュータが情報を送受信できる穴です。 接続を開いたままにするには、情報が問題のポート接続を常に利用している必要があります。 情報の流れが枯渇すると、ポート接続は自動的に閉じます。 この問題を回避するために、UDPホールパンチは、情報の実際のパケットがない場合に送信されるヌル(または空)パケットを利用します。 これにより、現在ネットワーク上でデータが移動していない場合でも、UDP接続が維持されます。