Помощь в написании студенческих работ
Антистрессовый сервис

Разработка на ЭВМ модели сетевого адаптера

ДипломнаяПомощь в написанииУзнать стоимостьмоей работы

Статус кадра имеет длину 1 байт и содержит 4 резервных бита и два подполя: бит распознавания адреса и бит копирования кадра. Так как это поле не сопровождается вычисляемой суммой CRC, то используемые биты дублируются в байте. Когда кадр создается, передающая станция устанавливает бит распознавания адреса в 0; получающая станция устанавливает бит в 1, чтобы сообщить, что она опознала адрес… Читать ещё >

Разработка на ЭВМ модели сетевого адаптера (реферат, курсовая, диплом, контрольная)

Введение

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

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

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

Модель разрабатываемого сетевого адаптера будет выполняться, пожалуй, в самом мощном программном комплексе Micro Cap 7, разработанном компанией Spectrum Software, и включающем в себя обширную библиотеку компонентов.

1. АНАЛИЗ ФУНКЦИЙ, ВЫПОЛНЯЕМЫХ СЕТЕВЫМИ АДАПТЕРАМИ ЛВС РАЗЛИЧНЫХ ТЕХНОЛОГИЙ Сетевой адаптер (Network Interface Card, NIC) — это периферийное устройство компьютера, непосредственно взаимодействующее со средой передачи данных, которая прямо или через другое коммуникационное оборудование связывает его с другими компьютерами. Это устройство решает задачи надежного обмена двоичными данными, представленными соответствующими электромагнитными сигналами по внешним линиям связи. Как и любой контроллер компьютера, сетевой адаптер работает под управлением драйвера операционной системы, и распределение функций между сетевым адаптером и драйвером может изменяться от реализации к реализации.

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

Сетевой адаптер обычно выполняет следующие функции:

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

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

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

— идентификация своего адреса в принимаемом пакете;

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

Сетевые адаптеры различаются по типу и разрядности используемой в компьютере внутренней шины данных — ISA, EISA, PCI, MCA.

Сетевые адаптеры различаются также по типу принятой в сети сетевой технологии — Ethernet, Token Ring, FDDI. Как правило, конкретная модель сетевого адаптера работает по определенной сетевой технологии. В связи с тем, что для каждой технологии сейчас имеется возможность использования различных сред передачи данных, сетевой адаптер может поддерживать как одну, так и одновременно несколько сред.

Функциональные различия между сетевыми адаптерами различных технологий заключаются в формате пакета, формируемого сетевым адаптером. Рассмотрим три основные технологии, используемые в локальных сетях: Ethernet, Token Ring и FDDI.

1.1 Технология Ethernet

Формат пакета Ethernet показан на рисунке 4.1.

— Поле преамбулы состоит из сети байтов синхронизирующих данных. Каждый байт содержит одну и ту же последовательность битов — 10 101 010. При манчестерском кодировании эта комбинация представляется в физической среде периодическим волновым сигналом. Преамбула используется для того, чтобы дать время и возможность схемам приемопередатчиков (transceiver) прийти в устойчивый синхронизм с принимаемыми тактовыми сигналами.

— Начальный ограничитель кадра состоит из одного байта с набором битов 10 101 011. Появление этой комбинации является указанием на предстоящий прием кадра.

— Адрес получателя — может быть длиной 2 или 6 байтов (МАС — адрес получателя). Первый бит адреса получателя — это признак того, является адрес индивидуальным или групповым: если 0, то адрес указывает на определенную станцию, если 1, то это групповой адрес нескольких (возможно всех) станций сети. При широковещательной адресации все бит поля адреса устанавливаются в 1. Общепринятым является использование 6-байтовых адресов.

— Адрес отправителя — 2-х или 6-ти байтовое поле, содержащее адрес станции отправителя. Первый бит — всегда имеет значение 0.

— Двухбайтовое поле длины определяет длину поля данных в кадре.

— Поле данных может содержать от 0 до 1500 байт. Но если длина поля меньше 46 байт, то используется следующее поле — поле заполнения, чтобы дополнить кадр до минимально допустимо длины.

