Сетевая служба с поддержкой соединения включает три фазы:
• Создание соединения — во время фазы создания соединения определяется единственный маршрут между исходной и целевой системами. Сетевые ресурсы в это время обычно резервируются, чтобы гарантировать согласованный уровень службы (например, гарантированную пропускную способность).
• Пересылка данных — во время фазы пересылки данные последовательно передаются по определенному на предыдущем этапе маршруту. Данные всегда приходят в целевую систему в том порядке, в котором были посланы.
• Прекращение соединения — во время фазы прекращения соединения созданное соединение, которое больше не требуется, прерывается. Дальнейшая коммуникация между исходной и целевой системами требует создания нового соединения.
Служба с поддержкой соединения имеет два существенных недостатка по сравнению с сетевыми службами без поддержки соединения:
• Статический выбор маршрута — так как весь трафик должен перемещаться по одному и тому же статическому маршруту, отказ в какой-либо точке этого маршрута вызывает отказ соединения.
• Статическое резервирование сетевых ресурсов — гарантированный уровень пропускной способности требует привлечения ресурсов, не предназначенных для других пользователей сети. Если для коммуникации требуется полная непрерываемая пропускная способность, то полоса пропускания используется неэффективно.
Службы с поддержкой соединения используются для передачи данных приложений, которые нетерпимы к задержкам и переупорядочиванию пакетов. Приложения для голоса и видео обычно используют службы с поддержкой соединения.
Сетевая служба без поддержки соединения
Сетевая служба без поддержки соединения не определяет заранее маршрут от источника к системе назначения, упорядочивание пакетов, пропускную способность канала данных и другие гарантированные сетевые ресурсы. Каждый пакет должен быть снабжен полным адресом, так как для различных пакетов на основе множества факторов могут выбираться различные пути доступа через сеть. Каждый пакет передается исходной системой независимо и независимо обрабатывается промежуточными сетевыми устройствами. Служба без поддержки соединения предлагает два важных преимущества относительно службы с поддержкой соединения:
• Динамический выбор маршрута — так как маршруты выбираются для каждого пакета отдельно, трафик можно направить в обход сбойного участка сети.
• Динамическое выделение полосы пропускания — полоса пропускания используется более эффективно, поскольку сетевым ресурсам не выделяют полосу пропускания, которую они не собираются использовать.
Службы без поддержки соединения используются для передачи данных приложений, которые могут выдержать некоторую задержку и переупорядочивание. Приложения, передающие данные, обычно используют службу без поддержки соединения.
Адрес канального уровня уникальным образом идентифицирует каждое физическое соединение сетевого устройства с сетью. Адреса канального уровня иногда называются физическими или аппаратными адресами. Обычно они образуют неиерархическое адресное пространство, задаются для каждого устройства заранее и, как правило, жестко. Оконечные системы имеют обычно только одно физическое сетевое соединение и, стало быть, только один адрес канального уровня. Маршрутизаторы и другие устройства, поддерживающие межсетевой обмен, обычно имеют несколько физических сетевых соединений и несколько адресов канального уровня.
Адреса подуровня управления доступом к среде передачи (MAC) являют-I ся подмножеством адресов канального уровня. Адреса MAC идентифицируют сетевые устройства в LAN, реализующие подуровень IEEE MAC канального уровня. Как большинство адресов канального уровня, адреса MAC являются уникальными для каждого интерфейса LAN. Адреса MAC имеют 48 битов в длину и выражаются с помощью 12 шестнадцатеричных цифр: первые шесть шестнадцатеричных цифр являются идентификацией производителя (или кодом поставщика), называемым уникальным идентификатором организации (OUI). Эти шесть цифр устанавливаются IEEE. Последние шесть шестнадцатеричных цифр являются серийным номером интерфейса или другим значением, администрируемым определенным поставщиком. Адреса MAC иногда называются аппаратными или "зашитыми" адресами (Burned-in Address, BIA), так как они выжжены в постоянной памяти (ROM) и копируются в оперативную память (RAM), когда инициализируется плата интерфейса.
Адресация на сетевом уровне
Адрес сетевого уровня идентифицирует устройство сетевого уровня эталонной модели OSI. Сетевые адреса существуют обычно в иерархическом адресном пространстве. Иногда их называют виртуальными или логическими адресами. Отношение сетевого адреса с устройством является логическим и нефиксированным. Обычно адрес основывается либо на характеристиках физической сети (устройство находится в определенном сетевом сегменте), или на логическом объединении, которое не имеет физической основы (устройство является частью зоны AppleTalk). Оконечным системам требуется один адрес сетевого уровня для каждого протокола сетевого уровня, который они поддерживают. (Это предполагает, что устройство имеет только одно физическое сетевое соединение.) Маршрутизаторы и другие устройства, поддерживающие межсетевой обмен, требуют один адрес сетевого уровня на каждое физическое соединение для каждого поддерживаемого протокола сетевого уровня. Например, маршрутизатор с тремя интерфейсами, каждый из которых поддерживает одновременно AppleTalk, TCP/IP и OSI, должен иметь три адреса сетевого уровня для каждого интерфейса. Поэтому маршрутизатор имеет девять адресов сетевого уровня.
ATM (Asynchronous Transfer Mode, асинхронный режим передачи) является службой с поддержкой соединения и с негарантированной доставкой. Он хорошо масштабируется и используется в LAN и WAN. АТМ отличается от Frame Relay тем, что вместо разбиения сообщений на кадры переменного размера все сообщения разбиваются на ячейки одинакового размера. Каждая ячейка имеет пятибайтовый заголовок и 48-байтовое поле данных. Так как все ячейки имеют одинаковый размер, коммутация может быть сделана очень быстрой, и поэтому необходимость в буферизации исчезает.
Поскольку это асинхронный метод, нет необходимости в технике TDM. При использовании АТМ станция может посылать ячейки, когда ей это понадобится, а не ожидать очереди передачи, как в случае TDM.
Хотя АТМ не соответствует точно модели OSI, большинство его функций можно соотнести с канальным и сетевым уровнями. Поэтому он может действовать во множестве различных физических сред передачи, включая SONET и FDDI. Уровень адаптации АТМ соответствует сеансовому и транспортному уровням модели OSI. Он отвечает за получение данных для протоколов более высокого уровня, такого как IP, и сегментирует данные в 48-байтовые ячейки для передачи через сеть АТМ. ISDN Это коммуникационный протокол, предложенный телефонными компаниями, который позволяет телефонным сетям передавать данные, голос и другие источника трафика по телефонным линиям. ISDN построен на двух основных типах коммуникационных каналов. Первым является канал-носитель, или В-канал (Bearer), который может переносить голос, данные или изображения со скоростью 64 Кбит/сек, а вторым является канал данных, или D-канал (Data), который имеет скорость 16 Кбит/сек и используется для контрольной информации, передачи сигналов и данных управления линией. ISDN реализуется обычно в двух версиях: ISDN Basic Rate Interface (BRI) с двумя каналами В и одним каналом D и ISDN Primary Rate Interface (PRI) с 23 каналами В и каналом D.
HDLC Синхронный бит-ориентированный протокол канального уровня, разработанный ISO. Производный от SDLC, HDLC определяет метод инкапсуляции данных на синхронных последовательных линиях, используя символы обрамления кадра и контрольные суммы. Данные переносятся в кадрах, которые могут содержать переменный объем данных.
SLIP Используется как метод инкапсуляции последовательного канала, поэтому является простым протоколом кадрирования пакетов. SLIP определяет несколько символов, которые обрамляют пакеты IP в последовательном канале. Это техника с минимальными накладными расходами, которая не предоставляет согласования адресации, идентификации протокола, обнаружения ошибок или механизма сжатия. Созданный для использования на медленных последовательных линиях связи (например, модемах), он определяет два специальных символа, которые применяются для обрамления кадра.
Первый — символ END (ОхСО), который используется для определения конца дейтаграммы IP. Второй символ — ESC (OxDB) используется для указания, когда символ ОхСО встречается внутри дейтаграммы IP. ESC-символ SLIP отличается от ESC-символа ASCII (0x1В).
SLIP использует технику, называемую символьным заполнением, для предотвращения появления символа END в середине дейтаграммы IP. Если символ END (ОхСО) встречается внутри исходной дейтаграммы IP, то он заменяется последовательностью OxDB-DC. Если символ ESC (OxDB) встречается внутри дейтаграммы IP, то он заменяется последовательностью OxDB-DD. Это предотвращает зависание модема в середине передачи.
Максимальный размер дейтаграммы IP для SLIP обычно ограничен 1500 байтами на более новых системах или 1006 байтами на реализациях Berkley UNIX версии 4.2. Однако эта распространенная практика не определена в стандартах.
Чтобы сократить объем накладных расходов на потенциально медленных последовательных линиях связи, в RFC 1144 определен метод сжатия заголовков IP и TCP в заголовок размером от 3-х до 5-ти байтов, который известен как OSLIP или Compressed SLIP.
РРР Протокол РРР — наследник SLIP. PPP предоставляет соединения маршрутизатор-маршрутизатор и хост-сеть через синхронные последовательные линии связи, такие как ISDN или SONET, а также асинхронные каналы, например типичные телефонные коммутируемые линии. Он исправляет недостатки SLIP.
TCP вызывает модуль низкоуровневого протокола для реальной отправки и получения информации через сеть. Одним из случаев является система взаимодействия сетей ARPA, где низкоуровневым протоколом будет IP. Если низкоуровневым протоколом является IP, он предоставляет аргументы для типа службы и для времени жизни. TCP использует следующие настройки для этих параметров: Type of service = precedence: routine; Delay: normal; Throughput: normal; Reliability: normal; или 00000000. Время жизни = одна минута, или 00111100. Отметим, что предполагаемое максимальное время жизни сегмента равно двум минутам. Здесь мы явно указываем, что сегмент будет уничтожен, если его окажется невозможно доставить по Интернету в течение одной минуты. Если нижним уровнем является IP (или другой протокол, который предоставляет это свойство) и используется маршрутизация источника, интерфейс должен разрешать передавать информацию о маршруте. Особенно важно, чтобы адреса источника и места назначения, используемые в контрольной сумме TCP, принадлежали исходному источнику и конечному месту назначения. Также важно сохранить маршрут возврата для ответа на запросы соединения.
Любой низкоуровневый протокол должен предоставлять адрес источника, адрес места назначения, поля протокола и некоторый способ определения "длины TCP" одновременно для предоставления функционально эквивалентной службы IP и для использования в контрольной сумме TCP. Обработка, показанная в этом разделе, является примером одной возможной реализации. Другие реализации могут иметь иную последовательность обработки, но они должны отличаться от приведенной в данном разделе только в деталях, а не по существу. Активность TCP можно охарактеризовать как реакцию на события. Происходящие события можно разделить на три категории: пользовательские вызовы, прибывающие сегменты и истечение времени ожидания. Этот раздел описывает обработку, которую выполняет TCP в ответ на каждое из этих событий. Во многих случаях требуемая обработка зависит от состояния соединения.
Протокол IP создан для использования в связанных системах компьютерных коммуникационных сетей с коммутацией пакетов. Протокол IP обрабатывает передаваемые от источника к месту назначения блоки данных, называемые дейтаграммами, где источниками и местами назначения являются хосты, идентифицированные адресами фиксированной длины. Протокол IP предусматривает также фрагментацию и повторную сборку длинных дейтаграмм.
Функции IP ограничены доставкой пакетов битов (дейтаграмм Интернета) от источника к месту назначения через связанную систему сетей. В нем не существует механизмов для обеспечения надежности двухточечной передачи данных, управления потоком, упорядочивания или других служб, присутствующих обычно в протоколах взаимодействия хостов. Протокол IP может использовать службы поддерживающих его сетей для предоставления служб различных типов и качества.
Этот протокол вызывается протоколами взаимодействия хостов в среде Интернета. Он вызывает протоколы локальных сетей для переноса дейтаграмм Интернета к следующему шлюзу или хосту места назначения. Например, модуль ТСР будет вызывать модуль IP, чтобы получить сегмент ТСР (включая заголовок ТСР и данные пользователя) как часть с данными дейтаграммы IP. Модуль ТСР будет предоставлять адреса и другие параметры в заголовке IP модулю IP как аргументы вызова. Модуль IP будет затем создавать дейтаграмму IP и вызывать интерфейс локальной сети для передачи дейтаграммы.
Протокол IP реализует две базовые функции: адресацию и фрагментацию. Модули IP используют адреса, передаваемые в заголовке ГР, для передачи дейтаграмм IP в направлении их места назначения. Выбор пути доступа для передачи называется маршрутизацией. Модули IP используют поля заголовка IP в случае необходимости для фрагментации и повторной сборки дейтаграмм IP.
Модель работы состоит в том, что модуль IP располагается на каждом хосте, вовлеченном в коммуникацию Интернета, и на каждом шлюзе, который соединяет сети. Эти модули используют общие правила для интерпретации полей адреса и для фрагментации и сборки дейтаграмм IP. Кроме того, эти модули (особенно на шлюзах) имеют процедуры для принятия решений о маршрутизации и другие функции.
Протокол IP интерпретирует каждую дейтаграмму IP как независимую сущность, не связанную с другой дейтаграммой IP. Не существует никаких соединений или логических связей (виртуальных или каких-либо других).
Протокол IP использует четыре ключевых механизма при предоставлении своих служб: тип службы, время жизни, параметры и контрольная сумма заголовка. Тип службы используется для указания качества желательной службы. Тип службы является абстрактным или обобщенным множеством параметров, характеризующих варианты служб, предоставляемых в сетях, из которых состоит Интернет. Это указание типа службы должно использоваться шлюзами для выбора параметров реальной передачи для определенной сети, которая будет применяться для следующего перехода или для следующего шлюза при маршрутизации дейтаграммы IP. Время жизни является указанием верхней границы времени жизни дейтаграммы IP. Оно задается отправителем дейтаграммы и уменьшается в точках вдоль маршрута, где оно обрабатывается. Если время жизни достигает нуля до того, как дейтаграмма Интернета достигает своего места назначения, дейтаграмма IP разрушается. Время жизни можно считать пределом времени саморазрушения.
Параметры, предоставляемые для управляющих функций, необходимы или полезны в некоторых ситуациях, но для большинства обычных коммуникаций не нужны. Параметры включают обеспечение отметок времени, безопасности и специальной маршрутизации. Контрольная сумма заголовка предоставляет проверку того, что информация, используемая при обработке дейтаграмм IP, была передана правильно. Данные могут содержать ошибки. Если контрольная сумма заголовка неправильная, дейтаграмма IP тотчас отбрасывается сущностью, которая обнаружила ошибку. Протокол IP не предоставляет надежного средства коммуникации. Не существует подтверждений между конечными точками или точками перехода. Отсутствует контроль ошибок данных, только контрольная сумма заголовка. Не существует повтора передачи и управления потоком. Обнаруженные ошибки могут сообщаться через протокол IСМР, который реализован в модуле протокола IP.
Протокол IP, с одной стороны, общается с протоколами коммуникации хостов более высокого уровня, а с другой стороны, с протоколом локальной сети.
