Тема 9. Транспортный уровень OSI

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive
 
Тема 9. Транспортный уровень OSI

 

Понятие транспортного уровня OSI. Адресация: с помощью идентификатора подключения, с помощью идентификатора транзакций. Управление передачей. Службы соединений: сегментация, контроль ошибок, управление доставкой.

Введение

Вы уже изучили три уровня OSI.

Что рассматривалось на физическом уровне? (передача битов). Какие устройства работают на физическом уровне? (разъемы, репитеры и многопортовые репитеры, модемы).

Что рассматривалось на канальном уровне? (формирование из потока битов кадров и передача кадров). Какие устройства работают на канальном уровне? (активные концентраторы и коммутаторы, мосты, платы сетевых адаптеров). Какая адресация используется на канальном уровне? (физическая). В каких пределах используются протоколы канального уровня? (В пределах подсети)

Что рассматривалось на сетевом уровне? (передача дейтаграмм и пакетов по интерсети). Какие устройства работают на сетевом уровне? (маршрутизаторы и шлюзы). Какая адресация используется на сетевом уровне? (сетевая или логическая). Из чего состоит сетевой адрес (физический адрес/или указатель на устройство, адрес сети и адрес порта/гнезда). В каких пределах используются протоколы сетевого уровня? (в пределах интерсети).

Протоколы предыдущих уровней передавали пакеты между устройствами. На сетевом уровне информация передается уже между сервисами, работающими на этих устройствах. Как вы знаете, на одном компьютере может быть запущено несколько сервисов, поэтому важно чтобы информация была передана в точности на нужный сервис. Транспортный уровень передает информацию между конечными сервисами.

Транспортный уровень передает пакеты данных которые также называются сегментами. Основное предназначение транспортного уровня – скрыть инфраструктуру сети от протоколов более высоких уровней. При передаче информации с более высоких уровней на транспортный, данные формируются в сегменты. Транспортный уровень другого устройства принимает сегменты (как принимает?) и (что делает дальше?) обрабатывает сегменты и передает полученную информацию на более высокие уровни.

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

(Повторить три функции транспортного уровня).

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

Следующая таблица отражает темы, изучаемые на транспортном уровне OSI.

Уровень OSI Темы Методы

Transport Address/name resolution (Определение адресов и имен) Service-requestor-initiated (по запросу)

Service-provider-initiated

(по предложению)

Addressing Connection identifier (идентификатор подключения)

Transaction identifier (идентификатор транзакций)

Segment development (Сегментация) Division and combination (разделение и восстановление)

Connection services (Обслуживание соединений) Segment sequencing (упорядочивание сегментов)

Error control (контроль ошибок)

End-to-end flow control (конечный контроль потока)

Определение адресов и имен (address/name resolution)

Вы помните, чем определяется компьютер в компьютерной сети (физическим, сетевым адресом). Просто ли запомнить такой адрес (привести пример 195.151.147.4)?

Во многих компьютерных протоколах предусмотрена возможность присвоения какому-либо адресу обычного имени. (Привести пример – www.vspu.kirov.ru). Такое присвоение называется address-to-name resolution. Присвоение может производиться либо любым членом сети, либо специальным сервером – сервером директорий (directory server) или сервером имен (name server). (Что такое сервер?). Можно классифицировать два метода присвоения имен:

- по запросу (service requestor initiated method)

- по предложению (service provider initiated method)

Присвоение имен по запросу

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

Присвоение имен по предложению

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

Адресация

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

Для отслеживания переговоров используются два механизма. Через

- идентификатор подключения

- идентификатор транзакций

Идентификатор подключения (connection identifier, connection ID, CID)

Каждый разговор (подключение) имеет свой идентификатор. С помощью идентификатора серверы могут вести переговоры с более чем одним клиентом. Идентификатор представляет из себя число – номер разговора. Уровням выше транспортного передается этот идентификатор, что помогает им не владеть адресной информацией.

Пример: в канцелярии на каждого студента ведется личное дело. Приходит студент в канцелярию – достают личное дело с таким то номером и ведут записи.

Идентификатор транзакций (transaction identifier)

Транзакцией считается часть разговора, содержащая запрос и ответ. Разговор разделяется на несколько транзакций и каждая транзакция имеет свой идентификатор. Сервер и клиент отслеживают только транзакции, а не весь диалог в целом.

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

Сегментация

Некоторые данные, передаваемые сверху на транспортный уровень, могут превышать допустимый размер для сетевого уровня. В таком случае происходит сегментация данных. К тому же размеры данных могут быть и меньше допустимых.

На транспортном уровне происходит склеивание нескольких мелких пакетов, имеющих одинаковый адрес, в один составной сегмент. (см рис. каждый пакет имеет свой CID) Такой процесс называется агрегацией (aggregation).

После принятия составного сегмента получателем, воссоздаются оригинальные пакеты. При этом производится также и их упорядочивание.

Поэтому на транспортном уровне существует самое мощное обслуживание соединений. (на каких уровнях мы рассматривали обслуживание раньше?)

Обслуживание соединений

На транспортном уровне также производится обслуживание соединений. (На каких уровнях обеспечивалось обслуживание?). Если на канальном и сетевом уровне обслуживалось соединение устройств, то на транспортном уровне уже могут контролироваться такие ошибки как сбой какого-либо сервиса или клиента. Средства обслуживания соединений на транспортном уровне могут дополнять обслуживание на сетевом и канальном уровнях.

