Для языка сценариев OneScript есть замечательная возможность
расширять функционал за счет новых библиотек. Представленная здесь библиотека даст возможность сетевого общения между компьютерами
по схеме клиент-сервера используя TCP протокол.
Цель данной разработки:
Создать кроссплатформенный многопоточный TCP сервер для OneScript.
Создать TCP клиент для OneScript.
Сервер должен держать открытым соединение с клиентами до момента, пока или клиент,
или сервер не разорвут соединение. Это основное отличие от классической схемы подключение-запрос-ответ-разрыв соединения.
Количество одновременных подключений обрабатываемых без ощутимых задержек должно быть не менее 1500.
Обеспечить не блокирующий сценарий запуск как сервера, так и клиента.
Обеспечить обработку событий сервера и клиента в коде OneScript.
Предусмотреть возможность как массовой рассылки сообщений всем подключенным клиентам, так и отправки сообщения
отдельным клиентам по выбору.
Простая работа с пересылаемыми данными. Возможность в коде OneScript задавать протоколы передачи данных. Для этого
получаемые и передаваемые данные приведены к типу БуферДвоичныхДанных (BinaryDataBuffer). Этот тип позволяет легко манипулировать
байт данными, вставлять информацию о длине передаваемого отдельного сообщения, типе данных в сообщении.
При необходимости данные должны быть защищены криптографическим протоколом TLS (Transport Layer Security). TLS работает
поверх TCP, и сервер использует его для создания защищённого канала связи, который обеспечивает конфиденциальность,
целостность и подлинность соединения (аутентификацию).