86
Design and implementation of a multivendor Network management system (NMS) user interface with the aid of HUAWEI, ZTE and CISCO network elements. UNIVERSITY OF ZIMBABWE FACULTY OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING Submitted by Chance Kandishaya (R1713508) DISSERTATION SUBMITTED IN PARTIAL FULFILMENT OF REQUIREMENTS FOR THE AWARD OF A MASTER OF SCIENCE DEGREE IN COMMUNICATION ENGINEERING Supervisor: Dr T Marisa

Design and implementation of a multivendor Network

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Design and implementation of a multivendor Network

Design and implementation of a multivendor Network

management system (NMS) user interface with the aid of

HUAWEI, ZTE and CISCO network elements.

UNIVERSITY OF ZIMBABWE

FACULTY OF ENGINEERING

DEPARTMENT OF ELECTRICAL ENGINEERING

Submitted by

Chance Kandishaya (R1713508)

DISSERTATION SUBMITTED IN PARTIAL FULFILMENT OF REQUIREMENTS FOR

THE AWARD OF A MASTER OF SCIENCE DEGREE IN COMMUNICATION

ENGINEERING

Supervisor: Dr T Marisa

Page 2: Design and implementation of a multivendor Network

Faculty of Engineering

The undersigned certify that they have read, and recommend to the Faculty of Engineering for

acceptance, a thesis entitled Design and implementation of a multivendor Network

management system (NMS) user interface with the aid of HUAWEI, ZTE and CISCO network

elements submitted by Chance Kandishaya in partial fulfilment of the requirements for the

degree of Master of Science Communication Engineering degree.

---------------------------------------------

Dr T Marisa (Supervisor)

Date: --------------------

Page 3: Design and implementation of a multivendor Network

ABSTRACT

Network monitoring system were developed to play an important role in providing remote

access which is now an important feature in modern day networks. The system has a role of

device management, configuration, network security, and alarm and faults management.

Network monitoring system are installed in network operation centre manned by first level

staff to observe network changes through events, happening in the network with the goal of

providing an alarm free network which operates within the threshold set by international

telecommunication union (ITU). The new features of service monitoring are coming on board

will incorporates the addition of performance module and develop a system which is capable

of adding third party module to manage third party networks. The most important aim of

developing this unified monitoring system is to reduce cost which are related to license costs.

The costs of licences is too high reaching to 10% of total revenue generated annually and costs

can reduced by developing simple SNMP monitoring system which works the same as vendor

proprietary systems which are currently available. The vendor systems are settle in foreign

currency which is limited supply and the implementation of this solution will save the foreign

currency component if this proposed solution is adopted by local operators. The proposed

network monitoring system in this thesis, solves the problem of device monitoring and included

features which are present in all the systems. The system was improved to monitor all vendor

network elements unlike vendor specific solutions. Therefore, the advantages of this system, is

the ability of being used by first level users who have minimum knowledge. According to the

points submitted throughout this thesis, this designed application could be used for access, core,

and IP and transmission equipment. The NMS was further developed to monitor third party

equipment as the network are evolving user requirements are changing. Lastly, the system was

developed future proof to easily interoperate with other future solutions which are coming like

software defined network (SDN) and network cloud engine (NCE).

Keywords: Network monitoring, Remote Access, Software Defined Networks, Network

cloud, Network Security, Network Management System

Page 4: Design and implementation of a multivendor Network

Acknowledgements

Firstly I would like to thanks the Almighty God for giving me the opportunity to study towards

the completion of this project works. Furthermore, I thank for the physical capability, spiritual

support given by the Almighty towards the attainment of this degree program which was

completed during the harsh times of the COVID 19 pandemic which has defined a new order.

I thank whole heartedly DR T Marisa who helped us in providing guidance and support

throughout giving us knowledge on python programming at the initial stage of the project.

Thanks also to all faculty members of the University of Zimbabwe, Electronic and Electrical

department who conducted lecturers and others who contributed behind the scenes. The lessons

learnt through the lectures is reflected throughout this thesis. I am happy with the good and

wonderful environment for researching and studying provided by the University of Zimbabwe.

Moreover, I am thankful to powerful connections which we built with my friends at UZ.

This whole works are fully dedicated to my wife and my late mother who passed on during the

2019. Your contribution will be forever cherished and preserved.

Page 5: Design and implementation of a multivendor Network

List of Abbreviations

Glossary

NMS Network Management System

Email Electronic Mail

SMS Short message service

IP Internet protocol

IMS IP multimedia subsystem

NetSNMP Net Simple Network Management Protocol

NEs Network Elements

MVT Model, Veiws, Templates

HTML Hypertext Markup Language

PHP Hypertext Preprocessor

NOC Network Operation Center

RMON Remote Monitoring

UTP Unshielded Twisted pair

OID Unique Object Identifier

MIB Management Information Base

MTTR Mean time to Repair

IDs Identifications

CL Command Line

Telnet Terminal Network

NEs Network Elements

SSH Secure shell

Page 6: Design and implementation of a multivendor Network

Table of Contents List of Figures .................................................................................................................................... 9

List of Tables ................................................................................................................................... 10

CHAPTER ONE: INTRODUCTION ......................................................................................................... 1

1.0 Background and Problem Statement .................................................................................. 1

1.3 Project Objectives .................................................................................................................... 4

1.4 Significance of the Study .......................................................................................................... 5

1.7 Feasibility Study ....................................................................................................................... 5

1.7.1 Technical feasibility ........................................................................................................... 5

1.7.2 Economic Feasibility .......................................................................................................... 5

1.7.3 Operational Feasibility ...................................................................................................... 6

1.8 Project Organization and Thesis Structure ................................................................................ 6

CHAPTER TWO: LITERATURE REVIEW ................................................................................................. 8

2.0 Overview ................................................................................................................................. 8

2.0 Related Works ......................................................................................................................... 8

2.1 Network Management System: ............................................................................................ 8

2.1.1 Dashboard: ....................................................................................................................... 9

2.1.2 Configuration System: ....................................................................................................... 9

2.1.3 Service Polling: ................................................................................................................ 10

2.1.4 Graphing: ........................................................................................................................ 10

2.1.5 Notifications and Events.................................................................................................. 10

2.2 Network Monitoring Systems currently being used in my organization: ................................. 10

2.2.1 Huawei U2000: ............................................................................................................... 11

2.2.2 Alcatel SAM:.................................................................................................................... 15

2.2.3 Fiber-Home UNM2000: ................................................................................................... 18

2.2.4 Dyhan SmartMan ............................................................................................................ 19

2.2.5: Vigilo NMS ..................................................................................................................... 21

2.2.6 Kaseya_Network_Monitor .............................................................................................. 22

2.2.7 Solar winds ..................................................................................................................... 24

2.2.8 Unimus ........................................................................................................................... 25

2.2.9 Wireshark ....................................................................................................................... 26

2.3.0 NetXMS ........................................................................................................................... 27

2.3.1 Zabbix ............................................................................................................................. 29

Conclusion ................................................................................................................................... 30

CHAPTER THREE: METHODOLOGY ................................................................................................... 31

3.0 Overview ............................................................................................................................... 31

Page 7: Design and implementation of a multivendor Network

3.1 HIGH LEVEL SYSTEM Architecture .......................................................................................... 31

3.1.1 Data Collection layer ....................................................................................................... 31

3.1.2 Processing layer .............................................................................................................. 32

3.1.3 Presentation Layer .......................................................................................................... 32

3.2 Functional Requirements of an NMS ...................................................................................... 32

3.2.1 Dashboard Presentation .................................................................................................. 32

3.2.2 Device Management ....................................................................................................... 32

3.2.3 System Administration .................................................................................................... 33

3.2.4 Alarm Surveillance .......................................................................................................... 33

3.2.5 Fault Localization ............................................................................................................ 33

3.2.6 Performance Measurements ........................................................................................... 33

3.3 Design Consideration ............................................................................................................. 34

3.3.1 Simple Network Management Protocol (SNMP) .............................................................. 34

3.3.2 Collection of OIDs and MIBs Files .................................................................................... 35

3.3.3 SNMP Data Flow Diagram................................................................................................ 36

3.3.4 Entity Relationship Diagram for the unified NMS ............................................................. 37

3.4 System Lower level Design ..................................................................................................... 38

3.4.3 URL and Views Modules ...................................................................................................... 39

3.4.3.1 How URL and Views module process a request in Django ............................................. 39

3.4.6 Libraries .......................................................................................................................... 39

3.4.7 Modules .......................................................................................................................... 40

3.4.8 Templates ....................................................................................................................... 41

3.5.0 NMS User Interface ............................................................................................................. 41

3.5.2 Fault and Configuration Management Process ................................................................ 42

3.5.2.1 Device Status................................................................................................................ 44

3.5.3 Performance Management ............................................................................................. 44

3.5.4 Capacity Utilization Formula ............................................................................................ 48

3.6 Project Approach ................................................................................................................... 48

3.6.1 High Level Programming Language .................................................................................. 48

3.6.2 Multi-threading ............................................................................................................... 49

3.6.3 Data Storage ................................................................................................................... 49

3.6.4 SNMP Configuration ........................................................................................................ 49

3.6.5 Data Cache ...................................................................................................................... 50

3.7 Implementation ..................................................................................................................... 50

3.7.1: Django framework ......................................................................................................... 50

3.7.4: Celery task to save trap data. ......................................................................................... 51

Page 8: Design and implementation of a multivendor Network

3.7.5: Device Management module Code ................................................................................. 52

3.7.6. SNMP details template. .................................................................................................. 53

3.7.7: Device database model .................................................................................................. 53

3.7.8: Celery & Reds task to collect performance data ............................................................. 54

3.7.9: Celery settings configuration .......................................................................................... 54

3.7.10: Interface trap and performance database models ........................................................ 55

3.8 Summary ............................................................................................................................... 56

CHAPTER 4 ...................................................................................................................................... 57

4.0 RESULTS AND ANALYSIS ......................................................................................................... 57

4.1 Results of NMS system ........................................................................................................... 57

4.1.1 Device Management window .......................................................................................... 58

4.1.2 Alarm Management window ........................................................................................... 59

4.1.4 System Configuration ...................................................................................................... 60

4.1.4 System administrator ...................................................................................................... 61

4.2.1: Comparing Python Vs C programming languages ............................................................... 64

4.2.2: Parallel vs Serial Approach (language: Python) ................................................................... 65

4.2.3 Request based approach vs Always ready approach ............................................................ 66

4.2.4 Alarm alert response Time .................................................................................................. 68

4.3 Performance Measurement Results ....................................................................................... 69

4.4 Summary ............................................................................................................................... 70

CHAPTER 5 ...................................................................................................................................... 71

5.0 CONCLUSION AND FUTURE WORK ......................................................................................... 71

5.1 CONCLUSION ......................................................................................................................... 71

5.2 FUTURE WORKS ..................................................................................................................... 72

5.3 RECOMMENDATIONS............................................................................................................. 72

LIST OF REFERENCES ........................................................................................................................ 74

Page 9: Design and implementation of a multivendor Network

List of Figures

Figure 2.1: Shows the U2000 dashboard view ..................................................................... 11

Figure 2.2: Shows the U2000 topology ............................................................................... 12

Figure 2.3: Showing the U2000 modularised architecture .................................................... 13

Figure 2.4: Shows Alcatel lucent Assurance Manager Login page. ...................................... 15

Figure 2.4: Shows Advanced fault management software’s ................................................. 16

Figure 2.5: Shows dashboard view of Dyhan SmartMan monitoring system ........................ 19

Figure 2.6: Shows the link performance measure window. .................................................. 20

Figure 2.7: Shows the Vigil performance system ................................................................. 21

Figure 2.8: Shows the Kayesa monitoring system ................................................................ 22

Figure 2.9: Shows the Solar Winds monitoring system. ....................................................... 24

Figure 2.10: Shows the Unimus management application .................................................... 25

Figure 2.11: Shows Wireshark network traffic analyser ....................................................... 26

Figure 2.12: Shows the dashboard of NetXMS system ........................................................ 28

Figure 2.13: Shows the Zabbix monitoring system .............................................................. 29

Figure 3.1: Shows the High Level System Architecture Diagram [1] ................................... 31

Figure 3.2: Shows the Data collector data flow diagram. ..................................................... 36

Fig 3.3: Shows the Entity Relationship Diagram for the unified NMS ................................. 37

Figure 3.4: Shows the System Lower level Design .............................................................. 38

Figure 3.5: Shows the NMS User Interface Data Flow Diagram. ......................................... 41

Figure 3.6: Shows the code snippet for Celery tasks ............................................................ 52

Figure 3.7: Device Management module code snippet ......................................................... 52

Figure 3.8: Shows the SNMP details template ..................................................................... 53

Figure 3.9: Shows Device database model code snippet. ..................................................... 54

Figure 3.10: Shows how performance data is collected. ....................................................... 54

Figure 3.11: Shows Celery application configuration........................................................... 55

Figure 3.12: Shows the performance database model code snippet. ..................................... 55

Figure 4.1: Screen Capture of the NMS GUI showing the main dashboard window. ............ 58

Fig 4.2: Screen capture showing NMS device management window. ................................... 59

Fig 4.3: Screen capture showing NMS alarm management window. .................................... 60

Fig 4.4: Screen capture showing NMS System Configuration Window................................ 61

Fig 4.5: Shows the execution speed of comparing Python, Cython and C ............................ 65

Fig 4.6: showing Multi-threading vs Non multi-threading ................................................... 66

Fig 3.10: Shows the graph for the results. ............................................................................ 70

Page 10: Design and implementation of a multivendor Network

