Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

1. Структура сетевого протокола. Описание сообщения и правил протокола. Задача формальной верификации правил обмена сообщениями.

2. Язык описания межпроцессного взаимодействия PROMELA. Использование процессов и каналов для описания сетевого протокола. Моделирование потери данных.

3. Верификация моделей на языке PROMELA. Проверка локальных и глобальных условий. Проверка последовательности ввода-вывода.



4. Верификация моделей на языке PROMELA. Условия прогресса. Временные критерии корректности модели. LTL-формулы, типовые формулы для формулирования временных критериев.

5. Модель сетевого взаимодействия OSI/ISO, протоколы и интерфейсы, сетевые устройства и соответствующие им уровни модели OSI/ISO. Стек протоколов TCP/IP и его взаимосвязь с моделью OSI/ISO.

OSI – Open Systems Interconnection (1982), проект в попытке создания сетевых стандартов для обеспечения совместимости решений разных поставщиков. В результате появилась эталонная модель OSI, которая сделала популярной идею общей модели протоколов, разделенную на уровни.

Как часть проекта OSI был разработан стек протоколов, но он оказался слишком сложным и предполагал переписывание всего, что есть, заново. Поэтому стек OSI был вытеснен более простым и уже существовавшим к тому времени стеком TCP/IP.

Проект OSI был свернут в 1996 году, так и не признав TCP/IP.

Уровни эталонной модели OSI:

1). Физический. Данные: биты. Непосредственная передача потока данных в соответствии с методами кодирования сигналов. Устройства: концентраторы, повторители. Физический уровень реализуется на всех сетевых устройствах. Стандарты и протоколы: RS-232, Ethernet (10Base-T, 10Base-5 и т. д), Fast Ethernet, xDSL, … Интерфейс: сетевой адаптер, последовательный порт.

2). Канальный. Данные: кадры (фреймы). Взаимодействие и адресация на физическом уровне, контроль и исправление ошибок. Стандарт IEEE 802 разделяет уровень на 2 подуровня: MAC (Media Access Control) – управление доступом к разделяемой среде, LLC (Logical Link Control) – обслуживание вышестоящего сетевого уровня. Устройства: коммутаторы, мосты. Стандарты и протоколы: Ethernet, Token Ring, Frame Relay, FDDI, PPP, PPPoE и т. д. Интерфейс: драйвер сетевой платы.

3). Сетевой. Данные: пакеты. Определение пути передачи данных. Глобальная адресация. Трансляция логических адресов в физические, маршрутизация. Устройства: маршрутизатор. Стандарты и протоколы: IP, ICMP, ARP, RARP, DHCP, RIP, … Интерфейс: raw sockets.

4). Транспортный. Данные: блоки (сегменты). Надежная доставка данных без потерь, ошибок и дублирования. Фрагментация пакетов. Взаимодействие точка-точка. Стандарты и протоколы: TCP, UDP, SMB, NetBEUI, …

5). Сеансовый. Поддержание сеанса связи: создание/завершение, обмен, синхронизация, определение прав. Стандарты и протоколы: NetBIOS, SSL, RPC, …

6). Представления. Преобразование протоколов, кодирование/декодирования данных, делегирование запросов. Стандарты и протоколы: XML-RPC, SMTP, ASN.1, …

7). Прикладной. Пользовательские приложения. Стандарты и протоколы: HTTP, FTP, IRC, SMB, BitTorrent, …

Модель OSI является теоретический и реальные протоколы часто не могут в нее вписаться (например, RIP, ICMP – используют IP, но вроде сетевого уровня, а BGP вообще поверх TCP, но тоже на сетевом уровне). На транспортном уровне некоторые протоколы не обеспечивают надежность доставки (UDP).

Стек TCP/IP обычно пытаются «втиснуть» в модель OSI, распределяя протоколы по уровням:

2) Ethernet, Token Ring и т. п.

3) IP, ICMP, IGMP, ARP, RARP, OSPF, RIP

4) TCP, UDP, RTP, SCTP, DCCP

5) SSH, RPC, NetBIOS

6) XML, ASN.1, SMB

7) HTTP, SMTP, FTP, Telnet

TCP/IP лучше вписывается в упрощенную модель DOD (Department of Defence), состоящую из 4 уровней:

1) Уровень сетевого интерфейса (Network Access) (уровни 1 и 2 OSI)

2) Межсетевой уровень (internet) (3 уровень OSI)

3) Транспортный (host-to-host) (4 OSI)

4) Уровень приложений (Process/Application) (5,6,7 OSI).

6. IP-адресация, классы сетей, маски сети, бесклассовая адресация. Специальные адреса сетей. Схема IP-маршрутизации.

IP-протокол сетевого уровня OSI, без установления соединения, без надежной доставки. Основная задача: логическая адресация пакетов. Возможна фрагментация пакетов с последующей сборкой.

IP имеет дело с логической адресацией, не зависящей от физ. устройств. Адреса выделяются администратором или автоматически. Автоматическое назначение адресов возможно благодаря протоколам RARP, BootP, DHCP.

