55
1 Computer Networks Network Layer

1 Computer Networks Network Layer. 2 Where are we?

Embed Size (px)

Citation preview

1

Computer Networks

Network Layer

2

Where are we?

3

Will Layer 2 Networking Suffice?

4

Motivation

Connect various link technologies to form a larger internetwork

Universal addressing scheme requiredGeneral purpose useHides underlying technologies from end userFacilitate communicate between autonomous

domainsAble to move packets between any host on the

internetwork

5

Connecting Heterogeneous Networks

Computer System usedSpecial purposeDedicatedWorks with LAN or WAN technologiesKnown as

routergateway

6

Illustration of a Router

Cloud denotes an arbitrary networkOne interface per network

7

Important Idea

A router can interconnect networks that use different technologies,

including different media and media access techniques, physical

addressing schemes or frame formats.

8

The Internet Concept

9

Key Functions of the Network Layer

Global AddressingFragmentationRouting

We’ll be primarily concerned with addressing and routing

10

Example Network Layer: Internet Protocol (IP)

Standardized by IETF as RFC 791Most popular Layer 3 protocolCore protocol used on the public InternetConnectionless protocol

datagrams contain identity of the destinationeach datagram sent/handled independently

Of utmost importance for this class!

11

IP Addressing

Provides an abstractionIndependent of hardware (MAC)

addressingUsed by

higher layer protocolsApplications

Good IP addressing tutorial: http://www.3com.com/nsc/501302.html

12

IP Address

Virtualonly understood by software

Used for all communication across an internetwork

32-bit integerUnique value for each host/interface

13

IP Address Assignment

An IP address does not identify a specific computer. Instead, each IP

address identifies a connection between a computer and a network.

A computer with multiple network connections (e.g., a router) must be

assigned one IP address for each connection.

14

IP Address Details

Divided into two partsprefix identifies the networksuffix identifies the host/interface

Global authority assigns unique prefix for the network

Local administrator assigns unique suffix for the host/interface

15

Class of IP Addresses (Historical)

Initial bits determined the classThe class determines the boundary between prefix and suffix

16

Dotted Decimal Notation

Shorthand for IP addressesAllows humans to avoid binaryRepresents each octet in decimal

separated by dotsNOT the same as names like

www.depaul.edu

17

Examples of Dotted Decimal Notation

Four decimal values per 32-bit addressEach decimal number

represents eight bitsis between 0 and 255 inclusive

18

Class Hierarchy and Network Size (Historical)

Maximum size determined by class of addressClass A largeClass B mediumClass C small

19

Addressing Example

20

Illustration of Router Addresses

Address prefix identifies the networkNeed one address per router connection

21

Special Addresses

Network Address not used in packetsLoopback addresses never leave the local computer

22

Getting IP Addresses

IANA has global authority for allocationRegional registries: ARIN, RIPE, APNIC

RFC 1918 defines private address spaceNOT globally unique10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16

End users obtain address space from their Internet Service Provider (ISP)

23

IP Addressing: Problems with Classes

Internet growthRouting table sizeExhaustion of addressesAdministration overheadMisappropriation of addresses

24

IP Addressing: Solutions

SubnettingSupernettingClassless InterDomain Routing (CIDR)Variable Length Subnet Mask (VLSM)

25

Subnetting

Split the suffix into a local network portion and a smaller host id portion

26

Subnet Masks

Cannot determine prefix on first few bitsNeed a 'bit mask' that specifies

prefix/suffixDotted decimal notation used, but...I told you binary was important!Examples:

Network: 140.192.9.0 Subnet mask: 255.255.255.0Network: 140.192.9.0 Subnet mask: 255.255.255.128Network and mask: 140.192.9.0/24

27

More Subnet Examples

63.85.18.5/22 - What is the network?32.152.6.1/26 - How many hosts

possible?219.52.33.8/20 - What is the directed

broadcast address?How might you allocate a 10.5.0.0/16

block for an organization with 4 offices of 500 users each?

28

Supernetting

Combine multiple smaller address classes into a larger block

Class B was too bigClass C was too smallCombine contiguous Class C addresses

e.g. 199.242.64.0 to 199.242.67.255

29

Classless InterDomain Routing (CIDR)

Employ supernetting style information in IP routers

Advertise smaller CIDR blocksDecreases the routing table size

Advertise 199.242.64.0/22 instead of 199.242.64.0,199.242.65.0, 199.242.66.0 and 199.242.67.0

The CIDR Report: http://www.employees.org/~tbates/cidr-report.html

30

Variable Length Subnet Masks (VLSM)

Ability to use multiple subnet sizes in a single autonomous system

Allows more efficient use of addresses

Routers must support subnets maskse.g. RIPv1 did not support this!

For example:May use /24 in most places, but may have a small office

with only 10 users! May want to use a /28 for that network.

31

IP Packet (datagram) Format

32

IP Datagrams

Can be delayedDuplicatedDelivered out of orderLostCan change routes from packet to

