Что является более важным для организации сети система протоколов

Обновлено: 16.05.2024

3. ТРЕБОВАНИЯ, ПРЕДЪЯВЛЯЕМЫЕ К СОВРЕМЕННЫМ ВЫЧИСЛИТЕЛЬНЫМ СЕТЯМ

Основные требования, предъявляемые к вычислительным сетям — производительность, надежность, совместимость, управляемость, защищенность, расширяемость и масштабируемость . Наиболее важными из которых являются — производительность и надежность.

Независимо от выбранного показателя качества обслуживания сети существу­ют два подхода к его обеспечению. Первый подход состоит в том, что сеть гарантирует пользователю соблюдение некото­рой числовой величины показателя качества обслуживания. Например, задержка передачи пакетов сетью не будет превышать 150 мс. Или средняя пропускная спо­собность канала не будет ниже 5 Мбит/ с , при этом канал будет разрешать пульсации трафика в 10 Мбит на интервалах времени не более 2 секунд. Технологии frame relay и ATM позволяют строить сети, гарантиру­ющие качество обслуживания по производительности.

Производительность . Существует несколько основных характеристик производительности сети:

  • время реакции;
  • пропускная способность;
  • задержка передачи и вариация задержки передачи.

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

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

Средняя пропускная способность вычисляется путем деления общего объема переданных данных на время их передачи, причем выбирается достаточно длитель­ный промежуток времени — час, день или неделя.

Мгновенная пропускная способность отличается от средней тем, что для ус­реднения выбирается очень маленький промежуток времени — например, 10 мс, или 1 с .

Максимальная пропускная способность — это наибольшая мгновенная пропускная способность, зафиксированная в течение периода наблюдения.

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

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

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

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

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

Другой характеристикой надежности является вероятность доставки i пакета узлу назначения без искажений. Наряду с этой характеристикой могут использоваться и другие показатели: вероятность потери пакета, вероятность искажения отдельного бита передаваемых данных, отношение потерянных пакетов к доставленным .

Другим аспектом общей надежности является безопасность ( security ), то есть способность системы защитить данные от несанкционированного доступа.

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

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

Масштабируемость ( scalability ) означает, что сеть позволяет наращивать ко­личество узлов и протяженность связей в очень широких пределах, при этом про­изводительность сети не ухудшается. Для обеспечения масштабируемости сети приходится применять дополнительное коммуникационное оборудование и спе­циальным образом структурировать сеть.

Напри­мер, локальная сеть Ethernet , построенная на основе одного сегмента толстого ко­аксиального кабеля, обладает хорошей расширяемостью, поскольку позволяет легко подключать новые станции. Однако такая сеть имеет ограничение на число станций (не выше 30-40). Наличие такого ограничения и является признаком плохой масштабируемости системы при хорошей расширяе­мости.

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

Поддержка разных видов трафика . Компьютерные сети изначально предназначены для совместного доступа пользователя к ресурсам компьютеров: файлам, принтерам и т. п. 90-е годы стали годами проникновения в компьютерные сети трафика мультимедийных данных, представляющих в цифровой форме речь и видеоизображение.

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

Управляемость сети подразумевает возможность централизованно контролировать состояние основных элементов сети, выявлять и разрешать проблемы, возникаю­щие при работе сети, выполнять анализ производительности и планировать разви­тие сети.

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

Сетевые протоколы и их взаимодействие. Правила, управляющие коммуникациями. Индустриальные стандарты и технологически независимые протоколы

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

Правила, Управляющие Коммуникациями

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

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

Успешная коммуникация между хостами в сети требует взаимодействия множества различных протоколов. Группа взаимосвязанных протоколов, которые необходимы для осуществления функции коммуникации, называется набором протоколов. Эти протоколы реализовани на уровне программного обеспечения и оборудования, которое загружается на каждом хосте и сетевом устройстве.

Использование Слоев Для Описания Коммуникации Лицом к Лицу

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

Были бы мы свидетелями этой коммуникации, мы бы в действительности не видели “уровни”, плавающие в воздухе. Важно понимать, что использование уровней (или слоев) – это модель и, как таковая, она предоставляет удобный способ разбить сложную задачу на части и описать, как они работают.

