Upload
cameron-hudson
View
220
Download
0
Embed Size (px)
Citation preview
TCOM 509 – Internet Protocols (TCP/IP)
Lecture 04_a
Transport Protocols - UDP
Instructor: Dr. Li-Chuan ChenDate: 09/22/2003
Based in part upon slides of Prof. J. Kurose (U Mass), Prof. K. Fall (UC-Bekeley)
Internet Layer
Internet
Net interface/Physical
Transport
Application
IP
LAN Packetradio
TCP UDP
Telnet FTP DNS
Transport Layer:• UDP• TCP
Internetworking Protocols
Transport Protocols• Provides an end-to-end transfer services.• Sits on top of IP layer and below the application
layer. • The less the network services, the more the
transport protocol must do.• Two types
– Connection-Oriented: TCP (Transmission Control Protocol) RFC 793
– Connectionless: UDP (User Datagram Protocol) RFC 768
Transport services and protocols• provide logical communication
between application processes running on different hosts
• transport protocols run in end systems – send side: breaks application
messages into segments, passes to network layer
– receiving side: reassembles segments into messages, passes to application layer
• more than one transport protocol available to apps– Internet: TCP and UDP
application
transportnetworkdata linkphysical
application
transportnetworkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysicalnetwork
data linkphysical
logical end-end transport
Transport vs. network layer
• network layer: logical communication between hosts
• transport layer: logical communication between processes (allow multiple applications to run simultaneously on a given host)
Internet transport-layer protocols• TCP
– reliable delivery – congestion control – flow control– connection setup
• UDP– unreliable delivery– “best-effort” IP– packets are independent– no flow control – no re-order of datagram– no acknowledgement– packet may be lost, delayed,
out of order• services not available:
– delay guarantees– bandwidth guarantees
application
transportnetworkdata linkphysical
application
transportnetworkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysicalnetwork
data linkphysical
logical end-end transport
UDP
• often used for streaming multimedia apps– loss tolerant
(VoIP)– rate sensitive
• other UDP uses– DNS– SNMP
• reliable transfer over UDP: add reliability at application layer– application-specific error recovery!
UDP Format• UDP message =
user datagram• Source port:
optionalif not used, set to 0.
• UDP header size = 8 bytes
• Checksum: optional. Use 1’s complement to detect transmission errors.
source port # dest port #
32 bits
Applicationdata
(message)
UDP segment format
length checksum
Length, inbytes of UDP
segment,including
header
UDP Pseudo-Header• UDP pseudo-header: 12
octets• Prepends UDP
datagram with a pseudo-header and appends an octet of 0s to multiple of 16-bit.
• Stores all 0s in the checksum field.
• Compute 1’s complement of sum of the resulting datagram.
Source IP Address
Destination IP Address
Zero Proto UDP Length
0 8 16 31
PROTO: IP protocol type code (17 for UDP)
UDP – Port AssignmentPort (decimal)
Keyword Description
7 ECHO Echo
53 DOMAIN Domain Name Server
67 BOOTPS BOOTP or DHCP Server
68 BOOTPC BOOTP or DHCP Client
69 TFTP Trivial File Transfer
• Two computers need to agree on port numbers before they can interoperate.
• Well-known port assignments (see table)
• Dynamic binding: need to request for port number on the remote computer.
Homework 2Chapter Problem
12 7
Due Monday 09/29/2003, 7:20 p.m.