Пример приложения клиент/сервер на языке Java

С помощью следующего приложения мы осветим вопросы программирования сокетов как для протокола TCP, так и для протокола UDP. Приложение функционирует следующим образом. 1. Клиент считывает со стандартного устройства ввода (клавиатуры) строку символов и посылает эту строку серверу через свой сокет. 2. Сервер принимает строку через свой сокет. 3. Сервер переводит все символы строки в верхний регистр. 4. Сервер отсылает модифицированную

Подробнее

Перемещение пакетов от хоста-отправителя к хосту-получателю

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

Подробнее

Происхождение дейтаграммной службы и службы виртуальных каналов

Эволюция сетевых служб отражает их происхождение. Идея виртуального канала как центрального организационного принципа уходит своими корнями в мир телефонии, в котором используются «реальные» электрические цепи. Сеть виртуальных каналов значительно сложнее дейтаграммной сети, так как в ней требуется установка соединения, а маршрутизаторы сети хранят информацию о состоянии соединения. Эти свойства также представляют собой «родимые пятна» телефонных сетей. Телефонным сетям присуще сложное

Подробнее

Понятие модели сетевого обслуживания

Когда транспортный уровень передающего хоста посылает пакет в сеть (то есть передает его сетевому уровню того же хоста), может ли транспортный уровень положиться на сетевой уровень в деле доставки пакета получателю? Когда посылается большое количество пакетов, будут ли они доставлены транспортному уровню в том же порядке, в котором были отправлены? Сохранятся ли длительности временных интервалов между двумя последовательными пакетами? Будет

Подробнее

Роль сетевого уровня на хостах и промежуточных маршрутизаторах

На рис. 4.1 изображена схема простой сети с двумя хостами, H1 и Н2, и несколькими маршрутизаторами на пути от хоста H1 до хоста Н2. Пусть хост H1 посылает информацию хосту Н2. Рассмотрим роль сетевого уровня на этих хостах и промежуточных маршрутизаторах. Сетевой уровень хоста HI принимает сегменты от транспортного уровня хоста H1, инкапсулирует каждый сегмент в дейтаграмму (единицу обмена сетевого

Подробнее

Расчет времени ответа для протокола HTTP

В качестве примера практического применения методов анализа задержки рассчитаем время ответа для web-страницы, передаваемой по протоколу HTTP, не поддерживающему постоянные соединения. Предположим, что страница состоит из базового HTML-файла и Мрисунков. Для простоты выкладок примем, что размеры всех М + 1 объектов одинаковы и составляют 0 бит. В случае непостоянного HTTP-соединения объекты пересылаются последовательно, один за другим. Таким образом, время ответа

Подробнее

Динамическое окно перегрузки

Изменим предыдущую модель, позволив окну перегрузки изменять свой размер. Как мы говорили ранее, в начале передачи сервер устанавливает размер окна перегрузки равным величине MSS и отсылает один сегмент клиенту. Получив квитанцию, сервер увеличивает размер окна перегрузки до величины 2MSS и посылает 2 сегмента с интервалом в S/R с. Получив еще 2 квитанции, сервер увеличивает размер окна перегрузки до величины 4MSS

Подробнее

Статическое окно перегрузки

Несмотря на то что на практике размер окна перегрузки протокола TCP постоянно меняется, для наглядности удобно сначала представить окно перегрузки статическим. Пусть W — положительное целое число, равное размеру статического окна; это означает, что сервер, не ожидая подтверждений, может передать не более W сегментов. Получив запрос, сервер сразу отсылает клиенту W сегментов. Далее сервер пересылает каждый новый сегмент после получения

Подробнее

Вычисление времени, необходимого TCP для передачи объекта

Мы завершаем эту главу рассмотрением нескольких простых моделей, позволяющих вычислить время, необходимое TCP для передачи объекта (рисунка, текстового файла или музыкального произведения в формате МРЗ). Для каждого объекта мы введем понятие задержки — промежутка времени, проходящего с момента инициирования ТСР-соединения клиентской стороной до полного завершения процесса приема объекта получателем. В моделях, которые будут описаны ниже, учитываются ключевые составляющие задержки: процедура

Подробнее

Выравнивание скоростей и параллельные ТСР-соединения

Даже если механизм, заставляющий UDP-соединения выравнивать пропускные способности линий связи, будет создан, он не решит существующую проблему до конца. Это объясняется тем, что приложениям невозможно запретить использовать параллельные ТСР-соединения. К примеру, параллельные ТСР-соединения применяются web-браузерами для одновременной доставки нескольких объектов web-страницы (число соединений, одновременно поддерживаемых браузером, обычно задается при его настройке). Увеличение числа соединений, устанавливаемых приложением, увеличивает долю пропускной способности,

Подробнее