Обмен пакетами

Обмен пакетами

На рис. 2.5 представлен реальный обмен пакетами, происходящий во время соединения TCP: установление соединения, передача данных и завершение соединения. Мы также показываем состояния TCP, через которые проходит каждый узел.

Рис. 2.5. Обмен пакетами для соединения TCP

В этом примере клиент объявляет размер сегмента (MSS) равным 536 байт (это означает, что его реализация работает с минимальным размером буфера сборки пакетов), а сервер — 1460 байт (типичное значение для IPv4 в Ethernet). Как видно, MSS в каждом направлении передачи вполне могут отличаться (см. также упражнение 2.5).

Как только соединение установлено, клиент формирует запрос и посылает его серверу. Мы считаем, что этот запрос соответствует одиночному сегменту TCP (то есть его размер меньше 1460 байт — анонсированного размера MSS сервера). Сервер обрабатывает запрос и отправляет ответ, и мы также считаем, что ответ соответствует одиночному сегменту (в данном примере меньше 536 байт). Оба сегмента данных мы отобразили более жирными линиями. Заметьте, что подтверждение запроса клиента отправляется с ответом сервера. Это называется вложенным подтверждением (piggybacking) и обычно происходит, когда сервер успевает обработать запрос и подготовить ответ меньше, чем за 200 мс или около того. Если серверу требуется больше времени, скажем, 1 с, ответ будет приходить после подтверждения. (Динамика потока данных TCP подробно описана в главах 19 и 20 [111].)

Затем мы показываем четыре сегмента, закрывающих соединение. Заметьте, что узел, выполняющий активное закрытие (в данном сценарии клиент), входит в состояние TIME_WAIT. Мы рассмотрим это в следующем разделе.

На рис. 2.5 важно отметить, что если целью данного соединения было отправить запрос, занимающий один сегмент, и получить ответ, также занимающий один сегмент, то при использовании TCP всего будет задействовано восемь сегментов. Если же используется UDP, произойдет обмен только двумя сегментами: запрос и ответ. Но при переходе от TCP к UDP теряется надежность, которую TCP предоставляет приложению, и множество задач по обеспечению надежности транспортировки данных переходит с транспортного уровня (TCP) на уровень приложения. Другое важное свойство, предоставляемое TCP, — это управление в условиях перегрузки, которое в случае использования протокола UDP должно принимать на себя приложение. Тем не менее важно понимать, что многие приложения используют именно UDP, потому что они обмениваются небольшими объемами данных, a UDP позволяет избежать накладных расходов, возникающих при установлении и разрыве соединения TCP.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

3.6.5. Документация, поставляемая с дистрибутивом и пакетами ПО

Из книги Linux для пользователя автора Костромин Виктор Алексеевич

3.6.5. Документация, поставляемая с дистрибутивом и пакетами ПО Если в процессе установки системы вы не отказались от установки документации, то после завершения процедур инсталляции в каталоге /usr/doc/ (или /usr/share/doc) вы найдете подкаталоги HOWTO, FAQ, HTML и LDP, содержащие


1.3.7. Баннерный обмен

Из книги Как заработать в Интернете: Практическое пособие автора Дорохова Марта Александровна


Опции для работы с пакетами и гнездами

Из книги Сетевые средства Linux автора Смит Родерик В.

Опции для работы с пакетами и гнездами Низкоуровневые сетевые средства Linux позволяют программам передавать и принимать фрагменты данных, называемые пакетами, посредством специальных структур, которые называются гнездами (socket). В большинстве случаев обмен данными через


17.3 Программы управления пакетами

Из книги Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx» автора Неворотин Вадим

17.3 Программы управления пакетами В Ubuntu существуют две основные графические утилиты управления программами: «Центр приложений Ubuntu» и «Менеджер пакетов Synaptic». Кроме того, все действия можно легко совершать и через консоль. Каждому из этих инструментов посвящена одна из


Глава 20 Консольные инструменты управления пакетами

Из книги Ubuntu 10. Краткое руководство пользователя автора Колисниченко Д. Н.

Глава 20 Консольные инструменты управления пакетами Считается, и вполне оправданно, что набрать одну команду в терминале сильно проще, чем кликать мышкой по GUI инструментам. Кроме того, основой Linux всё-таки является терминал. Поэтому я никак не могу обойти описание работы с


9.2. Программа dpkg: управление DEB-пакетами

Из книги Как раскрутить и разрекламировать Web-сайт в сети Интернет автора Загуменов Александр Петрович

9.2. Программа dpkg: управление DEB-пакетами Программа dpkg используется для установки, удаления и управления пакетами Debian/Ubuntu. Программа dpkg вызывается из командной строки. Формат вызова ее следующий: dpkg [ключи] действие Примечание Для запуска dpkg нужно обладать полномочиями root,


Обмен ссылками

Из книги Социальные сети без страха для тех, кому за... автора Виннер Марина

Обмен ссылками Обмен ссылками – это самый старый и наиболее известный метод улучшения индекса цитирования. Суть метода состоит в том, что вы связываетесь по электронной почте или любым другим доступным способом с вебмастером сайта, который в какой-то степени


Обмен файлами

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард


Обмен пакетами

Из книги Linux Mint и его Cinnamon. Очерки применителя автора Федорчук Алексей Викторович

Обмен пакетами На рис. 2.9 показан реальный обмен пакетами для ассоциации SCRIPT. Рисунок включает установление ассоциации, передачу данных и завершение ассоциации. Мы также показываем состояния SCRIPT, через которые проходит каждый из узлов. Рис. 2.9. Обмен пакетами для


Управление пакетами

Из книги Священные войны мира FOSS автора Федорчук Алексей Викторович

Управление пакетами Работа с пакетами предполагает следующие действия — их установку с занесением в локальную базу данных, отслеживание зависимостей (и иногда их разрешение) обновление, удаление, получение информации о пакетах, иногда конфигурирование. Для понимания


Работа с бинарными пакетами

Из книги автора

Работа с бинарными пакетами Главное действие в отношении пакетов, которые были сочтены полезными — их установка. А основным инструментом установки является внутренняя команда install. В качестве аргументов она принимает имена пакетов — те самые, которые были найдены


Работа с пакетами исходных текстов

Из книги автора

Работа с пакетами исходных текстов Всё сказанное выше относилось к бинарным пакетам. Однако в утилите apt предусмотрены и средства для работы с пакетами исходных текстов. Так, с помощью внтуренней команды source можно просто скачать пакет, указанный в качестве её аргумента —


Управление пакетами: Synaptic

Из книги автора

Управление пакетами: Synaptic Система управления пакетами Synaptic — графический фронт-энд для утилит семейства APT, обычно используемыми для работы с пакетами deb-формата, а в некоторых дистрибутивах — и с пакетами