List of Tables

Table 3.1: OIDs values showing Alarms on NEs ................................................................. 43

Table 3.2: Variables Required For Performance Management ............................................. 45

Table 4.1: Shows the comparison of the developed Unified NMS and other vendor specific

NMSs .................................................................................................................................. 63

Table 4.2: Shows the results obtained from the tests. ........................................................... 69

Page 11: Design and implementation of a multivendor Network

1

CHAPTER ONE: INTRODUCTION

1.0 Background and Problem Statement

A network management system (NMS) is a system designed for monitoring, maintaining,

and optimizing a network [1]. It includes both hardware and software, but most often an

NMS refers to the software used to manage a network. Network management systems

provide multiple services. These include, but are not limited to:

Network monitoring - NMS software applications monitors network nodes to guarantee

that all elements connected are operating within the thresholds which are expectable and

are not close or at full limit. Alarm alerts are automatically presented on the dashboard to

isolate and resolve problem areas.

Device detection – Detection involves the identification of node that it has be connected

to the network, the system using protocol available will recognize the nature of the device,

commission the node on the network, and added the element to a subnetwork [1]. The

whole process defines the activities conducted by NMS during device provisioning.

Performance measurement- NMS includes separate modules which carryout performance

measurement and analysis of traffic going and out of the network. The system measure in

real time the performance of the system through current performance statistics which can

be presented on real time on the dashboard. Also, the performance module has the

capability of storing historical performance data which is used to assess the performance

of nodes or links of period of time. The data is required by clients when drafting the service

level agreements. The expected threshold required is about 99, 95% on network with

redundancy for backbone links. It also, record performance data detecting network

bottlenecks were bandwidth is almost reaching the maximum available. This data is used

to carryout traffic optimization and alert the planning department to plan for the

deployment of new network.

Device management – the NMS system provides a platform to remotely control and

manage network elements from a central point which is the network operations centre

(NOC). This central location is equipment with software’s which can configure and modify

the status of the devices connected to the network. The activities which can be achieved

Page 12: Design and implementation of a multivendor Network

2

on device management platforms are installation of network nodes on the NMS and setting

up performance measurement counters on certain networks links.

Fault management- This module deals with the management of alarms or faults as they

happen on the network. The module has been equipped with the necessary tools to detect

device or link failures in real time and the platform can initiate traffic reroute without

human intervention. This is achieved using faults algorithm technique embedded on the

system. When the fault cannot be resolved automatically alarms or notifications are shown

on the NMS dashboard for the administrators to assign team to attend to the faults.

In the field of telecommunications operators uses network monitoring systems to

continuously monitor the whole network topology for bottlenecks, equipment failure and

notifications are forwarded to the administrators using phone calls, email, SMS or alarms

on the dashboard when there is any problem [2]. The network monitoring is a function

which is found in the network management module. Network management is required to

ensure that the network is working as expected without any alarms [3]. The network

management system must have these basic properties automatic and continuous

monitoring of the network, inform the administrator as soon as alarm arise, it should be

intelligent enough to point out the problem [4] and its exact location in the network

topology and many more. The current developmental trends vendors are developing their

own specific NMS to monitor a selected range of equipment for example Huawei

equipment’s for transmission, access network, IP core and IMS [6] have different

management system with different administrators. Large telecommunications service

providers like TelOne, Econet and Net-One they will be having different equipment’s from

different vendors with their own NMS. This arrangement will require more staff to carry

the monitoring and this set up is very difficult to manage hence operators are going for

multivendor NMS were all network elements can be monitored from single or

multiplatform [7].

The need of developing multivendor NMS is also being propelled by huge costs of licence

fee which are required by these equipment manufacturers which charging foreign currency

for these service on yearly basis. Other foreign companies like the Solar winds are

developing Orion which is a generic-purpose tool which all so does the monitoring of third-

party equipment’s but again this comes at cost. The open source systems are limited and

they customizable to a certain degree.

Page 13: Design and implementation of a multivendor Network

3

The purpose of this research proposal is to design a multivendor NMS which will able to

monitor every network device across the network. We split the project into three part other

two members developing the NMS for Huawei and ZTE while doing for Fiber-home

equipment. Fiber-home is a Chinese company that specialises in telecommunications

equipment manufacturing.

1.2 Research Problem

The technological trend nowadays, telecommunications companies are developing customized

unified NMS which monitors their whole network equipment including third party up to

customer end [8]. This development has increased the need for building a unified management

system which will be connecting specific network EMSes to the main management platform.

The development of these NMS will automatically translate to a reduction in cost of license

which are charged by the vendors. The license are charge per device connected to network

and big operators they pay more for license fees. Other operators around the globe have started

investing in developing their own NMS like a number of operator is USA they are only

purchasing the hardware and the underlying management software they will rely with they

own. This have seen a significant decline in they expenses towards license fees. In Zimbabwe,

the current trends is vendors are developing proprietary NMS to monitor selected equipment

subnetworks for example vendors NMS for transmission, access network, IP and IMS. These

different systems will be managed by different administrators and they can be brought together

on one system hence the proposal of developing a unified NMS. Ultimately the huge costs of

license which is required by the vendors for these service on yearly basis will fall off.

The main reason of having the NMS is to enable remote supervisor of the network and the team

from the Network operation centre (NOC) will carry out remote configuration without the need

of travelling to the sites [9]. The team will be controlling the whole network from a

single/multiple dashboard having all the rights of doing all the network works as the same as

they are own site. This move will save cost as the field technician will be roped in when it is

really necessary saving the operational costs. Having a customized NMS is an advantages

because every registered member has got to have a valid license to be able to carry out changes

on the network. Companies like TelOne, NetOne, Econet and Telecel they will be having

almost 200 employees each requiring access to the network remotely and the cost can be too

high.

Page 14: Design and implementation of a multivendor Network

4

The other challenges which these operators’ faces is failing to raise the amount required for the

upgrades. When operators are using the NMSes from the vendor upgrades are required

frequently and these works comes with a cost which should be factored on yearly basis. These

cost can prove to be too much for third world operators which sometimes work with outdated

NMSes due to lack of funds. The heavy reliance on these vendor NMSes will give vendors

full access to operators network and the can carry out changes which can ground the network

for them to provide support to justify the need of the support contract. The need of operator to

develop they NMS is not only to reduce the cost of license only but to also gain control of their

network.

Above are the challenges which operator are facing from the vendors and vendors are now

taking advantages of the situation by developing the NMSes which are proprietary to manage

their network elements. The NMS are scalable at costs. This situation will leave operator with

little works to do on their network because the whole network can be easy managed from

different location. They is growing need of operators to develop their own scalable NMSes to

monitor the network thereby creating or maintaining the jobs for the locals. They is growing

fear that if these trends remain many jobs are going to be lost especially in Africa and network

will be remotely managed by the vendors.

Other foreign companies like the Solar winds are developing Orion which is a generic-purpose

tool which all so does the monitoring of third-party equipment’s but again this comes at cost.

The open source systems are limited, they customizable to a certain degree and they are

associated with some other challenges like lack of network visibility, and one can’t see a

portion of a network or track a particular performance metric. Using Orion, the network

performance parameter are not very clear to understand. They also have challenges in

determining useful performance and insights, and establishing network performance baselines

[10].

The purpose of this research proposal is to design a multivendor NMS which will be able to

monitor every network device across the network

1.3 Project Objectives

The objectives of this project are:

To design a unified NMS that monitors Cisco, Fibre-Home and ZTE network elements.

To develop a friendly web user interface that will output connected network elements.

Page 15: Design and implementation of a multivendor Network

5

To design an NMS which carry out performance measurement and output service

alarms on the dashboard.

1.4 Significance of the Study

The significance of the research proposal is targeted at designing a unified network monitoring

system with faults resolution techniques and performance measurement module which is

scalable. The proposed research is very important because it seek to solve real problems which

is affecting telecom operators in Zimbabwe. There is growing need of locally developed

products to reduce to amount of foreign currency required to support the network. Also, the

research is multidisciplinary in that it combines concepts in information theory, microwave,

economics, computer networks, telecommunications and business to address the issues in

questions. The main goal is to develop and design a real time working unified NMS to monitor

the network.

1.7 Feasibility Study

A feasibility study and analysis was carried out to make sure if the project needs to proceed

given all the necessary resources and technology and to determine whether the final product or

system will benefit its intended users and also to determine whether the alternative solutions

will eliminate the existing problems in terms of inconsistences, performances and functionality.

The following feasibility studies were conducted:-

1.7.1 Technical feasibility

On technical feasibility, a set of technological tools that govern the design of the project were

considered which include proposed tools for web based application for design of both the front-

end and the back-end. The use of Html, CSS, JavaScript and bootstrap framework for front-

end and PHP5, MySQL and Maria Db can make the project more compatible with the current

technology. And also Visual studio 2017 makes it possible for the mobile application design.

1.7.2 Economic Feasibility

The economic feasibility study was conducted based on the given resource constraints. The

required resources are readily available and other utilities can be archived freely or at low cost

Later

Page 16: Design and implementation of a multivendor Network

6

In terms of development and operational costs the project is going to use more of free software

tools for design of the prototype up to the implementation of the final functional system. The

cost and benefit of each alternative was calculated and the system is compatible with a variety

of hardware as it is a multivendor unified Network Management System [11]. The project is

going to use minimal costs starting from the concepts development and prototypes until the

release of the working system and in return. After this study we concluded a reliable judgment

that this project was worthy and solving this problem was a worthwhile.

1.7.3 Operational Feasibility

Earlier in the Feasibility study and requirements engineering, we clearly analysed that the

system would be used after development. The problems from the current existing system

included too much costs, large license fees and also required more staff to carry the monitoring

as all the network elements were not able to be managed from a single platform .Through the

benefits of this unified network management system the system will be much appreciated by

most end-users as it is the alternative solution to the problems mentioned above.

The main objective of the operational feasibility study was to achieve the project goals and

objectives for both development and operations and to make sure it will serve the required

purpose while functioning as well as being appreciated by its users.

1.8 Project Organization and Thesis Structure

The project is organized into five chapters, including introductory chapter. The first chapter of

the report gives introduction the background, objectives of the study and the methodology of

this project. In addition, a brief description of the need for power usage optimisation in

Zimbabwe was presented, and the motivation for carrying out this project. Chapter Two

focuses on the literature review of systems, all the theories involved in this project, and

technologies in the field of Network management in telecommunications. Chapter Three

presents a detailed methodology of this project. A block diagram of the overall system design

is presented and the components of the project are analysed and selected, with justification

where appropriate. The system design of this project is presented at the end of the chapter. In

chapter Four, a detailed results analysis is done and works NMS application is presented. It

then explains the result of the project and the proceeds to discuss the results that were obtained.

In addition, the details of testing process that is done on the system are included. In Chapter

Page 17: Design and implementation of a multivendor Network

7

Five, a summary of the research work is presented to for this thesis. Limitations of the project

are cited. Recommendations and the potential further works are clearly stated in this chapter of

the thesis. References, appendices and the project Gantt chart of the project will be inserted at

the end of this thesis.

Page 18: Design and implementation of a multivendor Network

8

CHAPTER TWO: LITERATURE REVIEW

2.0 Overview

This chapter reviews the past developments in network Management Systems and some other

related technologies. Some important theories related to the project are also presented in this

chapter. In addition, it also presents an overview of network management architecture. The

chapter also explains the targeted components, network protocols and techniques as they apply

generally to network management. Upon completion, a basic theory of the Network

Management System technologies should have been understood [12].

Prior to the submission of research proposal, a sufficient research on the published literatures

related to this topic, had been done. The main idea of this research was inspired by the previous

works which were done by equipment vendors and others who develop monitoring system. The

two main goals of this project which are useful for the implementation of the proposed system,

were identified, which are the design and implementation of network monitoring system and

NMS user interface[2]. The purpose of this research design will be defined and concepts, which

have been helpful, in understanding technologies used in development of the proposed

application design will be collected. This proposed design goal is to come up with a system

that will monitor and give a high level topological view of the network, showing all types of

alarm to trace events which will be happening in the network. This move is possible only if

there is a proper network management and performance monitoring tools which can supervise

all the network elements [3] [13]. The network being managed whether in core, access,

transmission network element must show the topological view of network device connected in

that subnet showing performance metrics, faults re-routing using available algorithms and

escalates faults to second level teams.

2.0 Related Works

2.1 Network Management System:

When networks grow and become considerably bigger such as for Econet and TelOne, the cost

of licence fees to support the NMS become very expensive to maintain the entire network.

When such a scenario happens, cost effective solutions have to be developed to meet the same

standards that are being presented by equipment vendors. The network management system

have been developed for commercial and enterprise use using the existing software packages

Page 19: Design and implementation of a multivendor Network

9

creating systems which can monitor and manage networks [1]. It achieves this by storing the

collected information in a database .The database might be developed using SQllite or any

other Database Management Systems depending on the structure of the data to be stored and

maintained by the database. It uses some effective techniques or algorithms to evaluate the

state of the network. This system also provide performance data on how well the network is

being utilized [5].

Moreover, a network monitoring system should be able to monitor all events occurrences on

the network without putting undue load on the devices being monitored. Not many monitoring

system are able to achieve this feature. They are different techniques which are used by network

monitoring system to monitor the network. In the literature review section I will focuses on the

features required in ideal network monitoring system and those that should be provided to

produce a general purpose network monitoring system.

2.1.1 Dashboard:

A dashboard is a user interface that provides a visual display of information using a single/multi

screens such that all the network devices can be monitored at a glance [8]. This is very useful