В протоколе IPv4 используется 32-битный адрес узла (напр., 89.169.49.8). Адрес состоит из двух частей: адреса сети и адреса хоста. Возможно еще использование третьей компоненты: адреса подсети. Размеры частей определяются маской (под)сети. Например, 111.222.111.222/12 означает, что первые 12 бит адреса – адрес (под)сети, а остальные 20 – адрес хоста в этой (под)сети. Маска может задаваться целиком, все 32 бита; например, записи масок /16 и 255.255.0.0 эквивалентны.

Адрес от такого условного разделения все равно не меняется, это сделано для удобства маршрутизации и назначения адресов.

Существует 5 основных классов логических IP-адресов:

1) Класс A (маска /8), 126 сетей по 16777215 хостов. Адреса 1.0.0.1 – 126.255.255.254 (первый бит 0). Выдается крупным организациям, университетам и т. п.

2) Класс B (маска /16), 16384 сетей по 65534 узла. Адреса 128.0.0.1 – 191.255.255.254 (первые два бита 1,0).

3) Класс C (маска /24), 2097152 сети по 254 узла. Адреса 192.0.0.1 – 223.255.255.254 (первые три бита 1,1,0).

4) Класс D (маска /32). Адреса 224.0.0.0 – 239.255.255.255 (первые биты 1110). Это групповые адреса, не могут принадлежать сетям общего пользования.

5) Класс E (маска /32). Адреса 240.0.0.0 – 247.255.255.255 (первые биты 11110). Зарезервированные адреса.

Некоторые адреса трактуются особо:

1) Адрес состоит из одних нулей. Это неопределенный адрес.

2) Если номер сети состоит из нулей, считается, что это адрес в той же сети, что и узел, отправивший пакет.

3) Адрес состоит из одних единиц – рассылка всем узлам текущей сети (ограниченное широковещание).

4) Номер узла состоит из одних единиц – рассылка всем узлам указанной сети (широковещание).

5) Первый байт равен 127 – внутренний локальный адрес узла. Используется для тестирования.

6) Частные адреса для автономного использования: в классе A сеть 10.0.0.0/8, в классе B – 16 сетей 172.16.0.0/16 – 172.31.0.0/16, в классе C – 255 сетей 192.168.0.0/24 – 192.168.255.0/24.

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

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

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

2) Адрес маршрутизатора, которому необходимо передать пакет, идущий в сеть назначения.

3) Сетевой интерфейс, через который доступен следующий маршрутизатор.

4) Метрика (расстояние) до сети назначения. Если указан 0, то узел назначения находится непосредственно в данной сети.

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

Таблица маршрутизации может задаваться жестко (тогда маршрутизация статическая) или меняться в ходе работы протокола маршрутизации (это динамическая маршрутизация).



7. Понятие автономной системы. Внешняя и внутренняя маршрутизация. Маршрутная политика, протоколы BGP. Протокол RIP.

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

Автономная система (АС) – группа ДМ, принадлежащая одной организации и управляемая общей политикой маршрутизации. Раньше понятия АС и ДМ были эквивалентными.

АС должна быть связана с Internet и иметь собственный номер (ASN) из диапазона 1-65535.

Протоколы маршрутизации делятся на две категории:

1) Внутренние (IGP – Interior Gateway Protocol), используемые только внутри АС (при этом внутри АС может использоваться несколько таких протоколов).

2) Внешние (EGP – Exterior Gateway Protocol), обеспечивающие маршрутизацию между различными АС.

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

Назначение BGP – передавать другим BGP-маршрутизаторам информацию о наличии сетей и о структуре этих сетей. BGP формирует единую иерархическую структуру маршрутизации в Internet. BGP не менее важен для Internet, чем DNS.

BGP – протокол сетевого уровня, работает поверх TCP(179). В АС, поддерживающей BGP, выделяют три вида маршрутизаторов:

1) BGP-спикеры – все маршрутизаторы АС, работающие с BGP

2) Граничные шлюзы – спикеры, соединяющие две или более АС. Задача ГШ – объявлять о внутренних маршрутах АС всем внешним спикерам.

3) Равноправные маршрутизаторы – два спикера, участвующие в сеансе обмена маршрутной информацией. При первом сеансе спикеры обмениваются полными маршрутными таблицами.

Для связи между спикерами разных АС используется протокол EBGP. Для поддержки маршрутной информации между спикерами одной АС используется протокол IBGP.

Основным сообщением BGP является UPDATE, с помощью которого спикер сообщает спикеру соседней АС о достижимости сетей, относящихся к его собственной АС. В одном сообщении UPDATE можно объявить об одном новом маршруте или аннулировать несколько существующих. Также существует несколько вспомогательных типов сообщений.

RIP (Routing Information Protocol) – протокол IGP. Есть две версии: RIPv1 и RIPv2. Впервые появился в BSD в виде демона routed. Ключевое отличие версий: RIPv1 не поддерживает маски. Метрика может использоваться любая, обладающая свойством аддитивности. Обычно используется число хопов.

Работа RIP

1). Автоматически строится минимальная маршрутная таблица, в которой отражены только непосредственно подключенные сети.

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

