2012-04-06 2 views
3

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

+0

Какая операционная система? Я заметил, что у вас есть тэг 'tcp'. Является ли ваш вопрос только IP, или вы спрашиваете о других стеках протоколов? –

+0

О протоколе стеки выше сетевого уровня. –

ответ

7

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

Это не так. Модель OSI применяется к набору протоколов OSI, который является несуществующим и не работает нигде AFAICS. Однако TCP/IP имеет свою собственную модель, которая также включает транспортный уровень. Я буду предполагать, что вы имеете в виду в дальнейшем.

Является ли это частью операционной системы?

Да.

Выполняется ли он в процессе или потоке?

Нет, он работает как часть операционной системы.

Как это передать информацию до других приложений

через систему вызовов, например Berkeley Sockets API, WinSock и т. д.

или до других слоев?

Через внутренние API-интерфейсы ядра.

+0

Можете ли вы разместить ссылки или учебные пособия для этого? Было бы здорово, если бы вы могли также указать, где реализован сетевой уровень. Это адаптер Wi-Fi? Желаю, чтобы учебники отображали все это вместо той же старой блок-схемы абстрактных слоев. – testerjoe2

+0

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

0

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

Насколько это реализовано: хорошо, в основном в стеке TCP/IP, который обычно является частью ОС. Современное оборудование может реализовать по меньшей мере несколько бит и частей в аппаратном обеспечении (например, контрольная сумма TCP и управление потоком). Сетевой стек выгрузит те части операции TCP на оборудование через драйвер устройства.

+0

Давайте возьмем, например, библиотеку winsock C++, используя «send» с tcp для обмена информацией. Что-то происходит в этом методе для обеспечения правильной доставки переданного потока байтов. Меня это интересует. Где это делается? Я предполагаю на самом низком уровне, а не непосредственно в вызове метода. –

+1

@SotiriosDelimanolis: это, несомненно, не все внутри этой функции, но оно находится внутри уровня TCP (уровень IP более низкого уровня делает * не * гарантией гарантированной доставки).Однако на самом деле отслеживание вещей становится немного уродливым - например, у Microsoft есть инфраструктура фильтрации пакетов для поддержки брандмауэров и т. Д., Которые вторгаются (в значительной степени) во все это, поддерживая как режим ядра, так и фильтрацию пользовательского режима. –

+0

Этот ответ неверен. TCP/IP имеет транспортный уровень, который включает в себя как TCP, так и UDP, а в один прекрасный день - SCTP. – EJP

0

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

Логическая часть реализована в библиотеке. Взаимодействие с транспортной средой осуществляется через водителей.

+0

Обычно он доступен как компонент ядра, проявляющийся как драйвер. Не библиотека. – EJP

Смежные вопросы