Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Вычислительные сети с коммутацией пакетов. Принципы функционирования, области применения.

Поиск

Вычислительные сети с коммутацией пакетов. Принципы функционирования, области применения.

Принципы коммутации пакетов

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

Коэффициент пульсации трафика отдельного пользователя сети, равный отношению средней интенсивности обмена данными к максимально возможной, может составлять 1:50 или 1:100. Если для описанной сессии организовать коммутацию канала между компьютером пользователя и сервером, то большую часть времени канал будет простаивать. В то же время коммутационные возможности сети будут использоваться - часть тайм-слотов или частотных полос коммутаторов будет занята и недоступна другим пользователям сети.

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

Рис. 2.29. Разбиение сообщения на пакеты

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

Рис. 2.30. Сглаживание пульсаций трафика в сети с коммутацией пакетов

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

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

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

Коммутация сообщений

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

Рис. 2.32. Коммутация сообщений

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

По такой схеме обычно передаются сообщения, не требующие немедленного ответа, чаще всего сообщения электронной почты. Режим передачи с промежуточным хранением на диске называется режимом «хранение-и-передача» (store-and-forward).

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

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

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

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

Уровни модели OSI

В литературе наиболее часто принято начинать описание уровней модели OSI с 7-го уровня, называемого прикладным, на котором пользовательские приложения обращаются к сети. Модель OSI заканчивается 1-м уровнем — физическим, на котором определены стандарты, предъявляемые независимыми производителями к средам передачи данных:

· тип передающей среды (медный кабель, оптоволокно, радиоэфир и др.),

· тип модуляции сигнала,

· сигнальные уровни логических дискретных состояний (нуля и единицы).

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

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

К базовым сетевым технологиям относятся физический и канальный уровни.

 

[править]Прикладной уровень

Основная статья: Прикладной уровень

Прикладной уровень (уровень приложений; англ. application layer) — верхний уровень модели, обеспечивающий взаимодействие пользовательских приложений с сетью:

· позволяет приложениям использовать сетевые службы:

· удалённый доступ к файлам и базам данных,

· пересылка электронной почты;

· отвечает за передачу служебной информации;

· предоставляет приложениям информацию об ошибках;

· формирует запросы к уровню представления.

Протоколы прикладного уровня: RDP, HTTP, SMTP, SNMP, POP3, FTP, XMPP, OSCAR, Modbus, SIP, TELNET и другие.

[править]Уровень представления

Основная статья: Представительский уровень

Представительский уровень (уровень представления; англ. presentation layer) обеспечивает преобразование протоколов и шифрование/дешифрование данных. Запросы приложений, полученные с прикладного уровня, на уровне представления преобразуются в формат для передачи по сети, а полученные из сети данные преобразуются в формат приложений. На этом уровне может осуществляться сжатие/распаковка или кодирование/декодирование данных, а также перенаправление запросов другому сетевому ресурсу, если они не могут быть обработаны локально.

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

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

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

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

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

Другим форматом представлений является тэгированный формат файлов изображений TIFF, который обычно используется для растровых изображений с высокимразрешением. Следующим стандартом уровня представлений, который может использоваться для графических изображений, является стандарт, разработанный Объединенной экспертной группой по фотографии (Joint Photographic Expert Group); в повседневном пользовании этот стандарт называют просто JPEG.

Существует другая группа стандартов уровня представлений, которая определяет представление звука и кинофрагментов. Сюда входят интерфейс электронных музыкальных инструментов (англ. Musical Instrument Digital Interface, MIDI) для цифрового представления музыки, разработанный Экспертной группой по кинематографии стандарт MPEG, используемый для сжатия и кодирования видеороликов на компакт-дисках, хранения в оцифрованном виде и передачи со скоростями до 1,5 Мбит/с, иQuickTime — стандарт, описывающий звуковые и видео элементы для программ, выполняемых на компьютерах Macintosh и PowerPC.

Протоколы уровня представления: AFP — Apple Filing Protocol, ICA — Independent Computing Architecture, LPP — Lightweight Presentation Protocol, NCP — NetWare Core Protocol, NDR — Network Data Representation, XDR — eXternal Data Representation, X.25 PAD — Packet Assembler/Disassembler Protocol.

[править]Сеансовый уровень

Основная статья: Сеансовый уровень

Сеансовый уровень (англ. session layer) модели обеспечивает поддержание сеанса связи, позволяя приложениям взаимодействовать между собой длительное время. Уровень управляет созданием/завершением сеанса, обменом информацией, синхронизацией задач, определением права на передачу данных и поддержанием сеанса в периоды неактивности приложений.

