MMN_Ch5_Adv_Netw_Tech_0809_les_FINAL
Download
Report
Transcript MMN_Ch5_Adv_Netw_Tech_0809_les_FINAL
CHAPTER 5
Advanced Networking Technologies
C. Develder and M. Pickavet
1
Content
1. Traffic Engineering
2. Failure Recovery
3. Multicast
4. Ethernet
5. IPv6
Technologies
2
Traffic Engineering
How to route the traffic
(or more general: engineer the traffic)?
Now: Shortest path (hop count) routing!
Alternatives:
- Constraint based routing (use other metrics)
- Load balancing (use different routes)
- MPLS (Multi Protocol Label Switching) as supporting
technology
Technologies
3
How to find the route with the required QoS?
low delay
ER
High BW
CR
CR
low BW
fiber link
CR
ER
CR
high BW
satellite link
QoS routing: taking certain constraints into account
(bandwidth, delay, cost, …)
CONSTRAINT BASED ROUTING (could be very complex)
(additive
[hop count, delay],
multiplicative
[loss rate],
concave constraints
How to distribute “constraint” information? (e.g. BW on
Add information on link state during OSPF (Q-OSPF)
[bandwidth])
links)
Very useful for both DiffServ and IntServ!
Routing table gets much more complex!
Technologies
4
Load balancing
ER
CR
CR
CR
CR
ER
CR
Shortest path problem: overload certain links
Load balancing: distribute traffic more evenly over the network:
- equal cost multipath (use of hash function)
- use of MPLS
Technologies
5
MPLS: Multi Protocol Label Switching
5
Label Switched
Router (LSR)
IN 1
LSR
3
MPLS header
IN 2
5
OUT 1
OUT 2
Link in
Label in
1
5
1
4
2
3
1
5
…
…
…
…
IP header
MPLS header (32 bit):
Label (20 bit): MPLS label
Exp (3 bit): experimental use
S (1 bit): stacking bit
TTL (8 bit): time to live
4
Link out Label out
Label Information
Base (LIB)
IP payload
local significance
e.g. use for DiffServ
Technologies
6
Routing <> Label Switching
189.123.0.0 6
189.123.0.0 8
2
189.123.0.0 B
6
189.123.0.0
g: m 52
1
A
k
7
w: k B
4
m
5
w
B w
3
B k
m: k 37
189.123.0.0
189.123.42.34/16
B k
B m
B B
g g
B
8
d: w 8
B d
k
d
k: d 4
IP router
IP/MPLS Label Switched Router (LSR)
Technologies
7
MPLS: Path set-up (LSP)
A
300100
Y: to C
100200
100
PATH
RESV
Lab_Req
Lab 300
Y
300
X
Need label for
Destination Y
(LABEL_REQUEST
object in
W
PATH msg)
B
D
C
Y: to Y
200100
200
100
Y
RESV Lab 100
Label Switched
Router
Z
Y: to B
Label
Information
Base
Respond with a
label (receive)
(LABEL object
in RESV msg)
RSVP-TE
Technologies
8
MPLS: support of TE
C
Z
A
450
B
100
100
Y
300100 150
100
X
200
50 300
W
D
MPLS Label
IP header
Technologies
11
MPLS: Example MPLS “tunnel”
157.193.0.0
network gateway interface
145.12.0.0
B
OUT 1
…
…
…
A
OUT 1
5
3
network gateway interface
145.12.0.0
C
OUT 2
…
…
C
3
B
D
label
5
…
E
145.12.134.3
145.12.0.0
F
4
LSP
MPLS tunnel (LSP) set-up via explicit routing:
during path set-up an explicit path is used
(not the OSPF shortest, but e.g. a constraint based path with lowest delay)
Technologies
12
MPLS: VPN example
MPLS Virtual Private Network between three company locations
LSP
157.193.0.0
145.12.0.0
Public Internet
(MPLS capable)
easy end-to-end
encryption for
security
153.145.0.0
MPLS could be combined with
DiffServ to provide QoS
(the 3 Exp bits are used to
indicate the PHB)
Technologies
13
Content
1. Traffic Engineering
2. Failure Recovery
3. Multicast
4. Ethernet
5. IPv6
Technologies
14
Failure Recovery: OSPF based
normal operation
[AB,AE]
incoming
link state
packets
[AB,BD,BC]
[BD,CD,DE]
[AE,DE]
A
B
E
D
Router C:
Link-State Database
Link Cost Sequence
AB
1
A,5
AE
1
A,6
BD
1
B,6
BC
1
B,7
CD
1
D,7
DE
1
D,6
C
knowledge of
network topology
Dijkstra:
shortest paths
Router C:
Routing Table
Dest. Next Interface
hop
A
B
BC
B
Direct
BC
D
Direct
CD
E
D
CD Technologies
15
Failure Recovery: OSPF based
recovery
[AB,AE]
incoming
link state
packets
[AB,BD,BC]
[BD,CD]
[AE]
Link ED
not
advertised
A
B
E
D
Router C:
Link-State Database
Link Cost Sequence
AB
1
A,5
AE
1
A,6
BD
1
B,6
BC
1
B,7
CD
1
D,7
C
this may take 50 to 100 seconds
knowledge of
network topology
Router C:
Routing Table
Dest. Next Interface
hop
A
B
BC
B
Direct
BC
D
Direct
CD
E
B
BC
Dijkstra:
shortest paths
Technologies
16
Failure Recovery: MPLS based
Set up back-up LSP between edge routers
Copy incoming traffic on primary and back-up LSP (1+1 protection)
Select traffic from back-up LSP if primary LSP not available
VERY FAST (single decision at receiving end = egress router)
primary
LSP
ingress
router
ER
CR
CR
copy traffic
on backup LSP
backup
LSP
CR
CR
egress
router
ER
take traffic from
backup LSP
if primary LSP fails
Note: all traffic between the two edge routers may be protected with the same back-up LSP
Technologies
17
MPLS: failure recovery
C
Z
A
450
B
100
100
Y
300100 150
100
X
200
50 300
W
D
MPLS Label
IP header
Technologies
18
Content
1. Traffic Engineering
2. Failure Recovery
3. Multicast
4. Ethernet
5. IPv6
Technologies
19
Multicast: multiple unicast
157.193.122.12
157.193.10.1
157.193.129.15
157.193.245.136
157.193.84.54
157.193.13.58
A source is sending the same information
to a number of receivers (e.g. video distribution)
Multiple unicast flows or single multicast flow
Technologies
20
Multicast: single multicast tree
Class D multicast address
( multicast group)
226.17.30.197
157.193.122.12
157.193.10.1
157.193.129.15
157.193.245.136
Who belongs to multicast group?
connection
- requires
- requires
- requires
oriented!
state in the network
signaling
special routing protocols
157.193.84.54
157.193.13.58
How to become member of the multicast group?
How to set up the multicast tree?
Multiple unicast flows or single multicast flow
Technologies
21
Multicast architecture
Internet
MULTICAST ROUTING
DVMRP
Distance Vector Multicast Routing Protocol
PIM
Protocol Independent Multicast
(used in a wide area: intradomain)
also interdomain
IGMP
Internet Group Management Protocol
Technologies
(used in a single (sub)network)
22
Internet Group Management Protocol (IGMP)
IGMP messages:
message type
membership query : general
membership query : specific
membership report
leave group
Edge Router has to know
the multicast groups
where local hosts
are subscribed
sent by
router
router
host
host
purpose
ask attached hosts joined multicast groups
ask attached hosts specific joined multicast group
report host wants to join or is joined to given multicast group
optional! ( soft state)
report leaving multicast group
226.17.44.23
226.17.30.197
226.17.32.156
ER
Internet
226.17.44.23
226.17.30.197
226.17.44.23
query
report
226.17.30.197
226.17.32.156
226.17.30.197
Technologies
23
226.17.44.23
Service model of multicast
Service model:
- local join of multicast group using IGMP
- access router will take care of receiving
multicast group packets (for its local hosts)
(use of multicast routing protocol)
- receiver driven joining of a group
- senders do not know the receivers
- all group members can be sender
Remaining question:
How to interconnect the edge routers?
Use of multicast routing protocols
Note: no coordination of the choice of a class D address for a multicast group
( multiple groups may eventually use the same class D address!)
Technologies
24
Solution: “source filtering”, as in IGMP v3
Multicast routing: group shared tree
ER
ER
CR
ER
CR
CR
CR
ER
CR
ER
ER
ER
How to build up the routing tree between edge routers?
first approach: multicast group shared tree
Note: all group members use the same (bidirectional) tree
Technologies
25
Multicast routing: group shared tree
ER
ER
CR
ER
CR
CR
RP
CR
ER
CR
ER
ER
ER
How to build up the routing group shared tree?
Use of a rendezvous point (center based approach)
Note: choice of rendezvous point is difficult
Technologies
26
Multicast routing: source based tree
ER
ER
CR
ER
CR
CR
CR
ER
CR
ER
ER
ER
Second approach: multiple source based trees
Note: trees will be different and in general unidirectional
Technologies
27
Multicast routing: source based tree
ER
ER
CR
An incoming multicast packet is forwarded
in a router on all of its outgoing links
(except the one on which the packet was
received) only if the packet arrived on the link
that is on its own shortest path
back to the sender
ER
CR
CR
CR
ER
CR
ER
ER
ER
How to build up a source based tree?
Use of a Reverse Path Forwarding (RPF)
Note: prune messages from edge routers that have no hosts belonging to the multicast
group
Technologies
28
Multicast routing: source based tree
ER
ER
CR
ER
CR
CR
CR
ER
CR
ER
ER
ER
Prune messages sent from edge routers that have
no hosts belonging to the multicast group
(“pruned” routers will not forward packets from the multicast group)
Technologies
29
Examples of multicast routing protocols
Distance Vector Multicast Routing Protocol (DVMRP)
source based trees
reverse path forwarding, pruning and grafting
Protocol Independent Multicast (PIM)
Two different scenarios: dense mode and sparse mode
dense mode (DM): large number of users RPF approach
sparse mode (SM): few users central approach
bidirectional (BIDIR): variant of SM central approach
Multicast Open Shortest Path First (MOSPF)
Core Based Tree (CBT)
Technologies
30
Content
1. Traffic Engineering
2. Failure Recovery
3. Multicast
4. Ethernet
5. IPv6
Technologies
31
Ethernet: Self learning
Send frame from X to Y
Send frame back from Y to X
Fill in switch table
1
X 1
A
Y 4
1 2
X 4
4
3
X
X 1
Y 3
D
2
4
1 2
3
4
C
B
3
1
X 4
2
Y 1
3
Y
Ethernet Switch
Technologies
33
Ethernet: switched loops
Send frame from X to Y
X 1
X 2
D
1
X 1
X 4
X 3
A
1 2
2
4
3
B
X 1
X 4
4
1 2
3
X
Y
Formation of loops
Multiple copies received by terminals
Technologies
35
Spanning Tree Protocol (STP)
with multiple paths, cycles result - switches may
multiply and forward frame forever
for increased reliability, desirable to have
redundant, alternative paths from source to dest
solution: organize switches in a spanning tree by
disabling subset of interfaces
Technologies
36
Spanning Tree Protocol (STP)
IEEE 802.1D: Spanning Tree Protocol (STP)
STP forms a spanning tree where interfaces are
blocked to avoid loops in the network
Switches communicate using 2 types of BPDU’s
(Bridge Protocol Data Units):
- Configuration BPDU’s (at start-up)
- Topology Change Notification BPDU’s and their
acknowledgements (during operation)
The spanning tree is built automatically
STP will also result in a higher reliability
Technologies
37
Spanning Tree Protocol (STP)
Configuration procedure:
Step 1: all ports in blocking mode
Step 2: choose a root switch
Step 3: minimum spanning tree algorithm
calculated in a distributed way using the Port
Path Costs (cf. Kruskal)
Step 4: ports will change to forwarding mode
based on spanning tree
How to choose the root switch?
Based on (lowest) Bridge ID
Bridge ID format:
Bridge priority (2 bytes)
MAC address (6 bytes)
Technologies
38
Spanning Tree Protocol: Example
RP: Root Port
DP: Designated Port
BP: Blocked Port
router
1
root
DP
8
DP
RP
switch
RP
RP
7
DP
3 BP
DP
DP
RP
BP
DP
5
BP
DP
RP
DP
DP
DP 2
RP
BP
6 DP
DP
RP
DP
BP
BP
4
hub
Technologies
40
Virtual LAN (VLAN)
(Switched) LAN: Local area network where different hosts
are interconnected via switches. They can communicate
without limitation.
Virtual LAN (VLAN): Defines a subset of the hosts that are
able to communicate within a single VLAN. No layer 2
communication between VLAN’s.
VLAN’s allow more flexible management of the network.
Different VLAN implementations:
Untagged (port based)
Tagged (802.1Q)
Technologies
41
Virtual LAN (VLAN): port based
A port is mapped on a VLAN (VLAN ID),
(typically manual configuration)
Ports will communicate only with other ports having the
same VLAN ID
Logically separate networks (different IP subnets)
traffic between VLAN’s via external router
No tags are used
1234567
Example :
VLAN 1: ports 1,2,5,7
VLAN 2: ports 3,4,6
Technologies
42
Virtual LAN (VLAN): port based
IP router
VLAN 1
VLAN 2
VLAN 3
3 separate
links
3 separate
links
A
D
B
Multiple VLAN’s require separate ports
Interconnection via IP router
C
Technologies
43
Virtual LAN (VLAN): tagged
Untagged frame: a frame that does not contain a tag header
(tag not necessary in port based VLAN’s)
Tagged frame: a frame that contains a tag header
immediately following the Source MAC Address field of the
frame.
There are two types of tagged frames: VLAN-tagged frames
and priority tagged frames:
• VLAN-tagged frame: A tagged frame whose tag header carries both
VLAN identification and priority information
• priority-tagged frame: A tagged frame whose tag header carries
priority information, but carries no VLAN identification information
(VID = 0)
VLAN-aware: A property of switches or end stations that
recognize and support VLAN-tagged frames
Technologies
44
Virtual LAN (VLAN): tagged
Standard IEEE 802.3 Ethernet Frame format
preamble SFD DA SA T/L
data
FCS
SFD (Start-of-Frame Deliniter)
Extra information is inserted
preamble SFD DA SA TPID TAG T/L
data
FCS
TPID (Tag Protocol Identifier) = 0x8100
User
priority
CFI
VLAN
identifier
CFI (Canonical Format Indicator) = 0 (for ethernet)
Technologies
45
Virtual LAN (VLAN): tag based
1 link or
3 separate
links
1 single
link
A
D
B
C
Multiple VLAN’s can use a single port (due to tagging)
Interconnection via IP router
Technologies
Automatic configuration possible
46
Content
1. Traffic Engineering
2. Failure Recovery
3. Multicast
4. Ethernet
5. IPv6
Technologies
47
IPv6
Why a new standard?
- exhaust of IP address space
- learn from experience with IPv4
- Increase address space from 32 bits to 128 bits
- Introduce anycast addresses
- Use streamlined 40 bytes header
- Introduce the notion of a flow (e.g. audio and video flows)
- Support traffic classes (see e.g. DSCP in DiffServ)
Example: send request to any server of a certain type,
routing system will deliver only to nearest server
Technologies
48
IPv6
version(4) traffic class (8)
payload length (16)
flow label (20)
next header (8)
hop limit (8)
source address (128 bit)
destination address (128 bit)
payload
IP address: 8 x 16bit numbers in HEX
example:
3FFE:80B0:0:1:A00:20FF:FEA2:8DBC
Technologies
49
IPv6
version traffic class
payload length
flow label
next header
hop limit
No fragmentation
No checksum
No options
(but possible via next header)
Fixed length of
40 bytes
source address (128 bit)
destination address (128 bit)
payload
4-bit
4-bit
8-bit ToS
version header
length
16-bit identification
8-bit TTL
Ipv6 header
next header = TCP
TCP+data
16-bit total length of packet
3-bit flags
13-bit fragment
offset
8-bit protocol
16-bit header checksum
32-bit source IP address
32-bit destination IP address
Options (if any)
Ipv6 header
next header=routing
routing header
next header=TCP
Ipv6 header
next header=routing
routing header
next header=fragment
TCP+data
Data
fragment header
next header=TCP
TCP+data
Routing header: strict or loose source route (similar to IPv4)
Fragment header: similar to IPv4
Technologies
50