1

TcpClient を使用して古いデバイスに接続しています。最初は、サーバーから送信されたすべての IAC を無視しています。その後どうなりますか?サーバー (つまり、デバイス) は、そのオプションが受け入れられていると想定していますか、それともデフォルト設定になっていると想定していますか?

私が気づいたことの1つは次のとおりです。ほとんどすべてのメッセージの末尾に値 3 を持つバイトがあります。これは正常ですか? それはどの基準に適合しますか?(ゴーアヘッドと関係ある?)

しかし、私が上に書いたこと (つまり、メッセージの最後に 3 バイト) には 1 つだけ例外があります。それは、ある特定のタイプの応答では、最後に 3 バイトが常に欠けていることです。より多くのバイトを取得しようとすると、私は何も得ることができません。ただし、改行 (つまり \n\r) を送信すると、サーバーは残りの応答を最後に 3 バイトで送信します。それも普通ですか?

4

1 に答える 1

0

サーバー、それが行う/しないと言ったオプションを続行する必要があり、通常、送信された要求に関係なく、応答でWILL/WONTを受信するまで、相手側が完全なダム端末として機能することを期待する必要があります。

FF FB 03IAC WILL SUPRESS-GO-AHEADまたは、どんな種類の握手も待たずにいつでも送信し続けることを意味します。それはおそらくIAC DO SUPRESS-GO-AHEAD同様です。

それがあなたの求めているものでない場合は、通信の完全な 16 進ダンプが必要になります。

于 2012-10-06T03:28:46.560 に答える