Проектирование кольцевой локальной вычислительной сети

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 17.03.2014
Размер файла 217,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Оглавление

    • 1. Описание принципов работы ЛВС с детерминированным доступом и обоснование модели кольца со вставными регистрами
      • 1.1 Описание принципов работы ЛВС с детерминированным доступом
      • 1.2 Обоснование модели кольца со вставными регистрами
      • 2. Анализ эквивалентной модели станции ЛВС
      • 3. Определение функциональных зависимостей основных характеристик проектируемой ЛВС
      • 4. Разработка протокола на основе локально-приоритетного доступа и описание используемого формата кадра

5. Алгоритм контроля ошибок и транзита

6. Листинг программы, моделирующей работу сети

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

1.1 Описание принципов работы ЛВС с детерминированным доступом

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

Пропорциональный доступ

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

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

Локальные вычислительные сети с передачей маркера (жезла)

Локальные вычислительные сети с передачей маркера (жезла или эстафеты) можно рассматривать как полностью распределенные (децентрализованные) системы. Они разделяются на жезловые кольца и жезловые шины (логические кольца).

Жезловое кольцо

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

Жезловая шина

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

Приоритетный доступ

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

Децентрализованное кодовое управление (ДКУ).

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

Совмещенное децентрализованное кодовое управление (СДКУ).

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

Локально-приоритетный доступ

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

Сегментированное кольцо.

Здесь используется последовательный канал, замкнутый в кольцо. Передача данных осуществляется синхронно по сегментам (кадрам). Синхронизацию выполняет центральная станция, которая передает в канал синхрометки. Интервалы между синхрометкама (сегменты) используются источниками для передачи пакетов данных. В канале помещается целое число сегментов. Поэтому по кольцу перемещается постоянное число сегментов. В начале каждого сегмента размещается признак (разряд) занятости сегмента. Любой источник занимает первый сегмент нужного вида, в котором признак находится в состоянии "свободно" и пропускает любой сегмент, в котором признак находится в состоянии "занято". Занимая сегмент, источник переводит признак в состояние "занято" и передает свой пакет. Таким образом, в сегментированном кольце пакет, находящийся у источника, всегда имеет более низкий приоритет, чем пакет, передающийся по каналу. Для освобождения сегмента необходимо установить признак занятости в состоянии "свободно". Это может сделать либо приемник пакета, либо сам источник после возвращения сегмента по кольцу. Недостатком сегментированных колец является то, что при малой загрузке наблюдаются относительно большие задержки.

Кольцо типа Cambridge Ring.

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

1.2 Обоснование модели кольца со вставными регистрами

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

Рис.1.1. Структура адаптера со вставным буфером транзита.

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

После своей генерации пакет помещается в буфер передачи станции 1, где он должен ждать своей очереди на передачу. Пакеты идущие по кольцу, запоминаются в буфере транзита и вставляются в расписание в соответствии с принятой дисциплиной обслуживания: приоритет кольца или приоритет станции. Начало передачи пакета означает, что началось обслуживание и пакет поступает в блок задержки станции 2. Это является важнейшим свойством данной модели. Блоки задержки ф1, ф2 и ф3 учитывают задержку передачи, необходимую для дешифрации адреса, и время распространения сигнала по соответствующей дуге кольца. В блоке задержки станции 2 пакет считается задержанным на постоянное время ф2, а затем он помещается в буфер транзита станции 2. Считается, что пакет поступает в блок задержки станций J, когда он передается по дуге 2-3. Проследовав постоянную задержку ф3, пакет поступает к станции 3, т.е. в буфер приема, не обозначенный на рис.1.2. При этом пакет покидает модель.

Рис. 1.2. Модель кольца с буферами транзита при наличии трех станций.

Достоинства кольца со вставными регистрами.

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

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

ь Учитывается приоритет (приоритет станции или кольца).

2. Анализ эквивалентной модели станции ЛВС

Для простоты анализа принимаем, что емкость приемного буфера достаточно высока, чтобы не влиять на протекание потока пакетов. Обозначим через Tf(i,j) задержку передачи пакета как временного интервала от момента генерации пакета на станции i до его получения на станции j.