Протоколы сеансового уровня: ADSP (AppleTalk Data Stream Protocol), ASP (AppleTalk Session Protocol), H.245 (Call Control Protocol for Multimedia Communication), ISO-SP (OSI Session Layer Protocol (X.225, ISO 8327)), iSNS (Internet Storage Name Service), L2F (Layer 2 Forwarding Protocol), L2TP (Layer 2 Tunneling Protocol), NetBIOS (Network Basic Input Output System), PAP (Password Authentication Protocol), PPTP (Point-to-Point Tunneling Protocol), RPC (Remote Procedure Call Protocol), RTCP (Real-time Transport Control Protocol), SMPP (Short Message Peer-to-Peer), SCP (Session Control Protocol), ZIP (Zone Information Protocol), SDP (Sockets Direct Protocol)..

[править]Транспортный уровень

Основная статья: Транспортный уровень

Транспортный уровень (англ. transport layer) модели предназначен для обеспечения надёжной передачи данных от отправителя к получателю. При этом уровень надёжности может варьироваться в широких пределах. Существует множество классов протоколов транспортного уровня, начиная от протоколов, предоставляющих только основные транспортные функции (например, функции передачи данных без подтверждения приема), и заканчивая протоколами, которые гарантируют доставку в пункт назначения нескольких пакетов данных в надлежащей последовательности, мультиплексируют несколько потоков данных, обеспечивают механизм управления потоками данных и гарантируют достоверность принятых данных. Например, UDP ограничивается контролем целостности данных в рамках одной датаграммы, и не исключает возможности потери пакета целиком, или дублирования пакетов, нарушение порядка получения пакетов данных; TCP обеспечивает надёжную непрерывную передачу данных, исключающую потерю данных или нарушение порядка их поступления или дублирования, может перераспределять данные, разбивая большие порции данных на фрагменты и наоборот склеивая фрагменты в один пакет.

Протоколы транспортного уровня: ATP (AppleTalk Transaction Protocol), CUDP (Cyclic UDP), DCCP (Datagram Congestion Control Protocol), FCP (Fiber Channel Protocol), IL (IL Protocol), NBF (NetBIOS Frames protocol), NCP (NetWare Core Protocol), SCTP (Stream Control Transmission Protocol), SPX (Sequenced Packet Exchange), SST (Structured Stream Transport), TCP (Transmission Control Protocol), UDP (User Datagram Protocol).

[править]Сетевой уровень

Основная статья: Сетевой уровень

Сетевой уровень (англ. network layer) модели предназначен для определения пути передачи данных. Отвечает за трансляцию логических адресов и имён в физические, определение кратчайших маршрутов, коммутацию и маршрутизацию, отслеживание неполадок и «заторов» в сети.

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

Протоколы сетевого уровня: IP/IPv4/IPv6 (Internet Protocol), IPX (Internetwork Packet Exchange, протокол межсетевого обмена), X.25 (частично этот протокол реализован на уровне 2), CLNP (сетевой протокол без организации соединений), IPsec (Internet Protocol Security). Протоколы маршрутизации - RIP (Routing Information Protocol), OSPF (Open Shortest Path First).

[править]Канальный уровень

Основная статья: Канальный уровень

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

Спецификация IEEE 802 разделяет этот уровень на два подуровня: MAC (англ. media access control) регулирует доступ к разделяемой физической среде, LLC(англ. logical link control) обеспечивает обслуживание сетевого уровня.

На этом уровне работают коммутаторы, мосты и другие устройства. Говорят, что эти устройства используют адресацию второго уровня (по номеру уровня в модели OSI).

Протоколы канального уровня: ARCnet, ATM, Controller Area Network (CAN), Econet, Ethernet, Ethernet Automatic Protection Switching (EAPS), Fiber Distributed Data Interface(FDDI), Frame Relay, High-Level Data Link Control (HDLC), IEEE 802.2 (provides LLC functions to IEEE 802 MAC layers), Link Access Procedures, D channel (LAPD), IEEE 802.11 wireless LAN, LocalTalk, Multiprotocol Label Switching (MPLS), Point-to-Point Protocol (PPP), Point-to-Point Protocol over Ethernet (PPPoE), Serial Line Internet Protocol(SLIP, устарел), StarLan, Token ring, Unidirectional Link Detection (UDLD), x.25.

