Upload
harvey-powers
View
218
Download
2
Embed Size (px)
Citation preview
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
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.
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
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)
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.
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
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
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