Building a Future-Proof Cloud Infrastructure

A Unified Architecture for Network, Security, and Storage Services

Paperback Engels 2020 9780136624097
Verwachte levertijd ongeveer 9 werkdagen

Samenvatting

In  Building a Future-proof Cloud Infrastructure, network pioneer Silvano Gai shows how to implement Distributed Services Platforms with multiple service modules in diverse hardware. 
Focusing on business benefits throughout, Gai places Distributed Services Platforms in the context of current trends in network and cloud architecture and virtualization. He compares four leading architectures: Sea of Processors, FPGAs, ASIC, and P4, reviewing the advantages and tradeoffs of each, and illuminating key concepts with intuitive illustrations. 
By the time students have finished, they’ll know how to evaluate solutions, ask pertinent questions, and plan the best Distributed Services Platform strategies for their own environments.

Specificaties

ISBN13:9780136624097
Taal:Engels
Bindwijze:Paperback

Lezersrecensies

Wees de eerste die een lezersrecensie schrijft!

Inhoudsopgave

Preface <br> Chapter 1:&nbsp; Introduction to Distributed Platforms <br>1.1 The Need for a Distributed Services Platform <br>1.2 The Precious CPU Cycles <br>1.3 The Case for Domain-Specific Hardware <br>1.4 Using Appliances <br>1.5 Attempts at Defining a Distributed Services Platform <br>1.6 Requirements for a Distributed Services Platform <br>1.7 Summary <br> Chapter 2:&nbsp; Network Design <br>2.1 Bridging and Routing <br>&nbsp;&nbsp;&nbsp; 2.1.1 L2 Forwarding <br>&nbsp;&nbsp;&nbsp; 2.1.2 L3 Forwarding <br>&nbsp;&nbsp;&nbsp; 2.1.3 LPM Forwarding in Hardware <br>&nbsp;&nbsp;&nbsp; 2.1.4 VRF <br>2.2 Clos Topology <br>2.3 Overlays <br>&nbsp;&nbsp;&nbsp; 2.3.1 IP in IP <br>&nbsp;&nbsp;&nbsp; 2.3.2 GRE <br>&nbsp;&nbsp;&nbsp; 2.3.3 Modern Encapsulations <br>&nbsp;&nbsp;&nbsp; 2.3.4 VXLAN <br>&nbsp;&nbsp;&nbsp; 2.3.5 MTU Considerations <br>2.4 Secure Tunnels <br>2.5 Where to Terminate the Encapsulation <br>2.6 Segment Routing <br>2.7 Using Discrete Appliance for Services <br>&nbsp;&nbsp;&nbsp; 2.7.1 Tromboning with VXLAN <br>&nbsp;&nbsp;&nbsp; 2.7.2 Tromboning with VRF <br>&nbsp;&nbsp;&nbsp; 2.7.3 Hybrid Tromboning <br>2.8 Cache-Based Forwarding <br>2.9 Generic Forwarding Table <br>2.10 Summary <br>2.11 Bibliography <br> Chapter 3:&nbsp; Virtualization <br>3.1 Virtualization and Clouds <br>3.2 Virtual Machines and Hypervisors <br>&nbsp;&nbsp;&nbsp; 3.2.1 VMware ESXi <br>&nbsp;&nbsp;&nbsp; 3.2.2 Hyper-V <br>&nbsp;&nbsp;&nbsp; 3.2.3 QEMU <br>&nbsp;&nbsp;&nbsp; 3.2.4 KVM <br>&nbsp;&nbsp;&nbsp; 3.2.5 XEN <br>3.3 Containers <br>&nbsp;&nbsp;&nbsp; 3.3.1 Docker and Friends <br>&nbsp;&nbsp;&nbsp; 3.3.2 Kata Containers <br>&nbsp;&nbsp;&nbsp; 3.3.3 Container Network Interface <br>&nbsp;&nbsp;&nbsp; 3.3.4 Kubernetes <br>3.4 The Microservice Architecture <br>&nbsp;&nbsp;&nbsp; 3.4.1 REST API <br>&nbsp;&nbsp;&nbsp; 3.4.2 gRPC <br>3.5 OpenStack <br>3.6 NFV <br>3.7 Summary <br>3.8 Bibliography <br> Chapter 4:&nbsp; Network Virtualization Services <br>4.1 Introduction to Networking Services <br>4.2 Software-Defined Networking <br>&nbsp;&nbsp;&nbsp; 4.2.1 OpenFlow <br>&nbsp;&nbsp;&nbsp; 4.2.2 SD-WAN <br>&nbsp;&nbsp;&nbsp; 4.2.3 gRIBI <br>&nbsp;&nbsp;&nbsp; 4.2.4 Data Plane Development Kit (DPDK) <br>4.3 Virtual Switches <br>&nbsp;&nbsp;&nbsp; 4.3.1 Open vSwitch (OVS) <br>&nbsp;&nbsp;&nbsp; 4.3.2 tc-flower <br>&nbsp;&nbsp;&nbsp; 4.3.3 DPDK RTE Flow Filtering <br>&nbsp;&nbsp;&nbsp; 4.3.4 VPP (Vector Packet Processing) <br>&nbsp;&nbsp;&nbsp; 4.3.5 BPF and eBPF <br>&nbsp;&nbsp;&nbsp; 4.3.6 XDP <br>&nbsp;&nbsp;&nbsp; 4.3.7 Summary on Virtual Switches <br>4.4 Stateful NAT <br>4.5 Load Balancing <br>4.6 Troubleshooting and Telemetry <br>4.7 Summary <br>4.8 Bibliography <br> Chapter 5:&nbsp; Security Services <br>5.1 Distributed Firewalls <br>5.2 Microsegmentation <br>5.3 TLS Everywhere <br>5.4 Symmetric Encryption <br>5.5 Asymmetric Encryption <br>5.6 Digital Certificates <br>5.7 Hashing <br>5.8 Secure Key Storage <br>5.9 PUF <br>5.10 TCP/TLS/HTTP Implementation <br>5.11 Secure Tunnels <br>&nbsp;&nbsp;&nbsp; 5.11.1 IPsec <br>&nbsp;&nbsp;&nbsp; 5.11.2 TLS <br>&nbsp;&nbsp;&nbsp; 5.11.3 DTLS <br>5.12 VPNs <br>5.13 Secure Boot <br>5.14 Summary <br>5.15 Bibliography <br> Chapter 6:&nbsp; Distributed Storage and RDMA Services <br>6.1 RDMA and RoCE <br>&nbsp;&nbsp;&nbsp; 6.1.1 RDMA Architecture Overview <br>&nbsp;&nbsp;&nbsp; 6.1.2 RDMA Transport Services <br>&nbsp;&nbsp;&nbsp; 6.1.3 RDMA Operations <br>&nbsp;&nbsp;&nbsp; 6.1.4 RDMA Scalability <br>&nbsp;&nbsp;&nbsp; 6.1.5 RoCE <br>&nbsp;&nbsp;&nbsp; 6.1.6 RoCE vs iWARP <br>&nbsp;&nbsp;&nbsp; 6.1.7 RDMA Deployments <br>&nbsp;&nbsp;&nbsp; 6.1.8 RoCEv2 and Lossy Networks <br>&nbsp;&nbsp;&nbsp; 6.1.9 Continued Evolution of RDMA <br>6.2 Storage <br>&nbsp;&nbsp;&nbsp; 6.2.1 The Advent of SSDs <br>&nbsp;&nbsp;&nbsp; 6.2.2 NVMe over Fabrics <br>&nbsp;&nbsp;&nbsp; 6.2.3 Data Plane Model of Storage Protocols <br>&nbsp;&nbsp;&nbsp; 6.2.4 Remote Storage Meets Virtualization <br>&nbsp;&nbsp;&nbsp; 6.2.5 Distributed Storages Services <br>&nbsp;&nbsp;&nbsp; 6.2.6 Storage Security <br>&nbsp;&nbsp;&nbsp; 6.2.7 Storage Efficiency <br>&nbsp;&nbsp;&nbsp; 6.2.8 Storage Reliability <br>&nbsp;&nbsp;&nbsp; 6.2.9 Offloading and Distributing Storage Services <br>&nbsp;&nbsp;&nbsp; 6.2.10 Persistent Memory as a New Storage Tier <br>6.3 Summary <br>6.4 Bibliography <br> Chapter 7:&nbsp; CPUs and Domain-Specific Hardware <br>7.1 42 Years of Microprocessor Trend Data <br>7.2 Moore’s Law <br>7.3 Dennard Scaling <br>7.4 Amdahl’s Law <br>7.5 Other Technical Factors <br>7.6 Putting It All Together <br>7.7 Is Moore’s Law Dead or Not? <br>7.8 Domain-specific Hardware <br>7.9 Economics of the Server <br>7.10 Summary <br>7.11 Bibliography <br> Chapter 8:&nbsp; NIC Evolution <br>8.1 Understanding Server Buses <br>8.2 Comparing NIC Form Factors <br>&nbsp;&nbsp;&nbsp; 8.2.1 PCI Plugin Cards <br>&nbsp;&nbsp;&nbsp; 8.2.2 Proprietary Mezzanine Cards <br>&nbsp;&nbsp;&nbsp; 8.2.3 OCP Mezzanine Cards <br>&nbsp;&nbsp;&nbsp; 8.2.4 Lan On Motherboard <br>8.3 Looking at the NIC Evolution <br>8.4 Using Single Root Input/Output Virtualization <br>8.5 Using Virtual I/O <br>8.6 Defining “SmartNIC” <br>8.7 Summary <br>8.8 Bibliography <br> Chapter 9:&nbsp; Implementing a DS Platform <br>9.1 Analyzing the Goals for a Distributed Services Platform <br>&nbsp;&nbsp;&nbsp; 9.1.1 Services Everywhere <br>&nbsp;&nbsp;&nbsp; 9.1.2 Scaling <br>&nbsp;&nbsp;&nbsp; 9.1.3 Speed <br>&nbsp;&nbsp;&nbsp; 9.1.4 Low Latency <br>&nbsp;&nbsp;&nbsp; 9.1.5 Low Jitter <br>&nbsp;&nbsp;&nbsp; 9.1.6 Minimal CPU Load <br>&nbsp;&nbsp;&nbsp; 9.1.7 Observability and Troubleshooting Capability <br>&nbsp;&nbsp;&nbsp; 9.1.8 Manageability <br>&nbsp;&nbsp;&nbsp; 9.1.9 Host Mode versus Network Mode <br>&nbsp;&nbsp;&nbsp; 9.1.10 PCIe Firewall <br>9.2 Understanding Constraints <br>&nbsp;&nbsp;&nbsp; 9.2.1 Virtualized versus Bare-metal Servers <br>&nbsp;&nbsp;&nbsp; 9.2.2 Greenfield versus Brownfield Deployment <br>&nbsp;&nbsp;&nbsp; 9.2.3 The Drivers <br>&nbsp;&nbsp;&nbsp; 9.2.4 PCIe-only Services <br>&nbsp;&nbsp;&nbsp; 9.2.5 Power Budget <br>9.3 Determining the Target User <br>&nbsp;&nbsp;&nbsp; 9.3.1 Enterprise Data Centers <br>&nbsp;&nbsp;&nbsp; 9.3.2 Cloud Providers and Service Providers <br>9.4 Understanding DSN Implementations <br>&nbsp;&nbsp;&nbsp; 9.4.1 DSN in Software <br>&nbsp;&nbsp;&nbsp; 9.4.2 DSN Adapter <br>&nbsp;&nbsp;&nbsp; 9.4.3 DSN Bump-in-the-Wire <br>&nbsp;&nbsp;&nbsp; 9.4.4 DSN in Switch <br>&nbsp;&nbsp;&nbsp; 9.4.5 DSNs in an Appliance <br>9.5 Summary <br>9.6 Bibliography <br> Chapter 10:&nbsp; DSN Hardware Architectures <br>10.1 The Main Building Blocks of a DSN <br>10.2 Identifying the Silicon Sweet Spot <br>&nbsp;&nbsp;&nbsp; 10.2.1 The 16 nm Process <br>&nbsp;&nbsp;&nbsp; 10.2.2 The 7 nm Process <br>10.3 Choosing an Architecture <br>10.4 Having a Sea of CPU Cores <br>10.5 Understanding Field-Programmable Gate Arrays <br>10.6 Using Application-Specific Integrated Circuits <br>10.7 Determining DSN Power Consumption <br>10.8 Determining Memory Needs <br>&nbsp;&nbsp;&nbsp; 10.8.1 Host Memory <br>&nbsp;&nbsp;&nbsp; 10.8.2 External DRAM <br>&nbsp;&nbsp;&nbsp; 10.8.3 On-chip DRAM <br>&nbsp;&nbsp;&nbsp; 10.8.4 Memory Bandwidth Requirements <br>10.9 Summary <br>10.10 Bibliography <br> Chapter 11:&nbsp; The P4 Domain-Specific Language <br>11.1 P4 Version 16 <br>11.2 Using the P4 Language <br>11.3 Getting to Know the Portable Switch Architecture <br>11.4 Looking at a P4 Example <br>11.5 Implementing the P4Runtime API <br>11.6 Understanding the P4 INT <br>11.7 Extending P4 <br>&nbsp;&nbsp;&nbsp; 11.7.1 Portable NIC Architecture <br>&nbsp;&nbsp;&nbsp; 11.7.2 Language Composability <br>&nbsp;&nbsp;&nbsp; 11.7.3 Better Programming and Development Tools <br>11.8 Summary <br>11.9 Bibliography <br> Chapter 12:&nbsp; Management Architectures for DS Platforms <br>12.1 Architectural Traits of a Management Control Plane <br>12.2 Declarative Configuration <br>12.3 Building a Distributed Control Plane as a Cloud-Native Application <br>12.4 Monitoring and Troubleshooting <br>12.5 Securing the Management Control Plane <br>12.6 Ease of Deployment <br>12.7 Performance and Scale <br>12.8 Failure Handling <br>12.9 API Architecture <br>12.10 Federation <br>&nbsp;&nbsp;&nbsp; 12.10.1 Scaling a Single SDSP <br>&nbsp;&nbsp;&nbsp; 12.10.2 Distributed Multiple SDSPs <br>&nbsp;&nbsp;&nbsp; 12.10.3 Federation of Multiple SDSPs <br>12.11 Scale and Performance Testing <br>12.12 Summary <br>12.13 Bibliography <br> Index <br> <br> <div> <br> </div>

Managementboek Top 100

Rubrieken

Populaire producten

    Personen

      Trefwoorden

        Building a Future-Proof Cloud Infrastructure