packetAre connectionless

33

Address Resolution Protocol (ARP)

Resolves IP address to Layer 2 (MAC) addressNode sends MAC broadcast looking for another node

IP src: 140.192.23.1 MAC src: 0x00:80:05:1A:F0IP dst: 140.192.23.23 MAC dst: 0xFF:FF:FF:FF:FF

Node with that IP dst address replies with its MAC140.192.23.23 replies with 0x00:60:0A:34:AA:3C

ARP Table: contains records of learned relationships.

34

Dynamic Host Configuration Protocol (DHCP)

Standardized in RFC 1531Allows hosts to obtain IP address

information upon startup from a server

Eliminates cumbersome manual configuration

Grants IP addresses based on a predefined "lease" period

35

IP Routing

Performed by routersTable-drivenForwarding on a hop-by-hop basisDestination address used for route

determination

36

Example IP Routing Table

Table (b) is for center router in (a)

37

Routing Table Size

Since each destination in a routing table corresponds to a network, the number

of entries in a routing table is proportional to the number of

networks in the internetwork. Caveat: you can use a "default" route to

forward to when route is unknown or when no route specific information is

available.

38

Routing/Forwarding Overview

Given a datagramExtract destination address field, DLook up D in the routing tableFind next hop address, NSend datagram to N

39

Key Concept

The destination address in a datagram header always refers to the ultimate destination. When a router forwards the datagram to another router, the

address of the next hop does not appear in the datagram header.

40

Routing/Forwarding Overview

Strip off layer 2 informationExtract destination IP address fieldLook up IP address in the routing tableFind next hop address to forward toSend datagram to the next hopAdd on necessary layer 2 information

41

Routing Protocol Requirements

Efficient routing table sizeEfficient routing control messagesRobustness and reliability

prevent loopsavoid black holesreconvergence time is short

42

Source of Route Table Information

ManualTable created by handUseful in small networksUseful if routes never change

Automaticsoftware creates/updates tablesNeeded in large networksChanges routes when failures occur

43

Compute Shortest/Best Path

Possible metricgeographic distanceeconomic costcapacity

44

Algorithms for Computing Shortest Path

Distance VectorExchange routing tables with neighboring

routerse.g., RIP, RIPv2

Link StateRouters exchange link status informatione.g., OSPF, IS-IS

45

Distance Vector

Routers periodically advertise and learn about IP networks

Cost of the route is based on hops to the network (number of routers to pass)

Recalculation occurs when links fail

46

Count to Infinity Problem

What happens when link 1<->5 goes down?Does 5 think it can get to 1 through 2?

47

Solving the Count to Infinity Problem

Hold downWait for a period of time before switching paths.

Advertise route cost as infinity. Based on timers.

Report the entire pathGuarantees no loops, but expensive.

Split horizonDo not advertise routes to neighbors if the route was

received from that neighbor. Not foolproof.

48

Other Distance Vector Improvements

Triggered updatesAdvertise changes as soon as you learn of them. May

help convergence time. May create routing instability for flapping routes.

Poison reverseUsed with split horizon. Report infinity rather than nothing

at all.

Diffusing Update ALgorithm (DUAL)Somewhat like hold down, but routers are alerted of

broken paths. Complex. Not popular.

49

Example Distance Vector Protocol: RIP

Standardized in RFC 1058 and 2453An interior gateway protocol (IGP)SimpleRIPv2 includes subnet mask in updatesHop count based (> 15 = unreachable)Widely used in small to medium sized

organizations

50

Link State

Routers distribute link cost and topology information to all other routers in its area.

All routers have complete information about the network.

Each router computes its own optimal path to destinations.

Ensures loop free environments.

51

Link State Procedure

Each router is responsible for meeting its neighbors and learning their names.

Each router advertises LSPs which contain costs to its neighbors.

Most current LSPs are stored by all routers.Each router now computes routes.

52

Dijkstra Algorithm: Databases

Link State Databasecontains latest LSPs from all other routers

PATH (permanent) DatabaseConsists of ID, path cost and forwarding direction

TENT (tentative/temporary) DatabaseConsists of ID, path cost and forwarding direction

Forwarding DatabaseContains ID and forwarding direction

53

Dijkstra Algorithm: Procedure

1. Each router starts with itself as root of the tree by putting its ID and 0 cost and 0 forwarding direction in PATH

2. For each node placed in PATH, examine its LSP and place those neighbors in TENT if not already in PATH or TENT

3. If TENT is empty, terminate, otherwise find the ID in TENT with the lowest cost and move it to PATH

54

Example Link State Protocol: Open Shortest Path First (OSPF)

Standardized in RFC 2328An interior gateway protocol (IGP)Used in medium to large organizations Supports internal/external routesSupports TOS based routing, but never

implemented in practiceTwo-tier hierarchy for scalability

55

Network Layer: Final Notes

Basic IP requirements on an end hostIP address, mask, gateway, DNS

BOOTPICMPBGPIPXAppleTalkCLNP