Сетевые Протоколы

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

Наборы сетевых протоколов описывают такие вещи как:

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

Наборы Протоколов и Индустриальные Стандарты

Часто многие из протоколов, составляющих набор протоколов, ссылаются на другие широко используемые протоколы или индустриальные стандарты. Стандарт – это процесс или протокол, который был одобрен сетевой индустрией и ратифицирован организацией по стандартизации, такой как Сообщество Инженеров Электричества и Электроники (англ. Institute of Electrical and Electronics Engineers или IEEE) или Целевая (Оперативная) Группа Инженерной Поддержки Интернета (англ. Internet Engineering Task Force или IETF).

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

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

Взаимодействие Протоколов

Протокол Приложения:

Транспортный Протокол:

Сетевой Протокол:

Самый распространенный сетевой протокол – это Интернет Протокол ( англ. Internet Protocol или IP). IP несет ответственность за прием отформатированных сегментов от TCP, инкапсуляции их в пакеты, назначения соответствующих адресов и выбора наилучшего маршрута к хосту назначения.

Протоколы Сетевого Доступа:

Протоколы сетевого доступа описывают две основных функции, управлением канала данных и физической передачей данных по соединению. Протоколы управления каналом данных принимают пакеты от IP и форматируют их для передачи по соединению. Стандарты и протоколы для физических соединений управляют тем, как сигналы посылаются по соединению и тем, как они интерпретируются получающими их клиентами. Трансиверы (приемопередатчики) на сетевых картах подчиняются соответствующим стандартам для используемого типа соединения.

Технологично Независимые Протоколы

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

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

Это означает, что компьютер – и другие устройства, наподобие мобильных телефонов или КПК – могут получить доступ к веб странице, хранимой на любом типе веб сервера, который использует любую разновидность операционной системы, где угодно в Интернете.

Руководство по стеку протоколов TCP/IP для начинающих

Cтек протоколов TCP/IP широко распространен. Он используется в качестве основы для глобальной сети интернет. Разбираемся в основных понятиях и принципах работы стека.

Основы TCP/IP

Стек протоколов TCP/IP (Transmission Control Protocol/Internet Protocol, протокол управления передачей/протокол интернета) — сетевая модель, описывающая процесс передачи цифровых данных. Она названа по двум главным протоколам, по этой модели построена глобальная сеть — интернет. Сейчас это кажется невероятным, но в 1970-х информация не могла быть передана из одной сети в другую, с целью обеспечить такую возможность был разработан стек интернет-протоколов также известный как TCP/IP.

Разработкой этих протоколов занималось Министерство обороны США, поэтому иногда модель TCP/IP называют DoD (Department of Defence) модель. Если вы знакомы с моделью OSI, то вам будет проще понять построение модели TCP/IP, потому что обе модели имеют деление на уровни, внутри которых действуют определенные протоколы и выполняются собственные функции. Мы разделили статью на смысловые части, чтобы было проще понять, как устроена модель TCP/IP:


Уровневая модель TCP/IP

Три верхних уровня — прикладной, транспортный и сетевой — присутствуют как в RFC, так и у Таненбаума и других авторов. А вот стоит ли говорить только о канальном или о канальном и физическом уровнях — нет единого мнения. В RFC они объединены, поскольку выполняют одну функцию. В статье мы придерживаемся официального интернет-стандарта RFC и не выделяем физический уровень в отдельный. Далее мы рассмотрим четыре уровня модели.

Канальный уровень (link layer)

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

Этот уровень также вычисляет максимальное расстояние, на которое пакеты возможно передать, частоту сигнала, задержку ответа и т.д. Все это — физические свойства среды передачи информации. На канальном уровне самым распространенным протоколом является Ethernet, но мы рассмотрим его на примере в конце статьи.

Межсетевой уровень (internet layer)

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

Межсетевое взаимодействие — это основной принцип построения интернета. Локальные сети по всему миру объединены в глобальную, а передачу данных между этими сетями осуществляют магистральные и пограничные маршрутизаторы.

Маска подсети и IP-адреса


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

