UDP, the shy brother of the two most used protocols on the internet (TCP? and UDP). UDP is defined in RFC 768.
UDP is a connectionless protocol with no arrival or integrity check. Basically you send out the packets in cyberspace and wish them luck on their journey when you use UDP.
UDP is often used for Games, Internet Conferencing, Streaming media and other "realtime" applications where if it doesn't arrive at once, there's no use for it to arrive at all. For example: What good is it to get a position of a player in a multiplayer game 3 minutes late? That player has probably already moved to the other side of the court. Not knowing his position at all is just as good as knowing his position 3 minutes ago. So there's no need to resend his (old) position over and over again.
Usually when you browse the Internet you use protocols like TCP/IP. Though there is no limitation on how many protocols you can stack on top of eachother. A popular way of getting IPv6? access is to tunnel that over IPv4?. With a tunnel like that you would be using TCP/IP(v6)/IP(v4) when browsing an IPv6 site. The same method can be used for NAT Traversal. Instead of using ESP over IP? directly you use ESP/UDP/IP. This way the NAT Gateway only sees the UDP/IP and mangles that. Your ESP packets will thus survive unharmed.