Для Chrome развивается API для прямых TCP и UDP коммуникаций

22 августа 2020 года

Компания Google приступила к реализации в Chrome нового API Raw Sockets, позволяющего web-приложениям устанавливать прямые сетевые соединения с использованием протоколов TCP и UDP. В 2015 году консорциумом W3C уже была предпринята попытка стандартизации API "TCP and UDP Socket", но участники рабочей группы не достигли консенсуса и разработка данного API была остановлена.

Необходимость добавления нового API объясняется предоставлением возможности взаимодействия с сетевыми устройствами, которые используют собственные протоколы, работающие поверх TCP и UDP, и не поддерживают взаимодействие через HTTPS или WebSockets. Отмечается, что API Raw Sockets дополнит уже имеющиеся в браузере низкоуровневые программные интерфейсы WebUSB, WebMIDI и WebBluetooth, позволяющие взаимодействовать с локальными устройствами.

Для исключения негативного влияния на безопасность API Raw Sockets будет допускать сетевые обращения только инициированные с согласия пользователя и ограниченные списком разрешённых пользователем хостов. Пользователь должен будет явно подтверждать первую попытку соединения для нового хоста. Повторные соединения будут допускаться без отдельного запроса, но интенсивность обращений через Raw Sockets будет лимитирована. UDP-пакеты, полученные с хостов, не одобренных пользователем, будут игнорироваться и не доходить до web-приложения. Начальная реализация не предусматривает создания слушающих сокетов, но в будущем не исключается предоставление вызовов для приёма входящих соединений с localhost или списка известных хостов.

Среди рисков, которые могут возникнуть при реализации нового API, отмечается его возможное неприятие производителями других браузеров, что может привести к проблемам с совместимостью. Разработчики движков Mozilla Gecko и WebKit пока не выработали свою позицию по поводу возможной реализации API Raw Sockets, но компания Mozilla ранее для проекта Firefox OS (B2G) уже предлагала похожий API (Архивная копия от 20 октября 2020 на Wayback Machine).

Web-разработчики положительно отозвались о новом API и высказали много новых идей об его применении в областях, в которых API XMLHttpRequest, WebSocket и WebRTC недостаточно (от создания браузерных клиентов для SSH, RDP, IMAP, SMTP, IRC и протоколов вывода на печать до разработки распределённых P2P-систем с DHT (Distributed Hash Table), поддержки IPFS и взаимодействия с IoT-устройствами).

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Для Chrome развивается API для прямых TCP и UDP коммуникаций», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.