Lecture 3 Review of Internet Protocols Transport Layer.

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

20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 5: TCP/IP and OSI Business Data Communications, 5e.
ISO/OSI Model Layers Application: applications that use the network. This is were mail, browsers, ftp, etc reside Presentation: data formats, character.
CPSC 441: Intro, UDP1 Transport Layer Instructor: Carey Williamson Office: ICT Class Location:
Chapter 3: Transport Layer
Chapter 4 : TCP/IP and OSI Business Data Communications, 4e.
Introduction To Networking
Networking and Internetworking: Standards and Protocols i206 Fall 2010 John Chuang Some slides adapted from Coulouris, Dollimore and Kindberg.
1 Review of Important Networking Concepts Introductory material. This module uses the example from the previous module to review important networking concepts:
William Stallings Data and Computer Communications 7 th Edition Chapter 2 Protocols and Architecture.
Chapter 3 Review of Protocols And Packet Formats
5/12/05CS118/Spring051 A Day in the Life of an HTTP Query 1.HTTP Brower application Socket interface 3.TCP 4.IP 5.Ethernet 2.DNS query 6.IP router 7.Running.
COE 342: Data & Computer Communications (T042) Dr. Marwan Abu-Amara Chapter 2: Protocols and Architecture.
Defining Network Protocols Application Protocols –Application Layer –Presentation Layer –Session Layer Transport Protocols –Transport Layer Network Protocols.
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Gursharan Singh Tatla Transport Layer 16-May
1 Review of Important Networking Concepts Introductory material. This slide uses the example from the previous module to review important networking concepts:
CS 356 Systems Security Spring Dr. Indrajit Ray
What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host IP treats a computer as an endpoint of communication Best.
Process-to-Process Delivery:
G64INC Introduction to Network Communications Ho Sooi Hock Internet Protocol.
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.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Protocols and the TCP/IP Suite
William Stallings Data and Computer Communications 7 th Edition Data Communications and Networks Overview Protocols and Architecture.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
Chap 9 TCP/IP Andres, Wen-Yuan Liao Department of Computer Science and Engineering De Lin Institute of Technology
1 LAN Protocols (Week 3, Wednesday 9/10/2003) © Abdou Illia, Fall 2003.
TCP/IP Transport and Application (Topic 6)
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
ECE 526 – Network Processing Systems Design Networking: protocols and packet format Chapter 3: D. E. Comer Fall 2008.
Transport Layer1 Ram Dantu (compiled from various text books)
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.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
TCP/IP Honolulu Community College Cisco Academy Training Center Semester 2 Version 2.1.
Computer Security Workshops Networking 101. Reasons To Know Networking In Regard to Computer Security To understand the flow of information on the Internet.
Data Communications and Networks
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.
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.
1 Introduction to TCP/IP. 2 OSI and Protocol Stack OSI: Open Systems Interconnect OSI ModelTCP/IP HierarchyProtocols 7 th Application Layer 6 th Presentation.
Institute of Technology Sligo - Dept of Computing Chapter 12 The Transport Layer.
1 Bus topology network. 2 Data is sent to all computers, but only the destination computer accepts 02608c
Telecommunications Essentials John R. Durrett July 5, 2005.
MULTIPLEXING/DEMULTIPLEXING, CONNECTIONLESS TRANSPORT.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
The OSI Model. Understanding the OSI Model In early 1980s, manufacturers began to standardize networking so that networks from different manufacturers.
2: Transport Layer 11 Transport Layer 1. 2: Transport Layer 12 Part 2: Transport Layer Chapter goals: r understand principles behind transport layer services:
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Lecture (2).
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.
Introduction to TCP/IP
Transport Layer.
Network Architecture Introductory material
Net 431: ADVANCED COMPUTER NETWORKS
Transport Layer Our goals:
Review of Important Networking Concepts
Internetworking: Hardware/Software Interface
Chapter 20 Network Layer: Internet Protocol
Process-to-Process Delivery:
Network Systems and Throughput Preservation
Process-to-Process Delivery: UDP, TCP
Review of Internet Protocols Transport Layer
Review of Internet Protocols Network Layer
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:

Lecture 3 Review of Internet Protocols Transport Layer

Protocols: HW/SW Interface Internetworking: allows computers on independent and incompatible networks to communicate reliably and efficiently; Enabling technologies: SW standards that allow reliable communications without reliable networks Hierarchy of SW layers, giving each layer responsibility for portion of overall communications task, called protocol families or protocol suites Transmission Control Protocol/Internet Protocol (TCP/IP) This protocol family is the basis of the Internet IP makes best effort to deliver; TCP guarantees delivery TCP/IP used even when communicating locally: NFS uses IP even though communicating across homogeneous LAN 2

Services provided by layers Each layer in protocol stack provides a “service” Uses service from lower laye rs Benefits of layering Isolates complexity Clearly defined interfaces Protocols implement functionality within layer 3

DATA Application Pre. Session Transport Network Data Link Physical DATAAH DATAPH DATASH DATATH DATANH DATADH DATAPH Application Pre. Session Transport Network Data Link Physical Network AB Layered Network Architecture (OSI)

TCP/IP Model ISO OSI (Open Systems Interconnection) not fully implemented Presentation and Session layers not present in TCP/IP Application Pre. Session Transport Network Data Link Physical Application TCP IP Host-to-Net OSITCP/IP

