TCP-IP-порты на вашем компьютере по существу являются механизмом для получения сообщений в правильные конечные точки.
Каждый из возможных портов 65536 (16 общих разрядов) подпадает под определенные категории как designated уполномоченным органом Интернета (IANA).
Но я не понимаю, как порты связывают эту модель услуг и подключения к различным службам с удаленных компьютеров? Почему существует потребность для большого количества конкретных портов, работающих с определенными службами?
...
И что же происходит, когда вы пытаетесь подключиться к порту?
Думайте об этом так: Сколько приложений на вашем компьютере общаются с другими машинами? Веб-браузер, клиент электронной почты, клиент SSH, онлайн-игры и т. Д. Не говоря уже о всех вещах, работающих под капотом.
Теперь подумайте: сколько физических портов у вас есть на вашей машине? У большинства настольных компьютеров есть один. Иногда два или три. Если одно приложение должно было полностью контролировать ваш сетевой интерфейс, ничто другое не сможет его использовать! Таким образом, TCP-порты - это способ превратить 1 соединение в 65536 соединений.
Например, если вы подключаете ssh, вы подключены к порту 22. Что происходит?
Подумайте, как отправить пакет. Ваш SSH-клиент перед вами должен отправить информацию в процесс, запущенный на другом компьютере. Таким образом, вы отправляете адрес назначения в виде «user @ [ip или имя хоста]» (чтобы он знал, какой компьютер в сети должен отправить его) и «порт 22» (поэтому он попадает в нужное приложение, запущенное на машина). Затем ваше приложение упаковывает пакет TCP и маркирует адрес назначения и адрес возврата и отправляет его в сеть.
Сеть находит компьютер назначения и доставляет пакет. Итак, теперь это на правильной машине, но ей все равно нужно попасть в нужное приложение. Как вы думаете, что произойдет, если ваш SSH-пакет будет доставлен клиенту электронной почты? Это номер порта. Он эффективно сообщает локальному почтовому ящику TCP вашего компьютера, где можно сделать окончательную доставку. Затем приложение делает все, что ему нужно, с данными (например, проверка подлинности) и отправляет ответный пакет, используя обратный адрес вашего компьютера. Взад и вперед продолжается до тех пор, пока соединение активно.
Надеюсь, что это поможет. :)
http://en.wikipedia.org/wiki/Port_(computer_networking) –
Каждая служба слушает другой порт - только один процесс может прослушивать любой конкретный порт. Подумайте о порте в качестве личного номера почтового ящика в жилом комплексе. – user2864740