Вы находитесь на странице: 1из 154

Network Science Overview for Cisco Engineers is the first course in the Engineering Learning

Network Science Curriculum. An early version of this class was reviewed by the above experts who made significant recommendations for changes and improvements. We are truly grateful for their advice and support. The authors attempted to implement as many of those changes as we could. Not all of the recommended changes made it into this version of the class. Any weaknesses that remain our most certainly the responsibility of the authors and not the reviewers. Level Set This is a level-setting course. So please have mercy on your neighbor who might not have seen what you have. One purpose of this course is to expose you to technologies that are important at Cisco. Surveys indicate that you most likely have not had the same education as the person sitting next to you. Some of you may have memorized the OSI model years ago, while others may have never heard of it. At least half of this course covers proprietary Cisco technologies that would not have been discussed in a University or commercial class. Please be considerate of your neighbor if we are covering information that is a refresher for you. Sampling This is the "appetizer sampler platter" of networking courses. You should be hungry to learn more by the end. This class attempts to provide some level of useful information covering Hardware, Software, Protocols, and Systems Engineering. Thats basically an impossible task in four hours. We cant cover anything in much detail. And if we do go into more detail, then some other subject will slip off the plate entirely. Weve tried to give you a wide range of topics to raise awareness about what networking means at Cisco. There are other classes available from Engineering Learning (and in development) that are designed to do justice to these subjects. This class will hopefully provide some vocabulary and awareness that will help you have meaningful conversations about your career with practitioners of the technologies. Scope 95%+ of all books and classes, including Ciscos own CCNA certification, describe networking from the point of view of setting up a network. That education is designed to teach people to take networking products out of the box and get them working. This education, and the Network Science perspective, describe networking from the point of view of those people who create networking the people that put the technology into the box.
Network Science Overview for Cisco Engineers 2007, Cisco Systems, Inc. All rights reserved.

Page

A simplified model that isolates the Computer Science problems and technologies from development tools and delivery processes. Note: Customer Documentation (configuration) informs the customer how to use the product. And if there is a problem, then more documentation is needed to instruct the customer with immediate work-arounds until the problem can be corrected. Testing serves the customer by attempting to discover and repair bugs before they can impact the customers site. In this model it is a critical part of developing the product and making it suitable for sale. Support serves the customer by cleaning up after a bug has impacted the customers site. Therefore in this model it is part of keeping the product delivered.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

The highlighted parts are the subjects we will discuss in this brief overview.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

Questions the course contains the questions you can use to gain valuable insight into your new position at Cisco.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

The framework for the content of this course depends on whether you have selected where you will be working at Cisco. If you have not yet selected, then the framework of this course is to provide an insight into the questions you would need to ask in the areas you will be considering. If you have already selected where you will be working, then the framework of this course is to provide you with guidance in the items you need to understand and paint the overall structure of the organization and systems you will be working with, in order to accelerate your level of contribution to the team you have joined.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

This class is sometimes taught to people who are just joining Cisco. If you are entering through the Cisco Choice program, youll want to use these questions during the Interview Process to help you understand what might be involved in positions you are considering. If you already have a position at Cisco, then you might want to write down the answers to all of the questions. If you dont know an answer or arent sure about it, note the question so that you can use it to help you understand more about your position and your organization.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

How do we get point 1 to communicate with point 2 ? What do I need to know?

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

Using knowledge of Computer Science and Networking, engineers define and implement a solution the network.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

In order to satisfy all of the potential students that will attend this course, and their areas of interest, we provide a range of topics and technologies used at Cisco Systems. We think this is helpful to everyone: understanding the roles that differ between you and the person sitting next to you is a benefit of sampling. Also you will all be exposed to a survey of technologies, terms and important engineering technologies and you may find interest in indirectly related items through this exposure.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

10

I encourage people who are entering Cisco through the Cisco Choice program not to assume that their past should determine their future. By that, I mean, dont let your education or background of experience alone decied your choice of position. You might be surprised to find that the skills you have would be very much appreciated in unexpected places. I urge you to consider three things deeply: 1) Where can you make your best contribution ? 2) Where can you learn the most ? 3) Where is your passion ?

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

11

The Network Science Curriculum is a series of classes that concentrate on Systems Engineering for creating networking products.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

12

We will be using this diagram zooming in on parts of it and referring back to it to point out where technologies we will be discussing are used in networks and the Internet. When we say The Network we mean The Network of Networks. That is, the network that includes The Internet all Telephone networks all Television networks anything that carries voice, video or data is part of the Network.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

13

Hardware Engineering is a collection of expertise and areas of specialization. This section provides a sampling of platforms, disciplines and technologies used at Cisco Systems.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

14

