- •3 . Классификация сетей. Локальные сети, глобальные сети.
- •4.Ключевые аспекты организации уровня передачи данных. Обнаружение и исправление ошибок.
- •5. Ключевые аспекты организации уровня передачи данных. Обработка ошибок.
- •6. Ключевые аспекты организации уровня передачи данных.Сервисы, предоставляемые сетевому уровню
- •7. Ключевые аспекты организации уровня передачи данных. Формирование кадра.
- •8. Подуровень управления доступом к среде. Коммутация на уровне передачи данных. Повторители, концентраторы, мосты, коммутаторы, маршрутизаторы и шлюзы.
- •9. Подуровень управления доступом к среде. Коммутация на уровне передачи данных.Мосты между .X и .У
- •10. Подуровень управления доступом к среде. Проблема распределения канала. Динамическое распределение каналов
- •11. Подуровень управления доступом к среде. Проблема распределения канала. Протоколы без столкновений
- •12. Подуровень управления доступом к среде. Проблема распределения канала. Протоколы множественного доступа с контролем несущей.
- •13. Подуровень управления доступом к среде. Проблема распределения канала. Протоколы с ограниченной конкуренцией
- •14. Подуровень управления доступом к среде. Проблема распределения канала. Статическое распределение канала
- •15. Подуровень управления доступом к среде. Сети Ethernet.
- •16. Подуровень управления доступом к среде. Сеть Ethernet. Манчестерский код.
- •17. Подуровень управления доступом к среде. Сеть Ethernet. Протокол подуровня управления доступом к среде в Ethernet
- •18. Подуровень управления доступом к среде. Сеть Ethernet. Кабели Ethernet.
- •19. Подуровень управления доступом к среде. Система aloha
- •20. Прикладной уровень. Архитектура www
- •21. Прикладной уровень. Служба имен доменов dns.
- •22. Прикладной уровень. Служба доменов dns. Записи ресурсов
- •23. Прикладной уровень. Служба доменов dns. Пространство имен dns
- •24. Прикладной уровень. Служба доменов dns. Серверы имен
- •25. Прикладной уровень. Электронная почта. Архитектура и службы
- •26. Прикладной уровень. Электронная почта. Доставка сообщений
- •27. Прикладной уровень. Электронная почта. Пересылка писем
- •28. Проектирование сетевого уровня. Реализация сервиса без установления соединения.
- •29. Проектирование сетевого уровня. Сервисы, предоставляемые транспортному уровню.
- •30. Проектирование сетевого уровня. Сравнение подсетей виртуальных каналов и дейтаграмных подсетей.
- •31. Сетевой уровень в Интернете. Ip-адреса
- •Ip адрес
- •32. Сетевой уровень в Интернете. Управляющие протоколы Интернета.
- •33. Сетевой уровень в Интернете. Протокол ip.
- •34. Сетевой уровень. Алгоритмы маршрутизации. Выбор кратчайшего пути. Заливка.
- •35. Сетевой уровень. Управляющие алгоритмы маршрутизации. Выбор кратчайшего пути. Маршрутизация по вектору расстояний.
- •36. Сетевой уровень. Управляющие алгоритмы маршрутизации. Выбор кратчайшего пути. Маршрутизация с учётом состояния линий.
- •37. Службы и протоколы.
- •38. Службы на основе соединений и службы без установления соединений
- •39. Службы на основе соединений и службы без установления соединений
- •40. Транспортная служба. Примитивы транспортной службы.
- •41. Транспортная служба. Сокеты Беркли.
- •42. Транспортная служба. Услуги, предоставляемые верхним (транспортным) уровнем.
- •43. Транспортные протоколы Интернета: tcp
- •44. Транспортные протоколы Интернета: tcp Протокол tcp.
- •45. Транспортные протоколы Интернета: tcp. Модель службы tcp
- •46. Транспортные протоколы Интернета: tcp. Основы tcp
- •47. ТпИ: udp Вызов удаленной процедуры
- •48. ТпИ: udp Основы
36. Сетевой уровень. Управляющие алгоритмы маршрутизации. Выбор кратчайшего пути. Маршрутизация с учётом состояния линий.
Маршрутизация с учетом состояния линий
Маршрутизация на основе векторов расстояний использовалась в сети ARPANET вплоть до 1979 года, когда ее сменил алгоритм маршрутизации с учетом состояния линий. Отказаться от прежнего алгоритма пришлось по двум причинам. Во-первых, старый алгоритм при выборе пути не учитывал пропускную способность линий. Пока все линии имели пропускную способность 56 Кбит/с, в учете пропускной способности не было необходимости. Однако стали появляться линии со скоростью 230 Кбит/с, а затем и 1,544 Мбит/с, и не принимать во внимание пропускную способность стало невозможно. Конечно, можно было ввести пропускную способность в качестве множителя для единицы измерения, но имелась еще и другая проблема, заключавшаяся в том, что алгоритм слишком долго приходил к устойчивому состоянию (проблема счета до бесконечности). Поэтому он был заменен полностью новым алгоритмом, который сейчас называется маршрутизацией с учетом состояния линий. Варианты этого алгоритма широко применяются в наши дни.
В основе алгоритма лежит простая идея, ее можно изложить в пяти требованиях к маршрутизатору. Каждый маршрутизатор должен:
1. Обнаруживать своих соседей и узнавать их сетевые адреса.
2. Измерять задержку или стоимость связи с каждым из своих соседей.
3. Создавать пакет, содержащий всю собранную информацию.
4. Посылать этот пакет всем маршрутизаторам.
5. Вычислять кратчайший путь ко всем маршрутизаторам.
В результате каждому маршрутизатору высылаются полная топология и все измеренные значения задержек. После этого для обнаружения кратчайшего пути к каждому маршрутизатору может применяться алгоритм Дейкстры. Далее мы рассмотрим каждый из этих пяти этапов более подробно.
37. Службы и протоколы.
Службы и протоколы являются различными понятиями, хотя часто эти понятия смешиваются.
Служба (или сервис) — это набор примитивов (операций), которые более низкий уровень предоставляет более высокому. Служба определяет, какие именно операции уровень будет выполнять от лица своих пользователей, но никак не оговаривает, как должны реализовываться эти операции. Служба описывает интерфейс между двумя уровнями, в котором нижний уровень является поставщиком сервиса, а верхний — его потребителем.
Протокол — это набор правил, описывающих формат и назначение кадров, пакетов или сообщений, которыми обмениваются одноранговые сущности внутри уровня. Сущности используют протокол для реализации определений их служб. Они могут менять протокол по желанию, при условии что при этом остаются неизменными службы, предоставляемые ими своим пользователям.
Таким образом, служба и протокол оказываются практически независимыми. Другими словами, службы — это нечто связанное с межуровневыми интерфейсами, тогда как протоколы связаны с пакетами, передающимися сущностями одного уровня, расположенными на разных машинах.
Стоит провести аналогию с языками программирования. Службу можно уподобить абстрактному типу данных или объекту в объектно-ориентированных языках программирования. Он определяет операции, которые могут выполняться с объектом, но не описывает, как реализованы эти операции. В этом случае протокол относится к реализации службы и, таким образом, невидим для пользователей службы.
