SlideShare a Scribd company logo
1 of 14
Download to read offline
Kamil Jeřábek
& Vladimír Veselý
2019
One of the Ways How to
Make RIB Distributed
RAFT
▪ What is RAFT?
▪ Consensus algorithm
▪ Solves fundamental problem in fault-tolerant distributed
system
▪ Multiple servers agree on value
One of the Ways How to Make RIB Distributed
RAFT
▪ Why we chose RAFT?
▪ Understable version of Paxos
▪ Easy to implement
▪ The same fault-tolerance and performance guarantees
▪ Suitable for RINA environment and RPC
communication
▪ Already used in databases like InfluxDB
One of the Ways How to Make RIB Distributed
RAFT RPCs
▪ RequestVotes
▪ Send by Candidates during Leader election to gather
votes
▪ AppendEntries
▪ Sent by Leader for log replication
▪ Also sent by Leader as an HeartBeat to reset timers
One of the Ways How to Make RIB Distributed
Leader Election
▪ Based on the timer expiration
▪ Presumption that all nodes are equal
One of the Ways How to Make RIB Distributed
Follower
Timeout:
300ms
Follower
Timeout:
200ms
Follower
Timeout:
150ms
Leader Election
▪ Based on the timer expiration
▪ Presumption that every nodes are equal
One of the Ways How to Make RIB Distributed
Follower
Timeout:
300ms
Follower
Timeout:
200ms
Candidate
Timeout:
150ms
Vote for itself
Request vote Request vote
Leader Election
▪ Based on the timer expiration
▪ Presumption that every nodes are equal
One of the Ways How to Make RIB Distributed
Follower
Timeout:
300ms
Follower
Timeout:
200ms
Candidate
Timeout:
150ms
Grant votes Grant votes
Majority votes
Leader Election
▪ Based on the timer expiration
▪ Presumption that every nodes are equal
One of the Ways How to Make RIB Distributed
Follower
Timeout:
300ms
Follower
Timeout:
200ms
Leader
Timeout:
150ms
Log Replication
▪ Each client request is stored in the Leader’s log
▪ Leader replicate new log entries to the Followers
▪ Command
▪ Sent by the client to be executed
▪ Index
▪ Position identifier in the log
▪ Term Number
▪ Identification of the time of the command
One of the Ways How to Make RIB Distributed
Client Request
One of the Ways How to Make RIB Distributed
Follower
Timeout:
300ms
Follower
Timeout:
200ms
Leader
Timeout:
150ms
Client
Request
Response
RAFT RINA Approach
▪ Not possible to use current RAFT implementation
▪ RINA RPC commands as RAFT client commands
▪ RAFT Leader shared during Enrollment phase
▪ RIB
▪ RPC commands stored in RAFT log
One of the Ways How to Make RIB Distributed
RAFT module
▪ Current state of the Application Process
▪ RAFT provided as compound module within RIBDaemon
▪ Management of objects in RIB
▪ Replication and updates primarily using Management AE
One of the Ways How to Make RIB Distributed
Demonstration Topology
▪ Topology of 5 nodes
▪ 4 nodes RAFT synced
▪ 1 client node
One of the Ways How to Make RIB Distributed
Questions?
Questions?
One of the Ways How to Make RIB Distributed

More Related Content

What's hot

The hague rina-workshop-mobility-eduard
The hague rina-workshop-mobility-eduardThe hague rina-workshop-mobility-eduard
The hague rina-workshop-mobility-eduardICT PRISTINE
 
The hague rina-workshop-congestioncontrol-peyman
The hague rina-workshop-congestioncontrol-peymanThe hague rina-workshop-congestioncontrol-peyman
The hague rina-workshop-congestioncontrol-peymanICT PRISTINE
 
Rina2020 taps rina-ocarina (1)
Rina2020 taps rina-ocarina (1)Rina2020 taps rina-ocarina (1)
Rina2020 taps rina-ocarina (1)Eduard Grasa
 
Rlite software-architecture (1)
Rlite software-architecture (1)Rlite software-architecture (1)
Rlite software-architecture (1)ARCFIRE ICT
 
The hague rina-workshop-nfv-diego
The hague rina-workshop-nfv-diegoThe hague rina-workshop-nfv-diego
The hague rina-workshop-nfv-diegoICT PRISTINE
 
The hague rina-workshop-interop-deployment_vincenzo
The hague rina-workshop-interop-deployment_vincenzoThe hague rina-workshop-interop-deployment_vincenzo
The hague rina-workshop-interop-deployment_vincenzoICT PRISTINE
 
