The TCP/IP Architecture. Jean Yves Le Boudec 2015

Similar documents
The TCP/IP Architecture. Jean Yves Le Boudec 2015

The TCP/IP Architecture. Jean Yves Le Boudec 2015

The TCP/IP Architecture Jean Yves Le Boudec 2014

The TCP/IP Architecture Jean Yves Le Boudec 2014

The TCP/IP Architecture. Jean Yves Le Boudec 2017

The TCP/IP Architecture. Jean Yves Le Boudec 2017

The Netwok Layer IPv4 and IPv6 Part 1

The Netwok Layer IPv4 and IPv6 Part 1

The Netwok Layer IPv4 and IPv6 Part 1

The Netwok Layer IPv4 and IPv6 Part 1

The Netwok 15 Layer IPv4 and IPv6 Part 3

Computer Networks Principles

The Network 15 Layer IPv4 and IPv6 Part 3

The Netwok Layer IPv4 and IPv6 Part 1

Computer Networking. Introduction. Quintin jean-noël Grenoble university

COMS Introduction to Computers. Networking

ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE. TCP/IP for Dummies. Jean-Yves Le Boudec

Review of Important Networking Concepts

Networking and TCP/IP. John Kalbach November 8, 2004

Chapter 2 Communicating Over the Network

Mid Sweden University Dept. of IT and Media (ITM) Magnus Eriksson Tel , Jan 2009.

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

COMPONENTS OF DATA COMMUNICATION

ECS 15; Lectures 17 and 18. The Internet. What is the internet, and how does it work? TA feedback

Operating Systems CS 571

DATA COMMUNICATION AND NETWORKS

Internet. Organization Addresses TCP/IP Protocol stack Forwarding. 1. Use of a globally unique address space based on Internet Addresses

Revision of Previous Lectures

Part 1: Introduction. Goal: Review of how the Internet works Overview

Networking for Data Acquisition Systems. Fabrice Le Goff - 14/02/ ISOTDAQ

Special expressions, phrases, abbreviations and terms of Computer Networks

The Netwok Layer IPv4 and IPv6 Part 2

Layering in Networked computing. OSI Model TCP/IP Model Protocols at each layer

Network Protocols - Revision

TCP/IP THE TCP/IP ARCHITECTURE

CS 428/528 Computer Networks Lecture 01. Yan Wang

ET4254 Communications and Networking 1

MID-TERM EXAM TCP/IP NETWORKING Duration: 2 hours

Defining Networks with the OSI Model. Module 2

The MAC Layer. Clicker registration

NETWORK PROBLEM SET Due Date 6/28/2014

OSI Reference Model. Computer Networks lab ECOM Prepared By : Eng. Motaz Murtaja Eng. Ola Abd Elatief

EECS 122: Introduction to Communication Networks Final Exam Solutions

Module 2 Overview of Computer Networks

Module 2 Overview of. Computer Networks

CS3600 SYSTEMS AND NETWORKS

The MAC Layer. Contents. Textbook. Jean Yves Le Boudec Fall 2012

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

precise rules that govern communication between two parties TCP/IP: the basic Internet protocols IP: Internet protocol (bottom level)

Chapter 7. Local Area Network Communications Protocols

Data & Computer Communication

End-to-End Communication

Lecture 7: Internetworking See Chapter 3 of Colouris

Networking Fundamentals

The OSI Model. Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO).

Chapter 11: Wide-Area Networks and the Internet

Data Communication. Introduction of Communication. Data Communication. Elements of Data Communication (Communication Model)

Introduction to Information Science and Technology 2017 Networking I. Sören Schwertfeger 师泽仁

Networking interview questions

===================================================================== Exercises =====================================================================

Overview of Hierarchical Protocol Architecture. Suguru Yamaguchi Nara Institute of Science and Technology Department of Information Science

Internet A Brief Tutorial. Jean Walrand EECS U.C. Berkeley

