Java套接字直接协议

3

众所周知,套接字直接协议(SDP)提供对高性能网络连接的访问,例如InfiniBand提供的连接。

请问有没有人可以给我提供一个好的示例,说明如何使用Java的套接字直接协议(SDP)?


3
你在寻找示例代码吗?这个教程似乎是一个不错的开始:http://download.oracle.com/javase/tutorial/sdp/sockets/index.html - Dilum Ranatunga
1个回答

6
如果您正在运行最新版本的Solaris或OpenSolaris,我认为您已经准备好尝试一些东西了。
Linux需要使用libsdp库和OpenFabrics(OFED)提供的外部内核模块,似乎有强烈的愿望将这些模块融入Linux主线,但OFED团队似乎因某些问题而与内核开发人员产生矛盾。
在Debian Linux下有一个有用的设置指南,详细介绍了如何设置和编译OFED内核模块和libsdp库等。完成后,您可以按照该指南中的SDP部分进行操作,以使SDP正常工作并进行测试。

接下来,我认为只需要获取最新的JDK7快照(目前是M12版本),然后尝试一些东西。 设置您的配置文件并在SDP配置中指定地址之间创建连接,所有这些都通过与网络套接字相同的API完成,即旧IO使用Socket,NIO(甚至是JDK7中的AIO)使用SocketChannel。据我所见,一旦您按照设置指南进行设置并配置了将使用SDP的地址,JVM将在提供SDP映射范围内的地址时使用基于SDP的Sockets / SocketChannels。因此,使用套接字的现有网络代码应该能够透明地使用SDP连接,只是速度非常快,延迟非常小。

据我所知,Windows用户暂时无法使用。

Alan Bateman的SDP博客条目(Oracle JDK SDP主管)


1
SDP已被弃用,OFED不再支持SDP。因此,Java的SDP也无法使用。有什么解决方案吗? - RoboAlex

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接