Process-to-Process Delivery:

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
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
Transmission Control Protocol (TCP)
Intermediate TCP/IP TCP Operation.
I N THE N AME OF G OD C OMPUTER N ETWORKS C HAPTER 6: T HE T RANSPORT L AYER Dr. Shahriar Bijani Shahed University May 2014.
CS3505 The Internet and Info Hiway transport layer protocols : TCP/UDP.
Chapter 7 – Transport Layer Protocols
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
UNIT 07 Process – to – Process Delivery: UDP,TCP and SCTP
Chapter 3: Transport Layer
1 Computer Networks Transport Layer Protocols. 2 Application-layer Protocols Application-layer protocols –one “piece” of an app –define messages exchanged.
Process-to-Process Delivery:
Gursharan Singh Tatla Transport Layer 16-May
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
1 Transport Layer Computer Networks. 2 Where are we?
Hyung-Min Lee©Networking Lab., 2001 Chapter 11 User Datagram Protocol (UDP)
Copyright 2003 CCNA 1 Chapter 9 TCP/IP Transport and Application Layers By Your Name.
Mukesh N. Tekwani Elphinstone College Mumbai
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
University of the Western Cape Chapter 12: The Transport Layer.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Chapter 3 Transport Layer.
TCP/IP Transport and Application (Topic 6)
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
11 TRANSPORT LAYER PROTOCOLS Chapter 6 TCP and UDP SPX and NCP.
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 6 The Transport Layer.
The Transport Layer application transport network data link physical application transport network data link physical application transport network data.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Transmission Control Protocol (TCP)
23.1 Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Networking Basics CCNA 1 Chapter 11.
Lecture 4 Overview. Ethernet Data Link Layer protocol Ethernet (IEEE 802.3) is widely used Supported by a variety of physical layer implementations Multi-access.
Institute of Technology Sligo - Dept of Computing Chapter 12 The Transport Layer.
1 Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
NET 221D:COMPUTER NETWORKS FUNDAMENTALS Lecture : Transport Layer: Behrouz A. Forouzan” Data communications and Networking 1.
Page 12/9/2016 Chapter 10 Intermediate TCP : TCP and UDP segments, Transport Layer Ports CCNA2 Chapter 10.
McGraw-Hill©2003 The McGraw-Hill Companies, Inc. Chapter 3 Transport Layer.
1 Kyung Hee University Chapter 11 User Datagram Protocol.
1 Computer Communication & Networks Lecture 23 & 24 Transport Layer: UDP and TCP Waleed Ejaz
Data Communications and Networks Chapter 6 – IP, UDP and TCP ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Cisco I Introduction to Networks Semester 1 Chapter 7 JEOPADY.
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:
Introduction to Networks
Chapter 5 Network and Transport Layers
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
Chapter 14 User Datagram Program (UDP)
PART 5 Transport Layer Computer Networks.
TCP Transport layer Er. Vikram Dhiman LPU.
Introduction to Networks
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
PART V Transport Layer.
PART 5 Transport Layer.
Lecture 21 and 22 5/29/2019.
Process-to-Process Delivery: UDP, TCP
Computer Networks 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 9/22/2019.
Presentation transcript:

Process-to-Process Delivery: Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

23-1 PROCESS-TO-PROCESS DELIVERY The transport layer is responsible for process-to-process delivery—the delivery of a packet, part of a message, from one process to another. Two processes communicate in a client/server relationship, In Client/Server communication, four entities must be defined: Sending Node Local Host IP Local Process Port number Receiving Node Remote host IP Remote Process ID Port number

Position of UDP in the TCP/IP protocol suite

Nesting of TPDU, Packets, and Frames Transport Protocol Data Unit (TPDU) Term used for transport entity to transport entity messages TPDUs are contained in packets exchanged by network layer Packets are contained in frames exchanged by data link layer

Figure 23.1 Types of data deliveries

Transport layer duties Packetizing Sender side: breaks application messages into segments, passes them to network layer Transport layer at the receiving host deliver data to the receiving process Connection control Connection-oriented Connectionless Addressing Port numbers to identify which network application Reliability Flow control Error Control transport -end transport

The Internet Transport Layer The Internet supports two transport layer protocols: The Transport Control Protocol (TCP) for reliable service The Unreliable (User) Datagram Protocol (UDP)

Processes communicating across network Process is an instance of a program in execution. Processes on two hosts communicate with each other by sending and receiving messages The process receives messages from, and sends messages into the network through its socket A socket is the interface between the application layer and the transport layer within a host. Sockets are the programming interface used to build network applications over the internet. Programmers can select which transport layer protocol (UDP or TCP) to be used by the application and select few transport-layer parameters (maximum buffer size, Maximum segment size, starting sequence number of segment).

