На транспортном уровне предусмотрено пять классов сервиса с различными уровнями надежности. Они различаются скоростью, возможностями восстановления данных и т. д. Например, некоторые классы работают без предварительной установки связи и не гарантируют доставку пакетов в правильной последовательности. В этом случае за выбор маршрута отвечают промежуточные устройства, которые попадают на пути следования данных. Классы с установкой связи начинают свою работу с установки маршрута и только после того, как маршрут будет определен, начинают последовательную передачу данных.
Благодаря такому подходу всегда можно найти компромисс между скоростью и качеством доставки данных.
Сеансовый уровень
Сеансовый уровень (Session Layer) используется для создания и управления сеансом связи на время, необходимое для передачи данных. Время сеанса зависит лишь от объема информации, которая должна быть передана. Поскольку этот объем может быть существенным, используются разные механизмы, контролирующие данный процесс.
Для управления сеансом применяется маркер, обладатель которого гарантирует себе право на связь. Кроме того, используются служебные сообщения, с помощью которых стороны могут, например, договариваться о способе передаче данных или сообщать о завершении передачи данных и освобождении маркера.
Чтобы передача данных была успешной, создаются специальные контрольные точки, которые позволяют начать повторную передачу данных практически с того места, на котором произошел непредвиденный обрыв связи. В данном случае работают также механизмы синхронизации данных, определяются права на передачу данных, поддерживается связь в периоды неактивности и т. п.
Уровень представления данных
Уровень представления данных, или представительский уровень (Representation Layer), является своего рода проходным уровнем, основная задача которого – кодирование и декодирование информации в представление, понятное вышестоящему или нижестоящему уровню. С его помощью обеспечивается совместимость компьютерных систем, использующих разные способы представления данных.
Этот уровень удобен тем, что именно здесь выгодно использовать разные алгоритмы сжатия и шифрования данных, преобразование форматов данных, обрабатывать структуры данных, преобразовывать их в битовые потоки и т. д.
Прикладной уровень
Прикладной уровень (Application Layer) – последний «бастион» между пользователем и сетью. Он обеспечивает связь пользовательских приложений с сетевыми сервисами и службами на всех уровнях модели ISO/OSI, а также передачу служебной информации, синхронизирует взаимодействие прикладных процессов и т. д.
Глава 4
Протоколы передачи данных
Понятие протокола
Основные протоколы
Понятие протокола
В предыдущей главе мы познакомились с эталонной моделью, описывающей принцип подготовки, приема и передачи данных через любой имеющийся канал связи. Каждый из ее семи уровней решает поставленную перед ним задачу, выполняя свою функцию в подготовке или обработке данных. Для этого он использует стандартные процедуры межуровневого обмена информацией и протоколы передачи данных. Таким образом, получается, что модель ISO/OSI является теоретической основой функционирования сети, а сетевые протоколы – это то, что превращает теорию в практику.
Протокол передачи данных можно сравнить с набором правил и соглашений, которые описывают способ передачи данных между двумя и более объектами в сети.
Для обслуживания модели взаимодействия открытых систем используется достаточно большое количество сетевых протоколов. Многие из них вполне специфичны и часто выполняют только одно определенное действие, но делают это быстро и, самое главное, правильно. Существую также и более продвинутые и функциональные протоколы, которые могут выполнять определенные действия, захватывая сразу несколько уровней модели. Есть даже целые семейства (стеки) протоколов, которые являются составной частью протоколов с общим названием, например стеки протоколов TCP/IP или IPX/SPX.