tftp
UDP can be used in many applications for transport, not just a single application. UDP is commonly used when speed is more important than reliability in the transfer.
Because the internet is not homogeneous. Some segments of the internet are ethernet, some are SONET, ect. Some datalink layer protocols are more suited for one application than another. What links all these segments is the Network protocol. The network protocol used on the internet is IP.
UDP is a transport protocol that does not check for errors. One would use it when speed of the transport is desired, not quality or reliability. If you were streaming video or using voice, then getting the packets to the destination quickly is more important than making sure each sound gets to the receiver.
Protocol architecture or TCP/IP protocol architecture also referred to as the TCP/IP protocol suite is a simple fundamental underlying design which obeys a set of rules and conventions in which communication tasks are to be performed. The communication tasks of the protocol architecture are organized into five relatively independent layers: * Physical * Network Access Layer * Internet layer * Host-to-host, or transport layer * Application Layer In my research to this question it was interested to find out that there were some who consider the protocol architecture to be comprised of only four relative independent layers which are: * Network Access Layer * Internet layer * Host-to-host, or transport layer * Application Layer More information for each layer can be found at: http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/cnet/cnbb_tcp_kscb.mspx?mfr=true http://www.unix.org.ua/orelly/networking/tcpip/ch01_03.htm
UDP as a transport protocol is used in situations where speed is more important than reliability in the delivery of the packets. Therefore, any application that requires speed as its primary delivery could use UDP. This type of delivery is not checked for consistency or reliability, so you wouldn't use it if the delivery has to be reliable.
Winsock provides simultaneous access to multiple transport protocols. Winsock is version-agnostic and supports multiple versions of a transport protocol, such as TCP/IPv4 and TCP/IPv6. Winsock defines a standard service provider interface (SPI) between Ws2.dll and the protocol stacks. In this way, a single Ws2.dll can simultaneously access multiple stacks from different vendors. Because a single Ws2.dll must work across all stacks, you do not need to supply your own implementation of Ws2.dll. A transport protocol must be properly installed on the system and registered with Winsock to be accessible to an application. Ws2.dll exports a set of functions that facilitate the registration process enabling you to create a new provider and remove an existing one. When registering, your installation script must supply one or more completed WSAPROTOCOL_INFO structures containing a complete set of information about the protocol. Any transport stack installed in this manner is referred to as a "Winsock service provider". For more information about how to install a transport stack, see Winsock Service Provider Interface (SPI).
The User Datagram Protocol (UDP) is suited for streaming video over IP due to its low overhead and lack of acknowledgments. Unlike Transmission Control Protocol (TCP), UDP allows for faster data transmission by sending packets without ensuring their delivery or order, which is acceptable in video streaming where some data loss is tolerable. This results in a smoother and more continuous playback experience.
.What is the difference between FTP and TFTP?
There are actually more than two protocols associated with Layer 4. According to Wikipedia, there are Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Stream Control Transport Protocol (SCTP), Datagram Congestion Control Protocol (DCCP), and Internetwork Packet Exchange/Sequenced Packet Exchange (IPX/SPX).
The Protocol field in the IPv4 header, which specifies the transport layer protocol used (like TCP or UDP), is not present in the fixed IPv6 header because IPv6 uses a more flexible approach with extension headers. Instead of a single Protocol field, IPv6 allows for multiple extension headers to be used, which can carry information about the transport protocol and other features. This design improves efficiency and scalability, enabling better handling of various protocols and options without cluttering the main header.
There is an optional checksum field that can be used by an UDP application, but in general a connectionless protocol does not use re-transmits of packets. It is assumed that this type of transport is sufficient even with lost packets. It is typically used where speed is more important than quality.
The transport layer is typically handled by processes in the host computer operational system, and not by routers and switches. The transport layer usually turns the unreliable and very basic service provided by the Network layer into a more powerful one. In the TCP/IP model, the transport layer is responsible for delivering data to the appropriate application process on the host computers. This involves statistical multiplexing of data from different application processes, i.e. forming data packets, and adding source and destination port numbers in the header of each transport layer data packet. Some transport layer protocols, for example TCP but not UDP, support virtual circuits, i.e. provide connection oriented communication over an underlying packet oriented datagram network. A byte-stream is delivered while hiding the packet mode communication for the application processes. Finally, some transport layer protocols, for example TCP but not UDP, provides end-to-end reliable communication, i.e. error recovery by means of error detecting code and automatic repeat request (ARQ) protocol. The ARQ protocol also provides flow control, which may be combined with congestion avoidance.