Carrier Grade Linux: Linux in Telecom

By: Ibrahim Haddad
Thursday, June 23, 2005 01:04:34 PM EST
URL: http://www.linuxplanet.com/linuxplanet/reports/5906/1/

Linux and the Telecommunication Industry--Overview

Traditionally, communications and data service networks were built on proprietary platforms that had to meet very specific requirements in areas such as availability, reliability, performance, and service response time. Those proprietary systems were composed of highly-purposed hardware, operating system, middleware, and often included proprietary technologies and interfaces. Such proprietary approaches to system architecture fostered vendor lock-in, very served to limit design flexibility and freedom, and produced platforms that were and are very expensive to maintain and expand.

Today, those same service providers and carriers are challenged to drive down costs while still maintaining carrier class characteristics for platforms to provide service and mission critical applications in an all-IP environment. They are in a position today where they must move away from specialized proprietary architectures, and towards commercial-off-the-shelf (COTS) approaches and building practices (Figure 1) for several reasons:

  • Faster time to market.
  • The need to reduce design and operation costs by using COTS hardware and software components.
  • The growth of packet traffic is placing added pressure on communication networks. Communication platforms reside on all-IP networks and need to maintain carrier grade characteristics in terms of availability, reliability, security, and service response time.
  • The emergence of COTS hardware and software components is driving the need for seamless integration of all components as integrated solutions must be validated for carrier grade availability and scalability.
  • Service providers and carriers need to be able to deliver new services based on common standardized platforms.

Figure 1 shows where the PICMG and Service Availability Forum are active in defining building block components and open interfaces for standards-based telecom platforms.

As a result, proprietary legacy systems no longer offer a viable approach. They are expensive to buy, maintain, and scale. As a result, the telecom industry is moving away from specialized proprietary systems toward open platforms that are based on industry established standards and common practices.

Enter Carrier Grade Linux

Carrier Grade Linux (CGL) stands at the center of the move to open architectures. About three years ago, representatives from platform vendors, Linux distribution suppliers, and network equipment providers, set out to define how "Carrier Grade Linux" could enable environments with higher availability, serviceability, and scalability requirements. As a result, the OSDL CGL working group was formed. The initiative started with the vision that communication services will be delivered using open standard carrier grade platforms. A Linux kernel with Carrier Grade characteristics is an essential building block component of such platforms and architectures.

The focus with CGL is to enhance the capabilities of Linux in several key areas such as availability, security and reliability, with the goal of making Linux an attractive alternative to proprietary operating systems for telecom servers.

Since its formation, the working group has produced three versions of a specification to define these required capabilities. In response, Linux distribution suppliers are now demonstrating that they can meet the emerging needs of telecommunications by registering (disclosing publicly) how their Linux-based software platform products address the requirements as defined in the Carrier Grade Linux Requirements Definition.

Today, the CGL working group has grown to include over three dozen representatives from platform vendors, Linux distribution suppliers, network equipment providers, carriers and development community members worldwide. This expanded group has now released the Carrier Grade Linux Requirements Definition version 3.1. For clarity and ease of use, the specification has been split into seven separate topical documents: Availability, Clusters, Serviceability, Performance, Standards, Hardware, and Security.

Creating the CGL Requirements Definition Document

Over two dozen OSDL member companies from all over the globe are actively involved with the CGL initiative (Figure 3). Member companies cover the whole ecosystem: Carriers, network equipment providers (NEPs), telecom equipment manufactures (TEMs), platform providers, independent software vendors (ISVs), middleware providers and Linux distributors. OSDL member companies gather their market requirements from their customers as input and outputs two deliverables:

  • The requirement document--the current version of the CGL requirement document is 3.1.
  • Initiatives and Capabilities, materialized by open source projects to enable and provide implementations to the CGL requirements.

In some cases, an open source project already exists and matches a defined requirement, so member companies can contribute to that specific project and help advance the implementation. In other cases, either new projects are started or member companies release their proprietary Linux technology to Open Source to satisfy the specified requirements.

The open source community in this model is both the judge and the beneficiary of what is accepted into the kernel and what becomes mainstream.

At the receiving end are Linux distributions vendors who utilize the requirements document to produce CGL distributions that are then registered with OSDL for the specific version of the CGL requirement document. Currently, five Linux distributors provide CGL 2.0 registered distributions:

  • MontaVista
  • Novell/SUSE
  • FSMLabs
  • TimeSys
  • Wind River

Platform providers also use CGL registered distributions on their platforms. Those platforms end up being offered to NEPs and Carriers and are deployed on carrier networks.

