Chapter 5: Network Layer (Part I)

Slides:



Advertisements
Similar presentations
NETWORK LAYER (1) T.Najah AlSubaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Advertisements

4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
10 - Network Layer. Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving.
Oct 21, 2004CS573: Network Protocols and Standards1 IP: Addressing, ARP, Routing Network Protocols and Standards Autumn
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
Network Layer4-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
1 Network Layer: Host-to-Host Communication. 2 Network Layer: Motivation Can we built a global network such as Internet by extending LAN segments using.
Network Layer4-1 Data Communication and Networks Lecture 6 Networks: Part 1 Circuit Switching, Packet Switching, The Network Layer October 13, 2005.
Network Layer session 1 TELE3118: Network Technologies Week 4: Network Layer Basics, Addressing Some slides have been taken from: r Computer Networking:
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.5 Routing algorithms m Link state m Distance.
IP Address 0 network host 10 network host 110 networkhost 1110 multicast address A B C D class to to
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 15.
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Network Layer Goals: understand principles behind network layer services: –routing (path selection) –dealing with scale –how a router works –advanced topics:
G64INC Introduction to Network Communications Ho Sooi Hock Internet Protocol.
Network Layer (3). Node lookup in p2p networks Section in the textbook. In a p2p network, each node may provide some kind of service for other.
Introduction to Network Layer. Network Layer: Motivation Can we built a global network such as Internet by extending LAN segments using bridges? –No!
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 18 Omar Meqdadi Department of Computer Science and Software Engineering University.
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
Introduction 1-1 EKT355/4 ADVANCED COMPUTER NETWORK MISS HASNAH AHMAD School of Computer & Communication Engineering.
7-1 Last time □ Wireless link-layer ♦ Introduction Wireless hosts, base stations, wireless links ♦ Characteristics of wireless links Signal strength, interference,
1 CSE3213 Computer Network I Network Layer (7.1, 7.3, ) Course page: Slides modified from Alberto Leon-Garcia.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Network Layer introduction.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
TELE202 Lecture 5 Packet switching in WAN 1 Lecturer Dr Z. Huang Overview ¥Last Lectures »C programming »Source: ¥This Lecture »Packet switching in Wide.
Internet Protocol ECS 152B Ref: slides by J. Kurose and K. Ross.
4: Network Layer4-1 Schedule Today: r Finish Ch3 r Collect 1 st Project r See projects run r Start Ch4 Soon: r HW5 due Monday r Last chance for Qs r First.
Chapter 14 Connection-Oriented Networking and ATM
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
The Network Layer Introduction  functionality and service models Theory  link state and distance vector algorithms  broadcast algorithms  hierarchical.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Forwarding.
Univ. of TehranComputer Network1 Advanced topics in Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani.
1 Switching and Forwarding Sections Connecting More Than Two Hosts Multi-access link: Ethernet, wireless –Single physical link, shared by multiple.
Network Layer4-1 Chapter 4 Network Layer All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
4: Network Layer4a-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m routing (path selection) m dealing.
Scaling the Network: Subnetting and Protocols
The Network Layer.
INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723
Data Communication and Networks
Chapter 3 Part 3 Switching and Bridging
Chapter 9 Introduction To Data-Link Layer 9.# 1
Chapter 3: Packet Switching (overview)
Computer Communication Networks
Some slides have been taken from:
Scaling the Network Chapters 3-4 Part 2
IP: Addressing, ARP, Routing
Scaling the Network Chapters 3-4 Part 1
Chapter 4 Network Layer All material copyright
Chapter 4 Introduction to Network Layer
EE 122: Lecture 19 (Asynchronous Transfer Mode - ATM)
Scaling the Network: The Internet Protocol
Network Layer Goals: Overview:
IP.
CS4470 Computer Networking Protocols
EEC-484/584 Computer Networks
Internetworking & Address Resolution
Chapter 3 Part 3 Switching and Bridging
Chapter 4-1 Network layer
Chapter 4 Introduction to Network Layer
EEC-484/584 Computer Networks
Network Layer I have learned from life no matter how far you go
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
EEC-484/584 Computer Networks
Chapter 3 Part 3 Switching and Bridging
Scaling the Network: The Internet Protocol
ECSE-4670: Computer Communication Networks (CCN)
Presentation transcript:

Chapter 5: Network Layer (Part I) Introduction Addressing Address resolution Network service models Readings Sections 5.1, 5.5, 5.6

Network Layer: Introduction A network-wide concern! Data link layer Between two physically connected hosts Transport layer Between two end hosts Network layer Involves every router, host in the network

Network Layer Functions Addressing Globally unique address for each routable device Logical address, unlike MAC address Assigned by network operator Need to map to MAC address Router functionality Forwarding – how to get through a router From input port to appropriate output port in a router Routing – how to get through the network Which path to use to forward packets from src to dest