— Поле заполнения состоит из такого количества байтов заполнителей, которое обеспечивает определенную минимальную длину поля данных (46 байт). Это обеспечивает корректную работу механизма обнаружения коллизий. Если длина поля данных достаточна, то поле заполнения в кадре не появляется.

— Поле контрольной суммы — 4 байта, содержащие значение, которое вычисляется по определенному алгоритму (полиному CRC-32). После получения кадра рабочая станция выполняет собственное вычисление контрольной суммы для этого кадра, сравнивает полученное значение со значением поля контрольной суммы и, таким образом, определяет, не искажен ли полученный кадр.

1.2 Технология Token Ring

В Token Ring существует три различных формата кадров:

1. маркер;

2. кадр данных;

3. прерывающая последовательность.

Маркер Кадр маркера состоит из трех полей, каждое длиной в один байт. Формат маркёра представлен на рисунке 1.2.

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

— Поле контроля доступа. Разделяется на четыре элемента данных:

PPP — биты приоритета;

T — бит маркера;

M — бит монитора;

RRR — резервные биты.

Каждый кадр или маркер имеет приоритет, устанавливаемый битами приоритета (значение от 0 до 7, 7 — наивысший приоритет). Станция может воспользоваться маркером, если только она получила маркер с приоритетом, меньшим или равным, чем ее собственный.

Рисунок 1.1- Формат пакета Ethernet

Рисунок 1.2- Формат маркёра Token Ring

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

Схема использования приоритетного метода захвата маркера показана на рисунке 1.3. Сначала монитор помещает в поле текущего приоритета P максимальное значение приоритета, а поле резервного приоритета R обнуляется (маркер 7110). Маркер проходит по кольцу, в котором станции имеют текущие приоритеты 3,6 и 4. Так как эти значения меньше, чем 7, то захватить маркер станции не могут, но они записывают свое значение приоритета в поле резервного приоритета, если их приоритет выше его текущего значения. В результате маркер возвращается к монитору со значением резервного приоритета R = 6. Монитор переписывает это значение в поле P, а значение резервного приоритета обнуляется, и снова отправляет маркер по кольцу. При этом обороте его захватывает станция с приоритетом 6 — наивысшим приоритетом в кольце в данный момент времени.

Бит маркера имеет значение 0 для маркера и 1 для кадра.

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

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

Кадр данных Кадр данных состоит из нескольких групп полей:

— последовательность начала кадра;

— адрес получателя;

— адрес отправителя;

— данные;

— последовательность контроля кадра;

— последовательность конца кадра.

Рисунок 1.3- Схема использования приоритетного метода захвата маркера Кадр данных может переносить данные либо для управления кольцом (данныеMAC-уровня), либо пользовательские данные (LLC-уровня). Стандарт Token Ring определяет 6 типов управляющих кадров MAC-уровня. Поле? последовательность начала кадра? определяет тип кадра (MAC или LLC) и, если он определен как MAC, то поле также указывает, какой из шести типов кадров представлен данным кадром.

Назначение этих шести типов кадров следующее.

— Чтобы удостовериться, что ее адрес уникальный, станция посылает кадр «Тест дублирования адреса», когда впервые присоединяется к кольцу.

— Чтобы сообщить другим станциям, что он еще жив, активный монитор запускает кадр «Активный монитор существует» так часто, как только может.

— Кадр «Существует резервный монитор» отправляется любой станцией, не являющейся активным монитором.

— Резервный монитор отправляет «Маркеры заявки», когда подозревает, что активный монитор отказал. Резервные мониторы затем договариваются между собой, какой из них станет новым активным монитором.

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

— Кадр «Очистка» отправляется после того, как произошла инициализация кольца, и новый активный монитор заявляет о себе.

Каждый кадр (MAC или LLC) начинается с «последовательности кадра», которая содержит три поля:

— Начальный ограничитель, такой же, как и для маркера;

— Управление доступом, также совпадает для кадров и для маркеров;

— Контроль кадра — это однобайтовое поле, содержащее два подполя — тип кадра и идентификатор управления MAC: 2 бита типа кадра имеют значения 00 для кадров MAC и 01 дл кадров LLC. Биты идентификатора управления MAC определяют тип кадра управления кольцом из приведенного выше списка 6-ти управляющих кадров MAC.