3). При получении копии маршрутной таблицы маршрутизатор увеличивает полученные метрики и корректирует свою маршрутную таблицу. Если полученная информации о сети имеет лучшую метрику, то строка в маршрутной таблице замещается на полученную; маршрутизатором указывается узел, от которого получена новая строка.

4). Узел периодически рассылает свою маршрутную таблицу.

5). Опять обработка как в (3).

Рассылка осуществляется периодически каждые 30 с.

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

Если появляется новый маршрут, эта информация рассылается соседям и постепенно доходит до всех. Сложнее с исчезновением маршрута.

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

Главная проблема RIP – получение устаревшей информации «из вторых рук», что может приводить к зацикливанию. Есть методы, которые пытаются это исправить:

1) Метод расщепленного горизонта – информация о маршруте не отправляется маршрутизатору, от которого она получена (не спасает от петель из нескольких маршрутизаторов).

2) Триггерные обновления – получая данные об изменении метрики маршрута, маршрутизатор сразу ее рассылает. Иногда это не спасает, если успеет настать время рассылки.

3) Замораживание изменений – тайм-аут на принятие данных о маршруте, который только что стал недоступным.

8. Протокол маршрутизации OSPF. Понятие области. Виды маршрутизаторов в протоколе OSPF. Алгоритм Дейкстры.

Два этапа построения маршрутных таблиц OSPF:

1). Построение графа топологии сети с помощью рассылки сообщений LSA (Link State Advertisements)

2). Нахождение кратчайших путей в графе по алгоритму Дейкстры.

Для контроля состояния связей соседние маршрутизаторы каждые 10 с. обмениваются сообщениями HELLO. Если HELLO перестают поступать, маршрутизатор рассылает соседям информацию об изменении, а те лавинно рассылают дальше.

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

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

Чтобы уменьшить размер топологической базы (LSDB) и сократить нагрузку, OSPF позволяет раз­бивать автономную систему на области (areas) — непрерывные группы сетей. Об­ласти идентифицируются 32-разрядным параметром Area ID (Код области), кото­рый выражается в точечно-десятичной нотации. Код области — это административный идентификатор; он не имеет никакого отно­шения к IP-адресу или идентификатору сети. Если все сети внутри области соот­ветствуют одному идентификатору сети, включающему идентификаторы подсетей, то для удобства управления код области можно приравнять этому идентификатору сети. Например, если область содержит все подсети IP-сети 10.1.0.0, код этой обла­сти может быть установлен равным 10.1.0.0.

Типы OSPF-маршрутизаторов

Когда автономная система OSPF подразделяется на области, маршрутизаторы от­носятся к одной или более категориям:

1). Внутренний маршрутизатор (internal router)  - маршрутизатор, все интерфейсы которого подключены к одной области. На каждом внутреннем маршрутизаторе хранится одна LSDB.

2). Граничный маршрутизатор области (area border router, ABR) - маршрутизатор, интерфейсы которого подключены к разным областям. На ABR хранится несколько LSDВ — по одной на каждую подключенную область.

3). Магистральный маршрутизатор (backbone router), или маршрути­затор магистральной области (router of backbone area) – маршрутизатор, один из интерфейсов которого подключен к магистральной области. К маршрутиза­торам этого типа относятся все ABR и внутренние маршрутизаторы магистральной области.

4). Граничный маршрутизатор автономной системы

(AS boundary router, ASBR) – маршрутизатор, который обменивается информаци­ей о маршрутах с источниками за пределами данной автономной системы OSPF. ASBR оповещают о внеш­них маршрутах через автономную систему OSPF.

Алгоритм SPF (Дейкстры)

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

Алгоритм SPF был предложен (E. W.Dijkstra).

Пусть

S - заданная вершина (источник путей);

E - множество обработанных вершин, т. е. вершин, кратчайший путь к которым уже найден;

R - множество оставшихся вершин графа (т. е. множество вершин графа за вычетом множества E);

O - упорядоченный список путей.

Описание алгоритма

1. Инициализировать E={S}, R={все вершины графа, кроме S}. Поместить в О все односегментные (длиной в одно ребро) пути, начинающиеся из S, отсортировав их в порядке возрастания метрик.
2. Если О пуст или первый путь в О имеет бесконечную метрику, то отметить все вершины в R как недостижимые и закончить работу алгоритма.
3. Рассмотрим P - кратчайший путь в списке О. Удалить P из О. Пусть V - последний узел в P.  Если V принадлежит E, перейти на шаг 2;
иначе P является кратчайшим путем из S в V (будем записывать как V:P); перенести V из R в E.
4. Построить набор новых утей, подлежащих рассмотрению, путем добавления к пути P всех односегментных путей, начинающихся из V. Метрика каждого нового пути равна сумме метрики P и метрики соответствующего односегментного отрезка, начинающегося из V. Добавить новые пути в упорядоченный список О, поместив их на места в соответствии со значениями метрик. Перейти на шаг 2.

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

9. Использование интерфейса Winsock для использования TCP/IP в прикладных программах. Решение проблемы блокировки.



10. Обеспечение безопасности локальных сетей. Межсетевые экраны, механизм преобразования адресов NAT, проксирование, прозрачное проксирование.