Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • Initial-conversion
  • R4
  • R5
  • SDS-2024-0021-Corrections_for_WS_binding
  • SDS-2024-0043-Replace_mermaid_diagrams_with_images
  • SDS-2024-0043-Replace_mermaid_diagrams_with_images-patch-e578
  • gl-pages
  • main
  • v4.0.0
  • v4.1.0
  • v5.0.0
11 results

Target

Select target project
  • specifications/ts/ts-0020
1 result
Select Git revision
  • Initial-conversion
  • R4
  • R5
  • SDS-2024-0021-Corrections_for_WS_binding
  • SDS-2024-0043-Replace_mermaid_diagrams_with_images
  • SDS-2024-0043-Replace_mermaid_diagrams_with_images-patch-e578
  • gl-pages
  • main
  • v4.0.0
  • v4.1.0
  • v5.0.0
11 results
Show changes
Commits on Source (6)
media/.DS_Store
![oneM2M logo](media/logo.png)
......@@ -6,9 +5,9 @@
| | |
| ------------------------------------------------- | ------------------------------------------------- |
| Document Number | TS-0020-V4.0.0 |
| Document Number | TS-0020-V5.0.0 |
| Document Name: | WebSocket Protocol Binding |
| Date: | 2022-12-01 |
| Date: | 2024-06-24 |
| Abstract: | WebSocket Protocol Binding TS |
| Template Version:23 February 2015 (Do not modify) | Template Version:23 February 2015 (Do not modify) |
......@@ -151,7 +150,7 @@ If the connection is closed temporarily, it shall be reopened when the next requ
Figure 5.2-2 shows an example message flow for a scenario where an ADN-AE registers to its registrar MN-CSE using an unsecured TCP connection without proxy and then continues exchanging non-registration request and response primitives.
![Example message flow with WebSocket binding](media/MessageFlow.svg)
![Example message flow with WebSocket binding](media/MessageFlow.png)
**Figure 5.2-2: Example message flow with WebSocket binding**
......@@ -460,7 +459,7 @@ In special deployment scenarios, e.g. when the communicating oneM2M entities usi
## A.1 AE Registration and creation of a container child resource
Figure A.1-1 illustrates a message flow for registration of an ADN-AE to an IN-CSE as described in clause 7.3.5.2.1 of oneM2M TS-0004 <a href="#_ref_5">[5]</a> with WebSocket mapping and subsequent creation of a &lt;container> child resource.
![Message flow for registration of an ADN-AE to an IN-CSE](media/AdnAERegistration.png)
![Message flow for registration of an ADN-AE to an IN-CSE](media/MessageFlowAERegistration.png)
**Figure A.1-1: Message flow for registration of an ADN-AE to an IN-CSE**
......@@ -608,10 +607,9 @@ The message flow may look as follows:
|**Publication** **history** |**Publication** **history** |**Publication** **history** |
|-|-|-|
|V4.0.0 |Dec 2022 |Release 4 - Publication |
|V5.0.0 |Jun 2024 |Release 5 - Publication |
| | | |
| | | |
| | | |
media/AdnAERegistration.png

122 KiB

media/MessageFlow.png

59 KiB | W: 0px | H: 0px

media/MessageFlow.png

42 KiB | W: 0px | H: 0px

media/MessageFlow.png
media/MessageFlow.png
media/MessageFlow.png
media/MessageFlow.png
  • 2-up
  • Swipe
  • Onion skin
@startuml
hide footbox
skinparam sequenceMessageAlign center
skinparam noteTextAlignment center
'!theme plain
'!theme mars
'autonumber "(#) "
box "ADN" #f8f8f8
participant "ADN-AE" as ADNAE
participant "WS client" as WSclient
end box
box "MN" #f8f8f8
participant "WS server" as WSserver
participant CSE
end box
hnote over ADNAE, WSclient
1) AE wants to start registration
procedure and triggers WebSocket
connection establishment
end hnote
WSclient -> WSserver: 2) Client handshake
WSserver -> WSclient: 3) Server handshake
ADNAE -> WSclient: 4) Request primitive
hnote over WSclient: 5) WebSocket binding
WSclient -> WSserver: 6) WebSocket message
hnote over WSserver: 7) Unpacking request primitive
WSserver -> CSE: 8) Request primitive
hnote over CSE
9) Receiver side processing
of AE registration procedure
end hnote
CSE -> WSserver: 10) Response primitive
hnote over WSserver: 11) WebSocket Binding
WSserver -> WSclient: 12) WebSocket message
hnote over WSclient: 13) Unpacking response primitive
WSclient -> ADNAE: 14) Response primitive
hnote over ADNAE, CSE: 15) non-registration CRUDN operations
@enduml
\ No newline at end of file
This diff is collapsed.
media/MessageFlowAERegistration.png

24.7 KiB

