One key difference between Kafka and reactive stream is the view of infrastructure cost.
Kafka will buffer all data while reactive stream will use back pressure to coordinate sender and receiver. RSocket just extends reactive stream to network protocol level. Basically it is TCP sliding window at layer 6 end to end.
https://tech.trivago.com/post/2021-03-16-java-reactive-programming-real-world/