В настоящее время я использую Udp для отправки небольших изображений на мой сервер. Эта методология является быстрой, поскольку она работает как механизм «забей и забудь». Это означает, что серверу не важно, был ли получен пакет Udp, отправленный клиентом, или нет.
Я пытался использовать Tcp для того же, и Fps медленнее, чем Udp. Одна из причин заключается в том, что конечная точка Tcp на сервере всегда отправляет подтверждение обратно клиенту.
Из интереса я хотел посмотреть, смогу ли я отключить этот «обратный вызов», чтобы посмотреть, какова будет производительность сравнения.
Я перебираю сокет iocontrol , где я можно увидеть, что я могу установить настройки низкого уровня для привязки соединения. Одним из них являются значения keep alive, которые можно установить, передав параметр IOControlCode.KeepAliveValues с предпочтительными для него значениями.
Я посмотрел на то, что доступно, но не смог увидеть очевидный параметр «отключить подтверждение». Я вижу AsyncIO и NonBlockingIO. Остановит ли какой-нибудь из них ответ «ack» или это будет полностью другой параметр?