MODULE: NETWORKS MODULE CODE: CAN1102C. Duration: 2 Hours 15 Mins. Instructions to Candidates:

Introduction to computer networking

Introduction to Computer Networking Chapter 1

CS1302 / Computer Networks

MID-TERM EXAM TCP/IP NETWORKING Duration: 2 hours With Solutions

Need For Protocol Architecture

Need For Protocol Architecture

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

CS 4390 Computer Networks. Transport Services and Protocols

Computer Communication Networks

ITP 140 Mobile Applications Technologies. Networks

Introduction to Computer Science 2017 Networking. Sören Schwertfeger

ET4254 Communications and Networking 1

OSI Network Layer. Network Fundamentals Chapter 5. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

ECS 152A Computer Networks Instructor: Liu. Name: Student ID #: Final Exam: March 17, 2005

CNBK Communications and Networks Lab Book: Purpose of Hardware and Protocols Associated with Networking Computer Systems

ECE 4450:427/527 - Computer Networks Spring 2017

6 Computer Networks 6.1. Foundations of Computer Science Cengage Learning

Business Data Communications and Networking

Number: Passing Score: 750 Time Limit: 120 min File Version: 1.0. Microsoft Exam Name: Identity with Windows Server 2016 (beta)

Router Router Microprocessor controlled traffic direction home router DSL modem Computer Enterprise routers Core routers

Introduction to Networking

Scribe Notes -- October 31st, 2017

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

The MAC Layer. Jean Yves Le Boudec 2015

Lecture 3: Modulation & Layering"

Networking Basics. EC512 Spring /15/2015 EC512 - Prof. Thomas Skinner 1

Principles behind data link layer services:

Network Security Fundamentals. Network Security Fundamentals. Roadmap. Security Training Course. Module 2 Network Fundamentals

Communication Networks

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS

Chapter Motivation For Internetworking

Examen final de Xarxes de Computadors (XC) 6/6/2011 NAME: SURNAME DNI:

Business Data Networks and Security 10th Edition by Panko Test Bank

Reti di Calcolatori I

TCP/IP Protocol Suite and IP Addressing

infrared Disadvantage: 1. cannot use for long-range communication or outside a building due to sun s rays.

ELC 537 Communication Networks

Transcription:

The TCP/IP Architecture Jean Yves Le Boudec 2015

Objective Understand Layered Model of Communication Systems Know what MAC, IP addresses and DNS names are Chapter 2: Introduction Textbook 2

Why? TCP/IP is a layered architecture Divide and conquer make things manageable What is it? Communication Application Transport Interconnection Network MAC Distance Physical 3

4 user clicks: http://www.zurich.ibm.com/rz.html Application Layer helps people and machines communicate IP addr = 193.5.61.131 GET www.zurich.ibm.com/rz.html Uses well defined protocols (set of rules and messages) ex: HTTP In the simplest case, involves 2 computers If you write an application that uses the network, you define your own Application Layer Web server data (HTML page)

Transport Layer helps Application layer Transport Layer provides programming interface to the application layer Relieve programmer from repetitive tasks In TCP/IP there are two main transport protocols UDP (User Datagram Protocol) offers a datagram service to the application (unit of information is a message) Unreliable (message may be lost) No sequence guarantee TCP (Transmission Control Protocol) Reliable: if some data is lost somewhere, TCP retransmits it Stream service: the data is delivered at destination in the order it was sent by source (sequence guarantee) (but unit of information is a byte; grouping of data into blocks may be different at destination than at source) application may use UDP or TCP depending on requirements programming interface is called the socket API later chapter 5

6 Network Layer provides full connectivity Direct connect ions are not possible

7 The Very First Computer Networks (Bitnet, SNA) used Store and Forward T1 point to point cables 1 to T3: Hello T2 2 From T1: Hello T3 terminals mainframe computer

The Internet Uses Packet Switching Data is broken into chunks called IP packets of size 1500 bytes One packet postcard, contains source and destination addresses 8

