Изменения
→Просмотр таблицы маршрутизации
== Идея Определения==[[Файл:Interpolation_search.png|thumb|450px|right|Нахождение разделительного элемента]]Рассмотрим задачу: найти слово в словаре. Если оно начинается на букву "А", то никто не будет искать его в середине, а откроет словарь ближе к началу. В чём разница между алгоритмом человека и другими? Отличие заключается в том, что алгоритмы вроде двоичного поиска не делают различий между "немного больше" и "существенно больше".
== Время работы =Пример таблицы маршрутизации==={| border="1"|-!Destination||Netmask||Gateway||Interface||Metric|-Асимптотически интерполяционный поиск превосходит по своим характеристикам бинарный|0. Если ключи распределены случайным образом, то за один шаг алгоритм уменьшает количество проверяемых элементов с <tex> n </tex> до <tex> \sqrt n </tex>0. То есть, после <tex>k</tex>0.0||0.0.0.0||192.168.0.1||192.168.0.100||10|-ого шага количество проверяемых элементов уменьшается до <tex dpi = 170>n^{\frac{|127.0.0.0||255.0.0.0||127.0.0.1||127.0.0.1||1|-|192.168.0.0||255.255.255.0||192.168.0.100||192.168.0.100||10|-|192.168.0.100||255.255.255.255||127.0.0.1}{2^k}}</tex>||127.0.0. Значит, остаётся проверить только 2 элемента (и закончить на этом поиск), когда <tex dpi = 150>\frac{1}{2^k} = \log_{n}2 = \frac{||10|-|192.168.0.1}{\log_{2}n} </tex>||255.255.255.255||192.168.0.100||192.168. Из этого вытекает, что количество шагов, а значит, и время работы составляет <tex>O(\log \log n)</tex>0.100||10|}
{{Определение|definition = Шлюз (Gateaway) {{---}} адрес узла в сети, на который необходимо отправить пакет, следующий до указанного адреса назначения. Шлюзы бывают ''по умолчанию'', тогда значения адреса назначения и маски указываются как 0.0.0.0.}} {{Определение|definition = Интерфейс (Interface) указывает, какой локальный интерфейс отвечает за достижение шлюза. Например, шлюз 192.168.0.1 (интернет-маршрутизатор) может быть достижим через локальную сетевую карту, адрес которой 192.168.0.100.}} {{Определение|definition = Метрика (Metric) {{---}} числовой показатель, задающий предпочтительность маршрута. Чем меньше число, тем более предпочтителен маршрут. Интуитивно представляется как расстояние (необязательный параметр).}} ==Принцип действия==При отправке сетевого пакета, операционная система смотрит, по какому именно маршруту он должен быть отправлен, основываясь на таблице маршрутизации. Как правило, выбирается наиболее конкретный (т.е. с наиболее длинной сетевой маской) маршрут из тех, которые соответствуют адресу отправителя и имеют наименьшую метрику. Если ни один из маршрутов не подходит, пакет уничтожается, а его отправителю возвращается ICMP-сообщение ''No route to host''. Внутри каждого пакета есть поле TTL (Time to live) при каждой пересылке значение уменьшается на единицу, и если оно становится нулем, то пакет выбрасывается. ICMP-сообщение в данном случае ''TTL expired in transit''. ==Просмотр таблицы маршрутизации==Ниже приведены команды в разных операционных системах, с помощью которых можно посмотреть таблицу маршрутизации Windows: '''route print''' Linux: '''route -n''' ==Источники информации==*[http://lpcs.math.msu.su/~sk/lehre/fivt2013/Earley.pdf Алексей Сорокин {{---}} Алгоритм Эрли]* Ахо А., Ульман Д.{{---}} Теория синтакcического анализа, перевода и компиляции. Том 1. Синтаксический анализ. Пер. с англ. {{---}} М.:«Мир», 1978. С. 358 — 364. [[Категория: Дискретная математика и алгоритмыТеория формальных языков]][[Категория: Контекстно-свободные грамматики]][[Категория: Алгоритмы поискаразбора]]