Адрес получателя (либо 2, либо 6 байтов). Первый бит определяет групповой или индивидуальный адрес как для 2-х байтовых, так и для 6-ти байтовых адресов. Второй бит в 6-ти байтовых адресах говорит, назначен адрес локально или глобально.

Адрес отправителя имеет тот же размер и формат, что и адрес получателя.

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

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

Последовательность конца кадра состоит из двух полей: конечный ограничитель и статус кадра.

Конечный ограничитель в кадре данных имеет дополнительное значение по сравнению с маркером. Кроме уникальной последовательности электрических импульсов он содержит два однобитовых поля: бит промежуточного кадра и бит обнаружения ошибки. Бит промежуточного кадра устанавливается в 1, если этот кадр является частью многокадровой передачи, или в 0 для последнего или единственного кадра. Бит обнаружения ошибки первоначально установлен в 0; каждая станция, через которую передается кадр, проверяет его на ошибки (по коду CRC) и устанавливает бит обнаружения ошибки в 1, если она выявлена. Очередная станция, которая видит уже установленный бит обнаружения ошибки, должна просто передать кадр. Исходная станция заметит, что возникла ошибка, и повторит передачу кадра.

Статус кадра имеет длину 1 байт и содержит 4 резервных бита и два подполя: бит распознавания адреса и бит копирования кадра. Так как это поле не сопровождается вычисляемой суммой CRC, то используемые биты дублируются в байте. Когда кадр создается, передающая станция устанавливает бит распознавания адреса в 0; получающая станция устанавливает бит в 1, чтобы сообщить, что она опознала адрес получателя. Бит копирования кадра также вначале установлен в 0, но устанавливается в 1 получающей станцией (станцией назначения), когда она копирует содержимое кадра в собственную память (другими словами, когда она реально получает данные). Данные копируются (и бит устанавливается), если только кадр получен без ошибок. Если кадр возвращается с обоими установленными битами, исходная станция знает, что произошло успешное получение. Если бит распознавания адреса не установлен во время получения кадра, это означает, что станция назначения больше не присутствует в сети (возможно, вследствие неполадок). Возможна другая ситуация, когда адрес получателя опознается, но бит копирования кадра не установлен. Это говорит исходной станции, что кадр был искажен во время передачи (бит обнаружения ошибки в конечном ограничителе также будет установлен). Если оба бита опознавания адреса и копирования кадра установлены, и бит обнаружения ошибки также установлен, то исходная станция знает, что ошибка случилась после того, как этот кадр был корректно получен.

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

Как видно из описания процедур обмена данными, в сети Token Ring на уровнях MAC и LLC применяются процедуры без установления связи, но с подтверждением получения кадров.

1.3 ТехнологияFDDI

По сети FDDI информация передается в форме двух блоков данных: кадра и токена. Формат кадра FDDI представлен на рисунке 1.4.

Рассмотрим назначение полей кадра.

Преамбула (Preamble, PA). Любой кадр должен предваряться преамбулой, состоящей как минимум из 16 символов Idle (I). Эта последовательность предназначена для вхождения в синхронизм генератора RCRCLK, обеспечивающего прием последующих символов кадра.

Начальный ограничитель (Starting Delimiter, SD).Состоит из пары символов JK, которые позволяют однозначно определить границы для остальных символов кадра.

Поле управления (Frame Control, FS). Идентифицирует тип кадра и детали работы с ним. Имеет 8-ми битовый формат и передается с помощью двух символов. Состоит из подполей, обозначаемых как CLFFZZZZ, которые имеют следующее назначение:

C — говорит о том, какой тип трафика переносит кадр — синхронный (значение1) или асинхронный (значение 0);

L — определяет длину адреса кадра, который может состоять из 2-х байт или из 6-ти байт;

FF — тип кадра, может иметь значение 01 для обозначения кадра LLC (пользовательские данные) или 00 для обозначения служебного кадра MAC-уровня. Служебными кадрами MAC-уровня являются кадры трех типов — кадры процедуры инициализации кольца Claim Frame, кадры процедуры сигнализации о логической неисправности Beacon Frame и кадры процедуры управления кольцом SMT Frame;