There are core routers such as: 12000 (GSR), 10000 (ESR), 7500, 7200, 7246 (Cable) & 7100 (vpn) series. These would be used in corporate networks as well as the internet backbone. FYI 85% of all internet traffic passes thru a Cisco router. Why would a corporation or ISP use these boxes? Because of their processor power and port density. Optical interfaces, high speed wan (OC-3, OC-12, OC-48), high speed lan {Gigabit Ethernet (1000 Mbs), Fast Ethernet (100 Mbs), or Ethernet (10 Mbs), Token ring, Fddi, Serial {T-1/E-1, T3/E3}, PRI/BRI, Cable or ATM interfaces. There are Access routers both midrange & user: 4700, 4500, 4000, 3600, 2600, 2500 , 1700 (vpn), 1400 (adsl), 1100 (CiscoPro (fits in a server)), 1000 (lan extenders), 800 (IOS isdn & dsl), 700 (non-IOS isdn), 600 (adsl/hdsl), and UBR924. Where would these devices be used you ask? Well they could be at a branch office of a bank or retail store. The cash registers could be hooked up to them, or ATM (cash machines) and they get tied back to the data center to a "high end" router. Some of these platforms are modular and others are fixed. What is modular? It means these boxes have the ability to change their interfaces when needed as opposed to those which are fixed. Fixed platforms have their interfaces soldered to the motherboard and hence can not be changed. An example of a fixed platform is the 2500. Who would use a 800, 700, 600 or UBR series router? People like you and me, telecommuters, and college kids. These platforms are user platforms. Meaning they have 1 or 2 ethernet connections for a pc, and run ISDN, DSL or CABLE. Then there are high end access and Aggregation products: AS5800, AS5400, AS5300, AS5200, AS5100( AS series are access series routers for dial up), 6100, 6200 (6x00 series are ADSL Concentrators), 6400 is the Aggregation box for DSL. We then have the Catalyst family of LAN switches, all part of the WorkGroup Business Unit: 2900, 4000, 5000 (our most popular), 6000 , 6500 {OSR}and finally the 8000. These switches would connect LAN segments together. Some also connect sites together via wan interfaces (ATM) and some also do voice!! That's right, they connect IP Phones to the LAN. IP Phones are just that, IP (Internet Protocol) enabled phones. Also know as VOIP. These models are: 12+ SP, 30 VP, 7910, 7960. They are all IP phones which can be purchased now. You will notice as you walk around the Cisco Campus here in RTP that different groups are getting them on their desks. As of right now, IP phones use the 3 as their extension. ie X30550 (ip phone of John Chambers our CEO). Signalling Controllers: What controls some of these different voice gateways? Answer, a signalling controller from the Network Software Services Unit. Those platforms are: SC2200, and VSC3000. These platforms are at the heart of solutions like Bulldog, Cujo, ThunderDial, ThunderVoice and Whole Sale Dial. Ok, we have LAN switches, let's talk about WAN switches: These switches deal only in ATM. There are NO IP interfaces in these boxes, strictly cell in and cell out. IP is encapsulated with in these cells. (You will learn more about that during the ATM class). The platforms are: BPX 8600, IGX 8400, MGX 8800, and MGX 8260. Very intricate ATM networks are built around the world with these switches. They are from the Cisco aquisition of StrataCom. Last but not least is our Optical routers, these platforms deal with light waves and with some Cisco ingenuity have married IP + Optical. The platforms are: ONS15516, ONS15454, ONS15200, ONS15190, and Network Science Overview for Cisco Engineers 2007, Cisco Systems, Inc. All rights reserved. ONS15800. Page 15

While we have seeded some questions above for you to consider , make sure you develop even more questions as we progress through this section. - Distributed or Centralized forwarding plane? - Distributed or Centralized control plane? - Fixed or modular interfaces? - Single mother-card or replacable line-card design - For line card designs, bus-based backplane or switching-fabric? - Operating system type? - Software, microcoded or hard-wired forwarding path? - Redundant or non-redundant hardware design?

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

16

By no means do we cover all the possible Hardware related disciplines or related activities in this brief course. Hopefully we have touched on some of the ones that you may be considering, and we will use some of these in the next several slides as examples to others that may not be aware of what constitutes hardware development activities. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

17

Application Specific Integrated Circuits are crucial to all our networking products at Cisco. Developing these devices is a complex and skillful process that starts with definition of function, leading to prototyping, simulation, synthesis and then exhaustive testing. Many of these devices are completely Cisco proprietary, and their purpose is to provide functionality focused on networking tasks within our products. Some examples of this functionality are: a. High Speed packet switching and processing b. Content Delivery management (QoS) c. Queue management and Servicing d. Security Functions (i.e. packet inspection) e. Many others Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

18

Designing successful and reliable hardware systems depends greatly on the ability to manufacture and test newly created components, subassemblies, and final assemblies. Sending high quality items into the network is extremely important to Cisco, and being able to accomplish that task with speed and low costs is essential in the competitive environment. We are always looking for ways to improve our processes, our designs, and in the end our products. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

19

In this subsection we take an overview tour of the Cisco product line. Ciscos footprint ranges from the enduser premise to the core of the Internetwork and to a number of vertical markets like Network Management and Security. By no means is our tour complete, but it gives us a great view of our breadth and presence. Hopefully this will help you to understand where a development group is focused when you ask the right questions about where in the network that teams product exists and what functionality what customer problem it solves. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

20

We had a hard time choosing which platforms to show you The 6800 series is the largest seller on the planet. Its main strength is that it integrates features and performance that make it adaptable to a wide variety of circumstances. A little history Ciscos origial product line, the CGS, MGS, and AGS routers used the same linecards but differed in the number of slots for them. The modern x000 series routers replaced economy of generalization with economy of specialization.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

21

Now lets examine a mid-range device from the Cisco product portfolio. You will recall from earlier where these devices be used. They could be at a branch office of a bank or retail store. The cash registers could be hooked up to them, or ATM (cash machines) and they get tied back to the data center to a "high end" router. Some of these platforms are modular and others are fixed. What is modular? It means these boxes have the ability to change their interfaces when needed as opposed to those which are fixed. Fixed platforms have their interfaces soldered to the motherboard and hence can not be changed.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

22

Our customers networks depend on products like these. Certainly they are used by fortune 500 companies, but consider the hundreds of thousands of medium size businesses that use these devices as their primary communications interface for the Internet. With features like redundancy and high availability, designs of these systems provide solutions to customer demands and needs. What other features might these customers need? Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

23

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

24

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

25

For the hardware engineering disciplines, consider the many areas of specialization that need to be mastered in order to fully deliver a system at Cisco. These disciplines apply to all products we design, with each product and application varying slightly in focus or issues to be resolved. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

26

The Cable Modem HWIC/WIC interface for 1800-3800 routers is shown. It provides cable network connectivity to the router; and transport IP traffic between the cable system head end and the customer site. The Cable modem daughterboard will receive data from the cable and perform any cable specific processing. It will format this data into Ethernet frames and send it over a 100Mbit MII bus to the Snowshoe baseboard. The baseboard FPGA will receive the Ethernet frame and send it to the host using either the HWIC DDR bus or the 8Mbit serial interface. The host sends transmit data over the HWIC DDR bus or the 8Mbit serial link to Snowshoe. The baseboard will convert the data to an MII format and send it too Cable modem for transmission. So within the design of a system like the 3845, internal interface specifications must agree, power, cooling, and mechanical integration must also occur. These features allow this platform to be used by Cable Operators, and businesses with cable interfaces. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

27

Most of the hardware interfaces will be industry-standard interfaces, e.g. Ethernet, T1, etc. Consider how you could help Cisco to expand the features and differentiate our products with proprietary functions or integrated functions that software can leverage to solve customers problems. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

28

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

29

Ok so I snuck this one in, but we cant overlook the most successful router on the planet! Hardware development on this platform has provided our customers the most flexible and extensible card set that allows for a rich set of features. For example, the VPN SPA card has features such as: Enhanced QoS features target congestion avoidance of the crypto engine Supports up to 2000 tunnels 8 Queues per tunnel provides traffic shaping before reaching the crypto engine Queues will act on DSCP/ToS settings The Sup32 PISA module does the deep packet inspection with the FPM ASIC delivering flexible, granular Layer 2-7 matching. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

30

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

31

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

32

With the CRS product, Cisco once again sets a high standard for competitors to equal both in terms of hardware and software capabilities. Being able to produce a platform that has functionality needed for the next 10 to 20 years is a very challenging task. The hardware capabilities of throughput lead the list for the CRS with 92 Terra bits of capacity, high speed optical lasers, and the ability to continue to operate while upgrades are being made to the system. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

33

The technology today enables designs in which so many networks can be connected together into such a small space that the energy carrying the communications becomes dangerously concentrated. It is easy to imagine a router the size of a room connected to multiple power grids in order to bring in the energy required to operate it, and the building itself requiring cryogenic cooling. This is actually a realistic possibility with high-density optical networking today. At some point the tradeoff is directly between speed and space. If you spread the devices out, the overall service slows down, but the ability to manage the energy and heat budget is easier to handle.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

34

The MSC is the high-performance Layer 3 forwarding engine. Each MSC is equipped with two highperformance, flexible Cisco Silicon Packet Processors (SPPs), one for ingress and one for egress packet handling. The MSC is responsible for all packet handling, including Quality of Service (QoS), classification, policing, and shaping, and it is equipped with three-level hierarchical queuing with a total of 16,000 queues. Elements on the Line Card are: Ingress Forwarding Engine RX SPP Ingress Queuing/Shaping and cell assembly Ingress Queue Egress Reassembly Engines From fabric Asic Egress Forwarding Engine TX SPP Egress Queuing and Shaping Egress Queuing Additionally, there is a Line Card CPU and an ASIC (Squid) which mediates all traffic going to the CPU. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

35

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

36

There is so much more to the product, I feel like we have just touched a couple of key points. For instance, the Interface Module provides the physical connections to the network, including Layer 1 and 2 functions. Interface Modules for the Cisco CRS-1 include: 1-port OC-768c /STM-256c Packet Over SONET (POS), 4-port OC-192c /STM-64c POS, 16-port OC-48c /STM-16c POS, 4-port 10 Gigabit Ethernet, 8-port 10 Gigabit Ethernet. The key point is that in this system, we see hardware components and designs coming together to solve customer problems.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

37

More information on CRS-1 and its component parts can be found online here: http://www.cisco.com/en/US/partner/products/ps5763/products_data_sheets_list.html

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

38

There is no more importance than speed and footprint in the core and the CRS provides an incredible amount of functionality in a small amount of space. Cisco has once again set the bar with this design. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

39

One thing you need to know about the history of Operating Systems is that they were originally designed for running user programs. Most operating systems have at their core a scheduler that time splices or shares CPU time either between programs or between users. For these systems, networking is more or less an afterthought and not part of the original design. Ciscos proprietary operating systems, such as Cisco IOS and Cisco IOS/XR were built from the ground-up to be network operating systems to prioritize networking in the design. At the core of a network operating system is how it handles events and how it manages devices that handle events. While modern operating systems implement networking, many of them excel as an end-point in the network, consuming data, rather than forwarding data. As more of networking is pressed into hardware, and as line cards become increasingly sophisticated, the role of software is changing. Whereas at one time it formed the primary switching path for data in the network, it is now much more a dedicated controlling system for the devices that do the switching. And in many Operating Systems we see that the software is primarily used to process data under conditions when the complexity of work to be performed on the data outweighs the need for speed. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

40

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

41

These are the operating systems we will be discussing. Because Cisco acquires so many companies with so many products, we have basically at least one product running almost every OS imaginable. There are a couple of Operating Systems that we should mention that are not in the above list. Most of our network management software the workstations run on Microsoft Windows. So we do have important Windows-based products. Also, VxWorks is another popular embedded systems development platform, and we have several products that use VxWorks. There is a long term initiative underway to simplify the number and variety of OSs we use. So, in the future we will likely see a family of Cisco IOS software, IOS/XR, and a COS (Commercial Open Services) platform based on Linux. Each OS has unique characteristics that make it better for particular applications.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

42

IOS is one of the most complex (measured in parts) inventions on the planet. It has evolved. Design philosophy: everything is a tradeoff between Good-Fast-Cheap. Good=features, Fast=data throughput, Cheap= Less $$$$. It was developed when 32KB of memory was EXPENSIVE. Most changed philosophy of IOS. When it was first written the ideal was "if you find an error on a running machine, crash and take a coredump so that we can find the bug. It's enforced quality control. NOW... customers can't tolerate that behavior. So... resiliency in the face of trouble ... even intentionally attack ... is a basic requirement of code today. Quality --> Security Bug Reduction --> High Availability. Most unique feature: Run-to-completion scheduling, single address space, no address translation: Embedded system. Consequence: Most OS's .... the more features you add, the more time is spent polling process that are not engaged. (Time splice scheduling). On IOS, we could load up features, and if they weren't configured --- they took up ZERO time. "Cisco's flaship OS, aging now, but still responsible for most revenue and keeps the Internet working.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

43

Cisco IOS is a special operating system and code base because it was, and continues to be, the primary source of income for Cisco. Cisco IOS is a corporate treasure, in that it contains the recorded thoughts and ideas of engineers responding to change over a long period of time. Developers often look at the Cisco IOS code for ideas and to see how others handled similar situations before. Porting code from Cisco IOS to other platforms, or examining existing code in Cisco IOS as part of designing a new implementation on another platform are common development activities at Cisco.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

44

IOS on Neutrino microkernel: a new IOS infrastructure aimed at evolving IOS into a highly available, easily upgradeable operating system The code base for native Cisco IOS and for IOS with the ION infrastructure is the same. ION also supports features like Process Restartability, ability to upgrade or apply a bugfix to a subsystem or patching a subsystem. These features are currently associated with IOX/XR and not with Cisco IOS. Philosophy: IOS co-exists with a microkernel providing address space protections. When there is a market need for better availability than IOS can provide, port the feature to Neutrino and let it run in a protected space for better resiliency Requires more memory, but similar disk space as compared with IOS. Upgradeability: The most common customer request is the ability to upgrade or apply a bugfix to a subset of the IOS software. ION allows upgrades and bug fixes at the subsystem and process levels. Restartability: Software inevitably encounters fatal runtime errors. Process restartability ensures that the system continues running, recovering with minimal service disruption Preservation of the IOS software investment: The code base for native IOS and ION is same. All IOS features and CLI is same thus no additional training is required for Network Administrators. Third-party software: The POSIX base provided with the ION infrastructure allows easy porting of third-party or open-source POSIX applications. Note: ION is not IOS on ENA. The original goals of ENA project were the same as those of the ION infrastructure project with the exception of preserving the IOS software investment. The result is two very different, mostly incompatible infrastructures that achieve the same results. An ION image can be run in either of the 2 modes on the router. Monolithic ION: This is the default mode of operation when a router is booted with an ION image. It supports restartability, but not patching. This mode can be treated just like a native IOS image. Installed ION: After you have booted an ION image it can be Installed on flash or disk by executing install file command. This creates a directory tree on the disk or flash with different subdirectories for base software version, patches & user supplied files (scripts, binaries and so on). This mode supports both restartability and patching. The ION images follow the same naming convention as same nightly IOS images, except that an ION image ends in vz while an IOS image ends in mz. ION image for 7600/Sup 720: s72033-adventerprisek9_wan-vz IOS image for 7600/Sup 720: s72033-adventerprisek9_wan-mz
Network Science Overview for Cisco Engineers 2007, Cisco Systems, Inc. All rights reserved.

Page

45

IOS on Unix Primary Purpose: Simulate IOS on top of "virtual" hardware that is channeled through Unix. Philosophy: Cheaper, faster, development and testing. Ex: simulate an interface so driver development can begin, even before the prototype is built. Platform independent image of IOS Native gdb for tracing and core dumps Image supports both Ethernet (LANCE) and Serial (HD64570) interfaces (2xEthernet and 2xSerial -default) Number of interfaces configurable IOS on Unix (IOU) is a fully working version of IOS that runs as a user mode UNIX (Solaris) process. IOU is built as a native Solaris image and run just like any other program. IOU supports all platform independent protocols and features. Multiple copies of IOUs can be connected to form a virtual network. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

46

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

47

IOS XR is the newest member of the Cisco IOS Software Family that has been developed to address the requirements for scale, availability, and service flexibility that arise from the creation of Converged Packet Infrastructures that consolidate voice, video, and data services. IOS XR has been specifically optimized to take advantage of the massively distributed processing capabilities of the Cisco CRS-1 routing system. Second OS Developed from the ground up for networking. This time for High Availability / High Speed networking. Design philosophy: "Take the most difficult problems we've learned from IOS and design an OS in which these dilemmas DO NOT EXIST." Should be able to kill any process at random and not drop a packet or a session Should be able to patch and upgrade easily on the fly Most unique feature: Microkernel architecture, Fast Switching INSIDE a process address space ... fault isolation and recovery. Second most unique feature: High Availability Group Services for distributed networking applications. Runs on the CRS ... the King of High-End SW for High-End HW. Most changed philosophy of IOS/XR. Was: "Build the replacement for IOS". NOW... "We can't solve everyone's needs with one piece of SW. The differences between low-end, middle, and high are too great. Specialization is required. IOS/XR is THE software for high-end reliable systems. IOS XR is a member of the IOS Software Family and is intended to support the unique multi-CPU, multi-shelf, distributed architecture of the Cisco CRS-1 and the requirements for Converged Packet Infrastructures. All other Cisco routing platforms will continue to be supported by IOS T or IOS S, the two other members of the IOS Software Family that deliver the most advanced features and broadest platform support in the industry. IOS XR includes many features intended to address the core requirement high-availability, including memory protection, control- and data-plane separation, restartable processes, process modularity, process and thread distribution, modular in-service software upgrades, patchability, non-stop forwarding, and stateful switchover. These features some of which are unique to the distributed processing capabilities of the CRS-1 are intended to provide 99.999%+ system availability. Likewise, high-availability has always been a design goal for IOS, which supports functionality such as stateful IP services and shares features such as control- and data-plane separation, non-stop forwarding, and stateful switchover with IOS XR. IOS will continue to deliver high-availability features in the future that are commensurate with the capabilities of the target platforms and the target market requirements. IOS XR is built on a pre-emptive, memory-protected, multi-tasking, microkernel-based operating system architecture that allows the process- and thread-distribution necessary to take advantage of the distributed processing, multi-CPU architecture found in the CRS-1. In IOS XR, features can be loaded and unloaded dynamically; processes reside in their own protected memory space, are restartable, and communicate with each other via an advanced, reliable message-passing mechanism. Also, IOS XR implements a two-stage forwarding architecture where forwarding decisions are made on both the ingress and egress line cards. http://wwwin.cisco.com/rsptg/sprtg/crbu/products/crs/files/crs_internal_qa.pdf Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

48

Philosophy: Settle on one flavor of Unix. Reduce overhead/development/maintenance costs Commit to Open Source and Commercial Open Source. Don't reinvent the wheel ... leverage what exists and is a de facto standard Create a standard platform for lower-end and for network applications development. (Currently, partner net app development on IOS is very difficult because it's closed source and a unique environment) WAV Audio File, Linus Torvalds settling the pronunciation issue of Linux once and for all. (He owns the trademark on the name). "Hello, this is Linus Torvalds, and I pronounce Linux as Linux!"

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

