TCP/IP Protocol Suite 1 Chapter 11 Upon completion you will be able to: User Datagram Protocol Be able to explain process-to-process communication Know.

Slides:



Advertisements
Similar presentations
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Advertisements

CCNA – Network Fundamentals
Intermediate TCP/IP TCP Operation.
CP476 Internet Computing TCP/IP 1 Lecture 3. TCP / IP Objective: A in-step look at TCP/IP Purposes and operations Header specifications Implementations.
UNIT 07 Process – to – Process Delivery: UDP,TCP and SCTP
Chapter 14 User Datagram Program (UDP)
Ch 23 1 Based on Data Communications and Networking, 4th Edition. by Behrouz A. Forouzan, McGraw-Hill Companies, Inc., 2007 Ameera Almasoud.
Process-to-Process Delivery:
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.
TCP/IP Protocol Suite 1 Chapter 9 Upon completion you will be able to: Internet Control Message Protocol Be familiar with the ICMP message format Know.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 9 Internet Control Message.
13/09/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Transport layer and Application Layer Slide 1.
Chapter 11 User Datagram Protocol (UDP)
Hyung-Min Lee©Networking Lab., 2001 Chapter 11 User Datagram Protocol (UDP)
TCP/IP: Basics1 User Datagram Protocol (UDP) Another protocol at transport layer is UDP. It is Connectionless protocol i.e. no need to establish & terminate.
Chapter 4 TCP/IP Overview Connecting People To Information.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.6 UDP Principles (Chapter 24) (User Datagram Protocol)
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.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
TCP/IP Transport and Application (Topic 6)
Microsoft Windows Server 2003 TCP/IP Protocols and Services Technical Reference Slide: 1 Lesson 11 User Datagram Protocol (UDP)
11 TRANSPORT LAYER PROTOCOLS Chapter 6 TCP and UDP SPX and NCP.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
23.1 Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP Honolulu Community College Cisco Academy Training Center Semester 2 Version 2.1.
CSC/ECE 573 Internet Protocols User Datagram Protocol.
Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
1 Kyung Hee University Chapter 8 Internet Protocol (IP)
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
TCP/IP Protocol Suite 1 Chapter 19 Upon completion you will be able to: File Transfer: FTP and TFTP Understand the connections needed for FTP file transfer.
Chapter 13 Introduction to the Transport Layer
TCP/IP Protocol Suite 1 Chapter 11 Upon completion you will be able to: User Datagram Protocol Be able to explain process-to-process communication Know.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Chapter 11 User Datagram Protocol (UDP)
1 Kyung Hee University Chapter 11 User Datagram Protocol.
UDP: User Datagram Protocol Chapter 12. Introduction Multiple application programs can execute simultaneously on a given computer and can send and receive.
1 Computer Communication & Networks Lecture 23 & 24 Transport Layer: UDP and TCP Waleed Ejaz
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 14 User Datagram Protocol (UDP) Introduction  Responsibilities of Transport Layer to create a process-to-process communication l using.
Process-to-Process Delivery:
TCP/IP Protocol Suite 1 Chapter 10 Upon completion you will be able to: Internet Group Management Protocol Know the purpose of IGMP Know the types of IGMP.
Chapter 11 User Datagram Protocol
The Transport Layer Implementation Services Functions Protocols
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.
Process-to-Process Delivery, TCP and UDP protocols
ARP and RARP Objectives Chapter 7 Upon completion you will be able to:
Process-to-Process Delivery
Chapter 14 User Datagram Program (UDP)
PART 5 Transport Layer Computer Networks.
TCP Transport layer Er. Vikram Dhiman LPU.
Process-to-Process Delivery:
User Datagram Protocol (UDP)
Chapter 14 User Datagram Protocol (UDP)
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 Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Process-to-Process Delivery:
Transport Protocols An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
CPEG514 Advanced Computer Networkst
Internet Control Message Protocol
Chapter 14 User Datagram Program (UDP)
PART 5 Transport Layer.
Internet Control Message Protocol
Process-to-Process Delivery: UDP, TCP
UDP Principles (Chapter 24) (User Datagram Protocol)
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
TCP/IP Protocol Suite 1 Chapter 9 Upon completion you will be able to: Internet Control Message Protocol Be familiar with the ICMP message format Know.
Transport Layer 9/22/2019.
Presentation transcript:

TCP/IP Protocol Suite 1 Chapter 11 Upon completion you will be able to: User Datagram Protocol Be able to explain process-to-process communication Know the format of a UDP user datagram Be able to calculate a UDP checksum Understand the operation of UDP Know when it is appropriate to use UDP Understand the modules in a UDP package Objectives

TCP/IP Protocol Suite 2 Figure 11.1 Position of UDP in the TCP/IP protocol suite