Th hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neilTh hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neilICT PRISTINE
 
RINA research results - NGP forum - SDN World Congress 2017
RINA research results - NGP forum - SDN World Congress 2017RINA research results - NGP forum - SDN World Congress 2017
RINA research results - NGP forum - SDN World Congress 2017ARCFIRE ICT
 
Rina sdn-2016 mobility
Rina sdn-2016 mobilityRina sdn-2016 mobility
Rina sdn-2016 mobilityARCFIRE ICT
 
RINA as a Clean-Slate Approach to Software Networks
RINA as a Clean-Slate Approach to Software Networks RINA as a Clean-Slate Approach to Software Networks
RINA as a Clean-Slate Approach to Software Networks ICT PRISTINE
 
2. RINA overview - TF workshop
2. RINA overview - TF workshop2. RINA overview - TF workshop
2. RINA overview - TF workshopARCFIRE ICT
 
4. Clearwater on rina
4. Clearwater on rina4. Clearwater on rina
4. Clearwater on rinaARCFIRE ICT
 
PRISTINE @ FIA Athens 2014
PRISTINE @ FIA Athens 2014PRISTINE @ FIA Athens 2014
PRISTINE @ FIA Athens 2014ICT PRISTINE
 
IRATI: an open source RINA implementation for Linux/OS
IRATI: an open source RINA implementation for Linux/OSIRATI: an open source RINA implementation for Linux/OS
IRATI: an open source RINA implementation for Linux/OSICT PRISTINE
 
RouteFlow & IXPs
RouteFlow & IXPsRouteFlow & IXPs
RouteFlow & IXPsnvirters
 
EU-Taiwan Workshop on 5G Research, PRISTINE introduction
EU-Taiwan Workshop on 5G Research, PRISTINE introductionEU-Taiwan Workshop on 5G Research, PRISTINE introduction
EU-Taiwan Workshop on 5G Research, PRISTINE introductionICT PRISTINE
 
Pristine rina-security-icc-2016
Pristine rina-security-icc-2016Pristine rina-security-icc-2016
Pristine rina-security-icc-2016ICT PRISTINE
 
Ch 04 --- sdn deployment models
Ch 04 --- sdn deployment modelsCh 04 --- sdn deployment models
Ch 04 --- sdn deployment modelsYoram Orzach
 
3. RINA use cases, results, benefits
3. RINA use cases, results, benefits3. RINA use cases, results, benefits
3. RINA use cases, results, benefitsARCFIRE ICT
 

What's hot (20)

The hague rina-workshop-mobility-eduard
The hague rina-workshop-mobility-eduardThe hague rina-workshop-mobility-eduard
The hague rina-workshop-mobility-eduard
 
The hague rina-workshop-congestioncontrol-peyman
The hague rina-workshop-congestioncontrol-peymanThe hague rina-workshop-congestioncontrol-peyman
The hague rina-workshop-congestioncontrol-peyman
 
Rina2020 taps rina-ocarina (1)
Rina2020 taps rina-ocarina (1)Rina2020 taps rina-ocarina (1)
Rina2020 taps rina-ocarina (1)
 
Rlite software-architecture (1)
Rlite software-architecture (1)Rlite software-architecture (1)
Rlite software-architecture (1)
 
The hague rina-workshop-nfv-diego
The hague rina-workshop-nfv-diegoThe hague rina-workshop-nfv-diego
The hague rina-workshop-nfv-diego
 
The hague rina-workshop-interop-deployment_vincenzo
The hague rina-workshop-interop-deployment_vincenzoThe hague rina-workshop-interop-deployment_vincenzo
The hague rina-workshop-interop-deployment_vincenzo
 
Th hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neilTh hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neil
 
RINA research results - NGP forum - SDN World Congress 2017
RINA research results - NGP forum - SDN World Congress 2017RINA research results - NGP forum - SDN World Congress 2017
RINA research results - NGP forum - SDN World Congress 2017
 
Rina sdn-2016 mobility
Rina sdn-2016 mobilityRina sdn-2016 mobility
Rina sdn-2016 mobility
 
RINA as a Clean-Slate Approach to Software Networks
RINA as a Clean-Slate Approach to Software Networks RINA as a Clean-Slate Approach to Software Networks
RINA as a Clean-Slate Approach to Software Networks
 
2. RINA overview - TF workshop
2. RINA overview - TF workshop2. RINA overview - TF workshop
2. RINA overview - TF workshop
 