49

Tailored for networked storage... caching... redirection.... SanOS: Storage Area Networking Operating System Inherited from Andiamo development, built on Monta-vista kernel Added 10 major processes and support on HA, PSS etc. Converge all Itasca-based platform over SanOS Platform: Cisco MDS 9500 Series Non-blocking architecture The MDS 9500 Series has a 1.44 Terabit-per-second crossbar backplane, which allows it to support massive amounts of traffic without blocking Intelligent traffic management Fiber Channel congestion control Traffic isolation per VSAN Line-rate frame forwarding across 112 ports simultaneously Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

50

Cisco DCOS: software for the data center market; provides data plane protection and other services required for data center operations DC-OS stands for Data Center Operating System targeted at the Line Card CPU Goal is to integrate 3 fundamental technologies: Layer 3 Routing Layer 2 Bridging (current and next-gen Bridging) SAN Switching (Storage) As well as Service Module functionality (i.e. L4-L7 and Security) DC-OS is a next-generation operating system which runs on top of Linux and SANOS HA and modularity built in up front. DC-OS runs on the DC3 (aka C3) hardware platform. Multi-Chassis Clustering is a non-goal, centralized as well as distributed forwarding for cost-reduced line-cards, underlying operating system must be open. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

51

Costs are reduced by: Increasing storage utilization Achieved by sharing each storage frame among many servers and applications (SAN is better than DAS for storage utilization). Most studies suggest that DAS utilization reaches about 40%; and SAN utilization reaches 75% - 85%. Reduced Inter-Switch Links (ISLs) Using fewer Inter-Switch Links (ISLs) reduces the number of ports you need, which improves port usage efficiency and reduces overall costs (MDS advantage: MDS is a large switch, so you dont need to interconnect a bunch of smaller switches, using costly interconnects, since you pay per port). FCIP, iSCSI allows data storage in nearby data centers Having a migration path that includes FCIP and iSCSI is critical to increasing flexibility and reducing costs. Fiberchannel over IP allows for interconnection of data centers for greater flexibility. Cisco IT has connected two data centers storage into one SAN in SJ and again in RTP, and then has interconnected these two combined data centers across the country into one SAN over FCIP, to enable a database backup application. Internet SCSI (iSCSI) is important for any data center that has large numbers of smaller or mid-range servers to connect to a SAN (for reduced storage costs and management costs) - connecting servers to storage via iSCSI is often no more than the cost of a software driver, instead of the more expensive FC ports required for larger servers to access remote storage. Separate V-SANs on one network Help reduce cost by allowing multiple storage networks to be combined into one physical network, which increases utilization and reduces management costs, while still maintaining the logical separation that allows multiple business groups to share the same resource fairly and securely. Other Cost Reduction features: Managing multiple storage devices as if they were a single storage entity (SAN Advantage) Sharing backup resources easily among frames (SAN Advantage) Using fewer switches to connect to servers and storage (MDS advantage: MDS is a large switch, so you dont need so many of them) Availability and Manageability is improved by: Improved provisioning speed & ease of storage management The MDS allows you to add new switch line cards online and to upgrade microcode with no need for downtime; it also supports easier visual storage management and monitoring features, which makes managing large numbers of storage frames easier. In addition, improving storage utilization can translate into removing storage frames, which reduces the number of storage entities to manage. Multiple paths between servers and storage Since the MDS is such a large switch it can provide more ports to support multiple paths between servers and storage; if one path fails, traffic flows over other paths Other Advantages: Data center crowding is improved by: Migrating from SCSI to Fiber Channel (allows storage to be located in another part of the floor, or on separate floors) Migrating from Fiber Channel to FCIP or iSCSI (allows primary storage to be located in nearby data centers) Improved utilization results in fewer storage frames needed; each frame uses 1.5 Sq. ft. of expensive data center space. Provisioning speed is improved by: Allowing IT to upgrade frame firmware without affecting application availability, so upgrades can be scheduled at any time Being able to connect new storage using a large pool of available switch ports, rather than searching for ports in small pool s Using port channels where ISLs are necessary, which interconnects SANs more reliably and permits interswitch bandwidth to be upgraded without disrupting traffic flow Being able to add new switch line cards online, which eliminates downtime Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________ Costs are reduced by: Increasing storage utilization Achieved by sharing each storage frame among many servers and applications (SAN is better than DAS for storage utilization). Most studies suggest that DAS utilization reaches about 40%; and SAN utilization reaches 75% - 85%. Reduced Inter-Switch Links (ISLs) Using fewer Inter-Switch Links (ISLs) reduces the number of ports you need, which improves port usage efficiency and reduces overall costs (MDS advantage: MDS is a large switch, so you dont need to interconnect a bunch of smaller switches, using costly interconnects, since you pay per port). FCIP, iSCSI allows data storage in nearby data centers Having a migration path that includes FCIP and iSCSI is critical to increasing flexibility and reducing costs. Fiberchannel over IP allows for interconnection of data centers for greater flexibility. Cisco IT has connected two data centers storage into one SAN in SJ and again in RTP, and then has interconnected these two combined data centers across the country into one SAN over FCIP, to enable a database backup application. Internet SCSI (iSCSI) is important for any data center that has large numbers of smaller or mid-range servers to connect to a SAN (for reduced storage costs and management costs) - connecting servers to storage via iSCSI is often no more than the cost of a software driver, instead of the more expensive FC ports required for larger servers to access remote storage. Separate V-SANs on one network Help reduce cost by allowing multiple storage networks to be combined into one physical network, which increases utilization and reduces management costs, while still maintaining the logical separation that allows multiple business groups to share the same resource fairly and securely. Other Cost Reduction features: Managing multiple storage devices as if they were a single storage entity (SAN Advantage) Sharing backup resources easily among frames (SAN Advantage) Using fewer switches to connect to servers and storage (MDS advantage: MDS is a large switch, so you dont need so many of them) Availability and Manageability is improved by: Improved provisioning speed & ease of storage management The MDS allows you to add new switch line cards online and to upgrade microcode with no need for downtime; it also supports easier Overview management and monitoring features, which makes managing large numbers of storage frames Network Science visual storagefor Cisco Engineers number2007, Cisco Systems, Inc. All rights reserved. easier. In addition, improving storage utilization can of storage entities to manage. translate into removing storage frames, which reduces the Multiple paths between servers and storage Since the MDS is such a large switch it can provide more ports to support multiple paths between servers and storage; if one path fails, traffic flows over other paths