for NMS because it allows the whole network to be monitored from a large monitor usually

placed in the network operation center (NOC) in of the system administrator and active search

to manually identify problems is eliminated. The current dashboard which are there includes

graphs that provides the performance measurement on the network or a particular transmission

line. It should streamline the process of finding faults by ensuring that it is easy to discover the

root cause of an event and by providing the direction to user were they should start any further

investigations. Lastly, it showed output alarms depending on the nature of the fault.

2.1.2 Configuration System:

Automatic configuration systems are important in today’s NMS, because they automatic learn

the changes in the network through machine learning and quickly effect changes on the

network. The changes are done with the aid of system administrator and this eliminates black

holes in the network i.e. nodes which are not being monitored in the network. If the network

monitoring system is easy to initiate and its configuration is easy to maintain, the model of the

network should be more accurate [14].

Page 20: Design and implementation of a multivendor Network

10

2.1.3 Service Polling:

Service polling is a type of network test where the network monitoring system regularly checks

for device/node availability and unavailability through ping test [13].

2.1.4 Graphing:

Time series graph depicting performance data drawn by network monitoring system can be

useful for identifying trends and anomalies [14]. In the event that large data quantity are

presented, such graphs are frequently used to summary and identify the change state of the

network. Graphs need to tailor according to the network being monitored. Most common time

series graphs are CPU and bandwidth usage these two shows how far the system is running to

full capacity. The bandwidth usage graph are more useful to system administrator and can be

used to plan network upgrades and identify likely bottlenecks [15].

2.1.5 Notifications and Events

Every network change should reach the network administrator no matter how serious the

change is to the network. NMS achieve this notification feature using event systems. Event

system is a simple system the continuously check that system parameter values are still with

the threshold or they have deviated. If there is change, an event may be triggered. Nevertheless

for complex systems like the NMS for enterprise anomaly detection is used to identify event

that can affect the network.

2.2 Network Monitoring Systems currently being used in my organization:

In my organisation and the telecommunications industry at large are being faced with the

shortage of foreign currency to service the licence fees for the network [15]. This is leaving us

with no choice but to diverse alternative systems which perform as the one’s currently on the

market. The current vendor supplied NMS are very expensive but they offer robust monitoring

systems that offer all of the above features and many more [15]. I will briefly examine the

NMS in use below.

Page 21: Design and implementation of a multivendor Network

11

2.2.1 Huawei U2000:

Figure 2.1: Shows the U2000 dashboard view

Huawei U2000 is an equipment management system developed by Huawei. Huawei provides

vender specific solutions using future proof management solution which can also carryout

power management and network functions. Figure 2.1 presents the dashboard view of the

U2000 management software. The Huawei solution is called the U2000 and they are migrating

to offer the new network cloud engine which will be cloud based. The U2000 manages the

transmission. Access, core and IP networks. Specifically, the U200 manages all the devices

which are presented in figure 2.2 which includes Huawei SDH, DWDM, OTN, radios,

switches, FTTX, voice switches, firewall and services nodes. Using SNMP and ICMP

protocols the U2000 software is also capable of managing and monitoring third party

equipment and services by directly collecting management information data for network

elements.

Page 22: Design and implementation of a multivendor Network

12

Figure 2.2: Shows the U2000 topology

The U2000 topology shown in figure 2.2 shows the network elements which can be monitored

on U2000 transmission platform. The elements are many showing that the database required

store the information must be huge and the U2000 solution supports hierarchical database,

web/client application and service processing system. It uses the modularized architecture

technique which is scalable to achieve the requirements of the management of complex and

very large network size, as depicted in figure 2.2 [16]. The system is built with the aid of object

oriented programming. Multithreading, multiprocessing, modularization and component

architecture design. This component design technique which is employed reduces coupling of

network elements as result the U2000 increases its management capability to monitor multiple

domains when the application is installed on different domains. The increase the system form

single domain to multi domain using this concept. The system was developed to easily integrate

with different NBIs systems.U2000 allows upgrades and maintenance of subsystems to be

independent because of the loose coupling framework. The system allows multiple clients for

different location to connect to the server at the same time with causing any problems. These

users can get access to same information and modify the data from different client concurrently.

Page 23: Design and implementation of a multivendor Network

13

Modularised architecture

Figure 2.3: Showing the U2000 modularised architecture

The Basic functions of the Huawei iManager U2000

The U2000 provides comprehensive management functions at the element management layer

and network management layer. This topic presents an overview of functions and features of

the U2000.

Security Management -This topic describes how to implement security management, such as

user management, login management, rights- and domain-based management, and security

policy management, to ensure the security of the U2000. Security management also includes

log management, which manages logs about the login, user operations, and running of the

U2000. In addition, the high availability (HA) scheme and data backup are supported to provide

a comprehensive security solution.

Topology Management -In topology management, the managed NEs and their connections are

displayed in a topology view. You can learn the network structure and monitor the operating

status of the entire network in real time by browsing the topology view.

Alarm Management -When an exception occurs on a network, the U2000 needs to notify

maintenance engineers in a timely manner so that they can recover the network quickly.

Page 24: Design and implementation of a multivendor Network

14

Fault Diagnosis -The fault diagnosis tool is used to detect network connectivity and perform

troubleshooting for the carrier network.

Performance Management -The performance of a network may deteriorate because of internal

or external factors and faults may occur. To achieve good network performance for live

networks and future networks while controlling costs, network planning and monitoring are

necessary. In addition, network efficiency needs to be measured in terms of the throughput rate,

resource usage, and error rate. The performance management function enables you to detect

the deteriorating tendency in advance and solve the potential threats so that faults can be

prevented. In addition, iManager U2000 Unified Network Management System Product

performance measurement based on service packets is implemented to collect performance

indicators, including the packet loss rate, delay, and jitter.

Inventory Management -The U2000 supports unified inventory management of physical and

service resources on the entire network. The U2000 provides clear and easily-accessible

information to users so that they can acquire an accurate and complete understanding of the

network-wide resources. The inventory information serves as a reference for service and

expansion planning.

Log Management -Logs are used to record the information about operations that were

performed and important events that occurred on the U2000. The U2000 allows administrators

to query and save logs and collect statistics on logs periodically. This action facilitates fault

analysis and detection of unauthorized logins and operations. Specifically, by browsing and

collecting statistics on logs, you can query the client from which a user logged in to the U2000

server and query the operations performed by the user after login. You can also dump and print

logs. Logs also can record operations that the OSS performed on NEs through NBIs.

Database Management -Database management includes managing NE databases and U2000

databases, and maintaining data consistency between the U2000 and NEs. The U2000

communicates with managed NEs successfully only after the connection parameters are

correctly set.

DCN Management -The U2000 communicates with NEs and manages and maintains network

nodes through a DCN network.

NE Software Management- also called DC, is an independent subsystem of the U2000. The

DC is used to manage NE software and upgrading or downgrading NE software. Managing NE

Page 25: Design and implementation of a multivendor Network

15

software includes saving, backup and policy management. Upgrading or downgrading NE

software includes loading, restoration, task management and managing Software etc. For

security, recommend to use SFTP as the transfer protocol between U2000 and NE.

Report Management -The U2000 provides reports on alarms, logs, and resources. You can print

the data or save the data as a file. The reports in tabular format can be filtered by equipment

type and saved in XLS, TXT, HTML, or CSV files.

System Monitoring -The U2000 provides a GUI-based system monitoring tool, which is used

to manage the U2000 and query the system information.

Network Management System Maintenance Suite -The network management system

maintenance suite (M-Suite) is a tool offered by the U2000 for commissioning, deployment,

and maintenance of HA systems and distributed systems, and database management.

2.2.2 Alcatel SAM:

Figure 2.4: Shows Alcatel lucent Assurance Manager Login page.

Page 26: Design and implementation of a multivendor Network

16

The Alcatel-Lucent Service Aware Manager is an equipment management system developed

by Alcatel. The figure 2.4 shows the Alcatel lucent NMS which used to monitor all the Alcatel

nodes and capable of monitoring end to end service management of service of their network

elements. The system is also equipped with additional software to monitor third party NEs.

The NMS recognise the third party elements as generic NEs/GNEs [17]. The NMS monitoring

software is referred as the SAM it allows users to carryout service provisioning with fewer

command line configuration and across vendor scripting performance to reduce errors. The

scripting technique also reduces the deployment time of network during change over. The SAM

system can provide monitoring for the transmission equipment by speeding up the installation

of integrated IP/optical systems which monitors service level agreement which pre-set alerts

which validate point to point service. The transport application provides diagnostic to IP and

optical paths to prevent service degradation using point to point power control, fault

localization, tracing and monitoring. Lastly, the application have inbuilt technique which

correlate network faults to diagnose the location of the fault and the cause. This feature which

is in SAM makes fault finding easy and faults are isolated way before they affect the working

service.

Figure 2.4: Shows Advanced fault management software’s

The snapshot above in figure 2.4 shows the fault management window for the SAM system.

The 5620 SAM series for Alcatel has the capability of doing the advanced fault diagnosis taking

Page 27: Design and implementation of a multivendor Network

17

snapshots of the whole network at glance. The system is also built using object oriented

programming coupled with its advantages it is able to provide network health check

automatically. The system platform has advanced sophisticated tools which are tightly

integrated to provide comprehensive fault management, service configuration, performance

measuring, accounting and security functionalities for the network. The service aware system

provides a way of managing the service provided to clients end to end creating a direct

interrelationship between managed objects network resource, the services being provided and

clients whom are using the service. The tools provides operators with the insight and control

of the network. These tools allows service providers to resolve network issues in real time

reducing service downtime.

The tools which are used by the SAM management system to determine the extent of network

issue on managed services are as below:-

The system uses the intelligent alarm system and correlation use of per-alarm

configuration scheduling. The system also couple the use of color-coded active alarm

alert system to remove duplicate alarms and reporting logs to analyse trends of events.

The use of GUI point and click configuration templates, profiles, topology form of the

network and service configuration reduces the provisioning time of service.

Comprehensive use of performance statistics counters to manage the service enable the

operators to measure usage of the clients accurately and clients are billed accurately

based on usage based models and the flat rate or destination based whichever is

applicable to the companies policy.

The platform also include an important feature of the collection and retrieval in real

time of current and historical performance data which measures the performance

stability of the links or service. The module also does the collection of performance

service statistics.

It includes simple templates to carry out the configuration of services and policies to

implement differentiated SLAs.

It has the security control module which is used to create use access privileges based

on the account settings of the individual or a group and provides controlled access to

network elements.

Page 28: Design and implementation of a multivendor Network

18

2.2.3 Fiber-Home UNM2000:

The UNM2000 Network Convergence Management System implements the convergent

management of platforms such as ultrawide band (UWB) and SDN and supports unified

management for FiberHome bearer and access devices [18]. The UNM2000 management

system is developed using low level languages with the capability of monitoring all the

elements from a single NMS platform. The system provides future oriented operation E2E,

highly reliable and intelligent maintenance solution. This improves the value as well as

operators and improves the company operation competiveness on the market.

The UNM2000 is backward compatible with all control and management functions of the other

version the OTNM2000 and ANM2000. The system inherits the scalable design and

modularized architecture which makes it easy to introduce new modules. Furthermore, the

system flexibly achieves the requirements of managing homogenous network and allows the

smooth expansion to multi-domain from single domain management to move towards the

requirements for convergence network development.

Advantages

UNM2000 implements convergence monitoring for core, IP, access and transmission

network elements with the capability of managing 50000 physical network elements.

The system offers convergence management and large capacity monitoring. With all

these capabilities the system has a processing power to manipulate massive data with a

single day processing of up to twenty billon performance entries.

The system provides the topology view which allows the operators to visually monitor

the NEs from a centralised point and this helps to understand the architecture of the

network and the status of the device on the network. It provides end to end service

monitoring ability of access service, OTN, SDH and IPRAN to meet client

requirements to effectively reduce the service development. The features of the system

are end to end service configuration, service management and monitoring dashboard.

The system was developed in cooperation with other OSS developers to design fast

northbound interfaces to allow the easy integration of the systems. It supports the

following northbound interfaces XML, CORBA, TCL and RESTful. It also supports

SNMP, TCP and UDP as southbound interfaces which are supported by the system.

The support of these two southbound and northbound are centred on the modularized

design of the system.

Page 29: Design and implementation of a multivendor Network

19

2.2.4 Dyhan SmartMan

Figure 2.5: Shows dashboard view of Dyhan SmartMan monitoring system

The figure 2.5 presents the Smart Grid monitoring system dashboard which shows the chart

view of the network elements which are being monitored on the NOC management platform.

The grid monitoring system was developed to be scalable, it adopts rich features and it’s

customizable. It can monitor smart power meter infrastructure and other active devices in the

utility network. The system was built with a capability of managing SNMP enabled devices

therefore it can manage networks that connects the infrastructure. The monitoring system

supports both the wired and wireless access plants. Dyhan system it has customizable based

component architecture. The system was built integrating different modules following the

modularized building rules. This technique makes Dyhan system more customizable for the

smart grid network and the development is more efficient and cost saving when building

futuristic systems. The system supports multiple operating system and database. The Dyhan

system was developed using Java and J2EE based technology. It runs on both the Linux and

windows operating system. Since, the system is JDBC compliant, it supports a lot of database

for example derby, Oracle, MySQL and PostgreSQL.

The Dyhan monitoring system supports the following protocols southbound and northbound

protocol.

Page 30: Design and implementation of a multivendor Network

20

Southbound protocol, the system supports ICMP, SNMP, CLI and DNP3. Furthermore, the

system was developed to be customized to equip it to support other proprietary southbound

