Network Programmability with YANG: The Structure of Network Automation with YANG, NETCONF, RESTCONF, and gNMI, 1st edition
Published by Addison-Wesley Professional (May 15, 2019) © 2019
- Benoit Claise
- Joe Clarke
- Jan Lindblad
eTextbook
- Available for purchase from all major ebook resellers, including InformIT.com.
- To request a review copy, click on the "Request a Review Copy" button.
- A print text (hardcover or paperback)Â
- Free shipping
- Also available for purchase as an ebook from all major ebook resellers, including InformIT.com
- Discover the value of implementing YANG and Data Model-Driven Management in your network
- Explore the layers and components of a complete working solution
- Build a business case where value increases as your solution grows
- Drill down into transport protocols: NETCONF, RESTCONF, and gNMI/gRPC
- See how telemetry can establish a valuable automated feedback loop
- Find data models you can build on, and evaluate models with similar functionality
- Understand models, metadata, and tools from several viewpoints: architect, operator, module author, and application developer
- Walk through a complete automation journey: business case, service model, service implementation, device integration, and operation
- Leverage the authors’ experience to design successful YANG models and avoid pitfalls
- Accelerate service delivery and minimize network lifecycle costs by unlocking the power of YANG-based network automation
- An easy to understand overview of YANG, packed with practical implementation examples
- Focuses on the network management aspects of network programmability
- By authors at the forefront of the YANG development effort and the YANG modeling revolution
- For wide audiences of network professionals called upon to improve value, agility, and manageability in large-scale networks
1 The Network Management World Must Change: Why Should You Care? 2
   Introduction 2
   The Industry Has Changed: What Are the Trends? 6
   Existing Network Management Practices and Related Limitations 24
   Data Modeling Is Key for Automation 39
   Interview with the Experts 48
   Summary 52
   References in This Chapter 53
   Endnotes 53
2 Data Model—Driven Management 56
   The Beginning: A New Set of Requirements 56
   Network Management Is Dead, Long Live Network Management 59
   YANG: The Data Modeling Language 61
   The Management Architecture 69
   Data Model—Driven Management Components 70
   The Encoding (Protocol Binding and Serialization) 74
   The Server Architecture: Datastore 77
   The Protocols 78
   The Programming Language 85
   Telemetry 86
   The Bigger Picture: Using NETCONF to Manage a Network 86
   Interview with the Experts 91
   Summary 93
   References in This Chapter 93
   Endnotes 94
3 YANG Explained 96
   Introduction 96
   Describe Your World of Data 96
   Describing Possible Events 113
   Separating Configuration from Operational Data 117
   Constraints Keep Things Meaningful 122
   Augmenting, Extending, and Possibly Deviating 142
   Network Management Datastore Architecture (NMDA) 149
   Interview with the Expert 154
   Summary 156
   References in This Chapter 157
4 NETCONF, RESTCONF, and gNMI Explained 158
   Introduction 158
   NETCONF 158
   RESTCONF 190
   OpenConfig and gNMI 214
   Interview with the Expert 225
   Summary 227
   References in This Chapter 227
5 Telemetry Explained 230
   Introduction 230
   Data Model—Driven Telemetry 230
   Moving Away from SNMP to Telemetry 232
   Telemetry Use Cases 235
   Telemetry Components 236
   Telemetry Standard Mechanisms 242
   Interview with the Experts 249
   Summary 252
   References in This Chapter 253
   Endnotes 253
6 YANG Data Modeling Developments in the Industry 256
   Introduction 256
   The Beginning: The IETF 256
   Embracing YANG Throughout the Industry 263
   The OpenConfig YANG Model 268
   Industry Coordination Is Required 270
   Interoperability Testing 272
   Implementing More Than One YANG Model for a Specific Functionality 274
   Interview with the Expert 275
   Summary 278
   References in This Chapter 279
   Endnotes 279
7 Automation Is as Good as the Data Models, Their Related
   Metadata, and the Tools: For the Network Architect and Operator 282
   Introduction 282
   Getting to Know the Structure of a YANG Module 283
   Finding the Right Modules Using the YANG Catalog 287
   Interacting with Devices 299
   Interview with the Experts 331
   Summary 335
   Endnotes 335
