Книги
чёрным по белому
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Книги
Археология Архитектура Бизнес Биология Ветеринария Военная промышленность География Геология Гороскоп Дизайн Журналы Инженерия Информационные ресурсы Искусство История Компьютерная литература Криптология Кулинария Культура Лингвистика Математика Медицина Менеджмент Металлургия Минералогия Музыка Научная литература Нумизматика Образование Охота Педагогика Политика Промышленные производства Психология Путеводители Религия Рыбалка Садоводство Саморазвитие Семиотика Социология Спорт Столярное дело Строительство Техника Туризм Фантастика Физика Футурология Химия Художественная литература Экология Экономика Электроника Энергетика Этика Юриспруденция
Новые книги
Янин В.Л. "Новгородские акты XII-XV Хронологический комментарий" (История)

Майринк Г. "Белый доминиканец " (Художественная литература)

Хусаинов А. "Голоса вещей. Альманах том 2" (Художественная литература)

Петров Г.И. "Отлучение Льва Толстого " (Художественная литература)

Хусаинов А. "Голоса вещей. Альманах том 1 " (Художественная литература)
Реклама

Компьютерные сети 4-е издание - Tanenbaun A.S.

Tanenbaun A.S. Компьютерные сети 4-е издание — Спб Питер , 2003. — 503 c.
ISBN 5-318-00492
Скачать (прямая ссылка): komputerniyeseti2003.pdf
Предыдущая << 1 .. 22 23 24 25 26 27 < 28 > 29 30 31 32 33 34 .. 484 >> Следующая

Как уже упоминалось ранее, существуют системы, для которых задержки, связанные с пересылкой подтверждений, неприемлемы. В качестве примера такой системы можно назвать цифровую голосовую связь. В данном случае предпочтительнее допустить шумы на линии или искаженные слова, нежели большие паузы, вызванные отсылкой подтверждений и повторной передачей блоков данных. Аналогично, при проведении видеоконференции отдельные неправильные пикселы окажутся меньшей проблемой, нежели дергающиеся и останавливающиеся кадры.
Не все приложения требуют установки соединения. Например, при рассылке рекламы по электронной почте установка связи для пересылки каждого отдельного сообщения нежелательна. Также не требуется в этом случае и 100-процент-ная надежность, особенно, если это существенно увеличит стоимость. Все, что нужно, — это способ переслать сообщение с высокой вероятностью его получения, но без гарантии. Ненадежная (то есть без подтверждений) служба без установления соединения часто называется службой дейтаграмм, или дейтаграммной службой — по аналогии с телеграфной службой, также не предоставляющей подтверждений отправителю.
В других ситуациях бывает желательно не устананавливать соединение для пересылки коротких сообщений, но надежность, тем не менее, существенна. Такая служба называется службой дейтаграмм с подтверждениями. Она подобна отправке заказного письма с подтверждением получения. Получив подтверждение, отправитель уверен, что письмо доставлено адресату, а не потеряно по дороге.
Кроме того, существует служба запросов и ответов, в которой отправитель посылает дейтаграммы, содержащие запросы, и получает ответы от получателя. Например, к данной категории можно отнести вопрос к библиотеке о том, где говорят по-уйгурски. Обычно модель запросов и ответов применяется для реализации общения в модели «клиент-сервер»: клиент посылает запрос, а сервер отвечает на него. Обсуждавшиеся ранее типы служб сведены в таблицу на рис. 1.13.
58 Глава 1. Введение
Ориентированная < на соединение
Без установления соединения
Рис. 1.13. Шесть типов служб
Концепция использования ненадежной связи поначалу может показаться несколько странной. В самом деле, почему это может возникать такая ситуация, когда выгоднее предпочесть ненадежную связь надежной? Во-первых, надежное соединение (в том смысле, который был оговорен ранее, то есть с подтверждением) не всегда можно установить. Скажем, ЕтНегпеТ не является «надежным» средством коммуникации. Пакеты при передаче могут искажаться, но решать эту проблему должны протоколы более высоких уровней. Во-вторых, задержки, связанные с отсылкой подтверждения, в некоторых случаях неприемлемы, особенно при передаче мультимедиа в реальном времени. Именно благодаря этим факторам продолжают сосуществовать надежные и ненадежные соединения.
Примитивы служб
Служба (сервис) формально описывается набором примитивов или операций, доступных пользователю или другой сущности для получения сервиса. Эти примитивы заставляют службу выполнять некоторые действия или служат ответами на действия сущности того же уровня. Если набор протоколов входит в состав операционной системы (как часто и бывает), то примитивы являются системными вызовами. Они приводят к возникновению системных прерываний в привилегированном режиме, в результате чего управление машиной передается операционной системе, которая и отсыпает нужные пакеты.
Набор доступных примитивов зависит от природы сервиса. Скажем, примитивы сервисов с установлением соединения и без него различаются. В табл. 1.3 приведен минимальный набор примитивов, обеспечивающий надежную передачу битового потока в среде типа «клиент-сервер».
Эти примитивы могут использоваться следующим образом. Вначале сервер исполняет Ь18ТЕТч[, показывая тем самым, что он готов устанавливать входящие соединения. Этот примитив обычно реализуется в виде блокирующего системного вызова. После его исполнения процесс сервера приостанавливается до тех пор, пока не будет установлено соединение.
Служба Пример
Надежный поток сообщений Последовательность страниц
Надежный поток байт Удаленная регистрация
Ненадежное соединение Цифровая голосовая связь
Ненадежная дейтаграмма Рассылка рекламы электронной почтой
Дейтаграмма с подтверждениями Заказные письма
Запрос — ответ Запрос к базе данных
Сетевое программное обеспечение 59
Таблица 1.3. Пять сервисных примитивов, обеспечивающих простую передачу с установлением соединения
Поимитив Значение
И5ТЕЫ (ожидание) Блок ожидает входящего соединения
СОМЫЕСТ (соединение) Установка соединения с ожидающей сущностью того же ранга
ВЕСЕМЕ (прием) Блок ожидает входящего сообщения
5ЕШ (отправка) Отправка сообщения ожидающей сущности того же ранга
?15СОМЫЕСТ (разрыв) Разрыв соединения
Затем процесс клиента выполняет примитив СОМч[ЕСТ, устанавливая соединение с сервером. В системном вызове должно быть указано, с кем именно необходимо установить связь. Для этого может вводиться специальный параметр, содержащий адрес сервера. Далее операционная система клиента посыпает равноранговой сущности пакет с запросом на соединение, как показано на рис. 1.14 стрелочкой с пометкой (1). Процесс клиента приостанавливается в ожидании ответа. Пакет, пришедший на сервер, обрабатывается его операционной системой. Если в пакете обнаруживается запрос на соединение, начинается поиск того клиента, который отправил этот запрос. При его обнаружении производятся два действия: клиент разблокируется и ему отсылается подтверждение (2). Реальное разблокирование происходит по прибытии подтверждения на клиентскую машину. Начиная с этого момента считается, что сервер и клиент установили соединение. Важно отметить здесь то, что подтверждение (2) генерируется самим кодом протокола и не является ответом на примитив пользователя, содержащий запрос. Может возникнуть ситуация, когда запрос на соединение есть, а клиента нет. В этом случае результат будет неопределенным. В некоторых системах пакет может быть отложен на короткое время, в течение которого ожидается Ц8ТЕ1ч[.
Предыдущая << 1 .. 22 23 24 25 26 27 < 28 > 29 30 31 32 33 34 .. 484 >> Следующая