Reliable Datagram Sockets (RDS) is a high-performance, low-latency, reliable, connectionless protocol for delivering datagrams. It is developed by Oracle Corporation.
It was included in the Linux kernel 2.6.30 which was released on 9 June 2009. The code was contributed by the OpenFabrics Alliance (OFA).
On October 19, 2010, VSR announced , a vulnerability within the Linux 2.6.30 kernel which could result in a local privilege escalation via the kernel's implementation of RDS. This was subsequently fixed in Linux 2.6.36.
On May 8, 2019, was published, regarding a race condition in the Linux RDS implementation that could lead to a use-after-free bug and possible arbitrary code execution. The bug has been fixed in Linux 5.0.8.
Header + RDS Header Size (bits) Name Description be64 h_sequence Sequence number be64 h_ack Sequence number of last received message be32 h_len Length of the message payload be16 h_sport Port on source node be16 h_dport Port on destination node 8 h_flags Described below 8 h_credit Credits given (used for credit-based flow control) 32 h_padding Padding for 64-bit struct alignment 16 h_csum 1's complement header checksum 128 h_exthdr Optional extension header space
See also Transmission Control Protocol Stream Control Transmission Protocol User Datagram Protocol UDP-Lite
References
External links Oss.oracle.com Oss.oracle.com https://oss.oracle.com/projects/rds/dist/documentation/rds-3.1-spec.html