В программировании этот уровень представляет драйвер сетевой платы, в операционных системах имеется программный интерфейс взаимодействия канального и сетевого уровней между собой. Это не новый уровень, а просто реализация модели для конкретной ОС. Примеры таких интерфейсов: ODI, NDIS, UDI.

[править]Физический уровень

Основная статья: Физический слой

Физический уровень (англ. physical layer) — нижний уровень модели, который определяет метод передачи данных, представленных в двоичном виде, от одного устройства (компьютера) к другому. Составлением таких методов занимаются разные организации, в том числе: Институт инженеров по электротехнике и электронике,Альянс электронной промышленности, Европейский институт телекоммуникационных стандартов и другие. Осуществляют передачу электрических или оптических сигналов в кабель или в радиоэфир и, соответственно, их приём и преобразование в биты данных в соответствии с методами кодирования цифровых сигналов.

На этом уровне также работают концентраторы, повторители сигнала и медиаконвертеры.

Функции физического уровня реализуются на всех устройствах, подключенных к сети. Со стороны компьютера функции физического уровня выполняются сетевым адаптером или последовательным портом. К физическому уровню относятся физические, электрические и механические интерфейсы между двумя системами. Физический уровень определяет такие виды сред передачи данных как оптоволокно, витая пара, коаксиальный кабель, спутниковый канал передач данных и т. п. Стандартными типами сетевых интерфейсов, относящимися к физическому уровню, являются: V.35, RS-232, RS-485, RJ-11, RJ-45, разъемы AUI и BNC.

Протоколы физического уровня: IEEE 802.15 (Bluetooth), IRDA, EIA RS-232, EIA-422, EIA-423, RS-449, RS-485, DSL, ISDN, SONET/SDH, 802.11 Wi-Fi, Etherloop, GSM Um radio interface, ITU и ITU-T, TransferJet, ARINC 818, G.hn/G.9960.

Прикладной уровень

Прикладной уровень (Application Layer) – последний «бастион» между пользователем и сетью. Он обеспечивает связь пользовательских приложений с сетевыми сервисами и службами на всех уровнях модели ISO/OSI, а также передачу служебной информации, синхронизирует взаимодействие прикладных процессов и т. д.

Сеансовый уровень

Сеансовый уровень (Session Layer) используется для создания и управления сеансом связи на время, необходимое для передачи данных. Время сеанса зависит лишь от объема информации, которая должна быть передана. Поскольку этот объем может быть существенным, используются разные механизмы, контролирующие данный процесс.

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

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

Транспортный уровень

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

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

Благодаря такому подходу всегда можно найти компромисс между скоростью и качеством доставки данных.

Сетевой уровень

Сетевой (Network Layer) – один из важнейших уровней модели взаимодействия открытых систем. Поскольку для построения сети могут использоваться различные технологии и, а сеть может состоять из нескольких сегментов с абсолютно разными сетевыми топологиями, чтобы «подружить» эти сегменты, требуется соответствующий механизм. В качестве такого механизма и выступает сетевой уровень.

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

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

На практике функции сетевого уровня выполняет маршрутизатор.

Канальный уровень

Задача канального уровня (Data Link Layer) - обеспечение гарантированной передачи данных через физический канал, параметры и особенности которого уже установлены и "приняты во внимание" на физическом уровне. При этом решаются вопросы физической адресации, корректности отправленной и полученной информации, контроля возникающих ошибок, управления потоком информации и т. д.

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

Что касается локальных сетей, то за работу канального уровня отвечают два подуровня:
- MAC (Medium Access Control) - уровень доступа к разделяемой среде;
- LLC (Logical Link Control) - уровень управления логическим каналом.

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

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

Физический уровень

Физический уровень (Physical Layer) является самым нижним в модели ISO/OSI. Он работает непосредственно с имеющимся каналом связи. Его главная задача – преобразование поступивших от вышестоящего уровня данных и передача соответствующих им электрических сигналов по существующему каналу связи получателю, а также прием данных от отправителя и их конвертация согласно существующим таблицам кодирования сигналов.

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

Функции физического уровня выполняют сетевые адаптеры на отправителе и получателе, а также повторители сигнала, например концентратор.

Стандартизация на уровне модели ISO/OSI позволяет использовать в сети оборудование разных производителей, не заботясь при этом об их совместимости, что позволяет сосредоточиться только на процессе передачи и приема данных.

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

Адресация в IP-сетях

Адресация в IP-сетях

0 8 16 31

