Browse Source

1

nodeinfo-routing-update
jeka 2 months ago
parent
commit
79e980c17d
  1. 2
      .gitignore
  2. 8
      doc/etcp_protocol.txt

2
.gitignore vendored

@ -68,4 +68,4 @@ utun.conf
# MSVC temp files # MSVC temp files
cl cl
build_win.log build_win.log
wintun.dll /wintun.dll

8
doc/etcp_protocol.txt

@ -116,3 +116,11 @@ bandwidth по каждому линку адаптивно подстраива
- создать новый ETCP_CONN с этим node_id. если уже существует подключение с этим node_id - вызвать etcp_reset (функция сброса окон неподтвержденных данных и нумерации) - создать новый ETCP_CONN с этим node_id. если уже существует подключение с этим node_id - вызвать etcp_reset (функция сброса окон неподтвержденных данных и нумерации)
приём кодограмм из UDP выглядит так: приём кодограмм из UDP выглядит так:
uasync select -> etcp_connection.c etcp_connections_read_callback: memory_pool_alloc, decrypt (or init) -> etcp_conn_input (etcp.c/h - сам tcp механизм) -> ETCP_CONN output_queue uasync select -> etcp_connection.c etcp_connections_read_callback: memory_pool_alloc, decrypt (or init) -> etcp_conn_input (etcp.c/h - сам tcp механизм) -> ETCP_CONN output_queue
Keepalive: пакет без секций (только timestamp+flags)
keepalive пакеты шлют и клиент и сервер с заданным интервалом если нет полезного трафика.
Клиент: если все линки =down то начинается процедура восстановления связи:
- клиент посылает init без сброса
- сервер как получает init без сброса отправляет init подтверждение: со сбросом или без сброса в зависимости от состояния init его соединения (инициализировано - то без сброса).

Loading…
Cancel
Save