8 Automation Is as Good as the Data Models,
   Their Related Metadata, and the Tools: For the Module Author 336
   Introduction 336
   Designing Modules 336
   Understanding Your Module’s Impact 349
   Interview with the Expert 350
   Summary 352
   Endnotes 352
9 Automation Is as Good as the Data Models, Their Related Metadata, and the Tools: For the Application Developer 354
   Introduction 354
   Working with YANG Modules 355
   Interacting with the Network 366
   Making YANG Language Native 373
   Interview with the Expert 380
   Summary 381
   Endnotes 382
10 Using NETCONF and YANG 384
   Introduction 384
   So the Story Goes 385
   Top-Down Service Model 386
   Bottom-Up Device Templates 392
   Service Logic Connecting the Dots 394
   Setting Up NETCONF on a Device 398
   Discovering What’s on a Device 400
   Managing Services 405
   Manager Synchronization with Devices 413
   Network-Wide Transactions 417
   Interview with the Experts 425
   Summary 428
11 YANG Model Design 430
   Introduction 430
   Modeling Strategy 430
   YANG Modeling Tips 433
   Common YANG Mistakes 443
   Backward Compatibility 457
   Interview with the Experts 460
   Summary 462
   References in This Chapter 463
9780135180396, TOC, 4/4/19
Benoît Claise, CCIE No. 2686, is a Cisco Fellow, working as an architect for embedded management. Areas of passion and expertise include Internet traffic monitoring, accounting, performance, fault, and configuration management. Benoît’s area of focus these days is network automation with YANG as the data modeling language, NETCONF/RESTCONF, and telemetry as a feedback loop to solve intent-based networking.
Benoît was IETF Operations and Management Area (OPS) co-director from 2012 to 2018, a period during which much of the data model–driven management protocols, encoding, and data models were specified. He blogs on these topics on his web site http://www.claise.be/ and spends time on the yangcatalog.org developments. Benoît is a contributor to the IETF, with 35 RFCs in the area of NetFlow, IPFIX (IP Flow Information eXport), PSAMP (Packet Sampling), IPPM (IP Performance Metrics), YANG, MIB module, energy management, and network management in general. Benoît is the co-author of the Cisco Press book Network Management: Accounting and Performance Strategies.
As a Cisco Customer Experience Engineer, Joe Clarke, CCIE No. 5384, has contributed to the development and adoption of many of Cisco’s network management and automation products and technologies. He helps to support, enhance, and promote the embedded automation and programmability features, such as the Embedded Event Manager, Tcl, Python, NETCONF/RESTCONF, and YANG.
Joe evangelizes these programmability and automation skills in order to build the next generation of network engineers. He is a Cisco Certified Internetworking Expert and certified Cisco Network Programmability Engineer. Joe has authored numerous technical documents on Cisco network management, automation, and programmability products and technologies, as well as a chapter as co-author of Network-Embedded Management and Applications: Understanding Programmable Networking Infrastructure. He also served as one of the technical editors for the Cisco Press books Tcl Scripting for Cisco IOS and Programming and Automating Cisco Networks: A Guide to Network Programmability and Automation in the Data Center, Campus, and WAN. He is an alumnus of the University of Miami and holds a Bachelor of Science degree in computer science.
Outside of Cisco, Joe is a member of the FreeBSD project and the co-chair of the Ops Area Working Group at the IETF. Joe is a certified commercial pilot for single-engine airplanes with an instrument rating. He lives with his beautiful wife in the RTP area of North Carolina.
Jan Lindblad soldered together his first computer at age 12, wrote his first compiler at 16, and reached the million lines of code mark by 30. In 2006, when NETCONF was first published by IETF, Jan was at the then newly founded start-up company Tail-f Systems. Tail-f built the first commercial implementation of NETCONF and was a driving force behind the introduction of YANG.
Jan is an IETF YANG Doctor and has also authored and reviewed many YANG modules in other organizations. Jan has trained several hundred people on the theory and practice of NETCONF and YANG. At the yearly NETCONF/YANG interop event organized by EANTC in Berlin, Germany, Jan plays a central role.
Outside Cisco, Jan is an avid climate activist and environmentalist. He lives outside Stockholm, Sweden, and commutes to work by bike every day.
Need help? Get in touch