Support RSocket
Skip to main content

Implementations

Mandatory Core Protocol Features

Drivers are assumed to implement all core features defined in the Protocol document. The core scope includes the following (and is not limited to) :

  • Metadata and Payload frames
  • All 4 interaction models : Fire-and-forget, request/response, requestStream, requestChannel
  • Request-N frame : application level flow control
  • Fragmentation/Reassembly : Drivers are assumed to fully encode/decode the expected user data type
  • Keep-Alive frame : A responder receiving a keep-alive frame must reply a keep-alive frame
  • Error Frame : in order to fully support connection lifecycle
  • Handling the unexpected : If Resumption, Leasing or an extension is not supported, rejected error frames must be used

Supported Core Protocol Features Matrix

DriverTransport(s)VersionCore SupportResumptionLeasingRPC
rsocket-java
  • aeron (UDP)
  • akka
  • reactor-netty
    (TCP, websocket)
1.0xxx
rsocket-js
  • nodejs net (TCP)
  • plain (websocket)
1.0xxx
rsocket-net
  • System.Net
    (TCP, websocket)
1.0xx
rsocket-cpp
  • Folly (TCP)
1.0xx
rsocket-go
  • Go NET (TCP)
1.0xx
rsocket-kotlin
  • ktor multiplatform
    (TCP, websocket)
1.0x
rsocket-py
  • asyncio (TCP, websocket)
1.0xx
rsocket-swift
  • SwiftNIO (TCP, WebSocket)
  • Network.framework through NIO Transport Services
0.0.1
rsocket-rust
  • Tokio (TCP, WebSocket)
0.1x