4. Clearwater on rina
4. Clearwater on rina4. Clearwater on rina
4. Clearwater on rina
 
Intro RINA
Intro RINAIntro RINA
Intro RINA
 
PRISTINE @ FIA Athens 2014
PRISTINE @ FIA Athens 2014PRISTINE @ FIA Athens 2014
PRISTINE @ FIA Athens 2014
 
IRATI: an open source RINA implementation for Linux/OS
IRATI: an open source RINA implementation for Linux/OSIRATI: an open source RINA implementation for Linux/OS
IRATI: an open source RINA implementation for Linux/OS
 
RouteFlow & IXPs
RouteFlow & IXPsRouteFlow & IXPs
RouteFlow & IXPs
 
EU-Taiwan Workshop on 5G Research, PRISTINE introduction
EU-Taiwan Workshop on 5G Research, PRISTINE introductionEU-Taiwan Workshop on 5G Research, PRISTINE introduction
EU-Taiwan Workshop on 5G Research, PRISTINE introduction
 
Pristine rina-security-icc-2016
Pristine rina-security-icc-2016Pristine rina-security-icc-2016
Pristine rina-security-icc-2016
 
Ch 04 --- sdn deployment models
Ch 04 --- sdn deployment modelsCh 04 --- sdn deployment models
Ch 04 --- sdn deployment models
 
3. RINA use cases, results, benefits
3. RINA use cases, results, benefits3. RINA use cases, results, benefits
3. RINA use cases, results, benefits
 

Similar to Make RIB Distributed with RAFT Consensus

Data High Availability With TIDB
Data High Availability With TIDBData High Availability With TIDB
Data High Availability With TIDBMydbops
 
APNIC Registry Improvements Update
APNIC Registry Improvements UpdateAPNIC Registry Improvements Update
APNIC Registry Improvements UpdateAPNIC
 
Registry improvements update
Registry improvements updateRegistry improvements update
Registry improvements updateAPNIC
 
Integrating Unified Communications and Collaboration on an Aruba Access Network
Integrating Unified Communications and Collaboration on an Aruba Access NetworkIntegrating Unified Communications and Collaboration on an Aruba Access Network
Integrating Unified Communications and Collaboration on an Aruba Access NetworkAruba, a Hewlett Packard Enterprise company
 
Third Party DNS Operator to Registries/Registrars Protocol
Third Party DNS Operator to Registries/Registrars ProtocolThird Party DNS Operator to Registries/Registrars Protocol
Third Party DNS Operator to Registries/Registrars ProtocolAPNIC
 
Building a Streaming Microservice Architecture: with Apache Spark Structured ...
Building a Streaming Microservice Architecture: with Apache Spark Structured ...Building a Streaming Microservice Architecture: with Apache Spark Structured ...
Building a Streaming Microservice Architecture: with Apache Spark Structured ...Databricks
 
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...Redis Labs
 
Simply Business - Near Real Time Event Processing
Simply Business - Near Real Time Event ProcessingSimply Business - Near Real Time Event Processing
Simply Business - Near Real Time Event Processingidan_by
 
Row #9: An architecture overview of APNIC's RDAP deployment to the cloud
Row #9: An architecture overview of APNIC's RDAP deployment to the cloudRow #9: An architecture overview of APNIC's RDAP deployment to the cloud
Row #9: An architecture overview of APNIC's RDAP deployment to the cloudAPNIC
 
VoIP Monitoring and Troubleshooting
VoIP Monitoring and TroubleshootingVoIP Monitoring and Troubleshooting
VoIP Monitoring and TroubleshootingThousandEyes
 
FutureComm 2010: Scaling Advanced VoIP Telecom Services
FutureComm 2010: Scaling Advanced VoIP Telecom ServicesFutureComm 2010: Scaling Advanced VoIP Telecom Services
FutureComm 2010: Scaling Advanced VoIP Telecom ServicesRADVISION Ltd.
 
DrayTek Seminar in Greece, Session 1
DrayTek Seminar in Greece, Session 1DrayTek Seminar in Greece, Session 1
DrayTek Seminar in Greece, Session 1DrayTek Corp.
 
Model based transaction-aware cloud resources management case study and met...
Model based transaction-aware cloud resources management   case study and met...Model based transaction-aware cloud resources management   case study and met...
Model based transaction-aware cloud resources management case study and met...Leonid Grinshpan, Ph.D.
 
PyWBEM Rapid Overview
PyWBEM Rapid Overview PyWBEM Rapid Overview
PyWBEM Rapid Overview SNIATutorials
 
