# ARMONIA: A Unified Access and Metro Network Architecture
## 3 ARMONIA Algorithmic Mechanisms
### Resource Allocation  
In this subsection, we consider the problem of jointly (i) allocating access and metro optical network resources and (ii) placing applications' workload to edge and core processing nodes. The problem can be described as follows. The network topology is represented as a directed graph \(G=(V,\,E)\). The set of nodes \(V\) represents the access and metro network nodes, while the set \(E\) represents the physical connections (links) between two nodes. Each physical link \(e\in E\), is characterized by its length \(l_{e}\). Specific nodes are equipped with processing capacity \(c_{v}\) and a number of optical transceivers \(\mathrm{M_{v}}\). We assume that the metro network is organized into layers, with different processing and networking capabilities and thus different processing \(\xi_{v}\) cost for the nodes of different layers. We assume coherent BVTs which can control some or all of the following parameters: (a) modulation format (MF), (b) baud rate (BR), (c) transmission power (TP), and (d) FEC overhead (OV). A possible transmission configuration is described by a tuple \(t=\{MF_{t},\,BR_{t},\,TP_{t},\,OV_{t}\}\). The modulation format \(MF_{t}\) (bits/symbol) describes the number of bits encoded in a symbol, and the baud rate \(BR_{t}\) (symbols/sec) describes the number of transmitted symbols per sec. Thus, the total transmission rate of a given tuple \(t\) equals \(MF_{t}\cdot BR_{t}\). Finally, the FEC overhead \(OV_{t}\) is taken under consideration to calculate the net transmission rate. We assume Nyquist WDM transmission, and thus a tuple \(t\) requires \(\lceil\frac{(1+y)BR_{t}}{z}\rceil\) spectrum slots, assuming a bandwidth overhead factor \(y\) and spectrum slots of width equal to \(z\). Each slice demand \(r\in R\) from a source node \(s\) to a destination node \(d\), is characterized by its requested network capacity \(\zeta_{r}\) and processing capacity \(\varepsilon_{r}\) (measured in Floating-point Operations per Second -FLOPS). The slices' demanded network capacity is routed through the network. Processing power is allocated at the traversed nodes, with the objective to serve all the slice requests, minimizing the utilized bandwidth and the processing cost. In doing so, we leverage the QoT estimator (Section 3.1) and the traffic prediction algorithm (Section 3.2). The QoT estimator allows to estimate beforehand the QoT of the lightpaths to be considered by the resource allocation algorithm. The estimator provides accurate QoT metrics that help the allocation algorithm to assign the most suitable combination of modulation format (\(MF_{t}\)) and baud rate (\(BR_{t}\)) in order to efficiently serve the demands. The predicted traffic is used by the allocation algorithm in order to efficiently plan the network's resources, avoiding resource overprovisioning. Different resource allocation algorithms can be used including integer linear programming (ILP) based and heuristics. Since the described problem is NP-hard and we are considering realistic size metro and access networks, with high number of nodes and links, we decided to use the following heuristic algorithm also presented in Algorithm 1. The proposed heuristic algorithm serves the slice requests sequentially, one by one and can efficiently serve a large number of slice requests. To do so, it starts with a pre-processing phase to calculate a set of candidate paths for each slice request \(P_{r}\). Then, for each one of these demands and for each transmission configuration (tuple) \(t\) it calculates the regeneration points (if needed) based on the QoT estimator and the set of nodes where the slice's processing requirements can be served. Since the solution space for each demand can be vast, slowing the execution, our algorithm has an additional phase where it prunes the dominated candidate solutions. These are the configurations with more spectrum requirements and paths with available processing capacity of higher cost than other candidate solutions.