Lecture 3 Fall 2017 It u
Lecture 3 Fall 2017 It u
Communications
Lecture 3: All-IP Networking
Prof. Mustafa Ergen
ALL-IP NETWORKING
2
How it is evolved?
• Circuit switching: a dedicated capacity
• Packet switching: a capacity used on need basis.
– Started as a military project called ARPANET
– No end to end dedicaDon
– Buffer and forward system in between
– UDlizes link at maximum extent
– TradiDonally, does not guarantee Dmely
delivery
– Hence, QoS protocols are introduced for
voice, video over IP communicaDon
3
Outline
• We examine the technology paths to All-IP
Networking starDng from basics of IP technology and
conDnuing with advanced components of next-
generaDon networks.
4
Orienta>on
• IP (Internet Protocol) is a Network Layer Protocol.
Network
ARP Link Layer
Access
Media
5
Applica>on protocol
• IP is the highest layer protocol which is implemented
at both routers and hosts
6
A Router
RouDng Table is the crucial
element of the router
defines the topology of
the network
must be consistent with
other router’s tables
Processing
8
IP Service
• Delivery service of IP is minimal
• Consequences:
9
IP Service
• IP supports the following services:
• one-to-one (unicast)
• one-to-all (broadcast)
• one-to-several (mulDcast)
unicast
broadcast multicast
10
IP Datagram Format
• 20 bytes ≤ Header Size < 24 x 4 bytes = 60 bytes
• 20 bytes ≤ Total Length < 216 bytes = 65536 bytes
bit # 0 7 8 15 16 23 24 31
header
version DS ECN total length (in bytes)
length
D M
Identification 0 Fragment offset
F F
time-to-live (TTL) protocol header checksum
source IP address
destination IP address
options (0 to 40 bytes)
payload
4 bytes
11
Maximum Transmission Unit
• Maximum size of IP datagram is 65535, but the data link layer protocol
generally imposes a limit that is much smaller
• Example:
– Ethernet frames have a maximum payload of 1500 bytes
à IP datagrams encapsulated in Ethernet frame cannot be longer
than 1500 bytes
• The limit on the maximum IP datagram size, imposed by the data link
protocol is called maximum transmission unit (MTU)
12
IP Fragmenta>on
• What if the size of an IP datagram exceeds the MTU?
IP datagram is fragmented into smaller units.
Ethernet
FDDI
Ring
Host A Router Host B
MTUs: FDDI: 4352 Ethernet: 1500
• Fragmenta>on:
• IP router splits the datagram into several datagram
• Fragments are reassembled at receiver
13
IP Address Classifica>on
15
Public and Private IP Addresses
• No two machines that connect to a public network can have the
same IP address because public IP addresses are global and
standardized.
• However, private networks that are not connected to the Internet
may use any host addresses, as long as each host within the private
network is unique.
• RFC 1918 sets aside three blocks of IP addresses for private,
internal use.
• ConnecDng a network using private addresses to the Internet
requires translaDon of the private addresses to public addresses
using Network Address TranslaDon (NAT).
16
Introduc>on to SubneQng
• To create a subnet address, a network administrator
borrows bits from the host field and designates them
as the subnet field.
17
Obtaining an Internet Address
• StaDc addressing
– Each individual device must be configured with an IP
address.
• Dynamic addressing
– Reverse Address ResoluDon Protocol (RARP)
– Bootstrap Protocol (BOOTP)
– Dynamic Host ConfiguraDon Protocol (DHCP)
– DHCP iniDalizaDon sequence
– FuncDon of the Address ResoluDon Protocol
– ARP operaDon within a subnet
18
Address Resolu>on Protocol (ARP)
• Each device on a network maintains its own ARP table.
• A device that requires an IP and MAC address pair broadcasts an
ARP request.
• If one of the local devices matches the IP address of the request, it
sends back an ARP reply that contains its IP-MAC pair.
• If the request is for a different IP network, a router performs a
proxy ARP.
• The router sends an ARP response with the MAC address of the
interface on which the request was received, to the requesDng
host.
19
IPv6 Background
• IP has been patched (subnets, supernets) but there is sDll
the fundamental 32 bit address limitaDon
• IETF started effort to specify new version of IP in 1991
– New version would require change of header
– Include all modificaDons in one new protocol
– SolicitaDon of suggesDons from community
– Result was IPng which became IPv6
– First version completed in ’94
• Same architectural principles as v4
20
IPv4 versus IPv6
IPv4
21
IPv6 planned support list
• 128-bit address space
– This is what it’s all about…
• Real-Dme/QoS services
• Security and authenDcaDon
• AutoconfiguraDon
– Hosts autoconfig with IP address and domain name
– Idea is to try to make systems more plug-n-play
• Enhanced rouDng funcDonality eg. Mobile hosts
• MulDcast
• Protocol extensions
• Smooth transiDon path from IPv4
– Can’t do it all at once!
22
IPv6 Packet Format
0 4 8 16 24 31
SourceAddr (4 words)
DestinationAddr (4 words)
Data
23
Packet Format Details
• Simpler format than v4
• Version = 6
• Traffic class same as v4 ToS
• Treat all packets with the same Flow Label equally
– Support QoS and fair bandwidth allocaDon
• Payload length does not include header –limits packets to
64KB
– There is a “jumbogram opDon”
• Hop limit = TTL field
• Next header combines opDons and protocol
– If there are no opDons then NextHeader is the protocol field
• OpDons are “extension header” that follow IP header
– Ordered list of tuples – 6 common types
• Quickly enable a router to tell if the opDons are meant for it
– Eg. rouDng, fragmentaDon, authenDcaDon encrypDon…
24
Key differences in header
• No checksum
– Bit level errors are checked for all over the
place
• No length variability in header
– Fixed format speeds processing
• No more fragmentaDon and reassembly in header
– Incorrectly sized packets are dropped and
message is sent to sender to reduce packet
size
– Hosts should do path MTU discovery
– But of course we have to be able to segment
packets!
• What about UDP packets?
25
Transi>on from v4 to v6
• Flag day is not feasible
• Dual stack operaDon – v6 nodes run in both v4 and v6 modes
and use version field to decide which stack to use
– Nodes can be assigned a v4 compa2ble v6 address
• Allows a host which supports v6 to talk v6 even if local routers only speak
v4
• Signals the need for tunneling
• Add 96 0’s (zero-extending) to a 32-bit v4 address – eg. ::10.0.0.1
– Nodes can be assigned a v4 mapped v6 address
• Allows a host which supports both v6 and v4 to communicate with a v4
hosts
• Add 2 bytes of 1’s to v4 address then zero-extend the rest – eg. ::ffff:
10.0.0.1
• Tunneling is used to deal with networks where v4 router(s) sit
between two v6 routers
– Simply encapsulate v6 packets and all of their informaDon in v4
packets unDl you hit the next v6 router
26
AS-level Internet Graph
27
IP Rou>ng Protocols
• RIP
Bellman-Ford or Dijkstra’s Algorithm
• OSPF
• BGP
• MulDcast IP
28
Hybrid Rou>ng Schemes
• Some parts use
staDc and some
parts dynamic
Core
rouDng R1 R2 R3
– staDc rouDng DistribuDon
on the access
network R4 R5 R6
– dynamic Access
rouDng on
the core and
distribuDon
network
29
IGP vs EGP
Kind of informaDon
• Interior Gateway Protocols that is carried and
– within a single autonomous the way the rouDng
system table are calculated
•Distance-
• single network administraDon vector
• unique rouDng policy protocols
• make best use of network resources
• Exterior Gateway Protocols •Link-state
protocols
– among different autonomous
systems
• independent administraDve enDDes
• communicaDon between
independent network
infrastructures
30
Distance-Vector vs Link-State
• Distance-vector protocols • Link-state protocols
– Each router – Each router sends
periodically sends to informaDon about
• Links to which it is
his neighbors adached
• how far is the • State of the links
desDnaDon – It is flooded throughout
• the next hop to get the network
there – Every router calculates
its rouDng table
– Install routes directly
in tables
Dijkstra’s Algorithm
Bellman-Ford 31
Algorithm [RFC1058]
RIP Problems:
Split-horizon
• Packets are sent every 30 secondstheor faster when
informaDon about desDnaDon
necessary routed on the link is omided
Poison reverse
• Route is considered down if not refreshed
the correspondingwithin 180
distance is set
to infinity if the desDnaDon is
sec. (distance set to infinity) routed on the link
• Two kinds of messages
IGP, distance-vector protocol
• request First used in XNS (Xerox Network
Systems)
• Response Designed as a component of the
networking code for the BSD release of
• The metric is a hop-count UNIX
incorporated in program
• The value of 1 to 15 is used (16 denotes
“routed” (rote management
infinity) daemon)
First documented in RFC 1058
32
Example:
Dest. Link Hop
A local 0 Dest. Link Hop
B 1 1 B local 0
Dest. Link Hop
E 2 1 A 1 1
C local 0
A C 4 1
B 4 1 Dest. Link Hop
E 3 1
D 5 1 D local 0
1 B
F 6 1 C 5 1
C G 7 1
4
D
5
2 3
6
7
E F
Dest. LinkE Hop Dest. Link Hop 8 Dest. Link Hop
E local 0 G G local 0
F local 0
A 2 1 C 6 1 D 7 1
B 3 1 G 8 1 F 8 1 33
Rou>ng
A table for node A
1 B
C
4
5 D
2 3
6
Aaer four
itera>ons
E Aaer three7itera>ons
Aaer two F G 8 Dest. Link Hop
itera>ons
A local 0
Dest. Link Hop B 1 1
Dest. Link Hop A local 0 C 1 2
A local 0 B 1 1 D 1 3
B 1 1 C 1 2 E 2 1
C 1 2 D 1 3 F 1 3
E 2 1 E 2 1 G 1 4
F 1 3
34
RIP II is documented in
RIP: Pros and Cons RFC-1287, RFC-1388 and
RFC-2453
• Updates
– A Dmer is associated with each entry in the rouDng table
• much longer than the period of transmission of informaDon
– Triggered updates
• request nodes to send messages as soon as they noDce a change in the rouDng table
• Advantages
– Simple to implement
– Low requirement in processing and memory at the nodes
– Suitable for small networks
• Disadvantages
– Slow convergence
– Bouncing effect
– CounDng to infinity problem RIP is not alone!
• LimitaDons IGRP and EIGRP
– Maximum hop count of 15
• restricts the use of RIP in larger networks, but prevents the count to infinity problem
(endless loops)
– Difference in links speed is not reflected in the hop-count metrics
• congested links can be sDll included in the best path
35
OSPF
• Link state or SPF technology
• Developed by OSPF Working Group of IETF (not
proprietary)
• Designed for TCP/IP Internet environment
• Documented in RFC 1583, RFC 2178
36
OSPF - Link State Protocol
• Link
– an interface on the router
• Link state
– descripDon of the interface and the
neighboring routers
• IP address, mask, type, routers connected to
• Link state database
– collecDon of link state adverDsement for all
routers and networks
37
How OSPF Works?
• Each router generates link-state adverDsements for
its links
• When no OSPF areas are configured, link-state
adverDsements are flooded to all routers
• It is crucial that all routers have idenDcal link state
database
• Shortest path three is calculated by all routers and
rouDng tables are derived
38
Example: Choosing an Op>mal Path
R1
R4
5
R7
40 5
5 R6 B
10 6
R2 15
A 10
20 R8
10
4
5 10
R3
R5
39
The Link Metric
• Possible metrics
– hop count
– inverse of the link bandwidth
– delay
– dynamically calculated
– administraDvely assigned
– combinaDon
• Traffic should be monitored and metrics adjusted
40
Example for Bad Metrics
Bandw. 256K
Metric 14
1024K
256K 1024K B
A 2
10 2
2048K 1
1
2048K
3 3
3 3 3
768K 768K
768K 768K 768K
Bandw. 768K
Metric 17
41
Link State Adver>sement (LSA)
• Generated periodically or in response to any change
• Contains:
– source idenDficaDon
– sequence number
– link state age
– list of neighbors
42
Bringing up Adjacency
• Synchronizing databases via comparison of sequence
numbers
• “InteresDng records” - the sequence numbers are
different or not present in database
• Client-server relaDonship is established first
43
The Flooding Protocol
• Used to securely deliver LSAs
44
Securing the Map Updates
• Flooding procedure includes hop-by-hop
acknowledgments
• Database descripDon packets are transmided in a
secure fashion
• Each link state record is protected by a Dmer and
is removed from the database if a refreshing
packet does not arrive in due Dme
• All records are protected by checksum
• Messages can be authenDcated, e. g. by passwords
45
Shortest Path Algorithm
• Places the router at the root of the tree
• In each iteraDon adds the router that is closest to it
(smallest cumulaDve metric of the path)
• Finished when all routers are added and the shortest
path tree is generated
46
Shortest Path Tree and Rou>ng Table
for R5R6 R6
N1 R3 10
N6 R7 N2 R3 10
R4 N3 N3 R3 7
N8
N4 R3 8
R2 N6 R10 8
R1 N7 R10 12
R11 R8
N8 R10 10
N12 N15 N9 R10 11
N2 N1 N9 N10 R10 13
N7 N11 R10 14
R9 RT5 RT5 6
R12 RT7 RT10 8
N11
N10
47
Scaling OSPF
• Rule of thumb
– no more than 150 routers /area
• Reality
– no more than 500 routers/area
• Backbone area is an area that glue all the other areas
– always marked as area 0
• proper use of areas reduces bandwidth
– summarized routes
– instability is limited within the area
48
OSPF Advantages
• No limitaDon on hop count
• Supports classless rouDng
• RouDng updates sent only when there is a change
or very rarely
• Faster convergence
• Beder load balancing
• Logical definiDon of areas
• AuthenDcaDon and external routes tagging
49
RIP vs OSPF OSPF is not the
only link state
• More complex than RIP protocol
IS-IS protocol
– the documentaDon is five Dmes thicker is part of OSI
rouDng
– the management needs more informaDon framework
for CLNP
– the implementaDon needs more code similar
in
• Why design such complex procedure? design
to OSPF
– rouDng is important uses
different
– requires less “signalizaDon” messages terminol
ogy
– compute beder routes
50
Internet Structure
Original idea
Backbone service provider
Small
corporation “Consumer ” ISP “Consumer ” ISP
51
Internet Structure
Today
Large corporation
“Consumer ” ISP
Peering
point
Backbone service provider Peering
point
“ Consumer” ISP
Small
corporation
52
Route Propaga>on in the Internet
• Autonomous System (AS)
– corresponds to an administraDve domain
– examples: University, company, backbone
network
– assign each AS a 16-bit number
• Two-level route propagaDon hierarchy
– interior gateway protocol (each AS selects its
own)
– exterior gateway protocol (Internet-wide
standard)
• Routes informaDon is propagated at various levels
– hosts know local router
– local routers know site routers
– site routers know core router
– core routers know everything
53
Popular Interior Gateway Protocols
• RIP: Route InformaDon Protocol
– distributed with BSD Unix
– distance-vector algorithm
– based on hop-count (infinity set to 16)
• OSPF: Open Shortest Path First
– recent Internet standard
– uses link-state algorithm
– supports load balancing
– supports authenDcaDon
54
EGP: Exterior Gateway Protocol
• Overview
– Original standard for Internet rouDng protocol (c 1983)
– designed for tree-structured Internet
• Single backbone
– concerned with reachability, not opDmal routes
• Protocol messages
– neighbor acquisiDon: one router requests that another be its peer;
peers exchange reachability informaDon
– neighbor reachability: one router periodically tests if the another is
sDll reachable; exchange HELLO/ACK messages;
• uses a k-out-of-n rule: ¼ to stay up, ¾ to establish
– rouDng updates: peers periodically exchange their rouDng tables
(including route weights) using a basic distance vector method
• There can be mulDple connecDons between ASs
55
Limits of EGP
• At first glance, EGP seems like a distance vector protocol since
updates carry lists of desDnaDons and distances – but
distances are NOT reliable.
• EGP was designed to support tree topologies, not meshes
– False routes injected by accident can have really bad consequences
(black holes) – there is no easy way for dealing with this problem
– Loops can easily occur – all we are doing is forwarding rouDng tables
• EGP was not designed to easily support fragmented IP packets
– all data is assumed to fit in MTU.
• SoluDons to these and other EGP problems were all manual
56
BGP-4: Border Gateway Protocol
• BGP-1 developed in 1989 to address problems with EGP.
• Assumes Internet is an arbitrarily interconnected set of ASs
• AS traffic types
– Local
• starts or ends within an AS
– Transit
• passes through an AS
• AS Types
– stub AS: has a single connecDon to one other AS
• carries local traffic only
– mulDhomed AS: has connecDons to more than one AS
• refuses to carry transit traffic
– transit AS: has connecDons to more than one AS
• carries both transit and local traffic
57
BGP-4 contd.
• Each AS has:
– one or more border routers
• Handles inter-AS traffic
– one BGP speaker for an AS that parDcipates in rouDng
– BGP speaker establishes BGP sessions with peers and adverDses:
• local network names
• other reachable networks (transit AS only)
• gives path informaDon including path weights (MEDs)
• withdrawn routes
• BGP goal: find loop free paths between ASs
– OpDmality is secondary goal
– It’s neither a distance-vector nor a link-state protocol
• Hard problem
– Internet’s size (~12K acDve ASs) means large tables in BGP routers
– Autonomous domains mean different path metrics
– Need for flexibility
58
BGP Example
• Speaker for AS2 adverDses reachability to P and Q
– network 128.96, 192.4.153, 192.4.32, and 192.4.3, can be reached
directly from AS2
Customer P 128.96
(AS 4) 192.4.153
Regional provider A
(AS 2)
Customer Q 192.4.32
(AS 5) 192.4.3
Backbone network
(AS 1)
Customer R 192.12.69
(AS 6)
Regional provider B
(AS 3)
Customer S 192.4.54
(AS 7) 192.4.23
• Speaker for backbone adverDses
– networks 128.96, 192.4.153, 192.4.32, and 192.4.3 can be reached
along the path (AS1, AS2).
• Speaker can cancel previously adverDsed paths
59
Some BGP details
• Path vectors are most important innovaDon in BGP
– Enables loop prevenDon in complex topologies
– If AS sees itself in the path, it will not use that path
• Routes can be aggregated
– Based on CIDR (classless) addressing
• Routes can be filtered
• Runs over TCP
• Most of the same messages as EGP
– Open, Update, NoDfy, Keepalive
• BGP session have only recently been made secure
60
BGP in prac>ce
• 10-20 “Der 1” ASs which are the Internet backbone
• Clearly convergence is an issue – why?
• Black holes are always a potenDal problem
• There are lots of BGP updates every day!
• BGP is really the heart of the Internet
• BGP is a means by which network operators control
congesDon in the Internet.
• BGP is really a big problem!
61
Mul>cast IP
• The Internet Group Management Protocol (IGMP) is used by
IPv4 systems (hosts and routers) to report their IP mulDcast
group memberships to any neighboring mulDcast routers.
Note that an IP mulDcast router may itself be a member of
one or more mulDcast groups, in which case it performs both
the "mulDcast router part" of the protocol (to collect the
membership informaDon needed by its mulDcast rouDng
protocol) and the "group member part" of the protocol (to
inform itself and other, neighboring mulDcast routers of its
memberships).
62
IGMP through versions
• Version 1, specified in [RFC-1112], was the first widely-
deployed version and the first version to become an Internet
Standard.
63
IGMP v1 - Behaviour
router
IGMP routing update IGMP routing update
30 sec
router router
LAN 2
IGMP
IGMP report
IGMP report
LAN 1 query LAN 3 IGMP query
64
IGMP v2 - enhancements
• Version 1, specified in [RFC-1112], was the first widely-
deployed version and the first version to become an Internet
Standard.
65
IP QoS Defined Internet today
Provides “best effort” data
• The goal : delivery
Complexity stays in the end-
Provide some level hosts
Network core remains simple
of predictability As demands exceeds capacity,
and control beyond service degrades gracefully
(increased jider etc.)
the current IP
“best-effort” Delivery delays cause problems
to real-Dme applicaDons
service
Performance adributes
• Fundamental principle Service availability
Leave complexity Delay
Delay variaDon (jider)
at the “edges” and Throughput
keep network Packet loss rate
“core” simple Vary according to Service Level
Agreement (SLA)
66
QoS Protocols
67
RSVP Adributes
- Implementa>on The most complex of all QoS
technologies
Closest thing to circuit emulaDon
Sender on IP networks
PATH message containing The biggest departure from “best-
traffic specificaDon effort” IP service
(bitrate, peak rate etc.)
Provides the highest level of QoS in
Receiver terms of :
RECV message containing
Service guarantees
the reservaDon
Granularity of resource allocaDon
specificaDon Detail of feedback to QoS-enabled
(guaranteed or
applicaDons
controlled)
the filter specificaDon
(type of packets that Qo
and Lev
S
el
the reservaDon is made f ic
Traf ificatio
e c
n F ilt
er
Sp
eci
Sp fica
for) PAT
H RE
SV
tion
Host A Host B
68
DiffServ
- Implementa>on
Two traffic classes are available :
ExpediDed Forwarding (EF) - 1 codepoint
Minimizes delay and jider
Provides the highest QoS
Traffic that exceeds the traffic profile is discarded
Assured Forwarding (AF) - 12 codepoints
4 classes, 3 drop-precedences within each class
Traffic that exceeds the traffic profile is not delivered with such high
probability
Classifier Conditioner
Maintains Accumulates
DSCP statistics
mappings and
associations
with local
policies 69
MPLS
- Label Switching
• Used to establish fixed bandwidth routes (similar to ATM
virtual circuits)
• Resides only on routers and is protocol independent
• Traffic is marked at ingress and unmarked at egress
boundaries
• Markings are used to determine next router hop (not priority)
70
MPLS
- Implementa>on
71
MPLS
- Conclusions
• Labels can be “stacked”
– This allows MPLS “routes within routes”
• Label DistribuDon Protocol (LDP)
– Distributes labels across MPLS-enabled
routers
– Ensures they agree on the meaning of labels
– Usually transparent to network managers
• ImplicaDon :
– Define a policy management that
distributes labels
72
Summary
• IP Addressing
– Started with IPv4 and introduced IPv6
– SDll IPv6 use is limited
• IP RouDng
– Interior and Exterior protocols
• IP QoS
– Providing more than best effort traffic
73
References
• Mobile Broadband, Ergen
• IMS, J. Rafferty
• Internet Telephony based on SIP, H. Sinnreich, A.
Johnston
• A MulD-gigabit Rate Deep Packet InspecDon
Algorithm using TCAM, J-S Sung, et. al.
• CS40 Lecture 6: Security, R. Johari
• SIP, N. V. Pandrye
• Security EvoluDon on the Edge, W. Wilkening
• QoS in Data Networks, O. Ruso
74