Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Timetravel 2024-08-14 snapshot #48

Open
wants to merge 1 commit into
base: timetravel-2024-08-08
Choose a base branch
from

Conversation

sthagen
Copy link
Contributor

@sthagen sthagen commented Aug 27, 2024

Next warp 2024-08-08 ← 2024-08-14

@sthagen sthagen added documentation Improvements or additions to documentation editorial Mostly editorial changes. labels Aug 27, 2024
@sthagen sthagen self-assigned this Aug 27, 2024
@sthagen
Copy link
Contributor Author

sthagen commented Aug 27, 2024

Diff of google produced markdown:

--- mqtt-sn-v2.0-wd-snapshot-20240808T201000Z.md	2024-08-08 22:11:00
+++ mqtt-sn-v2.0-wd-snapshot-20240814T220000Z.md	2024-08-15 00:14:17
@@ -859,7 +859,7 @@
 
 Unless stated otherwise all variable length UTF-8 encoded strings can have any length in the range 0 to 65,535 bytes.
 
-| Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
+| Byte \\ Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | byte 1 …. | UTF-8 encoded character data, if length \> 0\. |  |  |  |  |  |  |  |
 
\ No newline at end of file
@@ -883,7 +883,7 @@
 
 For example, the string A𪛔 which is LATIN CAPITAL Letter A followed by the code point U+2A6D4 (which represents a CJK IDEOGRAPH EXTENSION B character) is encoded as follows: 
 
-| Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
+| Byte \\ BitBit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | byte 1 | ‘A’ (0x41) |  |  |  |  |  |  |  |
 |  | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
\ No newline at end of file
@@ -1182,6 +1182,8 @@
 This section specifies the format of the individual MQTT-SN packets.
 
 ### **3.1.1 ADVERTISE \- Gateway Advertisement** {#3.1.1-advertise---gateway-advertisement}
+
+![][image2]
 
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
\ No newline at end of file
@@ -1221,6 +1223,8 @@
 
 ### **3.1.2 SEARCHGW \- Search for A Gateway** {#3.1.2-searchgw---search-for-a-gateway}
 
+![][image3]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1249,6 +1253,8 @@
 
 ### **3.1.3 GWINFO \- Gateway Information** {#3.1.3-gwinfo---gateway-information}
 
+![][image4]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1277,6 +1283,8 @@
 The *GwAdd* field has a variable length and contains the address of a Gateway. Its length depends on the type of network over which MQTT-SN operates and is specified by the Length byte.  Optional, only included if the packet is sent by a client.
 
 ### **3.1.4 CONNECT \- Connection Request** {#3.1.4-connect---connection-request}
+
+![][image5]
 
 | Bit | 7 | 6 |  | 5 |  | 4 | 3 |  | 2 | 1 |  | 0 |  |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
\ No newline at end of file
@@ -1511,6 +1519,8 @@
 
 ### **3.1.5 CONNACK \- Connect Acknowledgement** {#3.1.5-connack---connect-acknowledgement}
 
+![][image6]
+
 | Bit | 7 | 6 |  | 5 |  | 4 |  | 3 |  | 2 |  | 1 |  | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1611,6 +1621,8 @@
 
 ### **3.1.6 AUTH \- Authentication Exchange** {#3.1.6-auth---authentication-exchange}
 
