TcpClient の NetworkStream を使用して、バイトを .NET サーバーから、Socket 経由で受信する Silverlight クライアントに送信しています。クライアントからの送信は、Socket.SendAsync を介して行われます。
私の質問は、メッセージの長さを送信して自分でいくつかのバイトメッセージをまとめる必要なしに、両側で「一度に」受信できると予想できる最小バイト数はどれくらいかということです。
ありがとう、アンドレイ
TcpClient の NetworkStream を使用して、バイトを .NET サーバーから、Socket 経由で受信する Silverlight クライアントに送信しています。クライアントからの送信は、Socket.SendAsync を介して行われます。
私の質問は、メッセージの長さを送信して自分でいくつかのバイトメッセージをまとめる必要なしに、両側で「一度に」受信できると予想できる最小バイト数はどれくらいかということです。
ありがとう、アンドレイ
絶対にメッセージの長さを送信する必要があります。ネットワーク ストリームとは、まさにそれ、つまり情報のストリームです。基本的に、メッセージの終わりを認識する方法は 3 つあります。
ネットワーク設定によって異なりますが、ネットワークノードのデフォルトの長さは1500バイトであり、ほとんどのモデムはそれを取り除いています。したがって、ほとんどの家庭のパケットサイズは1460バイトです。
あなたの状況に最適なサイズを計算することができます
ただし、ユーザーはいつでも独自の設定を行うことができるため、すべてのクライアントに最適なパケットサイズが得られる保証はありません。