ZZZZ — детализирует тип кадра.

Адрес назначения (Destination Address, DA) — идентифицирует станцию (уникальный адрес) или группу станций (групповой адрес), которой (ым) предназначен кадр. Может состоять из 2-х или 6-ти байт.

Адрес источника (Source Address, SA) — идентифицирует станцию, сгенерировавшую данный кадр. Поле должно быть той же длины, что и поле адреса назначения.

Информация (INFO) — содержит информацию, относящуюся к операции, указанной в поле управления. Поле может иметь длину от 0 до 4478 байт (от0 до 8956 символов). Стандарт FDDI допускает размещение в этом поле маршрутной информации алгоритма Source Routing, определенной в стандарте 802.5. При этом в два старших бита поля адреса источника SA помещается комбинация 102 — групповой адрес, комбинация, не имеющая смысла для адреса источника, а обозначающая присутствие маршрутной информации в поле данных.

Контрольная последовательность (Frame Check Sequence, FSC) — содержит 32-х битную последовательность, вычисленную по стандартному методу CRC-32, принятому и для других протоколов IEEE 802. контрольная последовательность охватывает поля FC, DA, SA, INFO и FCS.

Конечный ограничитель (Ending Delimiter, ED) — содержит единственный символ Terminate (T), обозначающий границу кадра. Однако за ним располагаются еще признаки статуса кадра.

Статус кадра (Frame Status, FS). Первые три признака в поле статуса должны быть индикаторами ошибки (Error, E), распознавания адреса (Address recognized, A) и копирования кадра (Frame Copied, C). Каждый из этих индикаторов кодируется одним символом, причем нулевое состояние индикатора обозначается символом Reset ®, а единичное — Set (S). Стандарт позволяет производителям оборудования добавлять свои индикаторы после трех обязательных.

Токен состоит по существу из одного значащего поля — поля управления, которое содержит в этом случае 1 в поле C и 0000 в поле ZZZZ.

Формат токена представлен на рисунке 1.5.

Рисунок 1.4- Формат кадра FDDI

Рисунок 1.5- Формат токена FDDI

2. АНАЛИЗ ФУНКЦИЙ, ВЫПОЛНЯЕМЫХ СЕТЕВЫМИ АДАПТЕРАМИ ЛВС РАЗЛИЧНЫХ ТОПОЛОГИЙ Различия сетевых адаптеров, связанные со средой передачи данных заключаются не только в самой среде, но и в том, как осуществляется доступ к среде передачи сигнала.

2.1 Метод доступа CSMA/CD в сетях Ethernet

В сетях Ethernet используется метод доступа к среде передачи данных, называемый методом коллективного доступа с опознаванием несущей и обнаружением коллизий (carrier-sense-multiply-access with collision detection, CSMA/CD).

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

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

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

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

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

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

Метод CSMA/CD определяет основные временные и логические соотношения, гарантирующие корректную работу всех станций в сети:

— между двумя последовательностями, передаваемыми по общей шине кадрами информации, должна выдерживаться пауза в 9,6 мкс; эта пауза нужна для приведения в исходное состояние сетевых адаптеров узлов, а также для предотвращения монопольного захвата среды передачи данных одной станцией;

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

— после обнаружения коллизии каждый узел, который передавал кадр и столкнулся с коллизией, после некоторой задержки пытается повторно передать свой кадр. Узел делает максимально 16 попыток передачи этого кадра информации, после чего отказывается от его передачи. Величина задержки выбирается как равномерно распределенное случайное число из интервала, длина которого экспоненциально увеличивается с каждой попыткой. Такой алгоритм выбора величины задержки снижает вероятность коллизий и уменьшает интенсивность выдачи кадров в сеть при ее высокой загрузке.

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

Все параметры протокола Ethernet подобраны таким образом, чтобы при нормальной работе узлов сети коллизии всегда четко распознавались. Именно для этого минимальная длина поля данных кадра должна быть не менее 46 байт (что вместе со служебными полями дает минимальную длину кадра в 72 байта или 576 бит). Длина кабельной системы выбирается таким образом, чтобы за время передачи кадра минимальной длины сигнал коллизии успел бы распространиться до самого дальнего узла сети. Поэтому для скорости передачи данных 10 Мб/с, используемой в стандартных Ethernet, максимальное расстояние между двумя любыми узлами сети не должно превышать 2500 метров.

