TCP-порт и модель OSI - PullRequest
       80

TCP-порт и модель OSI

0 голосов
/ 12 октября 2018

Что-то я не понимаю в стеке TCP / IP: порты.Есть IP-адрес для идентификации машины и порта для определенного процесса на этой машине.Для меня порты связаны с прикладным уровнем;Есть несколько портов для какого-либо процесса (80 для HTTP, 25 для SMTP и т. д.).Порты не имеют ничего общего с уровнем TCP (транспорт).Порты должны быть реализованы на более высоком уровне (прикладной уровень).Так почему вы говорите «TCP-порт», а не «порт приложения»?

Спасибо

1 Ответ

0 голосов
/ 12 октября 2018

Порты TCP или UDP определены либо на уровне 4 модели OSI, либо на уровне 3 модели TCP / IP, оба определены как уровень ' transport '.

OSIУровень 5 «Сеансовый уровень» использует порты, определенные на уровне 4, для создания сокетов и сеансов между взаимодействующими устройствами / программами / и т.д.

Напоминание о модели OSI:

Этоэто концептуальная модельЭто означает, что он описывает идеализированную, абстрактную, теоретическую группу сетевых функций.Он не описывает ничего, что кто-то на самом деле создал (по крайней мере, ничего, что используется сегодня).

Это не единственная модель.Существуют и другие модели, в частности пакет протоколов TCP / IP (RFC-1122 и RFC-1123), который намного ближе к тому, что используется в настоящее время.

Наиболее важные вещи, которые необходимо понять оМодель OSI (или любая другая):

  • Мы можем разделить протоколы на слои
  • Слои обеспечивают инкапсуляцию
  • Слои обеспечивают абстракцию
  • Слои отделяют функции от других

Разделение протоколов на слои позволяет нам говорить об их различных аспектах отдельно.Это облегчает понимание протоколов и устранение неполадок.Мы можем легко изолировать определенные функции и сгруппировать их с аналогичными функциями других протоколов.

Каждая «функция» (в широком смысле) инкапсулирует уровень (уровни) над ней.Сетевой уровень инкапсулирует уровни над ним.Канальный уровень инкапсулирует сетевой уровень и т. Д.

Слои абстрагируют слои под ним.Вашему веб-браузеру не нужно знать, используете ли вы TCP / IP или что-то еще на сетевом уровне (как если бы было что-то еще).Для вашего браузера нижние уровни просто предоставляют поток данных.То, как этот поток удается показать, скрыто от браузера.TCP / IP не знает (или не заботится), используете ли вы Ethernet, кабельный модем, линию T1 или спутник.Он просто обрабатывает пакеты.Представьте, как трудно было бы разработать приложение, которое должно было бы справиться со всем этим.Слои абстрагируют нижние уровни, поэтому разработка и эксплуатация программного обеспечения становятся намного проще.

...