Протокол интернета — IP (Internet Protocol) используется маршрутизатором, чтобы определить, к какой подсети принадлежит получатель. Свой уникальный IP-адрес есть у каждого сетевого устройства, при этом в глобальной сети не может существовать два устройства с одинаковым IP. Он имеет два подвида, первым был принят IPv4 (IP version 4, версии 4) в 1983 году.

IPv4 предусматривает назначение каждому устройству 32-битного IP-адреса, что ограничивало максимально возможное число уникальных адресов 4 миллиардами (2 32 ). В более привычном для человека десятичном виде IPv4 выглядит как четыре блока (октета) чисел от 0 до 255, разделенных тремя точками. Первый октет IP-адреса означает его класс, классов всего 4: A, B, C, D.

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

Так как IPv6 адреса длинные, их разрешается сокращать по следующим правилам: ведущие нули допускается опускать, например в адресе выше :00FF: позволяется записывать как :FF:, группы нулей, идущие подряд тоже допустимо сокращать и заменять на двойное двоеточие, например, 2DAB:FFFF::01AA:00FF:DD72:2C4A. Допускается делать не больше одного подобного сокращения в адресе IPv6.

IP предназначен для определения адресата и доставки ему информации, он предоставляет услугу для вышестоящих уровней, но не гарантирует целостность доставляемой информации.

ICMP и IGMP


ICMP никогда не вызывается сетевыми приложениями пользователя, кроме случаев диагностики сети, к примеру, пинг (ping) или traceroute (tracert). ICMP не передает данные, это отличает его от транспортных TCP и UDP, расположенных на L3, которые переносят любые данные. ICMP работает только с IP четвертой версии, с IPv6 взаимодействует ICMPv6.

Сетевые устройства объединяются в группы при помощи IGMP, используемый хостами и роутерами в IPv4 сетях. IGMP организует multicast-передачу информации, что позволяет сетям направлять информацию только хостам, запросившим ее. Это удобно для онлайн-игр или потоковой передаче мультимедиа. IGMP используется только в IPv4 сетях, в сетях IPv6 используется MLD (Multicast Listener Discovery, протокол поиска групповых слушателей), инкапсулированный в ICMPv6.

Транспортный уровень (transport layer)

Постоянные резиденты транспортного уровня — протоколы TCP и UDP, они занимаются доставкой информации.

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

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

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

Протоколы L3 не интерпретируют информацию, полученную с верхнего или нижних уровней, они служат только как канал передачи, но есть исключения. RSVP (Resource Reservation Protocol, протокол резервирования сетевых ресурсов) может использоваться, например, роутерами или сетевыми экранами в целях анализа трафика и принятия решений о его передаче или отклонении в зависимости от содержимого.

Прикладной уровень (application layer)

В модели TCP/IP отсутствуют дополнительные промежуточные уровни (представления и сеансовый) в отличие от OSI. Функции форматирования и представления данных делегированы библиотекам и программным интерфейсам приложений (API) — своего рода базам знаний. Когда службы или приложения обращаются к библиотеке или API, те в ответ предоставляют набор действий, необходимых для выполнения задачи и полную инструкцию, каким образом эти действия нужно выполнять.

Зачем нужен порт и что означает термин сокет

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

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


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

Стек протоколов, снова канальный уровень

После ознакомления с уровневой структурой модели становится понятно, что информация не может передаваться между двумя компьютерами напрямую. Сначала кадры передаются на межсетевой уровень, где компьютеру отправителя и компьютеру получателя назначается уникальный IP. После чего, на транспортном уровне, информация передается в виде TCP-фреймов либо UDP-датаграмм.

На каждом этапе, подобно снежному кому, к уже имеющейся информации добавляется служебная информация, например, порт на прикладном уровне, необходимый для идентификации сетевого приложения. Добавление служебной информации к основной обеспечивают разные протоколы — сначала Ethernet, поверх него IP, еще выше TCP, над ним порт, означающий приложение с делегированным ему протоколом. Такая вложенность называется стеком, названным TCP/IP по двум главным протоколам модели.

Point-to-Point протоколы