5 application serversforproject
5 application serversforproject5 application serversforproject
5 application serversforprojectashish61_scs
 
RPKI RTAs and RDAP Mirroring
RPKI RTAs and RDAP MirroringRPKI RTAs and RDAP Mirroring
RPKI RTAs and RDAP MirroringAPNIC
 
Adding Real-time Features to PHP Applications
Adding Real-time Features to PHP ApplicationsAdding Real-time Features to PHP Applications
Adding Real-time Features to PHP ApplicationsRonny López
 

Similar to Make RIB Distributed with RAFT Consensus (20)

Data High Availability With TIDB
Data High Availability With TIDBData High Availability With TIDB
Data High Availability With TIDB
 
APNIC Registry Improvements Update
APNIC Registry Improvements UpdateAPNIC Registry Improvements Update
APNIC Registry Improvements Update
 
Registry improvements update
Registry improvements updateRegistry improvements update
Registry improvements update
 
Integrating Unified Communications and Collaboration on an Aruba Access Network
Integrating Unified Communications and Collaboration on an Aruba Access NetworkIntegrating Unified Communications and Collaboration on an Aruba Access Network
Integrating Unified Communications and Collaboration on an Aruba Access Network
 
Third Party DNS Operator to Registries/Registrars Protocol
Third Party DNS Operator to Registries/Registrars ProtocolThird Party DNS Operator to Registries/Registrars Protocol
Third Party DNS Operator to Registries/Registrars Protocol
 
Building a Streaming Microservice Architecture: with Apache Spark Structured ...
Building a Streaming Microservice Architecture: with Apache Spark Structured ...Building a Streaming Microservice Architecture: with Apache Spark Structured ...
Building a Streaming Microservice Architecture: with Apache Spark Structured ...
 
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...
 
Simply Business - Near Real Time Event Processing
Simply Business - Near Real Time Event ProcessingSimply Business - Near Real Time Event Processing
Simply Business - Near Real Time Event Processing
 
Row #9: An architecture overview of APNIC's RDAP deployment to the cloud
Row #9: An architecture overview of APNIC's RDAP deployment to the cloudRow #9: An architecture overview of APNIC's RDAP deployment to the cloud
Row #9: An architecture overview of APNIC's RDAP deployment to the cloud
 
Tale of a New Bangladeshi NIX
Tale of a New Bangladeshi NIXTale of a New Bangladeshi NIX
Tale of a New Bangladeshi NIX
 
10 routing-bgp
10 routing-bgp10 routing-bgp
10 routing-bgp
 
VoIP Monitoring and Troubleshooting
VoIP Monitoring and TroubleshootingVoIP Monitoring and Troubleshooting
VoIP Monitoring and Troubleshooting
 
Remote procedure call
Remote procedure callRemote procedure call
Remote procedure call
 
FutureComm 2010: Scaling Advanced VoIP Telecom Services
FutureComm 2010: Scaling Advanced VoIP Telecom ServicesFutureComm 2010: Scaling Advanced VoIP Telecom Services
FutureComm 2010: Scaling Advanced VoIP Telecom Services
 
DrayTek Seminar in Greece, Session 1
DrayTek Seminar in Greece, Session 1DrayTek Seminar in Greece, Session 1
DrayTek Seminar in Greece, Session 1
 
Model based transaction-aware cloud resources management case study and met...
Model based transaction-aware cloud resources management   case study and met...Model based transaction-aware cloud resources management   case study and met...
Model based transaction-aware cloud resources management case study and met...
 
PyWBEM Rapid Overview
PyWBEM Rapid Overview PyWBEM Rapid Overview
PyWBEM Rapid Overview
 
5 application serversforproject
5 application serversforproject5 application serversforproject
5 application serversforproject
 
RPKI RTAs and RDAP Mirroring
RPKI RTAs and RDAP MirroringRPKI RTAs and RDAP Mirroring
RPKI RTAs and RDAP Mirroring
 
Adding Real-time Features to PHP Applications
Adding Real-time Features to PHP ApplicationsAdding Real-time Features to PHP Applications
Adding Real-time Features to PHP Applications
 

More from ARCFIRE ICT

Large-scale Experimentation with Network Abstraction for Network Configuratio...
Large-scale Experimentation with Network Abstraction for Network Configuratio...Large-scale Experimentation with Network Abstraction for Network Configuratio...
Large-scale Experimentation with Network Abstraction for Network Configuratio...ARCFIRE ICT
 
