Presentation is loading. Please wait.

Presentation is loading. Please wait.

罗文彬讲座 All Rights Reserved 1 通信软件开发与管理 Course OD601 学时: 32 学分: 2 讲师:罗文彬.

Similar presentations


Presentation on theme: "罗文彬讲座 All Rights Reserved 1 通信软件开发与管理 Course OD601 学时: 32 学分: 2 讲师:罗文彬."— Presentation transcript:

1 罗文彬讲座 All Rights Reserved 1 通信软件开发与管理 Course OD601 学时: 32 学分: 2 讲师:罗文彬

2 罗文彬讲座 All Rights Reserved 2  Communication Overview  System Architecture Overview  Performance and Reliability  Operation, Administration, & Maintenance  Development Methodology  ISO9000/TL9000  CMMI  Project Management Class Subject

3 罗文彬讲座 All Rights Reserved 3 A software system consists of multiple software tasks. In theory all the tasks can be accomplished in one single process. Software Structure (1) Task 1 Task 5 Task 4 Task 3 Task 2 Main Process

4 罗文彬讲座 All Rights Reserved 4 To make the software system more effective and manageable, software tasks are divided into multiple processes. The same principle applies to multiple functions and threads within a process. Software Structure (2) Process 1 Process 3 Process 5 Process 4 Process 2

5 罗文彬讲座 All Rights Reserved 5 Data has to be passed through different processes to accomplish the desired software tasks. The efficiency of inter-process communication is very critical to the system performance and reliability in a real-time communication system. Inter-Process Communication sending process receiving process Shared memory write read

6 罗文彬讲座 All Rights Reserved 6 For inter-process communication (IPC), every process must create a share memory queue to allow other processes can write data into it. To be efficient and convenient, a Message Handler process can be created to support the following IPC functionalities in a uniform way: Message queue registration Message queue creation Message queue management Message read/write functions Message Handler

7 罗文彬讲座 All Rights Reserved 7 Communication Software System is a collection of processes arranged so that data can be passed in and out of the system with highest efficiency and reliability. Network System Architecture Input traffic handler Application Protocol Output traffic handler Provisioning measurement alarm Initialization NMS/OSS

8 罗文彬讲座 All Rights Reserved 8 Initialization (INIT) process is the first process to be brought up for the communication software system. It then initialize all the other processes in sequence. System Initialization (1)

9 罗文彬讲座 All Rights Reserved 9 The software system usually initialized in two phases. Each process will initialize the global resource such as shared memory, static data, threads or message queues in the first phase. Once all the processes complete the global resource initialization then the entire system can be brought up with all the processes activated at the same time. System Initialization (2)

10 罗文彬讲座 All Rights Reserved 10 System Initialization (3) INIT PROC A PROC B PROC C Phase 1 Initialization: Global Resource Process ID, shared memory creation, message queue creation & association Phase 2 Initialization: load configuration data, shared memory attachment, heart beat Shared Memory

11 罗文彬讲座 All Rights Reserved 11 System Initialization (4) Once all the processes successfully initialized, the INIT process will monitor all the processes through periodical heartbeat mechanism. If heartbeat failed on a process, INIT will either recover the particular process or the entire system based on designed initialization algorithm. INIT PROC A PROC B PROC C PROC A count PROC B count PROC C count Peg count

12 罗文彬讲座 All Rights Reserved 12 System Initialization (5) Process could lose heartbeat because: Process dies Process too busy (infinite loop) Level 1 recovery, INIT kills the process which loses consecutive heartbeats, and re-initialize the process. Level 2 recovery, INIT re-initialize the process and its global resource. Level 3 recovery, INIT re-start the whole system. Level 4 recovery, INIT trigger OS re-boot.

13 罗文彬讲座 All Rights Reserved 13 Level 1 – Physical Layer (ie. RS232) Physical Layer handles bit stream transmission through wire and connector. Level 2 – Packet layer (ie. Ethernet) Packet Layer gets the bit stream from physical layer and generates packets data through firmware on the chip and circuit board. Protocol Handler