Отдельно расскажем о Point-to-Point (от точки к точке, двухточечный) протоколе также известном как PPP. PPP уникален по своим функциям, он применяется для коммуникации между двумя маршрутизаторами без участия хоста или какой-либо сетевой структуры в промежутке. При необходимости, PPP обеспечивает аутентификацию, шифрование, а также сжатие данных. Он широко используется при построении физических сетей, например, кабельных телефонных, сотовых телефонных, сетей по кабелю последовательной передачи и транк-линий (когда один маршрутизатор подключают к другому для увеличения размера сети).

У PPP есть два подвида — PPPoE (PPP по Ethernet) и PPPoA (PPP через асинхронный способ передачи данных — ATM), интернет-провайдеры часто их используют для DSL соединений.

PPP и его старший аналог SLIP (протокол последовательной межсетевой связи) формально относятся к межсетевому уровню TCP/IP, но в силу особого принципа работы, иногда выделяются в отдельную категорию. Преимущество PPP в том, что для установки соединения не требуется сетевая инфраструктура, а необходимость маршрутизаторов отпадает. Эти факторы обуславливают специфику использования PPP протоколов.

Заключение

Стек TCP/IP регламентирует взаимодействие разных уровней. Ключевым понятием в здесь являются протоколы, формирующие стек, встраиваясь друг в друга с целью передать данные. Рассмотренная модель по сравнению с OSI имеет более простую архитектуру.

Сама модель остается неизменной, в то время как стандарты протоколов могут обновляться, что еще дальше упрощает работу с TCP/IP. Благодаря всем преимуществам стек TCP/IP получил широкое распространение и использовался сначала в качестве основы для создания глобальной сети, а после для описания работы интернета.

TCP/IP

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

В этой лекции мы изучим некоторые наиболее часто применяемые в сетях стеки протоколов, в том числе самый распространенный на сегодня набор протоколов — стек TCP/IP.

NetBEUI

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

Соответственно, его нельзя использовать в крупных сетях, объединенных маршрутизаторами, и при работе с Интернетом. Протокол NetBEUI поставлялся в составе всех операционных систем Windows вплоть до Windows 2000, однако в последних версиях его поддержка прекращена .

IPS/SPX и NWLink

Стек протоколов IPX/SPX был разработан фирмой Novell в начале 80-х гг. для своей сетевой операционной системы NetWare. Основа стека — это протоколы IPX (Internetwork Packet eXchange) и SPX (Sequenced Packet eXchange), реализующие функции сетевого и транспортного уровней модели OSI соответственно. Как и NetBEUI, протокол IPX/SPX является небольшим (его программную поддержку легко уместить на обычной дискете 1,44 Мб вместе с DOS) и быстрым, что было особенно важно в эпоху первого поколения IBM-совместимых компьютеров с малым объемом оперативной памяти (640 Кбайт).

TCP/IP

История развития стека TCP/IP (как и история Интернета) началась еще в конце 60-х гг. прошло¬го, XX века с проекта ARPANet — сети Агентства перспективных исследовательских проектов (Advanced Research Project Agency Network) Министерства обороны США.

 Основные протоколы стека TCP/IP

Рис.1 Основные протоколы стека TCP/IP

Примерно также работает и протокол TCP:

  • устанавливает соединение между компьютерами по определенным портам;
  • на компьютере-отправителе разбивает информацию на пакеты, нумерует их и с помощью протокола IP передает получателю;
  • на компьютере-получателе проверяет, все ли пакеты получены, а если пакет пропущен или поврежден, запрашивает у отправителя повторную пересылку;
  • после получения всех пакетов закрывает соединение, собирает пакеты в нужном порядке и передает полученные данные приложению более высокого уровня.

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

Очевидно, почтовые отправления в обоих этих примерах являются аналогами IP-пакетов, а почтальоны выполняют функции протокола IP.

Наконец, самым богатым по набору протоколов является прикладной уровень стека TCP/IP. Ниже в табл. 1-3 приведены самые популярные протоколы, а также зарезервированные для них порты.

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

Несмотря на существование большого количества наборов протоколов, основным сегодня является общедоступный стек TCP/IP. Он используется практически повсеместно, начиная с небольших домашних сетей и заканчивая крупнейшей сетью — Интернетом

Протоколы прикладного уровня стека TCP/IP

