Remote direct memory access: Difference between revisions

Content deleted Content added
m Changed word into link
Sharpen category; cleanup.
Line 1:
'''Remote Direct Memory Access''' ('''RDMA''') is a concept wherebyenables two or more [[computer]]s communicateto viause [[Directeach Memoryothers' Access]] directly from the [[main memory]] ofvia one system to the main[[direct memory of anotheraccess]]. As there is no [[Central processing unit|CPU]], [[cache]], or [[context switchingswitch]]ing overhead needed to perform the transfer, and transfers can continue in parallel with other system operations,. thisThis is particularly useful in applications where high throughput, low latency networking is needed such as in massively parallel [[Linux]] clusters. The most common RDMA implementation is over [[InfiniBand]]. Although RDMA over InfiniBand is technologically superior to most alternatives, it faces an uncertain commercial future.
 
High [[Latency (engineering)|latencies can]] negatively impact thepotential [[bandwidth that can be achieved]]. When latencies are high, the[[Protocol (computing)|protocol]] overhead can overwhelmoverwhelms the work needed to deliver the data. High latencies can create a [[Bottleneck (network)|bottleneck]], which preventspreventing full utilization of the network, thus decreasing network bandwidth. Latency reduces overall [[Network performance|performance]] by limiting how fast an application can get the data it needs, and limitslimiting the overall size and scalability of a [[Computer cluster|cluster]] by limitingreducing the number of messages that can be effectively put on the wiretransfered.
 
Once a connection has been established, RDMA enables the movement of data from the memory of one server directly into the memory of another server without involving the [[operating system]] of either node. RDMA supports “zero[[zero-copy”copy]] networking by enabling the [[network adapter]] to transfer data directly to or from application memory, eliminating the need to copy data between application memory and the data buffers in the operating system. When an application performs an RDMA Read or Write request, the application data is delivered directly to the network, hencereducing latency isand reducedenabling andfast applications canmessage transfer messages faster.
 
RDMA’s widespread acceptance has beenis limited by the historical need to install a new and different networking infrastructure. However, newNew standards are enabling RDMA to be implemented usingenable [[Ethernet]] asRDMA implemention at the physical layer and [[Transmission Control Protocol|TCP]]/[[Internet Protocol|IP]] as the transport, thus combining all the performance and latency advantages of RDMA with thea low-cost and, standards-based benefit of Ethernet and TCP/IPsolution. The RDMA Consortium and the DAT Collaborative<ref>[http://www.datcollaborative.org/ DAT Collaborative website.]</ref> have played key roles in the development of RDMA protocols and [[Application programming interface|APIs]] for consideration by standards groups such as the [[Internet Engineering Task Force]] and the Interconnect Software Consortium.<ref>[http://www.opengroup.org/icsc/ MajorThe softwareInterconnect Software Consortium website.]</ref> Software vendors such as [[Oracle® Corporation]] are now supportingsupport these new APIs in their latest products, and new network adapters that implement RDMA over Ethernet are expected thisbeing yeardeveloped.
 
==Notes==
<div class="references-small">
<references/>
</div>
 
== External links ==
* [http://www.rdmaconsortium.org/home RDMA Consortium]
* [http://www.ammasso.com Ammasso RDMA Ethernet Adapter]
 
[[Category:Computer architecture]]
[[Category:Operating system technology]]
[[Category:ComputerLocal area networks]]