Тип сети Тип протокола
Длина локального адреса Длина сетевого адреса Операция
Локальный адрес отправителя (байты 0 - 3)  
Локальный адрес отправителя (байты 4 - 5) IP-адрес отправителя (байты 0-1)
IP-адрес отправителя (байты 2-3) Искомый локальный адрес (байты 0 - 1)
Искомый локальный адрес (байты 2-5)  
Искомый IP-адрес (байты 0 - 3)  
     

Рис. 3.2. Формат пакета протокола ARP

В поле типа сети для сетей Ethernet указывается значение 1. Поле типа протокола позволяет использовать пакеты ARP не только для протокола IP, но и для других сетевых протоколов. Для IP значение этого поля равно 080016.

Длина локального адреса для протокола Ethernet равна 6 байтам, а длина IP-адреса - 4 байтам. В поле операции для ARP запросов указывается значение 1 для протокола ARP и 2 для протокола RARP.

Узел, отправляющий ARP-запрос, заполняет в пакете все поля, кроме поля искомого локального адреса (для RARP-запроса не указывается искомый IP-адрес). Значение этого поля заполняется узлом, опознавшим свой IP-адрес.

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

Выбор тайм-аута

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

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

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

Реакция на перегрузку сети

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

При переполнении приемного буфера конечного узла "перегруженный" протокол TCP, отправляя квитанцию, помещает в нее новый, уменьшенный размер окна. Если он совсем отказывается от приема, то в квитанции указывается окно нулевого размера. Однако даже после этого приложение может послать сообщение на отказавшийся от приема порт. Для этого, сообщение должно сопровождаться пометкой "срочно" (бит URG в запросе установлен в 1). В такой ситуации порт обязан принять сегмент, даже если для этого придется вытеснить из буфера уже находящиеся там данные.

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

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

Маршрутизация в АТМ-сетях

Маршрутизация в сети АТМ

Сложная топология сети АТМ требует использования протоколов маршрутизации. При этом нет необходимости маршрутизировать данные пользователя – достаточно выполнить маршрутизацию запросов на установление виртуальных соединений.

Известно множество методов маршрутизации, которые подробно описаны в литературе [32, 34]. Маршрутизация может быть основана на адаптивных и неадаптивных алгоритмах. Неадаптивные алгоритмы не учитывают при выборе маршрута топологию и текущее состояние сети, не измеряют трафик в линиях. Вместо этого выбор маршрута для каждой пары станций производится заранее, в автономном режиме, и таблица маршрутов создаётся при загрузке сети. Адаптивные алгоритмы, напротив, изменяют решения о выборе маршрутов при изменении топологии сети и также часто в зависимости от загруженности линий. Адаптивные алгоритмы различаются по месту получения информации, по причинам изменения маршрута и происхождением данных для определения оптимального маршрута. Для сетей АТМ Форум АТМ в 1996 году принял первую редакцию протокола PNNI, который включает адаптивные функции маршрутизации и сигнальную систему. В сети, поддерживающей протокол PNNI, маршрутизация запросов выполняется на основе первых 19 байт адреса АТМ (всего в адресе 20 байт). Каждый коммутатор в сети имеет уникальный 22 байтовый идентификатор. Отдаленные узлы (коммутаторы) группируются и каждая группа идентифицируется 14 байтовым идентификатором группы. Все узлы в одной группе имеют один и тот же идентификатор группы. Этот идентификатор формируется по адресам АТМ коммутаторов. При назначении адресов стараются сделать так, чтобы место положения любого узла можно было однозначно определить по адресу. В сложных иерархических сетях в состав адреса закладывается информация об уровне иерархии протокола PNNI.

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

Информация о маршрутной топологии сети для PNNI включает сведения об узлах, каналах связи, доступных адресах, параметрах скорости передачи данных, задержки и т.д. Т.о. каждый узел сети может хранить запись, описывающую «видимую» им часть сети. В терминологии PNNI эти записи называются элементами состояния топологии (PNNI Topology State Element, PTSE). Если узел, кроме своего PTSE, имеет PTSE всех узлов своей группы, он может вы-числить маршрут для любого адреса группы. Соединение может быть осуществлено только по тому адресу, который указан в PTSE на одном из доступных коммутаторов. Размер группы ограничен объемом памяти и мощностью процессоров коммутаторов. Каждый адрес, канал связи, узел сети повышают объем



Поделиться:


Последнее изменение этой страницы: 2016-04-23; просмотров: 1284; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.190.219.178 (0.012 с.)