protocols.

On Northbound protocols, the Dhyan monitoring system supports XML and SNMP over

HTTP. It uses these northbound protocols to communicate with the systems applications.

Apart from the protocols the system can support it comes with an intuitive NMS user interface

that makes it easy to monitor all of the network elements and improves network operator’s

productivity. The user interface shown below in figure 2.6 was designed with the operator in

consideration in order to improve their works. It incorporates the modern technologies for

example Flex, Flash and AJAX. The system has rich user experience interfaces and these

advantages allows operator to increase their productivity.

Figure 2.6: Shows the link performance measure window.

Dhyan monitoring system was built to be scalable requirements for the metering infrastructure

system, which have a wider radius to monitor in terms of meters. The system supports clustered

deployments. The servers are added to a network cluster to increase additional scale. This move

will increase the scalability of the system. This system has been deployed at large scale in

America and they are monitoring millions of smart grid meters. The system was developed

using EMS based technology.

The Dhyan system adopts the following features:

Page 31: Design and implementation of a multivendor Network

21

It has the cost effective smart Grid monitoring solution which is yield from the design

method which is employed in building the system. The system is designed using

modular based approach. The feature enable the design of minimal management

solution. The new features and functions can be included as and when required,

reducing the costs of deployment.

The system supports a wider range of hardware platforms depending on the size of the

network being managed. This management monitoring system can be deployed on any

platform form personal computer to clustered configuration design.

The system can be deployed with redundancy to protect the system against hardware

failures.

2.2.5: Vigilo NMS

Figure 2.7: Shows the Vigil performance system

The figure 2.7 presents the Vigilo performance management system. The system is modular

and the development allows it to monitor large systems which require its elements to be

monitored for performance. The monitoring system performs network management of device

status monitoring, device metrology, mapping and correlation. The market is dominated with

very monolithic and poorly adaptive monitoring solutions. The Vigilo management system

Page 32: Design and implementation of a multivendor Network

22

stands out and offer solutions which are adaptive and can be integrated into diverse. The system

allows operators to monitor the performance and availability of the links under monitoring.

The system offer the following advantages, the system is designed to monitor any size of the

network, and it has optimal standard features for network management, modular and

customizable. It offers essential tools that anticipate for malfunctions and resolve them in real

time without affecting the services.

2.2.6 Kaseya_Network_Monitor

The Kasey Network Monitor, servers and performance monitoring developed to monitor

UNIX, Linux, SNMP and windows enabled network elements. The system was previously

named Intellipool network monitoring system to monitor the same elements as the new

application. The commercial applications was designed and sold by the Swedish Intellipool AB

Company which was later purchased by Kaseya in May of 2011.

Figure 2.8: Shows the Kayesa monitoring system

The Kayesa NMS is presented in figure 2.8 on the dashboard above shows the list of elements

which can be monitored. The system does performance monitoring as well and provides

algorithms for automatic faults resolution.

Page 33: Design and implementation of a multivendor Network

23

The system has the following features:-

Patch management

User-activity monitoring

Agentless monitoring

Remote management

License management

Compliance management

Hardware inventory

Capacity monitoring

Event logs

Software inventory

The main benefits of using the Kaseya NMS

The main advantages of Kaseya network management system is that it used for managing and

monitoring of SNMP enable devices which include telecommunications and IT network

elements and processes, it allows the connection of remote management of devices and

provides for internet automatic updating of the system. Below are some of the features which

are provided by the system;-

Monitoring of IT-related processes- The system allows users to monitor IT related

network elements which allows automation and central monitoring of network

elements. The system manages more reliable, predictable and secure solutions for

business environments of any size. It is equipped with management tools which can be

used to identify network issues and moreover, faults are restored before they affect the

service. The system allows the operators to increase their productivity in other areas to

handle network issues in the field and to be assigned on critical network issues.

Devices and Network monitoring- The system offers a centralised dashboard which is

shown on the Kaseya network performance monitor presented in fig 2.7. The

performance module allows the technical operators to know important information

related to the network for example the monitoring of link bandwidth, memory size,

Page 34: Design and implementation of a multivendor Network

24

CPU usage, logs, disk usage and files. The monitoring system also manages the state

of workstations, servers, network status, remote workstation and many more.

Extends IT/Telecoms reach- The platform provides remote monitoring and

management capability. The operators are able to connect remotely, secure and work

from a distant end carrying network changes like they are working on site. This boosts

their reach and save on travel costs. The users uses the web browser environment to

connect to the device in the network without the distance limitation. They uses

advanced reliable connection links to gain access to computers and control them

securely with the help of these connections.

Automatic system updates- the Kaseya system application software provides the

workstations, remote personal computers, and network servers to update their software

versions to the current or latest software. The system is built to automatically handle

updates of devices and software applications with important software and security

patches.

2.2.7 Solar winds

Figure 2.9: Shows the Solar Winds monitoring system.

Page 35: Design and implementation of a multivendor Network

25

Solar winds are the leaders in providing commercial network management software and

monitoring tools. The rich graphical user interfaces shown in figure 2.9 shows the monitoring

tool that is used to monitor telecommunications network elements. In point form Solar winds

provides the following features:-

Network automation

Performance monitoring

Bandwidth Analysis

Manage configs

IP address management

Switch port management

VoIP monitoring

Troubleshooting tools

2.2.8 Unimus

Figure 2.10: Shows the Unimus management application

The Unimus is a network configuration management monitoring system which is deployed to

monitor the network elements and provides a performance measurement tools. The system

Page 36: Design and implementation of a multivendor Network

26

presented in 2.10, provides automation, device management, data disaster recovery and

configuration. The advantages of the systems are listed below.

Advantages

It supports the management of all network devices from the major telecommunications

vendors.

The deployment of Unimus application software to monitor the network elements is

very easy to set up.

It was developed to be very easy and intuitive as much as possible, so they is no need

of reading too much documentation

The system can be deployed to operate on Linux and windows environments and

supports wide range of hardware and application software

GUI web interface makes the system preferable and fast to work with the system with

minimal knowledge

The Unimus monitoring system is designed using modern technology and its adaptive

to the latest architecture and security trends

2.2.9 Wireshark

Figure 2.11: Shows Wireshark network traffic analyser

Page 37: Design and implementation of a multivendor Network

27

The Wireshark network traffic analyser is the one of the best leading tools on the market and

the tool was developed for security experts. The application software is free and enables

network users to analyse network traffic usage in real time. The tool is also used for

troubleshooting the network. The figure 2.11 shows the Wireshark analyser dashboard,

showing how packets are analysed when they are transmitted throughout the network. The

software display individual packets and details inside the transmitted packet. Network experts

uses the system to analyse the network and to resolve issues if they are present. Wireshark has

many features, some of the main features is that it can monitor packets in real time network

environments. The system also captures the packets and packets are presented on a rich GUI

interface which captures all the events.

Advantages

Provides an easier way of monitoring and faulting network elements.

The application software increases productivity because of easy dashboard tools which

are incorporated in the system

Provides real time management of network traffic

Disadvantages

Cisco proprietary. It does function on other network elements which are not Cisco.

May be expensive.

2.3.0 NetXMS

NetXMS is an open-source network monitoring system. The system was developed to monitor

the whole network infrastructure, and can also provide monitoring to SNMP enabled devices

which include hardware and application servers. Victor Kirhenshtein and Alex Kirhenshtein

are the original authors and current maintainers of NetXMS. The figure 2.12, below shows the

NetXMS monitoring software which equipped to monitor SNMP enabled devices.

Page 38: Design and implementation of a multivendor Network

28

Figure 2.12: Shows the dashboard of NetXMS system

Advantages

The main advantage of NetXMS is the ability to run a script on a problem node in response to

a trigger.

It allows Centralized configuration: the network elements configurations can be

changed through a management channel

The system is more secure: communication between nodes is encrypted and

authentication before use is required.

The node uses TCP unlike the connectionless UDP to establish communication with

nodes. TCP connection oriented helps in the case of poor quality network links.

Remote command execution- it provides remote configuration of network nodes and

commands can be installed remotely

Proxy functionality

SNMP proxy: nodes can be used to connect to other SNMP remote nodes

Extensible

Easy to upgrade

Disadvantages

Lack solid customer support teams.

Page 39: Design and implementation of a multivendor Network

29

Historically difficult to install and not user friendly.

The tool is time consuming

CLIs require extensive input of commands.

The GUI is difficult to navigate

The system is difficult to customize and to produce performance report

Tools lack customization and report generation.

2.3.1 Zabbix

Figure 2.13: Shows the Zabbix monitoring system

Zabbix is a free open-source management software tool for diverse communication

components, which includes networks, network nodes, virtual machines, servers and cloud

services. Zabbix shown in figure 2.13, provides performance monitoring metrics, among

network link utilization, CPU and disk space usage. The monitoring system configuration can

Page 40: Design and implementation of a multivendor Network

30

be achieved by the use of XML templates which contain nodes to be monitored [2].The

software monitors operations on Linux, UNIX, Mac OS, Solaris and other operating systems.

The windows systems can only be managed through agents. The Zabbix monitoring system

can use MySQL, SQLite and Oracle to store data [3]. The system was developed using C at the

backend and the frontend system was written using PHP. The system offers several monitoring

options:-

Simple checks can verify the availability and responsiveness of standard services such

as SMTP or HTTP without installing any software on the monitored host.

A Zabbix agent can also be installed on UNIX and Windows hosts to monitor statistics

such as CPU load, network utilization, disk space, etc.

As an alternative to installing an agent on hosts, Zabbix includes support for monitoring

via SNMP, TCP and ICMP checks, as well as over IPMI, JMX, SSH, Telnet and using

custom parameters. Zabbix supports a variety of near-real-time notification

mechanisms, including XMPP.

Conclusion

From the research they is need of a unified network management system which carry out

performance measurement and output service alarms on the dashboard as well as Aggregating

all the three EMS into an OSS which monitors multivendor network elements i.e. Cisco,

Huawei, ZTE and Fiber-Home network elements. This has been evitable as most of the

telecommunication companies in Zimbabwe seeks to reduce the license fees and costs of using

vendor based Network management systems. Also above Network management systems and

monitoring tools can only be used to do what they are designed to do and they cannot be

customized to suit our needs. However the currently used platforms.

Page 41: Design and implementation of a multivendor Network

31

CHAPTER THREE: METHODOLOGY

3.0 Overview

The chapter focuses on the overall design of the whole system of the project. The main

components used in the project are highlighted and justification is presented where it is

appropriate. The software codes used to design the system are also presented to together with

the code involved.

3.1 HIGH LEVEL SYSTEM Architecture

Figure 3.1: Shows the High Level System Architecture Diagram [1]

The diagram above shows the system high level system architecture model used to develop the

system. The system follows a three layered approach as shown in figure 3.1. The layers are

divided into three parts which are the data collection, storage and the presentation. The part

were briefly explained and the parts will be further discussed in the sections to follow.

3.1.1 Data Collection layer

This is the first layer which deals with the collection of data from the NEs to the database

(SQLlite) using SNMP protocol. They are many protocol available which can be used for the

collection of data from NEs but for this project standard SNMP protocol was preferred for its

advantages.

Page 42: Design and implementation of a multivendor Network

32

3.1.2 Processing layer

Layer two is the process layer, responsible for data calculation, storage, arrangement and

organization.

3.1.3 Presentation Layer

The third layer is that the application layer for graphical interface, facing the administrator, the

topology display, network performance analysis results display, alarm events management

operation and network event management and display [2].

3.2 Functional Requirements of an NMS

The NMS activities are defined in figure 3.1 through a user interface data flow diagram

presenting the functionalities of a good NMS [3]. The diagram presents all the basic foundation

on which the Network management functional requirements are defined.

The design clearly shows how information flow from all the stages until it is presented on the

GUI of the system. The system use a web based GUI because of its advantages [4]. The

functional requirements pertaining the design will be discussed in this chapter in detail. The

expected functional requirements of standard network management system design are design

are presented below:-

3.2.1 Dashboard Presentation

1. Network Elements should presented on a network topology showing all physical and

logical connection.

2. The dashboard should have separate subnets differentiating networks e.g. core,

transmission and access network.

3. Network elements must be easy to add or remove on the network Topology

4. The dashboard must be tightly synchronised with database to display real time events

3.2.2 Device Management

1. Creation of new devices to the network

2. Deletion or removing of devices to the network should be easy and involves fewer steps.

3. All devices are identified by IP address and IDs which should be allocated in a

systematic manner to avoid duplications.

Page 43: Design and implementation of a multivendor Network

33

4. All devices should be listed on the network topology subnetwork on the main

dashboard.

3.2.3 System Administration

1. Network nodes must be detected using devices OIDs received using SNMP protocol

and verified using MIB files.

2. OIDs received must be filtered to identify parameters required to be monitored from

the MIB files

3. Compare each vendors OIDs with manufacturers MIBs files to check for parameters to

be monitored.

4. Assign network IP address and IDs for the Network elements.

3.2.4 Alarm Surveillance

1. Faults must be detected using alarms received from the MO

2. Faults alarms must be filtered to remove redundant alarm information and then logged

in a database

3. The filtered alarms are presented on the dashboard and reported to the Network

Administrator

3.2.5 Fault Localization

1. The fault alarm information received from the Alarm Surveillance activity is analysed

to localise the fault

2. To isolate the faults, the fault management service queries a database containing

equipment topology information

3. All localised alarm information is presented to the systems dashboard

3.2.6 Performance Measurements

1. The activity of this module is to measure the performance status of interface ports and

capacity utilisation

2. The results are captured in the database and presented on GUI as in tabular form or

