Saturday 26 April 2014

Big Data in Network Management

Data is growing every day in all the domains, it is applicable for Telecom also. NMS/OSS/BSS systems need to handle huge number of devices and data to meet the business requirements of CSPs.

Webopedia says,
Big data is a buzzword, or catch-phrase, used to describe a massive volume of both structured and unstructured data that is so large that it's difficult to process using traditional database and software techniques. In most enterprise scenarios the data is too big or it moves too fast or it exceeds current processing capacity.

According to IBM, the following are the top 5 high value use cases that can be the first step to BIG DATA:

1. Big Data Exploration:
Find, visualize, understand all big data to improve decision making.

2. Enhanced 360 degree view of the customer:
Extend existing customer views by incorporating additional internal and external information source.

3. Security/Intelligence Extension:
Lower risk, detect fraud and monitor cyber security in real time.

4. Operational Analysis:
Analyze a variety of machine and operational data for improved business results.

5. Data Warehouse Modernization:
Integrate big data and data warehouse capabilities to increase operational efficiency.

Therefore, BIG DATA = $$$$$

Why do you need Big Data in Network Management field?

In FCAPS model ‘P’ stands for Performance & BIG DATA plays a vital role in this bucket.
Imagine your NMS/OSS systems are managing thousands of devices, when you have to read thousands of PM counter data from these devices, you need to persist & perform some analysis near real time. And of course, the volume of data over a period of time is going to grow from GB to TB or may even to PB (depends on your PM functional requirements though). If you need to build a scalable management system, apart from Architecture, design and various others factors, DB layer should also be given a high priority for storage.
Many Telco vendors are building Big Data Analytics product which would ingest data from legacy OSS/BSS/NMS data source and perform Analytics and help CSP for better business.






Why can’t you achieve it with traditional databases?

No, Big Data framework is not intended for a traditional business solutions and rather a flexible framework for custom point solutions. A RDBMS, on the other hand, is intended to store and manage data and provide access for a wide range of users, Structure, Parallel processing, Nodes of Cluster ranging from hundreds to thousands.

For example, If you are using Oracle Database at your back-end of NMS/OSS, you can have a hybrid solution of using Oracle also with Hadoop with the help of Oracle Grid Engine.  It all depends on your need, you either use Hadoop with a single node or multiple nodes in a cluster based on your scalability needs (focusing only on the data here).

In traditional Database systems, you will be storing the huge data in multiple servers using Grids. For NMS/OSS there is no problem of storing the data for years in multiple servers, but the real problem lies in 'READ'ing the 'Unstructured' data for analysis. Big Data framework gives you that!!


Which Big data framework to be picked?

I have heard of Hadoop only, but there are many. Please check the following link.
So the answer is : It depends on your requirement.  

Wikipedia says,

Apache Hadoop is an open-source software framework for storage and large-scale processing of data-sets on clusters of commodity hardware. Hadoop is an Apache top-level project being built and used by a global community of contributors and users.It is licensed under the Apache License 2.0.


What should be done in NMS/OSS?

Any large scale NMS/OSS should support Big Data in the Database layer for supporting huge number of network elements. Wait, it not only depends on number of network elements, it’s all about the amount of data is stored and read for processing. There are many NMS solutions out there which adds sophiscated NETWORK PERFORMANCE ANALYSIS AND OPTIMIZATION tools which are very critical business applications for a CSP embedded as part of their management solution. Those vendors need to get their setup into BIG DATA !! 
Note: Performance Analysis falls under Service Management Layer



What will Network Performance Analyzer do with Big Data?

Storing of performance measurement counter data and performing historical aggregation are really important for trend analysis. This would help to identity QoS in the overall network, Traffic hot spots, call drops, coverage losses etc..  In order to provide a near real time analysis with detailed reporting feature, tons of data should be stored and processed in order to provide a critical value.




What will you get out of Big Data analytics?

  • User satisfaction
  • Business & Operations efficiency

 
Sources & Useful references:

When surfing the internet, I found the following pieces of information would be quite useful to know, please read this !!


Monday 14 April 2014

Creational Design Patterns -> Prototye pattern

Motivation:
Cost is important, If the cost of creating a new object is large and creation is resource intensive, we clone the object. This pattern is used when the type of objects to create is determined by a prototypical instance, which is cloned to produce new objects. This pattern is used to:

·         avoid subclasses of an object creator in the client application, like the abstract factory pattern does.
·         avoid the inherent cost of creating a new object in the standard way (e.g., using the 'new' keyword) when it is prohibitively expensive for a given application.


Intent:

·         specifying the kind of objects to create using a prototypical instance
·         creating new objects by copying this prototype
Use when:

Classes to be created are specified at runtime.
  •  Only a limited number of state combinations exist in an object.
  •  Objects or object structures are required that are identical or closely resemble other existing objects or object structures.
  •  The initial creation of each object is an expensive operation.



Interesting points:
Sometimes creational patterns overlap — there are cases when either Prototype or Abstract Factory would be appropriate. At other times they complement each other: Abstract Factory might store a set of Prototypes from which to clone and return product objects (GoF, p126). Abstract Factory, Builder, and Prototype can use Singleton in their implementations. (GoF, p81, 134). Abstract Factory classes are often implemented with Factory Methods (creation through inheritance), but they can be implemented using Prototype (creation through delegation). (GoF, p95)

