Jump to content


Photo

Reliability of UDP for OSC

UDP networks

  • Please log in to reply
3 replies to this topic

#1 Neurogami

Neurogami

    Big Super Masta Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPip
  • 637 posts
  • Gender:Male
  • Location:Scottsdale AZ
  • Interests:Art, music, technology

Posted 29 October 2014 - 01:58

Came across this article today: http://openmymind.ne...reliable-Is-UDP "How unreliable is UDP?"

 

Thought it would be of interest to folks using OSC or generally running assorted controllers over networks.

 
 

 



#2 danoise

danoise

    Probably More God or Borg Than Human Member

  • Renoise Team
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6498 posts
  • Gender:Male
  • Location:Berlin
  • Interests:wildlife + urban trekking

Posted 29 October 2014 - 12:43

When going over WIFI/WLAN, UPD definitely drops packages every now and then, but when the connection is cabled, I have not come across any problems. 

In my own experience with the Renoise API, collecting multiple updates into "osc bundles" largely prevent this problem from occurring.

The duplex framework is using this feature for controllers that are always expected to be wireless, such as TouchOSC. 


Tracking with Stuff. API wishlist | Soundcloud


#3 mars.64

mars.64

    Super Advanced Member

  • Normal Members
  • PipPipPipPip
  • 176 posts
  • Gender:Male
  • Location:Denver, CO, USA
  • Interests:Jungle
    Linux
    Snowboarding

Posted 29 October 2014 - 18:23

My favorite thing about UDP jokes is that I don't care if you get them or not.


  • taktik, vV, dblue and 1 other like this

[cpu] Intel i5 6600k [os] W7 x64 [audio] Steinberg UR22
[radio] Jungletrain [archives] Rinse and Repeat Radio [tracks] Soundcloud

“See, the world is full of things more powerful than us. But if you know how to catch a ride, you can go places,”
― Neal Stephenson, Snow Crash


#4 vV

vV

    God's or Borg's Chief and Ruler of All Species

  • Moderator
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 16855 posts
  • Gender:Male
  • Location:Netherlands

Posted 29 October 2014 - 20:52

UDP indeed shouldn't be cared about. If you want some insurance, just design a protocol where feedback packs are returned to confirm receival, but it would defeat the purpose of the quick transmission.
Better is to base sending data upon the stream you get in return. If the return stream interrupts for a mere 300msecs, you could pause the sending or start doing some connection checks whether the other side is still "alive"

If you don't need an uninterrupted return stream, simply use a pulse signal that returns every somewhat msecs and do some handshake checks if the pulse halts.
But there are smart solutions to get a UDP connection somehow more trustworthy.


Vv....


cpu Intel Core i7-4820K @3.70GHz
chipset Intel X79 chipset
mem 32 Gb 2400Mhz
os Win 7 64-bit SP1, DirectX 11
audio ESI ESP1010e - > Driver rev:2.0.6.0
video nVidia Geforce GTX780 - > Driver rev:335.23


Renoise Official Manual