Software Architecture
Understanding the Distributed Software Architecture
To better understand the advantages of the system's distributed software architecture, this section presents an overview
of the various components used in processing a subscriber session. Numerous benefits are derived from the system's
ability to distribute and manage sessions across the entire system. The following information is intended to familiarize
you with some of the components and terminology used in this architecture.
Software Tasks
To provide unprecedented levels of software redundancy, scalability, and robust call processing, the system's software is
divided into a series of tasks that perform specific functions. These tasks communicate with each other as needed to
share control and data information throughout the system.
A task is a software process that performs a specific function related to system control or session processing. There are
three types of tasks that operate within the system:
Critical tasks
These tasks control essential functions to ensure the system's ability to process calls. Examples of these would
be system initialization and automatic error detection and recovery tasks.
Controller tasks
These tasks, often referred to as ―Controllers‖, serve several different purposes. These include:
Monitoring the state of their subordinate managers and allowing for intra-manager communication within the
same subsystem.
Enabling inter-subsystem communication by communicating with controllers belonging to other subsystems
Controller tasks mask the distributed nature of the software from the user - allowing ease of management.
Manager tasks
Often referred to as ―Managers‖, these tasks control system resources and maintain logical mappings between
system resources. Some managers are also directly responsible for call processing.
System-level processes can be distributed across multiple processors, thus reducing the overall workload on
any given processor—thereby improving system performance. Additionally, this distributed design provides
fault containment that greatly minimizes the impact to the number of processes or PPP sessions due to a failure.
The SMC has a single Control Processor (CP) that is responsible for running tasks related to system
management and control.
Each PSC contains two CPs (CPU 0 and CPU 1) The CPs on the processing cards are responsible for PPP and
call processing, and for running the various tasks and processes required to handle the mobile data call. In
addition to the CPs, the processing cards also have a high-speed Network Processor Unit (NPU) used for
enhanced IP forwarding.
OL-22938-02
Understanding the Distributed Software Architecture ▀
Cisco ASR 5000 Series Product Overview ▄