udp user datagram protocol n.
Skip this Video
Download Presentation
UDP: User Datagram Protocol

Loading in 2 Seconds...

play fullscreen
1 / 17

UDP: User Datagram Protocol - PowerPoint PPT Presentation

  • Uploaded on

UDP: User Datagram Protocol. Chapter 12. Introduction. Multiple application programs can execute simultaneously on a given computer and can send and receive datagrams independently of each other Each executing program is called a process or a task (thus the term multitasking)

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'UDP: User Datagram Protocol' - liana

Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
  • Multiple application programs can execute simultaneously on a given computer and can send and receive datagrams independently of each other
  • Each executing program is called a process or a task (thus the term multitasking)
  • Processes are created and destroyed dynamically
  • Then how can we identify a process on a remote machine as our destination?
  • Each machine has a set of abstract destination points called protocol ports, identified by a positive integer
  • Most operating systems provide synchronous access to ports
    • the process is blocked until data arrives for it
    • ports are buffered so that data that arrives before a process is ready for it will not be lost
  • To communicate with a process, a sender needs to know the IP @ and the protocol port number
  • Each message carries the number of the destination port on the destination machine, and the source port on the source machine
user datagram protocol
User Datagram Protocol
  • UDP provides the primary mechanism that application programs use to send datagrams to other application programs
  • UDP uses the underlying IP to transport a message from one machine to another
  • UDP is unreliable
    • UDP does not use acknowledgements, does not order incoming messages, does not provide flow control
    • UDP messages can be lost, duplicated, arrive out of order, or arrive to fast for the receiver to handle
user datagram protocol1
User Datagram Protocol
  • UDP provides the ability to distinguish among multiple destinations in a host computer
  • Application programs that use UDP accept responsibility for reliability
  • Unfortunately, many applications that rely on UDP have not been thoroughly tested in a large TCP/IP environment and may fail
udp message format
UDP Message Format
  • A UDP message is called a user datagram
  • It consists of two parts:
    • UDP header
      • source port (16 bits) - could be zero if not used
      • destination port (16 bits)
      • UDP message length (16 bits) - header and data
      • UDP checksum (16 bits) - optional for low overhead, guarantees that data arrives correctly
    • UDP data
udp pseudo header
UDP Pseudo-Header
  • Verifies that UDP datagram reaches its correct destination
    • specific machine and specific protocol port
  • UDP on the sending machine computes a checksum that covers the destination IP address and the UDP datagram
  • Since the IP is a layer “below” this, we must copy the IP addresses into a pseudo-header
  • This header is prepended to the UDP datagram
udp pseudo header1
UDP Pseudo-Header
  • The information in the pseudo-header is used in calculating the checksum at the sender
  • But the pseudo-header is not transmitted with the UDP datagram
  • At the receiver, the checksum is calculated again, this time using the source and destination IP addresses that were in the IP header that carried the UDP message
udp pseudo header2
UDP Pseudo-Header
  • To verify the checksum, the receiver extracts the fields (those shown in Figure 12.2) from the IP header, assemble them in the correct format and recompute the checksum
  • If the checksums agree, the message has reached the correct port on the correct destination machine
  • UDP prepends a header to the data that a user sends and passes it to IP
  • IP prepends a header to what it receives from UDP
  • The network interface layer embeds the datagram in a frame before sending it from one machine to another - see Figure 12.4
  • The format of the frame depends on the underlying network technology
  • On arrival, each layer removes a header...
division of duties
Division of Duties
  • IP transfers data between a pair of hosts on an internet
    • only the IP header identifies source and destination hosts
  • UDP differentiates between multiple sources (or destinations) within one host
    • only the UDP header identifies the source or destination ports
another approach to udp checksum
Another Approach to UDP Checksum
  • Let UDP encapsulate the UDP datagram in an IP datagram, get addresses from IP, compute the UDP checksum and pass it on to IP to fill in the rest
multiplexing demultiplexing and ports
Multiplexing, Demultiplexing and Ports
  • Think of a UDP port as a queue
  • UDP checks to see that the destination port number matches a port that is currently in use
    • If not found, an ICMP port unreachable message is sent and the datagram is discarded
    • If found, the new datagram is enqueued at the port of the appropriate application program
udp port numbers
UDP Port Numbers
  • Computers need to agree on port numbers and their meaning
  • Well-known ports are permanently assigned for specific applications
    • see those assigned in Figure 12.6
  • Dynamic binding
    • assigned by the network software when a program needs a port
  • Multiple application programs, often called processes, may run simultaneously
  • UDP distinguishes among them by their 16-bit protocol port identifier
  • Application programs using UDP must handle the reliability problem
  • Conceptually, the transport layer is independent of the Internet layer. But they interact strongly
    • the UDP checksum includes IP @ which must be gotten from IP
for next time
For Next Time
  • Read Chapter 13