Будем использовать следующие допущения:

1. Входные потоки пакетов от всех станций являются пуассоновскими с интенсивностями лt(1),…,лt(s),…,лt(N), где s - номер очередной станции, N - общее число станций.

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

3. Отношения между источниками и получателями пакетов определяются произвольной матрицей выбора маршрута |Р(i,j)|, где P(i,j) - вероятность того, что пакет, сформированный на станции i, предназначен для станции j.

4. Задержка ti, кольцевого адаптера i постоянна. Для удобства в величину фi также включается задержка распространения сигналов, передаваемых между адаптерами (i-1) и i.

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

Анализ подмодели упрощается при введении следующих предположений:

- входной поток к буферу транзита является пуассоновским;

- время поступления пакета и время обработки (т.е. передачи) взаимно независимы.

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

Необходимо отметить два обстоятельства:

- очередь имеется только по посылающей станции;

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

Кроме предположений, введенных ранее, дополнительно примем следующее

- момент поступления пакета на блок задержки станций идентичен началу его передачи по дуге (i-1)-i;

- время распространения по различным дугам одинаково.

Это достигается включением в подмодель станции i (рис.2.1.) следующих компонентов: очередей на станции (i-1); дуги i-(i+1); очередей на станции (i-1); дуги (i-1)-i. Подмодель станции i используется только для определения величин задержек очередей в буфере передачи Wt(i) и в буфере транзита Wv (i), но не для определения задержек очередей на станции (i-1). Целью включения очередей станции (i-1) и дуги (i-1)-1 в подмодель станции i является точное описание действительного процесса поступления пакетов на станцию i и его взаимозависимости с процессом передачи пакетов по дуге i-(i+1).

Рис.2.1.Подмодель станции i.

Интерфейс подмодели станции i к общей модели кольца дается определением входного потока к буферу транзита станции (i - 1). Предполагается, что этот поток пуассоновский.

Произведем анализ подмодели станции i.

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

- без потери общности полагаем, что задержки фi равны нулю, поскольку задержка приводит просто к временному сдвигу;

- все пакеты, поступающие на станцию i, рассматриваются как транзитные пакеты;

- входной процесс поступления пакетов к входному (фиктивному) буферу станции i не подчиняется действию обычных правил приоритета, применяемых к буферу передачи и буферу транзита станции (i-1).

Рис.2.2. Упрощенная подмодель станции i.

Мы можем, следовательно, соединить оба буфера на станции (i-1) в один буфер и организовать одну очередь. Она называется а-очередью в упрощенной подмодели (рис.2.2). Объединенный входной поток пакетов в очереди а будет пуассоновским с интенсивностью лv(i) Все другие компоненты подмодели станции i являются неизменными в упрощенной подмодели станции i (рис.2.2). При этом дуги кольца являются обслуживающими приборами:

- обслуживающий прибор А описывает действия дуги (i-l)-i;

- обслуживающий прибор В - дуги i - (i+1).

Для простоты описания буфер передачи станции i назван "t-очередью", а буфер транзита - " V-очередью".

Основные свойства упрощенной подмодели станции i следующие:

- пакеты, полученные для приема в V-очередь, начинают также обслуживаться прибором А;

- время обслуживания пакетов в обслуживающих приборах А и В идентично.

Входной поток, поступающий в V-очередь на риc.2.2 является комплексным, так как его составные части поступают от буфера передачи и буфера транзита станции (i-1). Суммарная интенсивность этого потока лv(i). Необходимо отметить, что наличие прибора обслуживания в подмодели не оказывает влияния на процесс обслуживания в приборе В. Таким образом, обслуживающий прибор В будет вести себя так же, как если бы пакеты кольца вместо того чтобы поступать в а-очередь, направляются прямо к V-очереди, как это показано в "эквивалентной модели" (рис.2.3.).

Рис.2.3. «Эквивалентная модель».

В упрощенной подмодели (рис.2.3.) обслуживание пакета в приборе А начинается либо немного раньше, чем в обслуживании в приборе В (при наличии пакетов в очереди V), либо точно в тот же самый момент времени (если нет пакетов в очереди V).