Табл. 1 Протоколы прикладного уровня стека TCP/IP

Протоколы прикладного уровня стека TCP/IP

Табл. 2 Протоколы прикладного уровня стека TCP/IP

Протоколы прикладного уровня стека TCP/IP

Табл 3. Протоколы прикладного уровня стека TCP/IP

Терминология компьютерной сети Протоколы

Сетевой протокол — это набор программно реализованных правил общения компьютеров, подключенных к сети. Практически это "язык", на котором компьютеры разговаривают друг с другом. В настоящее время стандартом стало использование только протокола TCP/IP. В предыдущих версиях Windows по умолчанию устанавливалось несколько протоколов, обычно это NetBEUI, NWLink IPX/SPX, TCP/IP.

  • NetBEUI.
    Компактный и эффективный протокол для взаимодействия в малых сетях (до 200 компьютеров). Используется в самых разнообразных системах: Microsoft LAN Manager, Windows 3.1/3.11 for Workgroups/95/98/NT 4.0, IBM PCLAN, LAN Server и т. п. В Windows 2000 и старше применяется новая спецификация этого протокола, которая получила название NetBIOS Frame Protocol (NBFP). NetBEUI (NBFP) не требует никаких дополнительных настроек. Если нужно быстро создать сеть и вы не чувствуете себя уверенными в понимании дополнительных настроек, которых, например, требует протокол TCP/IP, то включите протокол NBFP. Вы получите простую и весьма быстро функционирующую локальную сеть.
  • NWLink IPX/SPX.
    Если в сети есть серверы Novell NetWare, то этот протокол необходим для организации с ними связи. В противном случае данный протокол следует исключить из числа используемых в системе.
  • TCP/IP.
    Основной рекомендуемый протокол как для больших сетей предприятий и малых офисов, так и для соединения домашних компьютеров в частную сеть. В отличие от других протоколов требует ряда предварительных настроек.

Примечание
He следует использовать в сети больше служб и протоколов, чем требуется для нормальной работы в конкретной ситуации. Во-первых, при этом будут непро-изводительно использоваться ресурсы компьютера. Во-вторых, любая допол-нительная служба и неиспользуемый протокол — это еще один "вход" в систему, который надо защищать. Поэтому проще не предоставлять дополнительных возможностей хакерам, чем постоянно следить за обнаруживаемыми в этих службах уязвимостями, устанавливать необходимые обновления и т. п.

Модель OSI

С целью систематизации часто используется модель OSI, условно разбивающая сетевое взаимодействие на семь уровней.
Знание уровней OSI обычно требуется при сдаче тех или иных сертификационных экзаменов, но на практике такое деление потеряло свое значение. Если первые три уровня еще можно достаточно хорошо вычленить при анализе того или иного сетевого проекта, то классифицировать функциональность оборудования по остальным уровням достаточно сложно. В маркетинговых целях часто указывают в описаниях коммутаторов, что они работают, например, на уровне 4 или 7. На практике это означает только, что при реализации определенного функционала в коммутаторах производится анализ пакета данных по характеристикам, относящимся к соответствующим уровням. Например, это происходит при операциях маршрутизации группового трафика (коммутатор анализирует пакет на принадлежность той или иной программе), приоритезации пакетов и т. п.


Стек протоколов TCP/IP

Поэтому принято говорить, что существуют уровни протокола IP, а на каждом уровне — различные варианты специальных протоколов. Весь этот набор протоколов называют стеком протоколов TCP/IP.

Протоколы UPD, TCP, ICMP

IPv6

Бурное развитие Интернета привело к тому, что параметры, заложенные при создании протоколов IP, стали сдерживать дальнейшее развитие глобальной сети. Поэтому многочисленные группы постоянно разрабатывают возможные модификации данного протокола. Наиболее "признанной" на данный момент разработкой считается проект группы IETF (Internet Engineering Task Force, проблемная группа проектирования Интернета), который называют IPv6 (другие проекты объединяют общим названием IP Next Generation или IPng).
К основным особенностям данного проекта относятся:

