UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring 20061 CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer Science Department.

Slides:



Advertisements
Similar presentations
Transport Layer3-1 Transport Overview and UDP. Transport Layer3-2 Goals r Understand transport services m Multiplexing and Demultiplexing m Reliable data.
Advertisements

CSE551: Computer Network Review r Network Layers r TCP/UDP r IP.
Computer Networks 2 Lecture 2 TCP – I - Transport Protocols: TCP Segments, Flow control and Connection Setup.
CPSC 441: Intro, UDP1 Transport Layer Instructor: Carey Williamson Office: ICT Class Location:
TCP© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer Science Department.
EEC-484/584 Computer Networks Lecture 15 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Transport Layer 3-1 outline r TCP m segment structure m reliable data transfer m flow control m congestion control.
Transport Layer 3-1 Fast Retransmit r time-out period often relatively long: m long delay before resending lost packet r detect lost segments via duplicate.
Computer Communication Digital Communication in the Modern World Transport Layer Multiplexing, UDP
Chapter 3: Transport Layer
Transport Layer 3-1 Outline r TCP m Congestion control m Flow control.
Transport Layer3-1 Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
Lecture 8 Chapter 3 Transport Layer
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
2: Application Layer 1 1DT066 Distributed Information System Chapter 3 Transport Layer.
Some slides are in courtesy of J. Kurose and K. Ross Review of Previous Lecture Electronic Mail: SMTP, POP3, IMAP DNS Socket programming with TCP.
Advanced UDP Sockets© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer.
8-1 Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer m flow.
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Process-to-Process Delivery:
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Review: –What is AS? –What is the routing algorithm in BGP? –How does it work? –Where is “policy” reflected in BGP (policy based routing)? –Give examples.
CECS 474 Computer Network Interoperability Notes for Douglas E. Comer, Computer Networks and Internets (5 th Edition) Tracy Bradley Maples, Ph.D. Computer.
Data Communications and Computer Networks Chapter 3 CS 3830 Lecture 12 Omar Meqdadi Department of Computer Science and Software Engineering University.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 04_a Transport Protocols - UDP Instructor: Dr. Li-Chuan Chen Date: 09/22/2003 Based in part upon slides.
CS 1652 The slides are adapted from the publisher’s material All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Jack Lange.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All.
Transport Layer and UDP Tahir Azim Ref:
Transport Layer Natawut Nupairoj, Ph.D. Department of Computer Engineering Chulalongkorn University.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Part.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Chapter 3 Transport Layer
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 6 The Transport Layer.
Transport Layer1 Ram Dantu (compiled from various text books)
1 Transport Layer Lecture 7 Imran Ahmed University of Management & Technology.
Lecture91 Administrative Things r Return homework # 1 r Review some problems in homework # 1 r Questions about grading? Yona r WebCT for CSE245 is working!
The Transport Layer application transport network data link physical application transport network data link physical application transport network data.
CSE679: Computer Network Review r Review of the uncounted quiz r Computer network review.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July A.
Transport Layer 3-1 Chapter 3 Outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP.
Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
Prof. Younghee Lee 1 1 Computer Networks u Lecture 5: Transport services and protocols Prof. Younghee Lee * Some part of this teaching materials are prepared.
MULTIPLEXING/DEMULTIPLEXING, CONNECTIONLESS TRANSPORT.
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
Introduction 1-1 source application transport network link physical HtHt HnHn M segment HtHt datagram destination application transport network link physical.
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
2: Transport Layer 11 Transport Layer 1. 2: Transport Layer 12 Part 2: Transport Layer Chapter goals: r understand principles behind transport layer services:
Process-to-Process Delivery:
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
CSEN 404 Transport Layer I Amr El Mougy Lamia Al Badrawy.
CIS679: UDP and Multimedia r Review of last lecture r UDP and multimedia.
Introduction to Networks
The Transport Layer Implementation Services Functions Protocols
Chapter 3 outline 3.1 Transport-layer services
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Transport Layer.
Introduction to Networks
Process-to-Process Delivery:
CPEG514 Advanced Computer Networkst
CS4470 Computer Networking Protocols
Transport Protocols: TCP Segments, Flow control and Connection Setup
Transport Protocols: TCP Segments, Flow control and Connection Setup
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
Transport Layer 9/22/2019.
Transport Layer Our goals:
Presentation transcript:

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer Science Department Virginia Tech User Datagram Protocol (UDP)

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring Outline User Datagram Protocol

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring Transport Layer

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring User Datagram protocol (UDP) 1/2 Described in [RFC 768, 1980] Simple Connectionless (no long term relationship between UDP client and server) Create a socket  send a datagram to a server, then immediately send another datagram on the same socket to a different server Unreliable (no guarantees, no order, and can deliver duplicates) Each UDP datagram has a length (limited to IP MTU) Full duplex -- concurrent transfers can take place in both directions

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring User Datagram protocol (UDP) 2/2 UDP Length: length of datagram in bytes, including header and data, max is 65,535 bytes Checksum: optional bit checksum over header and data, or zero

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring UDP output Send buffer size: upper limit on maximum-sized UDP datagram to be written to socket

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring Why is there a UDP? no connection establishment (which can add delay) simple: no connection state at sender, receiver small segment header no congestion control: UDP can blast away as fast as desired often used for streaming multimedia apps  loss tolerant  rate sensitive other UDP uses  DNS and SNMP Suitable for multicasting reliable transfer over UDP: add reliability at application layer –application-specific error recovery!

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring UDP versus TCP 1/4 Choice of UDP versus TCP is based on  Functionality  Performance Performance  TCP’s window-based flow control scheme leads to bursty bulk transfers (not rate based)  TCP’s “slow start” algorithm can reduce throughput  TCP has extra overhead per segment  UDP can send small, inefficient datagrams

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring UDP versus TCP 2/4 Reliability  TCP provides reliable, in-order transfers  UDP provides unreliable service – application must accept or deal with Packet loss due to overflows and errors Out-of-order datagrams Multicast and broadcast  Supported only by UDP  TCP’s error control scheme does not lend itself to reliable multicast

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring UDP versus TCP 3/4 Application complexity  Application-level framing (ALF) can be difficult using TCP because of the Nagle algorithm [RFC 896, 1984] ALF implies that data should be organized in units that make the most sense for the application What makes sense for a video application or an audio application ?  Nagle algorithm controls when TCP segments are sent to use IP datagrams efficiently  But, data may be received and read by applications in different units than how it was sent

UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring UDP versus TCP 4/4 Nagle Algorithm  Tinygrams (small datagrams) can cause congestion in WANs  “Small” means less than the segment size Think what is the datagram size for 1 byte of data?  A TCP connection can have only one outstanding small segment that has not yet been acknowledged  No additional small segments can be sent until the acknowledgment is received.  small amounts of data are collected by TCP and sent in a single segment when the acknowledgment arrives