Следовательно, если допускается, что модели (рис.2.2. и рис.2.3.) управляются идентичными входными потоками, обслуживающий прибор В (рис.2.2.) всегда будет обрабатывать те же самые пакеты из v - или t -очередей, как и обслуживающий прибор на рис.2.3., если рассматривается начало нового обслуживания, т. е. если нет остаточных пакетов в V-очереди (рис.2.2.).

Дисциплина обслуживания пакетов в каждой очереди - "первым пришел - первым обслужен" (FIFO). Поэтому процессы обработки в обслуживающем приборе В в подмоделях (рис.2.2 и 2.3.) идентичны. Таким образом, задержка dv(i) от момента поступления пакета в а-очередь (рис.2.2.) до того, как его обслуживание начнется в обслуживающем приборе В, равна задержке в объединенной V-очереди (рис.2.3.). Итак, "эквивалентная подмодель" станции i - это система массового обслуживания класса M|G|l (пуассоновский входной поток, произвольное время обслуживания, один обслуживающий прибор), свойства которой хорошо известны.

3. Определение функциональных зависимостей основных характеристик проектируемой ЛВС

Исходные данные:

Ш Поток симметричен.

Ш Тактовая частота сдвига: Fт=2 МГц.

Ш Разрядность буферного регистра последовательного интерфейса: щ=8.

Ш Расстояния между станциями одинаковы.

Ш Направление передачи: в сторону увеличения номеров.

Ш Количество станций: N=80

Ш Интенсивность входного потока кадров: лt=20 (1/c)

Ш Длина кадра: b=500(бит)

Ш Приоритет: кольца (r)

Ш Расстояние: L=1(км)

Ш Метод контроля ошибок (КО) : контроль ошибок в кадре по Odd/Even

Ш Алгоритм контроля ошибок и программная модель : КПК при выдаче

Найти:

Ш Среднюю величину задержки передачи кадра Tf (80, 60)

Ш Интенсивность поступления кадров в буфер транзита станции ЛВС в зависимости от вероятности Q (80, 50)

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

При этом:

для всех j, которые определены на множестве I(i,k).

Здесь:

где М - множество целых чисел  ; X - множество целых чисел ; или Х - множество целых чисел, .

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

В случае симметричного потока:

Средняя величина задержки передачи пакета, сформированного на станции i и предназначенного станции j, определяется следующим выражением:

где Wt(i) - среднее время ожидания в t-очереди у передающей станции, т.е. в буфере передачи.

?(Wv(n)+фn) - суммарная задержка передачи пакета данных в буферах транзита и блоках задержки транзитных станций.

M(i,j) - множество транзитных станций между станциями i и j.

фj - время задержки у приемной станции; Е[Tp] - среднее время передачи в кольцо пакета данных.

где NS - множество станций, NS = {1,2,3,…,N}

Величина фn находится как

где фа - активная составляющая задержки, фпк - задержка передачи по каналу, щ - разрядность буферного регистра последовательного интерфейса, FТ - тактовая частота сдвига, L - длина сети, N - число станций ЛВС, с=200000 км/с - скорость распространения сигнала по кабелю.

Ожидание начала обслуживания в t-очереди в случае приоритета кольца (r) будет следующим:

Ожидание начала обслуживания в v-очереди в случае приоритета кольца (r) будет следующим:

Где:

Здесь сt(i), сv(i) - загрузки обслуживающего прибора, создаваемые t- и v-очередями соответственно; Tp - время обслуживания (передачи) пакета данных.

Среднее время передачи в кольцо пакета данных определяется как:

где b - длина кадра [бит], fd - скорость передачи кадра [бит/с].

Расчет:

Для симметричного потока в системе, содержащей N = 200 станций, получаем

Необходимо определить вероятность того, что пакет, сформированный на станции 80, проходит транзитом через станцию 50, т.е. Q(80, 50).

M = {1…80}

X = {1…50}

Найдем величину I(80,50).

I(80,50)={51,…80}

По формуле (1) находим Q(80,50)

