mirror of
https://github.com/espressif/openthread.git
synced 2026-06-05 21:14:49 +00:00
65a8d520b1
This commit adds support for TLS in the TCP CLI tool, along with a test of TLS functionality. The main purpose of this is to provide an example of how to use mbedTLS with TCPlp to run TLS. I felt it is important to have an example because I expect that many applications that use TCP, particularly those in which a Thread device exchanges data with a device outside the Thread mesh, will need to run TLS over TCP for security reasons. A secondary benefit is to add TCP functionality to the TCP CLI tool. Additionally, by having the example code be part of a "real" application (the CLI tool), there is less risk of the code going stale as OpenThread evolves. I added an "expects" test for the TLS functionality in the CLI tool. I also ran the code on two Nordic NRF52840-DK boards to make sure it works. The performance impact of TLS appears to be small. When using TCP without TLS, I am able to achieve ~80 kb/s goodput between two NRF52840-DK boards. With TLS in the same setup, I am able to achieve ~70-75 kb/s goodput.