The Network Layer.

Slides:



Advertisements
Similar presentations
Discussion Monday ( ). ver length 32 bits data (variable length, typically a TCP or UDP segment) 16-bit identifier header checksum time to live.
Advertisements

4: Network Layer4a-1 IP Addressing: introduction r IP address: 32-bit identifier for host, router interface r interface: connection between host, router.
Introduction1-1 message segment datagram frame source application transport network link physical HtHt HnHn HlHl M HtHt HnHn M HtHt M M destination application.
Announcement r Recitation tomorrow on Project 2 r Midterm Survey at the end of this class.
Network Layer Packet Forwarding IS250 Spring 2010
The Network Layer. 2 Announcements Project 4 is due next Monday, April 9th Homework 5 available later today, due next Wednesday, April 11th Prelim II.
11- IP Network Layer4-1. Network Layer4-2 The Internet Network layer forwarding table Host, router network layer functions: Routing protocols path selection.
IP Addressing: introduction
1 Announcements Review session next Friday 03/11 Homework 5 due on Friday 03/04 Project 3 due Wednesday 03/16.
Network Layer4-1 Data Communication and Networks Lecture 6 Networks: Part 1 Circuit Switching, Packet Switching, The Network Layer October 13, 2005.
Network Layer4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side,
Network Layer4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side,
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) 건국대학교 인터넷미디어공학부 임 창 훈.
Chapter 4 Queuing, Datagrams, and Addressing
4: Network Layer4a-1 IP datagram format ver length 32 bits data (variable length, typically a TCP or UDP segment) 16-bit identifier Internet checksum time.
Network Layer Goals: understand principles behind network layer services: –routing (path selection) –dealing with scale –how a router works –advanced topics:
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 A note on the use of these.
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.
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.
1 Network Layer Lecture 15 Imran Ahmed University of Management & Technology.
Network Layer4-1 Chapter 4 roadmap 4.1 Introduction and Network Service Models 4.2 Routing Principles 4.3 Hierarchical Routing 4.4 The Internet (IP) Protocol.
Network Layer4-1 The Internet Network layer forwarding table Host, router network layer functions: Routing protocols path selection RIP, OSPF, BGP IP protocol.
Transport Layer3-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Network Layer4-1 Datagram networks r no call setup at network layer r routers: no state about end-to-end connections m no network-level concept of “connection”
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
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.
The Internet Network layer
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 19 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.
IP Fragmentation. Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on rcving side,
1 COMP 431 Internet Services & Protocols The IP Internet Protocol Jasleen Kaur April 21, 2016.
IP Internet Protocol. IP TCP UDP ICMPIGMP ARP PPP Ethernet.
Fall, 2001CS 6401 Switching and Routing Outline Routing overview Store-and-Forward switches Virtual circuits vs. Datagram switching.
Graciela Perera Department of Computer Science and Information Systems Slide 1 of 18 INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723 Graciela.
Introduction to Networks
Chapter 4: Network Layer
INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723
Data Communication and Networks
Chapter 3 Part 3 Switching and Bridging
Computer Communication Networks
Chapter 4 Network Layer All material copyright
IP - The Internet Protocol
Scaling the Network: The Internet Protocol
Network Layer Goals: Overview:
CS4470 Computer Networking Protocols
Chapter 3 Part 3 Switching and Bridging
CS 457 – Lecture 10 Internetworking and IP
IP - The Internet Protocol
Dr. John P. Abraham Professor UTPA
EEC-484/584 Computer Networks
Wide Area Networks and Internet CT1403
Dr. John P. Abraham Professor UTRGV, EDINBURG, TX
Network Layer I have learned from life no matter how far you go
Dr. John P. Abraham Professor UTPA
Overview The Internet (IP) Protocol Datagram format IP fragmentation
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.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 5th edition. Jim Kurose, Keith Ross Addison-Wesley, April Network Layer.
IP - The Internet Protocol
Chapter 3 Part 3 Switching and Bridging
Network Layer: Control/data plane, addressing, routers
Scaling the Network: The Internet Protocol
ECSE-4670: Computer Communication Networks (CCN)
ITIS 6167/8167: Network and Information Security
IP - The Internet Protocol
32 bit destination IP address
Presentation transcript:

