Колисниченко Д.Н. - Linux-сервер своими руками (1077324), страница 8
Текст из файла (страница 8)
При этом никакой аутентификации не происходит,хотя можно настроить сервер так, что он будет запрашивать имя пользователяи пароль перед началом передачи сообщения на сервер. Настройке SMTPаутентификации посвящен п. 13.2 этой книги. После передачи сообщения насервер SMTP оно становится в очередь. Через определенное время это сообщение передается нужному POP-серверу, который принимает сообщение. Потомсообщение может получить пользователь, для которого оно предназначено.Если же сервер SMTP не может отправить сообщение (например, нужныйPOP-сервер не существует или недоступен, или же адресат не зарегистрированна этом сервере POP), письмо возвращается отправителю.Для чтения почты существует и другой протокол — ШАР.
Его 'отличиеот протокола POP состоит в том, что пользователь читает сообщения электронной почты, не загружая их на свой компьютер. Все сообщения хранятсяна сервере. При удалении сообщения оно удаляется с сервера.SLIP (Serial Line Internet Protocol) — протокол подключения к сети Интернетпо последовательной линии. Используется для установления связи с удаленными узлами через низкоскоростные последовательные интерфейсы.
В настоящее время вытеснен протоколом РРР и практически не используется.РРР (Point-to-Point Protocol) обеспечивает управление конфигурацией, обнаружение ошибок и повышенную безопасность при передаче данных на болеевысоком уровне, чем протокол SLIP. Поэтому при настройке сервера рекомендуется использовать именно этот протокол. Протокол РРР рассмотрен вRFC 1547 и RFC 1661.27Введение в LinuxПрежде чем перейти к рассмотрению протокола TCP/IP, рассмотримсемиуровневую модель взаимодействия открытых систем.
Под открытойсистемой понимается любая система, построенная в соответствии с открытыми спецификациями. Протокол также можно рассматривать как определенное соглашение, принятое взаимодействующими объектами, в нашемслучае — это компьютеры, работающие в сети. Соглашение (протокол) необязательно должно быть стандартным, но на практике стараются использовать именно стандартные протоколы.В начале 80-х годов международной организацией по стандартизации(ISO — International Organization for Standardization) была разработана модельвзаимодействия открытых систем (OSI -- Open System Interconnection).
Вдругой литературе вы можете встретить и другие названия этой модели:сокращенное - - модель OSI илиболее полное — семиуровневая модель взаимодействия открытых систем OSI. Средства взаимодействия(см. рис. 1.7) в модели OSI делятсяна семь уровней:1. Физический.2. Канальный.3. Сетевой.Представительный4. Транспортный.5. Сеансовый.6. Представительный.7. Прикладной.ТранспортныйБлагодаря этому задача сетевого взаимодействия разбиваетсяна несколько более мелких задач.Это позволяет при разработке новых способов и инструментов сетевого взаимодействия не разрабатывать их заново целиком иполностью, а использовать ужеготовые решения, заменив толькоРис. 1.7.
Модель OSIнекоторые его части. Непосредственно друг с другом взаимодействуют только физические уровни. Всеостальные уровни напрямую взаимодействуют только с выше- и нижележащими уровнями: пользуются услугами нижележащего и предоставляют услуги вышележащему. Друг с другом такие уровни контактируют косвеннымобразом, через посредство нижележащих уровней.Примечание.6 некоторых случаях сетевого взаимодействия физический уровень как таковой отсутствует, при этом его функции выполняет самый низлежащий уровень.28Введение в LinuxИз рис.
1.7 видно, что по мере прохождения сообщения через уровнимодели OSI к пересылаемым данным добавляется служебная информация,свидетельствующая о прохождении данных через определенный уровень.Рассмотрим взаимодействие двух компьютеров более подробно на примерефайловой службы.
Допустим, нам (компьютер 1) нужно записать какую-нибудьинформацию в файл на удаленном компьютере 2. Обычное сообщение состоитиз заголовка и поля данных. В заголовке содержится различная служебнаяинформация. Как изменяется заголовок видно из рис. 1.7. Например, в заголовке может содержаться информация о нашем компьютере (его адрес), компьютере получателя, а также имя и расположение файла, в который нужно записатьинформацию.
Поле данных может быть и пустым, но в нашем случае, очевидно, содержит информацию, которую нужно записать в файл.Приложение (процесс 1) формирует стандартное сообщение, которое передается прикладному уровню. Точнее, процесс 1 работает на прикладном уровне.После формирования сообщения прикладной уровень передает его представительному уровню. На этом уровне в заголовок добавляются указаниядля представительного уровня компьютера-адресата. Потом сообщение передается сеансовому уровню, который добавляет свою информацию и т.д.Процесс вложения одного протокола в другой называется инкапсуляцией.Когда сообщение поступает на компьютер-адресат, оно принимается физическим уровнем и передается вверх с уровня на уровень.
Каждый уровеньанализирует содержимое заголовка своего уровня, выполняет содержащиеся внем указания, затем удаляет относящуюся к себе информацию из заголовка ипередает сообщение далее вышележащему уровню. Этот процесс называетсядекапсуляцией. Далее приведено описание уровней взаимодействия.Физический уровень (Physical Layer)Физический уровень передает биты по физическим каналам связи, например, коаксиальному кабелю или витой паре. На этом уровне определяютсяхарактеристики электрических сигналов, которые передают дискретную информацию, например: тип кодирования, скорость передачи сигналов. К этомууровню также относятся характеристики физических сред передачи данных:полоса пропускания, волновое сопротивление, помехозащищенность.Функции физического уровня реализуются сетевым адаптером или последовательным портом.
Примером протокола физического уровня можетпослужить спецификация 100Base-TX (технология Ethernet).Канальный уровень (Data link Layer)Канальный уровень отвечает за передачу данных между узлами в рамкаходной локальной сети. Узлом будем считать любое устройство, подключенное к сети.Этот уровень выполняет адресацию по физическим адресам (МАС-адресам), «вшитым» в сетевые адаптеры предприятием-изготовителем. Каждыйсетевой адаптер имеет свой уникальный МАС-адрес, то есть вы не найдетедве сетевые платы с одним и тем же МАС-адресом.29Введение в LinuxКанальный уровень переводит поступившую с верхнего уровня информацию в биты, которые потом будут переданы физическим уровнем по сети.
Онразбивает пересылаемую информацию на фрагменты данных — кадры (frames).На этом уровне открытые системы обмениваются именно кадрами. Процесс пересылки выглядит примерно так: канальный уровень отправляет кадрфизическому уровню, который отправляет кадр в сеть. Этот кадр получаеткаждый узел сети и проверяет, соответствует ли адрес пункта назначенияадресу этого узла. Если адреса совпадают, канальный уровень принимаеткадр и передает наверх вышележащим уровням. Если же адреса не совпадают, то он просто игнорирует кадр.В используемых протоколах канального уровня заложена определеннаятопология. Топологией называется способ организации физических связей испособы их адресации. Канальный уровень обеспечивает доставку данныхмежду узлами в сети с определенной топологией, то есть для которой онразработан.
К основным топологиям (см. рис. 1.8) относятся:Общая шина.Кольцо.Звезда.1Общая шинаКольцоЗвездаРис. 1.8. Основные топологии локальных компьютерных сетейПротоколы канального уровня используются компьютерами, мостами,маршрутизаторами. Глобальные сети (в том числе и Интернет) редко обладают регулярной топологией, поэтому канальный уровень обеспечивает связьтолько между компьютерами, соединенными индивидуальной линией связи.При этом для доставки данных через всю глобальную сеть используютсясредства сетевого уровня (протоколы «точка-точка»).
Примерами протоколов «точка-точка» могут послужить РРР, LAP-B.Сетевой уровень (Network Layer)Данный уровень служит для образования единой транспортной системы,которая объединяет несколько сетей. Другими словами, сетевой уровеньобеспечивает межсетевое взаимодействие.Протоколы канального уровня передают кадры между узлами только врамках сети с соответствующей топологией. Проще говоря - - в рамкаходной сети.Нельзя передать кадр канального уровня узлу, который находится вдругой сети. Данное ограничение не позволяет строить сети с развитойструктурой или сети с избыточностью связей. Построить одну большую сетьтакже невозможно из-за физических ограничений.
К тому же даже если30Введение в Linuxпостроить довольно большую сеть (например, спецификация 10Base-T позволяет использовать 1024 узла в одном сегменте), производительность данной сети не будет вас радовать. Более подробно о причинах разделения сетина подсети и возникающих при этом трудностях мы поговорим немногопозже, а сейчас продолжим рассматривать сетевой уровень.На сетевом уровне термин сеть следует понимать как совокупностькомпьютеров, которые соединены в соответствии с одной из основныхтопологий и использующих для передачи данных один из протоколов канального уровня.Сети соединяются специальными устройствами — маршрутизаторами.
Маршрутизатор собирает информацию о топологии межсетевых соединений и наосновании этой информации пересылает пакеты сетевого уровня в сеть назначения. Чтобы передать сообщение от компьютера-отправителя компьютеруадресату, который находится в другой сети, нужно совершить некоторое количество транзитных передач между сетями. Иногда их еще называют хопами (отангл, hop — прыжок). При этом каждый раз выбирается подходящий маршрут.Сообщения на сетевом уровне называются пакетами. На сетевом уровнеработают несколько видов протоколов. Прежде всего — это сетевые протоколы, которые обеспечивают передвижение пакетов по сети, в том числе вдругую сеть. Поэтому довольно часто к сетевому уровню относят протоколымаршрутизации (routing protocols) — RIP и OSPF.Еще одним видом протоколов, работающих на сетевом уровне, являютсяпротоколы разрешения адреса — Address Resolution Protocol (ARP). Хотя этипротоколы иногда относят и к канальному уровню.Классические примеры протоколов сетевого уровня: IP (стек TCP/IP),IPX (стек Novell).Транспортный уровень (Transport Layer)На пути от отправителя к получателю пакеты могут быть искажены илиутеряны.