Overview of CGL Requirements Definition version 3.1

The CGL requirement definition document version 3.1 consists of seven chapters each covering one area of the requirements. Below, a quick overview of the CGL specifications area is provided:

  • Availability: The CGL Availability Requirements Definition is a collection of requirements that addresses the robustness of a single computing node. Availability is further enhanced by clustering individual computing nodes so that a node cannot represent a single point of failure.
  • Clustering: These requirements support the use of multiple carrier server systems to provide higher levels of service availability through redundant resources and recovery capabilities, and to provide a horizontally scaled environment supporting increased throughput.
  • Serviceability: The CGL Serviceability Requirements Definition specifies a set of useful and necessary features for servicing and maintaining a system. The serviceability requirements support servicing and managing hardware and software on carrier server systems. These are wide-ranging set requirements that, when combined, help support the availability of applications and the operating system.
  • Performance: The CGL Performance Requirements Definition is a collection of requirements for the Linux operating system that describes the performance and scalability requirements of typical communications systems. Key requirements include a system's ability to meet service deadlines, to scale to take advantage of Symmetrical Multi-Processing (SMP), hyper-threading technology, and large memory systems, and to provide efficient, low latency communication.
  • Standards: One goal of the CGL effort to achieve high Reliability, Availability, and Serviceability (RAS), and application portability is to leverage mature and well-established industry standards that are common and relevant to the carrier-grade environment and include them as part of the CGL requirements. Open standards are important because they are freely available for any organization to use and because open standards can evolve with wide community feedback and validation. The CGL WG is actively working with recognized standard bodies, such as the Linux Standard Base (LSB--a workgroup of the Free Standards Group) and the Service Availability Forum (SA Forum). These organizations are producing standards and specifications that address the RAS and application portability gaps between Linux as it exists today and where it needs to be to support highly available communications applications.
  • Hardware: The CGL Hardware Requirements Definition specifies a set of generic requirements that are common across platform types. It includes support for blade servers, for hardware management interfaces and for blade hot swap events. To address the need to manage highly available carrier grade systems through hardware out-of-band mechanisms, management capabilities such as those found in the Intelligent Platform Management Interface (IPMI) are also described.
  • Security: The security requirements are aimed at maintaining a certain level of security while not endangering the goals of high availability, performance, and scalability. The requirements support the use of additional security mechanisms to protect the systems against attacks from both the Internet and intranet, and provide special mechanisms at kernel level to be used by telecom applications.

As for beyond 3.1, the priorities of the CGL working group as identified based on the market input and the feedback received from participating companies in the CGL initiative are: Real-time capabilities, testing CGL workloads and device driver hardening and availability.

Conclusions

Linux with carrier grade characteristics provides an essential building block that allows TEMs and NEPs to build open communication platforms. The CGL initiative is a community effort: TEMs, NEPs and Carriers supply requirements; OSDL members gather requirements and create specifications; OSDL members, community, and ISVs implement projects; Distribution suppliers build and register CGL platforms; TEMs, NEPs and Carriers deploy.

Carrier Grade Linux is real! CGL 1.1 and CGL 2.0 based platforms and applications are shipping worldwide; CGL 3.1 distributions and platforms will be available in 2006. The goal of the CGL initiative is to accelerate the development and deployment of Linux in the telecommunications industry. So far, we are on target!

The CGL initiative is based on cooperation between companies and individuals and participation is open to everyone. Please consider this as an invitation to get involved.

Next month, I will present on CGL adoption and deployments in mobile infrastructures with two case studies. Stay tuned.

References

About the author

Ibrahim Haddad is an OSDL member leading the Carrier Grade Linux Initiative and promoting the development and adoption of Linux in the communication industry. Prior to joining OSDL, he was a senior researcher at the Research and Innovation Department, of Ericsson Research Corporate, in Montreal, Canada, where he was involved with the server system architecture for 3G wireless IP networks. Ibrahim is a Contributing Editor for the Linux Journal and Linux Today, and is a frequent contributor to the O'Reilly Network, Unix Sys admin, LinuxWorld magazine, and Linux User and Developer. He is also a featured speaker and panelist at conferences such as Linux World, SuperComm, Real World Linux, Ottawa Linux Symposium, in addition to the more academic conferences held by IEEE, ACM, and USENIX. He is currently a Doctoral of Science Candidate at Concordia University in Montreal, Canada, researching "Scalable Architectures for High-Availability Web Server Clusters."

Copyright Jupitermedia Corp. All Rights Reserved.