Протокол Sockets Direct ( SDP ) - это транспортно-независимый протокол для поддержки потоковых сокетов через сетевые структуры удаленного прямого доступа к памяти (RDMA). SDP изначально был определен Рабочей группой по программному обеспечению (SWG) торговой ассоциации InfiniBand . Первоначально разработанный для InfiniBand (IB) [1] SDP в настоящее время поддерживается OpenFabrics Alliance .
SDP определяет стандартный проводной протокол через структуру RDMA для поддержки потоковых сокетов (SOCK_STREAM). SDP использует различные сетевые функции RDMA для высокопроизводительной передачи данных с нулевым копированием . SDP - это чистая спецификация уровня проводного протокола и не входит в какие-либо особенности API сокетов или реализации.
Цель протокола Sockets Direct - предоставить альтернативу протоколу TCP на IP с ускорением RDMA . Цель состоит в том, чтобы сделать это прозрачным для приложения способом.
Solaris 10 и Solaris 11 Express включают поддержку SDP. Некоторые другие варианты операционной системы Unix планируют включить поддержку протокола Sockets Direct. Windows предлагает подсистему Winsock Direct, которую можно использовать для поддержки SDP. [2]
Поддержка SDP была представлена в выпуске JDK 7 платформы Java, Standard Edition (июль 2011 г.) для приложений, развернутых в операционных системах Solaris и Linux (OFED 1.4.2 и 1.5). [3] Oracle Database 11g поддерживает соединение через SDP. [4]
Протокол Sockets Direct работает только с потоковыми сокетами и, если он установлен в системе, обходит резидентный TCP-стек ОС для потоковых соединений между любыми конечными точками в структуре RDMA. Все другие типы сокетов (такие как дейтаграммы, необработанные, пакетные и т. Д.) Поддерживаются стеком IP Linux и работают через стандартные IP-интерфейсы (т. Е. IPoIB на фабриках InfiniBand). Стек IP не зависит от стека SDP; однако стек SDP зависит от драйверов IP для локальных назначений IP и разрешения IP-адресов для идентификации конечных точек.
SDP используется австралийской телекоммуникационной компанией Telstra на своей платформе 3G Next G для доставки потокового мобильного телевидения.
Этот протокол объявлен устаревшим [5] или не поддерживается OFED в последних выпусках, поэтому ищите альтернативы. Прогнозные предложения будут Rsocket , Winsock и т.д.
Рекомендации
- ^ «ПРИЛОЖЕНИЕ A4: ПРЯМОЙ ПРОТОКОЛ РАЗЪЕМОВ (SDP)». В InfiniBand ™ Architecture Release 1.2.1 , стр. 1215ff. Загрузить PDF-файл из InfiniBand Trade Association , по состоянию на октябрь 2011 г.
- ^ Winsock Direct: The Value of System Area Networks , по состоянию на октябрь 2011 г.
- ^ Понимание протокола Sockets Direct , Oracle Java Tutorials, 2011
- ^ «Настройка поддержки протокола SDP для связи по сети Infiniband с сервером базы данных». В Руководстве администратора Oracle® Database Net Services, по состоянию на октябрь 2011 г.
- ^ Ципорет Корен, «[ewg] Статус SDP? (И патч ib_sdp для Linux-3.4.x)», 14 апреля 2012 г . : «SDP устарела? - устарела»