graphical presentation.

3. The results can outputted in real time or as historical data from the Database.

Page 44: Design and implementation of a multivendor Network

34

3.3 Design Consideration

Before designing the NMS, several design considerations had to be taken into account. These

considerations include the use of SMNP to access network elements, the need to develop a

scalable NMS, the need to develop a network management system that manages heterogeneous

networks and the need to design reusable components [5].

3.3.1 Simple Network Management Protocol (SNMP)

The project was designed using SNMP. The management protocol is required to give the

knowledge of the managed object’s information which will be used to monitor the devices or

network elements [6]. Most of the network device which are used in telecommunications

system supports SNMP and standard monitoring interfaces comes inbuilt in the network

elements. SNMP use was carefully chosen because of its advantages and wide spread use

within the industry. The protocol gained widespread use in 90s as standard of monitoring

connection oriented networks (TCP/IP) and also including the private networks. Internet

engineering task force developed SNMP and then it was used to monitor TCP/IP networks as

explained above. The advantages which comes with this protocol are its very simple to use,

interoperable with other protocol, easy to implement and consumes minimal processor and

network resources [6]. The SNMP defines the client and server relationship, the client program

will be stored in the agent which makes virtual connections to the server program that acts as

SNMP manager which executes polling instructions to collect information about the agent. The

database which is controlled by the SNMP manager is referred as SNMP management

information base (MIB). The MIB is a standard set of statistical and control values. SNMP also

aspects the use of private MIB’s which is the case with other vendor specific network elements

which uses standard set of statistical values [7]. This values used differ from vendor to vendor

as observed in this thesis. The SNMP protocol provides four basic functions to collect the data

from network elements which will be briefly explained below:-

Get Request: Specific values can be fetched from the network element via the “get” request to

determine the performance and state of the device. Typically, many different values and

parameters can be determined via SNMP without the overhead association with logging into

the device, or establishing a TCP connection with the device.

Get Next Request: The SNMP standard allows network managers to “walk” through all SNMP

values of a devices (via the “get-next request) to determine all names and values that a device

supports. The “walk-through” feature is accomplished by beginning with the first SNMP object

Page 45: Design and implementation of a multivendor Network

35

to be fetched, fetching the next name with a “get-next”, and repeating this operation until an

error is encountered (indicating that all MIB objects names have been “walked”).

Set Request: The SNMP standard provides a method of effecting an action associated with a

device (via the “set” request) to accomplish activities such as disabling interfaces,

disconnecting users, clearing registers, etc. The “set request” provides a way of configuring

and controlling network devices via SNMP.

Trap Message: The SNMP standard furnishes a mechanism by which devices can alert the

network manager on their own to notify the manager of an event which had occur on the device.

The trap function typically requires each device on the network to be configured to issue SNMP

traps to one or more network devices that are waiting these traps.

For this design, SNMP was primarily used for receiving Trap messages from the managed

network elements. The limitation of Trap messages facility is that manager’s network address

had to be pre-configured into the SNMP agents, so that the agents can issue traps to them.

During the design, Net-SNMP framework was used which is the set of command line tools and

libraries used for building the SNMP on enterprise networks. The framework preferred due to

its widespread use and can support all operating system including UNIX and Linux

environment.

3.3.2 Collection of OIDs and MIBs Files

The collection of OIDs and MIBs file for the agents which are three nodes under monitoring is

very important because it provides information of parameters to be monitored by the NMS. We

have chosen three different agents which are cisco, ZTE and Huawei switches the ODIs are

different and MIB files can be sourced from the manufactures or by reverse engineering when

the information in not available. During the project to gather MIB files for cisco was not

challenge but for other vendors were had to use other means of collecting the data. The MIBs

is the network’s information structure and data attributes collected from the network agent to

enable the manager to understand the information retrieved from an agent. The information is

the used by upper layer protocol to manage the network. SNMP walk was used for the

collection of information from the three switches which are SNMP enabled. The SNMP walk

provides ways of retrieving OID parameter available on the SNMP device. This will present

the parameter which are targeted for monitoring.

Page 46: Design and implementation of a multivendor Network

36

3.3.3 SNMP Data Flow Diagram

The data flow diagram blow presents the steps which are carried out when adding a new device

on the NMS and also steps to collect OIDs information from an agent.

Figure 3.2: Shows the Data collector data flow diagram.

Page 47: Design and implementation of a multivendor Network

37

3.3.4 Entity Relationship Diagram for the unified NMS

Fig 3.3: Shows the Entity Relationship Diagram for the unified NMS

Page 48: Design and implementation of a multivendor Network

38

The ERD shows entities in the NMS and how they are related. The Entities within the system

are network devices, systems administrator, NMS user interface, switch, Device management

interface, Fault management interface, performance management interface, SNMP agent,

polling module, Database, Fault/alarm, Graph and statistical information. Like Indicated above

on fig 3.3, the SNMP agent collects data from the network devices sending it to the polling

module which then updates the database. The NMS user interface has the performance

management interface, Fault/alarm management interface and the device management

interface. The performance management interface displays the statistical information in form

of graph and the fault management interface raise an alarm in case of a fault as well. The

systems administrator adds or remove network devices as well as maintaining the database.

3.4 System Lower level Design

Django Framework

Library

Module

Control

View

URLsClient

Interface

SQLITE 3

Templetes

Agent

snmp

SNMP TRAP

Library

CELERY

Tasks

Reds

Figure 3.4: Shows the System Lower level Design

Page 49: Design and implementation of a multivendor Network

39

The above figure 3.4, shows the system low level architecture, each module will be discussed

in detail and their use will be justified.

3.4.3 URL and Views Modules

The Django framework allows us to create URL configuration (URL config) module in python

language which will be used for mapping. The module is code in python programming code

and provides mapping between URL path expressions to python functions [8]. The mapping is

designed to be as short as possible. Using the python language, the mapping can be constructed

dynamically and it incorporates way of translating URL to active language.

The view module executes tree tasks it accepts HTTP request, applies business logic provided

by python classes and methods and HTTP responses to clients requests. In other words, the

view fetches data from a model and either give each templates access to specific data to be

displayed.

3.4.3.1 How URL and Views module process a request in Django

In this section we present how a request is processed when a request is received from the NMS

dashboard to the network management system. The system follows an algorithm to determine

which python code to execute:

Django determines the root URLconf module to use

Django loads that Python module and looks for the variable urlpattens. This is the

sequence of django.urls.path() instances

Django runs through each URL pattern, in order, and stops at the first one that matches

the requested URL, matching against path info

Once a match has been found, the framework imports and calls a given view.

If no matches, Django invokes an appropriate error handling view.

3.4.6 Libraries

Django framework comes with its own set of libraries for solving common tasks. A Django

software library includes prewritten software codes, classes, procedures, scripts and

configuration data [9]. In the development of the code libraries were used to the code to provide

more functionality and to automate a process without manually writing new code. This move

reduces the time to market a product.

Page 50: Design and implementation of a multivendor Network

40

In this project, Django REST framework was used, which is a framework responsible for

building application programming interfaces. The API allows the conversion of python codes

into a language that can be understood by the frontend program. The implementation section

shows the code snippets of a library which were used to build the code.

Django has an inbuilt object-relational mapper (ORM) that helps developers interact with the

database. AN ORM is a library that automatically transfers data stored in database into objects

commonly used in application code. The ability of Django’s ORM to extract information

speeds up web application development and helps developers build working prototypes in no

time. Developers don’t necessarily have to know the language used for database

communication to manipulate data. Additionally, Django’s ORM helps developers switch

between relational databases with minimal code changes. On the project since it is small we

are using SQLite and it is to switch to MYSQL in enterprise development.

3.4.7 Modules

The modules plays an important role to interfaces with the databases being used in the

development of the system. In the project SQLite and Reds are being used for different

purposes to store data. The SQlite comes with the Django framework and when the project

become bigger external SQL database can be used. The Reds is a small database which is used

to store temporary instructions awaiting execution to speed up the system processing speed.

The tasks will be executed from the queue fetching them from the Reds database individually

and this improve the performance of the system. The modules is a single, definite source of

information about the data [9]. It contains the essential fields and behaviour of the data being

stored. The model points to a single database table. The framework provides a python class and

a subclass. Each attribute of the module represent a database field. After defining modules, you

need to instruct the framework that the modules are going to be used. The works achieved by

editing the setting file and changing the installed application setting to add the name of the

model that contain the model.py.

Page 51: Design and implementation of a multivendor Network

41

3.4.8 Templates

In this project, we are going to use templates which comes with the Django framework in the

development of the system. The framework comes with a very powerful template engine and

its own markup language with many tools. In the development of the NMS system templates

were used to render data. The templates are files with HTML code that’s used to render data.

The contents of these files can be static or dynamic. The code snippets of the templates are

presented in implementation section.

3.5.0 NMS User Interface

The user interface presentation is very important in the development of NMS because it shows

the whole system works from a single or multiple dashboard. A good design of the user

interface will capture clients to purchase the system and clients wants a system which is easy

to use and can shows the whole topology of the network from a single dashboard. In this design,

efforts were made to capture all the network from a single dashboard and as illustrated on the

data flow diagram in figure 3.5 below capturing all the modules for device management,

fault/alarm management, security management and also performance management. These are

the main modules which will provides with event or information to be displayed on the GUI.

START

Open server url

ERROR?

Verify if server is running

Verify connectivityOK?OK? YES

NO

Start Server

YES

Click dashboard

Dasboard listiing is displayed

YES

NO

Click Device Management

List Devices Create Device

System Administratoin

NO

Vendors SNMP

Alarm Management

Interface Alarms History Alarms

Figure 3.5: Shows the NMS User Interface Data Flow Diagram.

Page 52: Design and implementation of a multivendor Network

42

The data flow diagram above presents us with the modules which can be accessed after opening

the NMS application. The NMS will present a dashboard with a list of icon which can link the

user to the modules. The basic function of the GUI is to display all the information which is

processed by backend of the NMS. The user of the frontend application can monitor the status

of the network in real time and also be able to retrieve historic performance data from the

system. The system was developed using distributed approach were modules can be accessible

from differently. The design of the system is line with available standard for the development

of NMS. The use of standards allows the design to have different modules .i.e. fault,

configuration, accounting, performance and security which are the basic modules for any NMS

development. The modules were included in the design and each module use will be discussed

in detail.

3.5.2 Fault and Configuration Management Process

The fault and configuration management process is responsible for showing the system status

and reporting abnormal conditions on the network through the use of alarms on the dashboard.

The process is regarded as simpler when is compared to the performance management which

involve monitoring various conditions of network elements which are aggregated to come up

with the system performance. The fault and configuration management process uses the OID

values and using the MIB file from the vendor status of the NE can be monitored with involving

additional computation ability. The OIDs values are collected from the NEs which are required

to perform fault management functions. The information collected shows the operational status

of the network element interfaces status, the hardware components and software components.

The NEs have been configured to read and write mode. This in tells that the values cannot only

be read but changes can be effected to the data residing on the NEs. The state of the NEs can

be changed to up or down by the use of command line or GUI. Using the configuration process

module present on the system the uses are able to perform configuration by changing the state

of the devices. The table below shows a table of variables indicating faults in the Cisco NEs.

Page 53: Design and implementation of a multivendor Network

43

Table 3.1: OIDs values showing Alarms on NEs

Variable Object Identifier Description & Value

IfadminStatus 1.3.6.1.2.1.2.2.7 Shows the state of interfaces in the

network.

Up (1)

Down (2)

Testing (3) Sending dummy

bits through an interface

hrDevicestatus 1.3.6.1.2.1.25.3.2.15 Hardware running Status

Unknown (1)

Running (2) device up

Warning (3) Error

Testing (4) testing state

Down (5) device down

HrDevicestatus 1.3.6.1.2.1.25.4.2.17 Software running status

Running (1) software is running

Runnable (2) Waiting for resources

Runnable (3) Loaded & waiting for

event to start the process

Invalid (4) software not running

The collection of OIDs have been described in section 3.2 on the SNMP data collection

dataflow diagram. The same process is followed when collecting values for the faults

management variables. The information captures the current event information pertaining to a

specific NE. The SNMP manager poller initiates an SNMP session with a SNMP Get request

and stores these values status on the SQLite database which is being used for this project. When

changes are to be effected on the network element, the manager uses the SNMP set operation

in order to modify the status variable in table above.

Page 54: Design and implementation of a multivendor Network

44

3.5.2.1 Device Status

The NMS captures device status on the dashboard and displays the current status of the NEs at

any given point in time. The information collected from agents and NEs is manipulated in the

device modules by assigning the respective OID to represent a condition to be display on the

dashboard. The Agent and NE are different, an agent is a software resident in the NE which is

responsible of establishing communication with hardware resource server and NE is the

hardware and software components of the device. The following information of the OIDs were

retrieved from the NE .ie. 1.3.6.1.2.25.3.2.1.59 and 1.3.6.1.2.1.25.3.2.1.5.1., showing that the

hardware component are working properly. This condition is displayed as green colour on the

dashboard showing that the hardware is working properly as expected. Nevertheless, if the

condition changes, the respective OID value is sent to manager and process through the relevant

code module to capture the changes which will be to the database. The changes are sent through

traps and the NMS will capture the fault indication by showing a red alarm colour on the

dashboard.

The other important parameter that is monitored on the switch is the status of the interfaces.

The agents monitors the status the interface by sending traps to the manager of the changes in

interface condition. The NE can show an up state on the interface showing that everything is

in good order and can also show a down state on the interface showing a fault. These status are

collected using SNMP using ifadminstaus OID. The SNMP set operation can be effected to