Q(80,50) = P(80,51) + P(80,52) + … + P(80,80)

Т.к. поток симметричен и лt(i) = 1 1/с, по формуле (5) находим лv:

По формуле (8) определяем фn:

По формуле (13) определяем среднее время передачи в кольцо пакета данных:

По формулам (11) и (12) определяем загрузки обслуживающего прибора, создаваемые t- и v-очередями соответственно:

0,195

Множество М(80,60) определяется из формулы (7):

М={1,2, … , … ,59}

По формуле (9) определяем ожидание начала обслуживания в t-очереди:

3,88

По формуле (10) определяем ожидание начала обслуживания в v-очереди:

7

По формуле (6) определяем среднюю величину задержки передачи пакета, сформированного на станции 60 и предназначенного станции 30:

4. Разработка протокола на основе локально-приоритетного доступа и описание используемого формата кадра

Рассмотрим формат кадра:

8 bit

7 bit

1 bit

7 bit

1 bit

2 bit

1 bit

6 bit

1 bit

0-57 байт

НК

АН

БЧ

АО

БЧ

ТД

БЧ

ДД

БЧ

Д

v НК - начало кадра - 8бит (10101010) . Появление этой комбинации бит является указанием на то, что следующий байт - это первый байт заголовка кадра(после бита чётности).

v АП - адрес - 7 бит (128 станций) .

v БЧ - бит чётности- 1 бит (1 либо 0). Данный бит служит определения чётности предшествующего байта. При формировании пакета в данный бит записывается 1, если количество единиц в предшествующем поле является чётным числом, 0 при обратном.

v АО - адрес отправителя - 7 бит (128 станций) .

v ТД - тип данных -2 бит.

В этом поле указывается тип кадра. Тут можно указать, что это кадр с оповещением об ошибке(00), либо это обычное сообщение(01), либо это отчёт об удачно отправленном кадре (10).

v ДД- длина данных- 6 бит

v Д - поле данных- 0 - 57 байт. Сюда записываются данные для передачи.

Допустим, что станция А хочет передать данные станции В, тогда:

1. Станция А формирует кадр:

1.1. Формирует признак начала кадра (10101010).

1.2. Формируются адреса отправителя и получателя.

1.3. Заполняем бит чётности. Далее после каждой группы бит будем формировать бит чётности.

1.4. В поле ТД заносится информация о том, что кадр является сообщением(01)

1.5. Заносим длину данных в соответствующее поле ДД

1.6. В поле данных заносится информация для передачи и определяется бит чётности.

2. Устанавливается соединение со средой передачи.

3. Каждая станция как только получит пакет, проверяет адрес получателя со своим адресом. Если они совпадают, то кадр изымается из сети.

4. При приёме кадра станция В выполняет следующие действия:

4.1. Изымает кадр из сети.

4.2. Проверяется тип кадра.

4.3. Если это сообщение, то проверяет бит чётности. Если сообщения об удачной доставке, то станция готовится отправить след пакет по надобности. Если сообщения оказалось отчётом об ошибке, то станция вновь пытается переслать это сообщение.

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

5. Формирование кадра с отчётом об ошибке станцией В:

5.1. Формирует признак начала кадра (10101010).

5.2. Формируются адреса отправителя и получателя.

5.3. Указываем что это отчёт об ошибке в поле для типа кадра (00).

6. Формирование кадра с отчётом об удачно отправленном сообщении станцией В:

6.1. Формирует признак начала кадра (10101010).

6.2. Формируются адреса отправителя и получателя.

6.3. Указываем что это отчёт об удачно отправленном сообщении в поле для типа кадра (10).

5. Алгоритм контроля ошибок и транзита

6. Листинг программы, моделирующей работу сети

Язык Python 2.7.2

import os

import random

def parityOf(int_type):

parity = 0

while (int_type):

parity = ~parity

int_type = int_type & (int_type - 1)

return(parity)

def testBit(num, offset):

#print u"IN!"

mask = 1 << offset

#print bin( mask )

ans = (num & mask)

# print ans

return ans

pause = lambda: os.system('pause')

clear = lambda: os.system('cls')