Хотя большинство участников Интернета поддерживает разработку этого протокола, однако реальное внедрение данной разработки потребует длительного времени и существенных инвестиций, поскольку влечет за собой модернизацию большого количества уже установленного оборудования.
Поддержка протокола IPv6 заложена в операционные системы Windows, начиная с Windows ХР. Чтобы ее включить в Windows XP, необходимо выполнить команду ipv6 install. Но использование ipv6 пока еще не имеет практического значения. По разным оценкам нехватка адресного пространства протокола IPv4 может возникнуть не ранее чем через 5—10 лет. Это достаточный срок для разработки уже следующей спецификации протокола IP.

Параметры TCP/IP протокола
IP-адрес

Каждый компьютер, работающий по протоколу TCP/IP, обязательно имеет IP-адрес— 32-битное число, используемое для идентификации узла (компьютера) в сети. Адрес принято записывать десятичными значениями каждого октета этого числа с разделением полученных значений точками. Например: 192.168.101.36.
IP-адреса уникальны. Это значит, что каждый компьютер имеет свое сочетание цифр, и в сети не может быть двух компьютеров с одинаковыми адресами. IP-адреса распределяются централизованно. Интернет-провайдеры дела ют заявки в национальные центры в соответствии со своими потребностями Полученные провайдерами диапазоны адресов распределяются далее между клиентами. Клиенты сами могут выступать в роли интернет-провайдера и распределять полученные IP-адреса между субклиентами и т.д. При таком способе распределения IP-адресов компьютерная система точно знает "pacположение" компьютера, имеющего уникальный IP-адрес; ей достаточно переслать данные в сеть "владельца". Провайдер в свою очередь проанализирует пункт назначения и, зная, кому отдана эта часть адресов, отправит инфор мацию следующему владельцу поддиапазона IP-адресов, пока данные не поступят на компьютер назначения.
Выделение диапазона адресов осуществляется бесплатно, но организация получившая адреса, должна реально подтвердить их использование через oп ределенный промежуток времени.
Для построения локальных сетей организаций выделены специальные диапа зоны адресов. Это адреса Ю.х.х.х, 192.168.х.х, Ю.х.х.х, с 172.16.х.х по 172.31.х.х, 169.254.Х.Х. Пакеты, передаваемые с указанных адресов, не маршрутизируются (иными словами, не пересылаются) через Интернет, поэтому в различных локальных сетях компьютеры могут иметь совпадающие адреса из указанных диапазонов. Для пересылки информации с таких компьютеров в Интернет и обратно используются специальные программы, "на лету" заменяющие локальные адреса реальными при работе с Интернетом. Иными словами, данные в Сеть пересылаются от реального IP-адреса. Этот процесс происходит "незаметно" для пользователя. Такая технология называется трансляцией адресов .

Групповые адреса

Если данные должны быть переданы на несколько устройств (например, просмотр видео с одной Web-камеры на различных компьютерах или одновременное разворачивание образа операционной системы на несколько систем), то уменьшить нагрузку на сеть может использование групповыхрассылок.
Для этого компьютеру присваивается еще один IP-адрес из специального диапазона: с 224.0.0.0 по 239.255.255.255, причем диапазоны 224.0.0.0— 224.0.0.255 и 239.0.0.0—239.255.255.255 не могут быть использованы в приложениях и предназначены для протоколов маршрутизации3 и т. п. Назначение адресов групповой рассылки производится соответствующим программным обеспечением.
Если коммутатор имеет функции работы с групповыми рассылками (поддержка IGMP snoophing, P1M DM/PIM SM), то передаваемые на адреса групповой рассылки данные будут поступать только на те порты, к которым подключены устройства, подписавшиеся на соответствующие рассылки. В результате сетевой трафик может быть существенно снижен по сравнению с вариантом передачи таких данных каждому устройству сети независимо.

Распределение IP-адресов сети малого офиса

В сетях предприятий обычно задействованы диапазоны IP-адресов, выделенные для локального использования. Часть адресов закрепляется статически, часть— раздается динамически с помощью DHCP (Dynamic Host Configuration Protocol, динамический протокол конфигурации сервера).

