Questions tagged [rudp]

In computer networking, the Reliable User Datagram Protocol (RUDP) is a transport layer protocol designed at Bell Labs for the Plan 9 operating system. It aims to provide a solution where UDP is too primitive because guaranteed-order packet delivery is desirable, but TCP adds too much complexity/overhead. In order for RUDP to gain higher Quality of Service, RUDP implements features that are similar to TCP with less overhead.

In order to gain ensure quality, it extends UDP by adding the following additional features:

Acknowledgment of received packets
Windowing and flow control
Retransmission of lost packets
Overbuffering (Faster than real-time streaming)

RUDP is not currently a formal standard, however it was described in an IETF internet-draft in 1999. It has not been proposed for standardization.

17 questions
11
votes
4 answers

TCP vs Reliable UDP

I am writing an application where the client side will be uploading data to the server through a wireless link. The connection should be very reliable.The link is expected to break many times and there will be many clients connected to the…
Blacklabel
  • 826
  • 1
  • 10
  • 19
9
votes
4 answers

Why do game developers avoid TCP and make UDP reliable in the application level?

Many game developers choose to a make UDP reliable in the application level. Isn't that what TCP is made for? I made an API that enables Client-Server communication using UDP and TCP packets. Should I add Reliable UDP to the list? And why? Is there…
None
  • 609
  • 7
  • 22
6
votes
1 answer

Reliable UDP Protocol Implementation in Java - Why does this happen?

I'm currently using a Java implementation of the Reliable UDP protocol, found here. The project has absolutely no tutorials so I have found it really hard to identify problems. I have set up a client and server. The server runs on localhost:1234…
liamzebedee
  • 14,010
  • 21
  • 72
  • 118
3
votes
2 answers

websockets protocols?

I couldn't find this online so I thought I'd ask here. What protocols can be used by websockets currently? (in chrome) Also does chrome or any other browser plan to support RUDP protocol for websockets eventually? Thanks in advance!
resopollution
  • 19,600
  • 10
  • 40
  • 49
3
votes
1 answer

Broadcasting in RUDP, UDT, LWIP, DCCP

Out of the protocols Reliable UDP (RUDP), UDT, LWIP and DCCP, which protocols can support BROADCAST mechanism? Which is more reliable and have congestion control?
Rohit Singhal
  • 429
  • 1
  • 3
  • 17
2
votes
0 answers

RUDP implementation other than bell labs implementation?

Is there any other implementation for Reliable-UDP, other than the implementation of Bell labs? I need to develop a streaming application in which I don't want to use RTP or RTCP. I want two functionalities In-order delivery of Packets Resending of…
Leoz
  • 41
  • 3
2
votes
1 answer

How to create a simple Server Client Application Using RUDP in Java?

I was working on a simple application to transfer files between two machines using UDP, but that turned out to be lossy and unreliable, so while searching the Internet I found this project named Simple Reliable UDP here, but they don't have any…
DeepSidhu1313
  • 805
  • 15
  • 31
1
vote
0 answers

change FTP server's transport protocol (pyftpdlib)

I'm trying to implement a FTP server in Python and have the ability to manipulate the transport protocol that the server is using. I have tried to implement the FTP server using pyftpdlib library, and I couldn't find (in the docs) an easy way to…
1
vote
2 answers

Making UDP a connection-oriented protocol?

I made an online game that uses the UDP protocol to communicate between the clients and a server. However, since UDP is connection-less, I can't detect if a client closed the game or an error occurred in the network. Therefore, I need to make UDP a…
None
  • 609
  • 7
  • 22
1
vote
1 answer

TCP, UDP, SCTP, RUDP or RAW?

I'm currently working on a networking library, but I don't know which way I should create it. The library should be designed to be used with games. Both reliable and unreliable packets are needed. Should I use "TCP and UDP", "UDP and SCTP", "UDP and…
None
  • 609
  • 7
  • 22
1
vote
2 answers

Is there a way to callback a function without creating a new goroutine?

I am trying to implement Reliable-UDP in golang. One of the basic features I need to implement is packet-retransmission. The naive method is as follows: send a packet; create a timer (also will create a new goroutine) to check if ACK is received…
liudanking
  • 121
  • 1
  • 7
0
votes
0 answers

How to implement reliable UDP in Python using socket?

I'm working on a project where I need to implement reliable UDP in Python using socket. The goal is to create a class similar to socket.socket where the user can use methods such as connect(addr), accept(), close(), send(data), and recv(size) just…
anonymous
  • 19
  • 1
  • 3
0
votes
1 answer

RUDP Packets are not read from inputstream

I am using the RUDP protocol to send and receive packets using this very useful java library wich implements the RUDP protocol in java. The design of the library is very similar to TCP. It comparatively uses a ReliableServerSocket as a ServerSocket…
duh ikal
  • 161
  • 1
  • 8
0
votes
2 answers

Checksum checking in UDP using UDP socket

Is it possible for a UDP socket (SOCK_DGRAM) to access checksum field from an incoming UDP packet and check for errors? I know that we can do that using raw sockets (SOCK_RAW), but I want to know whether we can do it using datagram sockets. If so,…
0
votes
1 answer

Is there Reliable UDP implementation for C++ with python asyncio bindings?

I need send and receive reliable datagrams between peers (by using RPC). Every peer is service in service-oriented architecture. But any peer may be written on Python or C++ (Python services with asyncio and C++ Unreal Engine 4 instances - clients…
Artem Selivanov
  • 1,867
  • 1
  • 27
  • 45
1
2