
- •Хайретдинов м.С. Cетевые информационные технологии
- •5.3. Электронная почта. 120
- •5.4. Группы новостей 144
- •Глава 6 Основные программы поиска ресурсов сети Интернет 158
- •Глава7. Глобальные поисковые системы 182
- •Глава 8. Перспективные технологии сети Интернет 206
- •8.4. Технология «Web 2.0» 228
- •Введение
- •Глава 1. Открытые системы Понятие «открытая система»
- •1.1 Модель osi
- •1.2. Уровни модели osi Физический уровень
- •Сетевой уровень
- •Транспортный уровень
- •Сеансовый уровень
- •Представительный уровень
- •Прикладной уровень
- •Сетезависимые и сетенезависимые уровни
- •1.3. Модульность и стандартизация
- •1.4. Источники стандартов
- •1.5. Стандартные стеки коммуникационных протоколов
- •Стек osi
- •Необходимый минимум.
- •Глава 2. Internet-организация, структура, методы
- •2.1. Сети коммутации пакетов
- •2.2. Протокол Internet (ip)
- •2.3. Tcp, udp и другие
- •2.4 Принцип «клиент-сервер».
- •2.5 Системы сетевых адресов
- •2.5.1 Региональная система имён
- •2.5.2 Структура региональной системы имён
- •2.5.3 Поиск адреса по доменному имени
- •2.5.5. Система адресов х.400
- •2.6 Маршрутизация
- •2.6.1 Протокол rip
- •2.6.2 Протокол ospf
- •Глава 3. Локальные и глобальные сети
- •3.1. Особенности локальных, глобальных и городских сетей
- •3.2. Отличия локальных сетей от глобальных
- •3.3. Тенденция к сближению локальных и глобальных сетей
- •3.4. Сети отделов, кампусов и корпораций
- •Сети отделов
- •Сети кампусов
- •Корпоративные сети
- •3.5. Требования, предъявляемые к современным вычислительным сетям
- •3.5.1 Производительность
- •3.5.2 Надежность и безопасность
- •3.5.3 Расширяемость и масштабируемость
- •3.5.4 Прозрачность
- •3.5.5 Поддержка разных видов трафика
- •3.5.6. Управляемость
- •3.5.7. Совместимость
- •Глава 4. Виды доступа в Internet
- •4.1 Непосредственный доступ
- •4.3 Доступ "по вызову" (Dial-up Access)
- •4.4 Доступ uucp
- •4.5 Доступ через другие сети
- •Глава 5 Наиболее распространённые возможности Internet Введение
- •5.1. Удалённый доступ (telnet)
- •Простой протокол telnet
- •Командный режим программы telnet
- •Нестандартные telnet-серверы
- •Telnet и нестандартные порты
- •Необходимый минимум
- •Безопасность и предоставление доступа
- •Удаленный вход в систему
- •5.2. Протокол передачи файлов (ftp) Введение
- •5.2.1. Модели работы ftp.
- •Алгоритм работы при соединении двух ftp-серверов, ни один из которых не расположен на локальном хосте пользователя.
- •Представление данных
- •1. Тип файла.
- •2. Управление форматом.
- •3. Структура.
- •4. Режим передачи. (Указывает на то, как файл передается по соединению данных)
- •5.2.2 Команды ftp
- •5.2.3 Ftp отклики
- •5.2.4. Управление соединением
- •Пример ftp
- •Утилита ftp.
- •5.2.5. Спам - трафик, или тонкости работы протокола ftp
- •5.2.6. Некоторые проблемы ftp
- •Необходимый минимум
- •Список источников:
- •Работа с меню
- •5.2.7. Работа с системой ftp
- •Поиск файлов
- •Поиск ключей
- •Применение указателей (индексов)
- •Применение команды grep
- •Движение по каталогам
- •Смена каталога
- •Форматы файлов
- •Ascii-файлы, или текстовые файлы
- •Бинарные Файлы
- •Выбор типа передачи
- •Если вы не уверены ...
- •Получение Файла
- •Права в другой системе
- •Упакованные файлы
- •Проблемы общего характера
- •Пересылка группы файлов
- •Анонимный протокол ftp
- •Архивы интерпретатора команд shell
- •Замечания относительно различий в системах
- •5.2.8. Протоколы tftp и sftp.
- •Выход из ftp
- •Необходимый минимум
- •5.3. Электронная почта. Введение
- •5.3.1. Системы почтовой рассылки.
- •5.3.2. Почтовые протоколы. Введение
- •Протокол smtp Модель протокола
- •Электронная почта
- •Команды smtp
- •Команды простого протокола передачи почты (smtp)
- •Последовательность команд smtp
- •Конверты, заголовки и тело
- •Описание протокола pop3
- •Режим autorization
- •Пример pop3 сессии
- •Литература
- •5.3.3. Мime: многоцелевые расширения электронной почты для Internet
- •Pine: Реализация mime
- •5.3.4. Что делать, когда электронная почта возвращается
- •Неизвестные компьютеры
- •Неизвестные получатели
- •Почту нельзя доставить
- •Неудачи при доставке почты нескольким адресатам
- •Списки рассылки и отражатели почты
- •Отмена подписки
- •Ведущие и этикет списков
- •5.3.5. Поиск файлов с помощью электронной почты
- •Серверы Internet-muna
- •Запросы в формате listserv
- •Команды поиска файлов утилиты listserv
- •Команды поиска файлов утилиты majordomo
- •Команды поиска файлов утилиты almanac
- •Прикладной шлюз ftPmail
- •Группы новостей
- •Тематика UseNet
- •Как получать информацию из групп новостей
- •WinVn — графическая программа чтения новостей
- •Просмотр материалов телеконференций
- •Составление ответов
- •Подготовка нового сообщения
- •Сохранение сообщений на диске
- •Декодирование сообщений
- •Как правильно завершить сеанс работы с WinVn
- •Просмотр новостей программой trn.
- •Глава 6 Основные программы поиска ресурсов сети Интернет Введение
- •6.1. Поиск в internet с помощью системы gopher
- •Каким клиентом Gopher воспользоваться?
- •Работа с Gopher сервисной компании
- •Запуск из оболочки unix
- •Работа через telnet
- •6.1.1.Работа с системой Veronica
- •Необходимый минимум
- •6.2. Глобальная система world wide web
- •Введение
- •6.2.1. Гипертекстовые системы.
- •Взаимодействие паутины и баз данных.
- •Простейшая homepage
- •6.3. Обзор языка html Введение
- •Направления в развитии языка
- •Базовые понятия языка html
- •Взаимодействие html-страницы с web сервером
- •Список литературы
- •6.4. Протоколы передачи гипертекста http Протокол http
- •История развития протокола
- •Структура протокола
- •Стартовые строки
- •Код ответа
- •Заголовки
- •Пример. Запрос/ответ по http
- •Методы обеспечения безопасности передаваемых данных
- •Процедура установления соединения по tls
- •Процедура hadshake в деталях
- •Глава7. Глобальные поисковые системы
- •7.1.Общие принципы работы поисковых систем
- •Внутренние факторы, влияющие на ранжирование документов в поисковых системах
- •Внешние факторы, влияющие на ранжирование документов в поисковых системах
- •7.2. Качество поиска. Понятие Page Rank
- •Что такое PageRank или что надо знать о pr.
- •ТИц (Тематический Индекс Цитирования)
- •Краткое резюме
- •7. 3. Обзор основных глобальных поисковых систем Internet Введение
- •7.3.1.Поисковая система Rambler
- •Нынешняя позиция Rambler в российском Интернет и на рынке интернет-рекламы
- •7.3.2 "Апорт"
- •7.3.3. Поисковая система Yandex.
- •Проверяйте орфографию
- •Используйте синонимы
- •Ищите больше, чем по одному слову
- •Не пишите большими буквами
- •Найти похожие документы
- •Попробуйте использовать язык запросов
- •Искать без морфологии
- •Поиск картинок и фотографий
- •7.3.4. Поисковая система Googlе История
- •7.3.5. Поисковая система tela
- •Зарубежные поисковики для русскоязычного пользователя
- •7.3.6. Поисковая система AltaVista
- •7.3.7. Поисковый каталог Yahoo
- •7.4. Интеллектуальные поисковые системы: принцип организации, сравнительный анализ. Введение
- •Поиск с обратной связью на естественном языке
- •Интерактивный генератор диалогов
- •Начинается с ввода пользовательского запроса, который порождает либо обмен сообщениями на естественном языке, либо направление интерпретированного запроса поисковому агенту
- •Адаптивный поисковый агент
- •Основные выводы
- •Заключение
- •Список литературы
- •Глава 8. Перспективные технологии сети Интернет
- •8.1.Гигабитные испытательные модели
- •8.2. Примеры служб обмена данными
- •Сети х.25
- •Ретрансляция кадров
- •8.3.Широкополосные isdn и atm
- •Эталонная модель b-isdn atm
- •Протокол атм
- •Категории услуг протокола атм и управление трафиком
- •Перспективы atm
- •Сравнение предоставляемых услуг
- •Стандартизация сетей
- •8.3.1. Who's Who в мире телекоммуникаций
- •Передача трафика ip через сети atm
- •Сосуществование atm с традиционными технологиями локальных сетей
- •Использование технологии atm
- •Вопросы
- •8.4. Технология «Web 2.0» Введение
- •Причины появления web 2.0
- •Что такое web 2.0
- •8.4.1. Основные принципы Веба 2.0 Веб как платформа
- •8.4.2. Использование коллективного разума
- •Блоги и мудрость масс
- •Архитектура взаимодействия
- •Конец цикла разработки по
- •Упрощенные модели программирования
- •Софт работает поверх устройств
- •Богатые пользовательские интерфейсы
- •Что должны уметь компании в Вебе 2.0
- •Подходы к проектированию Веба 2.0
- •Примеры сайтов Web 2.0
- •Пример работы в Web 2.0- википедия (http://ru.Wikipedia.Org/wiki/)
- •В контакте (http://vkontakte.Ru/)
- •Заключение
- •Список литературы.
- •Глоссарий
- •Список литературы
- •Темы ргр по дисциплине «Сетевые информационные технологии»
- •Примеры экзаменационных билетов
2.6.1 Протокол rip
RIP — это Routing Information Protocol — протокол маршрутной информации. RIP относится к широкоизвестному классу протоколов маршрутизации, основанных на алгоритме Беллмана-Форда, относящемуся к классу так называемых алгоритмов векторов расстояний. Этот протокол наиболее подходит для использования в качестве внутреннего (меж) шлюзового протокола (ЮР), т.е. для маршрутизации сообщений внутри автономной системы (AS), которая работает под неким единым началом и по единым принципам. RIP предназначен для работы в сетях (автономных системах) умеренных размеров, использующих достаточно однородную технологию. Он подходит для сетей многих компаний, научных и учебных заведений, использующих последовательные линии передачи данных, пропускные способности которых меняются в пределах сети незначительно.
ЮР в качестве метрики может использовать только статические функции (постоянные по времени). Использование динамических метрик приводит к возникновению неустойчивостей, которые RIP отрабатывать не умеет.
Алгоритмы векторов расстояний основаны на обмене между маршрутизаторами только информацией о "расстояниях" между ними, точнее о соответствующих метриках. При этом считается, что сами сети являются точечными объектами, т.е. расстояния между любыми двумя узлами одной сети равны нулю, поэтому расстояния между маршрутизаторами двух разных сетей равны расстоянию между этими сетями.
Каждый маршрутизатор имеет таблицу с перечислением всех других сетей данного домена маршрутизации с указанием тех своих соседей, через которых проходят пути к этим сетям, и соответствующих метрик — расстояний до этих сетей от сети данного маршрутизатора. Таким образом, эти таблицы расстояний индивидуальные у каждого маршрутизатора и отличаются от таблиц других маршрутизаторов.
Очевидно, что из этой таблицы расстояний составить собственно таблицу маршрутизации — пара пустяков — просто выбросить длины путей, и таблица готова. Вся проблема в том, как составить эти таблицы (вектора) расстояний так, чтобы они соответствовали действительности. Именно для этого и нужен алгоритм Беллмана-Форда. Давайте придумаем простенькую систему сетей и будем вести рассуждения на её примере. См. рис. 2.9. Пусть узлы А, B, С, D и Т являются маршрутизаторами сетей с аналогичными названиями. Пусть, далее, все линии, кроме линии C-D имеют "длины" 1, а линия C-D — 10. Можно считать, что реально это не длины, а, например, стоимости пересылки по этим линиям связи.
Советуем вам самим проследить, что происходит в этой системе с таблицами расстояний. Пусть, например, начальное состояние векторов расстояний такое, как показано в таблице на рис.2.10. Здесь специально придумано наиболее неопределенное начальное состояние таблиц, чтобы вы сами смогли убедиться, что алгоритм Беллмана-Форда приводит к нужному результату при любых начальных условиях. Естественно, расстояния между соседями должны всегда соответствовать действительности, идиотизировать их мы не имеем права, иначе, исчезнет источник достоверной информации о состоянии сети.
Рис. 2.9: Пример сети
Алгоритм Беллмана-Форда велит действовать так.
Каждый маршрутизатор рассылает свою таблицу расстояний всем маршрутизаторам — его непосредственным соседям. Фактически это означает, что маршрутизатор сообщает всем своим соседям, что он думает, что от него добираться до разных сетей следует так-то (через таких-то его соседей), и что эти пути имеют такие-то длины. Соседи принимают это всерьёз и начинают корректировать с учётом этой информации свои собственные таблицы расстояний.
А именно, если маршрутизатор, положим для определённости, С видит, что его сосед, пусть это будет А, знает более короткий путь до некоторой сети, например до сети Т, чем он сам, естественно, маршрутизатор учитывает путь от него до соседа, просто складывая эти пути, т.е. если оказывается, что через соседа А путь до сети Т короче, то он изменяет запись в своей таблице расстояний, соответствующую сети Т, вписывает туда, что до сети Т путь лежит через этого самого соседа A и имеет длину:
(длина пути, сообщённая соседом А)+(длина пути до соседа А).
Если же маршрутизатор С видит, что тот его сосед (А), через который проходит путь от него (С) к сети Т, вдруг говорит, что путь от него (от А) до этого самой сети Т, оказывается, длиннее, чем он (А) думал раньше, то С безропотно меняет в записи в своей таблице, соответствующей сети Т, старое расстояние на новое, которое он вычисляет тем же очевидным образом:
(длина пути, сообщённая соседом)+(длина пути до соседа).
Рис. 2.10: Пример начального состояния таблицы расстояний
Очевидно, что расстояния между соседями должны быть известны заранее — это собственно и есть задаваемая метрика. И такие переговоры нужно повторять до полного удовлетворения. Вот, собственно, и весь алгоритм Беллмана-Форда.
Существует математически строгое доказательство того, что этот алгоритм порождает сходящуюся последовательность векторов расстояний, причём, эта последовательность сходится к нужному вектору состояний для каждого маршрутизатора. Да, естественно, доказательство основано на условиях теоремы, рассматривающей только случай стационарной сети, т.е. сети, в которой топология постоянна во времени: линии не рвутся, маршрутизаторы не ломаются и т.д.
Предполагается, что участники этого процесса не перестают рассылать сообщения, и сами сообщения не вязнут навечно в недрах сети. При этом почти не делается никаких предположений о том, в каком порядке рассылаются сообщения с векторами расстояний, и в какие моменты времени может происходить изменение векторов расстояний. Как вы сами видите, условия теоремы содержат очень слабые требования.
Отсутствие ограничений на моменты рассылки сообщений позволяет всем маршрутизаторам работать асинхронно, по своим собственным часам.
Отсутствие ограничений на начальные состояния векторов расстояний, кроме лишь того, что все расстояния должны быть неотрицательными, означает, что если топология сети изменяется, то процесс всё равно будет продолжать сходиться, но, скорее всего, уже к новому вектору расстояний. Действительно, при изменении топологии сети мы можем просто забыть, всё что прежде было, и считать, что мы начинаем всё сначала.
Итак, процесс сходится за конечное время при отсутствии изменений в топологии сети. Если изменения случаются, то процесс будет постоянно сходиться, но сама равновесная точка будет скакать под действием этих изменений топологии. При этом ебудетсли изменения топологии сети достаточно редки, то процесс будет успевать сходиться, и хоть какое-то время будет осуществляться корректная маршрутизация, а если изменения топологии будут слишком часты, то алгоритм утратит дееспособность и маршрутизация совсем разладится.
Однако, исходный алгоритм Беллмана-Форда не предусматривает случая, когда некая сеть или её маршрутизатор становятся совсем недоступны, так как это фактически равносильно тому, что этот маршрутизатор перестаёт рассылать сообщения. В таком случае, теорема о сходимости неприменима, а процесс, совершенно очевидно, никогда не сойдётся.
Поэтому RIP развивает алгоритм Беллмана-Форда, обвешивая его разными хитростями. Покажем, как постепенно приходится навешивать парочку таких уловок.
Для случаев обрыва линий RIP должен иметь механизм диагностики обрыва. Диагностика выполняется просто: если сеть не отвечает соседу слишком долго, считается, что линия связи оборвана. Этой линии присваивается метрика, называемая "бесконечностью". В действительности, это просто число, которое реальной метрикой быть не может, будем пока считать, что оно является только признаком этой "бесконечности" и никаким иным целям не служит. "Бесконечность" при сложении с любым числом даёт опять "бесконечность". И "бесконечность" больше любого другого числа.
Теперь самостоятельно составьте таблицы расстояний для каждого маршрутизатора для приведённого примера сети, соответствующих стационарному состоянию системы сетей, убедитесь, что они порождают корректные таблицы маршрутизации.
Что будет со сходимостью, например, в случае обрыва линии B-D. Промоделируйте, что будет твориться в сети теперь. Особенно внимательно следите за тем, что будет происходить с маршрутизацией сообщений от А к Т и от С к Т. Видите? До А и С быстро дошло, что путь к Т через В теперь закрыт. А продолжает считать, что путь к Т по-прежнему открыт через С, а С считает, что путь к Т открыт через А. Это может длится довольно долго, очевидно, тем дольше, чем больше "длина" линии C-D.
Для борьбы с такими зацикливаниями было решено использовать пресловутую "бесконечность". Её сделали обычным конечным числом, но оставили правило, гласящее, что сумма "бесконечности" и любого числа есть "бесконечность". При такой трактовке "бесконечности" вышеописанное кивание А и С друг на друга, очевидно, будет продолжаться до тех пор, пока они постепенно не доведут длину путей к Т, проложенных друг через друга до "бесконечности"+1. Уловка сработала, но для её практического использования следует придумать, каким числом должна быть "бесконечность". Очевидно, что с одной стороны, это число должно быть достаточно большим, чтобы никакой реальный путь не мог иметь такую большую длину. Однако, с другой стороны, это число должно быть как можно меньше, чтобы вышеописанный процесс "счёта до бесконечности" продолжался как можно меньшее время. Сначала в качестве компромиса было выбрано 15. Позже, с ростом Internet "бесконечность" довели до 30. Очевидно, что эта самая "бесконечность" ограничивает сверху возможную длину пути, что может быть нежелательно в больших сетях.
Существует множество других уловок, придуманных для избавления от "счёта до бесконечности", но все они носят частный характер, и только "бесконечность" по-прежнему остаётся надёжной гарантией от зацикливаний в общем случае.
На этом мы кончим наш рассказ о RIP. Более подробно о RIP вы можете прочитать в RFC 1058, 1721-1724.