С увеличением скорости передачи кадров, что имеет место в новых стандартах, базирующихся на том же методе CSMA/CD, например, Fast Ethernet, максимальная длина сети уменьшается пропорционально увеличению скорости передачи. В стандарте Fast Ethernet она составляет 210 метров, а в гигабитном Ethernet ограничена 25 метрами.

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

1 максимальное расстояние между двумя любыми узлами не должно превышать 2500 м;

2 в сети не должно быть более 1024 узлов.

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

Уточним основные параметры операций передачи и приема кадров Ethernet, кратко описанные выше.

Станция, которая хочет передать кадр, должна сначала с помощью MAC-узла упаковать данные в кадр соответствующего формата. Затем для предотвращения смещения сигналов с сигналами другой передающей станции, MAC-узел должен прослушивать электрические сигналы на кабеле и в случае обнаружения несущей частоты 10 МГц отложить передачу своего кадра. После окончания передачи по кабелю станция должна выждать небольшую дополнительную паузу, называемую межкадровым интервалом (interframe gap), что позволяет узлу назначения принять и обработать предаваемый кадр, и после этого начать передачу своего кадра.

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

Если же фиксируется коллизия, то МАС-узел прекращает передачу кадра и посылает jam-последовательность, усиливающую состояние коллизии. После посылки в сеть jam-последовательность МАС-узел делает случайную паузу и повторно пытается передать свой кадр.

В случае повторных коллизий существует максимально возможное число попыток повторной передачи кадра (attempt limil), которое равно 16. При достижении этого предела фиксируется ошибка передачи кадра, сообщение о которой передается протоколу верхнего уровня. На рисунке 2.1 приведена схема возникновения коллизии в методе случайного доступа.

Для того, чтобы уменьшить интенсивность коллизий, каждый МАС-узел с каждой новой попыткой случайным образом увеличивает длительность паузы между попытками. Временное расписание длительности паузы определяется на основе усеченного двоичного экспоненциального алгоритма отсрочки (truncated binary exponential backoff). Пауза всегда составляет целое число так называемых интервалов отсрочки.

Интервал отсрочки (slot time) — это время, в течение которого станция гарантированно может узнать, что в сети не коллизии. Это время тесно связано с другим важным временным параметром сети — окном коллизий (collision window). Окно коллизий равно времени двукратного прохождения сигнала между самыми удаленными узлами сети — наихудшему случаю задержки, при которой станция еще может обнаружить, что произошла коллизия. Интервал отсрочки выбирается равным величине окна коллизий плюс некоторая дополнительная величина задержки для гарантии:

интервал отсрочки = окно коллизий + дополнительная задержка В стандартах 802.3 большинство временных интервалов измеряется в количестве межбитовых интервалов, величина которых для битовой скорости 10 Мб/с составляет 0,1 мкс и равна времени передачи одного бита.

Величина интервала отсрочки в стандарте 802.3 определена равной 512 битовым интервалам, и эта величина рассчитана для максимальной длины коаксиального кабеля в 2,5 км. Величина 512 определяет и минимальную длину кадра в 64 байта, так как при кадрах меньшей длины станция может передать кадр и не успеть заметить факт возникновения коллизии из-за того, что искаженные коллизией сигналы дойдут до станции в наихудшем случае после завершения передачи. Такой кадр будет просто потерян.

Время паузы после N-ой коллизии полагается равным L интервалам отсрочки, где L — случайное целое число, равномерно распределенное в диапазоне [0, 2N]. Величина диапазона растет только до 10 попытки (напомним, что их не может быть больше 16), а далее диапазон остается равным [0, 210], то есть [0, 1024]. Значения основных параметров процедуры передачи кадра стандарта 802.3 приведено в таблице 1.1.

Таблица 1.1- Основные параметры процедуры передачи кадра стандарта 802.3

Битовая скорость

10 Мб/с

Интервал отсрочки

512 битовых интервалов

Межкадровый интервал

