# Performance Analysis of Latency-Aware Data Management in Industrial IoT Networks +
## 4 The Data Management Layer  
In order to manage the data distribution process and decrease the average access latency in the network, we consider a DML similar to the one defined in [17], which we recap here for the reader's convenience. The basic function of the DML is the decoupling of the data management plane from the network plane, as shown in Figure 3. The DML provides solutions for the selection of some nodes that will act as proxies and the establishment of an efficient method for data distribution and delivery, using the proxies. More specifically, the role of the DML is to define a set \(P\subset S\), the elements of which are the selected proxies. The number of the proxies can range from \(1\)-\(n-1\). The case of one proxy is equivalent to having only the controller \(C\) operating as a single point of data distribution. In this case, the data distribution is functioning as in traditional industrial IoT environments. This demarcated model of data exchanges can be formulated as a publish/subscribe (pub/sub) model [31]. In a pub/sub model, a consumer subscribes to data, i.e., denotes interest for it to the corresponding proxy, and the relevant producer publishes advertisements to the proxy. The DML  
Figure 3: The Data Management Layer (DML): decoupling the data management plane from the network plane. assumes that the pub/sub process is regulated at the central controller \(C\), which maintains knowledge on the sets of producers, consumers and requests. Based on this, \(C\) can find an appropriate set of proxies based on the algorithm we present next. Inside the network, the proxies are responsible for matching subscriptions with publications, i.e., they provide a rendezvous function for storing the available data according to the corresponding subscriptions. The producers do not hold references to the consumers, neither do they know how many consumers are receiving their generated data. The selection of the proxies should be done balancing two requirements. On the one hand, the number of proxies should be sufficient to make sure each consumer finds data \"close enough\" to guarantee that \(\overline{L}\leq L_{\max}\). On the other hand, as the role of proxy implies a resource burden on the selected nodes, their number should be as low as possible. The proxy selection problem can thus be formulated as an integer program. More specifically, given a set \(S\) of nodes, a set \(S_{c}\subset S\) of consumers and an access latency threshold \(L_{\max}\), the network designer should target the minimization of the number of proxies needed in the network so as to guarantee \(\overline{L}\leq L_{\max}\). We define two sets of decision variables, (a) \(x_{p}=1\), if \(p\in S\) is selected as proxy and zero otherwise, and (b) \(y_{u,p}=1\), if consumer \(u\in S\) is assigned to proxy \(p\in S\) and zero otherwise. Then, the integer program formulation is the following:  
Min. : \[\sum_{p\in S}x_{p}\] (2) S. t.: \[\sum_{u\in S_{c}}\sum_{p\in S}\frac{L_{u,p}\cdot y_{u,p}}{m}\leq L _{\max}\] (3) \[\sum_{p\in S}y_{u,p}=1 \forall u\in S_{c}\] (4) \[y_{u,p}\leq x_{p} \forall u\in S_{c},\forall p\in S\] (5) \[x_{p},y_{u,p}\in\{0,1\} \forall u\in S_{c},\forall p\in S\] (6)  
The objective function (2) minimizes the number of proxies (note that in various industrial scenarios, some nodes might be too weak to perform any other operations than generating and propagating a minimal set of data. The problem formulation that represents those scenarios is a special case of the problem formulation that we consider in this paper, with \(p\in S^{\prime}\), where \(S^{\prime}\subset S\)). Constraint (3) guarantees that \(\overline{L}\leq L_{\max}\). Constraints (4) guarantee that each node has to be assigned to one and only one proxy. Constraints (5) guarantee that nodes can be assigned only to proxies. Constraints (6) guarantee that all nodes are considered for potentially being selected as proxies and that all nodes requesting data are assigned to a proxy.