Имитационное моделирование сети Ethernet в среде GPSS World
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
?аспознавания ее всеми узлами сети. При коллизии уничтожаются все данные в сети. После коллизии станции пытаются передать данные повторно. Для того, чтобы предотвратить одновременную передачу, был разработан специальный механизм прерываний, который предписывает каждой станции выждать случайный промежуток времени перед повторной передачей. Станция, которой достался самый короткий период ожидания, первой получит право на очередную попытку передать данные, а остальные определят, что сеть занята и вновь будут ожидать. Единицей измерения времени ожидания является удвоенное время распространения сигнала из конца в конец отрезка кабеля, равное примерно 51.2 мс. После первого конфликта каждая станция ждёт 0 или 1 единицу времени, прежде, чем попытается возобновить передачу. Если снова произошёл конфликт, что может быть, если две станции выбрали одно и то же число, то каждая из них выбирает одно из четырёх случайных чисел в качестве времени ожидания: 0,1,2,3. Если и в третий раз произошёл конфликт, случайное число выбирается из интервала 0-7. Таким образом, вероятность новой коллизии уменьшается. После десяти последовательных конфликтов интервал выбора случайных чисел фиксируется и становится равным 0-1023. После шестнадцати конфликтов контроллер отказывается от дальнейших попыток передать кадр и сообщает об этом компьютеру. Все дальнейшие действия по выходу из сложившейся ситуации осуществляются под руководством протоколов верхнего уровня. Такой алгоритм позволяет разрешить коллизии, когда конфликтующих станций немного.
Обнаружение конфликтов основано на сравнении посланных сигналов и сигналов других рабочих станций. Аппаратное обеспечение станции должно во время передачи "прослушивать" кабель для определения факта коллизии. Если сигнал, который станция регистрирует, отличается от передаваемого ею, значит, произошла коллизия. Поэтому, должен существовать механизм, позволяющий различать сигналы в кабеле. Этот механизм был найден - им стало манчестерское кодирование и дифференциальное манчестерское кодирование сигнала.
При манчестерском кодировании каждый интервал времени, в течение которого происходит передача одного бита, разделяется на две половинки. Единичный бит кодируется высоким напряжением в первой половине и низким напряжением во второй. Нулевой бит кодируется противоположным образом. Изменение напряжения в середине интервала облегчает принимающей стороне синхронизацию с передающей станцией.
Дифференциальное манчестерское кодирование представляет собой разновидность обычного манчестерского кодирования. В этом случае единичный бит характеризуется отсутствием изменения напряжения (напряжения в обеих половинках равны). Изменение напряжения в начале бита означает, что это нулевой бит.
Недостатком схемы дифференциального манчестерского кодирования является необходимость удвоения ширины полосы пропускания по сравнению с прямым кодированием. Однако, вследствие своей простоты, манчестерское кодирование используется в стандарте 802.3. Уровни высокого и низкого напряжения составляют +0.85 В и -0.85 В. Прямое двоичное кодирование построено на кодировании нулевого бита нулевым напряжением (0 В) и единичного бита ненулевым напряжением (5 В).
Данные, передаваемые в сети Ethernet, разбиты на кадры. Практически каждой сетевой технологии (независимо от ее уровня) соответствует единица передачи данных: Ethernet-кадр, АТМ-ячейка, IP-дейтаграмма и т. д. Данные по сети в чистом виде не передаются. В сети Ethernet к единице данных пристраивается заголовок. В некоторых сетевых технологиях добавляется также окончание. Заголовок и окончание несут служебную информацию и состоят из определенных полей.
Следует отметить, что минимальная допустимая длина кадров Ethernet составляет 64 байта, а максимальная - 1518 байт. Так как на служебную информацию в кадре отводится 18 байт, то поле Данные может иметь длину от 46 до 1500 байт. Если передаваемые по сети данные меньше допустимой минимальной длины, кадр будет автоматически дополняться до 46 байт. Столь жесткие ограничения на минимальную длину кадра введены для обеспечения нормальной работы механизма обнаружения коллизий.
Между двумя последовательно передаваемыми по общей шине кадрами информации должна выдерживаться пауза в 9.6 мкс; эта пауза нужна для приведения в исходное состояние сетевых адаптеров узлов, а также для предотвращения монопольного захвата среды передачи данных одной станцией.
1.2Алгоритм работы сети
Алгоритм передачи кадра по протоколу CSMA/CD представлен на рисунке 1.
1.Станция, собравшаяся передавать, прослушивает среду. И передает, если среда свободна. В противном случае (т.е. если среда занята) переходит к шагу 2. При передаче нескольких кадров подряд станция выдерживает определенную паузу между посылками кадров - межкадровый интервал, причем после каждой такой паузы перед отправкой следующего кадра станция вновь прослушивает среду (возвращение на начало шага 1);
2.Если среда занята, станция продолжает прослушивать среду до тех пор, пока среда не станет свободной, и затем сразу же начинает передачу;
.Каждая станция, ведущая передачу прослушивает среду, и в случае обнаружения коллизии, не прекращает сразу же передачу а сначала передает короткий специальный сигнал коллизии - jam-сигнал, информируя другие станции о коллизии, и прекращает передачу;
.После передачи jam-сигнала станция замолкает и ждет некоторое произвольное время в соответс?/p>