@startuml
hide footbox
skinparam sequenceMessageAlign center
skinparam noteTextAlignment center
'!theme plain
'!theme mars
'autonumber "(#) "
participant AE
participant "IN-CSE" as INCSE
hnote over AE,INCSE
1) TCP connections and
Security Association Establishment
end hnote
AE -> INCSE: 2) WSS client handshake
INCSE -> AE: 3) WSS server handshake
AE -> INCSE: 4) Create AE request primitive
hnote over INCSE
5) Check access controls, process request
and create <AE> resource for originating AE
end hnote
INCSE -> AE: 6) response primitive
AE -> INCSE: 7) Create Container request primitive
hnote over INCSE
8) Check access controls, process request and
create <Container> resource for originating AE
end hnote
INCSE -> AE: 9) Response primitive
hnote over AE,INCSE
10) Other procedures
end hnote
@enduml
\ No newline at end of file
<?xml version="1.0" encoding="us-ascii" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="416px" preserveAspectRatio="none" style="width:460px;height:416px;background:#FFFFFF;" version="1.1" viewBox="0 0 460 416" width="460px" zoomAndPan="magnify"><defs/><g><line style="stroke:#181818;stroke-width:0.5;stroke-dasharray:5.0,5.0;" x1="25" x2="25" y1="36.2969" y2="409.0234"/><line style="stroke:#181818;stroke-width:0.5;stroke-dasharray:5.0,5.0;" x1="287" x2="287" y1="36.2969" y2="409.0234"/><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="32" x="9" y="5"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="18" x="16" y="24.9951">AE</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="60" x="257" y="5"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="46" x="264" y="24.9951">IN-CSE</text><polygon fill="#FEFFDD" points="15,51.2969,298,51.2969,308,70.2969,298,89.2969,15,89.2969,5,70.2969,15,51.2969" style="stroke:#181818;stroke-width:0.5;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="150" x="79.5" y="67.3638">1) TCP connections and</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="224" x="44.5" y="82.4966">Security Association Establishment</text><polygon fill="#181818" points="275,111.6953,285,115.6953,275,119.6953,279,115.6953" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="25" x2="281" y1="115.6953" y2="115.6953"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="158" x="77" y="110.6294">2) WSS client handshake</text><polygon fill="#181818" points="36,140.8281,26,144.8281,36,148.8281,32,144.8281" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="30" x2="286" y1="144.8281" y2="144.8281"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="164" x="74" y="139.7622">3) WSS server handshake</text><polygon fill="#181818" points="275,169.9609,285,173.9609,275,177.9609,279,173.9609" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="25" x2="281" y1="173.9609" y2="173.9609"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="193" x="59.5" y="168.895">4) Create AE request primitive</text><polygon fill="#FEFFDD" points="140,186.9609,433,186.9609,443,205.9609,433,224.9609,140,224.9609,130,205.9609,140,186.9609" style="stroke:#181818;stroke-width:0.5;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="270" x="151.5" y="203.0278">5) Check access controls, process request</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="24" x="142" y="218.1606">and</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="257" x="174" y="218.1606">create &lt;AE&gt; resource for originating AE</text><polygon fill="#181818" points="36,247.3594,26,251.3594,36,255.3594,32,251.3594" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="30" x2="286" y1="251.3594" y2="251.3594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="135" x="88.5" y="246.2935">6) response primitive</text><polygon fill="#181818" points="275,276.4922,285,280.4922,275,284.4922,279,280.4922" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="25" x2="281" y1="280.4922" y2="280.4922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="238" x="37" y="275.4263">7) Create Container request primitive</text><polygon fill="#FEFFDD" points="134,293.4922,440,293.4922,450,312.4922,440,331.4922,134,331.4922,124,312.4922,134,293.4922" style="stroke:#181818;stroke-width:0.5;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="298" x="138" y="309.5591">8) Check access controls, process request and</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="302" x="136" y="324.6919">create &lt;Container&gt; resource for originating AE</text><polygon fill="#181818" points="36,353.8906,26,357.8906,36,361.8906,32,357.8906" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="30" x2="286" y1="357.8906" y2="357.8906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="138" x="87" y="352.8247">9) Response primitive</text><polygon fill="#FEFFDD" points="15,370.8906,298,370.8906,308,381.8906,298,393.8906,15,393.8906,5,381.8906,15,370.8906" style="stroke:#181818;stroke-width:0.5;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="137" x="88" y="386.9575">10) Other procedures</text><!--SRC=[dPBBJiCm44NNyLSCOG6HMedtIwXI56NH1GMHIgnTTqYi9dQmdQhyFUEaX4G8gM9dUwxltEDn8TS8xrgxbTunkv6gvePNOF6ZGINm2QtbESQbp1K8L0xDGAMqmoNkN5kkgFejEJbo1LO8TScbwdSLDvQTyCPfrLGhD12U7aSGCaPkJWfPStA8qz4sd2-cIPQ6m2tC5xHYhF1jGM_984udtM5m7i4oUG6XbKBXf5OMk5e32p8KZP7k4s9hjP3Sro2rZgzAQGiVcY49MrF6uXIciwxH0rn4y9Pb84hfqGhoimNV86lBNXUJwB8JMJG-q8zev7GLGMAGKsmwDlvjhOFQo4ewkSKHqfxdccuKA3R0XQ0PU31dT6adT4st9tiR5b3BG7JkZt4weuBLZH5-h0QqaRbKHAro_xG3r175JUIlrVHiECWrOhZj6HBAGdEbi0UXt1sAuYV6UfI-o_-8xYDu_Ktqn-SvY-2P_gZf4gqRQZWm_W80]--></g></svg>
\ No newline at end of file