modify the status of the interfaces.

3.5.3 Performance Management

Performance measurement is one of the important feature of the NMS were the performance

of NEs are monitored to come up with the over system performance of NEs [9]. The

performance of a network can be assessed by interrogating all the NEs in the domain. In our

project we physically simulated a network by interconnecting NEs using physical connection

to form a network. The NEs were connected using FE interfaces through CAT5e cables. The

code will automatically calculate the performance of the system. The NMS uses polling of data

from agent to capture required object values from agents which require constant monitoring.

The use of MIB variables are not a representative indicator of the network status and variable

require to be aggregated with several variable to come up with the required performance

measurement formula. The section below presents the calculation that have been performance

control module to calculate performance. The performance function are recommend by the

ITU-T.

Page 55: Design and implementation of a multivendor Network

45

3.5.3.1 Performance Management Parameter

The table below lists the messages that are required for monitoring performance functions. The

information as well as the values have been defined and stored in the agent’s MIB database.

The messages is identified by unique OID value in the MIB tree. This means that whenever a

message request is received by the agent, the message name is mapped into the OID equivalent

and the agents reads the stored value from the MIB. There are different fixed numbers of

datatypes which are used by the values of OIDs. The value types used for performance variable

are timetick, counter32 and Gauge32. Timetick represents an unassigned integer that represents

the time. The range of the timetick is 0 to 2^32 in hundredth of seconds. Counter32 represent

a non-negative integer which increases until it reaches a maximum value of 4294967293 when

the counter reaches the maximum value. Then it starts to increase again from zero. Gauge32

represents an unsigned integer, which may increase or decrease but cannot exceed a maximum

number.

Table 3.2: Variables Required For Performance Management

Variable Name OIDs Description Value Type

SysUpTime 1.3.6.1.2.1.1.3 The time since the managed

node was last re-initialize

TimeTicks

ifInErrors 1.3.6.1.2.1.2.2.1.14 the no. of inbound packets

with an error

Counter32

ifOutErrors 1.3.6.1.2.1.2.2.1.20 the no. of outbound packets

with an error

Counter32

ifInUcastPkts 1.3.6.1.2.1.2.2.1.12 the count of inbound unicast

packets

Counter32

ifOutUcastPkts 1.3.6.1.2.1.2.2.1.17 the count of outbound

unicast packets

Counter32

ifInNUcastPkts 1.3.6.1.2.1.2.2.1.11 the count of inbound non-

unicast packets

Counter32

ifOutNUcastPkts 1.3.6.1.2.1.2.2.1.18 the total outbound number of

non-unicast packets

Counter32

IfInOctets 1.3.6.1.2.1.2.2.1.10 Total number of octets

received on an interface,

including framing characters

Counter32

Page 56: Design and implementation of a multivendor Network

46

ifOutOctets 1.3.6.1.2.1.2.2.1.16 Total number of octets

transmitted out of an

interface, including framing

characters

Counter32

ifSpeed 1.3.6.1.2.1.2.2.1.5 Interface’s current

bandwidth in bits per second.

Counter32

ifInDiscards 1.3.6.1.2.1.2.2.1.13 Number of inbound bytes

that have been discarded to

free up the buffer space.

Counter32

ifOutDiscards 1.3.6.1.2.1.2.2.1.19 Number of outbound bytes

that have been discarded to

free up the buffer space.

Counter32

ifInUnknownProtos 1.3.6.1.2.1.2.2.1.15 For Packet-oriented

interface, the number of

packets received via an

interface which were

discarded because of an

unknown or unsupported

protocol.

Counter32

ipOutDiscards 1.3.6.1.2.1.4.11 he number of output IP

Counter32

146 packets for which no

problem was encountered to

prevent their transmission to

their destination, but which

discarded (i.e. lack of buffer

space)

Counter32

ipOutNoRoutes 1.3.6.1.2.1.4.11 The number of IP packets

discarded because no route

could be found to transmit

them to their destination

Counter32

ipFragFails 1.3.6.1.2.1.4.18 The number of IP packets

that have been discarded

Counter32

Page 57: Design and implementation of a multivendor Network

47

because they needed to be

fragmented at this node but

