OSDL's Carrier-Grade Linuxby Ibrahim Haddad
There are many reasons motivating the usage of Linux Kernel as the operating system of choice for telecom platforms. However, the vanilla Linux Kernel is not really tailored to run on carrier-grade platforms, or meeting telecom requirements in various areas such as reliability, security, and scalability. To help the advancement of Linux in the telecom space, the Open Source Development Labs (OSDL) started a working group called the Carrier Grade Linux (CGL) working group. Its mission is to specify and help implement an open source platform that is highly available, secure, scalable, and easily maintained—suitable for carrier-grade systems.
The CGL working group includes network equipment providers, system integrators, platform providers, and Linux distributors. All members contribute to the requirement definition and current requirement projects or work on new open source projects to meet the requirements. Many of these members have contributed technology previously missing from the Linux Kernel to make it a more viable option for telecom platforms. Two distributors already provide distributions based on CGL requirement definitions. Several telecom-related companies are deploying CGL or at least evaluating or experimenting with it.
In general terms, Linux is gaining penetration in the telecom space, previously dominated by proprietary operating systems. Linux is also gaining some technologies opened up by contributors wanting to see Linux powering telecom platforms. If you are a Linux advocate, you may be excited by the idea that Linux is going places it never has been before. Some colleagues might even be excited to see this pushing Linux one step ahead in world domination.
|Linux/Unix System Administration Certification -- Would you like to polish your system administration skills online and receive credit from the University of Illinois? Learn how to administer Linux/Unix systems and gain real experience with a root access account. The four-course series covers the Unix file system, networking, Unix services, and scripting. It's all at the O'Reilly Learning Lab.|
Many of the CGL member companies are releasing code to open source and making some of their (usually) proprietary technologies "open" to ease their transitions from closed platforms to open platforms that use Linux. If you are a network equipment provider or a mobile operator, you might experience some advantages with deploying Linux because of the openness it provides. However, this is a complex process and it requires a lot of collaborative work from all the people involved.
In this article, I will introduce the new wave of migrating towards open platforms. Next, I will briefly describe some of the essential characteristics of telecom applications; it is important to understand the requirements imposed at the kernel level. I will then mention some of the advantages driving the migration from proprietary operating systems to Linux. The rest of the article is focused on OSDL, the Carrier Grade Linux working group, the CGL architecture, CGL specifications, and CGL Kernel. We conclude with a look at the upcoming CGL version 3.0.
Historically, communication and data service networks were built on proprietary platforms that had to meet very specific availability, reliability, performance, and service response time requirements. However, these proprietary platforms are closed systems, expensive to develop, and often lack support for the current and upcoming standards.
Today, the communications industry is moving away from proprietary systems towards open and standardized systems, starting from the hardware, moving to the operating system, and going one level higher with standardized high availability middleware. Communications service providers have the challenge of meet their needs cost-effectively for new architectures, new services, and increased bandwidth, while maintaining systems that are highly available, scalable, secure, reliable, and easy to maintain and upgrade.
The trend is to deliver next generation and multimedia communication services that use open standard carrier-grade platforms, using commercial off-the-shelf software and hardware components. Making the transition to packet-based, converged, multi-service IP networks requires a carrier-grade infrastructure based on interoperable hardware and software building blocks, management middleware and applications, and which is implemented with standard interfaces. The motivation behind this trend is simple; businesses expect that open platforms will to reduce the cost and risks of developing and delivering rich communications services; they will enable faster time to market and ensure portability and interoperability between various components from different providers.
We use the term "carrier grade" often throughout this article. Carrier grade is a term for public network telecommunications products that require a reliability percentage up to 5 or 6 nines. Carrier Class servers usually require 5 nines, or 99.999 percent uptime, while Carrier Class switches usually need 6 nines, or 99.9999 percent uptime.
Three key industry consortia are helping push this trend by defining hardware and software high-availability specifications to telecom platforms. These consortia are the PCI Industrial Computer Manufacturers Group, the Open Source Development Labs, and the Service Availability Forum.
Of these groups, the OSDL Carrier Grade Linux (CGL) working group defines specifications for an operating system with carrier-grade characteristics and tools to support the software development for carrier-grade systems.
Characteristics of Telecom Platforms
Telecom platforms require the highest availability and scalability in existing and future IP multimedia networks. They must offer extremely high reliability, with linearly scalable capacity and real-time characteristics. Examples of such platforms include the home location register (HLR), network resource gateway (NRG), media gateway control function (MGCF), new multimedia servers, and authentication, authorization and accounting (AAA) servers. These nodes, typically located in the center of a network, must provide superior in-service performance and be allowed to grow in capacity. They include central databases containing essential user data, traffic data, and charging data.
As such, telecom platforms have very strict requirements. We will mention the most important requirements that are in line with this article to illustrate the high expectations in some areas from the operating system:
Highly available: these platforms are meant to provide non-stop services. The allowable 30 seconds of down time per year includes operation and maintenance, rebooting, and software and kernel upgrades.
Online operating system and application upgrade: Since these systems must operate round the clock without any system interruption or disturbance, there must exist some mechanisms to upgrade the kernel and the running applications to newer versions without any system interruption.
Highly scalable: These platforms are expected to be very scalable: any additions in hardware and resources should produce relative additions in performance. For example, if we double the number of processors, we expect almost to double the throughput of the system. Otherwise, the costs of transactions will increase as you scale up your system.
Highly reliable: The platform must support redundancy software and hardware mechanisms to prevent any single point of failure.
High performance: The platform should be able to manage millions of subscribers, handling thousands of transactions per second per node while maintaining a certain level of performance.
These are the five basic requirements that need support at the operating system level.
Why Move Towards Linux?
In this section, we will briefly describe the key reasons motivating the use of Linux on carrier-grade systems instead of continuing with proprietary operating systems. These motivations include:
Cost: Linux is available free of charge in the form of a downloadable package from the Internet.
Availability of source code: With Linux, you gain full access to the source code allowing you to tailor the kernel to your needs.
Ability to add and contribute to the kernel: With Linux, you have the ability to contribute your own code to the kernel.
Open development process, as shown in Figure 1: The development process of the kernel is open to anyone to participate and contribute. The process is based on the concept of "release early, release often".
Peer review and testing resources: With access to the source code, people using a wide variety of platforms, operating systems, and compiler combinations can compile, link, and run the code on their systems to test for portability, compatibility, and bugs.
Vendor independent: With Linux, you no longer have to be locked into a specific vendor. Linux is supported on multiple platforms.
High innovation rate: New features are usually implemented on Linux before they are available on commercial or proprietary systems.
Other contributing factors include Linux support for a broad range of processors and peripherals, the availability of commercial support, its high performance networking, and the proven record of being a stable, and reliable server platform.
Figure 1. Open Development Process
Pages: 1, 2