9 Mail server Mail server

Why packet switching? 1. It reduces buffer required in routers 2. It reduces the bit error rates 3. It increases capacity 4. I don t know 0% 0% 0% 0% 10 It reduces buffer required i... It reduces the bit error rates It increases capacity I don t know

12 Network Layer Example: EPFL s IPv4 Network ETHZ-Backbone 129.132.100.12 129.132.100.27 129.132.35.1 Komsys 129.132 66.46 Modem + PPP 128.178.84.133 Switch 130.59.x.x 128.178.84.130 128.178.84.1 128.178.47.3 128.178.47.5 EPFL-Backbone 128.178.15.13 128.178.100.12 stisun1 128.178.15.7 15.221 128.178.100.3 128.178.71.34 128.178.71.23 128.178.182.3 128.178.182.5 128.178.182.1 128.178.71.1 128.178.79.1 INF119 IC 0000 0000 (binary) -> 0(decimal) 1111 1111 (binary) -> 255 (decimal) 8 bits 128.178.71.22 disun3.epfl.ch 128.178.79.9 LEMA 128.178.29.64 lrcmac4.epfl.ch

13 Network Layer Example: EPFL s IPv4 Network ETHZ-Backbone 129.132.100.12 129.132.100.27 129.132.35.1 Komsys 129.132 66.46 Modem + PPP 128.178.84.133 Switch 130.59.x.x 128.178.84.130 128.178.84.1 128.178.15.13 128.178.100.12 stisun1 128.178.15.7 15.221 128.178.100.3 128.178.182.5 EPFL-Backbone 128.178.182.1 IC 128.178.47.3 128.178.47.5 128.178.182.3 128.178.71.1 128.178.79.1 LEMA 128.178.71.34 INF119 disun3.epfl.ch 128.178.79.9 128.178.29.64 lrcmac4.epfl.ch 128.178.71.23 128.178.71.22

There are two network layers: IPv4 and IPv6 The old numbering plan is IPv4 32 bits an EPFL address: 128.178.156.23 a private address: 192.168.1.23, 172.16.3.4, 10.201.121.98, The new numbering plan is IPv6 128 bits uses hexadecimal notation, blocks of 4 hex digits an EPFL public address: 2001:620:618:1a6:0a00:20ff:fe78:30f9 an EPFL private address: fd24:ec43:12ca:1a6:0a00:20ff:fe78:30f9 IPv4 and IPv6 network layers are distinct and incompatible see later

Adresses and Names Names are human readable synonyms for IPv4 or IPv6 addresses Examples: ssc.epfl.ch smtp.sunrise.ch ssc.epfl.ch www.nzherald.co.nz www.newzealand.com 2 letters = country code.com = commerce www.swiss.aero.aero = aeronautic sector 15

Names are mapped to addresses by DNS servers not present in IP headers Name server (DNS server) 128.178.15.8 A record (IPv4 address) AAAA record (IPv6 address) ssc.epfl.ch is 128.178.51.13 128.178.15.8 who is ssc.epfl.ch 128.178.56.9 ssc.epfl.ch is 128.178.51.3 click 128.178.56.9 OK 100 web server ssc.epfl.ch 128.178.56.9 128.178.56.9 AE:98:34:00 routers 128.178.51.3 HTTP get /index.htm 16

Link Layer = MAC layer interconnects a small number of devices without any configuration base station Ethernet Hub or Switch Using either Wireless or Cabled (Ethernet) or combination Uses a method to avoid collisions (see later) + uses MAC addresses MAC = Medium Access Control 17

MAC Addresses are Hardware Addresses MAC address: 48 bits = set by manufacturer, unique, in principle sender puts destination MAC address in a frame all stations within the local area read all frames; keep only if destination address matches (true for WiFi as well as Ethernet) Destination MAC Address is sent in the clear, no encryption (but data can be encrypted) Dest Addr = 00:00:c0:3f:6c:a4 data WiFi radio system or Ethernet cabling system A MAC address = 08:00:20:71:0d:d4 B C MAC address = 00:00:c0:3f:6c:a4