Статические адреса закрепляются:

  • за шлюзом, для которого обычно используют адрес ххх.ххх.ххх.1, но это традиция, а не правило;
  • за серверами DNS, DHCP, WINS;
  • за контроллерами домена;
  • за серверами сети (например, централизованные файловые ресурсы, почтовый сервер и т. п.);
  • за станциями печати, имеющими непосредственное подключение к сети;
  • за управляемыми сетевыми устройствами (например, сетевыми переключателями, SNMP-управляемыми источниками аварийного питания и т. п.).

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

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

Для упрощения администрирования сети рекомендуется выработать план распределения диапазона адресов и предусмотреть в нем некоторый запас для будущего развития информационной системы.

Маска адреса

Понятие подсети введено, чтобы можно было выделить часть IP-адресов одной организации, часть другой и т. д. Подсеть представляет собой диапазон IP-адресов, которые считаются принадлежащими одной локальной сети. При работе в локальной сети информация пересылается непосредственно получателю. Если данные предназначены компьютеру с IP-адресом, не принадлежащим локальной сети, то к ним применяются специальные правила для вычисления маршрута пересылки из одной сети в другую. Поэтому при использовании протокола TCP/IP важно знать, к какой сети принадлежит получатель информации: к локальной или удаленной.
Маска— это параметр, который "сообщает" программному обеспечению о том, сколько компьютеров объединено в данную группу ("подсеть"). Маска адреса имеет такую же структуру, как и сам IP-адрес: это набор из четырех групп чисел, каждое из которых может быть в диапазоне от 0 до 255. При этом чем меньше значение маски, тем больше компьютеров объединено в данную подсеть. Для сетей небольших предприятий маска обычно имеет вид 255.255.255.x (например, 255.255.255.224). Маска сети присваивается компьютеру одновременно с IP-адресом.

Так, сеть 192.168.0.0 с маской 255.255.255.0 (иначе можно записать 192.168.0.0/24) может содержать хосты с адресами от 192.168.0.1 до 192.168.0.254. Адрес 192.168.0.255 — это адрес широковещательной рассылки для данной сети. А сеть 192.168.0.0 с маской 255.255.255.128 (192.168.0.0/25) допускает адреса от 192.168.0.1 до 192.168.0.127 (адрес 192.168.0.128 используется при этом в качестве широковещательного).
На практике сети с небольшим возможным числом хостов используются интернет-провайдерами (с целью экономии IP-адресов). Например, клиенту может быть назначен адрес с маской 255.255.255.252. Такая подсеть содержит только два хоста. При разбиении сети организации используют диапазоны локальных адресов сетей класса С. Сеть класса С имеет маску адреса 255.255.255.0 и может содеражать до 254 хостов. Применение сетей класса С при разбиении на VLAN в условиях предприятия связано с тем, что протоколы автоматической маршрутизации используют именно такие подсети.
При создании подсетей в организации рекомендуется придерживаться следующего правила: подсети, относящиеся к определенному узлу распределения, должны входить в одну сеть. Это упрощает таблицы маршрутизации и экономит ресурсы коммутаторов. Например, если к данному коммутатору подключены подсети 192.168.0.0/255.255.255.0, 192.168.1.0/255.255.255.0, 192.168.3.0/255.255.255.0, то другому коммутатору достаточно знать, что в этом направлении следует пересылать пакеты для сети 192.168.0.0/255.255.252.0.
Эта рекомендация несущественна для сетей малых и средних организаций, поскольку ресурсов современных коммутаторов достаточно для хранения настроек такого объема.

После того как компьютер получил IP-адрес и ему стало "известно" значение маски подсети, программа может начать работу в данной локальной подсети. Чтобы обмениваться информацией с другими компьютерами в глобальной сети, необходимо знать правила, куда пересылать информацию для внешней сети. Для этого служит такая характеристика IP-протокола, как адрес шлюза.

Шлюз (Gateway, default gateway)

Шлюз (gateway)— это устройство (компьютер), которое обеспечивает пересылку информации между различными IP-подсетями. Если программа определяет (по IP-адресу и маске), что адрес назначения не входит в состав локальной подсети, то она отправляет эти данные на устройство, выполняющее функции шлюза. В настройках протокола указывают IP-адрес такого устройства.
Для работы только в локальной сети шлюз может не назначаться.
Для индивидуальных пользователей, подключающихся к Интернету, или для небольших предприятий, имеющих единственный канал подключения, в системе должен быть только один адрес шлюза — это адрес того устройства, которое имеет подключение к Сети. При наличии нескольких маршрутов (путей пересылки данных в другие сети) будет существовать несколько шлюзов. В этом случае для определения пути передачи данных используется таблица маршрутизации.

