
- •2. Разработка мультимедийного курса
- •1. Содержание курса «администрирование информационнх систем»
- •1.1. Принципы построения открытых системы и «клиент-серверных» технологий. Модель iso/osi
- •1.1.1 Открытые системы и открытые спецификации
- •1.1.2 Технологии «клиент-сервер»
- •1.1.3 Модель iso/osi, функции протоколов каждого из уровней
- •1.2. Стек tcp/ip и его протоколы
- •1.2.1 Структура стека tcp/ip
- •1.2.2 Краткая характеристика протоколов
- •1.2.3 Надежность протоколов
- •1.2.4 Инкапсуляция
- •1.2.5 Протокол ip и его основные функции
- •1.2.6 Фрагментация
- •1.2.7 Формат заголовка пакета Ipv4
- •1.2.8 Протокол iPv6
- •1.2.9 Протокол icmp
- •1.2.10. Протокол udp
- •1.2.11 Протокол tcp и формат его заголовка
- •1.2.12 Окно передачи в tcp
- •1.3. Адресация в ip сетях
- •1.3.1 Адресация в ip-сетях
- •1.3.2 Типы адресов: физический (mac), сетевой (ip) и символьный (dns)
- •1.3.3 Соглашения о специальных адресах
- •1.3.4 Отображение физических адресов на ip-адреса: протоколы arp и rarp
- •1.4. Принципы работы dns
- •1.4.1 Отображение символьных адресов на ip-адреса: служба dns
- •1.4.2. Основные домены верхнего уровня
- •1.4.3 Система доменных имен bind
- •1.4.4 Автоматизация процесса назначения ip-адресов узлам сети - протокол dhcp
- •1.5. Принципы и основные протоколы маршрутизации в Интернет
- •1.5.1 Основные принципы ip-маршрутизации
- •1.5.2 Разбиения адресного пространства сети на подсети
- •1.5.3 Маскирование
- •1.5.4 Таблицы маршрутизации в ip-сетях
- •1.5.5 Фиксированная маршрутизация
- •1.5.6 Простая маршрутизация
- •1.5.7 Адаптивная маршрутизация
- •1.5.8. Дистанционно-векторный алгоритм маршрутизации (на примере rip)
- •1.5.9 Алгоритм состояния связей (на примере ospf)
- •1.5.10 Комбинирование различных протоколов обмена
- •1.5.11 Протоколы egp и bgp сети Internet
- •1.6. Протоколы прикладного уровня
- •1.6.1 Основные сервисы Интернет и соответствующие протоколы
- •1.6.2 Порты и сокеты
- •1.6.3 Http, ftp и др. Протоколы прикладного уровня
- •1.6.4 Mime, типы и расширения
- •1.6.5 Этапы транзакции http
- •1.6.6 Понятия uri, url
- •1.6.7 Схемы http-сеанса
- •1.6.8 Структура Запроса клиента
- •1.6.9 Структура ответа сервера
- •1.6.10 Cookie
- •1.7. Программирование в Интернет
- •1.7.1 Программирование в Интернет
- •1.7.2 Серверное и клиентское по
- •1.7.3 Программы, выполняющиеся на клиенте (JavaScript, Java-аплеты)
- •1.7.4 Программы, выполняющиеся на сервере
- •1.7.5 Спецификация cgi
- •1.7.6 Perl
- •1.7.7 Isapi
- •1.8. Администрирование в Unix и в Windows. Управление web-сервером.
- •1.8.1 Администрирование в Unix и в Windows
- •1.8.2 Управление web-сервером
- •1.8.3 Построение isp
- •1.8.4 Архитектура сервера Apache
- •1.8.5 Архитектура сервера Internet Information Server
- •1.9. Интернет-экономика. Модели назначения цен. Сетевая коммерция.
- •1.9.1. Экономика информационных сетей.
- •9.2. Интернет-экономика (иэ): основные понятия иэ
- •1.9.3. Составляющие расходов на предоставление услуг Интернет
- •1.9.4. Межсоединения и распределенная экономика: ip-транспорт; структура цены и экономика соглашений о межсоединениях; разделение распределенной стоимости
- •1.9.5. Модель назначения цен. Оценка потребления: тарифы и цены в иэ; методы оценивания стоимости коммуникаций
- •1.9.6. Категории электронного бизнеса
- •1.9.7. Сетевая коммерция: услуги общественного и частного потребления; электронные службы; электронные платежные системы
- •1.9.8. Экономическая эффективность сетей типа Интернет
- •1.10. Перспективы развития глобальных информационных систем
- •2. Разработка мультимедийного курса
1.2.10. Протокол udp
Протокол UDP является одним из двух основных протоколов транспортного уровня, расположенных непосредственно над IP. Он предоставляет прикладным процессам транспортные услуги, которые не многим отличаются от услуг, предоставляемых протоколом IP. Протокол UDP обеспечивает ненадежную доставку датаграмм и не поддерживает соединений из конца в конец. Другими словами, его пакеты могут быть потеряны, продублированы или прийти не в том порядке, в котором они были отправлены. К заголовку IP-пакета он добавляет два поля, одно из которых, поле "порт", обеспечивает мультиплексирование информации между разными прикладными процессами, а другое поле - "контрольная сумма" - позволяет поддерживать целостность данных. Примерами сетевых приложений, использующих UDP, являются NFS и SNMP.
Зарезервированные и доступные UDP-порты
В то время, как задачей сетевого уровня является передача данных между произвольными узлами сети, задача транспортного уровня заключается в передаче данных между любыми прикладными процессами, выполняющимися на любых узлах сети. Действительно, после того, как пакет средствами протокола IP доставлен в компьютер-получатель, данные необходимо направить конкретному процессу-получателю. Каждый компьютер может выполнять несколько процессов, более того, прикладной процесс тоже может иметь несколько точек входа, выступающих в качестве адреса назначения для пакетов данных.
Пакеты, поступающие на транспортный уровень, организуются операционной системой в виде множества очередей к точкам входа различных прикладных процессов. В терминологии TCP/IP такие системные очереди называются портами. Прикладной процесс, предоставляющий некоторые услуги другим прикладным процессам (сервер), ожидает поступления сообщений в порт, специально выделенный для этих услуг. Сообщения отправляются процессами-клиентами и должны содержать запросы на предоставление услуг. Порты нумеруются, начиная с нуля. Например, сервер SNMP всегда ожидает поступлений сообщений в порт 161. Если клиент SNMP желает получить услугу, он посылает запрос в UDP-порт 161 на машину, где работает сервер. В каждом узле может быть только один сервер SNMP, так как существует только один UDP-порт 161. Данный номер порта является общеизвестным, то есть фиксированным номером, официально выделенным для услуг SNMP. Таким образом, адресом назначения, который используется на транспортном уровне, является идентификатор (номер) порта прикладного сервиса. Номер порта, задаваемый транспортным уровнем, в совокупности с номером сети и номером компьютера, задаваемыми сетевым уровнем, однозначно определяют прикладной процесс в сети.
Назначение номеров портов прикладным процессам осуществляется либо централизовано, если эти процессы представляют собой популярные общедоступные сервисы, типа сервиса удаленного доступа к файлам TFTP (Trivial FTP) или сервиса удаленного управления telnet, либо локально для тех сервисов, которые еще не стали столь распространенными, чтобы за ними закреплять стандартные (зарезервированные) номера.
Централизованное присвоение сервисам номеров портов выполняется организацией Internet Assigned Numbers Authority. Эти номера затем закрепляются и опубликовываются в стандартах Internet. Например, упомянутому выше сервису удаленного доступа к файлам TFTP присвоен стандартный номер порта 69.
Локальное присвоение номера порта заключается в том, что разработчик некоторого приложения просто связывает с ним любой доступный, произвольно выбранный числовой идентификатор, обращая внимание на то, чтобы он не входил в число зарезервированных номеров портов. В дальнейшем все удаленные запросы к данному приложению от других приложений должны адресоваться с указанием назначенного ему номера порта.
Формат сообщений UDP
Единица данных протокола UDP называется UDP-пакетом или пользовательской дейтаграммой. UDP-пакет состоит из заголовка и поля данных, в котором размещается пакет прикладного уровня.
Заголовок имеет простой формат и состоит из четырех двухбайтовых полей:
- Поле source port - номер порта процесса-отправителя.
- Поле destination port - номер порта процесса-получателя.
- Поле message length - длина UDP-пакета в байтах.
- Поле checksum - контрольная сумма UDP-пакета.
Контрольное суммирование
Когда модуль UDP получает датаграмму от модуля IP, он проверяет контрольную сумму, содержащуюся в ее заголовке. Если контрольная сумма равна нулю, то отправитель датаграммы ее не подсчитывал, и, следовательно, ее нужно игнорировать. Если два модуля UDP взаимодействуют только через одну сеть Ethernet, то от контрольного суммирования можно отказаться, так как средства Ethernet обеспечивают достаточную степень надежности обнаружения ошибок передачи.
Если контрольная сумма правильная (или равна нулю), то проверяется порт назначения, указанный в заголовке датаграммы. Если к этому порту подключен прикладной процесс, то прикладное сообщение, содержащееся в датаграмме, становится в очередь для прочтения. В остальных случаях датаграмма отбрасывается. Если датаграммы поступают быстрее, чем их успевает обрабатывать прикладной процесс, то, при переполнении очереди сообщений, поступающие датаграммы отбрасываются модулем UDP.
Функциональная простота протокола UDP обуславливает простоту его алгоритма, компактность и высокое быстродействие. Поэтому те приложения, в которых реализован собственный, достаточно надежный, механизм обмена сообщениями, основанный на установлении соединения, предпочитают для непосредственной передачи данных по сети использовать менее надежные, но более быстрые средства транспортировки, в качестве которых по отношению к протоколу TCP и выступает протокол UDP. Протокол UDP может быть использован и в том случае, когда хорошее качество каналов связи обеспечивает достаточный уровень надежности и без применения дополнительных приемов типа установления логического соединения и квитирования передаваемых пакетов.