clear()

PacketBufSendingStaion = [ 0 for j in range(700)]

PacketBufTransStaion = [ 0 for j in range(700)]

PacketBufResivingStaion = [ 0 for j in range(700)]

answPacketBufResivingStaion = [ 0 for j in range(58)]

print u"Press Enter to start!"

pause()

clear()

repeat_ = 0

while 1 :

#Cheking

if (answPacketBufResivingStaion[46] != 0) :

if (answPacketBufResivingStaion[46] == 129) :

repeat_ = 1

print u"An error log was sent by the receiving staion!\n\n We will resend the packet!"

pause()

else :

PacketBufSendingStaion = [ 0 for j in range(700)]

PacketBufTransStaion = [ 0 for j in range(700)]

PacketBufResivingStaion = [ 0 for j in range(700)]

answPacketBufResivingStaion = [ 0 for j in range(58)]

print u"The packet was sent!\n\nPreparing to send a new packet!"

pause()

if repeat_ == 0 :

# generating a packet

print u"generating a packet!"

x =1

#PR

for i in range(21) :

if x == 1 :

PacketBufSendingStaion[i] = 1

x = 0

else :

PacketBufSendingStaion[i] = 0

x = 1

# generating A SENDING AND RECIVING STAION

sendingAdr = random.randint(0,200)

recivingAdr = random.randint(0,200)

while sendingAdr == recivingAdr :

recivingAdr = random.randint(0,200)

print u"Staion ", (sendingAdr+1),u"will be sending a packet to staion ", (recivingAdr+1)

PacketBufSendingStaion[28] = sendingAdr

# PB1

if parityOf(sendingAdr) == 0:

PacketBufSendingStaion[29] = 1

PacketBufSendingStaion[37] = recivingAdr

# PB2

if parityOf(recivingAdr) == 0:

PacketBufSendingStaion[38] = 1

# packet type

PacketBufSendingStaion[46] = 24

PacketBufSendingStaion[47] = 1

# length of data

dataLen= random.randint(1,81)

PacketBufSendingStaion[55] = dataLen

# PB4

if parityOf(dataLen) == 0:

PacketBufSendingStaion[56] = 1

#data

data = random.getrandbits(dataLen*8)

PacketBufSendingStaion[57] = data

# PB4

if parityOf(data) == 0:

PacketBufSendingStaion[58] = 1

else:

repeat_ = 0

print u"resending the packet...."

userInput = input(u"\n\nPress 1 and enter to see the packet...\nPress 2 and enter to send the packet...\n")

if userInput == 1 :

print u"------------------------------------------------\npreamble\n",

for i in range(21) :

print PacketBufSendingStaion[i],

print u"\n------------------------------------------------\ndestination address \nStaion #", recivingAdr

print bin(recivingAdr)

print u"------------------------------------------------\nsender address \nStaion #", sendingAdr

print bin(sendingAdr)

print u"------------------------------------------------\npacket type \n",

print bin(PacketBufSendingStaion[46])

print u"------------------------------------------------\ndata length \n",

print bin(dataLen)

print u"------------------------------------------------\ndata \n",

print bin(data)

print u"------------------------------------------------ \n"

print u"\n\nPress enter to send the packet!"

pause()

clear()

#packet trantion

s = sendingAdr

while 1 :

if (s-1) == recivingAdr :

break

s = s+1

if s > 200 :

s = 0

print u"packet at staion ", s

print u"\n\nThe packet has reached the destenation!!!\n\n"

pause()

clear()

e = 0

print u"\n\n\nChecking packet...\n\n"

if parityOf(PacketBufSendingStaion[28]) == 0:

if PacketBufSendingStaion[29] != 1 :

e = 1

if e == 1 :

userInput = 1

else :

print u"The packet was sent without any errors!\n\n"

userInput = input(u"\nDo you want to make an error occur?\nPress 1 and enter to make an error...\nPress 2 and enter to send a confirmation packet...")

if userInput == 1 :

print u"\n\n\nAn error has occured!\n\nA error log will be sent\nGenerating error log: ..."

x =1

#PR

for i in range(21) :

