JUNOS Archtecture

  • View
    223

  • Download
    2

Embed Size (px)

Text of JUNOS Archtecture

  • 8/2/2019 JUNOS Archtecture

    1/26

    White Paper

    Juniper Networks, Inc.

    1194 North Mathilda Avenue

    Sunnyvale, Caliornia 94089

    USA

    408.745.2000

    1.888 JUNIPER

    www.juniper.net

    Network Operating System EvolutionJUNOS Sotware: Architectural Choices at the Foreronto Networking

    Part Number: 200264-002 Aug 2008

  • 8/2/2019 JUNOS Archtecture

    2/26

    Copyright 2008, Juniper Networks, Inc.2

    Network Operating System Evolution

    Table of Contents

    Executive Summary 3

    Introduction 3

    Origin and Evolution o Network Operating Systems 3

    First-Generation OS: Monolithic Architecture 4

    Second-Generation OS: Control Plane Modularity 4Third-Generation OS: Flexibility, Scalability and Continuous Operation 5

    Basic OS Design Considerations 5

    Commercial Versus Open-Source Donor OS 6

    Functional Separation and Process Scheduling 6

    Memory Model 6

    Scheduling Discipline 6

    Virtual Memory/Preemptive Scheduling Programming Model 7

    Generic Kernel Design 8

    Monolithic Versus Microkernel Network Operating System Designs 9

    JUNOS Sotware Kernel 10

    Process Scheduling in JUNOS Sotware 11

    JUNOS Sotware Routing Protocol Process 12

    Scalability 14Scaling Down 14

    Scaling Up 15

    Architecture and Inrastructure 16

    Parallelism 16

    Flexibility and Portability 17

    Degrees o Modularity 19

    Open Architecture 19

    Product Maintenance 19

    Sel-Healing 20

    Troubleshooting 21

    Quality and Reliability 21

    System Integrity 21

    Release Process Summary 23

    Final Product Quality and Stability 24

    Conclusion 25

    What Makes JUNOS Sotware Dierent 25

    Features 25

    Predictability: JUNOS Sotware Releases 20042007 25

    About Juniper Networks 26

    List of FiguresFigure 1 Typical Preemptive Scheduling Sequence 7

    Figure 2 Resource Management Conicts in Preemptive Scheduling 7

    Figure 3 Generic JUNOS Sotware 90 Architectural Structure 10

    Figure 4 Multilevel CPU Scheduling in JUNOS Sotware 12

    Figure 5 Hierarchical Protocol Stack Operation 13

    Figure 6 Typical CPU Times Capture (rom NEC 8800 Product Documentation) 16

    Figure 7 Product Consolidation Under a Common Operating System 18

  • 8/2/2019 JUNOS Archtecture

    3/26

    Copyright 2008, Juniper Networks, Inc. 3

    Network Operating System Evolution

    Executive Summary

    This paper discusses the requirements and challenges inherent in the design o carrier-class

    network operating system (OS) Key acets o JUNOS sotware, the Juniper Networks OS, are used

    to illustrate the evolution o OS design and underscore the relationship between unctionality and

    architectural decisions

    The challenge o designing a contemporary network operating system is examined rom dierentangles, including exibility, ability to power a wide range o platorms, nonstop operation, and

    parallelism Architectural challenges, trade-os and opportunities are identifed, as well as some o

    the best practices in building state-o-the-art network operating systems

    Introduction

    Modern network devices are complex entities composed o both silicon and sotware Thus, designing

    an efcient hardware platorm is not, by itsel, sufcient to achieve an eective, cost-efcient and

    operationally tenable product The control plane plays a critical role in the development o eatures

    and in ensuring device usability

    Although progress rom the development o aster CPU boards and orwarding planes is visible,

    structural changes made in sotware are usually hidden, and while vendor collateral oten oers a list

    o eatures in a carrier-class package, operational experiences may vary considerably

    Products that have been through several generations o sotware releases provide the best examples

    o the dierence made by the choice o OS It is still not uncommon to fnd routers or switches that

    started lie under older, monolithic sotware and later migrated to more contemporary designs The

    positive eect on stability and operational efciency is easy to notice and appreciate

    However, migration rom one network operating system to another can pose challenges rom

    nonoverlapping eature sets, noncontiguous operational experiences and inconsistent sotware

    quality These potential challenges make it is very desirable to build a control plane that can power

    the hardware products and eatures supported in both current and uture markets

    Developing a exible, long-lasting and high-quality network OS provides a oundation that can

    graceully evolve to support new needs in its height or up and down scaling, width or adoptionacross many platorms, and depth or rich integration o new eatures and unctions It takes time,

    signifcant investment and in-depth expertise

    Most o the engineers writing the early releases o JUNOS sotware came rom other companies

    where they had previously built network sotware They had frsthand knowledge o what worked

    well, and what could be improved These engineers ound new ways to solve the limitations that

    theyd experienced in building the older operating systems Resulting innovations in JUNOS sotware

    are signifcant and rooted in its earliest design stages Still, to ensure that our products anticipate

    and ulfll the next generation o market requirements, JUNOS sotware is periodically reevaluated

    to determine whether any changes are needed to ensure that it continues to provide the reliability,

    perormance and resilience or which it is known

    Origin and Evolution of Network Operating Systems

    Contemporary network operating systems are mostly advanced and specialized branches o POSIX-

    compliant sotware platorms and are rarely developed rom scratch The main reason or this

    situation is the high cost o developing a world-class operating system all the way rom concept to

    fnished product By adopting a general-purpose OS architecture, network vendors can ocus on

    routing-specifc code, decrease time to market, and beneft rom years o technology and research

    that went into the design o the original (donor) products

  • 8/2/2019 JUNOS Archtecture

    4/26

    Copyright 2008, Juniper Networks, Inc.4

    Network Operating System Evolution

    For example, consider Table 1, which lists some operating systems or routers and their respective

    origins (the Generation column is explained in the ollowing sections)

    Table 1. Router Operating System Origins

    Vendor Router OS Donor OS Donor OS Owner Generation Donor OS Web site

    Juniper

    Networks

    JUNOS

    sotware

    FreeBSD Internet community 2, 3 www.reebsd.org

    Cisco IOS-XR QNX QNX Sotware

    Systems

    2 www.qnx.com

    Cisco IOS n/a Proprietary 1 n/a

    Cisco IOS-XE IOS, Linux Hybrid (ASR) 1.5 n/a

    Cisco Modular IOS IOS, QNX Hybrid (6500) 1.5 n/a

    Alcatel-

    Lucent

    SR OS VxWorks WindRiver 2 www.windriver.com

    Redback SEOS NetBSD Internet community 2 www.netbsd.org

    Force10 FTOS NetBSD Internet community 2 www.netbsd.org

    Extreme ExtremeWARE Linux Internet community 2 www.xoslinux.org

    Generally speaking, network operating systems in routers can be traced to three generations odevelopment, each with distinctively dierent architectural and design goals

    First-Generation OS: Monolithic Architecture

    Typically, frst-generation network operating systems or routers and switches were pro