9,6 мкс

Максимальное число попыток передачи

Максимальное число возрастания диапазона паузы

Длина jam-последовательности

32 бита

Максимальная длина кадра (без преамбулы)

1518 байтов

Минимальная длина кадра (без преамбулы)

64 байта (512 бит)

Длина преамбулы

64 бита

Рисунок 2.1- Схема возникновения коллизии в методе случайного доступа Учитывая приведенные параметры, нетрудно рассчитать максимальную производительность сегмента Ethernet в таких единицах, как число переданных пакетов минимальной длины в секунду (packets-per-second, pps). Количество обрабатываемых пакетов Ethernet в секунду часто используется при указании внутренней производительности мостов и маршрутизаторов, вносящих дополнительные задержки при обмене между узлами. Поэтому интересно знать чистую максимальную производительность сегмента Ethernet в идеальном случае, когда на кабеле нет коллизий и нет дополнительных задержек, вносимых мостами и маршрутизаторами.

Так как размер пакета минимальной длины вместе с преамбулой составляет 64+8 = 72 байта или 576 битов, то на его передачу затрачивается 57,6 мкс. Прибавив межкадровый интервал в 9,6 мкс, получаем, что период следования минимальных пакетов равен 67,5 мкс. Это соответствует максимально возможной пропускной способности сегмента Ethernet в 14 880 п/с.

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

Ключевым понятием выступает понятие временного окна. Под временным окном при этом понимается временной интервал tо, равный длительности прохождения сигнала по всему кольцу сети tк (точнее, величина этого интервала должна быть чуть больше tк, а именно:

to > tк + tр где tр — это время реакции компьютера на аппаратное прерывание и отработки соответствующей программы в ответ на него). При работе сети выделяется четыре типа временных окон:

1.Пакетное окно (длительность этого окна складывается из длительности передаваемого пакета и величины to);

Маркерное окно (длительностью to);

Окно маркерного захвата (длительностью to);

4.Окно случайного доступа (длительность этого окна в принципе не ограничена).

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

Метод доступа показан на рисунке 2.2.

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

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

1. Пакетное окно. Это означает, что сеть занята, и в данный момент происходит обмен между другими абонентами. В этом окне сетевое кольцо разомкнуто в двух точках: передающим абонентом и принимающим абонентом. Абонент, захотевший передавать в пределах данного окна, ждет в течение времени tо после последнего переданного байта пакета и переходит к процедуре маркерного захвата;

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

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

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

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

3. РАЗРАБОТКА СТРУКТУРНОЙ СХЕМЫ СЕТЕВОГО АДАПТЕРА Исходя из функций, выполняемых сетевым адаптером, можно выделить ряд блоков, выполняющих эти функции: схема передатчика, схема приёмника, схема подсчета контрольной суммы, тактовый генератор, схема хранения собственного адреса, селектор адреса и схема контроля номера временного окна.

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

— схема приёмника осуществляет обратное преобразование последовательного кода в параллельный. Приёмник строится на регистре с последовательным входом и параллельным выходом, тактируемого от генератора передающей стороны. В конце приёма слова из сети устанавливается флаг окончания приёма, который читается компьютером в составе слова состояния адаптера, приведённом на рисунке 3.1. Сбрасывается флаг по сигналу чтения данных Чт. Дан.

— схема подсчета контрольной суммы. Вычисление циклической контрольной суммы производится как при приёме, так и при передачи. Подсчитанная контрольная сумма читается компьютером и включается в передаваемый пакет, при передаче, или сравнивается с принятой контрольной суммой, при приёме.

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

— схему хранения собственного адреса и селектор адреса обычно выполняют на одной микросхеме ППЗУ. Присвоим, разрабатываемому сетевому адаптеру адрес А5. При этом микросхема ППЗУ должна работать в двух режимах, различающихся сигналом на адресном входе А8(он же сигнал разрешения прерывания Разр. прер.) В случае разрешения прерывания ППЗУ работает как селектор адреса, вырабатывая положительный сигнал на выходе D0 при совпадении сетевого адреса на входах А0… А7 с собственным сетевым адресом данного адаптера. Сравнение производится только после прихода самого первого слова в сеансе обмена. Если адрес совпал, то формируется сигнал совпадения адреса Сов.адр., вызывающий аппаратное прерывание. Сетевой адрес FF отведён под режим широко вещания, и его распознают как свой все адаптеры. Когда же прерывание запрещено, ППЗУ постоянно вырабатывает на своих выходах D0… D7 код собственного сетевого адреса, который может быть прочитан компьютером в составе слова состояния, формат которого приведён на рисунке 3.1. В таблице 3.1 приведён пример прошивки ППЗУ для распознавания сетевого адреса А5.

