Network Layer (1) Networked Systems 3 Lecture 8

Similar documents
IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia

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

TCP /IP Fundamentals Mr. Cantu

Where we are in the Course

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

Need For Protocol Architecture

Need For Protocol Architecture

IP - The Internet Protocol

ICS 351: Networking Protocols

Internet Protocol. Outline Introduction to Internet Protocol Header and address formats ICMP Tools CS 640 1

OSI Layer OSI Name Units Implementation Description 7 Application Data PCs Network services such as file, print,

Chapter 5 OSI Network Layer

Introduction to TCP/IP networking

CSE/EE 461 The Network Layer. Application Presentation Session Transport Network Data Link Physical

CSCI-1680 Network Layer: IP & Forwarding John Jannotti

Chapter 5 Network Layer

CompSci 356: Computer Network Architectures. Lecture 8: Spanning Tree Algorithm and Basic Internetworking Ch & 3.2. Xiaowei Yang

IP Packet Switching. Goals of Todayʼs Lecture. Simple Network: Nodes and a Link. Connectivity Links and nodes Circuit switching Packet switching

ETSF05/ETSF10 Internet Protocols Network Layer Protocols

Internet Layers. Physical Layer. Application. Application. Transport. Transport. Network. Network. Network. Network. Link. Link. Link.

5105: BHARATHIDASAN ENGINEERING COLLEGE NATTARMPALLI UNIT I FUNDAMENTALS AND LINK LAYER PART A

CSCI-GA Operating Systems. Networking. Hubertus Franke

Ref: A. Leon Garcia and I. Widjaja, Communication Networks, 2 nd Ed. McGraw Hill, 2006 Latest update of this lecture was on

RMIT University. Data Communication and Net-Centric Computing COSC 1111/2061. Lecture 2. Internetworking IPv4, IPv6

TCP/IP THE TCP/IP ARCHITECTURE

ECE4110 Internetwork Programming. Introduction and Overview

User Datagram Protocol

IP : Internet Protocol

Lecture 9: Internetworking

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

ECE 4450:427/527 - Computer Networks Spring 2017

Goal of Today s Lecture. EE 122: Designing IP. The Internet Hourglass. Our Story So Far (Context) Our Story So Far (Context), Con t

Networking and Internetworking 1

SC/CSE 3213 Winter Sebastian Magierowski York University CSE 3213, W13 L8: TCP/IP. Outline. Forwarding over network and data link layers

Introduction. IP Datagrams. Internet Service Paradigm. Routers and Routing Tables. Datagram Forwarding. Example Internet and Conceptual Routing Table

This tutorial will help you in understanding IPv4 and its associated terminologies along with appropriate references and examples.

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS

EE 122: IP Forwarding and Transport Protocols

ECE 158A: Lecture 7. Fall 2015

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

Vorlesung Kommunikationsnetze

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

Chapter 7. Local Area Network Communications Protocols

End-to-End Communication

Position of IP and other network-layer protocols in TCP/IP protocol suite

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

EE 610 Part 2: Encapsulation and network utilities

Lecture 2: Basic routing, ARP, and basic IP

The Internet. 9.1 Introduction. The Internet is a global network that supports a variety of interpersonal and interactive multimedia applications.

Information Network Systems The network layer. Stephan Sigg

Internet Control Message Protocol (ICMP)

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

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

Prof. Shervin Shirmohammadi SITE, University of Ottawa. Internet Protocol (IP) Lecture 2: Prof. Shervin Shirmohammadi CEG

CSCD 433/533 Advanced Networks

Goals and topics. Verkkomedian perusteet Fundamentals of Network Media T Circuit switching networks. Topics. Packet-switching networks

The Internet Protocol (IP)

CPSC156a: The Internet Co-Evolution of Technology and Society. Lecture 4: September 16, 2003 Internet Layers and the Web

Chapter 09 Network Protocols

Concept Questions Demonstrate your knowledge of these concepts by answering the following questions in the space that is provided.

OSI Network Layer. Chapter 5

Networking Background

SYED AMMAL ENGINEERING COLLEGE

Administrivia CSC458 Lecture 4 Bridging LANs and IP. Last Time. This Time -- Switching (a.k.a. Bridging)

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca Instructor: Nicholas DeMarinis

TCP/IP Protocol Suite

Networking and Internetworking 1

CS 457 Lecture 11 More IP Networking. Fall 2011

Sirindhorn International Institute of Technology Thammasat University

UNIT IV -- TRANSPORT LAYER

cs144 Midterm Review Fall 2010

CS519: Computer Networks. Lecture 2: Feb 2, 2004 IP (Internet Protocol)

The Interconnection Structure of. The Internet. EECC694 - Shaaban

EE-311 Data Communication & Networks

Communications Software. CSE 123b. CSE 123b. Spring Lecture 2: Internet architecture and. Internetworking. Stefan Savage