Page

52

C is the most common language for development of embedded systems because it is a high-level language that maintains isomorphism with assembler and the hardware. When data is established, for example, you can rely on it being at a particular physical location in memory where it can be accessed by assembler code. Whereas, with object-oriented languages the hardware is more abstracted making this kind of transition more difficult. In the past, when most switching occurred in software, the switching path was often implemented in assembler to ensure top performance, and even the number of instructions and CPU cycles consumed in that part of the code would become critical.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

53

Once again, we offer a small collection of questions you may want to ask. As part of your ongoing exercise, you should have also collected some questions of your own.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

54

At Cisco, an Initiative is a larger program that influences a large portion of the company and may take years to implement. Initiatives often involve fundamental objectives. But the implementation details can sometimes get very complicated.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

55

The concept of a Component Framework (CF) is a set of components or modules that will be the same across all instances of Cisco IOS, and eventually across all operating systems. This kind of broad-reaching modularity is quite difficult to accomplish. Some of the complications include: Providing two or more versions of a component (or appropriate compile-time and run-time switches in a single component) to enable a feature to span different uses. For example, in one OS the feature might be a standards-compliant, high availability, high-performance, implementation with all kinds of configuration options. In another OS, the feature might exist as a bare-bones, basic function, implementation without any special configuration options. How are these competing goals resolved into a single (or single set) of components? Justifying the development expense and the deployment risks. Certainly, in the long run, maintaining a single component is less costly than maintaining several similar components. However, getting to the single unified component requires a significant engineering investment without any obvious feature improvement for the customer. At the same time, the new code runs the risk of creating new bugs. The risks versus rewards have to be explained and justified, both in the short term and in the long term. Some code is not easily isolated from the OS or from other functions. Sometimes there are no internal APIs between code or they are not well documented. So teasing apart a feature from the rest of the software is another challenge. A common porting infrastructure implies a level of indirection between feature code and OS code that might cause a performance hit. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

56

More detail about modularity. In the diagram on the right you can see that the modules are grouped by function. On the left you can see that the idea is to implement modularity in an orderly way.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

57

Quality Software is another major initiative at Cisco. There are various kinds of testing. You can test existing features to make sure that nothing in the current update has broken functions that worked before. You can test compatibility between key features and other features, possibly on different platforms. But in any case, it is easy to calculate that you cant test everything. That leads to the need for more complex strategies for Software Quality improvement. One example is to use analysis tools to review code and ensure that it conforms to certain standards of use. It becomes important in this complex environment for Software Test Engineers to work with Development Engineers to apply intelligence in defining a test strategy for particular software.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

58

Security is a quality issue. Most security problems arise from hackers exploiting bugs or design limitations. These bugs or limits could, in practice, come up in normal use of the products. However, the chances of them occurring may be remote. Hackers attempt to locate these weaknesses and then increase the likelihood of the problem occurring making it a certainty if possible. So you see, there would be very few security problems if the quality of the code was extremely high. At the same time there are serious tradeoffs for our customers. They want products that are very secure. But they also want new features sooner. They want higher quality, but they dont want to wait a long time for it. So there is a balance between quality improvement and time to market. Another major software initiative is putting the tools and processes and testing in place to improve product security.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

59

Relentless improvement means that we never stop making our products better. And it also applies to how we go about making our products. We never stop trying to improve our workflows, our tools, our procedures, our technology for the purpose of making better products for our customers. A side note (and its on your employee badge/values card) is No Technology Religion. This means, we dont have time or energy to argue over which OS is better or which software or language is better. Every technology is suited to a particular circumstance. And in some cases, the choice between technologies may be almost arbitrary. As a company, we dont get hung up on this which is better argument. Instead, we absorb, adapt, and use all technology creates the best product for our customers.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

60

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

61

In this section we will be discussing a broad variety of topics and protocols used in networking, internetworking, control, video and voice. Throughout the section, you may wish to consider the questions you will need to ask regarding these subjects by writing those questions below the slides. At the end of the section we will offer some questions for you to use, but you will want to compile all your questions if this is an area you may be working in.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

62

Some of this may be review for some of you, for others it may be all new. We will start with common terms and methods, but quickly progress into technologies and enhancements that may be new to most of you.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

63

In this section we are going to discuss some of the key operational protocols that make the network work. These protocols and they way they interrelate will be important to some of you as you work within Cisco in your new positions. For others, you may not actually work on solutions that address these protocols, but knowing they exist and how they operate and interrelate is still important. We will begin with the OSI model overview and vantage point and quickly move into some things you may have never heard discussed before. We have been innovating many protocols that are discussed in this section. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________ In this section we are going to discuss some of the key operational protocols that make the network work. These protocols and they way they interrelate will be important to some of you as you work within Cisco in your new positions. For others, you may not actually work on solutions that address these protocols, but knowing they exist and how they operate and interrelate is still important. We will begin with the OSI model overview and vantage point and quickly move into some things you may have never heard discussed before. We have been innovating many protocols that are discussed in this section. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

64

Every communications device has some protocol stack operating within it. Usually there is a suite of protocols that will operate with varying functionality and features within the stack. Using open standards when internetworking is always a good choice, however, some protocols can be Cisco specific (i.e. they only operate on Cisco platforms). These proprietary protocols may offer enhancements not available from standard open protocols as well as encourage customers to further invest in Cisco technology. The Internet Protocol operates at what we call Layer 3 of the OSI model, but more on this in the coming slides. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

65

When all the protocol stacks in devices connected to the Internetwork use common protocols, they can all interoperate. From Telephones, to Television, to Video conferencing, as well as your laptop of desktop. With the Internet Protocol being the common denominator, all these networked devices can talk to each other. This same protocol stack operates within the network devices (Routers, Switches, and Gateways) that provide internetworking connectivity and switching/routing of protocol packets and frames. That said, the implementation of the protocol stack in network nodes is more involved, complex, and tightly coupled so that best paths can be communicated between them, and that they maintain high availability of services to the end users. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

66

Zooming in on this protocol stack a little, we see it consists of 7 Layers. Each layer represents a particular function or focus in the solution to making two devices communicate with one another. All protocol developed to this point historically have fit somewhere in this model. The model has been around for many years, and as we forge forward in developing new solutions to our customer problems, analyzing this model, perhaps modifying it with breaking the network operation may enable us to improve operability, reduce costs, or even improve performance. Some examples of the protocols that operate at these layers: Layer 1 - SONET or Ethernet Layer 2 - IEEE L2 bridging Layer 3 - IP Routing Layer 4 UDP/TCP transport Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

67

Each of the protocol layers as defined by the Open Systems Interconnect standards is shown above. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

68

Now that we have reviewed the OSI 7-layer Model, lets enlarge the view. What we see above is the interrelationship or peering model that occurs between each layer of the OSI Model. Some important points: 1. Layer 4 and above peer between end nodes in the communications process. 2. Layer 3 and below are peered and served by network devices providing connectivity between the two end points. 3. While these generic rules apply, clever features can be introduced leveraging this communications model (i.e. a layer 3 Router in the middle of the network may provide visibility to Layer 4 or Layer 5 information without disrupting the peering between end nodes so the network administrator can understand types of traffic on their network and perhaps differentiate access to network resources based on the type of application that is being served). Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

69

In this slide we see the same 7-layer model, but this time we have drawn a more complete model. In the front we see the same protocol stack. We call this the Data Forwarding Plane, as this stack is exactly how we forward traffic from one user to another as shown in the prior peering view. However, this time we go further indicating that there is both a control plane and management plane operating behind the Data Plane. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

70

Skinny IP means that at the network layer the IP protocol is a very simple, featureless, protocol. It has narrow interfaces up to the transport layer and down to the datalink layer. This made IP easy to port to new platforms. Cisco and others developed a lot of functionality on top of IP in the transport and application layers. When IP was ported, all of the functionality on top came with it, increasing its value. And this is eventually why TCP/IP won out over all other protocols, as the leading standard for networking. Some of the protocols were much more feature rich at the network level. Cisco also developed a lot of functionality below IP in the switching path and in the hardware. Not everything was made easier by Skinny IP. For example, the narrow interfaces significantly complicated the implementation of QoS, which would have been much easier to implement in other standards. Source: Cullen Jennings

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

71

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

72