Design Considerations for RINA Congestion Control over WiFi Links
Design Considerations for RINA Congestion Control over WiFi LinksDesign Considerations for RINA Congestion Control over WiFi Links
Design Considerations for RINA Congestion Control over WiFi LinksARCFIRE ICT
 
Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...
Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...
Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...ARCFIRE ICT
 
Pristine rina-tnc-2016
Pristine rina-tnc-2016Pristine rina-tnc-2016
Pristine rina-tnc-2016ARCFIRE ICT
 
Distributed mobility management and application discovery
Distributed mobility management and application discoveryDistributed mobility management and application discovery
Distributed mobility management and application discoveryARCFIRE ICT
 
Mobility mangement rina iwcnc
Mobility mangement rina   iwcncMobility mangement rina   iwcnc
Mobility mangement rina iwcncARCFIRE ICT
 
6 security130123
6 security1301236 security130123
6 security130123ARCFIRE ICT
 
5 mngmt idd130115
5 mngmt idd1301155 mngmt idd130115
5 mngmt idd130115ARCFIRE ICT
 
5 mngmt idd130115jd
5 mngmt idd130115jd5 mngmt idd130115jd
5 mngmt idd130115jdARCFIRE ICT
 
4 addressing theory130115
4 addressing theory1301154 addressing theory130115
4 addressing theory130115ARCFIRE ICT
 
3 addressingthe problem130123
3 addressingthe problem1301233 addressingthe problem130123
3 addressingthe problem130123ARCFIRE ICT
 
2 introto rina-e130123
2 introto rina-e1301232 introto rina-e130123
2 introto rina-e130123ARCFIRE ICT
 
1 lost layer130123
1 lost layer1301231 lost layer130123
1 lost layer130123ARCFIRE ICT
 
Rumba CNERT presentation
Rumba CNERT presentationRumba CNERT presentation
Rumba CNERT presentationARCFIRE ICT
 
5. Rumba presentation
5. Rumba presentation5. Rumba presentation
5. Rumba presentationARCFIRE ICT
 
1. RINA motivation - TF Workshop
1. RINA motivation - TF Workshop1. RINA motivation - TF Workshop
1. RINA motivation - TF WorkshopARCFIRE ICT
 
Rina renumbering, EUCNC 2017
Rina renumbering, EUCNC 2017Rina renumbering, EUCNC 2017
Rina renumbering, EUCNC 2017ARCFIRE ICT
 
Rumba presentation at FEC2
Rumba presentation at FEC2Rumba presentation at FEC2
Rumba presentation at FEC2ARCFIRE ICT
 
Generic network architecture discussion
Generic network architecture discussionGeneric network architecture discussion
Generic network architecture discussionARCFIRE ICT
 

More from ARCFIRE ICT (20)

Large-scale Experimentation with Network Abstraction for Network Configuratio...
Large-scale Experimentation with Network Abstraction for Network Configuratio...Large-scale Experimentation with Network Abstraction for Network Configuratio...
Large-scale Experimentation with Network Abstraction for Network Configuratio...
 
Design Considerations for RINA Congestion Control over WiFi Links
Design Considerations for RINA Congestion Control over WiFi LinksDesign Considerations for RINA Congestion Control over WiFi Links
Design Considerations for RINA Congestion Control over WiFi Links
 
Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...
Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...
Experimenting with Real Application-specific QoS Guarantees in a Large-scale ...
 
Exp3mq
Exp3mqExp3mq
Exp3mq
 
Pristine rina-tnc-2016
Pristine rina-tnc-2016Pristine rina-tnc-2016
Pristine rina-tnc-2016
 
Distributed mobility management and application discovery
Distributed mobility management and application discoveryDistributed mobility management and application discovery
Distributed mobility management and application discovery
 
Mobility mangement rina iwcnc
Mobility mangement rina   iwcncMobility mangement rina   iwcnc
Mobility mangement rina iwcnc
 
6 security130123
6 security1301236 security130123
6 security130123
 
5 mngmt idd130115
5 mngmt idd1301155 mngmt idd130115
5 mngmt idd130115
 
5 mngmt idd130115jd
5 mngmt idd130115jd5 mngmt idd130115jd
5 mngmt idd130115jd
 
4 addressing theory130115
4 addressing theory1301154 addressing theory130115
4 addressing theory130115
 
3 addressingthe problem130123
3 addressingthe problem1301233 addressingthe problem130123
3 addressingthe problem130123
 
2 introto rina-e130123
2 introto rina-e1301232 introto rina-e130123
2 introto rina-e130123
 