14 罗文彬讲座 All Rights Reserved 14 Level 3 –Link Layer Link layer is responsible for managing the links by block/unblock links, open/close links, get packet data from links, and put packet data onto the links. Link layer also monitors the link status. In case of link failure, it informs the application layer so that the application layer is able to take appropriate actions. Input/Output Handler

15 罗文彬讲座 All Rights Reserved 15 Message Parsing Application process get the input message from link layer and decode the message for processing by the application logic. Once the application logic is done then the result will be encoded into an output message and sends out to the network through link layer. Since every message/packet has to be decoded and encoded, the message parsing function is also very critical to the overall performance. Application Handler (1)

16 罗文彬讲座 All Rights Reserved 16 Application Logic Application logic usually defined in finite state machine or threads to process the incoming messages in parallel to increase the system throughput. Application Handler (2) FSM Threads

17 罗文彬讲座 All Rights Reserved 17 Network Subscriber Database

18 罗文彬讲座 All Rights Reserved 18 Network Centralized Subscriber Database Economy drive technology growth and network usage growth. People cannot live without the communication network today. Network with more than 100 millions users are not uncommon. It is more efficient to manage the subscriber’s data in a network centralized database. Network components or applications can access the centralized data base in real-time. Subscriber Database (1)

19 罗文彬讲座 All Rights Reserved 19 Network Centralized Database Design Data Independence Data Segmentation Data Replication Data Consistency Data Schema Upgrade Backup & Recovery Subscriber Database (2)

20 罗文彬讲座 All Rights Reserved 20 Database Independence To increase database usage for different applications, the database should be independent from the application logic. The data schema, data storage and data access interface should be open standard such as SQL, LDAP, XML, CORBA, etc. Subscriber Database (3) APP1 APP2 APP3 Data Server Data APP1 Data APP2 Data APP3

21 罗文彬讲座 All Rights Reserved 21 Database Segmentation For very large database, the data have to be divided onto multiple data servers. With data segmented on different servers, a routing mechanism is needed to route the data query to the corresponding data server. Subscriber Database (4) Application Server Segment 1 Segment 2 Segment 3

22 罗文彬讲座 All Rights Reserved 22 Database Replication To increase database reliability for large network centralized database, the database must be replicated across geographic locations. The database can be replicated in multiple times for adding reliability. Subscriber Database (5)

23 罗文彬讲座 All Rights Reserved 23 Database Consistency Data replication may failed due to network congestion, or data server overload. The replicated data will become inconsistent when replication failure happen. To ensure the data consistency, data audit mechanism needs to be in place to check the data in background and report errors when inconsistent data is found. The inconsistent data can be fixed either manually or automatically. Subscriber Database (6)

24 罗文彬讲座 All Rights Reserved 24 Database Schema Upgrade Data schema upgrade is a very complicated item in the replicated and segmented database. The new schema and interface change has to be backward compatible so that the entire database can be upgraded gradually. Subscriber Database (7) Application Server

25 罗文彬讲座 All Rights Reserved 25 Database Backup & Recovery Single database failure can recover from the mate. Double database failures have to recover from the third copy of database. Subscriber Database (8) Application Server

26 罗文彬讲座 All Rights Reserved 26 Alarm Message Each process should report alarm condition to the network management system when system failure detected. Measurement Along with the incoming traffic processing, some key statistic data should be collected for off-line study or investigation. Provisioning A interface to the upstream system is needed to support the data provisioning. OA&M Process

27 罗文彬讲座 All Rights Reserved 27 OA&M Network Architecture OA&M PROC 1 PROC 2 PROC 3 NFM OSS Operation Support System Network Fault Management Alarm Measurement Provision Data LOG MEAS


Download ppt "罗文彬讲座 All Rights Reserved 1 通信软件开发与管理 Course OD601 学时: 32 学分: 2 讲师:罗文彬."

Similar presentations


Ads by Google