The Network Layer

Purpose of Network layer Given a packet, send it across the network to destination 2 key issues: Portability: connect different technologies Scalability To the Internet scale application transport network data link physical network data link physical

What does it involve? Two important functions: routing: determine path from source to dest. forwarding: move packets from router’s input to output T3 T1 T3 Sts-1 T1

Network service model Q: What service model for “channel” transporting packets from sender to receiver? guaranteed bandwidth? preservation of inter-packet timing (no jitter)? loss-free delivery? in-order delivery? congestion feedback to sender? The most important abstraction provided by network layer: ? virtual circuit or datagram? ? ? service abstraction Which things can be “faked” at the transport layer?

Two connection models Connectionless (or “datagram”): each packet contains enough information that routers can decide how to get it to its final destination Connection-oriented (or “virtual circuit”) first set up a connection between two nodes label it (called a virtual circuit identifier (VCI)) all packets carry label B A b C 1 1 1 B A C

Virtual circuits: signaling protocols used to setup, maintain teardown VC setup gives opportunity to reserve resources used in ATM, frame-relay, X.25 not used in today’s Internet 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

Virtual circuit switching Forming a circuit: send a connection request from A to B. Contains VCI + address of B rule: VCI must be unique on the link its used on switch creates an entry mapping input messages with VCI to output port switch picks a new VCI unique between it and next switch a b 2 5 1 c

Virtual circuit forwarding For each VCI switch has a table which maps input link to output link and gives the new VCI to use if a’s messages come into switch 1 on link 2 and go out on link 3 then the table will be: (Input link,VCI) (output link, new VCI) (1, 2) (?, ?) (1, 5) (?, ?) Switch 1 2 Switch 2 c 1 5 1 2 Switch 3 2 1 b a

Virtual Circuits: Discussion Plusses: easy to associate resources with VC Easy to provide QoS guarantees (bandwidth, delay) Very little state in packet Minuses: Not good in case of crashes Requires explicit connect and teardown phases What if teardown does not get to all routers? What if one switch crashes? Will have to teardown and rebuild route

Datagram networks 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 Best effort: data corruption, packet drops, route loops application transport network data link physical application transport network data link physical 1. Send data 2. Receive data

Datagrams: Forwarding How does packet get to the destination? switch creates a “forwarding table”, mapping destinations to output port (ignores input ports) when a packet with a destination address in the table arrives, it pushes it out on the appropriate output port when a packet with a destination address not in the table arrives, it must find out more routing information (next problem) a b c 1 d 2 S1 S2 S3

Datagrams Plusses: Minuses No round trip connection setup time No explicit route teardown No resource reservation  each flow could get max bandwidth Easily handles switch failures; routes around it Minuses Difficult to provide resource guarantees Higher per packet overhead Internet uses datagrams: IP (Internet Protocol)

Datagrams Forwarding How to build forwarding tables? Manually enter it What if nodes crashed What about scale? The graph-theoretic routing problem Given a graph, with vertices (switches), edges (links), and edge costs (cost of sending on that link) Find the least cost path between any two nodes Path cost =  (cost of edges in path)

Simple Routing Algorithm Choose a central node All nodes send their (nbr, cost) information to this node Central node uses info to learn entire topology of the network It then computes shortest paths between all pairs of nodes Using All Pair Shortest Path Algorithm Sends the new matrix to every node Nice, simple, elegant! What is the problem? Scalability: centralization hurts scalability Central node is “crushed” with traffic

