Virtual Infrastructure Information Service for SDN Environments
The Virtual Infrastructure Information Service (VIS) is a platform designed for software defined and virtualized network environments. It is a critical part of a network system since it plays the role of information / knowledge collection, aggregation, storage/registry, knowledge production and distribution across all the main functional components including the management, the governance, and the parts that control the individual Network Element Management Systems.
The Knowledge Block offers basic information/knowledge manipulation functionalities to the management entities through the Knowledge Exchange Interface. The Knowledge Management Interface handles information flow management that includes configuration actions towards the optimal handling of the information/knowledge in the management entities.
The list of VIS functions includes:
- Information Collection and Dissemination - ICD
- Information Storage and Indexing - ISI
- Information Processing and Knowledge Production - IPKP
- Information Flow Establishment and Optimization - IFEO
Information Collection and Dissemination function
The Information Collection and Dissemination (ICD) function is responsible of information collection, sharing, retrieval and dissemination.
The VIS block handles information from the Network Element Management Systems and from the other management blocks and produces higher information abstractions and organizes communication of information and knowledge. The ICD function is the front-end of the VIS block, handling all information exchange between the management functional components and the Network Element Management Systems. These functional components are acting as sources or sinks of information. The sources subscribe to ICD by exposing which type of information they will produced and also the requirements that are associated to this information (frequency, ...). On the one hand, each information source should subscribe information availability and the equivalent collection constraints (e.g. the supported granularity of collection). On the other hand, each information sink should subscribe information retrieval requirements with a similar process. The matching of constraints with requirements takes place during an equivalent negotiation process, part of the Information Flow Establishment and Optimization function, elaborated later. The focus of the VIS block on high information abstractions allows pro-active information flow configurations.
Information can be directly retrieved from or shared with the VIS block using the appropriate interface (i.e. the Knowledge Exchange Interface). Furthermore, an information collection process is triggered from a component requesting the information, through the ICD function and using the same interface. The information collection process is optimized by the Information Flow Establishment and Optimization (IFEO) function by the latter defining filtering objectives and setting appropriate accuracy objectives to be followed by ICD. Example information exchanges using the pull and pub-sub methods are illustrated in the knowledge exchange workflows in the end of the section.
The collected information may either be directed to the Information Processing and Knowledge Production function for a further processing (e.g. aggregation) and then indexed / optionally stored to the Information Storage and Indexing function or indexed / optionally stored directly to the latter function. The storage option within Information Storage and Indexing may be provided or demanded based on the nature of the information, NEM demands, optimization goals, etc. After this stage, the information or produced knowledge could be passed back to the ICD function for dissemination. More details on the interactions between the ICD and the ISI function can be found in the next subsection.
Information Storage and Indexing function
The Information Storage and Indexing (ISI) function is a logical construct representing a distributed repository for registering Network Element Management Systems, indexing (and optionally storing) information/knowledge. The ISI function stores information ranging from NEM registration information to (optionally) knowledge. The ISI functionality includes methods and functions for keeping track of information sources, including information registration and naming, constraints of information sources, information directory and indexing. An important storage aspect, which can assist the knowledge production handled by the Information Processing and Knowledge Production function, is the inherent support of historical capabilities. For example, a NEM could request information and/or knowledge that was stored in the past using an appropriate time stamp. It should be noted that knowledge production functionality is not part of the ISI function, but it supports the storing of knowledge derived due to some earlier calculations. The ISI optionally stores knowledge produced from the Information Processing and Knowledge Production function (for globally- scoped knowledge) or Knowledge Building Network Element Management Systems (for locally-scoped knowledge).
The different Network Element Management Systems, either requesting or storing information to the VIS block, do not directly communicate with the ISI. The ICD function handles information collection or dissemination between the storage points and the Network Element Management Systems.
The network governance function may parameterize the ISI function, based on the current conditions or global performance goals. For example, the information storage may choose to have alternative structures or configurations (e.g. number of storage nodes, in case of a distributed storage) that are suitable to a particular environment or network condition (e.g. the presence of congestion in the network).
Other important requirements of the ISI function are:
- To be aligned to a pub/sub information dissemination capability.
- To support alternative storage structures, such as centralized/ distributed (flat)/ distributed (hierarchical), based on the context.
- To support information and knowledge caching.
Information Processing and Knowledge Production function
The Information Processing and Knowledge Production function (IPKP) is responsible for operations related to information processing (e.g. aggregation) and knowledge production. We detail below the different operations of the IPKP function.
A central operation of information processing is the information aggregation (IA). The IA can receive the collected data from the ICD function and filter them out before they are stored to the ISI function or disseminated. Again, this reduces the volume of measurements by only sending values that are significantly different from previous measurements. Using filtering in this way in the VIS block, lowers the load of the management network. Furthermore, the IA component itself can be flexible enough to be given different aggregation specifications by the network governance in order to process the data in a varying way. For example, it can be configured to wake up once an hour and select data for the last day, and then apply an aggregation function. This can be achieved using a mechanism that relies on plugins.
As well as requesting information, a NEM may subscribe to an event-based notification service (i.e. a pub/sub mechanism) by setting an appropriate threshold to a specific type of information. Whenever this threshold is exceeded, the subscribed NEM is notified. Aggregation is done during the information collection phase, in order to minimize overhead.
Accordingly, Knowledge Production (KP) component handles and produces globally-scoped knowledge. This type of knowledge is being produced out of aggregated information or locally-scoped knowledge. Locally- scoped knowledge, on the other hand, is built from the Knowledge Building Network Element Management Systems out of data/information directly collected from the managed entities. In both cases, reasoning and inference mechanisms are required. Thus, similar software components can be used.
These software components can be based on a number of different techniques depending on the exact problem that is addressed, the type of inputs that are used and the type of output that needs to be acquired. Such techniques may come from scientific areas like statistics, clustering, reasoning, Fuzzy or machine learning (including supervised, unsupervised and reinforcement learning techniques).
The produced knowledge from the IPKP block can be optionally stored in the ISI function so as to be available for UMF core mechanisms or Network Element Management Systems when requested/needed.
Information Flow Establishment and Optimisation function
The Information Flow Establishment and Optimization (IFEO) function regulates the information flow based on the current state and the locations of the participating components (e.g. the Network Element Management Systems producing information). In particular, it controls information collection handled from the ICD function, information aggregation in the IA operation, and aggregation node placement. Furthermore, it guides a filtering system for information collection and aggregation points that can significantly reduce the communication overhead. However, the reduction depends on the nature of the metric to be monitored.
Both Information dissemination and collection processes should meet certain information collection/dissemination constraints, being communicated to the VIS during the NEM registration processes. For example, a number of Network Element Management Systems may trade information accuracy for communication cost. Such accuracy objectives should also meet performance requirements coming from the Governance block (harmonizing information flow to the global performance goals). The Information Flow Establishment and Optimization function is responsible for such quality enforcing functionalities. In the IFEO function, a negotiation takes place that matches interests with constraints. The outcome of the negotiation is the parameters of the information flow, harmonized with the capabilities of the information sources, the requirements of the information/knowledge sinks and the global performance goals of the Governance block.
The IFEO function controls the VIS and enforces decisions by communicating with the appropriate VIS nodes (i.e. in case of a distributed deployment), handled from the corresponding VIS functions, in order to satisfy the performance optimization requirements (coming from the GOV): guides the optimal placement of the VIS nodes regulates the information filtering of information collection and dissemination (i.e. handled from the ICD function), based on accuracy objectives.
The above processes are part of the quality enforcement functionality of the VIS block and all corresponding decisions are being taken from the Information Quality Controller (IQC) Component of the IFEO function.
You can download an early version the source