if x == 1 :

answPacketBufResivingStaion[i] = 1

x = 0

else :

answPacketBufResivingStaion[i] = 0

x = 1

answPacketBufResivingStaion[28] = PacketBufSendingStaion[37]

answPacketBufResivingStaion[37] = PacketBufSendingStaion[28]

answPacketBufResivingStaion[46] = 129

print u"------------------------------------------------\npreamble\n",

for i in range(21) :

print PacketBufSendingStaion[i],

print u"\n------------------------------------------------\ndestination address \nStaion #", answPacketBufResivingStaion[37]

print bin(answPacketBufResivingStaion[37])

print u"------------------------------------------------\nsender address \nStaion #", answPacketBufResivingStaion[28]

print bin(answPacketBufResivingStaion[28])

print u"------------------------------------------------\npacket type \n",

print bin(answPacketBufResivingStaion[46])

print u"------------------------------------------------\n \n",

else:

print u"\n\n\nThe packet transfer was successful!\ndwdw\nGenerating an answer packet: ..."

x =1

#PR

for i in range(21) :

if x == 1 :

answPacketBufResivingStaion[i] = 1

x = 0

else :

answPacketBufResivingStaion[i] = 0

x = 1

answPacketBufResivingStaion[28] = PacketBufSendingStaion[37]

answPacketBufResivingStaion[37] = PacketBufSendingStaion[28]

answPacketBufResivingStaion[46] = 152

print u"------------------------------------------------\npreamble\n",

for i in range(21) :

print PacketBufSendingStaion[i],

print u"\n------------------------------------------------\ndestination address \nStaion #", answPacketBufResivingStaion[37]

print bin(answPacketBufResivingStaion[37])

print u"------------------------------------------------\nsender address \nStaion #", answPacketBufResivingStaion[28]

print bin(answPacketBufResivingStaion[28])

print u"------------------------------------------------\npacket type \n",

Размещено на Allbest.ru

print bin(answPacketBufResivingStaion[46])

print u"------------------------------------------------\n \n",

print u"\n\nPress enter to send the packet!"

pause()

#packet trantion

s = answPacketBufResivingStaion[37]

while 1 :

print u"packet at staion ", s

if s == answPacketBufResivingStaion[28] :

break

s = s+1

if s > 200 :

s = 0

print u"\n\nThe packet has reached the destenation!!!\n\n"

pause()

clear()

pause()


Подобные документы

  • Token ring как технология локальной вычислительной сети (LAN) кольца с "маркерным доступом" - протокол локальной сети на канальном уровне (DLL) модели OSI. Логическая организация станций Token ring в кольцевую топологию с данными. Описание метода доступа.

    лекция [168,8 K], добавлен 15.04.2014

  • Способы связи разрозненных компьютеров в сеть. Основные принципы организации локальной вычислительной сети (ЛВС). Разработка и проектирование локальной вычислительной сети на предприятии. Описание выбранной топологии, технологии, стандарта и оборудования.

    дипломная работа [2,3 M], добавлен 19.06.2013

  • Подключение рабочих станций к локальной вычислительной сети по стандарту IEEE 802.3 10/100 BASET. Расчёт длины витой пары, затраченной на реализацию сети и количества разъёмов RJ-45. Построение топологии локальной вычислительной сети учреждения.

    курсовая работа [1,4 M], добавлен 14.04.2016

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

    дипломная работа [2,8 M], добавлен 27.11.2012

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

    дипломная работа [85,5 K], добавлен 15.03.2014

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

    курсовая работа [501,4 K], добавлен 08.06.2011

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

    курсовая работа [54,4 K], добавлен 25.11.2010

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

    курсовая работа [749,1 K], добавлен 05.05.2010

  • Подбор пассивного сетевого оборудования. Обоснование необходимости модернизации локальной вычислительной сети предприятия. Выбор операционной системы для рабочих мест и сервера. Сравнительные характеристики коммутаторов D-Link. Схемы локальной сети.

    курсовая работа [1,9 M], добавлен 10.10.2015

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

    курсовая работа [1,3 M], добавлен 22.12.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.