Announcements. IP Forwarding & Transport Protocols. Goals of Today s Lecture. Are 32-bit Addresses Enough? Summary of IP Addressing.

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

Internet. 1) Internet basic technology (overview) 3) Quality of Service (QoS) aspects

Lecture 11: Fragmentation & Addressing. CSE 123: Computer Networks Stefan Savage

On Distributed Communications, Rand Report RM-3420-PR, Paul Baran, August 1964

CS 356: Computer Network Architectures. Lecture 10: IP Fragmentation, ARP, and ICMP. Xiaowei Yang

NAT, IPv6, & UDP CS640, Announcements Assignment #3 released

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

CS UDP: User Datagram Protocol, Other Transports, Sockets. congestion worse);

Data & Computer Communication

Your Name: Your student ID number:

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

Telecom Systems Chae Y. Lee. Contents. Overview. Issues. Addressing ARP. Adapting Datagram Size Notes

Networking: Network layer

Chapter 12 Network Protocols

Cisco Cisco Certified Network Associate (CCNA)

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

CS 457 Networking and the Internet. Problems. Mechanisms 9/21/16. Fall 2016 Indrajit Ray

CPSC 441 COMPUTER COMMUNICATIONS MIDTERM EXAM SOLUTION

The Internetworking Problem. Internetworking. A Translation-based Solution

QUIZ: Longest Matching Prefix

EP2120 Internetworking/Internetteknik IK2218 Internets Protokoll och Principer

Computer Networks Security: intro. CS Computer Systems Security

Introduction to Networks and the Internet

Transcription:

Network Layer (1) Networked Systems 3 Lecture 8

Role of the Network Layer Application Application The network layer is the first end-to-end layer in the OSI reference model Presentation Session Transport Network Data Link Network Data Link Network Data Link Presentation Session Transport Network Data Link Physical Physical End System Router/Gateway End System Responsible for end-to-end delivery of data: Across multiple link-layer hops and technologies Across multiple autonomous systems Building an Internet: a set of interconnected networks 2

Interconnecting Networks An internet comprises a set of interconnected networks Tier-1 ISP Regional ISP Local ISP End Site Host Host Host Ethernet Each network administered separately an autonomous system (AS) making independent policy and technology choices 3

Components of an Internet A common end-to-end network protocol Provide a single seamless service to transport layer Delivery of data packets/provisioning of circuits Addressing of end systems A set of gateway devices (a.k.a. routers) Implement the common network protocol Hide differences in link layer technologies Framing, addressing, flow control, error detection and correction Desire to perform the least amount of translation necessary 4

The Internet The globally interconnected networks running the Internet Protocol (IP) Initial design by Vint Cerf and Robert Kahn, 1974 IP provides an abstraction layer Transport protocols and applications above Assorted data link technologies and physical links below A simple, best effort, connectionless, packet delivery service Source: IEEE Vint Cerf Addressing, routing, fragmentation and reassembly Source: IEEE Robert Kahn 5

Internet Protocol MIME HTML SDP SMTP HTTP SIP TCP UDP IP Ethernet Codecs RTP Hour glass Internet model: the IP network layer provides a common infrastructure component Wi-Fi Wireless ADSL SONET Twisted Pair Optical Fibre 6

IP Service Model Best effort, connectionless, packet delivery Just send no need to setup a connection first Network makes its best effort to deliver packets, but provides no guarantees Time taken to transit the network may vary Packets may be lost, delayed, reordered, duplicated or corrupted The network discards packets it can t deliver Easy to run over any type of link layer Fundamental service: can easily simulate a circuit over packets, but simulating packets over a circuit difficult 7

Best Effort Packet Delivery 120 100 80 RTT (ms) 60 40 Measured round-trip time to www.google.com 20 from host on Wi-Fi plus ADSL for a 20 second period (4th January 2008, 7pm) 0 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Time (ms) 8

Internet Protocol Two versions of IP in use: IPv4 the current production Internet IPv6 the next generation Internet IPv5 was assigned to the Internet Stream Protocol An experimental multimedia streaming protocol developed between 1979 and 1995 [http://www.ietf.org/rfc/rfc1819.txt], but no longer used 9

IPv4 The Internet is the global network running IPv4 Introduced in 1983 Initial implementation on BSD Unix, but now runs on everything from mainframes to PCs, phones, games, TV set-top boxes, etc 10

IPv4 Packet Format 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) Addressing Fragmentation and reassembly Loop prevention Error recovery Upper layer protocol identification Differentiated services Explicit congestion notification Data variable length 11

IPv4 Addresses 32 bit destination and source addresses sent in every packet Example: 130.209.247.112 Intended to be globally unique, not enough 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) Data variable length addresses available Details in next lecture... 12