The protocols mentioned above (RIP = Routing Information Protocol, OSPF = Open Shortest Path First, BGP = Border Gateway Protocol version 4) are all open standards and you can find their external specifications at the IETF (Internet Engineering Task Force) we site www.ietf.org and search through the RFC (Request for Comments) database. EIGRP (Enhanced Interior Gateway Protocol) is a Cisco proprietary hybrid protocol and we suggest you search for specification inside Cisco. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

73

These control protocols are designed for purpose, and network administrators are careful to select the correct protocol for the purpose it is going to serve the problem it is going to solve. Consider the issue of handling internal routes vs those exchanged with another Autonomous System: internal routes can have details associated with them, however, when we pass these reachable destinations to others possibly competing networks or providers, we may not want to pass along those details as they are too revealing of our network topology and design which may reveal a design advantage. Thus we would want to only provide a summary of reachability at the network peer points. Also consider that selection of one routing method over another may enhance performance and again establish performance improvements over a possible competitor. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

74

Cisco Systems participates actively and is one of the largest contributors of new specifications and functionality via open protocol specification areas such as the IETF and IEEE. We are constantly innovating and expanding the capabilities sets of the control protocols of IP. As Ip has dominated the Layer 3 landscape, these control protocols are now seen interoperating with Layer 2 and Layer 3 devices, shaking up the control plane and the OSI model. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

75

Development of this Common Control Plane through expansion of the IP Routing Protocols, addition of new signaling protocols, and introduction of new MPLS-based services has been a huge area of development in recent years. MPLS helps our customers do things more swiftly with less effort. This saves time and time equates to Operational Expense. It also brings new services such as Traffic Engineering to the product offering. Engineering Learning encourages you to expand your knowledge in all these areas, and we offer hands-on training using IOS and router platforms to experience all these capabilities. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

76

Another way we are modifying the traditional OSI model is Tunneling. Tunneling violates rigorous separation of the layers in the OSI Layered model. Above is just one example in which practical efficiency in the network overcomes theoretical design principles. Another example occurs with special-purpose hardware. For example, traffic filtering is technically a network or transport layer activity. However, hardware has been developed that filters traffic in the switching path. Hardware is technically in layer 1 (physical layer). Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

77

So here we see the tremendous effect of disrupting the OSI model and control plane. We see one label switched path existing across not just multiple networks, but multiple network types, all working in concert within the control plane. This is an MPLS cornerstone. Prior to the capability suggested above, each network layer would have its own control plane and network designers would have to manually stitch the layers together through either static or provisioning steps. Whenever something is statically provisioned, it is hard wired. If something fails, then there is little or no flexibility in the design. The key advantage to all this is the economic impact by lowering the operational costs of managing paths through the network. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

78

Another application of the tunneling concept is Virtual Private Networking. We will examine this application in this section. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

79

VPNs are a way of using a public shared network (low cost) in a private and secure way. The challenges of doing this are numerous, and customers are continually changing and expanding their requirements in this area. For example, in the latest developments we have seen customers that dont just want private and secure communications of a VPN solution, they want to also manage topology so hub and spoke, redundant hub and spoke, partial mesh, and combinations of these basic topologies are integrated into the service offering. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

80

An examination of the above slide shows us just how expansive the requirements are for both Layer 3 and Layer 2 VPN solutions. All the MPLS solutions in both L2 and L3 above have stemmed out of great innovations of control protocols based on MPLS tunneling and control capabilities. Some of the traditional methods are legacy services today, and enhancements continue at a very aggressive rate. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

81

On this slide we see some of the key designs that have emerged in MPLS L3 VPN services in the past several years. Starting with the VPN Routing and Forwarding instance (VRF) that separates end-user routes from global routes control protocols keep every customer separate and therefore private. With an integrated but subdivided control plane, the forwarding plane separates and privatizes to shared core network by encapsulating the IP packets into TWO labels (VPN plus NETWORK). They are transported across the network via only these labels, then emerge from the network as regular IP packets! The public network has been used like a private network domain, with successful separation of control plane information. Historical Note: MPLS is a standard based on a technology called Tag Switching that was originally a proprietary technology invented by Cisco. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

82

For Layer 2 VPNs, the model changes just slightly. Instead of a VRF, we have designed bridging capabilities into the Provider Edge (PE) device. This function coupled with a VPLS Forwarder or VFI now send customer Ethernet frames over the MPLS network core with labels acting as Pseudo Wires. The OSI Model here has been completely inverted L2 over L3 data Plane, and a unified control plane! There is a lot more here than meets the eye, as with L3 VPNs. Nonetheless, the uptake on these enhanced services, the desire to reduce operational costs, and the added features that come with the design have been very attractive to our customers. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

83

Now lets turn our attention to innovations in the protocol arena for what we call Real Time voice (Voirce over Ip or VOIP) and video (IP TV and Conferencing). Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

84

So far in our discussion we have shown how we can use protocols to enhance reachability, select the best path, combine layers of the OSI model, and unify the control plane for operational expense savings. All of this has focused on single sender to single receiver principles of operation. Now consider the challenge of transmitting a single source to tens of thousands of receivers. Or consider the challenge of converting voice into this traditional data model and properly control (set up and tear down) phone calls on this network. And what if there were a better way to integrate voice with Messaging and Email? Lastly, consider the performance issues associated with small delay tolerances of real time applications such as video conferencing and interactive two-way or multi-way voice. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

85

Lets begin with distribution of television using IP technologies. If we take the IP packet from the source and send it like unicast networking requires, we would have to Broadcast this packet i.e. replicate it thousands of times at the source. This would require tremendous amounts of bandwidth where the video server engages the network and is not a good answer. Luckily a smart engineer Steve Dearing (worked at Cisco) developed a solution Multicasting. We should also be aware that many of the components used today in distribution of video data are made by Scientific Atlanta a Cisco Company such as video encoders, and set top boxes.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

86

Dr. Dearing invented not just a method, but the control protocols that go along with that method: Internet Group Management Protocol = allowed subscribers to join a multicast group Protocol Independent Multicast = allowed Multicast enabled routers in the network to build topology trees and replicate video or audio packets where needed. Before the first user subscribes no traffic is emitted into the network, therefore not burdening the network. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

87

Here we see the second user subscribing, and note that only one copy of the packet exists on any one leg of the multicast tree. These trees are maintained by PIM and are pruned when subscribers delist from a group. Thus if all subscribers sign off, the multicast tree fully reverts to no traffic consuming capacity. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

88

Now we see the third subscriber and note how little if anything changes in the core network. So the point of this clever design is that the more subscribers that exists the less burdensome the service is on the network. Once again, there is much more here than meets the eye. From Shared Trees to Source Based Trees, and 3 versions of IGMP. Development and enhancements continue to this day, particularly in the area of Multicast support within VPN technologies. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

89

In order for video and TV to be integrated with IP services (convergence), we need to convert the analog video to digital video. This is accomplished with hardware Coder Decoders (CODECs) using compression techniques that minimize bandwidth while maintaining picture quality two difficult and opposing forces. Here we see the bandwidth results of compressing Standard Definition Television/Video. For HDTV quality, MPEG4 CODECs will output somewhere between 10 to 12 MB/s. Developments are ongoing in the MPEG arena with the new MPEG7 method as well as signaling and control protocols to set up and manage Video on Demand, Conferencing and other related services. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

90

Similar to Video, voice also is encoded and decoded using different algorithms above we see the G.711 specification from the International Telecommunications Union (ITU). It offers little compression but great quality. Other compression algorithms include G.729, etc. Developments also answer questions like What do we do if the listener is not talking? If we dont send any bits, we must recreate them on the speakers end, perhaps even inserting White Noise so that the individual does not think the connection has been broken. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

91

Now that we have converted the voice and video to digital 1s and 0s we need two supporting systems and their associated protocols. First we need a signaling system to users can call each other but by call we mean enhanced call. For this function a new protocol called Session Initialization Protocol (SIP) has been developed. Once a call or video conference is in place, we then need the network to handle this traffic in a very special way, monitoring and insuring the Quality of Service or QoS is maintained. The protocols designed for this duty are Real Time Protocol (RTP) and its team-mate Real Time Control Protocol (RTCP). Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

92

If you consider the challenges in managing millions of calls on the internet, it seems almost daunting until you begin to break down the problem and then solve each part. A SIP network consists of a number of components, each tuned to handle a particular part of the VoIP challenge. There are agents and servers that work together to provide the full functionality of normal voice calls we are all used to. That said, there are a number of enhancements that you may not be used to: like location, redirect, and presence. These functions add new features that automatically find you making your office phone seem like your home phone , or your cell phone both or vice versa depending on where you are. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

93

The SIP operation is detailed above. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

94

Now that we have a way to set up and tear down media sessions for voice and video over IP, we need to control the performance of these flows when they coexist on the network with other services like email, file transfer and web surfing. The two protocols shown work in concert as a team to accomplish the task. RTP is injected in a stream of voice and video while RTCP provides feedback so buffers and CODECs can adjust their activities to maximize performance of the network. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

95

With all that background, now consider the questions you may want to ask potential teams if you are going to work within any of the technologies, protocols, or methods described in this section. We have compiled a beginning list for you above, but you may want to add to these from the notes you have taken in this section. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

96

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

97

Systems Engineering is a cornerstone of our strategy moving forwards and a key initiative for our focus on quality, on products that work together for our customers, and on reducing the complexity of our products. In this section we will introduce you to a taste of Systems Engineering disciplines. More classes are in development. One thing you need to understand about Cisco is that we acquire companies at an incredible rate. And although the technologies that we acquire may be completely different or use a completely different approach than what we already produce, our customers expect that these technologies will be integrated and will work seamlessly with the rest of their Cisco solution. For this reason, a lot of what we do at Cisco is Hard Systems Engineering. One Distinguished Engineer has described it as replacing the engines on an airplane in flight. In this environment it is important that you understand how many people are relying on you and your decisions. A single line of code might be used on a dozen products. And all the people that work on those products might depend on that single line of code being correct and working properly. There might be 14,000 people depending on the functionality of a single line of code. And its important for us to understand how our contribution fits into the whole. These are just a few reasons why Systems Engineering disciplines are important at Cisco. Source: Dave Cavanaugh, Charlie Giancarlo, Cullen Jennings Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

