TIENE EN SU CESTA DE LA COMPRA
en total 0,00 €
Design your networks to successfully manage their growing complexity
Network professionals have often been told that today's modern control planes would simplify their networks. The opposite has happened: Technologies like SDN and NFV, although immensely valuable, are exacerbating complexity instead of solving it. Navigating Network Complexity is the first comprehensive guide to managing this complexity in both deployment and day-to-day operations.
Russ White and Jeff Tantsura introduce modern complexity theory from the standpoint of the working network engineer, helping you apply it to the practical problems you face every day. Avoiding complex mathematical models, they show how to characterize network complexity, so you can understand it and control it.
The authors examine specific techniques and technologies associated with network control planes, including SDNs, fast reroute, segment routing, service chaining, and cloud computing. They reveal how each of these affects network design and complexity and help you anticipate causes of failure in highly complex systems.
Next, they turn to modern control planes, examining the fundamental operating principles of SDNs, such as OpenFlow and I2RS, network and other service function virtualization, content distribution networks, Layer 2 fabrics, and service chaining solutions. You'll learn how each of these might both resolve and increase complexity in network design and operations and what you can do about it.
Coverage includes:
Defining complexity, understanding its components, and measuring it
Mastering a straightforward "state, speed, and surfaceö model for analyzing complexity
Controlling complexity in design, deployment, operations, protocols, and programmable networks
Understanding how complex network systems begin to fail and how to prevent failure
Recognizing complexity tradeoffs in service virtualization and service chaining
Managing new challenges of complexity in virtualized and cloud environments
Learning why constructs such as hierarchical design, aggregation, and protocol layering work and when they work best
Choosing the right models to contain complexity as your network changes
From start to finish, Navigating Network Complexity helps you assess the true impact of new network technologies, so they can capture more value with fewer problems.
Introduction . . . . . . . . . . . . xvii
How This Book Is Organized . . . . . . . xvii
Chapter 1: Defining Complexity . . . . . . . . . 1
What Is Complexity? . . . . . . . . . 3
Anything I Don't Understand . . . . . . 3
Anything with a Lot of Parts . . . . . . . 5
Anything for Which There Is More State Than Required to
Achieve a Goal . . . . . . . . . 9
Unintended Consequences . . . . . . 11
Why So Much Complexity? . . . . . . . . 13
Future Extensions versus New Protocols . . . . 16
Unexpected Errors . . . . . . . . 17
Why Not Build Infinitely Complex Systems? . . . . . 18
Quick, Cheap, and High Quality: Choose Two . . . 20
Consistency, Availability, and Partition Tolerance:
Choose Two . . . . . . . . . 21
Journey into the Center of Complexity . . . . . . 22
Chapter 2: Components of Complexity . . . . . . . 25
Network Convergence . . . . . . . . . 26
Path Vector: A BGP Example . . . . . . 26
Distance Vector: An EIGRP Example . . . . . 28
Link State: OSPF and IS-IS Convergence . . . . 30
State . . . . . . . . . . . . 31
Amount of Information . . . . . . . 32
An Example of State Failure in the Real World . . . 33
Final Thoughts on State . . . . . . . 34
Speed . . . . . . . . . . . . 35
The Network That Never Converges . . . . . 35
The Flapping Link . . . . . . . . 37
Final Thoughts on Speed . . . . . . . 38
Surface . . . . . . . . . . . . 38
The Hourglass Model . . . . . . . . . 41
Optimization . . . . . . . . . . . 44
A Final Thought . . . . . . . . . . 46
Chapter 3: Measuring Network Complexity . . . . . . 47
Some Measures of Network Complexity . . . . . 49
Network Complexity Index . . . . . . 49
Modeling Design Complexity . . . . . . 51
NetComplex . . . . . . . . . 53
Organized Complexity . . . . . . . . . 55
Is This a Waste of Time? . . . . . . . . . 58
A Final Thought . . . . . . . . . . 58
Chapter 4: Operational Complexity . . . . . . . . 61
Exploring the Problem Space . . . . . . . . 61
The Cost of Human Interaction with the System . . . 61
Policy Dispersion versus Optimal Traffic Handling . . 66
Solving the Management Complexity Problem . . . . 69
Automation as a Solution to Management Complexity . 69
Modularity as a Solution to Management Complexity . 72
Protocol Complexity versus Management Complexity . 74
A Final Thought . . . . . . . . . . 77
Chapter 5: Design Complexity . . . . . . . . . 79
Control Plane State versus Stretch . . . . . . . 81
Aggregation versus Stretch . . . . . . . 83
Traffic Engineering . . . . . . . . 85
State versus Stretch: Some Final Thoughts . . . . 87
Topology versus Speed of Convergence . . . . . . 88
Ring Topology Convergence . . . . . . 88
Redundancy versus Resilience . . . . . . 90
Topology versus Speed of Convergence:
Some Final Thoughts . . . . . . . 93
Fast Convergence versus Complexity . . . . . . 94
Improving Convergence with Intelligent Timers: Talk Faster . . . . . . . . . 96
Removing Timers from Convergence: Precompute . . 99
Working around Topology: Tunneling to the Loop-Free
Alternate . . . . . . . . . 101
Some Final Thoughts on Fast Convergence . . . 104
Virtualization versus Design Complexity . . . . . 106
Functional Separation . . . . . . . 108
Forwarding Plane Complexity . . . . . . 109
Control Plane Complexity . . . . . . 109
Shared Fate Risk Groups . . . . . . . 111
A Final Thought . . . . . . . . . . 111
Chapter 6: Managing Design Complexity . . . . . . 113
Modularity . . . . . . . . . . . 113
Uniformity . . . . . . . . . 114
Interchangeable Modules . . . . . . . 120
How Modularity Attacks the Complexity Problem . . 121
Information Hiding . . . . . . . . . 122
Aggregation . . . . . . . . . 122
Failure Domains and Information Hiding . . . . 126
Final Thoughts on Information Hiding . . . . 128
Models . . . . . . . . . . . 129
Waterfall . . . . . . . . . . 129
Places in the Network . . . . . . . 131
Hierarchical . . . . . . . . . 132
UML . . . . . . . . . . . 134
A Final Thought . . . . . . . . . . 136
Chapter 7: Protocol Complexity . . . . . . . . 137
Flexibility versus Complexity: OSPF versus IS-IS . . . . 138
Layering versus Protocol Complexity . . . . . . 141
The Seven-Layer Model . . . . . . . 143
The Four-Layer Model . . . . . . . 146
The Iterative Model . . . . . . . . 147
Protocol Stacks and Design . . . . . . 148
Protocol Complexity versus Design Complexity . . . . 149
Microloops and Fast Rerout