TCP/IP Protocol Suite PROCESS-TO-PROCESS COMMUNICATION Before we examine UDP, we must first understand host-to-host communication and process-to-process communication and the difference between them. The topics discussed in this section include: Port Numbers Socket Addresses

TCP/IP Protocol Suite 4 Figure 11.2 UDP versus IP UDP (User Datagram Protocol) creates a transport layer connection between two processes. The port number identifies the process, or running application program. So using the port number, UDP directs the packet to the correct location. UDP does little else. No flow control. No ack of received packets. Only error control is if a checksum error is detected, it quietly drops the packet.

TCP/IP Protocol Suite 5 Figure 11.2 UDP versus IP UDP is a connectionless, unreliable transport protocol. It does not add anything to the services of IP except for providing process-to-process communication, instead of host-to-host. Advantages? Minimal overhead; faster UDP works well with apps that have their own error and flow control; works well with multicasting, SNMP, TFTP (trivial FTP), (but not FTP), and RIP.

TCP/IP Protocol Suite 6 Figure 11.2 UDP versus IP Need 4 pieces of info: local host (IP addr), local process (port #), remote host (IP addr), remote process (port #). Local process port # can be just about any number (between 0 and 65,535), but remote process port # has to be fixed, otherwise who would know what it is?

TCP/IP Protocol Suite 7 Figure 11.3 Port numbers Example: a user wants to know the day and time from a remote machine. Daytime client port # = 52000, but Daytime server port # = 13.

TCP/IP Protocol Suite 8 Table 11.1 Well-known ports used with UDP Well-known port #s are < 1024.

TCP/IP Protocol Suite 9 Figure 11.6 Socket address In Unix, the socket address is the combination of IP address and UDP/TCP port number.

TCP/IP Protocol Suite 10 Figure 11.7 User datagram format

TCP/IP Protocol Suite CHECKSUM UDP checksum calculation is different from the one for IP and ICMP. Here the checksum includes three sections: a pseudoheader, the UDP header, and the data coming from the application layer. The topics discussed in this section include: Checksum Calculation at Sender Checksum Calculation at Receiver Optional Use of the Checksum

TCP/IP Protocol Suite 12 Figure 11.8 Pseudoheader for checksum calculation Psuedoheader and padding are only used to calculate checksum. After checksum is calculated, they are dropped.

TCP/IP Protocol Suite 13 Figure 11.9 Checksum calculation of a simple UDP user datagram

TCP/IP Protocol Suite 14 Figure 11.9 Practice calculation of a UDP user datagram The following info is given: Source port = 1087 Destination port = 17 UDP data field = hello Total length of user datagram =13 IP source address = IP destination address = Create the IP packet (and UDP datagram) that will contain this UDP datagram

TCP/IP Protocol Suite UDP PACKAGE To show how UDP handles the sending and receiving of UDP packets, we present a simple version of the UDP package. The UDP package involves five components: a control-block table, input queues, a control- block module, an input module, and an output module. The topics discussed in this section include: Control-Block Table Input Queues Control-Block Module Input Module Output Module

TCP/IP Protocol Suite 16 Figure UDP design

TCP/IP Protocol Suite 17 Figure UDP design Control-block table - keeps track of the open ports. Table entries include state (free or in-use), process ID, port number, and corresponding queue number. Control-block module - manages the entries in the control-block table. Input module - accepts a user datagram from the IP and checks to see if there is an existing port entry in table. If yes, queue request; if no, generate ICMP error message. Output module - creates and sends user datagram

TCP/IP Protocol Suite 18 Table 11.2 The control-block table at the beginning of examples Let’s look at some examples. Below is the control-block table before the examples.

TCP/IP Protocol Suite 19 The first activity is the arrival of a user datagram with destination port number 52,012. The input module searches for this port number and finds it. Queue number 38 has been assigned to this port, which means that the port has been previously used. The input module sends the data to queue 38. The control-block table does not change. Example 2

TCP/IP Protocol Suite 20 After a few seconds, a process starts. It asks the operating system for a port number and is granted port number 52,014. Now the process sends its ID (4,978) and the port number to the control-block module to create an entry in the table. The module takes the first FREE entry and inserts the information received. The module does not allocate a queue at this moment because no user datagrams have arrived for this destination (see Table 11.3). Example 3 See Next Slide

TCP/IP Protocol Suite 21 Table 11.3 Control-block table after Example 3

TCP/IP Protocol Suite 22 A user datagram now arrives for port 52,011. The input module checks the table and finds that no queue has been allocated for this destination since this is the first time a user datagram has arrived for this destination. The module creates a queue and gives it a number (43). See Table Example 4 See Next Slide

TCP/IP Protocol Suite 23 Table 11.4 Control-block after Example 4

TCP/IP Protocol Suite 24 After a few seconds, a user datagram arrives for port 52,222. The input module checks the table and cannot find an entry for this destination. The user datagram is dropped and a request is made to ICMP to send an “unreachable port” message to the source. Example 5