98

Disciplines are different ways of looking at and prioritizing the computer science problem, and therefore produce solutions with different qualities. We will briefly examine three disciplines that are important at Cisco This diagram summarizes, more or less, 30 years of Systems Engineering development in Networking. Now, of course, its impossible to do justice to this broad and deep topic in a few slides in an hour of class time. Every one of the quadrants in the diagram can, and is, the subject of several graduate level college courses. However, it is important for you to have some place to begin thinking about these subjects and some framework to begin learning about and discussing them. The story is told of the Engineer who was trying to eat an apple. He turned it round and round trying to determine the perfect place to start. He applied all kinds of reasoning and analysis to the problem but still could not arrive at a perfect solution. And after some time, he just bit the apple. With complex subjects such as Systems Engineering, sometimes there is no perfect starting place; you just have to bite the apple. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

99

Embedded Systems is a core technology at Cisco. Understanding the basics is essential to your career at Cisco. If youve never heard the term before, it refers to special purpose computing that is embedded in or integrated into a device. For example, the controls on a microwave oven are an embedded system. Inside somewhere there is a computer which receives the keypad input, displays messages and operates the internal parts of the device. A calculator is an embedded system. Most automobiles today have literally dozens of computers embedded systems in them. An embedded system can be entirely implemented in hardware, meaning that the program that the system uses is burned permanently into a memory circuit, or it can be implemented in hardware and software in flash memory that can be upgraded or replaced. Some devices, such as Cell Phone, were entirely embedded systems when they were first implemented. But today, they are increasingly looking more like general purpose computers that can be loaded with programs and adapted to a variety of purposes. In the next slides we will explore some of the concepts of embedded systems. Many (most) of Ciscos products are embedded systems special purpose devices rather than general purpose computers. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

100

What are the differences between an Embedded System and a Computer? Software development is different. On general purpose computers, the target computer itself is often used as the development platform for new code. In embedded systems, general purpose computers are used to develop a system image that is loaded onto the target device. The compiler on the build server actually generates machine code that cant run on the computer it can only run on the CPU of the target device. The image must be loaded onto the device, either via network transfer, net booting, or copying to flash memory. And then the device must load (or more commonly, boot from) the new system image. Debugging in an embedded systems environment is often complicated. For example, the debugging elements must be included in the system image. And these elements connect back to the development server via networking to report the status of the test system. Development on two or three connected but independent devices is different from developing on a single computer where all the status, resources, and timing is local. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

101

Dont assume that you have all the resources of a computer available. Hardware development is different. By definition, the hardware of an embedded system is special purpose. Sometimes this means that the actual integrated circuits were designed and built just for a particular application. These are often called ASICs or Application Specific Integrated Circuits. Cisco has pressed function traditionally implemented in software into hardware, or at least elements of it. For example, we have ASICs that switch packets in hardware, that perform filtering and packet identification (for security and policy implementation), and even entire routed protocols such as IP have been implemented in hardware. With these kinds of special purpose circuits available, the software that controls them is radically different from a full software implementation of the feature. In most cases, because there is no need for general purpose computing, the hardware is stringently designed for the particular application. If there is no hard disk needed, then none will be included in the design. If the control program can fit in a tiny amount of RAM, then extra memory wont be included. This keeps the cost of the units down. But it makes special demands on embedded systems developers to understand the constraints of the platform. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

102

One value I want you to take away from this class is that the answer to what is networking is different depending on the application and the circumstance of the customer. There is no single best solution. Let me give you an example. In one case we are trying to make a router that can be distributed in countries with developing economies. In this case, an older, slower, less capable CPU might be at the core of the router in order to drop the overall production cost. Faster and newer is not always better. Its important to understand the needs of the customer. Thats what our designs reflect. Not some ideal of technical perfection. Very often in embedded systems engineers have to deal with several budgets. One budget is CPU cycles. For example, on a particular platform there might not be enough processing cycles between network events to enable a full implementation of a feature. Do we then leave out the feature or implement a subset that the hardware can support? Or is the feature important enough to our customers to warrant adding a new product or redesigning the product to gain more CPU cycles? These are the kinds of tough business questions that have to be decided. Another common budget is memory. Very often many engineers are working on code that will run together in the same system image. The memory is a community resource. And people have to develop the discipline to use it sparingly. In general purpose computing this is hardly ever an issue today. Likewise, program priority is another critical issue. When should one bit of code run relative to another? The CPU is also a community resource. And if one bit of code hogs the CPU, others might get starved for service and the network application they support could fail. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

103

Here are some question that will help you get oriented in your current work environment or to learn about your prospective work environment. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

104

Embedded Systems is a core technology at Cisco. Understanding the basics is essential to your career at Cisco. If youve never heard the term before, it refers to special purpose computing that is embedded in or integrated into a device. For example, the controls on a microwave oven are an embedded system. Inside somewhere there is a computer which receives the keypad input, displays messages and operates the internal parts of the device. A calculator is an embedded system. Most automobiles today have literally dozens of computers embedded systems in them. An embedded system can be entirely implemented in hardware, meaning that the program that the system uses is burned permanently into a memory circuit, or it can be implemented in hardware and software in flash memory that can be upgraded or replaced. Some devices, such as Cell Phone, were entirely embedded systems when they were first implemented. But today, they are increasingly looking more like general purpose computers that can be loaded with programs and adapted to a variety of purposes. In the next slides we will explore some of the concepts of embedded systems. Many (most) of Ciscos products are embedded systems special purpose devices rather than general purpose computers. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

105

Here is an example of a Real-time Systems problem in an embedded system. An automobile has multiple sensors in the front and rear bumpers, and also in the doors. When the bumpers are crushed, or the doors are struck, the sensors are triggered and send a message to a microcontroller. The microcontroller then must make a determination as to which of the cars airbags should be deployed and when. This is literally a split-second decision. Deploying an airbag when its not needed could damage the occupants and cause a wreck. So it is very important that the microcontroller gather as much information as possible from the sensors to determine that it is an actual collision and not something else. In a front-end collision, the air bag in the steering column must be deployed. Part of the cushioning occurs from the expansion of the air bag as the driver impacts it. If the airbag deploys too soon, then this value is lost, and the driver may sustain much greater damage. Also, the driver should be able to see and maintain control of the vehicle till the last possible moment. If the air bag deploys too late, then the driver will already be moving at a high rate of speed and may impact the steering column with more force, sustaining worse damage. In this example, the software loaded into the microcontroller is absolutely critical to safe operation of the vehicle. Calculations down to the millisecond must be related to the processing speed of the controller and the time that it takes for a signal to travel from the sensors to the controller and from the controller to the airbags. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

106

Lets take a network example; a video. The video player has a delay buffer built into it. And the video is played at a constant rate for the user. If a packet contains data belonging to a frame that has already been displayed that data arrived too late. There is no need to display it or store it because it has lost its value. The user already experienced a drop out in the video. So that data is just dropped. Because the data was going to arrive too late to be used anyway, it could have been dropped on the server side and never sent recovering the network resource that would have been used to transport that packet so that it could be applied for other purposes. If a packet arrives too soon, it is just queued up until the frame that the data belongs to is to be displayed. However, over the course of an hour video, a lot of data could get queued up if it is arriving too quickly. It the video is pre-recorded, it is possible for the data to be transferred faster than it was captured and faster than it can be displayed. In this case, if the buffer on the player fills up, there may be no place to queue new data, and so it will have to be dropped, creating a drop out for the user watching the video. In this case, some kind of control communication between the player and the server would be useful. When the buffer starts to fill up in the player, it could send a message back to the server telling it to slow down or even stop and wait until the buffer can be drained some. What would you do if you did not have control over the player software and how it worked, and didnt have control over the server software and how it worked ? What if you only controlled the forwarding of the data through the network? In this case, you might gather information about the behavior of the server and of the player real time information that would serve as the constraints for designing your transport service. In the above diagram the blue section shows the on-time range. That is the period during which, if packets arrive, the video can be sustained without halting or without drop-outs. If your underlying network transport was too fast delivered the packets too early then you might identify the flow and queue the data in the network, using QoS for example, to ensure that the server didnt overrun the capacity of the player. On a slow network, perhaps you would transport the data and queue it in the network very close to the destination, and buffer up quite a bit of the data prior to delivering it to the player. That way there might be enough data already transported to sustain the video on the player side even if the network transport itself doesnt have the speed to sustain the video. You might implement both queuing and buffering to even out the delivery rate on a bursty and inconsistent network.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

107

Above are the reasons that it is important to learn the Systems Engineering discipline of Real-time programming. If you dont know the real time constraints of the problem, you might over or under engineer a solution. An over-engineered solution might be inefficient. It might perform a lot of unnecessary tasks that dont provide value to the customer, causing the solution to be less competitive in the marketplace. Or perhaps, ignoring the time constraints, the solution might be prone to failure or might just not work. An under-engineered solution might not account for changing circumstances or the variety of customer networks in which the solution might be deployed. One customers network might be extremely bursty and busy. Another one might have very little bandwidth. Another one might have paths through the network that are restricted by policy, and force the video along a sub-optimal route. Very often an under-engineered solution will function in the original environment and application for which it was designed, but as soon as that use grows or as soon as the solution is applied in a different context, scaling or quality issues arise and cause errors or failure. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

108

Here are some more real world real-time examples from Cisco.

