Sockets Direct Protocol
Sockets Direct Protocol или SDP — это транспортно-агностический протокол для поддержания потоковых сокетов Удаленного доступа к памяти (RDMA) в "фабричной сети" (Fabric Network). SDP первоначально определялась Software Working Group (SWG) из Торговой ассоциации InfiniBand. Первоначально она разрабатывалась для InfiniBand[1]. Сейчас SDP поддерживается Альянсом OpenFabric.
SDP обозначает стандартный проводной протокол (Wire protocol) на фабрике RDMA для поддержания потоковых сокетов (SOCK_STREAM). SDP использует различные функции RDMA сети для передачи данных без копирования (Zero-copy). SDP это чистый проводной протокол на уровне специализации и не идет ни в один сокет API или его специфических реализаций.
Цель SDP - предоставлять RDMA-ускоренную альтернативу к TCP на IP. Целью является сделать это в такой форме, которая была бы прозрачна для приложения.
Solaris 10 и Solaris 11 Express включают поддержку SDP. Некоторые другие UNIX подобные операционные системы планируют включить поддержку SDP. Windows предлагает подсистему Winsock Direct, которая может использоваться и для поддержания SDP.[2]
Поддержка SDP также представлена в Выпуске JDK7 платформы Java для приложений, выпущенных для операционных систем Solaris и Linux.[3] База данных Oracle 11g поддерживает соединения через SDP.[4]
SDP оперирует только с потоковыми сокетами и, если он установлен в систему, обходит стек TCP/IP для потокового соединения между любой конечной точке в структуре RDMA. Все другие типы сокетов поддерживаются стеком IP в Linux системах и оперируют через стандартные интерфейсы IP. Стек IP не имеет зависимости на стек SDP, а стек SDP зависим от IP драйверов для локальных назначений IP и для разрешений IP адресов в идентификации конченой точки.
SDP используется в Telstra на её 3G платформе Next G для доставки потокового мобильного телевидения.
Против поддержки этого протокола в последних выпусках выступает OFED и ищет альтернативы. Вероятными предложениями выступят RSOCKET, WINSOCK и т.д.
Ссылки
- "ANNEX A4: SOCKETS DIRECT PROTOCOL (SDP)". In InfiniBand™ Architecture Release 1.2.1, p. 1215ff. PDF download from InfiniBand Trade Association Архивная копия от 21 декабря 2015 на Wayback Machine, accessed October 2011
- Winsock Direct: The Value of System Area Networks, accessed October 2011
- Understanding the Sockets Direct Protocol, Oracle Java Tutorials, 2011
- "Configuring SDP Protocol Support for Infiniband Network Communication to the Database Server". In Oracle® Database Net Services Administrator's Guide, accessed October 2011