Почему вы говорите "TCP-порт"? - PullRequest
0 голосов
/ 04 декабря 2018

Я изучаю сети и сокеты, и есть кое-что, чего я не понимаю.Я часто слышал о «TCP-портах», но я думаю, что порты связаны с прикладным уровнем (например, 80 для HTTP-серверов).Так почему бы вам не сказать «порты приложений»?Почему порт кажется связанным с уровнем TCP (он должен быть связан с более высоким уровнем)?Для меня порты не имеют ничего общего с протоколом TCP

Спасибо

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Ваше понимание неверно, и вам необходимо уточнить этот момент, прежде чем переходить к другим сетевым концепциям.

Порт является фундаментальной концепцией TCP.

TCP - это протокол двунаправленной связи между двумя конечными точками (Source и Destination), которые идентифицируются двумя вещами: IP address и Port.TCP предназначен для расширения протокола IP (который идентифицирует хосты только на IP address) путем добавления Port и обеспечения возможности существования нескольких конечных точек связи для одного IP-адреса.

Фактически пакеты TCP (отправленные черезпровод) инкапсулирует IP-пакеты, но добавляет дополнительную информацию поверх IP, такую ​​как Port и некоторые флаги управления передачей.Вот почему люди часто используют термин TCP / IP.

Помимо TCP / IP, люди создали другие протоколы, такие как HTTP.

Пакет HTTP (или запрос) состоит из нескольких пакетов TCP / IP, которыми обмениваются клиент и сервер.HTTP использует TCP / IP, и все пакеты, отправленные с HTTP, являются пакетами TCP / IP.HTTP обычно использует TCP-порт 80, однако он может работать на любом другом порту без проблем.

Кроме того, любой другой протокол прикладного уровня может быть настроен для использования порта 80.

Порты связаны с протоколами прикладного уровня только условно.Точно так же SSH обычно настроен на порт 22, но может использоваться на любом другом порту.

0 голосов
/ 04 декабря 2018

Я не знаю, есть ли официальное определение того, что вы, люди, говорите так: :) Это только моя идея, может быть, это поможет вам:)

Поскольку приложения используют 2 протокола: TCP и UDP и люди, которые выражают протокол использования приложения и порт, говорят: TCP: 80 или UDP: 5000 (пример торрента)

Например,HTTPS может работать по любому надежному потоковому транспортному протоколу.Обычно это TCP, но это также может быть SCTP.Не ожидается, что он будет работать через UDP.Таким образом, вы можете сказать HTTPS: 443 или TCP: 443, ссылаясь на обсуждение HTTPS, конечно.Те, с кем вы разговариваете, с самого начала понимают, что HTTPS использует протокол TCP, и он находится на порту 443.

Комбинируя номер порта и TCP / UDP, вы «создаете» имя назначенного протокола,не наоборот.

Уравнение:

TCP:80 = HTTP
TCP:23 = Telnet
UDP:220 = IMAP

Вы не говорите, HTTP: 80 - это TCP.TCP-порт 80 известен как HTTP.

Список или протоколы и порты см .: http://www.pearsonitcertification.com/articles/article.aspx?p=1868080

...