Проще общаться через сокеты TCP, когда вы работаете в пределах границ интрасети, так как вы, вероятно, имеете контроль над машинами в этой сети и можете открывать порты, подходящие для установления соединений TCP.
ЗаИнтернет, вы общаетесь с чужим сервером на другом конце.Они крайне вряд ли имеют какие-либо старые розетки, открытые для соединений.Обычно у них будет только несколько стандартных, таких как порт 80 для HTTP или 443 для HTTPS.Итак, для связи с сервером вы обязаны подключиться через один из этих портов.
Учитывая, что это стандартные порты для веб-серверов, которые обычно используют HTTP, вы, следовательно, обязаны соблюдать протокол HTTP,в противном случае сервер не будет говорить с вами.Назначение веб-сокетов состоит в том, чтобы позволить вам инициировать соединение через HTTP, а затем договориться об использовании протокола веб-сокетов (при условии, что сервер способен на это), чтобы позволить поток сообщений, более похожий на «сокет TCP».