Aside: Address Resolution Network layer handles wide area routing, but how to communicate across a local link? Know the network layer address you wish to talk to, but need to find the corresponding link layer address Use link layer broadcast for queries: Request: I have network address Ns, link address Ls, and want talk to host with network address Nd gets response I have network address Nd and link address Ld. Address Resolution Protocol (ARP) a general protocol, not IP specific 13

IPv4 Fragmentation Hosts may send packets with length up to 65535 bytes Routers will fragment if link MTU too small 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) Data variable length MF set if more fragments follow; reconstruct using fragment offset Unless DF bit is set, in which case packet discarded and an error is returned Length = 2000 Router Length = 500, MF = 0, fragment offset = 1500 Length = 1500, MF = 1, fragment offset = 0 14

IPv4 Loop Prevention Packets have time to live (TTL) field Set to some value (typically 64) when the packet is sent Decrease by one at each router traversed, discard packet if TTL reaches zero 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) Data variable length Prevents packets from looping forever if a routing problem causes a loop 15

IPv4 Error Recovery Checksum to detect transmission errors In the IP header only data not protected (must be protected by upper layer protocol, if needed) Generally redundant, since link layers often include a checksum over the entire packet 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) Data variable length 16

IPv4 Upper Layer Protocol ID Indicates what content follows the header 6 TCP 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) 17 UDP 33 DCCP Data variable length... Identify transport layer protocol/format of the data Used by end systems to pass packets to the correct upper layer protocol 17

IPv4 Differentiated Service End systems can request differentiated service from the network E.g. request low latency for VoIP Accounting issues: who is allowed to request differentiated service? do they have to pay extra for it? 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) Data variable length A hint to the network, not a guarantee Police at the edges, to avoid state in the core Scalability, compared to explicit reservation protocols, and why it s important 18

IPv4 ECN Routers can set explicit congestion notification bits to signal that congestion is occurring End systems use this as a hint to reduce their sending rate 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 4 Header Len DSCP ECN Total Length Packet Identifier DF MF Fragment Offset TTL Upper Layer Protocol Header Checksum Source Address Destination Address (Options variable length, padded to 32 bit boundary) Data variable length If congestion doesn t ease, the routers start to discard packets 19

IPv6 A revision to IP, intended to be the long term replacement for IPv4 Primary goal: increase the size of the address space, to allow more hosts on the network Beginning to see wide implementation Current version of specification published in 1998 Implemented in Windows XP, Windows Vista, MacOS X, Linux, FreeBSD, Symbian, Router implementations becoming more widespread (present in Cisco and Juniper backbone routers, but yet not common Linksys and D-Link home routers...) 20

IPv6 Packet Format 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 6 DSCP ECN Flow Label Payload Length Next Header Hop Limit Simpler header processing Larger addresses (128 bit vs. 32 bit) No fragmentation and reassembly Flow labels Source Address Destination Address (Optional Extension Headers variable length) Data variable length 21

IPv6 Simplified Header Header has fewer fields, a more regular structure Much easier to process at very high speeds Now supports extension headers chained after IPv6 header the next header field identifies Each extension indicates if router must process it, or can ignore if not understood 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 6 DSCP ECN Flow Label Payload Length Next Header Hop Limit Source Address Destination Address (Optional Extension Headers variable length) Data variable length Eventually the next header will be a transport protocol header 22

IPv6 Addresses Source and destination addresses are 128 bits 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 6 DSCP ECN Flow Label Payload Length Next Header Hop Limit Source Address Can give every host a globally unique address Destination Address (Optional Extension Headers variable length) Data variable length Greatly simplifies applications Addressable does not necessarily mean reachable (due to firewalls) Privacy features lets hosts use random addresses, to give the same degree of privacy as IPv4 (i.e. very little, since your ISP is required by law to record the address that is assigned to you at all times, and keep connection logs) 23

IPv6 Fragmentation Unlike IPv4, IPv6 routers don t fragment packets Return a ICMP error and discard the large packet instead Hosts required to recover from this, generating smaller packets The end-to-end principle, used to simplify router implementations 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 6 DSCP ECN Flow Label Payload Length Next Header Hop Limit Source Address Destination Address (Optional Extension Headers variable length) Data variable length 24

IPv6 Quality of Service Differentiated services work exactly the same as IPv4 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Version = 6 DSCP ECN Flow Label Payload Length Next Header Hop Limit Source Address Flow Label field identifies data flow independently of transport protocol Destination Address (Optional Extension Headers variable length) Data variable length Routers no longer have to parse the header of TCP, UDP, DCCP, etc. to group packets into a flow; simplifies differentiated services for high-speed operation End systems can group several transport layer connections into a single flow 25

IPv4 or IPv6? Not yet clear if IPv6 will be widely deployed But, simple to build applications that work with both versions of IP DNS query using getaddrinfo() will return IPv6 address if it exists, else IPv4 address; all other socket calls use the returned value Write new code to support both IPv6 and IPv4 26

Questions? 27