Advantages:

  • Hides complexities of creating of objects.
  • The clients can get new objects without knowing whose type it will be.
  • Reduces subclassing.


Disadvantages:

  • Sometimes making a object copy shall become complicated
  • Classes that have circular references to other classes cannot really be cloned.
Sources: Wikipedia, OODesign, TutorialsPoint, Javarevisited

Thursday 6 February 2014

Overview of Device management solutions

In this blog, I have tried my best to impart an overview of different Device Management solutions, its features and Protocols used.
Managing a device means monitoring and controlling the device. If you look @ the telecom network, there are multiple devices to be managed. In the Radio Access side, Base station, Gateway controllers, Routers, Switches etc..  and in Core Network side, you will have a AAA/HLR, DNS, DHCP Servers, SIP server etc.. (Again that depends on the technology type). Generally operators will use OSS/NMS/EMS applications to manage these. Now leaving apart these fixed devices, what about small but important devices such as CPE, Smart phones, tablets etc. Though these also fall under the devices umbrella it is important to categorize the devices here. Let’s be specific these falls under mobile device category, so let’s focus on Mobile Device Management (MDM) and not bother about fixed devices which will be managed by NMS.
As per Wikipedia,
MDM functionality typically includes
 over-the-air distribution of applications, data and configuration settings for all types of mobile devices, including mobile phones, smart phones, tablet computers, ruggedized mobile computers, mobile printers, mobile POS devices, etc. This applies to both company-owned and employee-owned (BYOD) devices across the enterprise or mobile devices owned by consumers.
When you look @ the typical architecture of MDM solution, it will be something like this


How it works?
Generally there will be a Device Management server (DMS) whose job is to manage the Mobile device. There will be a client/Agent running in the mobile device. DMS will communicate over the air to the mobile devices using any one of the common protocol mentioned below.

  • The Open Mobile Alliance (OMA) specified a platform-independent device management protocol called OMA Device Management. The specification meets the common definitions of an open standard, meaning the specification is freely available and implementable. It is supported by several mobile devices, such as PDAs and mobile phones.
  • Smart message is text SMS- provisioning protocol (ringtones, calendar entries but service settings also supported like: ftp, telnet, SMSC number, email settings, etc...)
  • OMA Client Provisioning is a binary SMS- service settings provisioning protocol.
  • Nokia-Ericsson OTA is binary SMS-based service settings provisioning protocol, designed mainly for older Nokia and Ericsson mobile phones.
Common solution: OMA DM



      What it does?
       DMS’s main activities are mentioned as follows:
  • It shall ensure that end-users benefit from plug and play data services for whatever device they are using.
  • Automatic discovery of devices and adding it in the DMS Topology management (of course, there will be no physical/logical links with other devices)
  • Management services such as Software Management (Updating Antivirus), Inventory management (Equipment related details), Security management (Authentication and Authorization). This is applicable including BYOD (Bring your own device)
  • Other features which would benefit the end user using their mobile devices.


To conclude, it is not a “single size fits all “solution, it really depends on the mobile user’s requirements, your DMS should be developed.

Ok, now let’s stroke something on CPE WAN management also.

If OMA DM is the recommended standard for Mobile device management, then why can’t we use TR-069?

TR-069 (Technical Report 069) is a Broadband Forum (formerly known as DSL Forum) technical specification entitled CPE WAN Management Protocol (CWMP). It defines an application layer protocol for remote management of end-user devices. As a bidirectional SOAP/HTTP-based protocol, it provides the communication between customer-premises equipment (CPE) and Auto Configuration Servers (ACS). It includes both a safe auto configuration and the control of other CPE management functions within an integrated framework. The protocol addressed the growing number of different Internet access devices such as modems, routers, gateways, set-top boxes, and VoIP-phones for the end-users. The TR-069 standard was developed for automatic configuration of these devices with Auto Configuration Servers (ACS).



In my understanding, TR-069 will suit perfectly for a CPE WAN management, it has the following architecture.



It has also the following features:
  •          Service activation and reconfiguration
  •          Remote Subscriber Support
  •          Firmware and Configuration Management
  •          Diagnostics and monitoring


Ok then, why can’t I use SNMP for managing a CPE?
Of course, yes there seems to be no drawback for using SNMP.

When you compare SNMP with TR-069. TR-069 seems to have many advantages for CPE WAN Management than SNMP such as


  • TR-069 standard is easy to understand and implement than SNMP, you need to use OIDs in SNMP where as you have user friendly attribute names in TR-069.
  • Using ACS server, you can manage multi vendor CPE devices using TR-069, whereas for SNMP you need different vendor MIBs implementation which will be a tedious stuff.



Conclusion: So there are many solutions available for device management, we should categorize under which category our device and its management solutions fall under. Since, there are millions of mobile devices floating around the globe, many product vendors are now focusing to provide a MDM solution with rich set of features like what a NMS does (Of  course, though logically FCAPS shall be there for MDM Server),