— схема контроля номера временного окна. Аппаратно реализован в данной схеме контроль за номером временного окна. Возложение этой функции на программные средства привело бы к недопустимым временным затратам. В этом же узле предусмотрена возможность выбора длины сети (точнее, времени задержки прохождения сигнала по всему кольцу сети) с помощью переключателя. Компьютер, читая пять разрядов в составе слова состояния адаптера, получает полную информацию о текущем состоянии сети, при этом совершенно не важно, какая длина сети выбрана. Два старших читаемых разряда содержат информацию о номере окна: код 00 соответствует пакетному окну, код 01 — маркерному окну, код 10 — окну маркерного захвата, а код 11 — окну случайного доступа.

Структурная схема сетевого адаптера приведена на рисунке 3.2.

Рисунок 3.1- Форматы управляющего слова и слова состояния Таблица 3.1- Прошивка ППЗУ для сетевого адреса А5

Разр. Прер.

Адрес

A

B

C

D

E

F

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

A

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

B

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

C

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

D

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

E

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

F

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

А5

A

B

C

D

E

F

Рис. 3.2. Структурная схема сетевого адаптера

4. РАЗРАБОТКА ПРИНЦИПИАЛЬНОЙ СХЕМЫ СЕТЕВОГО АДАПТЕРА Первым этапом в разработке принципиальной схемы является выбор серии микросхем, на которой будут создаваться блоки сетевого адаптера. При выборе серии ИС следует обратить внимание на тот факт, что данный сетевой адаптер будет устанавливаться внутри компьютера и питаться от внутреннего источника, в следствии чего ИС должны потреблять минимальное количество электроэнергии. Другим не маловажным фактором в выборе ИС является параметр быстродействия. Наиболее подходящей серией ИС является КР1533. Отличительные характеристики ИС КР1533: потребляемая мощность 4мВт и время реакции p-n перехода 4нс.

4.1 Генератор прямоугольных импульсов Существует пять способов построения тактовых генераторов:

1 на транзисторах;

2 на операционных усилителях;

3 на простейших логических элементах: И, ИЛИ, НЕ;

4 на основе БИС: триггерах, счетчиках;

5 на основе микросхем генераторов.

Поскольку разрабатываемое устройство является цифровым, то схему генератора будем строить на элементарных логических элементах. На рисунке 4.1 представлена принципиальная схема автоколебательного мультивибратора на ИМС, реализующих логическую функцию НЕ. Схема мультивибратора содержит два элемента НЕ КР1533ЛН1, включенных по кольцу, т. е. выход первого логического элемента через разграничивающий конденсатор подключен ко входу второго элемента, а выход второго элемента через кристалл кварца подключен на вход первого элемента.

Расчет частоты генерации в таком мультивибраторе заключается в выборе номиналов резисторов обратной связи обоих логических элементов и значения емкости разграничивающего конденсатора исходя из условий:

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

(4.1)

где — падение напряжения на резисторе R1, В;

— напряжение высокого уровня на выходе логического элемента, для данной серии микросхем минимальное значение напряжения высокого уровня составляет 2В;

— пороговое напряжение, при котором микросхема переходит из одного устойчивого состояния в другое, составляет для серии КР1533 около 1,4 В.

При этом значение есть на что иное как произведение тока, протекающего через резистор R1, на номинал данного резистора (для КР1533ЛН1 =0,1мА) :

(4.2)

Приравняв правые части уравнений (1) и (2) можем рассчитать значение R1:

(4.3)

(4.4)

Так как мультивибратор является симметричным, т. е. время импульса равно времени паузы (скважность Q=2), то R1=R2.

