From 7f9b972d7fb0e952acf1d06fe2f95ecdc93ea13a Mon Sep 17 00:00:00 2001
From: ID Bot The proxy verifies the presence of the Multicast-Timeout Option, as a confirmation that the client is fine to receive multiple CoAP responses matching with the same original request.¶
-If the Multicast-Timeout Option is not present, the proxy MUST stop processing the request and MUST reply to the client with a 4.00 (Bad Request) response. The response MUST include a Multicast-Timeout Option with an empty (zero-length) value, indicating that the Multicast-Timeout Option was missing and has to be included in the request. As per Section 5.9.2 of [RFC7252] The response SHOULD include a diagnostic payload.¶
The proxy retrieves the value T' from the Multicast-Timeout Option, and then removes the option from the client's request.¶
@@ -1941,7 +1941,7 @@This section clarifies how the Multicast-Timeout Option is effective also in such a context, in order for:¶
The proxy to explicitly reveal itself as a reverse-proxy to the client.¶
+The proxy to effectively reveal itself as a reverse-proxy to the client.¶
The client to indicate to the proxy of being aware that it is communicating with a reverse-proxy, and for how long it is willing to receive responses to a proxied group request.¶
@@ -1956,7 +1956,7 @@If the proxy receives a CoAP request and determines that it should be forwarded to a group of servers over IP multicast, then the proxy performs the steps defined in Section 5.2.¶
-In particular, when such a request does not include a Multicast-Timeout Option, the proxy explicitly reveals itself as a reverse-proxy, by sending a 4.00 (Bad Request) response including a Multicast-Timeout Option with empty (zero-length) value.¶
+In particular, when such a request does not include a Multicast-Timeout Option, the proxy effectively reveals itself as a reverse-proxy, by sending a 4.00 (Bad Request) response including a Multicast-Timeout Option with value 0 (which is ultimately represented with an empty option value).¶
The proxy processes the CoAP responses forwarded back to the client as defined in Section 5.4, with the following additions.¶
The HTTP Multicast-Timeout header field (see Section 11.2) is used for carrying the content otherwise specified in the CoAP Multicast-Timeout Option defined in Section 2.¶
Using the Augmented Backus-Naur Form (ABNF) notation of [RFC5234] and including the core ABNF syntax rule DIGIT (decimal digits) defined by that specification, the HTTP Multicast-Timeout header field value is as follows.¶
Multicast-Timeout = *DIGIT¶
-When translating a CoAP message into an HTTP message, the HTTP Multicast-Timeout header field is set with the content of the CoAP Multicast-Timeout Option, or is left empty in case the option is empty.¶
-The same applies in the opposite direction, when translating an HTTP message into a CoAP message.¶
+The empty header field is equivalent to the header field conveying the value 0.¶
+When translating a CoAP message into an HTTP message, the HTTP Multicast-Timeout header field is set with the content of the CoAP Multicast-Timeout Option, or is left empty in case the option is empty.¶
+When translating an HTTP message into a CoAP message, the CoAP Multicast-Timeout Option is set with the content of the HTTP Multicast-Timeout header field, or is left empty in case the header field is empty.¶
Improved description on using Proxy-Cri and Proxy-Scheme-Number.¶
+Multicast-Timeout Option set to 0 ultimately yields an empty value.¶
Revised the examples of message exchange with a reverse-proxy.¶
+Improved description on using Proxy-Cri and Proxy-Scheme-Number.¶
Fixes in the IANA considerations.¶
+Revised the examples of message exchange with a reverse-proxy.¶
Editorial fixes and improvements.¶
+Fixes in the IANA considerations.¶
+Editorial fixes and improvements.¶