Upload
miya-kohno
View
255
Download
0
Embed Size (px)
Citation preview
2 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Programming Style @ Networking
• Not Waterfall but Agile -‐-‐-‐-‐ Feedback Loop and Con1nuous Improvement
• Not Impera1ve but Declara+ve -‐-‐-‐-‐ not to command “How” but to agree on “What”
• Not Procedure but Model driven -‐-‐-‐-‐ “What to be” is shown by Model
Network is a large-‐scale parallel distributed system with high uncertainty
Wikipedia: Barabasi-‐Albert Model
3 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Control
Infrastructure, Devices • Physical • Virtual
virtual physical
Service Applica1on
Power of “Declara1veness” and “Model-‐drivenness” Workflow, Script – to describe “How”
• Script • Workflow
• CLI • Openflow protocol
Hard to -‐ deal with change
Hard to -‐ par1ally update -‐ undo
ß Procedure
ß Command
4 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Control
Infrastructure, Devices • Physical • Virtual
virtual physical
Service Applica1on
Model – to agree on “What”
• Service Model
• Device Models
Ability to par1ally update, undo, with consistency
Transac/on Engine
Agile feedback loop
Power of “Declara1veness” and “Model-‐drivenness”
• Fit for parallel distributed system • Robustness for uncertain1es • Reusability, Maintainability, Scalability
ß Inten/on
ß Promise
5 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
But modeling is hard ?! (complains voiced)
• It takes extra 1me and effort to model
• Need to do the done-‐deals over again -‐ work rou1ne is already established -‐ and there are exis1ng workflows/scripts for it
• Not human friendly -‐ Human think sequen1ally
• Arbitrary models can be wide-‐spread
• How to prove the model is adequate?
6 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
True, model is not versa1le. However -‐ • The effort for modeling itself is good -‐ Good opportunity to dis1nguish “Aim” and “Mean”
• It’s good to detect good models and bad models -‐ Consistency speaks for itself
• Merits are not just to work -‐ Model as a common language, Re-‐usability, Maintainability
• Let’s standardize when needed! (Benoit will help us J)
-‐ It’s good to standardize basic parts -‐ Knowledge will be aggregated and evolved by standardiza1on and open-‐source