OSPF Offloading: The HELLO Protocol

Download Report

Transcript OSPF Offloading: The HELLO Protocol

OSPF Offloading: The
HELLO Protocol
A First Step Toward Distributed
Heterogeneous Offloading
Speaker: Mary Bond
Introduction: The Challenge
Control Plane with Control Processor
Backplane
Blade 1
Exam ple C ontrol Flow



Blade 2
Blade 3
Exam ple D ata F low
Traditional IP router architecture incorporates single
centralized control processor
Scalability issues are real
Large amount of I/O bandwidth required across
backplane
The Future of
Network Forwarding Devices
Line Card
LC Control
Processor
LC Control
Processor
Offload
Processing
FP Processing
FP Processing
Line Card
Control Blade
Fabric or
Backplane
Global Exception Handling
Forwarding Path
LC Control
Processor
Processing Card
Control Processor
FP Processing
LC Control
Processor
Line Card
The Protocol Offload Solution:
Long Term Goal

Distribute functionality by protocol offloading
to forwarding plane blades
 Design a generalized framework for
offloading protocols
 The Approach:
– Examine offloading possibilities of many routing
protocols
– Use collective results to design offloading
framework
OSPF: A Brief Overview
Router 1




Link state vector
algorithm
Distribute data by
flooding
Amount of data passed
reduced via area
grouping
External data
advertised, separate
Router 3
from link state data
Example Area
Network 1
Designated
Router
Router 2
Network 2
Router 4
OSPF: A Brief Overview
Router 1





HELLO packets used to
acquire neighbors
HELLO protocol elects
designated router
Link state ads (LSAs)
reflect adjacencies
LSAs flooded reliably
Link state database is
collection of LSAs from
every router in area
Example Area
Network 1
Designated
Router
Router 2
Network 2
Router 3
Router 4
OSPF Offloading:
The HELLO Protocol

Two primary OSPF data
structures:
– Interfaces
– Neighbors

Interface algorithms:
– HELLO
– Designated Router
Election

Neighbor algorithms:
– Database Distribution
– Link State Updates
– Routing Table Calculation
Interface and Neighbor
Finite State Machines
DR
InterfaceUp and
P2P or VL
Down
Point-to-Point
NeighborChange
InterfaceUp
Waiting
BackupSeen
WaitTimer
?
Backup
NeighborChange
UnloopInd
Loopback
DROther
Attempt
Full
Start
2-Way
Hello
Received
Exchange
Down
1-Way
Received
Hello
Received
Init
ExStart
2-Way
Received
Negotiation
Done
Empty
Exchange LSR
Done
NonEmpty
LSR
Loading
Communication Between
GOSPF and OOSPF
Synchronizing Data Structure Fields
 Starting/Stopping HELLO Timers
 Instigating FSM Transitions
 Triggering Link State Advertisements
 Updating Designated Router (or Backup)
 Instigating sending of HELLO Packets

GOSPF and OOSPF Proxies

GOSPF and OOSPF communicate via
proxies
 Remote procedure calls are transparent
 TCP connection
General
OSPF
Proxy
O-OSPF
IA32
TCP/IP Socket
Communication
StrongARM
Offloaded
OSPF
Proxy
G-OSPF
The RPC Class
Provides general framework for
communication between proxies
 Child classes inherit from RPC class,
one for each remote procedure call
 Child classes correspond to specific
functions (called remotely) between
GOSPF and OOSPF

Offloaded OSPF, IXP Architecture
IA32 Architecture
G-OSPF
Control
Plane
TCP
Socket
Forwarding
Plane
O-OSPF
FP Module
Remaining
OSPF
Packets
StrongARM
TCP/IP
Stack
HELLO
Packets
Packet
Handler
Stack
ACE
Micro
Engrines
Ingress
L3
Forwarder
Egress
Conclusions
Future control plane processing
presents a bottleneck issue
 Protocol offloading is a possible solution
 This project was a first step toward
studying the offloading of control plane
routing protocols.

Thank you!