# Multi-Layer QoE Learning System Implemented by Fiberhost
## 2 Data Collection Infrastructure  
At Fiberhost--a Fiber-to-the-Home (FTTH) operator from Poland--a new architecture of Multi-layer QoE learning system is being implemented and developed in order to simplify the problem of QoE analysis. The system is based on two measurement techniques for data collection: Active probing (for example RFC 2544 [19] or ITU-T Y.1564 [20]) and Passive polling (implemented by observing counters of Simple Network Management Protocol (SNMP) [21] or other performance indicators available for example in the performance logs).  
The system architecture is presented in Figure 1. The left part of the figure shows the access networks and the data collection process organized in the form of querying access devices (CMTS--Cable Modem Termination System or OLT--Optical Line Termination), using the SNMP protocol or end devices (CMs--Cable Modems, or ONTs - Optical Network Terminals), using SNMP or TR-069 [22] protocols. In the left section, one can also identify the Probes which are performing active service probing on the selected areas of the network. Except for the probes, the SNMP and TR-069 are not intrusive and implement the use of the passive probing technique. Only the Probe devices which are connected to CustomerPromises Equipment's (CPEs), such as ONTs or CMs, implement active probing at the user layer, thus they try to simulate the behavior of a typical end user. The probes are not on site, but are in the technical cabinets closest to the end customer's location, and the entire probe population is in turn managed by the probe management and data collection system [23].  
The central part of Figure 1 is dedicated to the monitoring servers and databases that store all control information. The central part consists of three main functional blocks:  
* Service and device Monitoring--which is the part responsible for monitoring of the health of all network devices, except CPEs and services that are configured on these devices, as well as performance Key Performance Indicators (KPIs) such as temperature, CPU load, memory utilization, etc.
* CPE diagnostics--which is the part responsible for monitoring of CPEs as well as allowing simple diagnostics to be conducted, such as ping, etc.
* CPE profiling--which is still under construction, and which will enable user behavior profiling, though this will require the end customer's consent.  
The functional block shown in the right part of Figure 1: \"Network analyst system\" and \"Analyst result presentation\" will support various data models to be used by machine learning and presentation mechanisms [24].  
The right part of Figure 1 is still in progress. It includes data filtering and normalization, machine learning models, analysis and the presentation of the results. Therefore, this part covers most of the mechanisms described further on in this article.  
Our implementation of the multi-layer QoE learning is built on the basis of an open source solution: Zabbix [25], but was expanded to include a number of proprietary modules. A choice of a commercial solution supporting machine learning would be impractical on account of the need for necessary and time-consuming changes, preparation of new procedures and implementation of the new tool throughout the organization. Zabbix itself does not have machine learning mechanisms implemented, but a simple predictive model that allows one to analyze parameter values based on historical trends. However, we found that Zabbix was relatively easy to extend. Therefore, we used it as the basis for our own multi-layer QoE learning system.