# GANA-VDC: Application-Aware with Bandwidth Guarantee in Cloud Datacenters
## 3 Model Description  
### GANA Model  
Tenants naturally make diverse VN requests while cloud services need to provide a homogeneous pattern. Recent works on VN have suggested a different model to allocate bandwidth, such as one based on traffic matrices [13]. Bandwidth entails a fixed variable, yet the hose model engenders invariable bandwidth [14], temporally alternating bandwidth [24], or a TAG model based on a between-application communication structure [34]. In agreement with these models, an algorithmic mapping from VN to PN [35] unifies the tenant service modeling to enable an SLA-aware cloud, focusing primarily on a generic methodology for cloud service representation. This applies VDC aware networking, presenting a new model, Graph Abstraction Network Architecture (GANA), in which tenants are used to defining the requests in a fine-grained VDC network, including the network structure, as well as the uplink and downlink bandwidth. Different from hose abstraction, a model resembling the usual physical networks unlike patterns between TAG abstractions, GANA allows tenants to run application mimicking former network environments. To cover all prevalent network topologies, the GANA model accommodates a per-tenant network structure where one retains information access on bandwidth-demand to produce flexible representation. Figure 1 illustrates the GANA model corresponding to an oversubscribed multi-tier network, where the <B1, B2> and <B3, B4> labels correspond to bidirectional edges linking the aggregation layer and the core infrastructure. Similarly labeled, the edges link the access layer and the aggregation layer. Each node corresponds to a switch or a VM to imitate a network applications structure effect. To reduce the cost and limit bandwidth over usage, tenants control the exact amount of data for each VN in the VDC, thus controlling the uplink and downlink traffic. Table 1 introduces the notations used in this paper. The physical network is denoted as PG(H, S, E) with the set of servers given by \(H\), while \(S\) and \(E\) represent a set of switches and links, respectively. Link capacity is given for each link. A Switch \(S_{i}\) has \((k_{i}\geq 1)\) ports \(\{port_{j}^{S_{i}}\big{|}j\in[0,\ k_{i}-1]\}\), where \(k_{i}\) remains constant. Likewise, we denote the VDC network as \(VG(VM,\ VS,\ VE)\). Practically, a switch using the GANA model should also adapt to this approach. In the GANA model, the original switch resources are prohibited from exceeding the commodity switch because cloud data centers are built on the assumption that commodity switches interconnect, underlying network infrastructure. Such resources include the port bandwidth as well as the number of these ports, implying \(Interface(VS_{i})<Interface(VS_{j})\), \(\text{vib}(\text{VS}_{\text{im}})<\text{ib}(\text{S}_{\text{im}})\), and \(\text{veib}(\text{VS}_{\text{im}})<\text{eb}(\text{S}_{\text{in}})\). Figure 1: GANA model. In the GANA model, placing bidirectional edges connecting to the vertices, the tenants demanded bandwidth is guaranteed between entities. Each edge e = (VS\({}_{im}\), VS\({}_{jn}\)) between the \(m\)th port of VS\({}_{i}\) and the \(n\)th port of VS\({}_{j}\) depicts a heterogeneous weight pair <u, v> representing per-link bandwidth guarantees. Specifically, the VM connected to the \(m\)th port of VS\({}_{i}\) equals a guaranteed bandwidth, u = veb(VS\({}_{im}\)) for sending traffic to the VM connected to the \(n\)th port of VS\({}_{j}\). In other words, VM connected to n-port of VS\({}_{j}\) retains a guaranteed bandwidth u = vib(VS\({}_{jn}\)) to receive traffic from VM connected to the \(m\)th port of VS\({}_{i}\). VM connected to the nth port of VS\({}_{j}\) maintains a guaranteed bandwidth v = veb(VS\({}_{jn}\)) for sending traffic to the VM connected to the \(m\)th port of VS\({}_{i}\). Similarly, VM connected to m-port of VS\({}_{i}\) retains a guaranteed bandwidth v = vib(VS\({}_{im}\)) to receive traffic from VM connected to the \(n\)th port of VS\({}_{j}\).