The third example is a real-time problem from routing. In a RIP routed network, the RIP protocol sends information to its next-hop adjacent neighbors with routing updates that communicate how to reach locations in the network. These updates are sent every 30 seconds. In a four-router network, the maximum time for convergence is just two minutes. However, consider a very large network with hundreds of routers. Perhaps the longest path through the network the diameter is 13 routers. Thats going to take 6.5 minutes for convergence. And that might be too long for some purposes. Ciscos EIGRP is a distance-vector protocol that is similar to RIP. However, EIGRP supports Flash updates, which means sending an expedited message across the network to a remote location. In this example, the update (not the whole routing table) is sent immediately without waiting 30 seconds. The network converges in seconds or faster instead of in minutes. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

109

In the examples weve discussed, youve gotten the flavor of Real-time Systems as a discipline. Programming for a Real-time application is often made easier (depending on OS support) by Pthreads, which has built-in APIs and infrastructure to enable programming to time constraints in a higher-level language, without having to resort to counting CPU cycles. Here are some of the strategic questions one might ask when confronting a Real-time problem. And the overall question can it be done? Can the mission be accomplished within the time constraints given the available resources? Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

110

This example comes from Cisco IOS packet buffers. As you progress in your networking career, youll often discover engineering decisions that have been made or influenced by real-time constraints. One time I came upon several lines of code in a Device Driver for an Ethernet Linecard. It read: set_status(n); //* //* DO NOT REMOVE //* i = 0; while ( i < 3){ i++; } get_status(n); The variable i was not used anywhere else in the code. With much research I discovered that the particular chips took some time to update a status bit inside the interface. And without a slight delay before reading the status, it would sometimes report out the old status incorrectly, causing the entire driver to assume the wrong state and take incorrect action. The brief loop gave time after setting the status for the hardware to catch up and report back on whether the set function was successful. The code itself is, from a programmers perspective meaningless. But from a Real-time perspective its mission critical. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

111

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

112

The problem with Distributed Systems is that its a very, very, broad topic with no obvious starting place. Distributed Systems is more than most systems disciplines, a theoretical abstraction. You have these separate things that are not in the same place, and they want to do something together. Now that abstraction applies to people collaborating on work from different cities. It applies to a farm of database servers that are supporting a single application. It applies to a collection of linecards in a router that work together to forward data. And what happens with Distributed Systems is that its difficult to get very far in the study without selecting a realworld example and using that to illuminate the learning. But by doing that, the immediate applicability to other circumstances is lost. It requires interpretation, to apply to the different domain, making it difficult to understand. So, for example, if I am learning about Distributed Systems in the context of a collection of CPUs working together on a single computing platform, but my application is routing protocols, where the CPUs are spread out in separate devices on the network and communicate over the network interpreting principles from one context to the other becomes cumbersome. I think one thing that everyone who has studied this topic will agree on: Distributed Systems is a hard discipline to learn. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

113

Here are the formal definitions.

Part of Distributed Systems is conceiving of strategies for overcoming the three conditions or the consequences of those conditions.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

114

It is important to note that a Distributed approach may not be worth the extra Engineering effort. There are certain cases where distributed design makes good business sense, and other situations where it does not. For example, a distributed design might be used to create a cell phone network that never drops a call a high availability cell phone network. But do people want that? Most people are fairly tolerant of cell phones dropping calls occasionally. And would customers be willing to pay 5x or 10x the price of the phone to have this service? Probably not. So it is important to understand the alternatives that are presented by a possible Distributed approach to a problem. But not to jump into it without understanding whether the effort is justified. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

115

Here is the whole thing in miniature. You have two devices. They communicate over a network which provides imperfect communications. So sometimes, sooner or later, a message will not be delivered, or it will arrive late (remember Real-time?) or it will be garbled and arrive in an unusable or confusing state. Now the important thing for our example is that both devices need to have the same time or to hold the same time for the system. If someone performs task A on the first device at 12:01 and someone performs task B on the second device at 12:02, we want the entire system to know that Bs change is more recent than As and therefore takes precedence. To do that, A and B need to synchronize their clocks. Well, first you have the problem of who has the officially correct time. But lets say we sort that out by always making A be the authority, or by making a negotiation so that the device with the lowest IP address always has the official time. In any case, they will occasionally need to synchronize their clocks. How often? But what happens if the clock-update message is missed? What if it gets dropped by the network? This is a failure condition. The overall system ceases to function properly if this condition arises. So that forces us to consider how to recover from that case so that system failure is postponed. And that leads to a more complex strategy. Thats sort of the path of Distributed Systems: existing failure conditions lead to more complex strategy, which leads to more complex failure conditions. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

116

These are the two most common scales that people use when discussing distributed systems at Cisco. One of them is distributed within a device. The second one is distributed within a network.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

117

In these examples we see the system layout for two Symmetric Multi-Processing (SMP) platforms. Both platforms use four CPUs. The platform on the left is Tightly Coupled. The CPUs coordinate using the system clock to stay synchronized and shared memory to coordinate and exchange information. Is this an example of a distributed processing system? The platform on the right is Loosely Coupled. Each CPU has an independent clock and private memory that is only accessible to its CPU. The CPUs communicate over the system bus. A: The first system is most likely not distributed. The CPUs stay in synchronization using a central timekeeper and coordinate activities with global state information stored in shared memory. The second system could be a distributed system. Each CPU runs on its own independent clock and maintains its own view of the system with locally hosted state information stored in private memory. Coordination and synchronization occurs over the Bus communications medium. However, which CPU has the correct view of the system state? And what happens when a message from one CPU to another has an error and is not delivered, has incorrect information, or is retransmitted and therefore doesnt arrive on time? Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

118

The Central Server could be a single database application. All the stations submit data to and retrieve data from the central database. Distributed or not? The Clustered Servers are also a database application. However, each system has a partial copy of the overall database. If a request comes in to one server, and it doesnt have the data, it redirects the requestor to another server. Also, the data may be redundant from one server to another. So if one of the servers crashes, the data base is still available (although at reduced capacity). Distributed or not? A: Central Server is not distributed. The overall system state occurs inside the Central Server. Also, although multiple clients can make changes to the database at the same time, the server can only process one change at a time, so it queues up the change requests and enforces a serialization. So the database itself can never be out of synch. The Clustered Servers example could be distributed. Changes to the database could enter any of the four systems. After that change occurs, for some period of time, one servers view of the database may not be identical to another servers view of the same data. The Servers have to synchronize on the most correct view. What happens if one of those update messages is dropped, mangled, or delayed in delivery? Complex failures could occur. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

119

For those who are already knowledgeable in Distributed Systems:

To some extent, trying to communicate anything of value on such a deep topic in such a brief time is a losing proposition. And with this topic there is no good place to start and no agreed-upon standard for teaching it. Just try to find an introductory course on the subject especially an undergrad course. Not too many around. However, everyone must start somewhere. And it is our opinion that Distributed Systems is so important to the future of our industry that it should be introduced, at least in concept, so that awareness will be raised as to its existence, and perhaps its value. If we have motivated interest to learn more on the topic that is success enough.
Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

120

Over the next several slides we are going to play a simple game that I call Developing a Distributed Algorithm. We are going to take the simplest case that I can think of, two stations wanting to talk, and we are going to imagine that the Distributed Conditions weve described are true. Namely: (1) Stations A and B do not exist in a perfect world any system could crash at any time and any message could be dropped at any time. (2) There is no central repository for truth no global system state that A and B can run to for help. They have to figure out how to stay in synch with one another just by sending messages. (3) There is no central clock. Any message could be dropped or delayed and delivered late. In the first instance, A sends a message to B. Of course that message could be dropped in transit and A would never know that it didnt get delivered. Just a little side note. The MSG could have not been delivered because of an error in the communication path, OR because B crashed and re-started and was out of service during the period that MSG was delivered. So, with only slight modification, everything we will discuss applies to surviving a process or device crash and restart. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

121

For our first step of Distributed Algorithm development, we will have B send an ACK (acknowledgment) back to A after it receives a MSG from A. And A will wait until it gets the ACK before it tries to send the next message. This seems to restore system integrity. A always knows if B has received the last message. Doh! Wait a minute! That didnt solve the problem. Because if A sends a message and it gets dropped, then waits until it gets an ACK before continuing it will wait forever! B waits forever for A to send a MSG. And A waits forever for B to send an ACK. Our system has just deadlocked!

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

122

To fix this problem, lets implement a timer in A. After A sends MSG, it sets its timer for some reasonable period of time. A waits for B to send an ACK. If the timer expires before the ACK is received, then A can assume something has gone wrong and will try to send MSG again.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

123

Uh oh! I just realized we have a problem. Weve protected the system against a dropped MSG. But what happens if the ACK gets dropped rather than the MSG ? In this case, A sets a timer waiting for an ACK. Now B has sent its ACK and doesnt know that the ACK was dropped in transit. As timer expires without getting an ACK, so it re-sends its MSG. The only problem is B thinks that the first ACK got through. So it thinks that it is getting the SECOND MSG from A, not a re-transmission of the FIRST MSG. And B sends an ACK to what it thinks is the SECOND MSG. When A hears the ACK, it thinks that its FIRST MSG has been received and that this is the an ACK to it. A happily moves along thinking that FIRST MSG has been delivered. B meanwhile, thinks that SECOND MSG has been delivered and it is waiting for a THIRD MSG. B has duplicated information about the system state. Therefore, A and B now live in different worlds they are out of synchronization. They have a different opinion about the state of the overall system and can no longer coordinate reliably. The system itself has lost integrity. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

124

Lets try three-way messaging. A has to send an acknowledgment that it has received and acknowledgment from B, which we will call an ACK-ACK. Our new rule is that after B sends an ACK, it has to wait until it receives an ACK-ACK before it can receive any other MSG. Lets try it out

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