1 lost layer130123
1 lost layer1301231 lost layer130123
1 lost layer130123
 
Rumba CNERT presentation
Rumba CNERT presentationRumba CNERT presentation
Rumba CNERT presentation
 
5. Rumba presentation
5. Rumba presentation5. Rumba presentation
5. Rumba presentation
 
1. RINA motivation - TF Workshop
1. RINA motivation - TF Workshop1. RINA motivation - TF Workshop
1. RINA motivation - TF Workshop
 
Rina renumbering, EUCNC 2017
Rina renumbering, EUCNC 2017Rina renumbering, EUCNC 2017
Rina renumbering, EUCNC 2017
 
Rumba presentation at FEC2
Rumba presentation at FEC2Rumba presentation at FEC2
Rumba presentation at FEC2
 
Generic network architecture discussion
Generic network architecture discussionGeneric network architecture discussion
Generic network architecture discussion
 

Recently uploaded

Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书rnrncn29
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa494f574xmv
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一z xss
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationMarko4394
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predieusebiomeyer
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationLinaWolf1
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Sonam Pathan
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书zdzoqco
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书rnrncn29
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxeditsforyah
 

Recently uploaded (17)

Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentation
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predi
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 Documentation
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptx
 

Make RIB Distributed with RAFT Consensus

  • 1. Kamil Jeřábek & Vladimír Veselý 2019 One of the Ways How to Make RIB Distributed
  • 2. RAFT ▪ What is RAFT? ▪ Consensus algorithm ▪ Solves fundamental problem in fault-tolerant distributed system ▪ Multiple servers agree on value One of the Ways How to Make RIB Distributed
  • 3. RAFT ▪ Why we chose RAFT? ▪ Understable version of Paxos ▪ Easy to implement ▪ The same fault-tolerance and performance guarantees ▪ Suitable for RINA environment and RPC communication ▪ Already used in databases like InfluxDB One of the Ways How to Make RIB Distributed
  • 4. RAFT RPCs ▪ RequestVotes ▪ Send by Candidates during Leader election to gather votes ▪ AppendEntries ▪ Sent by Leader for log replication ▪ Also sent by Leader as an HeartBeat to reset timers One of the Ways How to Make RIB Distributed
  • 5. Leader Election ▪ Based on the timer expiration ▪ Presumption that all nodes are equal One of the Ways How to Make RIB Distributed Follower Timeout: 300ms Follower Timeout: 200ms Follower Timeout: 150ms
  • 6. Leader Election ▪ Based on the timer expiration ▪ Presumption that every nodes are equal One of the Ways How to Make RIB Distributed Follower Timeout: 300ms Follower Timeout: 200ms Candidate Timeout: 150ms Vote for itself Request vote Request vote
  • 7. Leader Election ▪ Based on the timer expiration ▪ Presumption that every nodes are equal One of the Ways How to Make RIB Distributed Follower Timeout: 300ms Follower Timeout: 200ms Candidate Timeout: 150ms Grant votes Grant votes Majority votes
  • 8. Leader Election ▪ Based on the timer expiration ▪ Presumption that every nodes are equal One of the Ways How to Make RIB Distributed Follower Timeout: 300ms Follower Timeout: 200ms Leader Timeout: 150ms
  • 9. Log Replication ▪ Each client request is stored in the Leader’s log ▪ Leader replicate new log entries to the Followers ▪ Command ▪ Sent by the client to be executed ▪ Index ▪ Position identifier in the log ▪ Term Number ▪ Identification of the time of the command One of the Ways How to Make RIB Distributed
  • 10. Client Request One of the Ways How to Make RIB Distributed Follower Timeout: 300ms Follower Timeout: 200ms Leader Timeout: 150ms Client Request Response
  • 11. RAFT RINA Approach ▪ Not possible to use current RAFT implementation ▪ RINA RPC commands as RAFT client commands ▪ RAFT Leader shared during Enrollment phase ▪ RIB ▪ RPC commands stored in RAFT log One of the Ways How to Make RIB Distributed
  • 12. RAFT module ▪ Current state of the Application Process ▪ RAFT provided as compound module within RIBDaemon ▪ Management of objects in RIB ▪ Replication and updates primarily using Management AE One of the Ways How to Make RIB Distributed
  • 13. Demonstration Topology ▪ Topology of 5 nodes ▪ 4 nodes RAFT synced ▪ 1 client node One of the Ways How to Make RIB Distributed
  • 14. Questions? Questions? One of the Ways How to Make RIB Distributed