Коллизия в сети
Что такое коллизия в сети (collision)? Сегодня мы разберем само понятие коллизий в локальной сети, возможные причины их возникновения и как бороться с подобным явлением? Также узнаем, что такое домен коллизий?
Наша статья, будет состоять из двух частей: в первой (теоретической) мы рассмотрим основные понятия и термины, которые нам пригодятся в дальнейшем, а во второй части я покажу Вам (на примере), какие могут быть проблемы в реальной сети и к чему нужно быть готовым?
Итак, разберем само понятие коллизия. Буквально оно означает — столкновение. Что может сталкиваться в компьютерной сети? Правильно, — передаваемые по ней данные, точнее — пакеты (кадры) данных. Помните про принцип коммутации пакетов, о котором мы говорили в одной из наших статей?
Проиллюстрируем возникновение коллизии в компьютерной сети на простенькой схеме:
Как видите хост (компьютер) под номером «1» начинает передачу своих пакетов данных в сеть. Точно в это же время другой хост начинает передачу своих данных. В результате, данные «сталкиваются», что приводит к их полной или частичной потере. Как мы понимаем это — недопустимое явление, так как недоставленные данные нужно передавать снова, а это — временные задержки, которые не каждый пользователь будет готов терпеть. Да и Вам самим постоянное нытье «подопечных» скоро надоест:)
Итак, на основе сказанного выше, давайте дадим краткое определение коллизии в сети: коллизия это — столкновение двух или более кадров в сети, приводящее к их потере или искажению.
Сами столкновения происходят где? Правильно, — в кабеле! Отсюда следует еще одно определение: сетевой кабель это — разделяемая среда передачи данных для всех компьютеров сети. Разделяемая именно потому, что ее пропускная способность (полоса пропускания) делится между всеми компьютерами, образующими сеть.
Учитывая скорости движения данных в сети, вряд ли возникновение коллизии возможно в случае соединения только двух компьютеров? НО! Если компьютеров становится больше?
Или — очень много (несколько сотен) и всем нужно передавать (и принимать) сетевой трафик? Вот именно тогда и возрастает риск возникновения коллизий.
Здесь возникает необходимость в механизме синхронизации доступа сетевых интерфейсов отдельных компьютеров к общей разделяемой среде. Применимо к технологии Ethernet (не зависимо от скорости передачи) этот принцип доступа называется CSMA/CD (Carrier Sense Multiple Access with Collision Detection, что переводится так: множественный доступ с контролем несущей и обнаружением коллизий). Фактически, это — случайный метод доступа к среде. Иногда метод CSMA/CD называют протоколом, который работает на канальном уровне сетевой модели OSI.
Примечание: сетевая модель OSI (open systems interconnection basic reference model — базовая модель взаимодействия открытых систем). Это — модель совместной работы сетевых протоколов различных уровней (всего — семь), которая, в полной мере, позволяет реализовать эффективный обмен данными в сети.
Случайный характер алгоритма доступа к среде передачи данных, принятый в технологии Ethernet, нельзя назвать идеальным. При большом количестве запросов на доступ к среде передачи, генерируемых узлами в случайные моменты времени, вероятность возникновения коллизий также возрастает, что приводит к неэффективному использованию всего канала. Время обнаружения коллизии и время ее обработки составляют дополнительные временные затраты, а интервал в течение которого канал предоставляется в распоряжение каждому узлу, становится все меньше.
Чтобы понапрасну не впасть в состояние паники скажем, что для стандартной сетевой технологии Ethernet наличие коллизий в сети — нормальное явление! Другое дело, что иногда возникают ситуации, когда коллизионных столкновений становится настолько много, что вся полоса пропускания способность сети буквально «съедается» мусорным трафиком и передавать полезные данные становится просто невозможно!
Подобный случай мы рассматривали в статье, о возможности образования петли в локальной сети организации.
Давайте с Вами рассмотрим, какие же бывают разновидности коллизий?
- Коллизия на дальнем конце (в самом кабеле). Возникает из-за одновременной передачи по одной и той же линии данных двумя станциями.
- Коллизия на ближнем конце (в сетевой карте). Происходит, когда сбоит сетевой адаптер ПК или его драйвер и второй кадр начинается записываться в буфер карты еще до окончания передачи первого.
- Коллизии в активном оборудовании (свитчи, хабы). Возникают из-за перегрузки оборудования передаваемыми кадрами, приводя к ошибкам в адресации и наложению нескольких кадров друг на друга.
Чтобы покончить с обязательной терминологией, давайте рассмотрим еще одно нужное нам словосочетание: домен коллизий (Collision Domain).
Что это такое? Ну, грубо говоря, это — коммутатор (свитч) с подключенными к нему компьютерами. Как на схеме выше. Если чуть более академично то — «область сети одновременная передача двух и более станций которой приводит к образованию коллизии». Коммутатор изолирует большую часть трафика одного сегмента сети от трафика другого сегмента (домена коллизий). В результате, пропускная способность каждого отдельного сегмента увеличивается, а значит, — повышается и суммарная пропускная способность сети.
В идеале, коммутатор должен препятствовать распространению коллизии дальше (не пропускать ее), поэтому им, собственно, и ограничивается этот самый домен коллизий. Другое дело, что на практике это не всегда так и если возникновение коллизии происходит на ближнем конце (причиной является неисправная сетевая карта компьютера), то события могут разворачиваться совсем по другому. Но об этом — во второй (практической) части нашей статьи 🙂
Какие же есть методы, позволяющие предотвратить ситуацию, когда коллизия в сети может стать массовым явлением, что (со временем) приведет к полной ее неработоспособности?
Здесь для нас (как администраторов) есть две новости: одна — хорошая, а вторая — еще лучше! 🙂
Первая состоит в том, что механизм арбитража (реагирования) на возникновение коллизии уже встроен в большинство стандартных сетевых технологий! Применимо к наиболее распространенной из них технологии Ethernet, это выглядит следующим образом: один из участников коллизии (при обнаружении, что его передача приводит к столкновению кадров) автоматически генерирует на всю сеть специальную jam-последовательность (jam-signal). Получившие такой сигнал компьютеры знают, что им нужно немедленно прекратить свою передачу данных, сделать случайный временной тайм-аут (backoff time или delay) от 29-ти до 210-ти битовых интервалов, а затем — возобновить работу в штатном режиме. Метод доступа к среде CSMA/CD — в действии!
Примечание: битовый интервал это время, за которое по сети передается наименьшая единица информации — один бит.
На что похожа ситуация, которую мы описали выше? Лично мне она напоминает, когда два человека начинают говорить одновременно. Что происходит в такой ситуации при нормальных условиях? Оба говорящих замолкают, немного выжидают и кто-то первым начинает говорить снова, а второй — молчит и слушает. Потом — отвечает или задает свой вопрос.
Абсолютно идентично и с компьютерами! Их ведь люди создали, вот и «ведут» они себя так же 🙂
Вторая из новостей такая: с коллизией в сети можно бороться средствами, которые предоставляет нам сетевое оборудование соответствующего класса. Например: вот — один из центральных коммутаторов нашей сети на работе: D-Link DES-3550
Это — 50-ти портовый управляемый свитч стоимостью около 600 долларов. Управляемый означает, что он имеет в сети свой выделенный IP адрес и к нему можно подключиться удаленно (введя пароль доступа). Можно по сети производить конфигурацию устройства, включать или отключать отдельные порты, менять режим их работы, мониторить нагрузку на устройство, управлять скоростью каждого порта (подобным образом провайдеры выдумывают свои тарифные планы) и т.д.
Это — управляемый коммутатор второго уровня. Это значит, что он эффективно работает на втором уровне сетевой модели OSI. Сейчас все более популярными становятся устройства третьего уровня (могут работать уже на сетевом IP уровне). Упрощенно это уже — очень быстро передающие пакеты маршрутизаторы, к тому же — простые в использовании.
Давайте, о самом коммутаторе мы еще поговорим во второй части данной статьи (я покажу Вам подробные скриншоты его админ-зоны, покажу что там к чему), здесь я привел его фотографию для того, чтобы показать с помощью каких устройств можно бороться с коллизиями в сети. Коммутатор D-Link DES-3550 позволяет администратору видеть загрузку каждого из портов в режиме реального времени и если какой-либо из портов перегружен или на нем много коллизий — принять соответствующие меры.
Давайте еще немного поговорим на тему разделяемой среды передачи данных. Это, фактически, — и есть наш сетевой кабель, помните? При таком его кооперативном использовании, возникает задача утилизации среды передачи таким образом, чтобы в каждый отдельный момент времени по кабелю передавались данные только одного передатчика (компьютера).
Пропускная способность кабеля делится между всеми компьютерами сети. Например: если у нас 100 компьютеров и сеть работающая на скорости 100 мегабит в секунду, то в среднем на каждый ПК приходится 1Мбит/с пропускной способности. А если компьютеров становится больше? Время для передачи данных, выделяемое каждому из них, сокращается и, как следствие, — коллизия в сети гарантирована! Добавьте к этому все возрастающее время отклика сети, недовольство пользователей и Вы поймете, что возникновение коллизии — неприятная вещь, с которой надо бороться, а еще лучше — сводить возможность ее возникновения к минимуму еще на этапе планирования сети.
Также нужно четко понимать, что некоторую часть доступной пропускной способности сети отнимает у пользовательских данных широковещательный служебный трафик, который является неотъемлемой частью практически всех стеков протоколов, работающих в локальных сетях.
Несмотря на все эти сложности, принцип разделяемой среды используется достаточно часто. Такой подход, реализован в широко распространенных стандартных технологиях локальных сетей, например: Ethernet, Token Ring, FDDI. Почему? Наверное, из за простоты и дешевизны его конечной реализации (дешево и сердито) 🙂
Источник
Обнаружение коллизий
Математическое обнаружение коллизий
Несмотря на то, что мы рассказали все о hitTest и рассмотрели его преимущества и ограничения, мы еще очень далеки от нашей цели. hitTest является встроенным во Flash методом обнаружения коллизий, однако существуют несколько созданных вручную альтернативных способов, которые в определенных задачах могут быть гораздо мощнее.
Что мы на самом деле ищем при проверке на коллизию? Коллизия — это столкновение или соприкосновение двух объектов.
Пусть у нас есть объект в определенном месте. Если другой объект находится в том же самом месте, тогда между ними происходит коллизия . Предположим, имеется стена, расположение которой _x=500 . Если координата _x другого объекта больше 500, то он должен быть в состоянии столкновения со стеной, так? Да, поскольку мы решили, что у стены бесконечная высота , так как мы не проверяем значение _y . Самое замечательное заключается в том, что нам даже не нужно создавать стену. Мы просто говорим, что она там есть, посредством указания значений ее позиции. Самый простой способ — установить константу в начале фильма, к примеру right=500 ;. Давайте рассмотрим этот случай и попробуем с ним поработать.
Живой шарик
- Откройте новый фильм. Находясь в нем, установите левую стенку, реализуя ее в функции init . Переименуйте слой по умолчанию actions и введите следующий код.
Здесь берется скорость velocity и прибавляется к позиции _x . Так как velX = 5 , эта функция прибавляет 5 к позиции _x шарика в каждом кадре. Запустив этот фильм, вы увидите, что шарик переместится вправо и исчезнет. Итак, сейчас мы займемся обнаружением столкновений с использованием стенки.
Мы добавим этот код в функцию move сразу после того, как настроим позицию шарика.
Берем параметр _width фильма ball и делим его на два. Это даст расстояние от центра круга до его края (т.е. радиус). Имейте в виду, что это будет работать только в случае с объектами, у которых имеется центральная точка регистрации, и которые отцентрированы по оси x.
Если вы не видите этого, уменьшите либо частоту кадров фильма, либо значение скорости. Когда вы бросаете мяч в направлении стены, он ведь не проникает в нее, а просто отскакивает! (Имеется в виду обычный человек, бросающий в стену обычный теннисный мячик, а не Арнольд Шварценеггер, кидающий железное ядро). Сейчас мы постараемся решить эту проблему.
Источник
Метод обнаружения коллизий.
В сетях, работающих по принципу обнаружения коллизий, все адаптеры непрерывно находятся в состоянии прослушивания сети. Для передачи данных сервер или рабочая станция должны дожидаться освобождения ЛВС. Однако, не исключено, что передача может начаться несколькими узлами одного сегмента сети одновременно, что приводит к коллизии.
В случае возникновения коллизии узлы должны повторять свои сообщения. Время, затраченное на устранение коллизии, составляет около 10 -6 секунды. Следовательно, есть сети, в которых предусмотрена такая вещь.
Лекция 2. Компоненты локальных сетей.
Устройство, соединяющее компьютер с сегментов сети. Сетевой адаптер, как правило, принадлежит к одному из двух типов: 1) с обнаружением коллизий; 2) с передачей маркеров (маркера). Оба типа при поддержке программных средств производят следующие операции:
Использование буфера необходимо для согласования между собой скоростей обработки информации различными компонентами ЛВС. Буфер должен иметь объем, достаточный для размещения целого пакета данных.
2. Формирование пакета
Данные разделяются на пакеты, добавляя заголовок и окончание.
3. Доступ к кабелю
Адаптер утверждается (проверяет), что линия не занята или ждет поступления маркера.
4. Преобразование данных из последовательной/параллельной формы
5. Кодирование/декодирование данных
6. Передача и прием импульсов
Типы сетевых адаптеров.
Адаптеры различаются по следующим параметрам:
1) Метод доступа к среде;
2) Поддерживающий протокол;
3) Скорость передачи;
6) Адресации портов и т.д.
Устройство, соединяющее локальные или удаленные сегменты сети.
Мосты функционируют на канальном уровне и прозрачны для протоколов более высоких уровней, т. е. принимают решение о передаче кадра только на основании информации из заголовка канального уровня (физического адреса станции получателя). Мост анализирует целостность кадров и испорченные – фильтрует.
Классификация мостов по принципу передачи пакетов:
1. Маршрутизация источника (Sourse Routing) – требует, чтобы узел-отправитель пакета размещал в нем информацию о пути его маршрутизации.
2. Прозрачные мосты (Transparent Bridges) – обеспечивают прозрачную часть станций, расположенных в разных ЛВС и все функции по маршрутизации выполняют сами мосты.
С другой стороны, классификация:
1) Encapsulating Bridges (пакеты физического уровня одной ЛВС целиком передаются в пакеты физического уровня другой ЛВС. Используются для соединения сетей одного типа);
2) Translational Bridges (выполняют преобразование из одного протокола физического уровня в другой. Они удаляют заголовок и служебную информацию одного протокола и переносят данные в другой протокол. Мосты такого типа могут использоваться для соединения сетей разного типа (используются разные протоколы)).
Алгоритм работы моста проверяет:
— занесен ли в его внутреннюю таблицу адрес узла отправителя пакета. Если нет, то мост заносит его в свою таблицу адресов и связывает с ним номер порта, на который поступил пакет;
— занесен ли в таблицу адрес узла назначения. Если нет, то мост передает принятый пакет во все сети, подключенные ко всем остальным его портам. Если адрес есть, мост проверяет, подключена ли ЛВС узла назначения к тому же самому порту, откуда пришел пакет. Если да, то пакет отфильтровывается, если нет, передается адресату.
Главные параметры моста:
· размер внутренней адресной таблицы;
o очень просты в установке;
o автоматически адаптируются к изменениям конфигурации сети;
o могут соединять сети, работающие с разными протоколами сетевого уровня (Translational Bridges).
Не могут использовать альтернативные пути в сети, распространяя по ним нагрузку. Из возможных путей всегда выбирается один согласно адресной таблице.
Многофункциональное устройство, предназначенное для ограничения широковещательного трафика посредством разбиения сети на сегменты. Обеспечение защиты информации, управление и организация резервных путей между областями широковещателей.
Маршрутизатор действует на сетевом уровне и обладает следующими особенностями:
ü учитывает специфику протоколов, используя маршрутную информацию сетевого уровня;
ü Может обмениваться с другими маршрутизаторами информацией для сбора данных о топологии и состоянии сети. На основе анализа информации выбирается наилучший путь для передачи пакета;
ü Определяет логические границы между группами сетевых сегментов.
Маршрутизаторы прозрачны для протоколов физического уровня и используются, как правило, для соединения разнородных сетей, каждая из которых может быть административно независимой.
· обеспечивают большую гибкость, чем мосты;
· выбирают наилучший путь передачи на основе адреса, скорости, стоимости, загрузки линии;
· создают защитный барьер между подсетями;
· могут разбивать длинные сообщения на несколько коротких, позволяя соединять сети, в которых используются пакеты различной длины.
· более сложны в установке и конфигурировании, чем мосты;
· при перемещении компьютера из одной подсети в другую требуется сменить его сетевой адрес.
1) Статическая маршрутизация
Статическая маршрутизация применяется в небольших, медленно изменяющихся сетях. Данные передаются по предопределенному пути и задерживаются, если путь блокирован.
2) Динамическая маршрутизация
Динамическая маршрутизация позволяет автоматически изменить маршрут при отказах или перегрузки конкретных линий. Для автоматического построения маршрутных таблиц используются различные протоколы внутренней (RIP, OSPF, IS-IS, ES-IS) и внешней (EGP и BGP) маршрутизации.
3) Периферийная маршрутизация
Используется, когда трафик в сети предприятия идет в основном между удаленным филиалом и центральным офисом.
1. Однопроцессорная архитектура
Используется несколько сетевых интерфейсных модулей (СИМ), которые соединяются с единственным центральным процессором через общую шину. Центральный процессор выполняет все задачи обработки:
— фильтрацию и продвижение пакетов;
— необходимую модификацию заголовков пакетов;
— обновление таблиц маршрутизации и сетевых адресов;
— формирование управляющих пакетов и т.д.
- гибкость в конфигурировании устройств за счет использования нескольких СИМ;
- простота реализации;
- относительная дешевизна.
- загруженность ЦП, особо ощущаемая при добавлении дополнительных сетевых интерфейсов;
- вынужденное двойное прохождение по шине каждого пакета — от СИМ к ЦП и обратно, даже если он (пакет) предназначен тому же самому сетевому интерфейсу, с которого поступил;
- низкая надежность — сбой ЦП ведет к нарушению работоспособности всего маршрутизатора.
Возможна модифицированная однопроцессорная архитектура, при которой однопроцессорная архитектура сохранена, но в каждый СИМ включен специальный периферийный процессор (ПП), чтобы частично разгрузить ЦП.
2. Симметрично-многопроцессорная архитектура (SMP-архитектура).
Симметрично-многопроцессорная архитектура лишена недостатков, присущих первым двум архитектурам. В этом случае вычислительные мощности полностью распределяются между всеми СИМ. Каждый СИМ занимается всеми задачами, связанными с маршрутизацией. При этом все таблицы маршрутизации, другая необходимая информация, а также реализующее протоколы программное обеспечение скопированы на каждый процессорный модуль.
- возможность значительного расширения сети (за счет добавления СИМ) без заметного падения производительности;
- высокая надежность системы (поломка процессора ведет к выходу из строя только тех сегментов, которые с ним соединены).
Это устройство узкого назначения, который эффективно сегментирует сеть, уменьшает области столкновений коллизий и увеличивает пропускную способность каждой оконечной станции. Работает с протоколами канального уровня и обеспечивает прозрачность по отношению к протоколам более высоких уровней, что позволяет устанавливать их в многопротокольных сетях.
Различают 2 основных способа их использования: 1) без промежуточного накопления; 2) с промежуточным накоплением.
Для обеспечения надежной работы сети важно использовать источник бесперебойного питания (UPS). Их можно разделить на 2 типа:
ü SMART – UPS (включает в себя процессор, который обеспечивает более расширенные возможности самодиагностики и обеспечивает более интеллектуальный интерфейс с программно-техническими средствами контроля и управления сетью).
Лекция 3. Системы телеобработки.
Системы телеобработки – это совокупность технических и программных средств, а также каналов связи. Они предназначены для обработки данных на ЭВМ, управления периферией и вывода результатов работы.
Структура такой системы:
МПД – мультиплексор передачи данных;
АПД – аппаратура передачи данных;
АП – абонентский пункт;
АТС – автоматическая телефонная станция;
ПУ – пульт управления.
Существует 2 вида уплотнений канала связи:
ü частотное уплотнение — устройство работает на разной частоте;
ü временное уплотнение — в посылку данных включается адрес устройства, к которому мы обращаемся.
Существует множество видов каналов связи, среди которых наиболее часто выделяют каналы проводной связи (воздушные, кабельные, световодные и др.) и каналы радиосвязи (тропосферные, спутниковые и др.). Такие каналы в свою очередь принято квалифицировать на основе характеристик входного и выходного сигналов, а также по изменению характеристик сигналов в зависимости от таких явлений, происходящих в канале, как замирания и затухание сигналов.
По типу среды распространения каналы связи делятся на проводные, акустические, оптические, инфракрасные и радиоканалы.
Каналы связи также классифицируют на:
§ непрерывные (на входе и выходе канала — непрерывные сигналы),
§ дискретные или цифровые (на входе и выходе канала — дискретные сигналы),
§ непрерывно-дискретные (на входе канала — непрерывные сигналы, а на выходе — дискретные сигналы),
§ дискретно-непрерывные (на входе канала — дискретные сигналы, а на выходе — непрерывные сигналы).
Каналы могут быть как линейными и нелинейными, временными и пространственно-временными. Возможна классификация каналов связи по диапазону частот.
Характеристики каналов связи:
1. пропускная способность – это скорость, с которой мы можем передавать данные; количество бит, передаваемых в единицу времени.
2. достоверность передачи данных – вероятность ошибки при передачи 1 бита (вероятность ошибки при передачи данных) = 10 -1 10 -6 . Это вероятность для сырых данных.
Возможны помехи. Оптоволокно наиболее защищено от помех. Радиоканал – самый незащищенный.
Внутри канала связи данные представляют собой некую последовательность 0 и 1 (на физическом уровне 0 и 1 – низкое и высокое напряжение).
АМ – амплитудная модуляция;
ЧМ – частотная модуляция;
ФМ – фазовая модуляция.
Основные устройства модема:
|
|
|
|
КС
|
АПД
|
|
S1 – исходный сигнал;
St1 – исходный тактовый сигнал;
S2 – восстановленный сигнал;
St2 – восстановленный тактовый сигнал;
КС – канал связи.
Полосовой фильтр предназначен для снижения помех.
В зависимости от направления передачи данных каналы связи делятся на:
· симплексные КС – позволяют передавать данные в одном направлении;
· полудуплексные КС – позволяют передавать данные в двух направлениях, но последовательно (т.е. с разделением во времени);
· дуплексные КС – позволяют передавать данные в двух направлениях одновременно.
АПД — аппаратура передачи данных должна подготовить данные к передаче в канал связи. Здесь присутствует блок УЗО – устройство защиты от ошибок, а также возможно присутствие блока ГУЗО – групповое устройство защиты от ошибок. Главная задача здесь – повысить достоверность передачи данных по КС.
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет
Источник