125

B has sent an ACK. As time expires and it re-transmits MSG. B has not yet heard an ACK-ACK so it cant receive a new MSG. B therefore assumes that the new MSG indicates its ACK didnt make it. So B re-transmits its ACK. This time the ACK makes it and A sends an ACK-ACK. Yay! We did it!

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

126

Uh oh! What happens if the ACK-ACK gets dropped!? A has received an ACK to its MSG and its sent an ACK-ACK. So it assumes everything is fine and it is ready to send a SECOND MSG. B meanwhile, has not heard an ACK-ACK. It is sitting and waiting for a message that A will never send.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

127

We can solve this problem by giving B and ACK-ACK timer. If B doesnt hear an ACK-ACK before its timer expires, it sends another ACK message. A hears the ACK and re-transmits the ACK-ACK.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

128

While it is waiting to hear an ACK-ACK it can receive no new MSGs. If B receives a new SECOND MSG it will ignore it and send an ACK. But A has already received an ACK for its first MSG. When B re-transmits the ACK because its ACK-ACK timer expired (or because it received a message while it was holding for an ACK-ACK), A thinks this is an ACK to its SECOND MSG. And the ACK-ACK it sends is for its SECOND MESSAGE, not its FIRST MESSAGE. But B thinks it is for an ACK-ACK for the FIRST MESSAGE. Result: A thinks the system is on MSG-2 and B thinks the system is on MSG-1.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

129

I think you have had a feel for the progression of failure conditions that can arise, and how strategies are constructed on top of the problem to circumvent the failure, to postpone it, and to mitigate it. The actual study of Distributed Systems involves understanding the various strategies that have been invented for different circumstances, how theyve been implemented, the positive results, and the limitations of applicability. Here is some vocabulary for further study: Coordination and Agreement, Transactions and Concurrency, Replication, Group Services, Event Notification. Some of these subjects exist in both Distributed and non-Distributed flavors. For example, Event Notification is a general systems problem. However, it takes on special meaning in a Distributed context when anonymous members of a group have to notify the group of an event. And in this case, special kinds of failure conditions can occur and special kinds of steps are necessary to ensure consistency. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

130

I would last like to mention that IOS/XR has implemented a full Distributed Systems infrastructure. The infrastructure supports Group Services (processes can live and die but the overall system purpose survives the life of the individual), and a whole series of services constructed on top.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

131

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

132

Up to this point we have discussed three Systems Disciplines: Embedded Systems, Real-time Systems, and Distributed Systems. Each of them is a study in itself. And together they can provide significant insight into many networking problems. And there are many more Systems Disciplines that we could have discussed. These are just a few of the most common ones at Cisco. However, there is a fourth discipline that you must learn to be an effective contributor at Cisco: and that is to place Systems Engineering into a business context. This can often be a difficult thing to learn. Engineers often want to focus on the problem on solving the technical problem. And as important as that is, it always occurs within a business context and a customer context. The best technical solution may not be the best solution for the customer. It becomes important to generate a number of potential solutions and to look at them in the context of the business considerations to understand how the alternatives provide different values at different costs for our customers. Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

133

Every solution occupies some spot on the triangle. It is important to intellectually plot the tradeoffs of alternate solutions, and also to examine customers interests and needs. What does quality mean to the customer? Are our customers telling us that they want less expensive product and they would be willing to give up some features for that? Are they telling us that they would sacrifice speed but not features? Would they pay more to have higher quality, more reliable features? A lot of these questions are answered in the GEM or CPDM Specifications. The documentation process surrounding project management in Engineering is where many of these questions are posed, answers provided, and then reviewed.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

134

Example: The airbag. Its an embedded system and a Real-time system. Less obvious example: An IP Telephone. Its an embedded system. And there are some very serious tradeoffs in price/features in this market. At the same time, ensuring that communications are sustained in a tolerable way (ie Telephone, not Walkie Talkie) which is a Real-time problem.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

135

In one sense a Routing Protocol is a distributed design. Each router holds a routing table that reflects the state of the overall system the topology of the network.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

136

And now finally, we apply the Business Discipline: Technology is only valuable when it serves people. What happens if you engineer a great solution, but nobody wants to buy it? For this reason, Cisco is a customer-driven company. Many companies are research-oriented. They create a solution and then look for someone to buy it. Thats not how we work. We find a customer, identify their need, and find a way to fill that need. We almost never invest in a solution without existing customers and clear-cut problems that are being solved. What if you engineer a solution, but nobody knows how to fix it when things go wrong? Things will go wrong. Someone will eventually take your solution and apply it outside design specifications. You will have designed it to work with as many as 100 units in the same network, and theyll try it with 1000. Or theyll try to use it for a purpose that was never considered and for which it wasnt designed. What have you done in your engineering to plan for this circumstance to ensure success? What if you engineer a solution, but its too complex to use? That could happen as well. In fact, some of our products jut provide a simpler graphical interface for configuring equipment. Have you asked What about this alternative is going to ensure that the solution cab be sold, used, and repaired? And How do the other alternatives stack up, even if they arent as technically cool ? Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

137

Just a few more examples.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

138

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

139

True story: I was reading in some Cisco IOS code to understand how we deal with error detection. And I ran across a test for an impossible protocol condition. It was two bits that represented two state conditions in the protocol. Well, the two states are mutually exclusive. And bits were defined in the standard such that they could both be set off, and one or the other could be set on, but the standard declared that having both bits set on was undefined and reserved for future use. In the code that implemented the protocol, when it detected both bits set on what did it do? Print out an error message? Ignore the condition? No. It immediately took a crashdump and knocked down the whole system. My first thought: Wouldnt the hackers like to know this? You could take down a router with one ping packet with two bits set. My second thought: Was the person that wrote this code, crazy, stupid, or both? So I took the code to a more senior Engineer and showed it to him. What gives? I asked. Ohyeah he began. I remember that. See, in the old days the customers wouldnt report errors back. So we had bugs in our code that we didnt discover because people would just ignore the error messages. So in order to make sure we were being informed of the bugs, we made it a practice to crash the system on any error. That way we would find out about the bug and be able to improve the quality of our products. So youre telling me that the purpose of taking a crash in this code was to improve the quality of our products? Right. Of course thats the opposite of what we would do today. Because High Availability is most important. Here better give me that I better go change that code When you see something that doesnt look quite right, always question the circumstances and the business climate in which the technology originated. Ninety-nine times out of a hundred, the decision embodied in the product was the best available decision at the time. It is always best to try to understand why a particular approach was used before you change it. It could be hiding something deeper about the situation.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

140

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

141

Human networking being able to connect to people and find the right intellectual resources in the company, is an important skill to develop for your career at Cisco.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

142

The TEAM owns the problem. We have a design and development process in every part of Engineering. Some parts of the company use CPDM, some use GEM, some use PLS. Get to know the local procedures. In general, an Engineering process involves a series of documents and decision gates. And engineer might use a documentation template from EDCS to create a planning document, such as a Functional Specification. That document will then be reviewed and refined with the help of other team members and possibly with the help or expert advisors from outside the team. Then the document is provided to sponsors and stakeholders for review and approval. Finally, the document is committed or approved formally at a meeting.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

143

Generally, during your first six months on the job you will be learning how to do the job, and focused very much on that. However, the further you go in your career at Cisco the more you will work with people having a variety of specialties and experiences. The more you know about the entire design-to-customer process of creating and shipping a product the better. And often you can enhance your value to the company by becoming competent in a variety of disciplines, leveraging what you know from one discipline to solve problems in another discipline.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

144

We are focused very much at Cisco on how to put the technology into the box how to create networking. Someone has to take that technology out of the box, set it up, make it work, and keep it working. Our products are often complex. Sometimes they are filled with features and options (knobs) that are not well documented. Or the document explains what the options ARE but not HOW and WHEN to use them. And sometimes our products produce error messages that do not intuitively translate into the kind of action the Network Administrator is supposed to take.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

145

Sometimes we develop a project for a single customer a first customer. And it is important to not accidentally tailor the solution so much that it becomes a single-user solution without value for other customers.

Key Questions I need to ask: ________________________________________________________________________________________ ________________________________________________________________________________________ ________________________________________________________________________________________

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

146

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

147

I'm showing you this slide again because I want to reiterate where we've been and what we've accomplished.

[*] Level Set [*] Sampling [*] Scope


The first bullet reminds us that this is a level-setting course. As you leave this class you now know that you've been exposed to the very basic foundations of networking at the same level as everyone else in this class. Nobody is going to walk out of here not knowing what the OSI Model is or that Cisco uses a variety of kinds of specialized hardware and special kinds of software, are they? The second bullet reminds you that you should hopefully feel like you didn't get enough from this class. By that I mean that the class is supposed to wake up your apetite for knowledge without giving enough to bed it back down again. So if you are thinking that you wished there was more -- then you aren't alone. Probably everyone in this room wants more. Just know that it isn't about this class. It's about your continuing education at Cisco. Finally, I think by now we have totally handled the illusion that so many people walk into Cisco with -- and that is that using a network or setting up a network is the same thing as creating networking and developing network devices. They are two totally separate and different things. If you need to know how to set up a network, then the CCNA-type courses are going to be useful for you. On the other hand, you might choose to drill down next on the technology side and study more about software development or hardware development, which are pure engineering skills. Or, the third alternative, is you might want to learn more about the Science of Networking, which is another separate set of skills. So hopefully, everyone in this class knows that it takes different skills to be a Chef, to be a good Waiter, and to be a food Critic. Just like it takes different skills to create networking, to serve it up, and to use it.

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

148

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

149

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

150

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

151

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

152

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

153

Network Science Overview for Cisco Engineers

2007, Cisco Systems, Inc. All rights reserved.

Page

154

Вам также может понравиться