Transcript
1998. 12
넷매니아즈
손장우
Netmanias Confidential
2
Contents
.Motivations for label switching
.Label Switching Approaches
.Cell Switch Router (Toshiba)
.IP Switching (Ipsilon)
.Tag Switching (Cisco)
.ARIS (IBM)
.Comparisons for label switching approaches
.MPLS(MultiProtocol Label Switching)
.Conclusions
Netmanias Confidential
3
“Label Switching”
.Label: short, fixed length identifier. no global significance.
.Forwarding paradigm of Label switching: Label Swapping
.Routing: IP routing protocol(OSPF, BGP,…)
“Layer 3 routing with Layer 2 switching speed”
“switch when you can, route when you must”
“route once, switch many”
Incoming
label
5
7
...
Outgoing
label
3
6
...
Label lookup table(forwarding table)
5
3
Lookup outgoing label
Level swapping
and switching
IP Routing function (OSPF, BGP, PIM, RSVP,...)
Layer 3 router
LDP
Layer 2 switch
Outgoing
interface
1
2
...
i/f1
Netmanias Confidential
4
Motivations for Label Switching
.Growth and Evolution of the Internet
.Integration of IP over ATM
.Extending Routing Functionality
Netmanias Confidential
5
Growth and Evolution of the Internet
Growth
of
Internet
Internet users.
Nodes수.
Need for scalability
Need for
high performance network architecture, switching & routing product
(getting faster!)
Need for new routingfunctionality (paradigm)
BW requirement .
Application (WWW, MM)
Network
Router
Label Switching
Backbone traffic growth has already exccededthe gorwth capabilities of traditional routers-new approaches are required
Router
capacity,
pps
500K
250K
125K
Total internet
backbone
capacity,
TeraBytes/
week
240 TB
60 TB
120 TB
1994
1995
1996
1997
Router capacity
Internet traffic
Netmanias Confidential
6
Need for new routing functionality (paradigm)
Conventional routing architecture: close coupling between routing and forwarding
Routing Table
unicast route{dest IP address, nexthop}
unicast route with TOS{dest IP address, TOS, nexthop}
multicast route{src & dest IP address, nexthop}
CIDR{variable length prefix, nexthop}
Routing function
Forwarding functions(index, algorithm)
IP packet
Longest match, dest IP
exact match, variable length dest IP
Longest match, dest IP & exact match TOS
Next hop
Routing Table
unicast route{dest IP address, nexthop}
unicast route with TOS{dest IP address, TOS, nexthop}
multicast route{src & dest IP address, nexthop}
CIDR{variable length prefix, nexthop}
Forwarding Tableincoming label, outgoing label
IP packet
IP H
Label
IP H
Routing function
Common forwarding
function(label swapping)
Label switching architecture: decoupling between routing and forwarding
Completely decoupling
Netmanias Confidential
7
Integration of IP over ATM
.Data delivery model
.IP: datagram or connectionless model
.ATM: virtual circuit or connection-oriented model
.different addressing scheme, multicast, resource allocation
.How to map the IP architecture onto ATM network: overlay model
.IP network: ATM VC으로interconnected된routers들로구성, IP pkt forwarding
.ATM network: router간에high speed connectivity를제공
.CIOA, LANE, NHRP, MPOA
IP Network
ATM Network
Router
ATM Switch
Netmanias Confidential
8
Integration of IP over ATM
.Problem
.Too many servers: ATM ARP, MARS, NHRP, BUS, Route, Broadcast, ISAG, LECS, default forwarder,…
.Too many protocols: ATM ARP, MARS, NHRP, PNNI, Q.2931,…
.Address resolution
.IP address .ARP .MAC address .LANE server .ATM address .Signaling .VCI .transmit data
.Scalability: N squire full-mesh interconnections are required
.Label switching
.ATM H/W는label(VPI/VCI) swapping방식으로그대로cell forwarding(switching)하고
.forwarding table setup과resource allocation은IP control protocol(BGP,OSPF, RSVP,…)
IP
ATM
ARP
MARS
NHRP
PNNI
Q.2931
ATM H/W
IP routing and
address resolution
ATM signaling
and routing
IP over standard ATM
IP
ATM H/W
LDP
Label switching
LDP:
label distribution protocol
Netmanias Confidential
9
Route Scalability
ATM cloud
Router
ATM cloud
Router
Switch
Router
ATM Switch
IP Network
ATM Network
.N2mesh connectivity Problem
-A full-mesh of virtual circuit(VCs)
interconnects N routers
-각router간에separate VCC이필요
-VC(Virtual Circuit)의수
= N(N-1)/2 = O(N2).“VC-explosion”
.N2peering Problem
-adjacency 수= N-1
-router의routing computational
overhead = O(N2) .larger, more
expensive router요구
현재WAN의구조
(Overlay model)
-ATM core network
-Edge routers
ATM cloud에연결된router의수N
.N2mesh connectivity Problem
.VC-merging
.N2peering Problem
LSR .The number of adjacency
dramatically reduce
Netmanias Confidential
10
Extending Routing Functionality
.Conventional router(routing architecture) ~ destination-based routing (index로destination address만이용하여forwarding한다)
.Policy: Packets arriving from A that are going to router F should go via router D, while all other packets destined for F should go via router E
Router A
C
B
D
E
F
Netmanias Confidential
11
Label switching approaches
.CSR ~ Toshiba (CSR, FANP: rfc2098, 2129)
.IP switching ~ Ipsilon (GSMP, IFMP: rfc1953, 1954, 1987, 2297)
.Tag switching ~ Cisco (TSR, TDP: rfc2105)
.ARIS(Aggregate Route-based IP Switching) ~ IBM
MPLS (MultiProtocol Label Switching)
.
Netmanias Confidential
12
Cell Switched Router
.CSR ~ Toshiba (CSR, FANP: rfc2098, 2129)
.IP switching ~ Ipsilon (GSMP, IFMP: rfc1953, 1954, 1987, 2297)
.Tag switching ~ Cisco (TSR, TDP: rfc2105)
.ARIS(Aggregate Route-based IP Switching) ~ IBM
.MPLS(MultiProtocol Label Switching)
In spring 1994 : presented IETF IP over ATM WG by Toshibarfc 2098: Toshiba\'s Router Architecture Extensions for ATM : Overview , Feb. 1997rfc 2129: Toshiba\'s Flow Attribute Notification Protocol (FANP) Specification, April 1997LSR(Label Switched Router) = CSR(Cell Switch Router)LDP(Label Distribution Protocol) = FANP(Flow Attribute Notification Protocol)
Netmanias Confidential
13
LANE (LAN Emulation)
.ELAN = VLAN = Broadcast Domain
.ELAN(VLAN)내의communication은LANE을이용해서ATM backbone을통해VCC설정
(LEC, LECS, LES, BUS)
.ELAN(VLAN)간의communication은router를거쳐야한다.
.Routing between ELANs
.one-armed router
.route server
H
H
LES
H
LEC
LEC
LEC
LEC
LAN switch
LAN switch
LES
ELAN 1
ELAN 2
Netmanias Confidential
14
Route
server
One-armedrouter
Routing between ELANs (VLANs)
H
H
One-armedrouter
H
LAN switch
LAN switch
ELAN 1
ELAN 2
Traffic within the same ELAN(A.B)
Traffic between ELANs(A .C)
A
B
C
H
H
Route
server
H
LAN switch
LAN switch
ELAN 1
ELAN 2
Traffic within the same ELAN(A.B)
Traffic between ELANs(A .C)
A
B
C
Address resolution
MPOA
Netmanias Confidential
15
Classical IP over ATM [rfc 1577]
.LIS = VLAN = Broadcast Domain
.LIS내의communication은ATM ATP server를이용해host간에end-to-end direct VCC설정가능
.LIS간의communication은Router를통해
.Routing between LISs
.one-armed router
.NHRP
LIS 1
LIS 2
Physical View
Logical View
ARP server
Router
LIS 1
LIS 2
Netmanias Confidential
16
NHRP address resolution
LIS X
LIS Y
LIS Z
NHS 1
NHS 2
Dst IP ATM addr{Y.1, BBB}...{Z.1, CCC}
NHR cache
Dst IP next hop
{Z.1, NHS2}
...
Routing table
PVC(NHC2)
Dst IP ATM addr{Z.1, CCC}...
NHR cache
{Y.1, BBB}
...
{Z.3, CCC}
NHR cache
UNI signaling for establishing SVC (AAA-CCC)
Data transfer
.
.
.
.
.
.
.
.
IP =X.1
ATM =AAA
IP=Z.1ATM=CCC
NHRP (Next Hop Resolution Protocol)NHS (Next Hop Resolution Server)=Router + NHRP
MPOA = LANE + Route server + NHRP
Netmanias Confidential
17
CSR(Cell Switch Router): Motivation
CIOA
LIS X
Router1
Router 2
X.1
Z.1
LIS Y
LIS Z
ATM cloud
CSR
LIS X
CSR 1
CSR 2
X.1
Z.1
LIS Y
LIS Z
ATM cloud
AAL
Default-VC
LIS내의host간통신은direct VCC을통해가능하지만, LISs간통신을위해서는반드시router를거쳐야한다.
; X.1.VC x .R1(reassemble .IP forwarding .segmentation) .VC y .
R2(reassemble .IP forwarding .segmentation) .VC z .Z.1
Bottleneck .Router between subnets
LISs간통신시에두모드가능(1) Layer 3 forwarding : hop-by-hop IP level packet routing(2) Layer 2 switching: ATM Bypass-pipe라는cut-through path를설정; X.1.ATM Bypass-pipe.Z.1ATM Bypass-pipe(=multiple VCs) : X.1 .dedicated-VC a .CSR1:switching .dedicated-VC b .CSR2:switching .dedicated-VC c.Z.1)
Dedicated
-VC
IP
ATM
Default-VC
AAL
IP
ATM
AAL
IP
ATM
Default
-VC
Dedicated-VC
Dedicated
-VC
AAL
IP
ATM
AAL
VC x
IP
ATM
VC y
AAL
IP
ATM
AAL
IP
ATM
VC z
AAL
IP
ATM
Bypass-pipe
Objective of CSR: Interconnect LISs without packet-by-packet Layer 3 forwarding
Netmanias Confidential
18
CSR Architecture overview
.CSR(Cell Switch Router)
.conventional hop-by-hop IP packet forwarding + cell switching function(이로인해서로다른LIS간통신시에도cut-though path가설정됨)
.Default-VC
.end host/edge router와CSR간또는한쌍의CSRs간에통신채널로모든트래픽(routing protocols-OSPF/BGP, data traffic, etc.)이전달되는a general purpose VC.
.Default-VC로들어오는모든ATM셀은assembled .IP forwarding (hop-by-hop packet forwarding)
.Dedicated-VC
.특정IP packet flow(예를들어, {src.IP address, dest.IP address})가검출/감지되면그flow에할당되는VC
.두CSRs간에(즉, 한subnet내에서)만의미가있다.
.두개의dedicated-VC은cut-through packet forwarding path를형성하며이때CSR은VPI/VCI값을이용해스위칭한다.
.이때dest.IP address와VPI/VCI간의mapping을위해FANP을이용
.Bypass-pipe
.특정IP packet flow에대한CSRs간dedicated-VC이모이면ATM Bypass-pipe 생성됨.
LIS X
CSR 1
CSR 2
X.1
Z.1
LIS Y
LIS Z
ATM cloud
AAL
Default-VC
Dedicated
-VC
IP
ATM
Default-VC
AAL
IP
ATM
AAL
IP
ATM
Default
-VC
Dedicated-VC
Dedicated
-VC
AAL
IP
ATM
Bypass-pipe
Netmanias Confidential
19
ATM Bypass-pipe
.Bypass-pipe
.host-to-host: S3.CSR1 .CSR2 .D3
.router-to-host: R2 .CSR1 .CSR2 .D3
.host-to-router: S3 .CSR1 .CSR2 .R4
.router-to-router: R2 .CSR1 .CSR2 .R4
LIS X
s3
D3
LIS Y
LIS Z
ATM cloud
CSR 2
CSR 1
Network Reference Model
R2
D2
s2
R4
Netmanias Confidential
20
An example of IP datagram transmission mechanism
.CSR에Cell도착..check VPI/VCI.Lookup table(incoming interface, VPI, VCI?)
.Yes.switching(outgoing interface, VPI,VCI, CSR2까지간다)
.No.reassemble.IP packet(normal IP routing) .segmentation.해당default VC
LIS X
CSR 1
CSR 2
X.1
Z.1
LIS Y
LIS Z
ATM cloud
AAL
Default
-VC
Dedicated
-VC
IP
ATM
Default-VC
AAL
IP
ATM
AAL
IP
ATM
Default
-VC
Dedicated-VC
Dedicated
-VC
AAL
IP
ATM
Bypass-pipe
Netmanias Confidential
21
NHRP-based internetworking architecture와CSR-based architecture
.공통점: 서로다른LISs간에direct ATM level interconnectivity(cut-through path)를제공
.차이점
NHRP
LIS X
IP level routing: OSPF, BGP, IS-IS protocols / IP packet forwarding
(host Z.1의ATM address를얻기위한IP-ARP 즉, NHRP 수행시
ATM network의egress point(ATM addr. of Z.1)를찾을때)
ATM routing: P-NNI (egress point로의an direct ATM VCC 설정시)
NHS 2
X.1
Z.1
LIS Y
LIS Z
VCC
ATM cloud
IP
AAL
ATM
IP
AAL
ATM
NHS 1
Hierarchical routing
IP level routing: Z.1으로IP packet forwarding을위한routing
inter-subnet level path를결정
ATM routing: adjacent nodes(CSR, or ATM attached host/router)간에ATM VCC설정을위한
intra-subset level path를결정
CSR
LIS X
X.1
Z.1
LIS Y
LIS Z
ATM cloud
CSR 2
CSR 1
CSR망구조의경우ATM routing은ATM cloud전체에대해수행되지않고각subnet에서만다른subnet과독립적으로수행되면
되므로ATM routing 을위해요구되는정보량이적다.
CSR망구조의경우end-to-end path는반드시각subnet 경계의router(CSR)를거치도록잡히므로
NHRP로얻은end-to-end ATM path가더optimal하다.
Netmanias Confidential
22
Triggers for Cut-through path
.Topology-driven path establishment
.CSR에새로운forwarding entry가생성될때이route에대한dedicated-VC을설정(cut-through path 설정절차를시작한다)한다.
.Aggregated packet flow
.{ingress edge router, dest.prefix}
.{ingress edge router, egress edge router}
.{*, dest.prefix}, {*, egress edge router}
.Tag switching과유사
.Traffic-driven path establishment [FANPv1.0]
.CSR에packet이들어오면CSR이이packet flow에대해cut-through path(Dedicated-VC)을설정해줄것인가를결정
.Request-driven path establishment
.CSR이RSVP resource reservation request를받으면설정
Netmanias Confidential
23
Interoperation with standard ATM network platform(individual subnet에서dedicated-VC를할당하는3가지방법)
(1) VP-based이웃하는CSRs을VP로연결하고a dedicated-VC이요구될때an unused VC을할당
CSR 1
CSR 2
LIS
a VP/ a pair of CSRs
(2) PVC-based
(picking up one from a bunch of PVCs)
initialization phase에서
이웃하는CSRs간에PVCs를할당받고
a dedicated-VC이요구될때
이들중하나를할당
1) pick up a PVC
2) FANP(flow-VCID-PVC)
3) dedicated-VC설정
CSR 1
CSR 2
LIS
PVC-set
...
(3) SVC-based(on-demand SVC setup)a dedicated-VC이요구될때마다ATM signaling을통해SVC를설정해서이를할당1) ATM ARP2) SVC setup3) FANP(flow-VCID-SVC)4) dedicated-VC설정-dedicated-VC setup중에IP datagram을default-VC을통해hop-by-hop forwarding할수도있다.
CSR 1
CSR 2
LIS
SVC
ATM signaling
a dedicated-VC
a dedicated-VC
a dedicated-VC
Netmanias Confidential
24
FANP (Flow Attribute Notification Protocol)
LIS X
CSR 1
CSR 2
X.1
Z.1
LIS Y
LIS Z
OFFER
{VCID, FLOWID, RIT}
PROPOSE(on dedicated-VC){VCID, src.IP, target IP}
PROPOSE ACK
{VCID}
READY{VCID, FLOWID}
READY
{VCID, FLOWID}
READY
{VCID, FLOWID}
.VCID
negotiation
(notification)
.FLOWID
negotiation
(notification)
.FLOWID
refresh
PROPOSE message가온VC이
flow에대한dedicated-VC이다.
VCID dedicated-VC
I/F VPI VCI
1a1 5 10
VCID dedicated-VCI/F VPI VCI1a1 3 15
Target IP: CSR2의IP addressFLOWID: flow의src.IP address와flow의dest.IP addressRIT: READY message의refresh interval
Dedicated-VC for the flow
FLOWID VCID
src IP/destIP 1
FLOWID VCID
src IP/destIP 1
Flow(FLOWID=srcIP/destIP)의
packet은VPI/VCI=3/15로보낸다
Flow(FLOWID=srcIP/destIP)의packet은VPI/VCI=5/10으로온다.
.Dedicated-VC선택
.FLOWIDremoval
“ I’m going to send you traffic
for flow x on the VC with VCID 1”
Netmanias Confidential
25
IP Switching
.CSR ~ Toshiba (CSR, FANP: rfc2098, 2129)
.IP switching~ Ipsilon (GSMP, IFMP: rfc1953, 1954, 1987, 2297)
.Tag switching ~ Cisco (TSR, TDP: rfc2105)
.ARIS(Aggregate Route-based IP Switching) ~ IBM
.MPLS(MultiProtocol Label Switching)
1995 IpsilonRFC2297: \"Ipsilon\'s General Switch Management Protocol Specification Version 2.0\", Mar 1998 RFC1953: \"Ipsilon Flow Management Protocol Specification for IPv4 Version 1.0\" , May 1996 RFC1954: \"Transmission of Flow Labelled IPv4 on ATM Data Links Ipsilon Version 1.0\", May 1996 RFC1987: \"Ipsilon\'s General Switch Management Protocol Specification Version 1.1\" , Aug 1996 LSR(Label Switched Router) = IPS(IP Switch)LDP(Label Distribution Protocol) = IFMP(Ipsilon Flow Management Protocol)
Netmanias Confidential
26
IP switching overview
.ATM control plane을없애고IP + label binding protocol(IFMP)을이용해IP packet을ATM switch상에서forwarding
.First one or a few packets:
.default VC(no signaling required, well known VPI/VCI)
.Default VC .IPS(reassembled .pkt-by-pkt forwarding .
segmented) .Default VC
.Flow detection
.flow classification (type1/2)
.setup Cut-though path for the flow (IFMP, GSMP)
.data VC .ISP(switching) .data VC
.IFMP(rfc1953): Ipsilon Flow Management Protocol
.GSMP(rfc1987): General Switch Management Protocol
switch
Flow classification and control
IP
ATM
ARP
MARS
NHRP
PNNI
Q.2931
ATM H/W
IP routing and address resolution
ATM signalingand routing
IP over standard ATM
IP
ATM H/W
IFMP
IP switching
GSMP
IFMP
IP routingforwarding
GSMP
Default VC
Data VC
Default VC
Data VC
IFMP
IFMP
Switchcontroller
IP Switch architecture
Netmanias Confidential
27
IP switching operation
Initial path
.IP packets are forwarded hop-by-hop using a default VC.
ATM cells are reassembled in IP packets at each hop.
IP switch controller makes a flow classification decision.
Controller labels a selected flow
.IP switch controller sends an IFMP message to upstream
node to use a new VC for the selected flow.
.use a Traffic for the selected flow begins to flow on the
new VC.
Upstream flow is labeled !
ATMFabric
IP switch
controller
Upstreamnode
Downstream
node
ATM cells
VPI/VCI=0/15
.
IP switchcontroller
Downstreamnode
.
{flow=x, VPI/VCI=3/57}
Upstream
node
.ATM cells
VPI/VCI=3/57
ATM
Fabric
Netmanias Confidential
28
IP switching operation (continued)
ATM
Fabric
IP switchcontroller
Downstream
node
.ATM cells
VPI/VCI=2/22
Downstream node also labels flow
.Downstream node also sends an IFMP request for a new VC.
.IP switch sends traffic for that flow to the downstream node
on the new VC. Downstream flow is labeled !
.{flow=x, VPI/VCI=2/22}
ATM cellsVPI/VCI=3/57
Upstreamnode
Netmanias Confidential
29
IP switching operation (continued)
ATM
Fabric
IP switch
controller
Downstream
node
.ATM cellsVPI/VCI=2/22
Flows at ATM fabric speed
.Incoming labeled flow switched through to outgoing labeled flow.
(Cut-through operation completed for flow-oriented traffic.)
Switch maintains switching table.
Upstreamnode
.ATM cells
VPI/VCI=3/57
Data VC
(cut-through switching)
Default VC
(pkt-by-pkt forwarding)
Netmanias Confidential
30
Flow Classification
Data VC(cut-through switching)
ATM
Fabric
IP switch
controller
Downstream
node
Upstream
node
Aggressiveflow classification
scalability problem
delay associated with setting up binding
Default VC(pkt-by-pkt forwarding)
Data VC
(cut-through switching)
ATMFabric
IP switch
controller
Downstream
node
flow classification
대부분의flow가
packet-by-packet forwarding (S/W)
Default VC
(pkt-by-pkt forwarding)
Upstream
node
Classification !
Netmanias Confidential
31
Switching flow classification
.Flows consist of multiple packets that share, for example, the same source and destination address, type of service, protocol.
.Flow type
.type 1: a port-pair flow type ~ pkts with the same {src IP addr, dest IP addr, src TCP/UDP port, dest TCP/UDP port} (well-known port number~ port 20: TCP ftp, 80: TCP http)
.type 2: a host-pair flow type ~ pkts with the same {src IP addr, dest IP addr}
.Flow detection
.X/Y
.TCP
.Long-term flows are ideal for cut-through switching.
.Short-term transactions are ideal for datagram forwarding.
.Flow oriented traffic:
.ftp, http, NFS, multimedia audio/video
.Short-lived traffic:
.DNS, NTP, SMTP, POP, SNMP
Classification
Netmanias Confidential
32
IP switching network architecture
.ATM host, Edge router도IP switching에참여
(if IFMP runs on ATM host, Edge router)
.IP switches can directly interconnect hosts
.standard ATM network을통한IP switches간의연결
.PVP(Permanent Virtual Path)사용해야
.CSR처럼PVC, SVC를사용못한다.
.IP switch는VCI를label로사용하므로두IP switch사이의링크에서VCI값이바뀌면(translation) 안된다.
Edgedevice
IP
Switch
IP
Switch
LAN
Fast
Ethernet
ATM host
IFMP
IFMP
IFMP
IPSwitch
IP
Switch
Standard ATM network
PVP
VPI: ATM switching에사용(VP switching)
VCI: label for IP switching
5.3 /2.10
2.10/7.8
3.8
7.8
1.8
3.8/1.2
1.2
5.3
2.10
Netmanias Confidential
33
IP Switching Summary
.Traffic(flow, data)-driven model
.label allocation(label binding to a flow, distribution) is initiated by the arrival of traffic on that flow
.ATM switch(general switch) + IFMP, GSMP = IP switch
.switch controller
.S/W = conventional router(routing, forwarding) + flow detection + label distribution
.aggressive flow classification.all packets are switched
.scalability problem + delay associated with setting up binding
.Advantages
.SVC setup없이packet 전송via default VC
.data VC
.fine granularity (layer4, layer3)
.Disadvantages (or Concern)
.scalability
Netmanias Confidential
34
Tag Switching
.CSR ~ Toshiba (CSR, FANP: rfc2098, 2129)
.IP switching ~ Ipsilon (GSMP, IFMP: rfc1953, 1954, 1987, 2297)
.Tag switching ~ Cisco (TSR, TDP: rfc2105)
.ARIS(Aggregate Route-based IP Switching) ~ IBM
.MPLS(MultiProtocol Label Switching)
CiscoRFC2105 : \"Cisco Systems\' Tag Switching Architecture Overview\" , Feb 1997 LSR(Label Switched Router) = TSR(Tag Switch Router)LDP(Label Distribution Protocol) = TDP (Tag Distribution Protocol)
Netmanias Confidential
35
Tag switching
.Tag Switching Operation:
.routes are mapped to tags. This is called a tag biding {address prefix, Tag}
.Tag bindings are distributed among TSR and stored a Tag Information Base(TIB) in the switch.
.Packets/cells are marked with appropriate tag and forwarded based on the contents of the tag.
.Tag can be:
.VPI/VCI field of an ATM cell, DLCI of a Frame Relay PDU
.could be a “shim” layer between layer 3 address and MAC address
.Topology-driven
Tag edge router
Tag switch
(ATM switch or Router)
Tag edge router
Tag Switch
Tag Switch Router(TSR)
Objectives-various routing functionality-better scalability-integration of cell-based technologyand frame-based technology
Netmanias Confidential
36
Concept of Tag Switching
dest.IP next hop I/F165.13/16 R2 if0148.12/16 R3 if1...
FIB
dest.IP next hop I/F
165.13/16 R2 if0
148.12/16 R3 if1
...
Addressprefix
Outinterface
165.13/16
if0
148.12/16
if1
In
Tag
9
2
...
...
...
Out
Tag
3
1
...
TIB
FIB
dest.IP next hop I/F165.13/16 R2 if0148.12/16 R3 if1...
FIB
R1
R2
R3
165.13/16
data
165.13/16
data
148.12/16
data
148.12/16
data
R1
R2
R3
dest.IP next hop I/F165.13/16 R2 if0148.12/16 R3 if1...
Address
prefix
Outinterface
165.13/16
if0
113.12/16
if1
In
Tag
3
2
...
...
...
Out
Tag
4
9
...
TIB
FIB
Conventional Router
(IP packet forwarding)
Tag Switching Router
(label swapping)
if0
if1
if0
if1
148.12/16
data
4
165.13/16
data
9
165.13/16
data
3
148.12/16
data
1
OSPF
IS-IS
BGP
OSPFIS-ISBGP
.Packet forwarding rate.
.Packet forwarding rate.
TDP
FIB: Forwarding Information Base
TIB: Tag Information Base
Netmanias Confidential
37
Destination-based routing
.Local tag binding
.Distribute the local binding
.Remote tag binding
Netmanias Confidential
38
.Local tag binding
if1
if0
if2
if1
if2
if0
if1
if2
if0
if2
if0
if1
if1
if2
if0
dest.IP next hop I/F
165.13/16 B if1
...
Addressprefix
165.13/16
Out
I/F
if1
InTag
10
next
hop
B
TIB
FIB
A
B
C
D
E
Out
Tag
( )
dest.IP next hop I/F
165.13/16 E if1
...
Address
prefix
165.13/16
OutI/F
if1
In
Tag
6
next
hop
E
TIB
FIB
Out
Tag
( )
dest.IP next hop I/F165.13/16 D if2...
Address
prefix
165.13/16
Out
I/F
if2
In
Tag
17
next
hop
D
TIB
FIB
Out
Tag
( )
dest.IP next hop I/F165.13/16 E if1...
Address
prefix
165.13/16
OutI/F
if0
InTag
5
next
hop
E
TIB
FIB
Out
Tag
( )
dest.IP next hop I/F
165.13/16 local if0
...
Address
prefix
165.13/16
OutI/F
if0
In
Tag
8
next
hop
E
TIB
FIB
Out
Tag
-
165.13 network
.Local tag binding
-entry in FIB.entry in TIB
-{inTag, address prefix}
-a route에a tag할당
-independent binding
.distribute the tag binding information
(TDP)
.remote tag binding
-tag binding{Tag, address prefix}를받은TSR는
-TIB에address prefix에대한entry가있는가?
-이entry의next hop이tag binding을보낸
TSR인가?
-TIB의outTag필드에tag값을기록
Two route to 165.13 networkA .B .EC .D .E(by routing protocol)
.
Netmanias Confidential
39
.Distribute and .remote binding
if1
if0
Address
prefix
165.13/16
Out
I/F
if1
In
Tag
10
next
hop
B
TIB A
Out
Tag
6
Address
prefix
165.13/16
Out
I/F
if1
InTag
6
nexthop
E
TIB B
Out
Tag
8
Address
prefix
165.13/16
OutI/F
if2
In
Tag
17
nexthop
D
TIB C
OutTag
5
Addressprefix
165.13/16
Out
I/F
if0
InTag
5
next
hop
E
TIB D
Out
Tag
8
Addressprefix
165.13/16
Out
I/F
if0
In
Tag
8
next
hop
E
TIB E
OutTag
-
.Local tag binding
-entry in FIB.entry in TIB
-{inTag, address prefix}
.distribute the tag binding information
(TDP: Tag Distribution Protocol)
.remote tag binding
-tag binding{Tag, address prefix}를받은TSR는
-TIB에address prefix에대한entry가있는가?
-이entry의next hop이tag binding을보낸
TSR인가?
-TIB의outTag필드에tag값을기록
if1
if0
if2
if2
if0
if1
if2
if0
if2
if1
if0
A
B
C
D
E
165.133 network
{8, 165.133}
{6, 165.133}
{10, 165.133}
{8, 165.133}
{5, 165.133}
{5, 165.133}
Netmanias Confidential
40
Tag switching operation
In
Tag
Address
prefix
Outinterface
Out
Tag
X
168.82
if1
4
X
165.13
if0
17
...
...
...
...
17
17
165.13.58.6
data
165.13.58.6
data
168.82.58.6
data
Edge에서는packet의IP address를이용해forwarding
Core에서는packet에장착된Tag를이용해switching
5
In
Tag
Address
prefix
Out
interface
Out
Tag
4
168.82
if1
9
17
165.13
if2
5
...
...
...
...
5
165.13.58.6
data
8
InTag
Address
prefix
Out
interface
Out
Tag
9
168.82
if1
2
5
165.13
if0
8
...
...
...
...
8
165.13.58.6
data
In
Tag
Addressprefix
Out
interface
Out
Tag
2
168.82
if0
X
8
165.13
if0
X
...
...
...
...
165.13.58.6
data
165.13 network
Netmanias Confidential
41
Improving Routing Scalability via a Hierarchy of routing knowledge
.Internet routing architecture
.models the Internet as a collection of routing domains
.intradomain routing: OSPF, RIP, EIGRP
.interdomain routing: BGP
.scalable routing
.Transit routing domain
.every router must maintain in its forwarding table all the routes provided by the interdomain routing, regardless of whether this is a interior router or border router, in order to forward the transit traffic through the domain.
.Interior router in a transit routing domain are basically just transferring packets from one border router to another, so it seems somewhat wasteful for them to have to maintain complete routing tables for all routes in the Internet
.Tag Switching gives a solution for this problem.
.Interior routers store only the routing information they really need-just enough to get packets to the right border router
.Border routers have full routing information
Netmanias Confidential
42
Within a Routing Domain
Routing Domain A
Routing Domain B
Routing Domain C
border router
T
X
Y
W
V
Z
interior router
P
Q
.Routing domain A의모든TSR은intradomain routing protocol(OSPF, RIP)에참여하여RD A의모든border router를destination으로하여FIB를작성하고, 이를토대로destination-based routing방식과동일하게TIB를작성한다.
if0
if0
if1
if0
if0
destination
W
In
Tag
-
-
Q
Out I/F
next hop
if0, X
if0,W
Out
Tag
10
2
destination
W
In
Tag
10
2
Q
Out I/F
next hop
if1, Y
if0, P
Out
Tag
12
7
destination
W
InTag
12
...
...
Out I/F
next hop
if0, W
...
Out
Tag
17
...
destination
W
In
Tag
17
...
Out I/F
next hop
if0, W
...
Out
Tag
-
...
TSR T
TSR X
TSR Y
TSR W
destination
Q
In
Tag
7
...
...
Out I/F
next hop
if0, Q
...
Out
Tag
5
...
destination
Q
In
Tag
5
...
Out I/Fnext hop
if0, Q
...
Out
Tag
-
...
TSR P
TSR Q
OSPF
TDP
Netmanias Confidential
43
Border Router
.서로다른Routing domain과연결되어있는모든TSR은interdomain routing protocol(BGP)에참여하여얻은모든routes에대해tag 할당, tag biding하여TIB를작성한다.
.이때, next hop은border router가된다.(provided by BGP)
Routing Domain A
Routing Domain B
Routing Domain C
border router
T
X
Y
W
V
Z
interior router
P
Q
if0
if0
if1
if0
if0
BGP
TDP
destination
165.13
In
Tag
3
...
...
Out I/F
next hop
if0, T
...
OutTag
2
...
TSR T
destination
165.13
In
Tag
6
...
Out I/F
next hop
if0, K
...
Out
Tag
10
...
TSR W
TSR Y
destination
W
In
Tag
-
-
Q
Out I/F
next hop
if0, X
if0,W
OutTag
10
2
TSR T
5
165.13
if0,W
2
destination
W
InTag
10
2
Q
Out I/Fnext hop
if1, Y
if0, P
OutTag
12
7
TSR X
...
...
...
...
destination
W
In
Tag
12
...
...
Out I/F
next hop
if0, W
...
Out
Tag
17
...
...
...
...
...
destination
W
In
Tag
17
...
Out I/Fnext hop
if0, W
...
OutTag
-
...
TSR W
2
165.13
if0, Z
6
Netmanias Confidential
44
TS
.Border TSR의FIB와TIB에는intradomain route에대한entry와interdomain route에대한entry가모두존재한다.
.Interior TSR의FIB와TIB에는intradomain에대한entry만존재한다.
.Forwarding scheme: use Tag stack, not a single tag !
Netmanias Confidential
45
Example
Routing Domain A
Routing Domain B
Routing Domain C
Addressprefix
165.13
In
Tag
9
...
...
Out I/F
next hop
If0, T
...
Out
Tag
5
...
Address
prefix
165.13
In
Tag
6
...
...
Out I/F
next hop
if0
...
OutTag
8
...
border router
T
X
Y
W
V
Z
Addressprefix
W
InTag
-
5
165.13
Out I/F
next hop
if0, X
if0, W
Out
Tag
10
2
Address
prefix
W
In
Tag
10
...
...
Out I/Fnext hop
if0, Y
...
Out
Tag
12
...
Addressprefix
W
InTag
12
...
...
Out I/F
next hop
if0, W
...
Out
Tag
17
...
Address
prefix
W
In
Tag
17
2
163.13
Out I/Fnext hop
if0, W
if0, Z
OutTag
-
6
TSR T
TSR X
TSR Y
TSR W
TSR V
interior router
165.13
data
5
165.13
data
2
10
165.13
data
2
12
165.13
data
2
17
165.13
data
6
[5] .TSR T: (5 .2), 10부착.[2,10] .TSR X packet의next hop W, TIB에서destiantion이W인entry를찾는다.Tag을2로swapping하고top tag=10을부가TSR X: (10 .12) .[2,12] .TSR YTSR Y: (12 .17) .[2,17] .TSR WTSR W: 17제거, (2 .6) .[6] .TSR Z W의TIB에서next hop이W자신으로되어있다. (의미: tag=17로들어온packet의top tagg를pop off!)
5
165.13
data
2
10
swapping
adding
165.13
data
2
17
6
Pop off
swapping
TSR Z
Netmanias Confidential
46
Improving Routing Scalability via a Hierarchy of routing knowledge
.To summarize, the use of hierarchy of routing knwledge allows complete isolation of the interior routers within a routing domain from interdomain routing, thus improving the stability and scalability of routing
Netmanias Confidential
47
Tag switching with ATM
.ATM-TSR: TSR의control component + ATM switch H/W
Inport VPI VCI
1 10 5
2 3 7
...
Outport VPI VCI
3 6 21
8 9 10
...
ATM lookup table
10/5
6/21
Outport 3
Lookup VPI/VCI
Level swapping and switching
ATM routing and signaling
(UNI, PNNI)
Tag Switching
Control Component
(OSPF, BGP, PIM, RSVP,TDP)
교체
ATM cell forwarding
기능은그대로유지
Netmanias Confidential
48
Carrying Tag
.Tag stack = 1 level tag : VCI field에tag를기록
.216= 64 K tags/port
.Tag stack = 2 level tag : VPI field에first tag
VCI field에second tag 기록
.212= 4096 tags/port
.Predefined VPI/VCI
Netmanias Confidential
49
VC-explosion
.CSR, IP switching은traffic-driven policy로active flow에대해서만label이할당
.ATM도Call duration 동안만VPI/VCI 할당
.Tag switching
.Topology-driven tag allocation
.allocates one tag per one route in FIB..VC-explosion!
.Solution: VC-merging
TSR
TSR
ATM-TSR
ATM-TSR
Netmanias Confidential
50
Problem in VC-merging
.“cell-interleave” problem
TSR A
TSR B
ATM-TSRX
IP pkt
5
cell
7
cell
7
IP pkt
8
cell
7
cell
7
5/7
8/7
cell
3
cell
3
cell
3
cell
3
TSR A
TSR B
TSR C
IP pkt
5
pkt
7
pkt
7
IP pkt
8
pkt
7
pkt
7
5/7
8/7
pkt
3
pkt
3
pkt
3
pkt
3
서로다른pkt들이서로섞여져서edge router(TSR)에서이셀들을제대로reassemble할수없다.
7/3
Q1) Why does this happen ?
A1) downstream tag allocation !
Q2) In case of TSRs ?
A2) pkt-by-pkt forwarding !
Netmanias Confidential
51
Solution 1: VC-merging
TSR A
TSR B
ATM-TSR
X
IP pkt
5
cell
7
cell
7
IP pkt
8
cell
7
cell
7
5/7
TIB
8/7
TIB
cell
3
cell
3
cell
3
cell
3
TIB
7/3
Mark of
End of pkt
Mark ofEnd of pkt
...
...
pkt from B
pkt from A
Netmanias Confidential
52
Solution 2: On-demand tag allocation(multiple tag allocation per route)
TSR A
TSR B
ATM-TSR
X
IP pkt
5
cell
7
cell
7
IP pkt
8
cell
4
cell
4
5/7
8/4
cell
3
cell
2
7/3
4/2
...
cell
3
cell
2
Netmanias Confidential
53
ARIS
.모든ingress ISR에서각Egress ISR로multipoint-to-point tree(VC)를형성하여egress ISR로가려는traffic은이tree를공유
.Tag switching처럼Topology-driven
.Tag switching에서는FIB내의모든entry에대해tag allocation
.ARIS에서는한Egress ISR에대해하나의label이allocation됨
.ISR(Integrated Switch Router)
.Egress ID(identifier)
.ISR information Base
.RIB(Routing Information Base)
.FIB(Forwarding Information Base)
.VCIB(VC Information Base)
Netmanias Confidential
54
ARIS vs Tag Switching
A
F
G
C
D
E
E
171.69.210
165.13
Edge TSR
Tag Switching(coarse granularity)
A
F
G
C
D
E
E
171.69.210
165.13
Egress ISR
ARIS
(coarsest granularity)
Label allocation
per route
Label allocation
per aggregate route
Netmanias Confidential
55
ARIS operation
destination
171.69.210
...
Next
hop
A
...
Out
label
-
...
In
label
-
FIB A
Egress
ID
A
...
ISR A
destination
171.69.210
...
Next
hop
D
...
Out
label
10
...
In
label
-
FIB F
Egress
ID
A
...
F
G
C
D
E
E
171.69.210
Establish
{17, E-ID=A}
destination
171.69.210
...
Nexthop
A
...
Out
label
17
...
In
label
10
FIB C
Egress
ID
A
...
destination
171.69.210
...
Nexthop
C
...
Out
label
10
...
In
label
14
FIB D
Egress
ID
A
...
destination
171.69.210
...
Next
hop
D
...
Out
label
10
...
In
label
14
FIB E
Egress
ID
A
...
Establish
{10, E-ID=A}
Establish
{10, E-ID=A}
Establish{14, E-ID=A}
Establish
{14, E-ID=A}
Netmanias Confidential
56
scalability
.VP-merging
.multiple label allocation
Netmanias Confidential
57
Comparison of label switching technologies
CSR
IP
Tag switching
ARIS
ATM, FR (CO)
ATM
ATM, FR, Ethernet
ATM, FR
Upstream
Downstream
Downstream
Downstream(Egress ISR)
FANP
IFMP
TDP
ARISp
Host-to-host
{src IP addr, dest IPaddr}
Host-to-host
{src IP addr, dest IPaddr}
Destination network
(address prefix)
Egress ISR
(Egress ID)
CSR
Datalink
Initiator
VC setupprotocol
Granularity
No
No
Yes (tag stack)
Yes (Tunnel)
LAN
LAN
WAN, ISP
WAN, ISP
Interconnect LISs
via bypass-pipe
scalability
scalability
Yes
No
No
No
Hierarchy of labels
Area
Objectives
ATM SVC
interworking
Data-driven
Data-driven
Control-driven
Control-driven
Data/Control
VC-merging(single VC/route)
multiple VCs per route
VP-merging(single VP/egress)
multiple VCs per route
scalability
Independent
Independent
Independent
(except explicit route)
Ordered (from Egress)
Binding creation
Netmanias Confidential
58
Conclusion
.Motivations for label switching
.Solutions
.NHRP/MPOA
.Cell Switch Router (Toshiba)
.IP Switching (Ipsilon)
.Tag Switching (Cisco)
.ARIS (IBM)
.Comparisons for label switching approaches
.MPLS(MultiProtocol Label Switching)