Giter Site home page Giter Site logo

Comments (8)

ty4tw avatar ty4tw commented on August 15, 2024

GatewayTester is opened to the public. It is in the repo.
See MQTTSNGateway/GatewayTester/README.md

from paho.mqtt-sn.embedded-c.

t-kitagw avatar t-kitagw commented on August 15, 2024

Thank you very much for your information!
I'll check it out soon.

from paho.mqtt-sn.embedded-c.

t-kitagw avatar t-kitagw commented on August 15, 2024

Hi all,

Thank you for your giving information other day.
As I tried out the GW to send DISCONNECT to unknown clients, I recognized your proposal was really good!

I have a question.
When a client periodically sends PUBLISH (QoS0) in a shorter period than T_ADV (interval time of ADVERTISE) and also when GW is down completely, the client doesn't recognize it's down for more than 15 minutes?
The value 15 minutes is recommended value for T_ADV in MQTT-SN specification.

I think this interval experimentally obtained is too longer than the purpose of MQTT's PING specification "shorter than TCP time out."
One of my idea is to send PINGREQ and PINGRESP between SN-Client and GW.
The similar procedure is also proposed in MQTT-SN specification 6.11 "Keep Alive and PING Procedure."
In case of MQTT, even when client sends messages in a shorter period than keep alive time, the broker needn't send PINGREQ to the client due to the implementation on TCP.

As a result, my idea is sending PINGREQ from the SN-Clients to the GW during keep alive interval in spite of previous client's transmission.
I guess PINGREQ from GW to the SN-Clients is also good for keeping connection.

I'm looking forward your feedback.

Kitagawa

ping_between_client_and_gw

from paho.mqtt-sn.embedded-c.

ty4tw avatar ty4tw commented on August 15, 2024
  1. T_ADV is configurable. so you can make it shorter as you want.
  2. Anyway you have to send PINGREQ. otherwise Broker disconnects the client.
    you can set Keep Alive time as you want.
  3. I think that using QoS1 is a answer of this case.

from paho.mqtt-sn.embedded-c.

ty4tw avatar ty4tw commented on August 15, 2024

Dose this issue still open ?

from paho.mqtt-sn.embedded-c.

t-kitagw avatar t-kitagw commented on August 15, 2024

Thank you for your feedback and sorry for my late reply.

  1. T_ADV is configurable. so you can make it shorter as you want.

I agree with you, but too short T_ADV makes bandwidth congestion in the network.
For clients and GW, It may or may not be a serious problem.

  1. Anyway you have to send PINGREQ. otherwise Broker disconnects the client.
    you can set Keep Alive time as you want.
  2. I think that using QoS1 is a answer of this case.

Exactly, it is one of the solution.
I thought My proposal might be helpful for QoS0 and made fewer message sequence than QoS1.

from paho.mqtt-sn.embedded-c.

ty4tw avatar ty4tw commented on August 15, 2024

I think this issue should be discussed in [mqtt] mailing list.

from paho.mqtt-sn.embedded-c.

t-kitagw avatar t-kitagw commented on August 15, 2024

Thank you for your advice.
It's concerned about GW's behavior, so I thought that I should discuss here.
I close this issue.

from paho.mqtt-sn.embedded-c.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.