Таблицы маршрутизации

Организация может иметь несколько точек подключения к Интернету (например, в целях резервирования каналов передачи данных или использования более дешевых каналов и т. п.) или содержать в своей структуре несколько IP-сетей. В этом случае, чтобы система "знала", каким путем (через какой шлюз) посылать ту или иную информацию, используются таблицы маршрутизации (routing). В таблицах маршрутизации для каждого шлюза указывают те подсети Интернета, для которых через них должна передаваться информация. При этом для нескольких шлюзов можно задать одинаковые диапазоны назначения, но с разной стоимостью передачи данных: информация будет отсылаться по каналу, имеющему самую низкую стоимость, а в случае его выхода из строя по тем или иным причинам автоматически будет использоваться следующее наиболее "дешевое" подсоединение.
Таблицы маршрутизации имеются на каждом устройстве, использующем протокол IP. Администраторы в основном работают с таблицами маршрутизации коммутирующего оборудования. Настройка таблиц маршрутизации компьютеров имеет смысл только в случае наличия нескольких сетевых адаптеров, подключенных к различным сегментам сети. Если у компьютера есть только одна сетевая карта (одно подключение к Интернету), таблица маршрутизации имеет наиболее простой вид: в ней записано, что все сигналы должны отправляться на шлюз, назначенный по умолчанию (default gateway).

Просмотреть таблицу маршрутизации протокола TCP/IP можно при помощи команды route print. С помощью команды route можно также добавить новый статический маршрут (route add) или постоянный маршрут— route add -p (маршрут сохраняется в настройках после перезагрузки системы).
Покажем на примере, как можно использовать модификации таблицы маршрутизации. Предположим, что на компьютере имеются две сетевых карты, одна из которых непосредственно подключена к Интернету (имеет реальный адрес), а вторая используется для работы во внутренней сети (локальный адрес). Доступ в Интернет производится по умолчанию через шлюз в локальной сети. В этом случае таблица маршрутизации, отображаемая по команде route print, выглядит примерно так:


Проверим путь прохождения пакетов на адрес Интернета, например 109.84.231.210, с помощью команды tracert:
tracert 109.84.231.210 -dВ итоге получаем примерно такую картину (листинг ограничен первыми четырьмя узлами):


Предположим, что мы хотим изменить путь прохождения пакетов к выбранному нами хосту, направив информацию через вторую сетевую карту (а не через шлюз по умолчанию). Для этого с помощью команды route add нужно добавить желаемый нами маршрут:
route add 109.84.231.210 mask 255.255.255.255 195.161.192.2
В команде мы указали, что хотим назначить новый маршрут не для диапазона адресов, а только для конкретного значения (поэтому маска — 255.255.255.255). Кроме того, явно указали адрес сетевого интерфейса, через который нужно пересылать пакеты.
После исполнения данной команды (на экран система не выводит никаких итогов операции) изменения можно просмотреть через таблицу маршрутизации.

По сравнению с исходным вариантом таблица маршрутизации дополнилась одной строкой, которая приведена в данном примере (остальные строки не изменились ).

Проверяем новый путь прохождения сигналов:
Трассировка маршрута к 109.84.231.210 с максимальным числом прыжков 30

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

route delete 109.84.231.210

При этом обычно можно не указывать параметры маски и интерфейса (если они однозначно определяются по вводимому в команде адресу).

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

Понимание правил маршрутизации важно не только при построении маршрутов в Интернете, — задаче, которую вряд ли придется решать администраторам сетей некрупных предприятий. На практике для выделения обособленных участков локальной сети (например, по соображениям безопасности) достаточно широко используются виртуальные сети . А для того чтобы обеспечить избранный доступ в такие сети, администраторы должны уметь написать правильную таблицу маршрутизации для соответствующей VLAN.

Читайте также: