Транспортный уровень - Transport layer - Wikipedia
Эта статья нужны дополнительные цитаты для проверка.Октябрь 2015 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Набор интернет-протоколов |
---|
Уровень приложения |
Транспортный уровень |
Интернет-уровень |
Связующий слой |
В компьютерная сеть, то транспортный уровень концептуальное разделение методов в многоуровневая архитектура протоколов в сетевом стеке в Набор интернет-протоколов и Модель OSI. Протоколы этого уровня предоставляют приложениям услуги связи между хостами.[1]:§1.1.3 Он предоставляет такие услуги, как связь с установлением соединения, надежность, управление потоком, и мультиплексирование.
Подробности реализации и семантики транспортного уровня Набор интернет-протоколов,[1] что является основой Интернет, а Модель OSI общих сетей разные. Все протоколы, используемые сегодня на этом уровне Интернета, возникли при разработке TCP / IP. В модели OSI транспортный уровень часто называют Слой 4, или же L4,[2] в то время как пронумерованные уровни не используются в TCP / IP.
Самый известный транспортный протокол из набора Интернет-протоколов - это Протокол управления передачей (TCP). Он используется для передачи с установлением соединения, тогда как передача без установления соединения Протокол пользовательских датаграмм (UDP) используется для более простой передачи сообщений. TCP - более сложный протокол из-за его современный дизайн включая услуги надежной передачи и потока данных. Вместе TCP и UDP составляют практически весь трафик в Интернете и являются единственными протоколами, реализованными во всех основных операционных системах. Дополнительные протоколы транспортного уровня, которые были определены и реализованы, включают Протокол управления перегрузкой дейтаграмм (DCCP) и Протокол передачи управления потоком (SCTP).
Модель OSI к слой |
---|
Услуги
Услуги транспортного уровня передаются в приложение через программный интерфейс к протоколам транспортного уровня. Услуги могут включать в себя следующие функции:
- Связь с установлением соединения: Обычно приложению проще интерпретировать соединение как поток данных вместо того, чтобы иметь дело с базовыми моделями без подключения, такими как дейтаграмма модель Протокол пользовательских датаграмм (UDP) и протокол Интернета (IP).
- Доставка в том же порядке: сетевой уровень обычно не гарантирует, что пакеты данных будут доставлены в том же порядке, в котором они были отправлены, но часто это желательная функция. Обычно это делается с помощью нумерации сегментов, когда получатель передает их приложению по порядку. Это может вызвать блокировка передней линии.
- Надежность: Пакеты могут быть потеряны во время транспортировки из-за перегрузка сети и ошибки. С помощью код обнаружения ошибки, например контрольная сумма, транспортный протокол может проверить, не повреждены ли данные, и проверить правильность получения, отправив ACK или же NACK сообщение отправителю. Автоматический повторный запрос схемы могут использоваться для повторной передачи потерянных или поврежденных данных.
- Управление потоком: Скорость передачи данных между двумя узлами иногда необходимо контролировать, чтобы не дать быстрому отправителю передать больше данных, чем может поддерживать принимающий буфер данных, вызывая переполнение буфера. Это также можно использовать для повышения эффективности за счет уменьшения опустошение буфера.
- Предотвращение перегрузки: Контроль перегрузки может контролировать вход трафика в телекоммуникационную сеть, чтобы избежать застойный коллапс пытаясь избежать превышения лимита на любую обработку или связь возможности промежуточных узлов и сетей и принятие мер по сокращению ресурсов, таких как снижение скорости отправки пакеты. Например, автоматические повторные запросы может держать сеть в перегруженном состоянии; этой ситуации можно избежать, добавив предотвращение перегрузки к управлению потоком, включая медленный старт. Это сохраняет потребление полосы пропускания на низком уровне в начале передачи или после повторной передачи пакета.
- Мультиплексирование: Порты может предоставить несколько конечных точек на одном узле. Например, имя на почтовом адресе представляет собой своего рода мультиплексирование и различает разных получателей одного и того же места. Каждое компьютерное приложение будет прослушивать информацию о своих портах, что позволяет использовать более одного сетевая служба в то же время. Это часть транспортного уровня в Модель TCP / IP, но из уровень сеанса в модели OSI.
Анализ
Транспортный уровень отвечает за доставку данных соответствующему прикладному процессу на хост-компьютерах. Это включает статистическое мультиплексирование данных из различных прикладных процессов, то есть формирование сегментов данных и добавление номеров портов источника и назначения в заголовок каждого сегмента данных транспортного уровня. Вместе с IP-адресом источника и назначения номера портов составляют сетевой разъем, то есть идентификационный адрес межпроцессного взаимодействия. В модели OSI эта функция поддерживается уровень сеанса.
Некоторые протоколы транспортного уровня, например TCP, но не UDP, поддерживают виртуальные схемы, т.е. предоставить связь с установлением соединения по базовому пакетно-ориентированному дейтаграмма сеть. Байт-поток доставляется, скрывая связь в пакетном режиме для процессов приложения. Это включает в себя установление соединения, разделение потока данных на пакеты, называемые сегментами, нумерацию сегментов и переупорядочивание данных вне очереди.
Наконец, некоторые протоколы транспортного уровня, например TCP, но не UDP, обеспечивают надежную сквозную связь, т.е. восстановление после ошибки посредством код обнаружения ошибок и автоматический повторный запрос (ARQ) протокол. Протокол ARQ также обеспечивает управление потоком, который можно сочетать с предотвращение перегрузки.
UDP - очень простой протокол, не обеспечивающий виртуальных каналов или надежной связи, делегируя эти функции заявление программа. Пакеты UDP называются дейтаграммы, а не сегменты.
TCP используется для многих протоколов, включая HTTP просмотр веб-страниц и передача электронной почты. UDP может использоваться для многоадресная передача и вещание, поскольку повторная передача невозможна для большого количества хостов. UDP обычно дает больше пропускная способность и более короткое время ожидания, и поэтому часто используется для мультимедийной связи в реальном времени, где иногда может быть допущена потеря пакетов, например, IP-TV и IP-телефония, а также для компьютерных онлайн-игр.
Многие сети, не основанные на IP, например X.25, Ретрансляция кадров и Банкомат, реализовать связь с установлением соединения на уровне сети или канала передачи данных, а не на транспортном уровне. В X.25 в модемах телефонных сетей и в системах беспроводной связи надежная связь между узлами реализована на более низких уровнях протокола.
Спецификация протокола транспортного уровня в режиме соединения OSI определяет пять классов транспортных протоколов: TP0, обеспечивая наименьшее устранение ошибок, чтобы TP4, который разработан для менее надежных сетей.
Протоколы
В этом списке показаны некоторые протоколы, которые обычно размещаются на транспортных уровнях Набор интернет-протоколов, то Набор протоколов OSI, NetWare с IPX / SPX, AppleTalk, и Fibre Channel.
- АТФ, Протокол транзакций AppleTalk
- CUDP, Циклический UDP[3]
- DCCP, Протокол управления перегрузкой дейтаграмм
- FCP, Протокол Fibre Channel
- Иллинойс, Протокол IL
- MPTCP, Многопутевый TCP
- RDP, Надежный протокол передачи данных
- RUDP, Надежный протокол дейтаграмм пользователя
- SCTP, Протокол передачи управления потоком
- SPX, Последовательный обмен пакетами
- SST, Структурированный потоковый транспорт
- TCP, Протокол управления передачей
- UDP, Протокол пользовательских датаграмм
- UDP-Lite
- µTP, Протокол микротранспорта
Сравнение протоколов транспортного уровня
Особенность | UDP | UDP-Lite | TCP | Многопутевый TCP | SCTP | DCCP | RUDP[а] |
---|---|---|---|---|---|---|---|
Размер заголовка пакета | 8 байт | 8 байт | 20–60 байт | 50–90 байт | 12 байт[b] | 12 или 16 байт | 14+ байт |
Типичные накладные расходы на пакет данных | 8 байт | 8 байт | 20 байт | ?? байты | 44–48 + байт[c] | 12 или 16 байт | 14 байтов |
Пакетный объект транспортного уровня | Дейтаграмма | Дейтаграмма | Сегмент | Сегмент | Дейтаграмма | Дейтаграмма | Дейтаграмма |
Ориентированный на соединение | Нет | Нет | да | да | да | да | да |
Надежный транспорт | Нет | Нет | да | да | да | Нет | да |
Ненадежный транспорт | да | да | Нет | Нет | да | да | да |
Сохранить границу сообщения | да | да | Нет | Нет | да | да | да |
Доставка | Неупорядоченный | Неупорядоченный | Упорядоченный | Упорядоченный | Заказанный / Неупорядоченный | Неупорядоченный | Неупорядоченный |
Данные контрольная сумма | Необязательный | да | да | да | да | да | Необязательный |
Размер контрольной суммы | 16 бит | 16 бит | 16 бит | 16 бит | 32 бит | 16 бит | 16 бит |
Частичное контрольная сумма | Нет | да | Нет | Нет | Нет | да | Нет |
Дорожка MTU | Нет | Нет | да | да | да | да | ? |
Управление потоком | Нет | Нет | да | да | да | Нет | да |
Контроль перегрузки | Нет | Нет | да | да | да | да | ? |
Явное уведомление о перегрузке | Нет | Нет | да | да | да | да | ? |
Несколько потоки | Нет | Нет | Нет | Нет | да | Нет | Нет |
Множественное наведение | Нет | Нет | Нет | да | да | Нет | Нет |
Пакетирование / Нэгл | Нет | Нет | да | да | да | Нет | ? |
- ^ RUDP официально не стандартизирован. С 1999 года не было никаких разработок, связанных со стандартами.
- ^ Исключая заголовки блоков данных и служебные данные. Без встроенных фрагментов пакет SCTP по существу бесполезен.
- ^ Подсчитывается следующим образом: 12 байтов заголовка SCTP + 16 байтов заголовка блока DATA или 20 байтов заголовка блока I-DATA + 16+ байтов блока SACK. Дополнительные фрагменты, не относящиеся к данным (например, AUTH) и / или заголовки для дополнительных фрагментов данных, которые могут легко увеличить накладные расходы на 50 байтов или более, не учитываемые.
Сравнение транспортных протоколов OSI
ИСО / МЭК 8073 / Рекомендация МСЭ-Т X.224, «Информационные технологии - Взаимодействие открытых систем - Протокол для предоставления транспортных услуг в режиме установления соединения», определяет пять классов транспортных протоколов в режиме установления соединения, обозначенных от класса 0 (TP0) до класса 4. (TP4). Класс 0 не содержит средства восстановления после ошибок и был разработан для использования на сетевых уровнях, которые обеспечивают безошибочные соединения. Класс 4 наиболее близок к TCP, хотя TCP содержит такие функции, как плавное закрытие, которое OSI назначает сеансовому уровню. Все классы протоколов OSI в режиме соединения обеспечивают ускоренную передачу данных и сохранение границ записей. Подробные характеристики классов приведены в следующей таблице:[4]
Служба | TP0 | TP1 | TP2 | TP3 | TP4 |
---|---|---|---|---|---|
Сеть с установлением соединения | да | да | да | да | да |
Сеть без установления соединения | Нет | Нет | Нет | Нет | да |
Конкатенация и разделение | Нет | да | да | да | да |
Сегментация и повторная сборка | да | да | да | да | да |
Восстановление после ошибки | Нет | да | Нет | да | да |
Повторно установить соединение (если слишком много PDU не признаны) | Нет | да | Нет | да | Нет |
Мультиплексирование и демультиплексирование по одному виртуальный канал | Нет | Нет | да | да | да |
Явное управление потоком | Нет | Нет | да | да | да |
Повторная передача по таймауту | Нет | Нет | Нет | Нет | да |
Надежное транспортное обслуживание | Нет | да | Нет | да | да |
Существует также транспортный протокол без установления соединения, указанный в Рекомендации ISO / IEC 8602 / ITU-T X.234.[5]
Рекомендации
- ^ а б Р. Брейден, изд. (Октябрь 1989 г.). Требования к Интернет-хостам - Уровни связи. Дои:10.17487 / RFC1122. RFC 1122.
- ^ «Представляем Internet Protocol Suite». Руководство системного администратора, том 3.
- ^ Брайан С. Смит, Cyclic-UDP: протокол Best-Effort с приоритетом (PDF), получено 23 февраля, 2020
- ^ «Рекомендация ITU-T X.224 (11/1995) ISO / IEC 8073». Itu.int. Получено 17 января, 2017.
- ^ «Рекомендация ITU-T X.234 (07/1994) ISO / IEC 8602». Itu.int. Получено 17 января, 2017.