H3C Comware software is a dedicated networking operating system that comprises all software features required by H3C routers and switches. Comware has always been evolving to support new network applications and scenarios.
Comware V5 is a mature single-process multi-task networking operating system that has been widely used on networks. To implement full modularization and multi-process applications, H3C developed Comware V7.
Comware V7 brings the following benefits:
- Full modularization—Brings improvements in system availability, virtualization, multi-core multi-CPU applications, distributed computing, and dynamic loading and upgrading.
- Openness—Comware V7 is a generic, open system based on Linux.
- Improved processing procedures—Comware V7 improves some processing procedures.For example, it uses preemptive scheduling to improve real-time performance.
Comware V7 optimizes the following functions:
- Virtualization—Supports N:1 virtualization.
- ISSU—Adds ISSU support for line cards.
- Auxiliary CPU and OAA—Improves scalability for devices.
In addition, Comware V7 supports new technologies for data centers, including TRILL, EVB, and EVI.
Comware V7 system architecture
Comware V7 comprises four planes: management plane, control plane, data plane, and infrastructure plane.
Figure 1 Comware V7 planes
The infrastructure plane provides basic Linux services and Comware support functions. Basic Linux services comprise basic Linux functions, C language library functions, data structure operations, and standard algorithms. Comware support functions provide software and service infrastructures for Comware processes, including all basic functions.
The data plane provides data forwarding for local packets and received IPv4 and IPv6 packets at different layers.
The control plane comprises all routing, signaling, and control protocols, such as MPLS, OSPF, and security control protocols. It generates forwarding tables for the data plane.
The management plane provides management interfaces for operators to configure, monitor, and manage Comware V7. Common management interfaces include Telnet, SSH, SNMP, HTTP, and Web.
Comware V7 implements full modularization based on Linux. All software features run independent processes in different spaces. A failed process does not affect other processes. Preemptive scheduling used by Linux threads enables Comware V7 to provide high-speed services. In addition, Linux supports multi-core, multi-CPU, and Symmetrical Multi-Processing (SMP) technologies, which can maximize multi-CPU performance.
The modular design makes Comware V7 totally different from earlier versions.
Figure 2 Modular design
The modular design isolates processes to improve system availability. Each process can be managed separately. This refined management method enhances system stability and performance.
Comware V7 supports multi-core CPU and SMP technologies besides multi-core support at the data plane. The modular design enables concurrent running of threads through direct Linux scheduling, which can maximize multi-CPU performance. More CPUs improve performance for the whole system to implement faster route convergence and less recovery time.
Comware V7 allows a group of processes to run on a dedicated CPU set to ensure enough resources for key services. The thread preemptive scheduling and priority marking mechanisms enable real-time services to fast respond to requests even when the CPU system is busy.
The multi-core CPU replaces auxiliary CPUs to complete related tasks, simplifying software operations.
The modular design enables a process to load only needed functions to complete a task. Unused functions do not occupy any system resources and thus will not be attacked. This mechanism improves both system performance and security.
The modular design allows you to upgrade a single feature or add new features without affecting other services.
Simplified software tailoring
Comware V7 software processes are independent of one another. This makes software tailoring much easier, without the need of re-compiling.
The modular design allows a Comware V7 software version to be released in multiple software packages, one basic package and multiple function packages, satisfying the requirements of different products.
The modular design allows for function-based licenses, which can improve software flexibility and avoid interference from unnecessary functions.
Comware V7 provides APIs through dynamic Link Library for users to develop their own applications. This method is more flexible than OAA.
Although modularization has many advantages, it has limitations in resource occupation and inter- process communication overheads. Therefore, a balance between the degree of modularization and current resources must be considered. To achieve maximum modularization, H3C bases Comware V7 on deep understanding of networking technologies, and proper feature implementations and module classification, enabling Comware V7 to have better scalability and extensibility than other networking operating systems.
Comware V7 has only one distributed structure that supports various types of hardware structures and virtualization.
In the distributed structure, all nodes are fully meshed. A main processing unit (MPU) has complete functions, and an I/O node (line card) has local processing functions. This software structure is irrelevant with topology. Therefore, different products have consistent software processing, improving scalability and stability.