Лекция: Как работают эти протоколы?
Ответы
Стек протоколов TCP/IP
Это стандартизованный набор сетевых протоколов. В настоящее время — это основной набор протоколов взаимодействия в Интернете. Более подробно об этом стеке протоколов и не только о нем можно прочитать в этой статье.
В состав стека протоколов TCP/IP входят два основных протокола: IP, TCP и несколько вспомогательных протоколов.
- Протокол IP (Internet Protocol) — основной протокол сетевого уровня. Определяет способ адресации на сетевом уровне.
- Протокол TCP (Transmission Control Protocol) — протокол, обеспечивающий гарантированную доставку данных.
Как работают эти протоколы?
Протокол IP задает формат адреса узла (поэтому адреса компьютеров называются IP-адресами) и доставляет пакет данных.
Однако, на одном узле (компьютере сети) может функционировать параллельно несколько программ, которым требуется доступ к сети. Следовательно, данные внутри компьютерной системы должны распределяться между программами. Поэтому, при передаче данных по сети недостаточно просто адресовать конкретный узел. Необходимо также идентифицировать программу-получателя, что невозможно осуществить средствами протокола IP.
Другой серьезной проблемой IP является невозможность передачи больших массивов данных. Протокол IP разбивает передаваемые данные на пакеты, каждый из которых передается в сеть независимо от других. В случае если какие-либо пакеты потерялись, то модуль IP на принимающей стороне не сможет обнаружить потерю, т.е. целостность данных будет нарушена.
Для решения этих проблем разработан протокол TCP.
Каждой программе назначается номер TCP- порта в соответствии с ее функциональным назначением на основе определенных стандартов. Порт можно рассматривать как ячейку в почтовом отделении связи. Протокол IP определяет только адрес почтового отделения, а протокол TCP положит конверт в нужную ячейку.
Таким образом, стек протоколов IP и TCP обеспечивают полную адресацию:
- Номер TCP-порта позволяет однозначно идентифицировать программу на компьютере сети,
- Компьютер в сети однозначно определяется IP-адресом.
Следовательно, комбинация IP-адреса и номера порта позволяет однозначно идентифицировать программу в сети. Такой комбинированный адрес называется сокетом (socket).