Я б не очікував, що різниця буде занадто значною, як тільки з'єднання буде налаштоване .
Розбиття накладних витрат, які загалом виробляє TLS, можна знайти тут . Важливими бітами є:
- Загальна накладні витрати для встановлення нового сеансу TLS в середньому становлять близько 6,5 К байт
- Загальна накладні витрати для відновлення існуючого сеансу TLS в середньому становлять приблизно 330 байт
- Загальна накладні витрати зашифрованих даних становлять близько 40 байт (20 + 15 + 5)
- Наведені вище розрахунки легко модифікувати, щоб точніше відобразити специфіку середовища, тому це слід вважати основою для накладних витрат TLS, а не авторитетною відповіддю на поставлене питання.
Варто прочитати, щоб побачити, як розраховувались ці цифри - вам слід зрозуміти, як TLS працює з усім цим. Як зазначається в інших відповідях, радіопередача, ймовірно, є одним з найбільших використань енергії, що часто є обмеженням в IoT, тому щойно сеанс встановлений, накладні витрати не надто значні, особливо якщо ваші повідомлення не тривіально короткий.
Як зазначає HiveMQ у статті Як TLS впливає на ефективність MQTT? :
Хороша новина полягає в тому, що клієнту MQTT потрібно встановити з'єднання один раз на сеанс - на відміну від протоколів типу HTTP, який потребує відновлення з'єднання під час кожного запиту (якщо не використовується жодна підтримка чи інші методи, наприклад Long Опитування на місці). Підключившись до брокера, клієнт може надсилати та отримувати повідомлення без додаткових рукостискань. Для використання TLS необхідно виділити додаткові буфери, тому споживання оперативної пам’яті також трохи вище за з'єднання MQTT.
Вони також надають графік використання процесора для брокера, коли 50 000 клієнтів підключаються:
Джерело зображення: HiveMQ (див. Вище зв'язану статтю)
Зауважте, що це майже точно не є типовою схемою використання, але дані все-таки цікаві. Як бачите, під час рукостискання великі накладні витрати, але після цього накладні витрати процесора майже однакові. Я б очікував подібного на клієнта.
Але загальна порада тут правильна: надуманий орієнтир не дасть тобі потрібної інформації; щоб знати, як TLS вплине на ваш випадок використання, вам потрібно протестувати його у ... вашому випадку використання !