1

ローカル エリア ネットワークで情報を交換する必要がある 2 つのアプリケーションがあります。最初のアプリケーションは通信に TCP を使用し、2 番目のアプリケーションは UDP を使用します。両方のアプリケーションを直接リンクできますか? 答えが「いいえ」の場合、それらをリンクする方法を説明してください。

(宿題から)

答えはノーだと思います。それらの間にトランスレータまたはミドルウェアを使用する必要があります。しかし、何?

4

1 に答える 1

2

おわかりのように、2 種類の接続を単純に 1 つに結合することはできません。TCP はステートフル接続であり、接続を確立するために 2 台のコンピューターを必要とします。一方、1 台のコンピューターのみを必要とするステートレス/コネクションレス接続である UDP とは対照的に、send and forget スタイルです。

それらが互いに通信したい場合は、ミドルウェアが必要です。

TCP アプリケーションには、TCP クライアントTCP サーバー が必要です。ミドルウェアには、TCP アプリケーションのクライアントをリッスンして接続を確立する TCP サーバーと、TCP アプリケーションのサーバーとの接続を確立するTCPクライアントが必要です。

これで、ミドルウェアは TCP アプリケーションと完全に通信できます。

UDPアプリケーションでこれを行うには、UDPアプリケーションからの受信データをリッスンするために特定のポートでUDPをリッスンし、UDPを介してUDPアプリケーションに送信する必要があります(UDPアプリケーションはそれをリッスンする必要がありますポート)

于 2012-06-10T21:13:21.040 に答える