Local Area Network = A set of devices that are connected at the MAC layer WiFi LAN Ethernet LAN

How MAC and IP interact LANs can be interconnected by routers Every machine must know the IP address of the next router (called default gateway see module ip1) LAN A router R LAN B

Network Masks All machines that are in the same LAN communicate via the same router and are said to be in the same subnetwork The IP addresses of all machines in one subnetwork must have the same prefix (called network part ) ex: 128.178.71 The size (in bits) of the network part is not always the same; it must be specified in the machine together with the address; at EPFL IPv4, size of network part is always 24 bits: Example: 128.178.71.34 /24 For historical (and ridiculous) reasons the size of the network part is often specified using a network mask Mask = sequence of bits where 1 indicate where the position of the prefix. At EPFL IPv4, network mask is always 1111 1111 1111 1111 1111 1111 0000 0000 which is written in decimal notation as 255.255.255.0; Example: address =128.178.71.34, mask =255.255.255.255.0 We will study this in detail again in the module IP 21

Physical Layer Transforms Bits and Bytes into Electromagnetic Waves bits signal bits encoding decoding Encoding of bits as physical signals, usually electromagnetic Is technology specific: there are several Ethernet physical layers, several WLAN 802.11 physical layers Acoustic instead of electromagnetic used under water 22

23 Bit Rates Bit Rate of a transmission system = number of bits transmitted per time unit; is measured in b/s, 1 kb/s = 1000 b/s, 1 Mb/s = 10 6 b/s, 1Gb/s=10 9 b/s The bit rate of a channel is the number of bits per second. The bandwidth is the width of the frequency range that can be used for transmission over the channel. The bandwidth limits the maximal bit rate that can be obtained using a given channel. The purpose of information theory is to find the best possible bit rate on a given channel. For example: Shannon Hartley law: C max = B log 2 ( 1 + S/N ), with B = bandwidth (Hz), S/N = signal to noise ratio (not expressed in db); for example: telephone circuit: B = 3 khz, S/N = 30 db, C max = 30 kb/s In computer science, many people use bandwidth instead of bit rate. Practical Bit Rates: modem: 2.4 kb/s to 56kb/s ADSL line: 124 kb/s to 10 Mb/s Ethernet: 10 Mb/s, 100 Mb/s, 1Gb/s Wireless LAN: 1 to 50 Mb/s ATM: 2 Mb/s to 622 Mb/s Optical carriers: 155 Mb/s to 49 Gb/s

Transmission Time = time to send x bits at a given bit rate Q. time to send 1 MB at 10 kb/s =? 1. 800 s 2. 100 s 3. 12.5 s 4. 1 s 5. 12.5 ms 6. 1 ms 7. I don t know 0% 0% 0% 0% 0% 0% 0% 800 s 100 s 12.5 s 1 s 12.5 ms 1 ms I don t know 24

26 Propagation A Propagation between A and B = time for the head of signal to travel from A to B time t 0 t 1 t n B s 0 s 1 s n s i - t i = D (propagation delay) D = d /c, where d = distance, c =signal celerity (speed of light) copper: c= 2.3e+08 m/s; glass: c= 2e+08 m/s; Rule of thumb: 5 s/km; example: time through circuits also adds to propagation delays Lausanne Concarneau over acoustic channel. D =???

What is the propagation time around the 1. 200 s 2. 100 s 3. 200 ms 4. 100 ms 5. 2 ms 6. 1 ms 7. I don t know Earth (using copper cables)? 0% 0% 0% 0% 0% 0% 0% 200 s 100 s 200 ms 100 ms 2 ms 1 ms I don t know

Time to send 1 kb (one packet)

