Title: FACT protocol
1Forwarding and Control Element Protocol (FACT)
by Ram Gopal, Alex Audu, Chaoping Wu, Hormuzd
Khosravi
ltdraft-gopal-forces-fact-04.txtgt
2FACT Protocol Updates
- Protocol draft updated to be compliant with
latest Requirements draft v-09 - Added Separate Control and Data Channels
- Updated Reliability section
- Updated Security section
- Updated CE Failover section
- Cleanup of text in PE State Maintenance section
- Other updates to clarify text, meet all
requirements
3Separate Control Data Channels
- PE Traffic Maintenance messages will be sent over
data channel - All other FACT messages will use the control
channel - Provide robustness against Denial of Service
(DoS) attacks - Data channel will use same reliable transport as
control channel - Priority bits in header can be used to prioritize
different traffic on data channel - Used with rate limiting mechanisms on FE to
protect against DoS attacks
CE
Control
Data
FE
4Reliability
- FACT uses reliable transport for control channel
to meet requirements - For IP networks, TCP/SCTP is recommended
- Simplifies protocol design
- Makes protocol easily deployable in single and
multi-hop scenarios - Allows use of TLS for security
5Security
- Security associations are established before FACT
association establishment - 3 modes of security
- No security option for closed box scenario
- FACT usage model for IPSec
- FACT usage model for TLS
- IPSec, TLS are configurable by network admin
- TLS is recommended
6CE Failover (Strong Consistency)
- FE sends protocol packets to both CEs
- No CE to CE protocol needed for synchronization
FE
Primary CE
Standby CE
Asso Estab (Caps, Topo)
1
Asso Estab (Caps, Topo)
2
Data Control
3
Data Control (HBeats only)
4
5
FAILURE
PRI-CE-DOWN
6
Data Control
7
7CE Failover (Weak Consistency)
- FE sends protocol packets only to primary CE
FE
Primary CE
Standby CE
Asso Estab (Caps, Topo)
1
Asso Estab (Caps, Topo)
2
Data Control
3
Control (HBeats only)
4
5
FAILURE
PRI-CE-DOWN
6
Data Control
7
8Questions
9Compared to Requirements v-09
- Meets All Requirements
- Configuration/Control/Capability discovery
- Security
- Scalability
- Multi-hop
- Message Priority
- Reliability
- Interconnect independence
- CE Failover
- Packet Redirection
- Topology Exchange
- Dynamic Association
- Command bundling
- Asynchronous event notification
- Query Statistics
- Protection against DoS attacks
10Back up
11Protocol Overview
- Protocol to support communication between CE and
FE in a distributed fault-tolerant architecture. - Master/Slave relationship between CE-FE.
- Logical separation by means of providing base
protocol and service functions. - Service specific functions can be encoded using
TLV, OID or XML. - Transport/Interconnect independence
- Supports latest ForCES Requirements draft.
12FACT NE model
13Message Structure
14Message Class and Messages (1)
- Association Establishment
- To establish logical connection between CE and FE
- Join, Leave message etc
- Capabilities Exchange Configuration
- To exchange FEs capabilities and to configure
FEs functions. - Capability request, Configure FE Blocks, Topology
request etc - State Maintenance
- To track element states and report state changes.
- Heart-beat, PE UP, PE Down, PE Active and
Inactive etc
15Message Class and Messages (2)
- Traffic Maintenance
- To control data and control traffic between CE
and FE. - Packet Redirection, Control packet forwarding
etc. - Event Notification
- Asynchronous status change notification by FE to
CE. - Event Register, Deregister, Notification
message,etc.. - Vendor Specific
- To extend the protocol beyond its current
capabilities.
16Association Phase
FE
CE
Join Request
1
Validation of FE endpoint
Join Response
2
Capability Request
3
FE Block addressing, handles and relationship
Capability Response
4
Topology Request
5
Topology Response
6
PE UP
7
PE UP ack
8
State Maintenance (Element State)
PE (FE) ACTIVE
9
PE ACTIVE ack
10
Data Channel Estab
11
17Normal Operation
FE
CE
Heart beat request
1
Heart beat response
2
Query Request
3
Query Response
4
Port Event Notification
5
Configure Logical Comps Req
6
Configure Logical Comps Ack
7
Control packet redirect
8
18Element State
ACTIVE
Alternate CE/FE active
CE/FE active
CE/FE inactive
INACTIVE
CE/FE down CE-FE communication failure
CE/FE down CE-FE communication failure
CE/FE UP
DOWN