Optimizing routing software for Internet reliability

Source: Internet
Author: User
Tags new features

Introduction

The internet is rapidly becoming a choice for public data networks. This conclusion can be demonstrated by the rapid growth of user needs and new applications, the increase in mainstream applications, and the growth of important businesses. As customers begin to hope for the reliability and effectiveness of a public telephone exchange network (PSTN) service, Internet service providers (ISPs) are trying to maintain control to cope with high growth and increasing complexity.

Traditional router vendors are also starting to focus on the Internet core Network's gigabit, special, and even "any bit" packet forwarding performance. The figures are so great that they are almost incomprehensible. However, anyone familiar with the web industry will not be surprised because the latest developments in special application ICS (ASIC) and dense wavelength division multiplexing (DWDM) are bound to make it happen. In the above discussion we seem to have forgotten an important element, that is, to control this fundamental problem. With all the bandwidth and forwarding capabilities, how do ISPs control and manage their networks while entering the light internet age?

Speed can kill! Control is important if you are playing a car at a 15m.p.h speed on Disney's Autotopia, but you're not going to get hurt. On the other hand, if you find yourself on the Indianapolis500, then, the high performance of the brakes, tires, and driving the controls provided, will be very important for your survival.

This article will assume that we have entered the era of optical Internet, high-performance forwarding engine has been realistic.

Juniper Network has developed a set of junosinternet software for high-performance and high-growth Internet service providers. This article will discuss the overall design of the Junos software system of Juniper Network company and some related performance, Junos software is ready to serve the Internet now, and lay a solid foundation for the control of future development. When we evaluate a routing software, it is very important to test its software structure, routing protocol, policy definition language, traffic engineering capability, user interface, system security, and network management performance. Each of these features will determine the ability of the software to provide the ISP with the control needed to successfully enter the next stage of the Internet.

Architecture of Internet routing software

The structure of a software determines how the system will be designed and how the different components can be connected and operated on each other. Many network experts concerned with routing protocols and router configuration do not take the time to analyze the underlying structure that provides the basis for system operations. As we will learn, software architecture will play an important role in determining network control, stability, performance, manageability, and scalability of complex software systems.

Limitations of traditional router software structure

In order to fully understand the challenges that traditional router software architectures face in today's service provider network, it is necessary to understand the source and development of these software systems. Initially, the router software architecture assumes that the underlying hardware has only one CPU, which is not only responsible for providing real-time packet forwarding, but also provides routing calculations, establishes routing updates, manages user interfaces, and supports network management (Figure 1). This reliance on a single CPU determines the framework for the development and implementation of traditional router operating systems.

Figure 1: A typical traditional routing software architecture

Because traditional routing systems are developed under the assumption that they will support time-sensitive tasks (i.e., packet forwarding), designers must develop a running environment with real-time operating system units. Even if they realize that ordinary operating systems can provide extremely high system reliability and stability, they also know that the performance inefficiencies inherent in a multiple-process system due to memory management and duplication of work. The designers of these traditional routing systems decide that they will enhance the performance of the entire system by merging the code and avoiding duplication, even if that means building a single, modular library of code.

On a historical point of view, this decision may be the best compromise in terms of technical conditions at that time. However, to achieve the desired results, traditional routing systems have also resulted in staggering costs, including:

· Suppose a part of a non-modular program fails. For example, the memory of a task leaks, or there is an error that makes it write to the code or data structure of another task. These types of errors can easily cause other tasks to fail, eventually causing the entire operating system to crash. The only way to recover this type of failure is to reboot the entire system.

· This single, non modular program needs to be run in real time to support packet forwarding requirements. Initially, these operating systems forwarded packets as the highest priority tasks throughout the system. This means that if the forwarding business of a router is very busy, there will not be enough CPU cycles left for the system to complete related peer-to-peer updates, greeting-time responses, or routing table calculations. This creates instability in the network because Routing and control tasks will not be completed in a timely manner, resulting in the loss of routing adjacency and line protocols.

· The entire software structure will become very large, resulting in the loss of flexibility, scalability, and stability. Modification will become very difficult because adding a new feature may affect the entire code base. For example, do you include all the parts that are relevant to implementing a reliable implementation? Is the code included necessary, and does it contain program errors that cause the system to crash? In addition, the length and complexity of the code will determine the speed at which manufacturers revise sensitive Internet issues and add some important new features. Finally, it is very difficult to test a modularized code base. None of the labs can really simulate the real environment on the global Internet network, so testing is only a bit more complex for the needs of the mega-code base, and then the quarantine test for a subset of the program. This challenge can be solved by any well-designed test process.

As we enter the Golden age of the Internet, the traditional routing software structure based on real-time, unstructured code base is powerless to support the fast-emerging new features and the stable operation required by the Internet's core network. Now, real-time forwarding of business requirements on high-performance optical interfaces configures a hardware-based forwarding engine. Therefore, the next generation of routing software no longer needs to deal with the resource competition between packet forwarding and advanced system functions. The efficiency of the hardware-based forwarding engine allows routing software to run in a common operating system environment that delivers higher reliability, scalability, effectiveness, and high performance for sensitive, mission-critical applications.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.