could not be (e.g. their D

ipOutRequests 1.3.6.1.2.1.4.10 Total number of IP packets

which local IP user-

protocols supplied to IP in

requests for transmission

Counter32

ipForwDatagrams 1.3.6.1.2.1.4.6 The number of input packets

that request to find a route to

forward them to their final

destination.

Counter32

3.5.3.2 Total Packets Received Calculation

The system is able to calculate the total IP packets received at a NE’s interface. The formulas

are inputted in the system’s performance module designed to monitor the performance of the

system. The total IP packets received (TR-IP) is count which measures the number of packets

received at a NE’s interface [10]. The total number of packets received across an interface is

given by sum of all inbound packets. Furthermore, the inbound packets is composed of the

following packets unicast, non-unicast, discarded, packets with errors and packets discarded.

The equation for calculating the total IP packets received by a NE’s interface is depicted in

equation (3.5.1). The following packets which makes the following equation are acquired by

from SNMP OID variables.

Below is the equation for calculating TR-IP:

TR-IP = ifInUcastPkts + ifnNUcastPkts + ifInDiscards + ifInErrors + ifUnknownpotos (3.5.1)

3.5.3.3 Calculation of Total Transmitted Packets

The above formula 3.5.1 gives the total transmitted IP packets through an interface. The

number of successfully transmitted packets (TT-OK) over the link is as given on the below

formula:-

TT-OK = TT-IP- Total Errors (formula 3.5.2)

Where, total errors is given by:-

Total Errors = ifoutDiscards + ifOutErrors (formula 3.5.3)

Page 58: Design and implementation of a multivendor Network

48

3.5.4 Capacity Utilization Formula

The capacity utilisation formula measures the utilisation of an interface over a period of time.

The formula is expressed as percentage in which the resource total usage is compared to its

maximum operational capacity. Capacity utilisation is the principle for determining how full

the network links are. This measure enable us to monitor links with congestion throughout the

network. In this project, WAN connections were used which uses full duplex mode allowing

communication in both directions concurrently. If the utilisation rate is over 80% is noted as

an overloaded and traffic required to be transferred to less congested routes or an upgrade. The

calculation of utilisation rate, is very complicated and needs to sample the interface or link over

a period of time. The values acquired from the agents are octets meaning that the each octet is

one byte. So the formulas need to be multiplied by 8, eight times to get the rates in bit per

second. The NEs has modes of communication which preconfigured which are half and full

duplex. The duplex status is indicated by the value of OIDs. Since, full-duplex is being used

(FDU), the capacity utilisation formula calculates the larger value of the input and output octets

(bytes) and output the capacity utilisation percentage. The calculation of capacity utilisation is

given as below:-

CA = Max [(ifinOctets- ifInOctects), (ifOutOctects-ifOutOctets)]*8*100/ (formula 3.5.4)

[(sysUptime – sysUpTime)*ifSpeed]

3.6 Project Approach

This section aim to describe the design approach which was employed during the development

of the system. The primary objective of the project, is to design a NMS which can be used to

monitor heterogeneous network elements with the idea of aggregating the organisation NMSs.

The below highlights the different approaches that were used to improve the design of the

NMS.

3.6.1 High Level Programming Language

The system was develop using python a high level language. The language is easy to code and

to process data. The language has a drawback of the speed of execution which is less than other

low level programming languages [11]. The programmers are reverting to use python

programming because of its short turnaround time. The other companies are using python

programming because the code be easily further developed while list the application is in use.

The complied programming language C have a small memory footprint than the interpreted

Page 59: Design and implementation of a multivendor Network

49

language python which requires large memory storage space. The issue of memory size is no

long an issue nowadays as we have technologies which can develop large memory devices

easily. The python programming language is compatible with various operating system (OS)

and also across different forms of architectures.

3.6.2 Multi-threading

The development of the project was developed around the concept of employing multithreading

techniques. The approach was used after previous solutions failed due to serial approach which

they followed in designing the management tools. This tool was developed keeping in mind

that multithreading was the important component of the project. The project designed using

threading solutions divides the project into different sets of modules each module responsible

for a different function. The tool is easy to upgrade and to add other different module in the

future to keep in trend with technological changes. The individual modules within the code

operation could be executed in parallel thereby increasing the processing speed of the system.

The python language works well using single threading and changes had to be made using

python interpreter lock. This module allows the python code to do multi-threading. The python

libraries were made to be thread safe.

3.6.3 Data Storage

This project uses SQlite, celery and reds database for information storage. The celery and reds

storage are used for storing tasks which are awaiting processing. This were included to

increasing the speed of processing. It provides secondary storage and the primary storage is

provided by the SQlite. The primary storage store various files from NEs through the

information which collected by SNMP and files are created included node and network

information. Files collected information are advantages when using information from one

system to another. The file are stored in different files within the network in hierarchical order.

This move allows node information and timestamp data to be searched through easily. The use

of different files makes it easier for parallel information access on the database.

3.6.4 SNMP Configuration

The SNMP configurations is used for the collections of meta information about the interfaces

within the nodes which includes name (ifName), description (ifDescr) and many more. This

kind of information is collected once and are stored for use by the visualization module and the

meta is refreshed each day. When the SNMP is used for enterprise, the mapping from the MIB’s

Page 60: Design and implementation of a multivendor Network

50

files needs to be looked up to reference the collected objects. The mapping is also done once

at the beginning.

3.6.5 Data Cache

The cache memory is used to store data temporary within the storage units. When data is

collected after each iterations, its timestamped and temporary stored for use by the visualization

module. The catching is done for meta-information which include interfaces names and

descriptions, status information and performances data. The data in the cache are flushed after

the end of 24 hour cycle.

3.7 Implementation

3.7.1: Django framework

The project is being built using python programming language, because of its wide spread use

nowadays as shown in backend design diagram in fig 3.3 below. The figure shows all the

modules which were used to come up with a working system and also how each module is

integrated to other modules. The programs built using python they can be achieved using

various methods using frameworks which incorporate already coded libraries which allows

teams to develop a working system with in the shortest period. In the project the Django

framework was chosen over other frameworks which are available because it’s a framework

which is now very common in the development of web applications. Django is defined as a

model view templates (MVT) web framework. The framework is robust and simply to help

web developers write clean, efficient and powerful code as compared to other python

frameworks. The framework is being widely used by international company and government

agencies like Instagram, Youtube, Google and NASA to develop their applications with the

shortest period of time. In this project will discuss the libraries, control module and scripts

which comes with the framework in detail. The code snippets of all these modules will be

presented to show how there are integrated in the project.

This framework surpass other python frameworks which are available today which are

Charmpy, Webpy, Tornado and other frameworks. The advantages and disadvantages of the

Django framework are as tabulated below.

Page 61: Design and implementation of a multivendor Network

51

3.7.2: Advantages of Django Framework

Django is defined as a batteries-included framework. It comes with a lot of stuff out of

the box that are available for use by importing packages.

Django uses python, it leverages some of the fame and power of python to its own

benefit. Python is arguably one of the easiest if not the easiest programming language

to lean for beginners.

Django’s community is one of the best. They are helpful and actively working on

making the framework more friendly and stabilizing the framework while adding new

features. The framework has quite thorough and is useful as a standalone tutorials.

The framework is scalable

The framework has a built-in administrative interface at the backend to manage your

data with basic CRUD operations.

Security Users of Django will be impressed with the level of protection from all

possible security-related errors like clickjacking, SQL injections, cross-site scripting,

and forgery.

3.7.3: Disadvantages of Django

The URL specifying with regular expressions it’s difficult to accomplish for at least

beginners.

Templates errors fail silently by default, it requires experienced developers to

understand what’s wrong on the code/application.

The following are the code snippets of the network management system. It shows the celery

tasks to perform different operations.

3.7.4: Celery task to save trap data.

This section seeks to present the codes snippets used to develop the system. The code was

developed including the celery database as highlighted in the network relationship diagram

presented in figure 3.3. The code snippet in figure 3.6 shows how traps are save in the

temporary database while awaiting execution. The trap is save a received trap. This tasks

invokes methods from the unmslibrary for processing and saving the traps received. In celery

Page 62: Design and implementation of a multivendor Network

52

database, before the traps are saved they need to be parsed to check if device is configured in

the system, enterprise and OID.

Figure 3.6: Shows the code snippet for Celery tasks

The code snippet above shows a function save trap (data) .It collects network device data

information by the use of SNMP.

3.7.5: Device Management module Code

Device management module code snippet presented below in fig 3.7 manages the device

availability on the network management. The devices SNMP management OIDs are monitored

to check if the device is offline and online. The managed devices addresses were used to locate

the device in the network and on this project three device were used. When the network grows

device addresses needs to be carefully shown and planned.

Figure 3.7: Device Management module code snippet

The above code snippet shows the task to check the status of the main code, database, and

interface response.

Page 63: Design and implementation of a multivendor Network

53

3.7.6. SNMP details template.

SNMP details template captures the SNMP device information of the network elements in the

network, version and SNMP security level. Figure 3.8 snippets shows how the code was

configured to collect these details from a network element.

Figure 3.8: Shows the SNMP details template

SNMP details template shows the SNMP details for device and the SNMP details list as well.

3.7.7: Device database model

The device database model presents the code for storing the device information in the database

for presentation by upper layers. The project use SQlite because of its easy to upgrade and cost

was another factor which influenced its use. In the code presented in fig 3.9 the structure of the

database used is shown and the types of information to be captured. The important information

highlighted is the device name, type, vendor, model and many other useful information needed

to monitor a device on a NMS.

Page 64: Design and implementation of a multivendor Network

54

Figure 3.9: Shows Device database model code snippet.

The code snippet shows the device database model .It defines some attributes of the database

as shown.

3.7.8: Celery & Reds task to collect performance data

In this project, celery and reds temporary storage were used to collect performance data. This

configuration was done to reduce the processes which are carried out by the system to fetch

performance indicator from the system. The configuration will speed up the system execution

time through using other small database to collect data. Fig 3.10 below shows the configuration

used to collect performance data from device interface.

Figure 3.10: Shows how performance data is collected.

The code above collects performance data from the interface.

3.7.9: Celery settings configuration

Figure 3.11 below shows the code snippet for celery settings configuration.

Page 65: Design and implementation of a multivendor Network

55

Figure 3.11: Shows Celery application configuration

The code snippet shows the celery application configurations.

3.7.10: Interface trap and performance database models

The code snippet in figure 3.12 below shows the performance database model. The code sends

interface traps to the system capturing changes observed on the interface. The model used for

this system captures and store the interface related performance monitoring updates/ traps. The

system is configured to capture or monitor utilisation, received and transmitted octets.

Figure 3.12: Shows the performance database model code snippet.

Page 66: Design and implementation of a multivendor Network

56

The code snippet shows the interface trap and the performance database model. It’s a model to

store interface related performance monitoring.

3.8 Summary

This chapter 3 presented the overview of how the system was designed. Clearly showing out

how each and every module is interrelated to one another with the aid of relationship diagrams.

The design constraint were explained and justifications of using different technical approaches

than the one found on the commercial NMS was also explained. On the implementation section

the code was presented showing how module in this system were configured and dataflow

diagram were added to simplify the understanding of data flow within the system. The next

chapter will briefly present the results and depth analysis was presented to compare the results

obtained with the working systems.

Page 67: Design and implementation of a multivendor Network

57

CHAPTER 4

4.0 RESULTS AND ANALYSIS

Chapter 3, presents an overall design of the network management system detailing software

components, physical components and the graphical user interface (GUI) software components

used. The chapter clearly showed how these components interact with each other to provide a

working NMS. Chapter 4, presents the results and analysis of the developed network

management and comparing with other vendor specific and generic systems which are already

there in the market. In section 4.1 the results of NMS designed are outlined based on the

functionality of the system, 4.2 results are analyzed comparing with the existing systems on

the market and 4.3 simulation of results using the bandwidth throughput tests (RMON) using

EXFO Ethernet Tester.

4.1 Results of NMS system

On this section, results of the developed system will be discussed looking at different

capabilities of the system which were spelt out during the design. The unified NMS was

developed to substitute the current vendor specific and generic NMS which are licence based.

The system presented is custom made which can be tailored to suit the need of the operator

with minimum cost fees. The system was developed to monitor every telecom network element

network, therefore the solution is best suited for very operator. The solution was designed with

a friendly GUI which is the same as for other vendor NMS which makes uses of graphs and

subnet networks topology to easy one understanding of the network. This design was made

possible by the use of python and HTML programming languages which have strengths in

visualization and graphical presentation [1].

Comparably, to other NMSs the system manages data, it also analysis of statistical data collect

to the servers, provides an improved data visualization and makes prediction using

mathematical algorithms which is inherently embedded on the framework which uses modules

which can carry out calculations to predict errors and faults in the network. Figure 4.1 below

shows the network management system dashboard, device management network window

which shows the elements connected to the network and their connections whether fibre,

Page 68: Design and implementation of a multivendor Network

58

copper UTP cable or microwave connections. The system like any other provides

configuration, performance and faults windows [2] which will be discussed in detail.

Figure 4.1: Screen Capture of the NMS GUI showing the main dashboard window.

The above screenshot in figure 4.1, shows three devices which are connected to the network

and they are online. They are cisco, ZTE and Huawei switches which are the three physical

devices used in the development of the system to represent NEs since the collection of the OIDs

and the MIBs file will differ from vendor to vendor. On the dashboard as well we observe a

total of 122 interfaces and from the total 18 are active and the rest are disconnected.

4.1.1 Device Management window

The device management window snapshot is rendered based on the functions the system can

perform compared to the other systems on the market. On the snapshots the device management

windows does the node addition to the network, service configuration, network parameter

settings and network element deletion on the network [2]. All these are basic function of NMS

which is achieved by all the systems discussed in chapter 2. Fig 4.2 shows the snapshot of the

device management window from the system. The add icon is used to add additional network

elements in to the network subsystem whether a new installation or a replacement. The nodes

carry a unique IP address which is used to add them to network. In this project, SNMP was

used to collect node specific information for monitoring. The device can also be deleted from

network topology using the delete icon.

Page 69: Design and implementation of a multivendor Network

59

Fig 4.2: Screen capture showing NMS device management window.

The dashboard shows the device lists with three devices on the host field, there is the type field

which shows the type of equipment installed whether it is switch or router and also the version

field which shows the version type of the equipment. The NMS system capture the city and

region information to easy the works of the NOC team in identifying location of faults and

support teams.

4.1.2 Alarm Management window

The alarm management snapshot is presented to show the results presented by the alarm

module and this module is very important in the telecommunication field as it reduce the mean

time to repair (MTTR)of service rendered. Fig 4.3 shows the alarm management window

snapshot. On the snapshot it shows different types of alarms which are minor, major and critical

using the convectional colours which are used by every developer distinguish them. Blue

colour is used to indicate a minor alarm represents (10^-12) for a non-service affecting alarm

nevertheless is shows the degradation of the quality of service. This alarm assist in faults

prediction [3]. Yellow/or Orange colour represent (10^-9) a major alarm for service affecting

alarms and these alarms are used by performance management modules to initiate service

Page 70: Design and implementation of a multivendor Network

60

rerouting. Lastly, the red colour represent critical alarms which usually fall below 10^-6 usually

shows that the service is down due to hardware failure or break in the link.

Fig 4.3: Screen capture showing NMS alarm management window.

The alarm window shows the alarms in the network the alarms are set to certain thresholds in

the system when the threshold is reached the alarm is triggered and outputted on the dashboard

alerting the responsible authority to take action.

4.1.4 System Configuration

The system configuration snapshot is presented to show the results of the configuration module.

The module was developed following the standards used to develop network management

systems which are currently on the market. The goal of configuration management module is

to monitor network and carry out system configuration of service required by clients. The

module was developed with integration software to allow different vendor equipment whether

hardware or software to interoperate, observed and monitored on a single platform [4]. Fig 4.4

shows a snapshot for the system configuration which shows how the services are configured

on the network. The platform provides GUI service configuration for any devices. The solution

presents a quicker way of achieving the goal allowing the running codes to assist in the

automation of the configuration process.

Page 71: Design and implementation of a multivendor Network

61

Most vendors have developed NMSes with a system configuration module which automates

configuration using GUI and the action have shorted the service delivery time. Below is a

snapshot of the service configuration module which presents the same results as others.

Fig 4.4: Screen capture showing NMS System Configuration Window.

The system allows the configuration team to assign service to various interfaces on the nodes

and add new devices. The team can also do traffic shaping and bandwidth management on the

ports of inbound and outbound traffic. Labelling of clients port is other feature which is

provided by this module. With the increase in the number of network elements deployed, it is

paramount to be able to accurately identify the location of network device. The location

information is a detailed description captured in the remarks section which is used to assist the

NOC team in assigning correct resources when a problem occurs.

4.1.4 System administrator

The system administrator icon the main dashboard provides the security management of the

system which is to control access to network resources according to the rules of the operator.

The security management module prevents network sabotage whether intentionally and

unintentionally [5]. The security administrator subsystem includes user management, NE

management, and access control and resources management subsystem. These subsystem are

the basic features of good NMS because without proper security the network will be exposed.

Page 72: Design and implementation of a multivendor Network

62

This section discuss the results of the security management subsystem comparing to other

system and we selected three systems i.e Huawei U2000, Alcatel Lucent ISAM and Fiberhome

UNM 2000. The results obtain were tabulated on the table below on Figure 4.6. The field of

security management is very vast and vendor have invested a lot in security, therefore in this

project we are only discussing security related to SNMP and basic node access security.

4.1.4.1 Devices Access Security

The Access control list is one of the three security which will be discussed, the access control

which is found in the user management subsystem. This provides access level security to grant

and to forbid access to the system users who doesn’t have valid username and password into

the system. The password are set by the system administrator who overly manages the system.

These features are also present in every NMS and the system administrator can further provide

access levels in the system denying other users to access certain network elements.

The feature also presents the user IDs and passwords local to device. This feature provides

access to site technician to view the network while troubleshooting and it is helpful when the

NMS is unable to make changes to NEs due to break in communication. The credentials given

can be allocated levels of access in the system.

The NE controller is another feature which is added to control the access for the nodes on the

network management system. This feature allows the node to have login parameters before

being connected to the network. This prevents operator from viewing the other operator’s

equipment and to make changes which can affect the running of the network. The operator’s

networks are connected through physical media and only the NE controller password can

separates networks. This feature is very common and operators usually request for this security

during project development.

4.1.4.2 SNMP security

We compared the level of security being provided at SNMP protocol level and observed that

the system was offering the same level of security with other products. The SNMP protocol

can be used to make configuration changes on a network element similar to those issued from

the command line (CLI) [6] because they provide a channel which gives access to the device.

The system provided proper security on the network device to prevent unauthorized access and

changes through the use of SNMP channel. The community strings followed the standard

Page 73: Design and implementation of a multivendor Network

63

password guidelines for length, characters and difficulty of guessing. This system prompts the

administrator to change the community strings from their public and private defaults. For

further enhancement of security all the SNMP management host(s) are required to have a static

IP address and be individually granted the SNMP communication rights with the network

device by that pre-assigned address and access control lists. These system provides security

features that ensure that only authorized management stations are allowed to perform changes

on the network devices.

4.1.4.2 Tabulated Security Management Results

Discussed above on section 4.1.4 are security management results which is a subsystem of the

project that deals with security. The results were tabulated to clearly show the strength of the

system compared to three system which were chosen. The results are as below:-

Table 4.1: Shows the comparison of the developed Unified NMS and other vendor

specific NMSs

Security Feature Unified NMS Huawei U2000 Alcatel ISAM FiberHome UNM200

Device Access

security

Access Control

Lists

User’s ID and

Password for

local Device

Access

NE management

security

SNMP security

CLI security:

Telnet and SSH

Page 74: Design and implementation of a multivendor Network

64

4.2 Comparing NMS Results with Market available Products

Section 4.2 compares the system with other network management system currently on the

market and in use in our organisation. The system was compared of execution speed,

scalability, modularity, multiprocessing and request approach as highlighted below. The

system showed that some module are performing as expected and other are not nevertheless

with the advantages of other module the system can produce the desired results as others.

4.2.1: Comparing Python Vs C programming languages

Most of the implementation of NMSs were developed using C language on the backend and

the frontend they mix javascript and HTML programming language for most NMSs discussed

in chapter 2. Developers are starting to use python programming language because of its

strengths. Despite the challenges of slow runtime, its relatively slow when compared to other

languages in terms of speed of execution. Since, other NMSs are developed using C they take

months to develop dedicating full time teams to work on the program.

Django frameworks provide simple platforms to develop system which can reach market as

quickly as possible. With its advantages the language was preferred over compiler languages.

In the collection of results different scenarios were compared python program, cython (mixture

of C with other languages) and C language program. The changes were done, to consider one

of the claims of the tool which the speed of execution. The speed of execution of compiler

languages like C and java is claimed to be faster than interpreted languages like python. Also,

improvement were done on the program to mix python and C and tests were done to check for

the effects.

The memory footprint left behind by the C implementation is lower than for python but these

is no longer an issue since hardware devices being developed nowadays have bigger memory

sizes. Fig 4.5 results justify the improvement in speed as a result of mix the languages i.e

python and C to improve the speed of execution [7]. The results will be the same as for other

programs developed using C language only which are listed in chapter two. Also, the results

shows a slow execution speed which is being ignored by developers which are now using

python like YouTube and Google to reduce developmental time [8].

No of iterations: 10

Page 75: Design and implementation of a multivendor Network

65

Fig 4.5: Shows the execution speed of comparing Python, Cython and C

The implementation for the above, consisted of threads issuing Net-SNMP requests and storing

the result. The codes were then processed as per visualization. The above time was noted, by

calling the function time before and after the code runs and subtracting the result to get the

running time. It can be seen from the visualization, that the total running time of the C and

Cython (mixing python & C) implemented codes are fast in execution. And also from

visualization, it shows that python code are slow in execution but the disadvantage can be

leveraged by mixing the languages to improve speed.

4.2.2: Parallel vs Serial Approach (language: Python)

Multithreading (parallel) it is way of achieving multitasking, multithreads within a process

share the same data space with the main thread and can therefore share information or

communicate with each other more easily than if they were separate processes [9]. A thread

has the start of execution sequence and the end. It has an instruction pointer that keeps track of

where within its context it is currently running. Python has poor performance working on

multithreading environment and Python usually uses non multithreading which is the serial

Page 76: Design and implementation of a multivendor Network

66

approach. In CPython, multi-threading is supported by global interpreter lock (GIL) [10]

nevertheless this is not recommended.

Fig 4.6 shows the comparison of the implementation with threading involved in various stages

versus a non-threaded implementation using GNS3 software. The results were collected using

GNS3 because of limited number of nodes which were available

Fig 4.6: showing Multi-threading vs Non multi-threading

In a threaded environment, multiple threads pull network data and store them. Different set of

threads then parse those data and temporary store them locally. In a non-threaded environment,

the above process is done by single threaded. Hence, only one connection to any node exists at

any given time for pulling the network information. Only a single thread probes through all the

results to get the stored data. In fig 4.6 that multithread environment pulls data faster than single

thread environment were data is pulled and store in single file.

4.2.3 Request based approach vs Always ready approach

Request based approach is referred as client side were data is requested from the all the nodes

in the network before it is displayed on a GUI. The client side approach runs on a low memory

and they produce good visualization as compared to always ready approach which runs from

the server and programming languages which runs on the server side are python, c, Java, PHP

and VB. The client side approach mostly deals with the user interface with which the user

interacts in the web [11]. It is mostly a browser, in the user’s machine, that runs the code using

scripting language eg Javascript or html.

Page 77: Design and implementation of a multivendor Network

67

The project was implemented using python for the backend and the frontend we are using

HTML to interface with backend programs. The other NMSes comes with both the client side

and the server side approach and user will have a choice to choose from the two. Personally, I

had a privilege of you both on the current NMS which will are using. The Huawei client and

server side approach both are good and they have the same functions.

The data is implemented in python which writes the results data to the files in the SQLlite

databases after the HTML request. The information is represented HTML format and send back

to the client.

The tests included a comparison of whether a whether a client side based approach is faster

than a server side always approach.

The total running time is calculated as:

Total Time = Δ Client Side Process + Δ Server Side Process

1. Where Δ Client Side Process = Time at which response is received by client – Time at

which request is issued by client.

2. Δ Server Side Process = Time taken to complete an iteration of the entire process and

Δ Server Side Process = Time taken to complete an iteration of the entire

Fig 4.7: Shows Server side vs client side approach.

The figure above clearly shows that server side always ready approach as the best approach

but due to the advantages poised by client side approach it was preferred. This result cannot

be general case, but always ready approach works well in this scenario because the client is

Page 78: Design and implementation of a multivendor Network

68

requesting the same data for the nodes at certain interval. The move will delay it in response

time.

4.2.4 Alarm alert response Time

The other important thing to measure is the alarm response time which is the time it take for

an alarm to appear on the dashboard. The results will presents how synchronised is the NMS

dashboard with the database and show how fast is the processing in executing the instructions.

To achieve this we used nodes with alarms and nodes with no alarms. In our designed system

we used three NEs which were not enough to collect desired results. For the purposes of

collecting good results we used the GNS3 software and simulated as many nodes as we can

introducing various types of errors on the nodes. We measured the time it take for the node to

reappear on the NMS after it has been delete in its state with alarms and without alarms. The

NEs with alarms took longer to reappear on the NMS while the one with no conditions took

less response time as shown in Figure 4.8. This is supported by the theory because node without

errors will have fewer instructions to execute thereby responding faster. This can be attributed

to the fact that they are fewer active request and during SNMP walk, data is returned in a single

query [12]. While the nodes with alarms the active instructions will many, causing multiple

request response between the system and the node. Below is the results after taking some tests:-

Fig 4.9: shows a high response time for nodes without error.

Page 79: Design and implementation of a multivendor Network

69

4.3 Performance Measurement Results

In this project, we use SNMP to collect different performance metrics at the device, interface

and also at protocol levels at regular basis. The polling engine in a network management system

is used for the collection of data from NEs. In general most network management systems are

capable of collecting, storing and presenting polled data [13]. The wed based interface solution

as the one we designed is favoured by operator as it allows access to performance data

accessible from anywhere in the enterprise environment. In this project we have designed the

performance data module which presents the same result as other current enterprise solutions.

The performance module was tested using the remote monitoring (RMON) of packets at

interface level measuring the inbound and outbound traffic on an interface. The results were

compare with the recorded results on the traffic generator and results were with the range. The

traffic generator was used to generator traffic through the network created through all three

devices. This test was done on a test bench to eliminate the pre-configuration condition of a

GNSS3. At the outbound interface Ethernet 850 test equipment was installed to measure the

traffic receive and traffic transmitted was measured at inbound port. The process was repeated

varies the amount of traffic transmitted and results were recorded to compare the results with

the one captured by the system (NMS). While results were recorded the NMS was set to

measure the same traffic remotely on an NMS and results were outputted in tabular and

graphical form. The results on the NMS and test equipment were the same as in table 2 and the

graph below.

Table 4.2: Shows the results obtained from the tests.

Traffic Generator

Transmitted traffic (Mbps)

Traffic measurement Tester

(Mbps)

NMS Results from RMON

(Mbps)

20 20 20

40 40 40

60 60 60

80 80 80

100 100 100

Page 80: Design and implementation of a multivendor Network

70

Fig 3.10: Shows the graph for the results.

4.4 Summary

This chapter presented the results contained from the system, compare the results with existing

enterprise solutions and analysis of performance management system. The overall system

results meets the benchmark sets by other vendors but still some modules need to be included

since the design of NMS takes time, teamwork to complete and to include all the modules

required. Other vendors are now including sophisticated copper and fibre testing tools to

monitor the copper and fibre links like the fibre doctor and N2310 copper tester. This before

the advent of NMS solutions operators were using physical test equipment and today they are

software module which are added on the NMS to carry out network tests. The project still need

further works and these results can be further improved by including modules and selecting

equipment with high processing power.

Page 81: Design and implementation of a multivendor Network

71

CHAPTER 5

5.0 CONCLUSION AND FUTURE WORK

Through the presentations made in this project, fundamental mental concept of network

monitoring, remote control and other future concepts like network cloud monitoring, had been

reflected on. The works which were previously done by `equipment vendors and third parties

in the field of NMS, were investigated and comparison between the existing and the developed

applications had be given in chapter four of this project.

5.1 CONCLUSION

This project clearly outline the step by step procedures required to build a standard NMS which

meant the requirements of thus ever changing environment. With the regards of this thesis, a

more robust NMS was developed which have the same features as the one which are in use.

The feasibility researches, have been conducted prior choosing the topic. The research showed

that all the network management system have all the required software tools that is the case of

propriety NMS. The point is not true for open source NMSes which monitors mainly the service

be carried by the NEs and they can’t fully monitor the behavior of the network element. In

addition, the tools have a complicated proprietary use interface which require trained personnel

to user. With all this points, the existing tools requires license which are paid annually by

service providers. The fees are settled in foreign currency and the amount is proving to be too

high for service providers hence the development of local NMS which monitor and provide the

same features with these commercial available products. The thrust of this project to provide

an NMS which can commercial compete with proprietary products was met and the developed

product is as friendly like all the product currently in the market. The purpose of developing

the project was to provide a competitive NMS which capture all the needs of the users. This

NMS captures the performance management system which is now an important feature of the

NMS. Over and above the primary functionalities of the system, the system comes with

network configuration, security and device management. The NMS implemented in this thesis,

can fully work as other NMS which are commercially available and third party software.

Page 82: Design and implementation of a multivendor Network

72

5.2 FUTURE WORKS

This NMS was developed in way that new features can be added to the application, such as

providing performance report, configuration modules, device management and network

security modules. Furthermore, the platform was developed to run on all windows and Linux

operating system.

NMS platforms are involving from distributed to centralised network cloud engines (NCE)

were the monitoring system is centralised. This approach improves the system in reducing the

number of secondary storage devices required. The centralised approach allows the use of

cloud storages which reduces the cost of hardware and upgrades.

5.3 RECOMMENDATIONS

The following are the list of recommendations made to the proposed design solution to

improve its functionalities to meet other products already on the market:

The new requirements of the telecommunications sector are changing the

management priorities of how network elements are monitored with the network

monitoring system. The previous solution were hardware based and these priorities

are changing to service oriented. To achieve this goal the system was designed in way

that it is modular and modules can be added to include specific functions with the

code.

Implementation of monitoring system which is easily upgradeable to interoperate

with network cloud monitoring system with minimum additions.

The system was built to monitor any SNMP enabled device. In this research we used

cisco, ZTE and Huawei because of the availability of the hardware.

Designed a system that offers all the network active tools to substitute the fragmented

management solutions. This improve the operations team to remain effective and

knowledgeable to the tools they use.

The solution was designed taking into account the need of security and network

operations (NetOps). The network operators are now using risk related techniques to

Page 83: Design and implementation of a multivendor Network

73

measure network performance and as such we have integrated system with security

processes.

Page 84: Design and implementation of a multivendor Network

74

LIST OF REFERENCES

[1] http://www.techopedia.com/definition/20974/network-management accessed on 19/12/19

[2] Richard, T. & Watson, (2007), Information Systems, University of Georgia.

[3] Information Sciences Institute, University of Southern California. Internet protocol. RFC

791, RFC Editor, http://www.ietf.org/rfc/rfc791.txt,September 1981.

[4] Fang, W., Zhijin, Z. & Xueyi, Y., (2008), A New Dynamic Network Monitoring

Based on IA, International Symposium on Computer Science and Computational

Technology, IEEE, Vol. 2, pp. 637 - 640.

[5] Martin P.Clark, (2003), Dta Networks, IP and the Internet: Protocols, Design and

Operation

[6] Jyrki T.J. Penttinen, (2015), The Telecommunications Handbook: Engineering Guidelines

for Fixed, Mobile and Satellites systems.

[7] Paolo Bellavista, (2009) Telecommunications Systems and Technologies-Volume II

[8] Stephen Few. What is a dashboard? In Information Dashboard Design: The Effective

Visual Communication of Data, page 34. O‟Reilly Media, Inc, 2006.

[9] Alan Willner, (2020), Optical Telecommunications Volume V11

[10] Cajetan M, Akujuobi, Matthew N.O Sadiku, (2007), Introduction to Broadband

Communication Systems

[11] Noite.pl (2009), The SNMPD (net-snmp) sever: LINUX services. AL3-079

[12] William S. Vincent (2020), Django For Professionals

[13] Juan F Gomez Fernandez Adolfo Crespo Marquez, (2012), Maintenance Management in

Network Utilities: Framework and Practical Implementation.

[14] Asko Riitahuhta, Antti Pulkkinen, (2012), Design for Configuration: A Debate based on

the 5th WDK Workshop on Product development.

[15] NTT Technical Review, Vol 3, Issues 1-6, Telecommunications Association, 2005

[16] Huawei Technical Review Handbook, 2016, U2000

Page 85: Design and implementation of a multivendor Network

75

[17] Alcatel User Manual Handbook, ISAM Network Manager system

[18] Fiber home User Manual Handbook, UNM2000

[19] Quanmin Zhu, Ahmad Taher Azar - 2014 - Technology & Engineering

[20] Mani Suramainian, Dorbing KInderslay, 2010, Network Management: Principles and

Practise

[21] Jithesh Sathyan, 2010, Fundamental of EMS, NMS and OSS/BSS.

[22] Edited by Anirban De, Tanushyam Bhattacharjee, Dabranjam Sharhar, January 28-30,

2014, Proceeding of International Seminar on Application of Communication and

Information Technology in Library.

[23] Xu Chen, 2010, Toward Automated Network Management and Operations: A

dissertation submitted in partial fulfilment of the requirement for the degree of Doctor of

Philosophy.

[24] Mark A Miller, 2005, Technology and Engineering

[25] David Perkins, Evan Mc Ginns, 1997, Understanding SNMP MIBs

[26] Dan Sanderson, 2009, Programming Google App Engine: Build and scalable web

applications on Google’s Infrastructure.

[27] Kenneth Reitz & Tanya Schlusser, 2012, The Hitchhikers Guide to python: Best practise

for development.

[28] Gerardus Blokdyk, 2019, Network performance monitoring

[29] Alomari Zakaira etal, 2015/04/02, Comparative Studies of six programming languages

[30] https:// www.geeksforgeeks.org/python/ accessed on the 3/3/2020

[31] R. Jain,The Art of Computer Systems Performance Analysis: Techniques for

Experimental Design, Measurement, Simulation, and Modelling. New York, NY: John Wiley

& Sons, 1990.

[32] Wei-Hua Baiet al, "Performance Analysis of Heterogeneous Data Centers in Cloud

Computing Using a Complex Queuing Model, “Mathematical Problems in Engineering,vol.

2015, pp. 1-15, 2015.

[33] J. A. Arieset al, "Capacity and performance analysis of distributed enterprise

systems,"Communications of the ACM,vol. 45.

[34] K. Tuisku, "Network Management System Dimensioning with Performance Data”,M. S.

thesis, University of Tampere, Tampere, Finland, 2016.

Page 86: Design and implementation of a multivendor Network

76

[35] https//:www.cisco.com/support-docs/nms: accessed on the 3/3/2020

[36] Estefania Serrano, Javier Garcia Blas, Jesus Carretero, Monica Abella, Manuel Desco,

"Medical Imaging Processing on a Big Data Platform Using Python: Experiences with

Heterogeneous and Homogeneous Architectures", Cluster Cloud and Grid Computing

(CCGRID) 2017 17th IEEE/ACM International Symposium on, pp. 830-837, 2017.

[37] M. Pilgrim, Dive into Python, 2004, [online] Available: www.diveintopython.org.

[38] Python Global Interpreter Lock, https://wiki.python.org/main/GlobalInterpreterLock

[39] B.O.L. Sanden, Design of Multithreaded Software: The Entity-Life modelling Approach,

2011.

[40] Q. Aston. Acton, PHD, Issues in Information Science- Information Technology, Systems’

and security, 2013

[41]“simple-Network-Management-Protocol-(SNMP): ww.cisco.com/wrap/public/535/3.html

[42] J.A.Arieset al, "Capacity and performance analysis of distributed enterprise systems,

“Communications of the ACM, vol. 45,No. 6,pp. 100-105, 2002.