Существует три типа обслуживания соединений:

1. Обслуживание соединения без подтверждений и без установления связи (Unacknowledged connectionless service), отправитель и получатель передают кадры по каналу данных. Благодаря отсутствию управления потоком и контроля ошибок достигается высокая скорость.

2. Обслуживание соединения с установлением связи и подтверждениями (Connection-oriented service). Устанавливается логическое соединение перед началом передачи любого блока данных. Выполняются процедуры контроля ошибок и управления потоком данных с помощью подтверждений.

3. Обслуживание соединения с подтверждениями без установления связи (Acknowledged connectionless services). Компромиссный вариант, отправитель и получатель передают кадры по каналу данных, при этом используют подтверждения для управления потоком и контроля ошибок. При этом не происходит временных задержек на установление связи. Используется только при соединениях типа точка-точка (point-to-point).

(Вспомнить функции на других уровнях)

Транспортный уровень осуществляет следующие функции: упорядочивание сегментов, контроль ошибок и конечный контроль потока.

Упорядочивание сегментов (segment sequence)

Транспортный уровень присваивает номера сегментам перед тем как передать их на более низкие уровни. При приеме сегменты упорядочиваются в соответствие с их именами. Такой процесс также называется синхронизацией сегментов. (segment synchronization)

Контроль ошибок (error control)

При передаче сегменты могут как потеряться, так и застрять при передаче по интерсети. Особенно часто задержки происходят при дейтаграммной коммутации. К тому же, к приемнику могут поступить разные сегменты с одинаковыми порядковыми номерами. Для устранения таких ошибок используются следующие методы:

1. Один виртуальный канал на одно подключение.

2. Каждому сегменту присвоен свой уникальный номер.

3. У каждого сегмента существует время его жизни.

К тому же, транспортный уровень должен распознавать сегменты с испорченными данными (теми сегментами, которые прибыли на место назначения, но имеют ошибки в адресах или данных). Обычно проверка целостности сегментов происходит с помощью контрольной суммы CRC. Контроля ошибок транспортного уровня обычно называются конечным контролем ошибок (end-to-end error control). Если канальный уровень несет ответственность за правильную передачу информации между устройствами, сетевой – по интерсети, то транспортный уровень уже отвечает за передачу информации между службами и серверами.

Конечное управление потоком

Слово «конечное» означает, что опять же, транспортный уровень контролирует поток между сервером и клиентом – конечными точками связи в интерсети. Управление потоком реализуется точно такими же методами, что и на канальном уровне. Но если на канальном уровне контролировался поток между (какими?) двумя устройствами (device-to-device traffic), на сетевом уровне контролировался поток через независимые устройства в интерсети, транспортный управляет потоком между конечными звеньями, непосредственно участвующими в диалоге службами. Но кроме подтверждений (как положительных так и негативных), на транспортном уровне используются дополнительные негативные подтверждения: откат на n (go back n) или выборочный повтор (selective repeat). Как вы понимаете, такие подтверждения используются при переполнении буфера службы клиента.

При получении подтверждения «откат на n» отправитель перепосылает пакеты, начиная с указанного. Соответственно при выборочном повторе посылаются только те пакеты, которые были выбиты из потока.

Заключение

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

Задание

1. What is the basic purpose of the OSI Transport layer?

2. Describe the difference between the connection and transaction identifier addressing methods.

3. Which of the following is not a strategy for Transport layer error control?

a. Use only datagram packet switching.

b. Make the segment sequencing numbers unique.

c. Use only virtual circuits with only one virtual circuit allowed to any given session.

d. Use timeouts to drop packets that have been passed around the network too long.

4. Two different computer types can communicate if ______.

A. they conform to the OSI model

B. they are both using TCP/IP

C. they are using compatible protocol stacks

D. they are a Macintosh and a Unix workstation

5. Which three of the following statements regarding protocol stacks are true?

A. A given protocol stack can run on only one computer type.

B. Layers add headers to packets received from higher layers in the protocol stack.

C. A protocol stack is a hierarchical set of protocols.

D. Each layer provides services for the next highest layer.

6. Which of the following is an error-control mechanism?

A. Contention

B. Synchronous transmission

C. CRC

D. LLC

7. Which of the following techniques uses network bandwidth most efficiently?

A. Static window flow control

B. Guaranteed rate flow control

C. Dynamic rate flow control

D. Dynamic window flow control

8. Which of the following access control methods is probabilistic?

A. Polling

B. Contention

C. Token passing

D. Sliding window

9. Which network layer is concerned with address/name resolution?

A. Network

B. Transport

C. Session

D. Presentation

10. Which three of the following terms are related?

A. Port

B. Connection ID

C. Socket

D. Service address

11. Which two of the following are transport layer error-control strategies?

A. Using datagram packet switching

B. Utilizing unique segment sequencing numbers

C. Using time-outs to drop packets that have remained on the network too long

D. Using parity checking to detect errors

12. Which two of the following statements are true?

A. The data link layer deals with device-to-device traffic.

B. The network layer deals with traffic between upper-layer processes.

C. The transport layer deals with traffic between end services.

D. All of the above are true.

Ответы

1. The Transport layer is designed to hide the intricacies of the computer network structure from the upper-layer process.

2. Connection identifiers refer to a conversation, transaction identifiers refer to a smaller unit which is composed of a request and a response.

3. A

4. С

5. B,C,D

6. С

7. D

8. B

9. B

10. ACD

11. BC

12. AC

Сейчас читают