Port numbers Transport layer at the receiving host delivers data to the socket There should be a unique identifier for each socket. Socket identifier is called socket address Socket address = IP address & Port number

Figure 23.2 Port numbers

Figure 23.3 IP addresses versus port numbers Process-to-Process delivery needs IP address and Port number

Figure 22.4 IANA ranges Port numbers are 16-bit integers between 0 - 65535 Well-known: Assigned and controlled by Internet Assigned Numbers Authority IANA for example: FTP 20,21, TELNET 23, SMTP 25, HTTP 80

Table 23.1 Well-known ports used with UDP

Table 23.2 Well-known ports used by TCP

Figure 23.7 Error control Why we need error control at the transport layer?

Figure 22.6 Multiplexing and demultiplexing Sender Receiver Multiplexing: (at the sending node) The process of encapsulating data messages from different applications sockets with the header information and pass the segments to the network layer DeMultiplexing: (at the receiving node) The process of delivering the received data segment to the correct application Example: Suppose that the following is running on the same computer: Downloading a web page while transferring data through FTP Two telnet sessions are also running Transport layer receives TPDUs from network layer for all four processes

23-2 User Datagram Protocol (UDP) Connectionless No handshaking between UDP sender, receiver Each UDP segment handled independently of others A server application that uses UDP serves only ONE request at a time. All other requests are stored in a queue waiting for service. Unreliable protocol has no flow and error control A UDP segment can be lost, arrive out of order, duplicated, or corrupted Checksum field checks error in the entire UDP segment. It is Optional UDP doe not do anything to recover from an error it simply discard the segment  Application accepts full responsibility for errors It uses port numbers to multiplex/demultiplex data from/to the application layer. Advantages: Simple, minimum overhead, no connection delay Services provided by UDP: Process-to-Process delivery Error checking (however, if there is an error UDP does NOT do anything to recover from error. It will just discard the message

Figure 23.12 Queues in UDP

UDP Applications Used for applications that can tolerate small amount of packet loss: Multimedia applications, Internet telephony, real-time-video conferencing Domain Name System messages Audio Routing Protocols

Figure 23.9 User datagram format Header size = 8 bytes Minimum UDP process data size 0 bytes Maximum UDP process data size= 65535 – 20 (network layer headers) - 8 (UDP headres)= 65507 bytes

UDP length = IP length – IP header’s length Note UDP length = IP length – IP header’s length

23-3 Transmission Control Protocol (TCP) Transmission Control Protocol properties: Connection-oriented (establishment & termination) Reliable Full-duplex

Connection-Oriented Connection oriented means that a virtual connection is established before any data is transferred. Connection ensures that the receiving process is available and ready before the data is sent Three-way handshaking connection establishment procedure because TCP is full-duplex both side must initialize communication and get approval from the other side before any data transfer, Virtual connection since TCP protocol will make sure that segments are given to the receiver application in the same order as they were sent by the sender even if they travel through different physical paths A server application that uses TCP can handle many client requests at the same time each has its own connection.

Connection establishment and termination Combined into one step Connection release

TCP establishes a virtual connection Figure 23.13 Stream delivery TCP establishes a virtual connection TCP will deliver segments to the applications in order and without error, lost, or duplicates

Full Duplex Data segments can flow in both directions at the same time. Each TCP connection has its own sending and receiving buffers.

Flow control and Reliability Flow control (process-to-process): TCP makes sure that the sender does not cause the receiver buffer to overflow By defining the amount of data that can be sent before receiving an acknowledgement from the receiver (sliding – window protocols) Error control (process-to-process): entire message arrives at the receiving transport layer without error, loss, duplication and in the same order they were sent Error detection is done using checksum and correction by retransmission Implemented by a sliding window ARQ Every transmission of data is acknowledged by the receiver. Acknowledgements are cumulative. If the sender does not receive ACK within a specified amount of time, the sender retransmits the data. Accepts out of order but does Not send negative acknowledgements, if a segment is not acknowledged before time-out, it is considered to be either corrupted or lost and the sender will retransmit the segment only when it times-out

TCP Applications Following applications require reliable data transfer through TCP: WWW using HTTP Electronic mail using SMTP Telnet File transfer using FTP

Figure 23.16 TCP segment format Minimum header length is 20 bytes and the maximum is 60 bytes when there are options