Throughput Throughput = number of useful data bits / time unit It is not the same as the bit rate. Why? protocol overhead: protocols like UDP use some bytes to transmit protocol information. This reduces the throughput. If you send one byte messages with UDP, then for every byte you create an Ethernet packet of size 1 + 8 + 20 + 26 = 53 bytes, thus the maximum throughput you could ever get at the UDP service interface if you use a 64 kb/s channel would be 1.2 kb/s. protocol waiting times: some protocols may force you to wait for some event, as we show on the next page. Same units as a bit rate b/s, kb/s, Mb/s 30

31

The pigeon and telecom throughputs are A. Pigeon = 4.39 Mb/s, Telecom = 176 kb/s B. Pigeon = 4.39 Mb/s, Telecom = 9.76 Mb/s C. Pigeon = 176 kb/s, Telecom = 4.39 Mb/s D. Pigeon = 176 kb/s, Telecom = 4.39 kb/s E. I don t know 0% 0% 0% 0% 0% Pigeon = 4.39 Mb/s, Telecom Pigeon = 4.39 Mb/s, Telecom Pigeon = 176 kb/s, Telecom. Pigeon = 176 kb/s, Telecom. I don t know

Example. The Stop and Go Protocol Packets may be lost during transmission: bit errors due to channel imperfections, various noises. Computer A sends packets to B; B returns an acknowledgement packet immediately to confirm that B has received the packet; A waits for acknowledgement before sending a new packet; if no acknowledgement comes after a delay T1, then A retransmits Example: What is the maximum throughput assuming that there are no losses? notation: packet length = L, constant (in bits); acknowledgement length = L, constant channel bit rate = b; propagation delay = D processing time is negligible 34

A Performance of The Stop and Go Protocol packet P1 sent packet P1 acknowledged T =L/b 2D T =L /b time B overhead «bandwidth»-delay product 35

36 Throughput with Stop and Go TCP uses a smarter scheme than Stop and Go and has a better performance

Putting Things Together Web server Elaine Web server sends a file to Elaine

38 Elaine Web server Application read(s1, datablock) Application send(s2, datablock) Transport (TCP) 1 2 3 4 5 Network (IP) 2 3 4 5 MAC (WLAN) 2 3 4 5 Physical Router Network (IP) 1 2 3 MAC 1 2 3 Physical Transport (TCP) 1 2 3 4 5 Network (IP) 1 2 3 4 5 MAC (Ethernet) 1 2 3 4 5 Physical

39 Elaine Terminology Web server TCP segment IP packet MAC frame

layer n uses the service of layer n 1 and offers a service to layer n+1. entities at the same layer are said peer entities operation rules between peer entities are called protocol PDU = Protocol Data Unit, SDU = Service Data Unit Layer 3 PDU = IP packet, layer 2 PDU = MAC frame 40 Protocol versus Service, PDU, SDU SDU SDU SAP Layer n entity service protocol demultiplexing SAP Layer n entity PDU PDU Layer n-1

The Onion View: header and payload MAC header (destination MAC address + other things) MAC payload MAC Frame

The Onion View: header and payload MAC header (destination MAC address + other things) IP packet IP header (IP destination address + other things) IP payload

The Onion View: header and payload MAC header (destination MAC address + other things) IP header (IP destination address + other things) TCP segment TCP header TCP payload

The Onion View: header and payload MAC header (destination MAC address + other things) IP header (IP destination address + other things) TCP header Bytes of an HTML file

A Packet captured and prettily displayed

We observe a packet from Web server to Elaine at 1; Say what is true 1 1. The destination MAC address is the MAC address of the router 2. The destination IP address is the IP address of the router 3. Both 1 and 2 4. None 5. I don t know

What is the definition of a «server»? 1. A machine that hosts resources used in the web 2. A computer with high CPU performance 3. A computer with large data storage 4. The role of a program that waits for requests to come 5. The role of a program that allows users to access large amounts of resources 6. None of the above

Questions?