You are previewing Network Functions Virtualization (NFV) with a Touch of SDN.
O'Reilly logo
Network Functions Virtualization (NFV) with a Touch of SDN

Book Description

Network Functions Virtualization (NFV) will drive dramatic cost reductions while also accelerating service delivery. Using NFV with SDN, network owners can provision new functions rapidly on demand, improve scalability, and leverage microservices. Benefits like these will make NFV indispensable for service providers, mobile operators, telcos, and enterprises alike.

Network Functions Virtualization (NFV) with a Touch of SDN is the first practical introduction to NFV’s fundamental concepts, techniques, and use cases. Written for wide audiences of network engineers, architects, planners, and operators, it assumes no previous knowledge of NFV architecture, deployment, or management.

The authors first explain how virtualization, VMs, containers, and related technologies establish the foundation for the NFV transformation. Next, they show how these concepts and technologies can be applied to virtualize network functions in the cloud, data centers, routing, security, and the mobile packet core.

You’ll discover new tools and techniques for managing and orchestrating virtualized network devices, and gain new clarity on how SDN and NFV interact and interrelate. By the time you’re done, you’ll be ready to assess vendor claims, evaluate architectures, and plan NFV’s role in your own networks.

  • Understand NFV’s key benefits and market drivers

  • Review how virtualization makes NFV possible

  • Consider key issues associated with NFV network design and deployment

  • Integrate NFV into existing network designs

  • Orchestrate, build, and deploy NFV networks and cloud services

  • Maximize operational efficiency by building more programmable, automated networks

  • Understand how NFV and SDN work together

  • Address security, programmability, performance, and service function chaining

  • Preview evolving concepts that will shape NFV’s future

  • Table of Contents

    1. About This E-Book
    2. Title Page
    3. Copyright Page
    4. Dedication Page
    5. Contents
    6. Preface
    7. Acknowledgments
    8. About the Authors
    9. About the Technical Reviewers
    10. Introduction
      1. Who Should Read This Book?
      2. Goals and Methods—How This Book Is Organized
    11. Chapter 1. The Journey to Network Functions Virtualization (NFV) Era
      1. The Evolution of Network Architecture
        1. Traditional Network Architecture
        2. Introducing NFV
      2. NFV Architectural Framework
        1. Need for a Framework
        2. ETSI Framework for NFV
        3. Understanding the ETSI Framework
        4. A Closer Look at ETSI’s NFV Framework
        5. NFV Framework Summary
      3. Benefits of NFV
        1. Hardware Flexibility
        2. Faster Service Life Cycle
        3. Scalability and Elasticity
        4. Leveraging Existing Tools
        5. Rapid Development and Vendor Independence
        6. Validation of New Solutions
        7. Amorphous Service Offering
        8. Operational Efficiency and Agility
      4. NFV Market Drivers
        1. Movement to Cloud
        2. New Business Services
        3. Capital Expense Savings
        4. Operational Expense Savings
        5. Barrier of Entry
      5. Summary
      6. References
      7. Review Questions
    12. Chapter 2. Virtualization Concepts
      1. History and Background of Virtualization
        1. Virtualization Benefits and Goals
        2. Server Virtualization, Network Virtualization, and NFV
        3. Virtualization Techniques
        4. Virtualization versus Emulation
      2. Virtual Machines
        1. Components of a Virtual Machine
        2. Resource Allocation to the Virtual Machine
        3. Network Communication
        4. Packaging a Virtual Machine
        5. Commonly Used Hypervisors
      3. Linux Containers and Docker
        1. Understanding Containers
        2. Container versus Virtual Machines
        3. Application Container and OS Container
        4. Enter Docker
        5. Container Packaging—Beyond Docker
      4. Single and Multitenant Environment
      5. Virtualization and NFV
      6. Summary
      7. References
      8. Review Questions
    13. Chapter 3. Virtualization of Network Functions
      1. Designing NFV Networks
        1. NFV Design Considerations
        2. NFV Transformation Challenges
      2. Virtualization of Network Infrastructure and Services
        1. NFV for Routing Infrastructure
        2. Virtualization of Network Security
        3. Virtualization of Mobile Communication Networks
      3. Summary
      4. References
      5. Review Questions
    14. Chapter 4. NFV Deployment in the Cloud
      1. What’s in a Cloud?
        1. Characteristics of Cloud
        2. Cloud-Based Services
        3. Cloud Deployment Models
        4. NFV and Cloud
      2. Revisiting ETSI Management and Orchestration Block
        1. MANO Data Repositories
      3. Orchestrating, Deploying, and Managing NFV Infrastructure
        1. Hardware Virtualization Deployment Options
        2. Deploying Virtual Machines and Containers
        3. Software and Tools for NFVI Deployment
      4. Introduction to OpenStack
        1. So What Is OpenStack?
        2. A Brief History of OpenStack
        3. OpenStack Releases
        4. OpenStack Deployment Nodes
        5. OpenStack Networking
        6. OpenStack Deployment Nodes Revisited
        7. OpenStack High Availability
        8. Live Migration for VNF mobility
        9. Deploying OpenStack
        10. Using OpenStack as VIM
      5. Life Cycle Management of VNFs
        1. Instantiation and Provisioning
        2. VNFM Software Examples
      6. Orchestration and Deployment of Network Services
        1. Cisco’s Network Service Orchestrator
        2. Telefonica’s OpenMANO
        3. Brocade VNF Manager
        4. Nokia’s CloudBand Network Director
        5. Ciena’s Blue Planet
        6. HP’s NFV Director
        7. Ericsson Cloud Manager
        8. OpenStack Tracker
        9. RIFT.io’s RIFT.ware
      7. NFV MANO and Open Source Solutions
        1. Open Platform NFV
        2. Open Orchestration Project (Open-O)
        3. Open Source MANO (OSM)
      8. Describing Network Service Descriptor
        1. Juju Charms
        2. HOT
        3. TOSCA
      9. Summary
      10. References
      11. Review Questions
    15. Chapter 5. Software Defined Networking (SDN)
      1. Basic Concepts of SDN
        1. What is SDN?
        2. Advantages of SDN
      2. SDN Implementation and Protocols
        1. Introduction to SDN Controller
        2. SDN Implementation Models
        3. SDN Protocols
      3. SDN Use-Cases for Different Networking Domains
        1. SDN in the Data Center (SDN DC)
        2. SDN in Service Provider Cloud (SP SDN)
        3. SDN in Wide-Area Networks (SD WAN)
        4. Enterprise SDN
        5. Transport SDN
      4. Revisiting SDN Controllers
        1. Open Source SDN Controllers
        2. Commercial SDN Controllers
      5. SDN Correlation with NFV
        1. CORD—An Example of NFV and SDN Working Together
      6. Summary
      7. References
      8. Review Questions
    16. Chapter 6. Stitching It All Together
      1. Security Considerations
      2. Service Function Chaining
        1. Service Chaining in a Traditional Network
        2. Service Function Chaining for Cloud Scaling
        3. Network Service Header (NSH)
        4. Other Protocols for SFC
        5. Service Chaining Use Case
      3. How Virtual Machines Communicate
        1. Virtual Switch
        2. Single Root Input/Output Virtualization and Sharing (SR-IOV)
        3. Direct Memory Access
      4. Enhancing vSwitch Performance
        1. Data Plane Development Kit (DPDK)
        2. Vector Packet Processing (VPP)
      5. Data Performance Considerations
        1. CPU Usage Optimization
        2. Optimized Use of Memory
      6. Programmability in a Virtualized Network
      7. Summary
      8. References
      9. Review Questions
    17. Appendix A: Answers to Review Questions
      1. Chapter 1
      2. Chapter 2
      3. Chapter 3
      4. Chapter 4
      5. Chapter 5
      6. Chapter 6
    18. Index
    19. Code Snippets