Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.

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

CCNA – Network Fundamentals
Chapter 7: Transport Layer
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
Lecture 7 Transport Layer
Fundamentals of Computer Networks ECE 478/578 Lecture #20: Transmission Control Protocol Instructor: Loukas Lazos Dept of Electrical and Computer Engineering.
CPSC 441: Intro, UDP1 Transport Layer Instructor: Carey Williamson Office: ICT Class Location:
Chapter 3: Transport Layer
Transport Layer3-1 Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
CPSC 441: Intro, UDP1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes.
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
1 Computer Networks Transport Layer Protocols. 2 Application-layer Protocols Application-layer protocols –one “piece” of an app –define messages exchanged.
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) 건국대학교 인터넷미디어공학부 임 창 훈.
Gursharan Singh Tatla Transport Layer 16-May
Fundamentals of Computer Networks ECE 478/578 Lecture #2 Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University of Arizona.
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.
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
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.
Transport Layer Layer #4 (OSI-RM). Transport Layer Main function of OSI Transport layer: Accept data from the Application layer and prepare it for addressing.
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.
SMUCSE 4344 transport layer. SMUCSE 4344 transport layer end-to-end protocols –transport code runs only on endpoint hosts encapsulates network communications.
TCP/IP Transport and Application (Topic 6)
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.
Transport Layer1 Ram Dantu (compiled from various text books)
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
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.
Transport Layer COM211 Communications and Networks CDA College Theodoros Christophides
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.
Networking Basics CCNA 1 Chapter 11.
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
Chapter 9: Transport Layer
MULTIPLEXING/DEMULTIPLEXING, CONNECTIONLESS TRANSPORT.
Transport Protocols.
01_NF_Ch04 – OSI Transport Layer ( 傳輸層 ) Source: CCNA Exploration.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
1 Kyung Hee University Chapter 11 User Datagram Protocol.
1 User Datagram Protocol. 2 Transport Protocols Provide logical communication between application processes running on different hosts Run on end hosts.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
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).
Chapter 14 User Datagram Protocol (UDP) Introduction  Responsibilities of Transport Layer to create a process-to-process communication l using.
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:
Ch 3. Transport Layer Myungchul Kim
CSEN 404 Transport Layer I Amr El Mougy Lamia Al Badrawy.
UDP: User Datagram Protocol. What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host – treats a computer as an.
Chapter 7: Transport Layer
Introduction to Networks
Chapter 11 User Datagram Protocol
The Transport Layer Implementation Services Functions Protocols
Chapter 9: Transport Layer
Instructor Materials Chapter 9: Transport Layer
Understand the OSI Model Part 2
TCP Transport layer Er. Vikram Dhiman LPU.
Introduction to Networks
Chapter 14 User Datagram Protocol (UDP)
Process-to-Process Delivery:
CPEG514 Advanced Computer Networkst
Process-to-Process Delivery: UDP, TCP
Presentation transcript:

Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University of Arizona

The Internet Architecture Ethernet FDDI FTPHTTPTFTP TCP DNS UDP IP Net 1 FTP: File Transfer Protocol HTTP: Hypertext Transport Protocol TFTP: Trivial File Transfer Protocol DNS: Domain Name System TCP: Transmission Control Protocol UDP: User Datagram Protocol IP: Internet Protocol 2

End-to-End Protocols Responsible for the realization of host-to-host packet delivery Services of the transport layer Guaranteed message delivery (end-to-end) Ordered delivery Rejection of duplicate messages Messages of arbitrary length Congestion control to handle network overloading Running of multiple application processes at the same host 3 Transport layer Network layer Transport layer Network layer

Why do we need a Transport Layer? Limitations of the network layer Can drop messages (routers may incurr buffer overflow etc.) Can reorder messages Deliver duplicate copies of the same message Limit messages to finite size (eg. IP size is limited) Network layer is intended to hide the different technologies on a link level and provide a transparent end to end routing service Transport layer provides end-to-end transport service to the application layer 4

Internet Transport Protocols Datagram messaging service (UDP) “Best-effort” IP end-to-end service Reliable, in-order delivery (TCP) Connection set-up Discarding of corrupted packets Retransmission of lost packets Flow control Congestion control (What is the difference?) Remote Procedure Call (RPC) Request/Reply Service 5

User Datagram Protocol (UDP) Process-to-process communication service Processes are identified based on incoming ports (sockets in Windows) 16 bits for each field yields 64K different identifiers combination allows de-multiplexing at receiving host 6

IP vs. Transport 7

The Encapsulation Process 8

Port Discovery Use well-publicized ports for different services DNS uses to port 53 uses port 25 HTTP uses port 80 Use one port as a “port-mapper” service Call 411 to learn the port of any other process Allows for dynamic allocation of ports to different services Allows for the assignment of ports to newly created services 9

Multiplexing and De-multiplexing Host may be running multiple processes at the same time These processes Generate multiple messages for the same host Generate multiple messages for multiple hosts Transport layer multiplexing Multiplex messages from multiple processes Break down messages to segments and pass to network layer Transport layer de-multiplexing Reassemble messages at the receiving host and pass to the communication processes 10

Multiplexing and De-multiplexing 11

UDP Message Queue 12

Example of UDP 13

Control Block Module Responsible for the management of the Control Block Table Request for a port for a new starting process Update the control block table Example 14 StateProcess IDPort NumberQueue Number In Use2,56952,01034 In Use4,75952,011 Free--- In Use7, Free---

Input Module Receive UDP packet from IP layer Look up control block table to map port If a queue exists, push packet to the corresponding queue If not, allocate queue for the new process 15 StateProcess IDPort NumberQueue Number In Use2,56952,01034 In Use4,75952,01145 Free--- In Use7, Free---

Output Module Receive data from the application layer Create a UDP packet and send it. 16

Advantages of UDP Control over what data is sent and when As soon as an application process writes into the socket … UDP will package the data and send the packet No delay for connection establishment UDP just sends messages without contacting the host first Pays off when host is expecting messages anyway Stateless connection No allocation of buffers, parameters, sequence #s, etc. … making it easier to handle many active clients at once (think of servers) Small packet header overhead UDP header is only eight-bytes long 17

Disadvantages of UDP “Best effort” networking No guarantee delivery of messages to destination host, no ordered delivery No congestion control No adaptation to the congestion conditions of the network Suppresses TCP flows In case of congestion TCP flows will back off while UDP will stay on the same rate Can be used as an attack method (UDP flooding attack) 18

Applications Utilizing UDP Simple query protocols like Domain Name System Delay for connection establishment is too large Queries are small and UDP adds a small overhead (header) Easier to have application retransmit if needed Usually may fit within a UDP packet so no out-of-order danger Multimedia Applications Retransmitting lost/corrupted packets is not worthwhile By the time the packet is retransmitted, it’s too late E.g., telephone calls, video conferencing, gaming Certain loss is acceptable since Voice, picture, etc are still discernable 19