Академический Документы
Профессиональный Документы
Культура Документы
4 March 2014
Chapter 4
Problems
How do we build a routing system that can handle hundreds of thousands of networks and billions of end nodes? How to handle address space exhaustion of IPV4? How to enhance the functionalities of Internet?
4 March 2014
Chapter 4
Global Internet ..
Scalability issues: - scalability of routing: We need to find ways to minimize the number of network numbers that get carried around in routing protocols and stored in the routing tables of routers. - Address utilization: ensure that IP address space does not get consumed too quickly
Classful Addressing
Three possible classes for networks Class C network limited to 254 hosts (cannot use all-1s or all-0s) Personal computers result in networks with many hosts Class B network allows many hosts, but insufficient class B prefixes
How can we minimize the number of assigned network prefixes especially class B) without abandoning the 32-bit addressing scheme?
Chapter 4
Chapter 4
Design problem: - Class C networks are too small (254 hosts). - Next option is class B, which is too big (65,534 hosts)
4 March 2014
Chapter 4
Chapter 4
Subnetting
Subnetting
Initial Problems:
- Internet routing tables started to grow - Local administrators had to request another network number from the Internet before a new network could be installed at their site
Allows a single network address to span multiple physical networks Not part of original TCP/IP address scheme
Allows an organization to use a single network prefix for multiple physical networks
Subdivides the host suffix into a pair of fields for physical network and host
Interpreted only by routers and hosts at the site; treated like normal address elsewhere
9 10
Chapter 4
Chapter 4
Interpretation of IP Address
Classful interpretation is two-level hierarchy Physical network identified by prefix Host on the net identified by suffix
Subnetted interpretation is three-level hierarchy Site identified by network prefix Physical net at site identified by part of suffix Host on the net identified by remainder of suffix
Both physical networks share prefix 128.10 Router R uses third octet of address to choose physical net Only R is aware of the different physical networks
11 12
4 March 2014
Chapter 4
Chapter 4
Subnet Address
Subnet Address
Example Class B address , 16-bit host portion is divided into two 8-bit fields
13 14
Chapter 4
Chapter 4
Address Mask
Variety of Route
Forwarding must accommodate Network-specific routes Subnet-specific routes Host-specific routes Default route Limited broadcast Directed broadcast to network Directed broadcast to specific subnet
Each physical network is assigned 32-bit address mask (also called subnet mask) One bits in mask cover network prefix plus zero or more bits of suffix portion Logical and between mask and destination IP address extracts the prefix and subnet portions
32-bit subnet mask for a class B address 11111111 111111111 11111111 00000000 |__________________|_________|__________| network part subnet host part
Single algorithm with address masks can accommodate all the above
255.255.255.0
15
16
4 March 2014
Chapter 4
Chapter 4
Each entry in routing table also has address mask All-1s mask used for host-specific routes Network mask used for network-specific routes Subnet mask used for subnet-specific routes All-0s mask used for default route
17
18
Chapter 4
Chapter 4
19
20
4 March 2014
Chapter 4
Chapter 4
Advantages of Subnetting
Divides the bigger network into smaller individual networks and it becomes easy to handle the smaller networks than handle one huge network
The network administrators can assign IP numbers to specific departments in an organization so that when they can easily identify the departments on the network using the same numbers.
Security
Size of global Internet routing table does not grow because site administrator does not need to obtain additional adress space and routing advertisments for all subnets are combined into a single routing table entry.
21
22
Chapter 4
Chapter 4
23
24
4 March 2014
Chapter 4
Chapter 4
The first address in the block ( network address) can be found by setting the rightmost 32 n bits to 0s.
25
26
Chapter 4
Chapter 4
Example
The first address in a block is normally not assigned to any device; it is used as the network address that represents the organization to the rest of the world.
The last address in the block can be found by setting the rightmost 32 n bits to 1s.
27
28
4 March 2014
Chapter 4
Chapter 4
A block of addresses is granted to a small organization. We know that one of the addresses is 205.16.37.39/28. Find the last address for the block Solution The address is 205.16.37. 0010 0111 If we set 32 28 = 4 rightmost bits to 1, we get 205.16.37. 0010 1111 or 205.16.37.47
29
30
Interdomain Routing
A corporations internal network might be a single AS, as may the network of a single Internet service provider
A network with two autonomous system
4 March 2014
Route Propagation
Idea: Provide an additional way to hierarchically aggregate routing information in a large internet.
Improves scalability
Interdomain Routing
Each AS can run whatever intradomain routing protocols it chooses - static routes or multiple protocols if desired. Interdomain routing: different ASs share reachability information descriptions of the set of IP addresses that can be reached via a given AS with each other.
4 March 2014
BGP
The goal of Inter-domain routing is to find any path to the intended destination that is loop free We are concerned with reachability than optimality Finding path anywhere close to optimal is considered to be a great achievement Intradomain focuses on finding the best, non looping, policycompliant patha much more complex optimization problem
10
4 March 2014
BGP
Scalability: An Internet backbone router must be able to forward any packet destined anywhere in the Internet Having a routing table that will provide a match for any valid IP address Autonomous nature of the domains It is impossible to calculate meaningful path costs for a path that crosses multiple Each domain may run its own interior routing protocols A cost of 1000 across one provider might imply a great path but it might mean an unacceptable bad one from another provider Issues of trust Provider A might be unwilling to believe certain advertisements from provider B
BGP
Each AS has: One BGP speaker that advertises: local networks other reachable networks (transit AS only) gives path information In addition to the BGP speakers, the AS has one or more border gateways which need not be the same as the speakers The border gateways are the routers through which packets enter and leave the AS
BGP
BGP does not belong to either of the two main classes of routing protocols (distance vectors and link-state protocols) BGP advertises complete paths as an enumerated lists of ASs to reach a particular network - enables policy decisions, avoid loops Border gateway:R2, R4
BGP
11
4 March 2014
BGP Example
BGP Example
AS1
AS2 | 10.0.1
AS3
Avoiding Loops - AS2 connected to 10.0.1 -AS1 learns reachability of 10.01 via AS2 -- AS1 Advertise to AS3 -- AS3 advertise to AS2 -- AS2 advertises to AS3 -AS2-AS1-AS3-AS2
BGP Issues
AS numbers carried in BGP need to be unique For example, AS 2 can only recognize itself in the AS path in the example if no other AS identifies itself in the same way AS numbers are 16-bit numbers assigned by a central authority
AS advertising
Only advertise routes that it considers good enough for itself BGP speaker has a choice of several different routes to a destination, it will choose the best one according to its own local policies, and then that will be the route it advertises under no obligation to advertise any route to a destination, even if it has one Withdrawn route - BGP speakers need to be able to cancel previously advertised paths if a critical link or node on a path goes down
12
4 March 2014
BGP-4
On reliable TCP as long as nothing has changed, a BGP speaker can simply send an occasional keep alive message that says, in effect Im still here and nothing has changed. If that router were to crash, it would stop sending the keep alives, and the other routers that had learned routes from it would know that those routes were no longer valid. BGP speakers exchange loop-free routes to all reachable networks, but how they choose the best routes is largely left to the policies of the AS
Designed for classless addresses Updates contain both prefix itself and its length in bits CIDR prefix that begins 192.4.16 and is 20 bits long: 192.4.16/20
All routers run iBGP and an intradomain routing protocol. Border routers (A, D, E) also run eBGP to other ASs interior BGP (iBGP) to effectively redistribute the information that is learned by the BGP speakers at the edges of the AS to all the other routers in the AS - enables router in AS to learn best border router to use for sending packet to any address - A,D,E eBGP A,D,E,B,C - iBGP
13
4 March 2014
IPV6
Subnetting and CIDR help: - contain rate at which Internet address space is being consumed (the address depletion problem) - control growth of routing table information needed in Internets routers (the routing information problem). 100% efficiency not feasible Bigger address space than that provided by 32 bits will eventually be needed
Major Features
128-bit addresses Multicast Real-time service Authentication and security Auto-configuration End-to-end fragmentation Enhanced routing functionality, including support for mobile hosts
14
4 March 2014
IPv6 Addresses
128 bit addresses Classless addressing/routing (similar to CIDR) Notation: x:x:x:x:x:x:x:x (x = 16-bit hex number) contiguous 0s are compressed: 47CD::A456:0124 (omitting zeros::) IPv6 compatible IPv4 address: ::128.42.1.87 Address assignment provider-based geographic
IPv6 Header
40-byte base header Version : 6 Traffic class and flow label: QoS PayloadLen (length of packet excluding header) NextHeader replaces IP options and the Protocol field of IPv4. If options are required, then they are carried in one or more special headers following the IP header, and this is indicated by the value of the NextHeader field. If there are no special headers, the NextHeader field is the demux key identifying the higher-level protocol running over IP (e.g., TCP or UDP) Extension headers (fixed order, mostly fixed length) fragmentation source routing authentication and security other options
IPv6 Header
HopLimit field is simply the TTL of IPv4, renamed to reflect the way it is actually used Bulk of the header is taken up with the source and destination addresses, each of which is 16 bytes (128 bits) long Option processing is much more efficient in IPv6, which is an important factor in router performance.
15
4 March 2014
IPv6 Header
New formatting of options as extension headers means that they can be of arbitrary length, whereas in IPv4 they were limited to 44 bytes at most Each option has its own type of extension header type of each extension header is identified by the value of the NextHeader field in the header that precedes it, and each extension header contains a NextHeader field to identify the header following it. Last extension header will be followed by a transport-layer header (e.g., TCP) and in this case the value of the NextHeader field is the same as the value of the Protocol field would be in an IPv4 header
IPV6 QoS
TrafficClass (4bit priority) Two categories: 1. Congestion controlled 2. Non congestion controlled Congestion controlled: No specific traffic: 0 no priority assigned Background data: data delivered in background (eg: news) Unattended data traffic: user is not waiting for data to be received (eg email) Attended bulk data: User is waiting for data to be received (eg ftp, http) Interactive traffic: user interaction (eg TELNET) Control Traffic ( highest priority eg: OSP, RIP, SNMP)
IPV6 QoS
Non congestion control traffic that expects minimal delay (discarding no desirable, retransmission is expensive) Priority 8-15 Data with less redundancy (low fidelity audio/video): higher priority 15 Data with more redundancy ( high fidelity audio/video): lower priority 8
IPV6 QoS
Flow Label: Special handling Flow of packets: sequence of packets sent from a specific source to a particular destination that needs special handling by routers It is defined by combination of source address and the value of the flow label Router supporting flow labels has a flow label table Flow label used to speed up of the packet processing Real time data requiring high resource usage eg: bandwidth, buffers Process can make reservations for resources
16
4 March 2014
IPV6 QoS
Rules for flow labels: 1.Flow label is assigned to a packet by the source host (random between 1 and 224); should not reuse flow label for new flow till existing flow is active 2.If not flow label is support field is set to 0, router also ignores it if it does not support flow label 3.All packet belonging to same flow have the same source , destination , priority and options
Auto configuration
Connection to the Internet requires fair amount of system administration expertise Information, such as a valid IP address, a subnet mask for the link to which it attaches, and the address of a name server Auto configuration: plug-and-play IPV4: Depends on server that can hand out addresses to DHCP clients IPv6 helps provide a useful, new form of auto configuration called stateless auto configuration, which does not require a server
Auto configuration
Auto configuration
Globally valid address depend on a router on the same link to periodically advertise the appropriate prefix for the link. Requires router be configured with correct address prefix, and that this prefix be chosen in such a way that there is enough space at the end (e.g., 48 bits) to attach an appropriate linklevel address
IPV6 hierarchical unicast address Auto configuration problem into two parts: 1.Obtain an interface ID that is unique on the link to which the host is attached; 2. Obtain the correct address prefix for this subnet. Address prefix assignment for IPV6 Use prefix 1111 1110 10 with 0s along with unique 48 bit MAC address Some devicesfor example, printers or hosts on a small routerless network that do not connect to any other networksthis address may be perfectly adequate.
17
4 March 2014
Extension Headers
Extension Headers
Hop by Hop option: used when source needs to pass information to all router visited by data gram Pad1, PadN: alignment options, jumbo payload: define payload longer than 65,535 bytes Source routing: Strict source routing and loose source route options similar in IPV4 Fragmentation: IPV6 only original source can fragment unlike IPV4. source must use path MTU discovery technique to find the smallest MTU supported by any network on the path. (fragments using this knowledge)
Extension Headers
Authentication: Validates the message sender and ensures the integrity of data Encrypted Security Payload (ESP) : provides confidentiality and guards against eavesdropping Destination Option: source needs to pass information to the destination only (intermediate routers are not permitted to access this information)
18
4 March 2014
Dual Stack
Tunneling
Header Translation
Internet Multicast
19
4 March 2014
Overview
IPv4 class D addresses uses tunneling Integral part of IPv6 problem is making it scale
Overview
One-to-many Radio station broadcast Transmitting news, stock-price Software updates to multiple hosts Many-to-many Multimedia teleconferencing Online multi-player games Distributed simulations
Overview
Without support for multicast
A source needs to send a separate packet with the identical data to each member of the group
This redundancy consumes more bandwidth Redundant traffic is not evenly distributed, concentrated near the sending host
Overview
Basic IP multicast model is many-to-many based on multicast groups Each group has its own IP multicast address Hosts that are members of a group receive copies of any packets sent to that groups multicast address A host can be in multiple groups A host can join and leave groups
Source needs to keep track of the IP address of each member in the group
Group may be dynamic (as listeners tune into an Internet radio station)
20
4 March 2014
Overview
Using IP multicast to send the identical packet to each member of the group A host sends a single copy of the packet addressed to the groups multicast address The sending host does not need to know the individual unicast IP address of each member Sending host does not send multiple copies of the packet
Overview
IPs original many-to-many multicast has been supplemented with support for a form of one-to-many multicast One-to-many multicast Source specific multicast (SSM) A receiving host specifies both a multicast group and a specific sending host Many-to-many model Any source multicast (ASM)
Overview
A host signals its desire to join or leave a multicast group by communicating with its local router using a special protocol
In IPv4, the protocol is Internet Group Management Protocol (IGMP) In IPv6, the protocol is Multicast Listener Discovery (MLD)
Multicast addresses
IPV4: Class D most significant four bits of Class D addresses are set to "1110". The 28-bit number following these four bits is called "multicast group ID". Like unicast IP packets, there should be a MAC-layer address to which the IP multicast address maps. Internet Assigned Numbers Authority (IANA) has reserved a set of the IEEE-802 MAC-layer addresses for multicast packets, 01:00:5E:00:00:00 to 01:00:5E:7F:FF:FF (hex). An IP multicast address can be mapped to an IEEE-802 address by placing the least-significant 23 bits of the IP multicast address into the least-significant 23 bits of the MAClayer multicast address.
The router has the responsibility for making multicast behave correctly with regard to the host
21
4 March 2014
Multicast Routing
A routers unicast forwarding tables indicate for any IP address, which link to use to forward the unicast packet To support multicast, a router must additionally have multicast forwarding tables that indicate, based on multicast address, which links to use to forward the multicast packet Unicast forwarding tables collectively specify a set of paths Multicast forwarding tables collectively specify a set of trees
Multicast distribution trees
Mapping procedure there will be 32 different multicast addresses mapped to the same IEEE-802 address.
Multicast Routing
To support source specific multicast, the multicast forwarding tables must indicate which links to use based on the combination of multicast address and the unicast IP address of the source Multicast routing is the process by which multicast distribution trees are determined
22
4 March 2014
23
4 March 2014
24
4 March 2014
RPM Tree
Group membership and network topology can dynamically change and the prune state of delivery trees should be refreshes at regular intervals. Relatively big memory space required for maintaining state information for all (source, group) pairs is another drawback which makes this algorithm not scalable (and therefore, not suitable for very large internetworks).
Distance-Vector Multicast
Reverse Path Broadcast (RPB) Goal: Prune networks that have no hosts in group G Step 1: Determine of LAN is a leaf with no members in G
leaf if parent is only router on the LAN determine if any hosts are members of G using IGMP
25
4 March 2014
# Chapter Subtitle
Summary
We have looked at the issues of scalability in routing in the Internet Intradomain routing - BGP We have discussed IPV6 We have discussed Multicasting
References: Computer Networks A Systems Approach, Peterson, Fourth Edition, chapter 4 Computer Network Forouzan, chapter 21 IP Multicasting: Concepts, Algorithms, and Protocols, http://www.cse.wustl.edu/~jain/cis788-97/ftp/ip_multicast.pdf
26