Router Architecture: control plane and data plane

Router Input/Output Processing

A question Data plane speed: Consider a router with 24 10Gbps ports. Let packet size be 100 Bytes. How much time does the router have to process and move the packet (from the input port to the output port)? Can we realize such a router with a computer? PCIe v5.0: 64GB/s RAM access time: 70ns Control plane speed: corresponding to network topology changes. How often does a network topology change?

Internet Protocol (IP) Universal service in a heterogeneous world IP over everything Virtual overlay network Globally unique logical address for a host Address resolution logical to physical address mapping

IP Addressing A 32-bit number that uniquely identifies a location Written using dotted decimal notation Two-level hierarchy: network id and host id Network IDs administered by Internet Assigned Number Authority (IANA) Host IDs administered locally

IP Addressing IP address is assigned to each network interface Routers connect two or more physical networks Each interface has its own address Multi-homed host A host having multiple connections to Internet Multiple addresses identify the same host Does not forward packets between its interfaces

IP “Classful” Addressing Scheme Three unicast address classes: A, B, and C One multicast: class D network host 10 110 1110 multicast address A B C D class 1.0.0.0 to 127.255.255.255 128.0.0.0 to 191.255.255.255 192.0.0.0 to 223.255.255.255 224.0.0.0 to 239.255.255.255 32 bits

Classless Inter-Domain Routing Classful addressing scheme wasteful IP address space exhaustion Class B net allocated enough for 65K hosts Even if only 2K hosts in that network Solution: CIDR Eliminate class distinction No A,B,C Keep multicast class D

Classless Addressing Addresses allocated in contiguous blocks Number of addresses assigned always power of 2 Network portion of address is of arbitrary length Address format: a.b.c.d/x x is number of bits in network portion of address 11001000 00010111 00010000 00000000 network part host 200.23.16.0/23

IP Addressing first 24 bits are network address 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 LAN first 24 bits are network address Three networks (subnets) in this example: 223.1.1.0/24, 223.1.2.0/24, 223.1.3.0/24. A network is a finest granuarity unit in the Internet that can be routed toward.

IP Addressing Interconnected system consisting of six networks 223.1.3.2 223.1.3.1 223.1.3.27 223.1.1.1 223.1.1.3 223.1.1.4 223.1.2.2 223.1.2.1 223.1.2.6 223.1.1.2 223.1.7.0 223.1.7.1 223.1.8.0 223.1.8.1 223.1.9.1 223.1.9.2 Interconnected system consisting of six networks

Special IP Addresses Network address: host id = all 0’s Directed broadcast address: host id = all 1’s Local broadcast address: all 1’s Local host address (this computer): all 0’s Loopback address network id = 127, any host id (e.g. 127.0.0.1)

Address Resolution IP address is virtual Not understood by underlying physical networks IP packets need to be transmitted by the underlying physical network Address resolution Translating IP address to physical address Address Resolution Protocol (ARP)

ARP Cache Each computer maintains a cache table Exchanges ARP messages IP address  hardware address mapping Only about computers on the same network Try out “/usr/sbin/arp –a” command Exchanges ARP messages To resolve IP addresses with unknown hardware addresses Encapsulated in DLL frame (e.g., Ethernet data frame)

ARP Protocol When a node sends an IP packet to another node on the same physical network Look up destination address in the ARP table If not found Broadcast a request to the local network Whose IP address is this? What info should the request message contain?

ARP Message

ARP Response The target node responds to sender (unicast?) With its physical address Adds the requester into its ARP table (why?) On receiving the response Requester updates its table Other nodes upon receiving the request Refresh the requester entry if already there No action otherwise (why?) Table entries deleted if not refreshed for a while

ARP Example

A point IP assumes that its underlying physical network has the broadcast capability! Can this be a problem? Sometimes

Network Service Models Datagram Packets forwarded independently Connectionless Virtual Circuit (VC) Packets of the same VC follow the same path Need VC setup before packets can be sent

Network Layer Service: Datagram No notion of connection in network layer No path or connection setup Packets routed independently No guarantee of reliable or in-order delivery Packet loss recovery at end-systems Advantages No connection state in routers Robust with respect to link failures

Datagram networks: the Internet model no call setup at network layer routers: no state about end-to-end connections no network-level concept of “connection” packets typically routed using destination host ID packets between same source-dest pair may take different paths application transport network data link physical application transport network data link physical 1. Send data 2. Receive data

IP datagram delivery model Each packet carries source and destination Case Study: IP IP datagram delivery model Each packet carries source and destination IP tries its best to deliver every packet Best effort service No guarantees

Forwarding/Routing IP Datagrams Routing and IP address Routing based on network id Only delivers packet to the appropriate network Once on destination network, direct delivery using the host id IP destination-based next-hop routing paradigm Hop-by-hop forwarding Each host/router has IP forwarding table Entries like <network prefix, next-hop, output interface> How big can a routing/forwarding table be? Try out “/usr/bin/netstat –rn” command The forwarding/routing table entries are maintained through the routing algorithm.