Следует сделать замечание к выбору номиналов резисторовR1 и R2: при использовании номинала резисторов в 3 кОм увеличивается задержка появления первого импульса в тактовой последовательности после включения напряжения питания схемы, поэтому принимаем значение R1 и R2 равным 1,5 кОм.

2. Предельное значение емкостной нагрузки подключаемой на выход КР1533ЛН1 не должно превышать 200 пФ. Конденсатор С1 выполняет функцию барьера для постоянной составляющей генерируемых импульсов, поэтому номинал ёмкости С1 должен быть максимальным. Использование конденсатора емкостью более 200 пФ привело бы к срыву генерации.

Генерация необходимой частоты происходит путём задержки распространения сигнала от кварцевого резонатора до конденсатора, и обратно. Так как необходимая частота генерации составляет 8 МГц, а скважность импульсов Q=2, то задержку можно рассчитать по формуле :

(4.5)

где — период колебания;

— длительность импульса;

— длительность паузы;

— время задержки на первом логическом элементе;

— время задержки на втором логическом элементе;

— время задержки на конденсаторе С1 (величина этой задержки очень мала, поэтому ей можно пренебречь).

(4.6)

Таким образом, для получения частоты генерации 8 МГц со скважностью импульсов равной 2, каждый из логических элементов должен давать задержку распространения сигнала в 62,5 нс, но исходя из основных параметров микросхемы КР1533ЛН1 номинальная длительность задержки составляет 11 нс, в связи с чем, необходимо после каждого логического элемента установить линию задержки на 51,5 нс, выполненную на микросхеме 528 БP1

Осциллограммы работы мультивибратора приведены на рисунке 4.2.

Рисунок 4.1 — Принципиальная схема мультивибратора Рисунок 4.2 — Осциллограммы работы мультивибратора

4.2 Блок передающей части сетевого адаптера Блок передающей части сетевого адаптера состоит из двух частей: непосредственно самого передатчика и схемы синхронизации.

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

Схема синхронизации передатчика вырабатывает сигнал синхронизации передачи TxC, от которого тактируется передатчик, а так же сигнал синхронизации сетевого адаптера и ПК, в который он установлен (СН). Принципиальная схема синхронизации представлена на рисунке 4.4. Узел из элементов D. D-1 (КР1533ЛН1) и D. D-2 (КР1533ЛА3) выполнят функцию электронного ключа, разрешая или запрещая передачу синхросигнала TxC в линию передачи.

Узел из элементов D. D-6 (КР1533ЛН1) и D. D-7 (КР1533ЛА7) так же является электронным ключом, вырабатывающим сигнал подтверждения передачи (кадровая синхронизация СН). Два последовательно включенных триггера D. D-3 и D. D-4 (КР1533ТМ2) вырабатывают сигнал управления электронными ключами DT2 в цепях тактовой и кадровой синхронизации. Блок из счетчика D. D-8 (КР1533ИЕ7), инвертора D. D-9 (КР1533ЛН1) и триггера D. D-10 (КР1533ТМ2) после шестнадцати тактовых интервалов вырабатывают сигнал сброса схемы в начальное состояние R.

Временная диаграмма состояний схемы синхронизации приведена на рисунке 4.5.

Рисунок 4.3 — Принципиальная схема передатчика Рисунок 4.4 — Принципиальная схема блока синхронизации передатчика Рисунок 4.5 — Временная диаграмма состояний схемы синхронизации

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

Схема приёмника построена на двух цепях: линейной и шинной. Выбор такого метода построения обосновывается необходимостью появления всей шестнадцатиразрядной комбинации на шине адреса одновременно. Линейная цепь состоит из двух последовательно включенных восьмиразрядных регистрах сдвига в право D. D-1 и D. D-2 (КР1533ИР8) с последовательной загрузкой и параллельной выгрузкой данных, тактируемых от входящего сигнала синхронизации RxC. Шинная цепь построена на двух параллельных регистрах D. D-3 и D. D-4 (КР1533ИР23), управляемых сигналом Чт.дан._инв и тактируемых от схемы тактирования. Принципиальная схема приёмника приведена на рисунке 4.6.

Показать весь текст
Заполнить форму текущей работой