Link State Routing Basic idea: Mechanisms required: Every node propagates its (nbr, cost) information This information at all nodes is enough to construct topology Can use a graph algorithm to find the shortest routes Mechanisms required: Reliable flooding of link information Method to calculate shortest route (Dijkstra’s algorithm) Example link state update packet: [node id, (nbr, cost) list, seq. no., ttl] Seq. no. to identify latest updates, ttl specifies when to stop msg.

Reliable flooding receive(pkt) If already have a copy of LSP from pkt.ID if pkt’s sequence number <= copy’s discard pkt else decrement pkt.TTL replace copy with pkt forward pkt to all links besides the one that we received it on # done every 10 minutes or so gen_LSP() increment node’s sequence # by one recompute cost vector send created LSP to all neighbors

Discussion: Link-State Routing Plusses: Simple, determines the optimal route most of the time Used by OSPF Minuses: Might have oscillations Avoid using load as cost metric, reduce herding effect A A D C B 2+e 1+e 1 A A D C B 2+e e 1+e 1 1 1+e 2+e D B D B e 1 C 1+e C 1 1 e … recompute Initially start with almost equal routes … recompute Least loaded => Most loaded … everyone goes with least loaded

Is our routing algo scalable? Route table size grows with size of network Because our address structure is flat! Solution: have a hierarchical structure Used by OSPF Divide the network into areas, each area has unique number Nodes carry their area number in the address 1.A, 2.B, etc. Nodes know complete topology in their area Area border routers (ABR) know how to get to any other area

Hierarchical Addressing Zone 2 2.a 1.b S1 1 1 2.b 2 S2 2 3 1.a 3.b 1 S3 Forwarding table for switch 1 Destination switch port 2. ? 3. ? 1.b ? 1.a ? 2 3.a Zone 3

IP has 2-layer addressing Each IP address is 32 bits Network part: which network the host is on? Host part: identifies the host. All hosts on same network have the same network part 3 classes of addresses: A, B and C 18.26.0.1 network host 32-bits 0 net host 1 7 24 bits 1 0 net host 110 net host 2 14 16 bits 3 21 8 bits

IP addressing The different classes: Problems: inefficient, address space exhaustion class 1.0.0.0 to 127.255.255.255 A network host Unicast B 128.0.0.0 to 191.255.255.255 10 network host 192.0.0.0 to 223.255.255.255 C 110 network host 224.0.0.0 to 239.255.255.255 Multicast D 1110 multicast address 240.0.0.0 to 255.255.255.255 Reserved E 1111 reserved 32 bits

IP addressing: CIDR Classless InterDomain Routing network portion of address of arbitrary length address format: a.b.c.d/x, where x is # bits in network portion Examples: Class A: /8 Class B: /16 Class C: /24 11001000 00010111 00010000 00000000 network part host 200.23.16.0/23

Internet Protocol Datagram IP protocol version Number 32 bits total datagram length (bytes) head. len type of service header length ver length for fragmentation/ reassembly “type” of data fragment offset 16-bit identifier flgs max number remaining hops (decremented at each router) time to live upper layer Internet checksum 32 bit source IP address 32 bit destination IP address upper layer protocol to deliver payload to Options (if any) E.g. timestamp, record route taken, pecify list of routers to visit. data (variable length, typically a TCP or UDP segment)

Datagram Portability IP Goal: To create one logical network from multiple physical networks All intermediate routers should understand IP IP header information sufficient to carry the packet to destination Goal: Run over anything! Problem: Physical networks have different MTUs “max. transmission unit”: 1500 for Ethernet, 48 for ATM Solution 1: Fit everything in the MTU (!)

IP Fragmentation & Reassembly Solution 2: (the one used) If packet size > MTU of network, then fragment into pieces Each fragment is less than MTU size Each has IP headers + frag bit set + frag id + offset Packets may get refragmented on the way to destination Reassembly only done at the destination What is a good initial packet size? reassembly fragmentation: in: one large datagram out: 3 smaller datagrams