Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page

TCPパケット通信におけるパケット欠落対策について

弊社作成のクライアント側アプリケーションでルネサス製「組み込み用TCP/IP M3S-T4-Tiny」ライブラリを使い、キーエンスPLCサーバとTCPパケット通信を行っています。
現在、クライアントとサーバ間でTCPパケットの欠落が発生するとTCPパケット通信が回復しない状況が発生しています。
WireSharkでネットのログを確認すると、弊社クライアントからは「TCP Retransmission」が送信されます。
受信側のキーエンスPLC からは「TCP DUP ACK」が送信されます。
この2つが延々と繰り返されて通信が回復しません。
弊社クライアント側では、通信断を検知するとパワーオンリセットを実行し電源OFF/ON状態からの再スタートを行っています。
それでも通信は回復しません。
この状態でキーエンスPLCサーバを電源OFF/ON すると通信が回復します。

そこで質問なのですが、
パケットの欠落時のアプリ側の対策はどのようにすれば良いかご教授いただけますでしょうか。
  • こんにちは

    「パケットの欠落時のアプリ側の対策はどのようにすれば良いか」の「アプリ側」というのは「M3S-T4-Tiny」を使ったクライアント側なのだと思いますが、「パケットの欠落時の対策」を一般的にはどうすべきかという質問でしょうか?
    それとも、パケット欠落時にアプリが行うことは決まっているけれど、「M3S-T4-Tiny」をどう使ったらよいかという質問でしょうか?
  • じまさん
    リプライありがとうございます!
    ご指摘とおり、「アプリ側」というのは「M3S-T4-Tiny」を使ったクライアント側です。

    ①「パケットの欠落時の対策」を一般的にはどうすべきかという質問でしょうか?
    →一般的には、以下であるとの認識で正しいでしょうか?
     ・ライブラリ TCP/IP 層が再送などの対応をしている。

    ②パケット欠落時にアプリが行うことは決まっているけれど、「M3S-T4-Tiny」をどう使ったらよいかという質問でしょうか?
    →アプリのライブラリ使い方としては以下の認識で正しいでしょうか?
     ・アプリは callback によりライブラリからエラーがあがってきた場合に通信端点の切断(tcp_cls_cep)、接続(tcp_con_cep)を行う。
    ※r_t4_rx/doc のサンプルに記載のクライアント側処理を実装しております。

    ③上記に記載のようにアプリ(クライアント)を実装しておりますが、パケットの欠落後、回復しません。( callback があがってこないで、TCP/IP 層で Retransmit と TCP ACKed unseen segment を繰り返しています)
    どう対応すればよいのか途方に暮れております。
    お忙しいところ大変申し訳ございません。ご教授いただけますと幸いです。
  • In reply to Felixcat:

    こんにちは

    もしかしたら参考になるかもしれないと思うスレッドがありました。
    japan.renesasrulz.com/.../rx63n-t4

    あとは、パケット欠落時には100%通信が回復しないかとか、使っているマイコン名は何でしょうか?
  • In reply to じま:

    じまさん、Reply ありがとうございます。

    ①もしかしたら参考になるかもしれないと思うスレッドがありました。
    ありがとうございます!!参考にさせていただきます。

    ②パケット欠落時には100%通信が回復しないか
    ログによると通常は再送信(Retransmit)で回復しています。
    ですが、回復しないケースが発生すると、2度と通信回復しません。
    この場合、クライアント側はそのままで、サーバー側を電源OFF/ON すると回復します。

    ③使っているマイコン名は何でしょうか?
    製品番号:R5F565NEDDFP#30
    MCU 32-Bit RX RXv2 CISC 2MB Flash 3.3V 100-Pin LFQFP Tray
    となります。

    よろしくお願いいたします
  • In reply to Felixcat:

    こんにちは

    >ログによると通常は再送信(Retransmit)で回復しています。
    >ですが、回復しないケースが発生すると、2度と通信回復しません。
    >この場合、クライアント側はそのままで、サーバー側を電源OFF/ON すると回復します。

    回復しない場合の発生条件を特定して対処するしかなさそうですが。。。

    M3S-T4-Tiny のバージョンによると思いますが、注意事項がいくつか公開されているのでこれらも念のため確認してみてはどうでしょう。
    www.renesas.com/.../keyword-search.html

Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page