Understanding the Sockets Direct Protocol
Trail: Sockets Direct Protocol
Lesson: Understanding the Sockets Direct Protocol

This section is being updated to reflect features and conventions of the upcoming release, JDK7. You can download the current JDK7 Snapshot from java.net. We've published this preliminary version so you can get the most current information now, and so you can tell us about errors, omissions, or improvements we can make to this tutorial.

For high performance computing environments, the ability to move data across a network quickly and efficiently is a must. Such networks are typically described as requiring high throughput and low latency: high throughput refers to an environment that can deliver a large amount of processing capacity over a long period of time; low latency refers to minimal delay between processing input and providing output, such as you would expect in a real-time application.

In these environments, conventional networking using socket streams can bottleneck when it comes to moving data. Introduced in 1999 by the InfiniBand Trade Association, InfiniBand (IB) was created to address the needs for high performance computing. One of the most important features of IB is Remote Direct Memory Access (RDMA). RDMA allows moving data directly from the memory one one computer to another, bypassing the operating system of both and resulting in significant performance gains.

The Sockets Direct Protocol (SDP) is a networking protocol developed to support stream connections over InfiniBand fabric. SDP support was introduced to Java SE in JDK7 for applications deployed on Solaris. Solaris has supported SDP and InfiniBand since S10u5.

Previous page: Table of Contents
Next page: Overview