UDP Versus OSC
(By Matt Wright,
revised 2/2/4)
UDP, the "User Datagram Protocol," is the Internet Protocol for sending
packets (a.k.a. "datagrams") between machines without establishing
a connection between the machines and without any expensive mechanism for detecting
lost packets and retrying them. UDP is used for streaming video and audio and
many other applications on the Internet.
OpenSound Control is an application-level protocol. OSC defines only the bit
format and interpretation of those bits; you could transmit OpenSound Control
messages via UDP, TCP, shared memory, compact disc, or any other digital protocol.
Because UDP can be used to transmit many kinds of data besides
OSC, and because
OSC can be transmitted by many kinds of networking technology besides UDP, our
implementation puts the UDP part and the OSC part in separate objects. People
have used the OTUDP object without the OpenSoundControl object to send and receive
data in formats other than OSC. (This requires writing a max external to translate
between Max data and binary data in the non-OSC format.) People have used OpenSoundControl
without UDP as a sort of super pack/unpack, to be able to pass entire OSC bundles
as single Max messages.
Nevertheless, the main use of both the OTUDP and OpenSoundControl Max objects
is to use them together, as shown by the help patches.
Back
|