Укрощение @Интернет@

Что такое дерево (стек) протоколов?


Прежде чем продолжать повествование о протоколах, необходимо рассмотреть задачи, которые приходится решать при установке соединения.

В первую очередь можно назвать маршрутизацию

- выбор маршрута, по которому будет двигаться пакет. Это действительно очень сложная задача, ведь получателя и отправителя под час разделяют десятки подсетей, настоящий лабиринт, заблудиться в котором очень легко, а найти кратчайший путь – куда сложнее.

??? Рисунок "карикатура" Человек стоит перед лабиринтом, переплетающихся друг с другом тропинок и в задумчивости чешет затылок.

Но прежде, чем отправить пакет в путешествие, необходимо убедиться, что его размер не парализует сеть своей обработкой. Разбивку одной дейтаграммы на множество пакетов фиксированного размера называют фрагментацией, а противоположный этому процесс – сборкой.

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

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

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

В общепринятой иерархии ниже всех находится сетевой уровень. В Интернет он реализован двумя протоколами: IP (Internet Protocol – Протокол Интернета) и ICMP (Internet Control Message Packet – Проколол Управляющих Сообщений Интернет).

Протокол IP берет на себя заботы по маршрутизации, фрагментации и сборке пакетов на компьютере получателя. Фактически IP выполняет всю черновую работу по установлению соединения. К этому же уровню относиться и ICMP-протокол, использующийся для передачи сообщений об ошибках и сборе информации о работе сети. На нем основана работа таких утилит, как ping и trace route, применяющихся для диагностики сети.


Транспортный уровень реализован поверх сетевого, т.е. опирается на протоколы сетевого уровня. В Интернет он представлен протоколами TCP (Transmission Control Protocol – Протокол Управляемой Передачи) и UDP (User Datagram Protocol – Протокол Пользовательских Дейтаграмм). В задачи транспортных протоколов входит обеспечение надежной и достоверной доставки данных через сеть. Они же заведуют установкой, поддержанием и упорядочиванием каналов соединения, обнаруживают и по возможности устраняют ошибки передачи.

Различие между ними в том, что TCP гарантирует доставку данных и аутентичность отправителя (т.е. позволяет убедиться, что отправитель именно тот, за кого себя выдает), а UDP обеспечивает лишь контроль целостности данных, не ручаясь ни за успешность их доставки получателю, ни за достоверность адреса отправителя.

Может показаться, что UDP "плохой" протокол. Частично это так и есть, поэтому-то, в подавляющем большинстве случаев используется именно TCP. С другой стороны, UDP заметно производительнее TCP, поскольку не требует накладных расходов на поддержание соединения.

Прикладной уровень обеспечивает высокоуровневый интерфейс между сетевыми приложениями. Сюда относятся протоколы работы с почтой (POP3, SMTP, IMAP), сетевыми новостями (NNTP), файлами (FTP) и так далее.

Конечно, это очень грубая схема, но общение представление о функционировании Интернет с ее помощью получить можно.

Родственные вопросы:

Что такое ping и для чего он нужен?

Что такое протоколы и с чем их едят?

Как определить полный путь (прохождение) при скачивании файла


Содержание раздела