Protocols Protocols define communication between entities Format and order of messages Actions taken on transmission and/or receipt of message or other event Protocols use headers (and trailers) for control information Naming depends on layer 6

Process-to-process communication We have a network. How to get between programs? 7

Process Communication How do the end systems communicate? 8

Interface-to-interface connectivity We now have links. How to get across the network? 9

Datagrams Datagrams are forwarded independently 10

TCP/IP packet Application sends message TCP breaks into 64KB segments, adds 20B header IP adds 20B header, sends to network If Ethernet, broken into 1500B packets with headers, trailers Header, trailers have length field, destination, window number, version, TCP data (≤ 64KB) TCP Header IP Header IP Data Ethernet

Communicating with the Server: The O/S Wall 12 CPU User Kernel NIC PCI Bus Problems: O/S overhead to move a packet between network and application level => Protocol Stack (TCP/IP) O/S interrupt Data copying from kernel space to user space and vice versa Oh, the PCI Bottleneck!

The Send/Receive Operation The application writes the transmit data to the TCP/IP sockets interface for transmission in payload sizes ranging from 4 KB to 64 KB. The data is copied from the User space to the Kernel space The OS segments the data into maximum transmission unit (MTU)–size packets, and then adds TCP/IP header information to each packet. The OS copies the data onto the network interface card (NIC) send queue. The NIC performs the direct memory access (DMA) transfer of each data packet from the TCP buffer space to the NIC, and interrupts CPU activities to indicate completion of the transfer. 13

Transmitting data across the memory bus using a standard NIC 14

TCP/IP Processing Path (RX)

Network I/O Processing GHz and Gbps Time /7 Network bandwidth outpaces Moore’s Law Moore’s Law TCP requirements Rule of thumb: 1GHz for 1Gbps

I/O Acceleration Techniques Architectural Improvement TCP Offload: Offload TCP/IP Checksum and Segmentation to Interface hardware or programmable device (Ex. TOEs) O/S Bypass: User-level software techniques to bypass protocol stack – Zero Copy Protocol (Needs programmable device in the NIC for direct user level memory access – Virtual to Physical Memory Mapping. Ex. VIA) All the high bandwidth NICs today employ some kind of TCP Offload and O/S Bypass techniques

Multiplexing/de-multiplexing Multiple processes operate on one computer Interface address alone is not sufficient to distinguish Need to (de)multiplex traffic from different processes 5-tuple used for unique identification of connection IP source address IP destination address Transport layer source port Transport layer destination port Transport layer protocol 18

TCP/IP packet APP. DATATCPIPMAC Source PortDestination Port Sequence Number Acknowledgement Number Header Length and OptionsWindow Size ChecksumUrgent Pointer Options (0 or more 32-bit words)

TCP/IP packet APP. DATATCPIPMAC Ver.Total Length Identification Time to Live Source Address IHLService Type Options and Fragment Offset ProtocolHeader Checksum Options (0 or more 32-bit words) Destination Address

TCP/IP packet APP. DATATCPIPMAC PreambleD. Add.S. Add.CRCLeng.

TCP Header: 5-tuple example 5-tuple is reversed for return communication Destination port is associated with application layer protocol (e.g., 80 for HTTP) Operating system picks source port randomly 22

TCP header Port numbers Sequence number Position of data ACK number Next expected data Checksum Flags for connection setup and teardown 23

What functionality does TCP provide? Reliability Recovery from errors in the network layer Flow control Limit transmission rate to not overwhelm receiver Congestion control Limit transmission rate to not overwhelm network 24

Reliable data transfer How can reliability be achieved? Consider different assumptions for network layer Case 1: completely reliable network layer Send segment Case 2: bit errors in network layer Add error detection and ACK/NAK Add sequence number to handle garbled ACK/NAK Case 3: bit errors and packet loss in network layer Timer to trigger retransmission “Stop-and-wait” protocol 25

Reliable data transfer Stop-and-wait has low performance How can we increase throughput? Sliding window Allow multiple segments “in-flight” 26

Sliding window example 27

UDP: bare bones protocol Ports, length, checksum Checksum is optional 28

29

Internet Protocol IP header Source and destination address Datagram length Upper layer protocol Identifies TCP, UDP, etc. Time to live Protection against accidental loops Header checksum Protection against bit errors Fragmentation possible Link layer limited to some datagram size (min. MTU is 576 bytes) 30

Other IP aspects Routing Determines forwarding ICMP Error handling Link layer Address resolution (ARP) Dynamic IP addresses (DHCP) Application layer Domain names (DNS) Transport layer Network address translation (NAT) New IP version: IPv6 31

Network systems Data is switched between network stacks 32

Classification of network systems Network system differ by level of protocol processing 33

Example network system: NIC Network interface card / adapter connects to link Block diagram: 34

Example network system: switch Switch connects multiple links Block diagram: 35

Example network system: switch System may differ by system architecture Example: share memory vs. distributed memory 36

Application requirements Different applications have different requirements: 37

Throughput preservation Throughput performance Ensure network system can handle link rates at all points Delay/jitter Ensure network system processes traffic quickly Packet loss Ensure sufficient buffer space and fast processing Most network system design focus on bandwidth 38

Packet rate vs. data rate Data rate states total number of bits per second Each packet requires specific processing Packet rate sometimes more meaningful What is the packet rate for a 10Gbps link? Distinguish small packets and large packets 39

System design for throughput What are the differences between these systems? How do they affect throughput preservation? 40