1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zhengyitian-touj

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 3.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 16.03.2025 22:36 4053764

Используйте UDP для реализации TCP-соединения.

Запустите клиентскую часть программы на компьютере, который будет работать в роли клиента, а серверную часть — на компьютере, который будет работать в роли сервера.

Программы других клиентских приложений могут обращаться к открытому порту этой программы (например, 127.0.0.1:9997),

что эквивалентно соединению с открытым портом других программ на сервере (например, 8080). Поддерживается одновременная работа нескольких соединений.

Приложение предназначено для ситуаций, когда TCP-соединение с публичным сервером недоступно, но UDP-соединение доступно.

Основная идея дизайна заключается в использовании UDP для создания стабильного соединения (эквивалент TCP-соединения) и последующего использования этого соединения для организации множества других соединений.

Python-версия поддерживает как клиентскую, так и серверную части, версии Java и Android поддерживают только клиентскую часть.

Клиентская часть на Java и Android может использоваться вместе с серверной частью на Python. Серверная часть адаптирована только для Linux. Клиентская часть может запускаться на Windows, Linux и Android.

Не требует сторонних библиотек, использует асинхронные сокеты.Ранее была создана версия на Python (см. мою библиотеку tcp_over_udp), которая имела проблемы с мобильной версией. В этом переосмыслении не было изменено использование UDP для создания одного соединения; были изменены только методы работы с несколькими TCP-соединениями. Раньше это делалось с помощью Tornado, теперь используется прямое использование сокетов. Также добавлена клиентская часть на Java, что значительно улучшило работу на мобильных устройствах.Способ использования: запустите tous.py на сервере, touc.py (или touc.java для Java) на клиенте, для Android нажмите кнопку "Start".

Программы на клиентской стороне, обращающиеся к локальному порту 9997, будут перенаправлены на порт 8080 на сервере.

У старой версии tcp_over_udp есть описание параметров; новая версия аналогична ей. Если представится возможность, я добавлю комментарии к коду и улучшу описание параметров.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/zhengyitian-touj.git
git@api.gitlife.ru:oschina-mirror/zhengyitian-touj.git
oschina-mirror
zhengyitian-touj
zhengyitian-touj
master