Сетевой протокол и видеонаблюдение
Содержание:
- Использование [ править ]
- Индивидуальные доказательства
- Свойства
- Ссылки [ править ]
- Клиенты
- Преимущества перед POP
- обзор
- Сервисы IP
- Какими бывают протоколы Интернета
- Порты
- Сетевые модели и протоколы
- Протоколы уровня 5 Session layer (Сеансовый уровень)
- Уровни сетей и модель OSI
- Протоколы уровня 3 Network layer (Сетевой уровень)
- О средствах настройки, проверки
- Версия 6
- История
- обзор
- Схема
- Другие модели данных [ править ]
- Совет по архитектуре интернета
- Как работает HTTP протокол сайта
Использование [ править ]
Сервер LDAP может возвращать ссылки на другие серверы для запросов, которые он не может выполнить сам. Для этого требуется структура именования для записей LDAP, чтобы можно было найти сервер, содержащий заданное отличительное имя (DN), концепцию, определенную в Справочнике X.500, а также используемую в LDAP. Другой способ найти серверы LDAP для организации — это запись DNS- сервера (SRV).
Организация с доменом example.org может использовать DN LDAP верхнего уровня (где dc означает компонент домена). Если сервер LDAP также называется ldap.example.org, URL-адрес LDAP верхнего уровня организации становится .
Как в X.500 , так и в LDAPv3 используются в основном два общих стиля именования. Они задокументированы в спецификациях ITU и RFC IETF. Исходная форма занимает верхний объект уровня в качестве объекта страны, таких как , . Модель компонентов предметной области использует модель, описанную выше. Пример именования на основе страны может быть , или в США: .
Индивидуальные доказательства
- ↑ М. Криспин: . Инженерная группа Интернета. Июль 1988. Проверено 5 февраля 2015 года.
- . Вашингтонский университет. 1996. Проверено 20 января 2012 года.
- М. Криспин: . Google. 8 февраля 2003 г. Проверено 8 мая 2011 г.
- . Вашингтонский университет. 1996. Проверено 20 января 2012 года.
- . Университет Карнеги Меллон. Проверено 8 мая 2011 года.
- П. Хайнлайн, П. Хартлебен: . Google. С. 107. Проверено 8 мая 2011 г.
- PB Koetter: . Linux New Media. Проверено 8 мая 2011 года.
- . В кн . : Образовательно-исследовательский информационный центр . Министерство образования США . Проверено 5 февраля 2015 года.
- Дж. Райс: . Инженерная группа Интернета. Февраль 1991. Проверено 5 февраля 2015 года.
- М. Криспин: . Инженерная группа Интернета. Август 1990. Проверено 5 февраля 2015 года.
- М. Криспин: . Инженерная группа Интернета. Декабрь 1994. Проверено 5 февраля 2015 года.
- М. Криспин: . Инженерная группа Интернета. Декабрь 1996 г. Проверено 5 февраля 2015 г.
- М. Криспин: . Инженерная группа Интернета. Декабрь 1996 г. Проверено 5 февраля 2015 г.
- М. Криспин: . Инженерная группа Интернета. March 2003. Проверено 5 февраля 2015 года.
- . Инженерная группа Интернета . Архивировано из 4 сентября 2011 Информация: архив ссылка автоматически вставляется и еще не была проверена. Проверьте исходную и архивную ссылку в соответствии с инструкциями, а затем удалите это уведомление. Проверено 31 июля 2011 года.
Свойства
IP объединяет сегменты сети в единую сеть, обеспечивая доставку пакетов данных между любыми узлами сети через произвольное число промежуточных узлов (маршрутизаторов). Он классифицируется как протокол сетевого уровня по сетевой модели OSI. IP не гарантирует надёжной доставки пакета до адресата — в частности, пакеты могут прийти не в том порядке, в котором были отправлены, продублироваться (приходят две копии одного пакета), оказаться повреждёнными (обычно повреждённые пакеты уничтожаются) или не прийти вовсе. Гарантию безошибочной доставки пакетов дают некоторые протоколы более высокого уровня — транспортного уровня сетевой модели OSI, — например, TCP, которые используют IP в качестве транспорта.
Фрагментация IP пакетов
При доставке IP пакета он проходит через разные каналы доставки. Возможно возникновение ситуации, когда размер пакета превысит возможности узла системы связи. В этом случае протокол предусматривает возможность дробления пакета на уровне IP в процессе доставки. Соответственно, к конечному получателю пакет придет в виде нескольких пакетов, которые необходимо собрать в один перед дальнейшим анализом. Возможность дробления пакета с последующей сборкой называется IP фрагментацией.
В протоколе предусмотрена возможность запрета фрагментации конкретного пакета. Если такой пакет нельзя передать через сегмент связи целиком, то он уничтожается, а отправителю направляется ICMP сообщение о проблеме.
Ссылки [ править ]
- . Oracle.com . Проверено 4 апреля 2014 .
- . OpenLDAP . Проверено 1 февраля +2016 .
- . Webopedia.com . Проверено 5 апреля 2014 .
- Серия X.500 — Рек. X.500 — X.521
- Хауза, Тим. . Проверено 26 декабря 2012 года .
- . Cyber Matters . 2013-04-09 . Проверено 5 октября 2014 года .
- . IANA . Проверено 7 мая 2014 .
- Цейленга, К. . DOI . RFC .
- Цейленга, К. . IETF . DOI . RFC .
Заметки править
- Рек. МСЭ-Т. X.680 , «Абстрактная синтаксическая нотация один (ASN.1) — Спецификация базовой нотации», 1994 г.
- Базовые правила кодирования (BER) — Рек. X.690, «Спецификация правил кодирования ASN.1: основные, канонические и особые правила кодирования», 1994 г.
- Механизмы SASL, зарегистрированные в IANA
Клиенты
IMAP теперь поддерживается почти всеми распространенными программами электронной почты . Однако уровень поддержки сильно различается. Многие клиенты поддерживают только базовые функции получения сообщений (чего достаточно для большинства пользователей). Лишь несколько программ используют весь набор функций, которые предлагают серверы IMAP. Это включает, например, назначение прав для разных пользователей на совместный доступ к папке.
Подборка клиентов с расширенной поддержкой IMAP:
- Альпийский / Сосна
- Антилоп гну
- Mulberry (почти полная поддержка)
- Microsoft Outlook (с версии 2007)
- эволюция
- Mozilla Thunderbird , SeaMonkey
Подбор клиентов с простой поддержкой IMAP:
- Apple Mail
- Почта Windows
- Почта Пегаса
- KMail
- Microsoft Outlook
- дворняга
- Opera (только до версии 12)
- Летучая мышь
Преимущества перед POP
Подключенный и отключенный режимы
При использовании протокола POP клиенты обычно подключаются к серверу электронной почты на короткое время, ровно столько, сколько требуется для загрузки новых сообщений. При использовании IMAP4 клиенты часто остаются на связи, пока активен пользовательский интерфейс, и загружают содержимое сообщения по запросу. Для пользователей с большим количеством или большими сообщениями этот шаблон использования IMAP4 может привести к более быстрому времени отклика.
Доступ к частям сообщения MIME и частичная выборка
Обычно вся электронная почта в Интернете передается в формате MIME , что позволяет сообщениям иметь древовидную структуру, в которой конечные узлы представляют собой любой из множества типов контента, состоящих из одной части, а нелистовые узлы — это любые из множества типов, состоящих из нескольких частей. Протокол IMAP4 позволяет клиентам извлекать любую из отдельных частей MIME по отдельности, а также извлекать части либо отдельных частей, либо всего сообщения. Эти механизмы позволяют клиентам извлекать текстовую часть сообщения без извлечения вложенных файлов или передавать содержимое в потоковом режиме по мере его извлечения.
Информация о состоянии сообщения
Используя флаги, определенные в протоколе IMAP4, клиенты могут отслеживать состояние сообщения: например, было ли сообщение прочитано, на него был дан ответ или удалено ли сообщение. Эти флаги хранятся на сервере, поэтому разные клиенты, обращающиеся к одному и тому же почтовому ящику в разное время, могут обнаруживать изменения состояния, сделанные другими клиентами. POP не предоставляет клиентам механизма для хранения такой информации о состоянии на сервере, поэтому, если один пользователь обращается к почтовому ящику с двумя разными POP-клиентами (в разное время), информация о состоянии, например, было ли получено сообщение, не может быть синхронизирована между клиентов. Протокол IMAP4 поддерживает как предопределенные системные флаги, так и определяемые клиентом ключевые слова. Системные флаги указывают информацию о состоянии, например, прочитано ли сообщение. Ключевые слова, которые поддерживаются не всеми серверами IMAP, позволяют присваивать сообщениям один или несколько тегов , значение которых зависит от клиента. Ключевые слова IMAP не следует путать с проприетарными ярлыками веб- служб электронной почты, которые иногда переводятся в папки IMAP соответствующими проприетарными серверами.
Серверный поиск
IMAP4 предоставляет клиенту механизм для запроса сервера на поиск сообщений, удовлетворяющих множеству критериев. Этот механизм не требует от клиентов загрузки каждого сообщения в почтовый ящик для выполнения этих поисков.
обзор
LDAP основан на модели клиент-сервер, и используются службы каталогов (на английском языке — каталоги или службы каталогов ). Он описывает связь между клиентом LDAP и сервером каталогов ( каталогов ). Данные, относящиеся к объектам, например B. возможность считывания личных данных или конфигурации компьютера . Общение происходит на основе запросов.
Под « каталогом » здесь понимается, например, телефонная книга, а не как «папка с файлами».
Каталог может содержать адресную книгу, например: Пользователь запускает поиск адреса электронной почты пользователя Джо в своем почтовом клиенте . Почтовый клиент формулирует LDAP-запрос к каталогу, который предоставляет информацию об адресе. Справочник формулирует ответ и отправляет его клиенту: joe.user@example.org .
Протокол LDAP предлагает все функции, которые необходимы для такой связи:
- Войти на сервер ( привязать )
- поисковый запрос ( ищите всю информацию о пользователе с именем «Joe User» )
- изменение данных (изменение пароля пользователя Joe User ).
Сервисы IP
IP также, как и Ethernet обеспечивают передачи данных без гарантии доставки, не гарантируется как доставка, так и порядок следования сообщений. Протокол Ip так же как и Ethernet использует передачу данных без установки соединения.
IP пакет просто отправляется в сеть в надежде, что он дойдет до получателя, если пакет по каким-то причинам не дошел, не предпринимается никаких попыток оповестить отправителя, и также не предпринимается попыток запросить этот пакет снова. Считается, что ошибка должна быть исправлена протоколами, которые находятся на вышестоящих уровнях.
Задачей IP является объединение сети, построенных на основе разных технологий канального уровня, которые могут значительно отличаться друг от друга в одну крупную объединенную сеть, в которой компьютеры могут свободно общаться друг с другом не взирая на различия конкретной сетевой технологии. Вторая важная задача протокола IP, это маршрутизация, то есть поиск маршрута от отправителя к получателю в крупной составной сети через промежуточные узлы маршрутизаторы. Также IP обеспечивает необходимое качество обслуживания.
Какими бывают протоколы Интернета
На сегодняшний день известно несколько разновидностей протоколов Интернета. Они имеют следующие обозначения:
- HTTP;
- DNS;
- ICMP;
- FTP;
- UDP;
- TCP/IP — название протокола, являющегося основным для интернет-сетей.
Обратите внимание! Различия между этими решениями кроются в уровнях назначения
И здесь можно разделить решения по нескольким веткам:
- физические уровни. Предполагают, что соединение создаётся при помощи витой пары, оптических волокон;
- ARP-уровень с драйверами устройств;
- сетевой уровень со стандартными ICMP, IP;
- транспортный уровень — UDP и TCP;
- прикладной. Сюда входят стандартные протоколы сети Интернет типа NFS, DNS, FTP, HTTP.
ISO/OSI — система стандартизации, которая используется абсолютно для всех решений. Благодаря этому не возникает сбоев у разнообразных платформ, даже если используются разные операционные системы, оборудование поставляют разные производители. Сейчас такие детали практически не имеют значения.
Обратите внимание! Для функционирования Интернета используется протокол каждого уровня
Порты
Приложения могут использовать сокеты дейтаграмм для установления связи между хостами. Приложение привязывает сокет к своей конечной точке передачи данных, которая представляет собой комбинацию IP-адреса и порта . Таким образом, UDP обеспечивает мультиплексирование приложений . Порт — это программная структура, которая идентифицируется номером порта , 16-битным целым числом, допускающим номера портов от 0 до 65535. Порт 0 зарезервирован, но является допустимым значением исходного порта, если отправляющий процесс не ожидает сообщений в отклик.
Управление по присвоению номеров в Интернете (IANA) разделило номера портов на три диапазона. Номера портов от 0 до 1023 используются для общих, хорошо известных служб. В Unix- подобных операционных системах для использования одного из этих портов требуется разрешение суперпользователя . Номера портов с 1024 по 49151 — это зарегистрированные порты, используемые для служб, зарегистрированных IANA. Порты с 49152 по 65535 являются динамическими портами, которые официально не предназначены для какой-либо конкретной службы и могут использоваться для любых целей. Они также могут использоваться как временные порты , которые программное обеспечение, работающее на хосте, может использовать для динамического создания конечных точек связи по мере необходимости.
Сетевые модели и протоколы
Сетевой протокол — набор правил и действий (очерёдности действий), позволяющий осуществлять соединение и обмен данными между двумя и более включёнными в сеть системами.
Стандартизированный протокол позволяет разрабатывать интерфейсы (на физическом или прикладном уровне), не привязанные к конкретной аппаратной или программной платформе.
OSI & TCP/IP
В настоящее время для описания сетевых протоколов часто используется модель OSI
(Open System Interconnection — взаимодействие открытых систем) состоящая из 7 уровней:
- прикладной (application) — HTTP, WebSocket
- представления (presentation)
- сеансовый (session)
- транспортный (transport) — TCP, UDP
- сетевой (network) — IP
- канальный (data link) — Ethernet
- физический (physical)
Эта модель, предложенная ISO, хорошо описывает взаимодействие систем в теории, но она сама и протоколы,
которые были предложены для ее реализации, не получили широкого распростронения на практике, и самой популярной моделью
стал 4-уровневый (или 5, в зависимости от точки зрения) стек протоколов TCP/IP:
- прикладной (application layer) — HTTP, WebSocket, gRPC
- транспортный (transport layer) — TCP, UDP
- сетевой (internet layer) — IP
- канальный (network access layer / data link) — Ethernet, IEEE 802.11
- физический* (physical)
На какой уровень вы бы отнесли следующие протоколы?
- FTP
- SSL / TLS
- NTP (network time protocol)
- SSH
- gRPC
- BitTorrent
- BGP (Border Gateway Protocol)
- DNS
- ARP (Address Resolution Protocol)
Каждый уровень и протокол использует собственные абстракции которые доступны протоколам более высоких уровней.
Например, для TCP нет понятия «сообщения» — этот протокол оперирует потоками данных,
в то время как для IP четко определено понятие пакета для которого определен максимальный размер, который диктуется MTU конкретной сети.
При передаче данных с более высокого уровня, протокол низкого уровня добавляет служебные заголовки и может дополнительно фрагментировать данные.
TCP & UDP
Самыми распространенными протоколами транспортного уровня являются TCP & UDP
— TCP (Transmission Control Protocol) — предоставляет поток данных с предварительной установкой соединения,
осуществляет повторный запрос данных в случае потери данных и устраняет дублирование при получении двух копий одного пакета,
гарантируя тем самым, в отличие от UDP, целостность передаваемых данных и уведомление отправителя о результатах передачи.
— UDP (User Datagram Protocol) — предоставляет возможность отправки сообщений без необходимости предварительной
установки специальных каналов передачи данных.
Оба протокола используют протокол IP для адресации и передачи данных в сети.
TCP требует обязательного установления соединения (handshake):
Утановление соединения может занимать значительное время — например, при latency между системами в 50 мс,
данные могут быть получены второй стороной не ранее чем через 150 мс.
Кстати, с точки зрения TCP нет понятия «клиент» и «сервер» — обе стороны соединения равноправны и могут посылать и принимать данные независимо.
После того как соединение установлено, оно теоретически может существовать бесконечно долго.
На практике же это не так — большое количество промежуточных proxy серверов, имеющие свою точку зрения.
Несмотря на то что TCP является протоколом надежной передачи данных, он лишь гарантирует что при получении ACK-а
вы можете рассчитывать на то, что другая сторона получила данные без изменений.
Поэтому приложениям стоит рассчитывать на то, что при любом сетевом взаимодействии что-то может пойти не так
и приложение должно корректно обрабатывать исключительные ситуации (connection reset, timeout-ы, и т.д.)
Для корректного закрытия соединения используется следующая последовательность:
Если же соединение было закрыто некорректно (например. kill -9) то другая сторона может об этом узнать,
только если попробует передать или получить данные — встроенного механизма heartbeat-ов в TCP нет,
что часто приводит к проблемам с proxy-серверами.
UDP используется в случае когда от протокола требуется обеспечить минимальную задержку несмотря на возможность
потери данных или порядка сообщений — игры, видео- и аудио- конференции и стриминг.
Так же протокол более высокого уровня может сам гарантировать надежную передачу данных (например FTP).
Дополнительные ссылки:
Протоколы уровня 5 Session layer (Сеансовый уровень)
5-й уровень модели отвечает за поддержание сеанса связи, что позволяет приложениям взаимодействовать между собой длительное время. Сеансовый уровень управляет созданием/завершением сеанса, обменом информацией, синхронизацией задач, определением права на передачу данных и поддержанием сеанса в периоды неактивности приложений. Синхронизация передачи обеспечивается помещением в поток данных контрольных точек, начиная с которых возобновляется процесс при нарушении взаимодействия.
- 9P — протокол распределённой файловой системы, разработанный как часть Plan 9
- NCP NetWare Core Protocol
- NFS — Network File System сетевая файловая система
- SMB Server Message Block
- SOCKS «SOCKet Secure»
Уровни сетей и модель OSI
Обычно, сети обсуждаются в горизонтальной плоскости, рассматриваются протоколы сети интернет верхнего уровня и приложения. Но для установки соединений между двумя компьютерами используется множество вертикальных слоев и уровней абстракции. Это означает, что существует несколько протоколов, которые работают друг поверх друга для реализации сетевого соединения. Каждый следующий, более высокий слой абстрагирует передаваемые данные и делает их проще для восприятия следующим слоем, и в конечном итоге приложением.
Существует семь уровней или слоев работы сетей. Нижние уровни будут отличаться в зависимости от используемого вами оборудования, но данные будут передаваться одни и те же и будут иметь один и тот же вид. На другую машину данные всегда передаются на самом низком уровне. На другом компьютере, данные проходят все слои в обратном порядке. На каждом из слоев к данным добавляется своя информация, которая поможет понять что делать с этим пакетом на удаленном компьютере.
Модель OSI
Так сложилось исторически, что когда дело доходит до уровней работы сетей, используется модель OSI или Open Systems Interconnect. Она выделяет семь уровней:
- Уровень приложений — самый верхний уровень, представляет работу пользователя и приложений с сетью Пользователи просто передают данные и не задумываются о том, как они будут передаваться;
- Уровень представления — данные преобразуются в более низкоуровневый формат, чтобы быть такими, какими их ожидают получить программы;
- Уровень сессии — на этом уровне обрабатываются соединения между удаленным компьютерами, которые будут передавать данные;
- Транспортный уровень — на этом уровне организовывается надежная передача данных между компьютерами, а также проверка получения обоими устройствами;
- Сетевой уровень — используется для управления маршрутизацией данных в сети пока они не достигнут целевого узла. На этом уровне пакеты могут быть разбиты на более мелкие части, которые будут собраны получателем;
- Уровень соединения — отвечает за способ установки соединения между компьютерами и поддержания его надежности с помощью существующих физических устройств и оборудования;
- Физический уровень — отвечает за обработку данных физическими устройствами, включает в себя программное обеспечение, которое управляет соединением на физическом уровне, например, Ehternet или Wifi.
Как видите, перед тем, как данные попадут к аппаратному обеспечению им нужно пройти множество слоев.
Модель протоколов TCP/IP
Модель TCP/IP, еще известная как набор основных протоколов интернета, позволяет представить себе уровни работы сети более просто. Здесь есть только четыре уровня и они повторяют уровни OSI:
- Приложения — в этой модели уровень приложений отвечает за соединение и передачу данными между пользователям. Приложения могут быть в удаленных системах, но они работают как будто бы находятся в локальной системе;
- Транспорт — транспортный уровень отвечает за связь между процессами, здесь используются порты для определения какому приложению нужно передать данные и какой протокол использовать;
- Интернет — на этом уровне данные передаются от узла к узлу по сети интернет. Здесь известны конечные точки соединения, но не реализуется непосредственная связь. Также на этом уровне определяются IP адреса;
- Соединение — этот уровень реализует соединение на физическом уровне, что позволяет устройствам передавать между собой данные не зависимо от того, какие технологии используются.
Эта модель менее абстрактная, но мне она больше нравиться и ее проще понять, поскольку она привязана к техническим операциям, выполняемым программами. С помощью каждой из этих моделей можно предположить как на самом деле работает сеть. Фактически, есть данные, которые перед тем, как будут переданы, упаковываются с помощью нескольких протоколов, передаются через сеть через несколько узлов, а затем распаковываются в обратном порядке получателем. Конечные приложения могут и не знать что данные прошли через сеть, для них все может выглядеть как будто обмен осуществлялся на локальной машине.
Протоколы уровня 3 Network layer (Сетевой уровень)
3-й уровень сетевой модели OSI, предназначен для определения пути передачи данных. Отвечает за трансляцию логических адресов и имён в физические, определение кратчайших маршрутов, коммутацию и маршрутизацию, отслеживание неполадок и заторов в сети. На этом уровне работает такое сетевое устройство, как маршрутизатор.
- CLNP Сетевой протокол без установки соединения
- EGP протокол внешнего шлюза (устарел)
- EIGRP Enhanced Interior Gateway Routing Protocol
- ICMP Internet Control Message Protocol
- IGMP Internet Group Management Protocol
- IGRP Interior Gateway Routing Protocol
- IPv4 Internet Protocol version 4
- IPv6 Internet Protocol version 6
- IPsec Internet Protocol Security
- IPX Internetwork Packet Exchange
- SCCP Signalling Connection Control Part
- AppleTalk DDP
О средствах настройки, проверки
В операционной системе Windows настройка протокола становится одной из самых простых операций. Достаточно зайти в меню с параметрами Сети, где выбирается соответствующий пункт. Раньше решение вопроса было более простым. Сейчас пользователи выбирают между двумя вариантами подключения:
- IPv6;
- IPv4.
Обратите внимание! iPv4 — вариант стандартной настройки для большинства ситуаций. IPv6 — новая версия протокола, которая до сих пор остаётся невостребованной
Доступ к состоянию сети с помощью системного трея помогут провести проверку в случае необходимости. Значок на панели сообщит пользователю о том, доступна сеть или нет. Определение текущего статуса не доставляет проблем.
Версия 6
С 1996 года вводится в эксплуатацию шестая версия протокола — IPv6, которая позволяет адресовать значительно большее количество узлов, чем IPv4. Адресное пространство IPv6 составляет 2128. Такое большое адресное пространство было введено ради иерархичности адресов (это упрощает маршрутизацию). Тем не менее, увеличенное пространство адресов сделает NAT необязательным. Классическое применение IPv6 (по сети /64 на абонента; используется только unicast-адресация) обеспечит возможность использования более 300 млн IP-адресов на каждого жителя Земли. Эта версия отличается повышенной разрядностью адреса, встроенной возможностью шифрования и некоторыми другими особенностями[какими?]. Долгий переход с IPv4 на IPv6 связан с трудоёмкой работой операторов связи и производителей программного обеспечения и не может быть выполнен в один момент. К осени 2013 года в Интернете присутствовало более 14000 сетей, работающих по протоколу IPv6. Для сравнения, к середине 2010 года в адресном пространстве IPv4 присутствовало более 320 тысяч сетей, но в IPv6 сети гораздо более крупные, нежели в IPv4.
История
Понимание телекоммуникационными компаниями требований к справочникам было хорошо развито после 70 лет создания и управления телефонными справочниками. Эти компании представили концепцию служб каталогов для информационных технологий и компьютерных сетей , и их вклад в разработку завершился всеобъемлющей спецификацией X.500 , набором протоколов, разработанным Международным союзом электросвязи (ITU) в 1980-х годах.
Доступ к службам каталогов X.500 традиционно осуществлялся через протокол доступа к каталогам X.500 (DAP), для которого требовался стек протоколов взаимодействия открытых систем (OSI) . Изначально LDAP задумывался как облегченный альтернативный протокол для доступа к службам каталогов X.500 через более простой (и теперь широко распространенный) стек протоколов TCP / IP . Эта модель доступа к каталогам была заимствована из протоколов DIXIE и Directory Assistance Service .
Протокол был первоначально создан Тим Хоус в Университете штата Мичиган , Стив Kille из ISODE Limited, Колин Роббинс из Nexor и Wengyik Ён из Performance Systems International , около 1993 года в качестве преемника Dixie и DAS . Марк Уол из Critical Angle Inc., Тим Хоус и Стив Килле начали работу в 1996 году над новой версией LDAP, LDAPv3, под эгидой Инженерной группы Интернета (IETF). Протокол LDAPv3, впервые опубликованный в 1997 году, заменил LDAPv2 и добавил поддержку расширяемости, интегрировал простой уровень аутентификации и безопасности и лучше согласовал протокол с версией X.500 1993 года. Дальнейшее развитие самих спецификаций LDAPv3 и многочисленных расширений, добавляющих функции LDAPv3, было осуществлено через IETF .
На ранних этапах разработки LDAP он был известен как Lightweight Directory Browsing Protocol , или LDBP . Он был переименован с расширением области действия протокола, выходящей за рамки просмотра и поиска каталогов, и теперь включает функции обновления каталогов. Ему было дано название Lightweight, потому что он не требовал такой интенсивной работы в сети, как его предшественник DAP, и, таким образом, был более легко реализован через Интернет из-за относительно небольшого использования полосы пропускания.
LDAP повлиял на последующие Интернет-протоколы, включая более поздние версии X.500, каталог с поддержкой XML (XED), язык разметки службы каталогов (DSML), язык разметки предоставления услуг (SPML) и протокол определения местоположения службы (SLP). Он также используется в качестве основы для Microsoft «s Active Directory .
обзор
LDAP основан на модели клиент-сервер, и используются службы каталогов (на английском языке — каталоги или службы каталогов ). Он описывает связь между клиентом LDAP и сервером каталогов ( каталогов ). Данные, относящиеся к объектам, например B. возможность считывания личных данных или конфигурации компьютера . Общение происходит на основе запросов.
Под « каталогом » здесь понимается, например, телефонная книга, а не как «папка с файлами».
Каталог может содержать адресную книгу, например: Пользователь запускает поиск адреса электронной почты пользователя Джо в своем почтовом клиенте . Почтовый клиент формулирует LDAP-запрос к каталогу, который предоставляет информацию об адресе. Справочник формулирует ответ и отправляет его клиенту: joe.user@example.org .
Протокол LDAP предлагает все функции, которые необходимы для такой связи:
- Войти на сервер ( привязать )
- поисковый запрос ( ищите всю информацию о пользователе с именем «Joe User» )
- изменение данных (изменение пароля пользователя Joe User ).
Схема
Содержимое записей в поддереве регулируется схемой каталога , набором определений и ограничений, касающихся структуры дерева информации каталога (DIT).
Схема сервера каталогов определяет набор правил, которые управляют видами информации, которую может хранить сервер. Он имеет ряд элементов, в том числе:
- Синтаксис атрибутов — предоставляет информацию о типе информации, которая может храниться в атрибуте.
- Правила сопоставления — предоставьте информацию о том, как проводить сравнения со значениями атрибутов.
- Использование правила сопоставления — укажите, какие типы атрибутов могут использоваться вместе с конкретным правилом сопоставления.
- Типы атрибутов — определяют идентификатор объекта (OID) и набор имен, которые могут относиться к заданному атрибуту, и связывают этот атрибут с синтаксисом и набором правил сопоставления.
- Классы объектов. Определите именованные коллекции атрибутов и классифицируйте их по наборам обязательных и дополнительных атрибутов.
- Формы имени — Определите правила для набора атрибутов, которые должны быть включены в RDN для записи.
- Правила содержимого — определяют дополнительные ограничения для классов объектов и атрибутов, которые могут использоваться вместе с записью.
- Правило структуры — Определите правила, которые управляют видами подчиненных статей, которые может иметь данная статья.
Атрибуты — это элементы, отвечающие за хранение информации в каталоге, а схема определяет правила, для которых атрибуты могут использоваться в записи, типы значений, которые могут иметь эти атрибуты, и то, как клиенты могут взаимодействовать с этими значениями.
Клиенты могут узнать об элементах схемы, которые поддерживает сервер, получив соответствующую подстатью подсхемы.
Схема определяет классы объектов . Каждая запись должна иметь атрибут objectClass, содержащий именованные классы, определенные в схеме. Определение схемы классов статьи определяет, какой тип объекта может представлять статья — например, человека, организацию или домен. Определения класса объектов также определяют список атрибутов, которые должны содержать значения, и список атрибутов, которые могут содержать значения.
Например, запись, представляющая человека, может принадлежать к классам «верхний» и «человек». Членство в классе «person» потребует, чтобы запись содержала атрибуты «sn» и «cn», а также позволило бы записи также содержать «userPassword», «phoneNumber» и другие атрибуты. Поскольку записи могут иметь несколько значений ObjectClasses, каждая запись имеет комплекс необязательных и обязательных наборов атрибутов, сформированных из объединения классов объектов, которые она представляет. ObjectClasses могут быть унаследованы, и одна запись может иметь несколько значений ObjectClasses, которые определяют доступные и обязательные атрибуты самой записи. Параллельно схеме объектного класса является определение класса и его экземпляр в объектно-ориентированном программировании , представляющие объектный класс LDAP и запись LDAP соответственно.
Серверы каталогов могут публиковать схему каталогов, управляющую записью, на базовом DN, заданном операционным атрибутом записи subschemaSubentry. ( Операционный атрибут описывает работу каталога, а не информацию о пользователе, и возвращается из поиска только тогда, когда он явно запрошен.)
Администраторы сервера могут добавлять дополнительные записи схемы в дополнение к предоставленным элементам схемы. Схема для представления отдельных людей в организациях называется схемой белых страниц .
Другие модели данных [ править ]
По мере того, как LDAP набирает обороты, поставщики предоставляют его в качестве протокола доступа к другим службам. Затем реализация изменяет данные, чтобы имитировать модель LDAP / X.500, но степень соблюдения этой модели варьируется. Например, существует программное обеспечение для доступа к базам данных SQL через LDAP, хотя LDAP не всегда поддается этому. Серверы X.500 также могут поддерживать LDAP.
Точно так же данные, ранее хранившиеся в других типах хранилищ данных, иногда перемещаются в каталоги LDAP. Например, информация о пользователях и группах Unix может храниться в LDAP и доступна через модули PAM и NSS . LDAP часто используется другими службами для аутентификации и / или авторизации (какие действия данный уже аутентифицированный пользователь может выполнять в какой службе). Например, в Active Directory Kerberos используется на этапе аутентификации, а LDAP — на этапе авторизации.
Примером такой модели данных является схема GLUE которая используется в распределенной информационной системе на основе LDAP, которая позволяет пользователям, приложениям и службам обнаруживать, какие службы существуют в инфраструктуре Grid, и получать дополнительную информацию об их структуре и состоянии.
Совет по архитектуре интернета
Совет поделён две части. Группа исследования интернет (Internet Research Task Force, IRTF) проводит перспективные исследования в области интернет.
Часть №2 группа проектирования интернет (Internet Engineering Task Force, IETF) производит стандарты на сетевые протоколы. IETF подготавливает документы RFC (Request for Comments) или запросы на комментарии. Вот эти доки содержат подробное описание протоколов интернет. Если вы будите использовать другие протоколы, то ваше устройство и ПО не сможет работать в сети интернет.
Документы RFC
У каждого документа RFC есть индивидуальный номер и он описывает какой-либо протокол интернет.
Существуют много документов RFC, с которыми вы можете ознакомиться.
Консорциум W3C (World Wide Web)
W3C разрабатывает стандарты для Веб. Документы консорциума, также как и RFC формально, они не называются стандартами, а называются рекомендациями. Но если вы не последуете этим рекомендациям, то не сможете поработать с web.
Самые важные рекомендации консорциума w3c это:
- Язык разметки html;
- Таблицы стилей css, которые нужны для создания web-страниц;
- Рекомендации на архитектуру Веб-сервисов;
- И язык разметки xml.
Но существуют еще рекомендации, которые в свободном доступе на сайте консорциума.
Как работает HTTP протокол сайта
HTTP является прикладным протоколом передачи данных. Принцип его работы сложен, если разбираться в нем досконально, и крайне прост, если вникнуть в его суть. Работа через данный протокол осуществляется по схеме client-server. Существует сервер, который в пассивном режиме постоянно ожидает, когда с ним будет установлено соединение. Это соединение с ним рано или поздно установит клиент, то есть машинный интерфейс пользователя интернетом. Клиент хочет что-то получить от сервера: получить страницу, открыть картинку, скачать песню. Чтобы сообщить о том, что именно хочет клиент, пользователь отправляет запросы, которые сервер умело обрабатывает. Сервер умеет обрабатывать запросы юзера благодаря инструкции, которой его снабдил HTTP протокол. Если запрос обработать невозможно, сервер знает, какую ошибку он должен выдать.