Книга построена в стиле "вопрос ответ". Ответы бывают двух видов
Вид материала | Книга |
Q:Что такое дерево (стек) протоколов? Родственные вопросы Q:Что такое порт? |
- Книга Зоар, 76.85kb.
- Тест по теме Игра «вопрос-ответ», 30.32kb.
- Пояснительная записка Билеты устного зачёта по информатике состоят из двух частей:, 72.39kb.
- Ответ на вопрос 4 8 9 Ответы на вопросы, 1334.72kb.
- Задание Укажите правильный ответ на тестовые вопросы задания с использованием правовых, 204.52kb.
- Ответ: Лекция, 66.61kb.
- Чего мы хотим от школьной физической культуры? Ответы специалистов на этот вопрос часто, 279.04kb.
- Дэвид Хокинс, 5939.1kb.
- Измени свою жизнь, построй свой успех. Формула идеального успеха расширенная форма, 617.11kb.
- Как самому толковать библию ричард мэйхью, 1455.83kb.
Q:Что такое дерево (стек) протоколов?
Прежде чем продолжать повествование о протоколах, необходимо рассмотреть задачи, которые приходится решать при установке соединения.
В первую очередь можно назвать маршрутизацию - выбор маршрута, по которому будет двигаться пакет. Это действительно очень сложная задача, ведь получателя и отправителя под час разделяют десятки подсетей, настоящий лабиринт, заблудиться в котором очень легко, а найти кратчайший путь – куда сложнее.
??? Рисунок "карикатура" Человек стоит перед лабиринтом, переплетающихся друг с другом тропинок и в задумчивости чешет затылок.
Но прежде, чем отправить пакет в путешествие, необходимо убедиться, что его размер не парализует сеть своей обработкой. Разбивку одной дейтаграммы на множество пакетов фиксированного размера называют фрагментацией, а противоположный этому процесс – сборкой.
Очень важно обеспечить контроль целостности дейтаграмм, автоматически повторяя пересылку потерянных или искаженных пакетов, либо же, в крайнем случае, возвратить отправителю уведомление о невозможности доставки.
Наконец, необходимо уметь разделять один канал между несколькими параллельно работающими приложениями, чтобы пользователь мог принимать (отправлять) почту, одновременно с этим скачивая из сети файлы и болтая с приятелями по 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 и для чего он нужен?
Что такое протоколы и с чем их едят?
Как определить полный путь (прохождение) при скачивании файла
Q:Что такое порт?
Физические порты ввода-вывода хорошо известны и интуитивно понятны. Может быть, нечто аналогично есть и в Интернет? На самом же деле, с сетевой точки зрения порт - одно из полей заголовка пакета (строго говоря, их даже два - порт отправителя и порт получателя). Наличие портов позволяет уточнять с каким именно приложением, из всех, установленных на удаленном узле, клиент хочет установить соединение. Каждое из приложений "закрепляет" за собой один или несколько портов и получает все приходящее пакеты, в заголовках которых прописаны те же значения. Пакет, который никто не забирает, уничтожается, а отправителю возвращается сообщение об ошибке (в этом случае на жаргоне говорят, что "порт закрыт"). Если образно представить себе IP-адрес как номер дома, то порт – это номер квартиры.
Такая схема обеспечивает совместную работу множества приложений, так, например, на одном и том же компьютере, имеющим всего один IP-адрес, могут быть установлены почтовый сервер, сервер новостей, web-сервер, ftp-сервер. И никаких конфликтов и разборок "это чей пакет?" между ними не возникает.
Очевидно, что приложение-отправитель и приложение-получатель должны использовать общие соглашения. Можно придумать множество механизмов, обеспечивающих синхронизацию портов отправителя и получателя, но самым простым оказалось закрепить за каждым протоколом определенные порты, заставив разработчиков программного обеспечения придерживаться этого стандарта.
Прочная ассоциация порт-протокол привела к тому, что эти два термина стали частенько путать. Фраза "свяжись с сервером по сто десятому порту" - подразумевает "свяжись с сервером по протоколу POP3". На самом же деле, почтовый сервер может быть настроен и на другой порт, значение которого каким-то образом доносится клиенту.