Getting a datagram from source to dest. routing table in A Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 IP datagram: misc fields source IP addr dest data 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 A B E datagram remains unchanged, as it travels source to destination addr fields of interest here

Getting a datagram from source to dest. Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 misc fields 223.1.1.1 223.1.1.3 data Starting at A, given IP datagram addressed to B: look up net. address of B find B is on same net. as A link layer will send datagram directly to B inside its frame B and A are directly connected (use ARP to resolve the physical address) One LAN corresponds to one IP networks. (What does this mean? And Why?) 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 A B E

Getting a datagram from source to dest. Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 misc fields 223.1.1.1 223.1.2.2 data Starting at A, dest. E: look up network address of E E on different network A, E not directly attached routing table: next hop router to E is 223.1.1.4 link layer sends datagram to 223.1.1.4 inside its frame datagram arrives at 223.1.1.4 What are the physical addresses (and IP addresses) in the frame sent? 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 A B E

Getting a datagram from source to dest. network router Nhops interface 223.1.1 - 1 223.1.1.4 223.1.2 - 1 223.1.2.9 223.1.3 - 1 223.1.3.27 Dest. next misc fields 223.1.1.1 223.1.2.2 data Arriving at 223.1.4, destined for 223.1.2.2 look up network address of E E on same network as router’s interface 223.1.2.9 router, E directly attached link layer sends datagram to 223.1.2.2 inside link-layer frame via interface 223.1.2.9 datagram arrives at 223.1.2.2!!! (hooray!) 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 A B E

Network Layer Service: Virtual Circuit Connection-oriented network service Virtual circuit: looks like a circuit but isn’t. Circuit .vs. Virtual circuit -- bandwidth usage, statistical multiplexing All packets with the same VC or connection follow the same route Establishment of VC Setup request flows from sender to receiver Forwarding tables updated at intermediate nodes

Pros and Cons of Virtual Circuit Key issue: Per-VC state at each router/switch Stateful router .vs. stateless router Router’s perspective: the frequency of network state change The control plane in a stateful router is more complex Suitable for traffic engineering Multipath routing between source-destination pair Can support Quality of Service Reserve resources per VC Accept/Reject VC setup request based on resource availability along a path

Virtual Circuit: How Does It Work Two phases VC setup before data transmission Signaling to setup forwarding table Packet transmission after VC has been setup Each router looks up forwarding table Finds the outgoing port using incoming VCI (identifier) Performs incoming VCI to outgoing VCI translation

Virtual circuits: signaling protocols used to setup, maintain teardown VC used in ATM, frame-relay, X.25 MPLS (Multi-Protocol Label Switching) application transport network data link physical application transport network data link physical 5. Data flow begins 6. Receive data 4. Call connected 3. Accept call 1. Initiate call 2. incoming call

Which one is bigger: VC forwarding table or routing table?

Virtual Circuit Setup Select a path from source to destination Send VC setup request control packet Each router along the path Choose a local VC id (VCI) for the connection Need to ensure that no two distinct VCs leaving the same output port have the same VCI Update forwarding table Mapping between incoming VCI & port no. and outgoing VCI & port no.

Case Study: ATM Networks Asynchronous Transfer Mode Single technology for handling voice,video, and data Connection-oriented service using virtual circuits In-sequence but unreliable Cell switching using fixed-size cells: 53 bytes Statistical multiplexing of cells of different circuits Provide QoS guarantees/assurance Variety of services such as CBR, VBR, ABR etc

ATM Cell Format

Virtual Circuit Switching VCI: 16 bits, local to a link VCI of each VC must be unique on each link Incoming VCI to outgoing VCI translation Using a forwarding table (in VCI, in port)  (out VCI, out port)

VC Switching Example

Virtual Paths and VP Switch Why use Virtual Paths (VPs)? VCs of different VPs can have same VCIs VPI/VCI translation Cells are routed using VPI/VCI pairs in the header VP Switch Routing based on VPI only, VCI not translated

Datagram vs Virtual Circuit Internet data exchange among computers “elastic” service, no strict timing req. “smart” end systems (computers) can adapt, perform control, error recovery simple inside network, complexity at “edge” many link types different characteristics uniform service difficult ATM evolved from telephony human conversation: strict timing, reliability requirements need for guaranteed service “dumb” end systems telephones complexity inside network

Datagram or Virtual Circuit? Burning question: to VC or not to VC? Support both service models Best effort service: datagrams QoS guarantees: virtual circuits New IP Forwarding Paradigm Multiple Protocol Label Switching (MPLS) VC-based layer 2+1/2 switching Resides between layer 2 & 3 For traffic engineering and QoS