-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Connection and CASE session management over TCP #30339
Conversation
PR #30339: Size comparison from 1813bfa to b29cdd5 Increases above 0.2%:
Increases (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
Decreases (2 builds for linux)
Full report (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
|
b29cdd5
to
aea49ed
Compare
PR #30339: Size comparison from 42c3af2 to aea49ed Increases above 0.2%:
Increases (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
Decreases (2 builds for linux)
Full report (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
|
aea49ed
to
4ad2876
Compare
PR #30339: Size comparison from e02aa72 to 4ad2876 Increases above 0.2%:
Increases (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
Decreases (2 builds for linux)
Full report (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
|
4ad2876
to
385d9fb
Compare
PR #30339: Size comparison from a3c5d19 to 385d9fb Increases above 0.2%:
Increases (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
Full report (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
|
385d9fb
to
ddc6415
Compare
PR #30339: Size comparison from a3c5d19 to ddc6415 Increases above 0.2%:
Increases (10 builds for cc13x4_26x4, cc32xx, linux, mbed)
Full report (10 builds for cc13x4_26x4, cc32xx, linux, mbed)
|
ddc6415
to
50b6791
Compare
PR #30339: Size comparison from a3c5d19 to 50b6791 Increases above 0.2%:
Increases (2 builds for cc32xx)
Full report (2 builds for cc32xx)
|
50b6791
to
fb6e0f8
Compare
PR #30339: Size comparison from a3c5d19 to fb6e0f8 Increases above 0.2%:
Increases (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
Full report (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
|
fb6e0f8
to
bc47623
Compare
PR #30339: Size comparison from ac920cf to bc47623 Increases above 0.2%:
Increases (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
Full report (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
|
PR #30339: Size comparison from ac920cf to a5ad9d1 Increases above 0.2%:
Increases (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
Decreases (1 build for linux)
Full report (24 builds for cc13x4_26x4, cc32xx, esp32, linux, mbed)
|
0a664ca
to
a931fd9
Compare
PR #30339: Size comparison from 22188b6 to a931fd9 Increases above 0.2%:
Increases (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
Decreases (16 builds for bl702, bl702l, nrfconnect, psoc6, stm32, telink)
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
|
a931fd9
to
9a21070
Compare
PR #30339: Size comparison from b2234c2 to 9a21070 Increases above 0.2%:
Increases (6 builds for cc32xx, mbed, qpg, stm32)
Decreases (1 build for stm32)
Full report (6 builds for cc32xx, mbed, qpg, stm32)
|
9a21070
to
06cf12d
Compare
PR #30339: Size comparison from b2234c2 to 06cf12d Increases above 0.2%:
Increases (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
Decreases (16 builds for bl702, bl702l, nrfconnect, psoc6, stm32, telink)
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
|
06cf12d
to
6335b79
Compare
PR #30339: Size comparison from 6cdb5da to 6335b79 Increases above 0.2%:
Increases (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
Decreases (16 builds for bl702, bl702l, nrfconnect, psoc6, stm32, telink)
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
|
Some of the MCU based platforms had TCP enabled on them without having to use it. Disabling the flag before landing the TCP PR project-chip#30339 to avoid increase in code size. We can assess the need to enable TCP on these platforms later.
Some of the MCU based platforms had TCP enabled on them without having to use it. Disabling the flag before landing the TCP PR project-chip#30339 to avoid increase in code size. We can assess the need to enable TCP on these platforms later.
Some of the MCU based platforms had TCP enabled on them without having to use it. Disabling the flag before landing the TCP PR #30339 to avoid increase in code size. We can assess the need to enable TCP on these platforms later.
6335b79
to
14dbefc
Compare
PR #30339: Size comparison from aec50d4 to 14dbefc Increases above 0.2%:
Increases (30 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, linux, mbed, nrfconnect, nxp, qpg, stm32)
Decreases (14 builds for bl602, bl702, bl702l, nrfconnect, stm32)
Full report (30 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, linux, mbed, nrfconnect, nxp, qpg, stm32)
|
14dbefc
to
2daa081
Compare
PR #30339: Size comparison from ffaeaa1 to 2daa081 Increases above 0.2%:
Increases (18 builds for cc13x4_26x4, cc32xx, mbed, nrfconnect, nxp, qpg, stm32)
Decreases (4 builds for nrfconnect, stm32)
Full report (18 builds for cc13x4_26x4, cc32xx, mbed, nrfconnect, nxp, qpg, stm32)
|
2daa081
to
a518945
Compare
PR #30339: Size comparison from ffaeaa1 to a518945 Increases above 0.2%:
Increases (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
Decreases (21 builds for bl602, bl702, bl702l, esp32, nrfconnect, psoc6, stm32, telink)
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
|
a518945
to
81ac82f
Compare
Add TCPConnect()/TCPDisconnect() API for explicit connection setup. Currently, connecting to a peer is coupled with sending a message to the peer. This decouples the two and creates a clear API for connecting to a peer address. Goes along with the existing Disconnect() API. This would be essential during activation of retained sessions by solely connecting to the peer and associating with the retained session. Surface Connection completion and Closure callbacks and hook them through SessionManager(TransportMgr delegate) and CASESession. Mark SecureSession as defunct on connection closures. Modify ActiveConnectionState in TCPBase to hold state for each connection, so that it is able to handle the various control flow paths. Associate a session with a connection object. Associate the PeerAddress with the session early. Pass the PeerAddress in the Find APIs. This helps check against the correct TransportType when searching for a Sesssion in the SessionTable. Add a `large payload` flag in EstablishSession() and Session lookup functions to create/associate with the correct session and transport. Have default configurations for TCP in a separate TCPConfig.h. Refactor echo_requester.cpp and echo_responder.cpp to use the session associated with the connection. Handle Connection closure at ExchangeMgr and uplevel to corresponding ExchangeContext using the corresponding session handle. Add tests around connection establishment in TestTCP.
81ac82f
to
6ab7de1
Compare
PR #30339: Size comparison from 335ae19 to 6ab7de1 Increases above 0.2%:
Increases (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
Decreases (21 builds for bl602, bl702, bl702l, esp32, nrfconnect, psoc6, stm32, telink)
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
|
Currently, connecting to a peer is coupled with sending a message to the peer.
This decouples the two and creates a clear API for connecting to a peer address. Goes along with the existing Disconnect() API. This would be essential during activation of retained sessions by solely connecting to the peer and associating with the retained session.
Surface Connection completion and Closure callbacks and hook them through SessionManager(TransportMgr delegate) and CASESession.
Modify ActiveConnectionState in TCPBase to hold state for each connection, so that it is able to handle the various control flow paths.
Fixes #29536
Fixes #29696
Partially fixes #29538