
- •Семенов ю.А. (гнц итэф) Общие принципы построения сетей Оглавление
- •Распределения визитов сайта book.Itep.Ru по регионам за месяц (данные Rambler)
- •1 Введение (общие принципы построения сетей) Семенов ю.А. (гнц итэф)
- •2 Преобразование, кодировка и передача информации Семенов ю.А. (гнц итэф)
- •2.1 Передача сигналов по линиям связи Семенов ю.А. (гнц итэф)
- •2.2 Представление электрических сигналов в цифровой форме Семенов ю.А. (гнц итэф)
- •2.3 Цифровые каналы t1 и е1 Семенов ю.А. (гнц итэф)
- •2.4 Методы преобразования и передачи звуковых сигналов Семенов ю.А. (гнц итэф)
- •2.4.1 Дельта-модуляция Семенов ю.А. (гнц итэф)
- •2.4.2 Кодировщики голоса (Vocoder) Семенов ю.А. (гнц итэф)
- •2.4.3 Передача голоса по каналам Интернет Семенов ю.А. (гнц итэф)
- •2.5 Методы преобразования и передачи изображения Семенов ю.А. (гнц итэф)
- •Стандарт mpeg-1 и -2
- •Часть 1 mpeg-2 относится к объединению одного или более элементарных аудио или видео потоков, а также прочих данных в один или несколько потоков, удобных для записи или передачи.
- •Интерактивное телевидение
- •2.5.1 Стандарт mpeg-4 Семенов ю.А. (гнц итэф)
- •1. Особенности стандарта mpeg-4
- •1.1. Кодированное представление медийных объектов
- •1.2. Состав медийных объектов
- •1.3. Описание и синхронизация потоков данных для медийных объектов
- •1.4. Доставка потоков данных
- •1.5. Взаимодействие с медийными объектами
- •1.6. Менеджмент и идентификация интеллектуальной собственности
- •2. Основные функции в mpeg-4 версия 1
- •2.2. Системы
- •2.3. Аудио-система
- •2.4. Видео-система
- •2.4.1. Поддерживаемые форматы
- •2.4.2. Эффективность сжатия
- •2.4.3. Функции, зависящие от содержимого (Content-Based)
- •2.4.4. Масштабируемость текстур изображений и видео
- •2.4.5. Кодирование формы и Alpha-представление
- •2.4.6. Надежность в средах, подверженных ошибкам
- •2.4.7. Анимация лица
- •3.2.2. Анимация тела
- •3.2.3. Кодирование 3-d полигональных сеток
- •3.3. Звук
- •4. Расширения mpeg-4 за пределы версии 2
- •4.1. Визуальная область системы
- •4.2. Системы
- •4.2.2. Текстуальный формат
- •4.2.3. Улучшенная модель синхронизации
- •5. Профайлы в mpeg-4
- •5.1. Визуальные профайлы
- •5.2. Аудио профайлы
- •5.3. Профайлы графики
- •5.4. Графические профайлы сцены
- •5.5. Профайлы mpeg-j
- •5.6. Профайл дескриптора объекта
- •6. Верификационное тестирование: проверка работы mpeg
- •6.1. Видео
- •6.1.1. Тесты эффективности кодирования 6.1.1.1. Низкие и средние скорости передачи бит (версия 1)
- •6.1.1.2. Кодирование, базирующееся на содержимом (версия 1)
- •6.1.1.3. Профайл продвинутой эффективности кодирования ace (Advanced Coding Efficiency) (версия 2)
- •6.1.2. Тесты устойчивости к ошибкам 6.1.2.1. Простой профайл (версия 1)
- •6.1.2.2. Простой продвинутый профайл реального времени arts (Advanced Real-Time Simple) (версия 2)
- •6.1.3. Тестирование стабильности временного разрешения 6.1.3.1. Простой продвинутый профайл реального времени arts (Advanced Real-Time Simple) (версия 2)
- •6.1.4. Проверки масштабируемости 6.1.4.1. Простой масштабируемый профайл (версия 1)
- •6.1.4.2. Центральный профайл (core profile версия 1)
- •6.2. Звук
- •7. Промышленный форум mpeg-4
- •8. Детальное техническое описание mpeg-4 dmif и систем
- •8.1.1. Вычислительная модель dmif
- •8.2. Демультиплексирование, синхронизация и описание потоков данных
- •8.2.1. Демультиплексирование
- •8.2.2. Синхронизация и описание элементарных потоков
- •8.2.3. Управление буфером
- •8.2.4. Идентификация времени
- •8.3. Улучшенная модель синхронизации (FlexTime)
- •8.3.1. Гибкая длительность
- •8.3.2. Относительное время начала и конца
- •8.3.3. Поддержка FlexTime в mpeg-4
- •8.3.3.1. Узел TemporalTransform
- •8.3.3.2. Узел TemporalGroup
- •8.3.3.3. Дескриптор сегмента (SegmentDescriptor)
- •8.3.4. Модель исполнения
- •8.4. Описание синтаксиса
- •8.5. Двоичный формат описания сцены bifs (Binary Format for Scene description)
- •8.5.1. Продвинутый формат bifs
- •8.6. Взаимодействие с пользователем
- •8.7. Ipr идентификация и защита
- •8.8. Информация содержимого объекта
- •8.9. Формат файлов mpeg-4
- •9. Детальное техническое описание визуальной секции mpeg-4
- •9.1. Приложения видео-стандарта mpeg-4
- •9.2. Натуральные текстуры, изображения и видео
- •9.3. Синтетические объекты
- •9.4. Масштабируемое кодирование видео-объектов
- •9.5. Устойчивость в среде, предрасположенной к ошибкам
- •9.6. Улучшенная стабильность временного разрешения с низкой задержкой буферизации
- •9.7. Кодирование текстур и статические изображения
- •9.8. Кодирование нескольких видов и большого числа вспомогательных компонентов
- •9.8.1. Анимация лица
- •9.8.2. Анимация тела
- •9.8.3. Анимируемые 2-d сетки
- •9.8.5. Масштабируемость, зависящая от изображения
- •9.9. Структура средств для представления натурального видео
- •9.10. Поддержка обычной функциональности и зависящей от содержимого
- •9.11. Видео изображение mpeg-4 и схема кодирования
- •9.11.1. Эффективность кодирования в V.2
- •9.12. Кодирование текстур в статических изображениях
- •9.13. Масштабируемое кодирование видео-объектов
- •9.14. Устойчивость в среде, предрасположенной к ошибкам
- •9.14.1. Ресинхронизация
- •9.14.2. Восстановление данных
- •9.14.3. Сокрытие ошибок
- •10. Подробное техническое описание mpeg-4 аудио
- •10.1. Натуральный звук
- •10.2. Улучшения mpeg-4 аудио V.2
- •10.2.1. Устойчивость к ошибкам
- •10.2.2. Аудио-кодирование с малыми задержками
- •10.2.3. Масштабируемость гранулярности
- •10.2.4. Параметрическое кодирование звука
- •10.2.5. Сжатие тишины celp
- •10.2.6. Устойчивое к ошибкам hvxc
- •10.2.7. Пространственные характеристики среды
- •10.2.8. Обратный канал
- •10.2.9. Транспортный поток звука
- •10.3. Синтетический звук
- •10.3.1. Синтез с множественным управлением (Score Driven Synthesis).
- •11. Приложение. Словарь и сокращения
- •2.5.2 Стандарт mpeg-7 Семенов ю.А. (гнц итэф)
- •1. Введение
- •1.1. Контекст mpeg-7
- •1.2. Цель mpeg-7
- •1.3. Область действия стандарта
- •1.4. Область применения mpeg-7
- •1.5. План и метод работы
- •1.6. Части mpeg-7
- •1.7. Структура документа
- •2. Главные функции mpeg-7 2.1. Системы mpeg-7
- •2.2. Язык описания определений mpeg-7
- •2.3. Аудио mpeg-7
- •2.4. Визуальный mpeg-7
- •2.5. Основные объекты и схемы описания мультимедиа mpeg-7
- •2.6. Эталонные программы mpeg-7: модель экспериментов (eXperimentation Model)
- •3. Детальное техническое описание стандарта mpeg-7 3.1. Системы mpeg-7
- •3.1.1. Архитектура терминала
- •3.1.2. Нормативные интерфейсы 3.1.2.1. Описание нормативных интерфейсов
- •3.1.2.2. Верификация стандарта
- •3.2. Язык описания определений mpeg-7 (ddl)
- •3.2.1. Разработка контекста
- •3.2.2. Обзор схемы xml
- •3.2.3. Схема xml: Структуры
- •3.2.4. Схема xml: Типы данных
- •3.2.5. Расширения схемы xml mpeg-7
- •3.3. Аудио mpeg-7
- •3.3.1. Описание системы аудио mpeg-7
- •3.3.2. Средства описания аудио верхнего уровня (d и ds)
- •3.3.2.1. Средства описания тембра музыкальных инструментов
- •3.3.2.2. Средства распознавания звука
- •3.3.2.3. Средства описания содержимого сказанного
- •3.3.2.4. Средства описания мелодии
- •3.4.1.3. Временные ряды
- •3.4.1.4. Пространственные координаты 2d
- •3.4.1.5. Временная интерполяция
- •3.4.2. Описатели цвета
- •3.4.2.1. Цветовое пространство
- •3.4.2.2. Оцифровка цвета
- •3.4.2.3. Доминантный цвет(а)
- •3.4.2.4. Масштабируемый цвет
- •3.4.2.5. Описатель структуры цвета
- •3.4.2.6. Выкладка цвета
- •3.4.2.7. Цвет GoF/GoP
- •3.4.3. Описатели текстуры
- •3.4.3.1. Описатели однородной текстуры
- •3.4.3.2. Просмотр текстуры
- •3.4.3.3. Краевая гистограмма
- •3.4.4. Описатели формы
- •3.4.4.1. Форма, базирующаяся на областях (Region-Based)
- •3.4.4.2. Форма, основанная на контуре
- •3.4.5. Дескрипторы перемещения
- •3.4.5.1. Движение камеры
- •3.4.5.2. Траектория движения
- •3.4.5.3. Параметрическое движение
- •3.4.5.4. Двигательная активность
- •3.4.6. Локализация 3.4.6.1. Локатор области
- •3.4.6.2. Пространственно-временной локатор
- •3.4.7. Прочие 3.4.7.1. Распознавание лица
- •3.5. Схемы описания мультимедиа mpeg-7
- •3.5.1. Средства организации mds
- •3.5.1.1. Базовые элементы
- •3.5.1.2. Управление содержимым
- •3.5.1.3. Описание содержимого
- •3.5.1.4. Навигация и доступ
- •3.5.1.5. Организация содержимого
- •3.5.1.6. Интеракция с пользователем
- •3.5.2. Управление содержимым
- •3.5.2.1. Средства описания среды
- •3.5.2.2. Создание и производство средств описания
- •3.5.2.3. Средства описания использования содержимого
- •3.5.3. Описание содержимого 3.5.3.1. Описание структурных аспектов содержимого
- •3.5.3.2. Описание концептуальных аспектов содержимого
- •3.5.4. Навигация и доступ
- •3.5.4.1. Резюме
- •3.5.4.2. Разделы и декомпозиции
- •3.5.4.3. Вариации содержимого
- •3.5.5. Организация содержимого
- •3.5.5.1. Собрания (Collections)
- •3.5.5.2. Модели
- •3.5.6. Взаимодействие с пользователями
- •3.6. Эталонные программы: экспериментальная модель
- •3.6.1. Цели
- •3.6.2. Извлечение и приложения клиента
- •3.6.3. Модульность xm-программ
- •3.6.4. Модули приложения 3.6.4.1. Медийные декодеры
- •3.6.4.2. Мультимедийные данные
- •3.6.4.3. Средства выборки
- •3.6.4.4. Класс дескрипторов
- •3.6.4.5. Схема кодирования
- •3.6.4.6. Средство поиска
- •3.6.5. Типы приложений в xm-программах 3.6.5.1. Извлечение из среды
- •3.6.5.2. Приложение поиска и извлечения
- •3.6.5.3. Приложение транскодирования среды
- •3.6.5.4. Приложение описания фильтрации
- •3.6.6. Модель ключевого приложения mpeg-7 3.6.6.1. Определение ключевых приложений
- •3.6.6.2. Модель интерфейса
- •3.6.7. Ключевые приложения против приложений реального мира
- •Приложение а. Словарь и сокращения
- •2.5.3 Архитектура мультимедиа mpeg-21 Семенов ю.А. (гнц итэф)
- •Обзор цифровых объектов
- •Декларация цифрового объекта
- •Контейнер
- •Компонент
- •Идентификация цифрового объекта
- •Идентификация цифровых объектов
- •Идентификация различных схем описания
- •Идентификация различных типов цифровых объектов
- •Защита и управление правами интеллектуальной собственности (ipmp)
- •Язык описания прав
- •Модель данных mpeg rel
- •Принципал
- •Условие
- •Соотношение с терминологией mpeg
- •Адаптация цифрового объекта
- •Формат файлов
- •Устойчивая ассоциация идентификации и описания с цифровыми объектами
- •2.6 Методы сжатия информации Семенов ю.А. (гнц итэф)
- •2.6.1 Алгоритм Зива-Лемпеля Семенов ю.А. (гнц итэф)
- •2.6.2 Локально адаптивный алгоритм сжатия Семенов ю.А. (гнц итэф)
- •2.6.3 Сжатие данных с использованием преобразования Барроуза-Вилера Семенов ю.А. (гнц итэф)
- •2.6.4 Метод Шеннона-Фано Семенов ю.А. (гнц итэф)
- •2.6.5 Статический алгоритм Хафмана Семенов ю.А. (гнц итэф)
- •2.7 Обнаружение ошибок Семенов ю.А. (гнц итэф)
- •2.8 Коррекция ошибок Семенов ю.А. (гнц итэф)
- •Циклические коды
- •Линейные блочные коды
- •Метод коррекции ошибок fec (Forward Error Correction)
- •Введение в коды Рида-Соломона: принципы, архитектура и реализация
- •Свойства кодов Рида-Соломона
- •Ошибки в символах
- •Декодирование
- •Преимущество кодирования
- •Архитектура кодирования и декодирования кодов Рида-Соломона
- •Арифметика конечного поля Галуа
- •Образующий полином
- •Архитектура кодировщика
- •Архитектура декодера
- •Вычисление синдрома
- •Нахождение позиций символьных ошибок
- •Нахождение значений символьных ошибок
- •Реализация кодировщика и декодера Рида-Соломона Аппаратная реализация
- •Программная реализация
- •2.9 Видеоконференции по каналам Интернет и isdn Семенов ю.А. (гнц итэф)
- •2.9.1 Используемые стандарты Семенов ю.А. (гнц итэф)
- •2.10 Статистическая теория каналов связи Семенов ю.А. (гнц итэф)
- •2.10.2. Канал связи с изменяющимися состояниями
- •2.10.3. Симметричный канал без памяти
- •3 Каналы передачи данных Семенов ю.А. (гнц итэф)
- •3.1 Кабельные каналы связи Семенов ю.А. (гнц итэф)
- •3.2 Оптоволоконные каналы и беспроводные оптические связи Семенов ю.А. (гнц итэф)
- •Беспроводные оптические каналы
- •3.3 Беспроводные (радио) каналы и сети Семенов ю.А. (гнц итэф)
- •3.4 Протокол slip и rs-интерфейсы Семенов ю.А. (гнц итэф)
- •3.4.1. Протоколы rs
- •3.4.1 Интерфейсная шина FireWire (ieee1394) Семенов ю.А. (гнц итэф)
- •Особенности ieee - 1394
- •Архитектура ieee-1394
- •.5 Протокол ppp Семенов ю.А. (гнц итэф)
- •3.6 Протокол g.703 Семенов ю.А. (гнц итэф)
- •3.7 Дерево Штайнера Семенов ю.А. (гнц итэф)
- •4 Сети передачи данных. Методы доступа Семенов ю.А. (гнц итэф)
- •Топология
- •Метод доступа к сети
- •Принципы построения сетевых программных интерфейсов
- •Очереди fifo
- •Приоритетное обслуживание очередей (pq)
- •Обычное обслуживание очередей (сq)
- •Справедливые очереди (wfq)
- •Справедливые очереди базирующиеся на классах (cbwfq)
- •Очереди с малой задержкой (llq)
- •Методы работы в условиях перегрузки
- •Алгоритм leaky bucket ("дырявое ведро")
- •Алгоритм Token Bucket ("маркерное ведро")
- •4.1 Локальные сети (обзор) Семенов ю.А. (гнц итэф)
- •Семенов ю.А. (гнц итэф)
- •4.1.1.1 Архитектура сетей Ethernet Семенов ю.А. (гнц итэф)
- •Семенов ю.А. (гнц итэф)
- •Гигабитный Ethernet (ge)
- •40 Гигабит/сек технологии
- •4.1.1.3 Интернет в Ethernet Семенов ю.А. (гнц итэф)
- •4.1.1.4 Повторители, мосты, мультиплексоры, переключатели и маршрутизаторы Семенов ю.А. (гнц итэф)
- •4.1.1.5 Алгоритмы и применения сетей p2p Семенов ю.А. (гнц итэф)
- •Определения:
- •Р2р файлообменные сети
- •P2p телевидение
- •Проблемы безопасности
- •Семенов ю.А. (гнц итэф)
- •4.1.3 Ieee 802.4 (Маркерная шина) Семенов ю.А. (гнц итэф)
- •4.1.4 Сети управления и сбора данных в реальном масштабе времени (can) Семенов ю.А. (гнц итэф)
- •4.1.5 Локальные сети ArcNet Семенов ю.А. (гнц итэф)
- •4.1.6 Сети fddi Семенов ю.А. (гнц итэф)
- •4.1.7 Параллельный сетевой интерфейс hippi Семенов ю.А. (гнц итэф)
- •4.1.8 Сети ieee 802.11 Семенов ю.А. (гнц итэф)
- •Безопасность в режиме pre-shared key
- •4.1.8.1 Мобильные телекоммуникации Семенов ю.А. (гнц итэф)
- •4.1.8.2 Стандарт широкополосной беспроводной связи ieee 802.16 Семенов ю.А. (гнц итэф)
- •1. Краткие характеристики стандарта 802.16
- •2. Сообщения управления мас
- •3. Сообщение дескриптора нисходящего канала (dcd)
- •Идентификатор нисходящего канала
- •4. Сообщение привязки нисходящего канала (dl-map)
- •6. Сообщение привязки восходящего канала(ul-map)
- •7. Сообщение запроса диапазона (rng-req)
- •Идентификатор нисходящего канала
- •Ожидание до завершения
- •8. Сообщение отклика на запрос диапазона (rng-rsp)
- •9. Сообщение запроса регистрации (reg-req)
- •10. Сообщение отклика регистрации reg-rsp
- •Возможности ss
- •11. Сообщения управления ключами конфиденциальности (pkm-req/pkm-rsp)
- •Атрибуты
- •12. Сообщение добавления ассоциации безопасности (sa Add)
- •13. Сообщение запроса авторизации (Auth Request)
- •14. Сообщение отклика авторизации (Auth Reply)
- •15. Сообщение отклонения авторизации (Auth Reject)
- •16. Сообщение запроса ключа
- •17. Сообщение отклика на запрос ключа
- •18. Сообщение отклонение ключа
- •19. Сообщение недействительности авторизации
- •20. Сообщение tek Invalid
- •21. Информационное сообщение аутентификации (Authent Info)
- •22. Сообщение запроса динамического добавления сервиса dsa-req)
- •Id транзакции
- •Id транзакции
- •Последовательность hmac
- •26. Dsa, инициированное ss
- •27. Dsa, инициированное bs
- •28. Сообщение подтверждения для динамического добавления сервиса (dsa-ack)
- •Id транзакции
- •29. Сообщение запроса dsc-req
- •30. Сообщение отклика динамического изменения сервиса (dsc-rsp)
- •Параметры сервисного потока
- •31. Сообщение подтверждения для динамического изменения сервиса (dsc-ack)
- •32. Сообщение запроса динамического аннулирования сервиса (dsd-req)
- •Id сервисного потока
- •33. Сообщение отклика на запрос динамического аннулирования сервиса (dsd-rsp)
- •Id сервисного потока
- •34. Сообщение запроса включения/удаления из списка мультикастного запроса (mca-req)
- •35. Сообщение отклика на запрос включения/удаления из списка мультикастного запроса (mca-rsp)
- •36. Сообщение запроса изменения профайла нисходящего канала (dbpc-req)
- •37. Сообщение отклика на изменение профайла нисходящего канала (dbpc-rsp)
- •38. Сообщение команды сброса (res-cmd)
- •39. Сообщение запроса базовых возможностей ss (sbc-req)
- •40. Сообщение отклика на запрос базовых возможностей (sbc-rsp)
- •41. Сообщение сверки часов (clk-cmp)
- •Порядковый номер
- •Результат сверки часов
- •42. Сообщение команды De/Re (dreg-cmd)
- •43. Сообщение о получении dSx (dsx-rvd)
- •44. Сообщение завершения копирования посредством tftp конфигурационного файла (tftp-cplt)
- •45. Сообщение отклика на уведомление о завершении копирования конфигурационного файла (tftp-rsp)
- •Специфические расширения поставщика
- •46. Сообщение запроса ключа
- •47. Сообщение отмены arq
- •48. Сообщение сброса arq
- •49. Формат сообщения (req-req) запроса результата измерения для канала
- •50. Формат сообщения (rep-req) о результате измерения для канала
- •51. Формат сообщения конфигурирования сеточной (mesh) сети (msh-ncfg)
- •Xmt Holdoff Exponent (показатель)
- •Id узла bs
- •52. Сообщение входа в сеточную сеть (msh-nent)
- •Id узла инициатора
- •53. Сообщение распределенной сеточной диспетчеризации (msh-dsch)
- •Флаг координации
- •Флаг запрос/отклик
- •Следующий Xmt Mх соседа
- •Показатель Xmt Holdoff соседа
- •Id узла соседа
- •Информационный элемент диспетчеризации msh-dsch
- •55. Информационный элемент запроса msh-dsch
- •Id канала
- •56. Информационный элемент возможностей msh-dsch
- •57. Информационный элемент предоставления msh-dsch
- •58. Сообщение централизованной диспетчеризации сетки (msh-csch)
- •Порядковый номер конфигурации
- •59. Сообщение конфигурации централизованной маршрутизации сетки (msh-cscf)
- •60. Запрос/отклик обратной связи канала aas (aas-fbck-req/rsp)
- •Литература
- •Семенов ю.А. (гнц итэф)
- •Литература
- •4.1.9 Сети dqdb (двойная шина с распределенной очередью) Семенов ю.А. (гнц итэф)
- •4.1.10 Сети с многокаскадными соединениями Семенов ю.А. (гнц итэф)
- •4.1.11 Сети 100Base-vg Семенов ю.А. (гнц итэф)
- •4.1.12 Канальный протокол Fibre Channel Семенов ю.А. (гнц итэф)
- •4.1.14 Адаптивные, кольцевые, высокоскоростные сети ieee 802.17 Семенов ю.А. (гнц итэф) Обзор
- •4.2 Наложенные сети Семенов ю.А. (гнц итэф)
- •4.2.1 Протоколы Novell (ipx/spx) Семенов ю.А. (гнц итэф)
- •Семенов ю.А. (гнц итэф)
- •Семенов ю.А. (гнц итэф)
- •4.2.1.3 Протокол ядра NetWare (ncp) Семенов ю.А. (гнц итэф)
- •4.2.1.4 Протокол межсетевой передачи больших пакетов (lip) Семенов ю.А. (гнц итэф)
- •4.2.1.5 Служба каталогов NetWare (nds) Семенов ю.А. (гнц итэф)
- •Семенов ю.А. (гнц итэф)
- •Семенов ю.А. (гнц итэф)
- •Протокол wins
- •4.3 Региональные сети Семенов ю.А. (гнц итэф)
- •4.3.1 Эталонная сетевая модель iso Семенов ю.А. (гнц итэф)
- •4.3.2 Протоколы сетей X.25 Семенов ю.А. (гнц итэф)
- •4.3.3 Интегрированные сети isdn Семенов ю.А. (гнц итэф)
- •4.3.4 Протокол Frame Relay Семенов ю.А. (гнц итэф)
- •4.3.5 Протоколы сетей atm Семенов ю.А. (гнц итэф)
- •4.3.6 Синхронные каналы sdh/sonet Семенов ю.А. (гнц итэф)
- •4.3.7 Модемы Семенов ю.А. (гнц итэф)
- •4.4 Интернет Семенов ю.А. (гнц итэф)
- •4.4 Интернет Семенов ю.А. (гнц итэф)
.5 Протокол ppp Семенов ю.А. (гнц итэф)
Протокол PPP (Point-to-Point Protocol; RFC-2716, -2701, -2688, -2687, -2686, -2615, -2516, -2509, -2508, -2507, -2484, -2472, -2433, -2420, -2419, -2364, -2363, -2290, -2284, -2153, -2125, -2097, -2043, -1994, -1993, -1990, -1989, -1979, -1978, -1977, -1976, -1975, -1974, -1973, -1969, -1968, -1967, -1963, -1962, -1915, -1877, -1841, -1764, -1763, -1762, -1663, -1662, -1661, -1638, -1619, -1618, -1598, -1570, -1552, -1378, -1377, -1334, -1332, -1331, и STD-51, cмотри также www.spitbrook.destek.com:81/pptp.txt) предназначен для решения тех же задач, что и SLIP, но лишен многих его недостатков, он служит для передачи мультипротокольных дейтограмм от одного узла к другому. Сам по себе список RFC, приведенный выше, впечатляющ. Он говорит о том, что данный протокол относится к числу наиболее важных и широко используемых. Это и понятно, большинство региональных сетей строится с использованием соединений точка-точка. PPP поддерживает, как асинхронный режим с 8 битами данных без бита четности (согласуется со свойствами последовательного интерфейса, имеющегося практически на всех ЭВМ), так и побитовый синхронный режим. Протокол содержит в себе три составные части:
Метод инкапсуляции дейтограмм при передаче по последовательным коммуникационным каналам.
Протокол LCP для установления, конфигурирования и тестирования информационных каналов
Набор протоколов NCP для установки и конфигурирования различных протоколов сетевого уровня.
Протокол управления каналом (LCP - Link Control Protocol) является частью PPP. Идеология NCP реализована и в протоколе TCP. Каждый кадр PPP начинается и завершается флагом 0x7E. За стартовым флагом-октетом следует байт адреса, который всегда равен 0xFF. Формат кадра PPP представлен на рисунке 3.5.1. Кадр ppp может содержать только целое число байт. При инкапсуляции других пакетов в PPP используется бит-ориентированный протокол HDLC (High-level Data Link Control).
Рис. 3.5.1 Формат кадра в протоколе PPP
Поле адрес всегда содержит байт 0xff (смотри также HDLC). Это указывает на то, что все станции должны принять этот кадр, и исключает необходимость выделения каких-то специальных адресов. Байт управления всегда равен 0x03, что указывает на ненумерованный тип кадра. По умолчанию кадры PPP передаются в режиме "без установления соединения". Если требуется надежная доставка, используется версия, описанная в RFC-1663. Двухоктетное поле протокол сходно по функции с полем тип в кадре Ethernet и определяет то, как следует интерпретировать информационное поле (см. табл. 3.5.1). Значение 0x0021 этого поля говорит о том, что последующее информационное поле содержит в себе IP-дейтограмму. Поле CRC (Cyclic Redundancy Check) представляет собой циклическую контрольную сумму, предназначенную для выявления ошибок при транспортировке PPP-кадра. Применение флагов-ограничителей кадра (0x7E) создает те же проблемы, о которых говорилось при описании SLIP-протокола, - эти байты не могут присутствовать в информационном поле. В синхронном режиме эта проблема решается на аппаратном уровне. При работе в асинхронном режиме для этого используется специальный ESC-символ, равный 0x7D. Когда этот esc-символ встречается в информационном поле, шестой бит в следующем за ним байте инвертируется. Так байт 0x7E будет преобразован в последовательность 0x7D, 0x5E, а байт 0x7D - в два байта 0x7D, 0x5D. Все символы с кодами меньше 0x20 также преобразуются в ESC-последовательности. Например, 0x07 будет преобразован в 0x7D, 0x27. Это необходимо делать, так как управляющие символы могут оказать непредсказуемые воздействия на режим работы драйверов или модемов, используемых в канале. Протокол ppp в отличие от SLIP допускает мультипротокольность и динамическое определение IP-адресов партнеров. Несмотря на определенные преимущества протокола PPP перед SLIP, последний распространен достаточно широко. Не трудно видеть, что все перечисленные физические среды используют последовательный формат передачи информации.
Таблица 3.5.1. Стандартизованные DLL-номера протоколов для PPP (поле протокол)
DLL-код протокола (шестнадцатеричный) |
Наименование протокола |
0001 |
Протокол заполнения (padding) |
0003-001F |
Зарезервировано |
0021 |
IP-протокол |
0023 |
Сетевой уровень OSI |
0025 |
Xerox NS IDP |
0027 |
Decnet фаза IV |
0029 |
Appletalk |
002B |
Novell IPX |
002D |
Компрессированный TCP/IP протокол Ван Джекобсона |
002F |
Не компрессированный TCP/IP протокол Ван Джекобсона |
0031 |
PDU мостов |
0033 |
Потоковый протокол (ST-II) |
0035 |
Banyan Vines |
0039 |
Appletalk EDDP |
003B |
Appletalk Smartbuffered |
003D |
Multi-link |
003F |
Кадры Netbios |
0041 |
Cisco Systems |
0043 |
Ascom Timeplex |
0047 |
Удаленная локальная сеть DCA |
0049 |
Транспортный протокол для последовательных данных (PPP-SDTP) |
004B |
SNA через 802.2 |
004D |
SNA |
004F |
Сжатие заголовков IPv6 |
007D |
Зарезервировано (Управл. ESC) [RFC1661] |
00FD |
1-ый вариант компрессии |
0201 |
Пакеты отклика 802.1d |
0203 |
IBM BPDU базовой маршрутизации |
8021 |
Управляющий протокол Интернет (IPCP) |
8023 |
Управляющий протокол сетевого уровня OSI |
8025 |
Управляющий протокол Xerox NS IDP |
8027 |
Управляющий протокол Decnet фаза VI |
8029 |
Управляющий протокол Appletalk |
802B |
Управляющий протокол Novell IPX |
8031 |
Бридж NCP |
8033 |
Потоковый управляющий протокол |
8035 |
Управляющий протокол Banyan Vines |
803D |
Многосвязный управляющий протокол |
803F |
Управляющий протокол кадров NetBIOS |
8041 |
Управляющий протокол Cisco |
8043 |
Ascom Timeplex |
8045 |
Управляющий протокол Fujitsu LBLB |
8047 |
Управляющий протокол удаленных локальных сетей DCA (RLNCP) |
8049 |
Управляющий протокол передачи последовательных данных (PPP-SDCP) |
|
Управляющий протокол для передачи sna поверх 802.2 |
804D |
Управляющий протокол SNA |
804F |
Управляющий протокол сжатия заголовков IPv6 |
80FD |
Управляющий протокол сжатия |
C021 |
Канальный управляющий протокол |
C023 |
Протокол аутентификации паролей |
C025 |
Сообщение о состоянии канала |
C081 |
Управляющий протокол для работы с контейнерами |
Значения кодов поля протокола от 0xxx до 3xxx идентифицируют протоколы сетевого уровня, а значения в интервале 8xxx - bxxx говорят о том, что протокол соответствует NCP (Network Control Protocol). Коды из диапазона 4xxx - 7xxx используются для протоколов с низким уровнем трафика, а коды от cxxx до exxx соответствуют управляющим протоколам (например, LCP).
Протокол PPP при установлении соединения предусматривает процедуру аутентификации, которая является опционной (смотри рис. 3.5.2.). После перехода на сетевой уровень вызывается NCP-протокол, который выполняет необходимую конфигурацию канала.
Рис. 3.5.2. Алгоритм установления соединения PPP
При обнаружении несущей или по инициативе клиента система может попытаться установить соединение. В случае успеха система переходит в фазу аутентификации. Если же и фаза аутентификации завершается благополучно, система выполняет подключение к сети (IP, IPX, Appletalk и т.д.), настройка сетевого уровня производится в рамках протокола NCP. Во всех остальных случаях производится возврат в исходное состояние. Процедура закрытия соединения осуществляется протоколом LCP.
В поле данных PPP-пакета может быть вложен один LCP-пакет, в этом случае в поле протокол должен быть записан код 0xC021 (Link Control Protocol). LCP-протокол служит для установления соединения путем обмена конфигурационными пакетами. По завершении этого обмена система переходит в фазу аутентификации (рис.3.5.2). Формат LCP-пакета показан на рис. 3.5.3.
Рис. 3.5.3. Формат заголовка LCP-пакета
Вслед за заголовком следует поле данных. Поле код (1 октет) идентифицирует модификацию LCP-пакета. Если получен пакет с неизвестным полем код, посылается пакет-отклик “отклонение кода”. Поле идентификатор (1 октет) служит для нахождения соответствия между запросами и откликами. Если получен пакет с неправильным идентификатором, он просто уничтожается. Двухоктетное поле длина определяет размер LCP-пакета, включая размер заголовка. Октеты принятого пакета за пределами, заданными полем длина игнорируются.
В качестве примера можно рассмотреть процедуру подключения персональной ЭВМ к серверу через модем. После того как модем маршрутизатора ответит на вызов модема-клиента и установит физическое соединение, ЭВМ посылает последовательность LCP-пакетов, вложенных в поля данных одного или нескольких PPP-кадров. Это позволяет выбрать необходимые параметры PPP. По завершении этой процедуры посылается последовательность NCP-пакетов, которые конфигурируют сетевой уровень. Вероятно, ЭВМ захочет работать со стеком протоколов TCP/IP, и по этой причине нуждается в IP-адресе. Если провайдер имеет N IP-адресов в резерве, он может подключить одновременно N ЭВМ. Присвоение IP-адреса осуществляется также в рамках NCP-протокола. После этого ЭВИ становится узлом Интернет. Завершение сессии и освобождение IP-адреса выполняется также через NCP-протокол. Разрыв соединения осуществляет протокол LCP.
За полем длина могут следовать поля опций. Опции определяются все сразу на фазе конфигурирования канала. Описание опции содержит однооктетные субполя типа и длины, за которыми следует поле данных. Значения субполя типа представлены в таблице.
Значение кода поля типа |
Назначение опции |
0 |
Зарезервировано |
1 |
Maximum-Receive-Unit (указывает максимальный размер блока данных, который может быть принят) |
3 |
Authentication-Protocol (протокол аутентификации) |
4 |
Quality-Protocol (протокол качества) |
5 |
Magic-Number (магическое число, опция служит для выявления каналов с петлями обратной связи) |
6 |
Protocol-Field-Compression |
7 |
Address-and-Control-Field-Compression |
Существует три класса LCP-пакетов:
Пакеты конфигурации канала, которые используются при формировании виртуального канала (Configure-Request, Configure-Ack, Configure-Nak и Configure-Reject) .
Пакеты закрытия канала (Terminate-Request и Terminate-Ack).
Пакеты поддержания, которые служат для управления и отладки(Code-Reject, Protocol-Reject, Echo-Request, Echo-Reply и Discard-Request).
Аналогом LCP является протокол IPCP (IP Control Protocol). В поле код протокола в этом случае записывается 8021 (RFC-1332). Формат пакета IPCP показан на рис. 3.5.4.
Рис. 3.5.4. Формат пакета IPCP. Младшие биты слева.
Поле тип содержит 2, в поле длина заносится число байт в пакете (≥4). В поле протокол сжатия IP заносится код алгоритма сжатия (0х02D - в случае алгоритма Ван Джекобсона). Поле данные может содержать нуль или более октетов. Конфигурационный запрос может потребовать присылки (присвоения) IP-адреса. Для решения этой задачи предусмотрена опция IPCP-пакета, где поле тип=3, длина=6, а последующие 4 байта выделены для IP-адреса, куда отправитель должен его записать. Если туда записаны нули, это говорит о том, что отправитель запрашивает свой IP-адрес.
Протоколы PPP, LCP (Link Control Protocol), CCP (Compression Control Protocol; RFC-1962, -1967), и некоторые другие управляющие протоколы содержат 8-битовые поля код. Значения этих кодов приведены в таблице 3.5.2.
Таблица 3.5.2 Значения поля код LCP-заголовка
Код |
Тип пакета |
|
1 |
Запрос конфигурации |
Configure-Request |
2 |
Подтверждение конфигурации |
Configure-Ack |
3 |
Не подтверждение конфигурации |
Configure-Nak |
4 |
Отклонение конфигурации |
Configure-Reject |
5 |
Запрос завершения |
Terminate-Request |
6 |
Подтверждение завершения |
Terminate-Ack |
7 |
Отклонение кода |
Code-Reject |
8* |
Отклонение протокола |
Protocol-Reject |
9* |
Запрос отклика |
Echo-Request |
10* |
Эхо-отклик |
Echo-Reply |
11* |
Запрос отмены |
Discard-Request |
12* |
Идентификация |
|
13* |
Остающееся время |
|
14** |
Запрос сброса |
|
15** |
Отклик на запрос сброса |
|
*) Только LCP; |
**) Только CCP |
|
Для случая запроса Discard-Request между полями длина и данные помещается 4-байтовое поле Magic-Number (магическое число).
Протокол PPP многолик, он способен поддерживать и многоканальные соединения (RFC-1990). Это бывает полезно при работе через ISDN, X.25, Frame Relay или при необходимости расширить пропускную способность за счет подключения нескольких параллельных каналов (MP - MultiLink Protocol). Так как я не сталкивался со случаями, когда пропускной способности было вполне достаточно, данную модификацию PPP-протокола следует считать крайне важной. При этом одной из проблем является распределение пакетов по каналам и последующее их упорядочение принимающей стороной. Особую осторожность в этом случае следует соблюдать при использовании заполнителей. В этом режиме по виртуальному каналу MultiLink запрещается посылать конфигурационные LCP-пакеты Configure-Request, -Reject, -Ack, -Nak, Terminate-Request или -Ack. Принимающая сторона в случае их обнаружения должна их игнорировать. Применение других LCP-пакетов допускается (например, Code-Reject, Protocol-Reject, Echo-Request, Echo-Reply и Discard-Request).
Формат MP-пакета представлен на рис. 3.5.5.
Рис. 3.5.5. Формат MР-пакета
Поля PID - идентификатор протокола. Субполе B (Beginning) - бит фрагмента =1 для первого фрагмента PPP и =0 для всех последующих фрагментов. Субполе E (Ending) - бит фрагмента =1 для последнего фрагмента PPP и =0 для всех прочих фрагментов. Поле номер по порядку имеет длину 24 бита. Существует модификация пакета с укороченным кодом (12 бит) номера по порядку. При этом к этому полю отходят 4 нулевые бита после BE00. Выбор длины этого поля осуществляется протоколом LCP. Значение поля увеличивается на 1 при посылке очередного фрагмента. Для вышерасположенных уровней совокупность совместно используемых каналов выглядит, как один виртуальный канал.
При передаче пакетов по каналу Multilink инкапсуляция производится согласно следующим правилам, которые задаются вручную:
Никакого асинхронного управления кодированием символов
Запрет использования магических чисел
Запрещено мониторирование качества канала
Сжатие полей адреса, протокола и управления
Никаких составных кадров
Запрет заполнения с самоописанием (Self-Describing-Padding)
Для предварительно фрагментированных пакетов запрещено дополнение нулями или использование каких-либо иных заполнителей. Рассмотрим пример Multilink-соединения, приведенный на рис. 3.5.6. Канал 1 между двумя системами согласуется сетевыми уровнями NL1, NL2 и MP. Затем эти две системы согласуют с MP канал 2. Кадры, полученные каналом 1, демультиплексируются на канальном уровне согласно сетевому протокольному идентификатору PPP и могут быть посланы NL1, NL2 или MP. Канал 2 примет кадры со всеми сетевыми протокольными идентификаторами, с которыми принимает их канал 1. Кадры, полученные MP, позднее демультиплексируются на сетевом уровне согласно протокольному идентификатору PPP и посылаются NL1 или NL2. Любые кадры, полученные MP для других протоколов сетевого уровня, отбрасываются с помощью стандартного протокольного механизма (Reject).
Рис. 3.5.6. Пример Multilink-конфигурации
Так как межсетевые связи часто используют последовательные каналы (выделенные линии, радиомодемы и пр.), протокол PPP распространен достаточно широко. Протокол PPP служит и для создания межсетевых туннелей (протокол PPTP - Point to Point Tunneling Protocol). Протокол PPTP использует MTU=1532, номер порта 5678 и номер версии 0x0100, пакеты данных здесь транспортируются с использованием протокола инкапсуляции GRE V2 (см. сноску в начале раздела).