(toppers-users 3380) Re: tinet_cfg 処理が Unknown Exception で終了

M.Asada m.asada @ vxstd.com
2011年 1月 24日 (月) 08:22:02 JST


阿部先生

回答ありがとうございます。


> 分離されない可能性があるだけで、タイムアウトまで時間がかかりますが、
> 次の接続要求を受信できない事ではありません。

TINETサンプルプログラムのWWWサーバーですが www_srv 関数
にて次のような処理になっています。

(1) TCP_ACP_CEP(接続要求待ち)
(2) parse_request(リクエスト解析)
(3) tcp_sht_cep(データ送信の終了)
(4) tcp_cls_cep(通信端点のクローズ)

こちらで、何度かページの表示を繰り返すと、(4) の tcp_cls_cep から
処理が返ってこない状況が発生します。
ですので、次の接続要求が処理できません。


確かに、TINET自身は接続要求を受け取っているようです。
というのは、TCPのトレース出力を有効にすると、クライアントからの
SYN は表示されないのですが、SYN に対する応答が、以下のように
返されます。

=O 260.480=c:-- s:-- f:-----:--A-R-- s: 0 a:1042278809 w: 0 l: 0>

Wireshark で見ると、[SYN] に対して [RST, ACK] が返されており、
トレース出力と一致します。

こちらの環境では TW 用通信端点の数を増やしても現象が回避
できないようなので、もうすこし調査してみます。
−−−
浅田