+![][image7]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1659,6 +1671,8 @@
 Refer to [section 4.11](\#4.11-enhanced-authentication) for more information about extended authentication.
 
 ### **3.1.7 REGISTER \- Register Topic Alias Request** {#3.1.7-register---register-topic-alias-request}
+
+![][image8]
 
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
\ No newline at end of file
@@ -1696,6 +1710,8 @@
 
 ### **3.1.8 REGACK \- Register Topic Alias Response** {#3.1.8-regack---register-topic-alias-response}
 
+![][image9]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 |  | 1 |  | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1748,6 +1764,8 @@
 
 ### **3.1.10 PUBWOS \- Publish Without Session** {#3.1.10-pubwos---publish-without-session}
 
+![][image10]
+
 | Bit | 7 | 6 |  | 5 |  | 4 | 3 |  |  | 2 |  | 1 | 0 |  |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | ----- | :---: | ----- | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1802,6 +1820,8 @@
 
 ### **3.1.11 PUBLISH \- QoS 0** {#3.1.11-publish---qos-0}
 
+![][image11]
+
 | Bit | 7 | 6 |  | 5 |  | 4 | 3 |  |  | 2 |  | 1 | 0 |  |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | ----- | :---: | ----- | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1845,6 +1865,8 @@
 
 ### **3.1.12 PUBLISH \- QoS 1 and 2** {#3.1.12-publish---qos-1-and-2}
 
+![][image12]
+
 | Bit | 7 | 6 |  | 5 |  | 4 | 3 |  |  | 2 |  | 1 | 0 |  |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | ----- | :---: | ----- | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1943,6 +1965,8 @@
 
 ### **3.1.13 PUBACK – Publish Acknowledgement** {#3.1.13-puback-–-publish-acknowledgement}
 
+![][image13]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -1973,6 +1997,8 @@
 
 ### **3.1.14 PUBREC (QoS 2 delivery part 1\)** {#3.1.14-pubrec-(qos-2-delivery-part-1)}
 
+![][image14]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2003,6 +2029,8 @@
 
 ### **3.1.15 PUBREL (QoS 2 delivery part 2\)** {#3.1.15-pubrel-(qos-2-delivery-part-2)}
 
+![][image15]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2033,6 +2061,8 @@
 
 ### **3.1.16 PUBCOMP \- Publish Complete (QoS 2 delivery part 3\)** {#3.1.16-pubcomp---publish-complete-(qos-2-delivery-part-3)}
 
+![][image16]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2063,6 +2093,12 @@
 
 ### **3.1.17 SUBSCRIBE \- Subscribe Request** {#3.1.17-subscribe---subscribe-request}
 
+![][image17]
+
+Or
+
+![][image18]
+
 | Bit | 7 | 6 |  | 5 |  |  | 4 | 3 |  | 2 | 1 | 0 |  |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | ----- | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2132,6 +2168,8 @@
 
 ### **3.1.18 SUBACK \- Subscribe Acknowledgement** {#3.1.18-suback---subscribe-acknowledgement}
 
+![][image19]
+
 | Bit | 7 | 6 |  | 5 |  | 4 | 3 |  | 2 | 1 |  | 0 |  |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2172,6 +2210,12 @@
 Byte 8 in the SUBACK packet holds the Reason code in response to the SUBSCRIBE packet. The SUBACK Reason Codes are shown in Table 9: Reason Code Values.The Server sending the SUBACK packet MUST use one of the SUBACK Reason Codes.
 
 ### **3.1.19 UNSUBSCRIBE \- Unsubscribe Request** {#3.1.19-unsubscribe---unsubscribe-request}
+
+![][image20]
+
+Or:
+
+![][image21]
 
 | Bit | 7 | 6 |  | 5 |  | 4 | 3 |  |  |  | 2 | 1 | 0 |  |
 | ----- | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | ----- | :---: | :---: |
\ No newline at end of file
@@ -2223,6 +2267,8 @@
 
 ### **3.1.20 UNSUBACK \- Unsubscribe Acknowledgement** {#3.1.20-unsuback---unsubscribe-acknowledgement}
 
+![][image22]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2249,6 +2295,8 @@
 
 ### **3.1.21 PINGREQ \- Ping Request** {#3.1.21-pingreq---ping-request}
 
+![][image23]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2281,6 +2329,8 @@
 
 ### **3.1.22 PINGRESP \- Ping Response** {#3.1.22-pingresp---ping-response}
 
+![][image24]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2317,6 +2367,8 @@
 
 ### **3.1.23 DISCONNECT \- Disconnect Notification** {#3.1.23-disconnect---disconnect-notification}
 
+![][image25]
+
 | Bit | 7 | 6 |  | 5 |  | 4 |  | 3 |  | 2 |  | 1 |  | 0 |  |  |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2398,6 +2450,8 @@
 
 ### **3.1.24 WAKEUP \- Wake up request**
 
+![][image26]
+
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | Byte 1 | Length |  |  |  |  |  |  |  |
\ No newline at end of file
@@ -2416,6 +2470,8 @@
 The Client MAY choose to follow the AWAKE procedure in response to receiving a WAKEUP packet \[MQTT-SN-3.1.21.4-2\]. 
 
 ### **3.1.25 Forwarder Encapsulation** {#3.1.25-forwarder-encapsulation}
+
+![][image27]
 
 | Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
\ No newline at end of file
@@ -2462,7 +2518,7 @@
 
 ### **3.1.26 Protection Encapsulation** {#3.1.26-protection-encapsulation}
 
-### 
+### **![][image28]**
 
 | Bit | 7 | 6 |  | 5 |  | 4 | 3 |  | 2 | 1 |  | 0 |
 | ----- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
\ No newline at end of file
@@ -2672,11 +2728,11 @@
 
 The CONNECT packet contains flags to communicate to the gateway that Auth interactions, or WILL interactions should take place.
 
-![][image2]
+![][image29]
 
 Figure 3a: Connect procedure (without Auth flag not Will flag set or no further authentication data required)
 
-![][image3]
+![][image30]
 
 Figure 3b: Connect procedure (with Auth flag set and additional authentication data required)
 
\ No newline at end of file
@@ -3165,7 +3221,7 @@
 
 The architectures described below are meant as examples and are not exhaustive.
 
-![][image4]
+![][image31]
 
 Figure 1: MQTT-SN Architecture
 
\ No newline at end of file
@@ -3175,9 +3231,9 @@
 
 Although the implementation of the transparent Gateway is simpler when compared to the one of an aggregating Gateway, it requires the MQTT server to support a separate connection for each active client. Some MQTT server implementations might impose a limitation on the number of concurrent connections that they support.
 
-          ![A close up of a mapDescription automatically generated][image5]
+          ![A close up of a mapDescription automatically generated][image32]
 
-![][image6]
+![][image33]
 
 Figure XX2: Transparent and Aggregating Gateway scenarios
 
\ No newline at end of file
@@ -3185,21 +3241,21 @@
 
 Instead of having a MQTT connection for each connected client, an aggregating Gateway will have only one MQTT connection to the Server. All packet exchanges between a MQTT-SN client and an aggregating Gateway end at the Gateway. The Gateway then decides which information will be given further to the MQTT BrokerServer. Although its implementation is more complex than the one of a transparent Gateway, an aggregating Gateway may be helpful in case of WSNs with a very large number of SAs because it reduces the number of MQTT connections that the Gateway must support concurrently.
 
-![][image7]
+![][image34]
 
 Figure XX: Aggregating Gateway scenario
 
 ### **4.11.3 Forwarder encapsulator**
 
-![][image8]
+![][image35]
 
-Figure XX: Forwarder encapsulator with TransparentGateway scenario![][image9]
+Figure XX: Forwarder encapsulator with TransparentGateway scenario![][image36]
 
 Figure XX: Forwarder encapsulator with Aggregating Gateway scenario
 
 ### **4.13.4 MQTT-SN broker**
 
-![][image10]
+![][image37]
 
 Figure XX: MQTT-SN broker scenario
 
\ No newline at end of file
@@ -3239,7 +3295,7 @@
 | **AWAKE** | The client is partially engaged in an ongoing session; it is obliged to not send ANY packets other than those involved in the receipt of PUBLISH packets (PUBACK, PUBREC, PUBCOMP, REGACK) or a DISCONNECT to transition to **DISCONNECTED**. The client transitions back to the **ASLEEP** state on receipt of a PINGRESP packet or **LOST** (by way of supervised gateway timers for the possible PUBACK, PUBREC, PUBCOMP or REGACK packets to be received from the Client). | **ASLEEP DISCONNECTED LOST** |
 | **LOST** | The client is considered offline and not able to receive packets until it has re-established a session with the GW by way of a CONNECT. The gateway **must not** attempt to send packets to a client in the **LOST** state**.** Any packets received from a client whose state is **LOST** should not be processed and a DISCONNECT with error should be sent in response, unless the packets received are PUBLISH WITHOUT SESSION or PUBLISH QoS \-1. Session state may exist on the GW for a client in the **LOST** state. | **ACTIVE** |
 
-![][image11]
+![][image38]
 
 Figure 4:  The Server vView of the Client State
 
\ No newline at end of file
@@ -3396,7 +3452,7 @@
 
 The gateway should attempt to make the best effort to reuse the same topic alias mappings that existed during any initial associated ACTIVE states.
 
-![][image12]
+![][image39]
 
 Figure 5: Awake ping packet flush
 
\ No newline at end of file
@@ -3798,24 +3854,78 @@
# and quite some inline image data diffs not fitting in the 64k limit of GitHub comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation editorial Mostly editorial changes.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants