# A Graph Convolutional Network-Based Method for Congested Link Identification
## 2 Proposed Model
### Network Model  
The network model, the foundation of network tomography, refers to the topology used to implement the network tomography. Consider the fat tree topology, which has demonstrated its efficiency in SDN-based networks. We define \(\mathbf{N}\) as the set of network nodes and \(\mathbf{L}\) as the set of network links. Each node in set \(\mathbf{N}\) represents either a physical network node or a subnetwork consisting of numerous nodes and links. The connection between the source node and the destination node is called a path. Each path is composed of one or more links. Any connection between two nodes with no intermediate nodes is called a link. Each link can be a physical link or an abstraction of various physical links. For example, we consider the topology in Figure 3, which is an abstraction of the scenario in Figure 1. In this topology, set \(\mathbf{N}\) contains elements such as a center node \(s\), aggregation nodes \(a_{1}\) and \(a_{2}\), edge nodes \(e_{1}\) and \(e_{2}\), and destination nodes \(d_{1}\), \(d_{2}\), \(d_{3}\) and \(d_{4}\). Set \(\mathbf{N}\) is  
\[\mathbf{N}=\{s,a_{1},a_{2},e_{1},e_{2},d_{1},d_{2},d_{3},d_{4}\} \tag{3}\]  
Figure 3: A simple multiple-route topology.  
Set \(\mathbf{L}\) is  
\[\mathbf{L}=\{l_{1},l_{2},l_{3},l_{4},l_{5},l_{6},l_{7},l_{8},l_{9},l_{10}\} \tag{4}\]  
Let \(r_{d_{i}}^{k}\) (abbreviated as \(r_{i}^{k}\)) indicate the \(k\)th route from the source node to the destination node \(d_{i}\), and \(\mathbf{R}\) be a routing table, which is a set of all optional routes from the source node to any destination node. For example, the routing table of Figure 3 is defined as follows:  
\[\mathbf{R}=\{r_{1}^{1},r_{1}^{2},r_{2}^{1},r_{3}^{2},r_{4}^{1},r_{4}^{2}\} \tag{5}\]  
The route table is shown in Table 1.  
The authors of [32] pointed out that a congested link will cause congestion on all routes which traverse through it. Moreover, each link traversed by a good path route must be good. Consequently, we indicate \(y(r_{i}^{k})\) as the binary status of the path route \(r_{i}^{k}\). Since we do not perform loss detection directly on each link, their states remain unknown. For link \(l_{i}\) traversed by route \(r_{i}^{k}\), we mark its unknown status as \(x(l_{i})\). We then construct a logical relation between a route and its component links as follows:  
\[y(r_{i}^{k}) =x(l_{1})\bigvee\ldots\bigvee x(l_{j})\] \[=\bigvee_{l\in V_{i}^{k}}x(l)\quad\text{for }\textbf{all }l\in V_{i}^{k} \tag{6}\]  
where \(\bigvee\) is the Boolean operation \"OR\" and \(V_{i}^{k}\) indicates the set of links that route \(r_{i}^{k}\) traverses through. In this paper, we use the vector \(\textbf{X}=[x_{1},\ldots,x_{i},\ldots,x_{n}]^{\mathsf{T}}\) to represent the state of the \(n\) links in the network, and the state of \(m\) routes in the route table **R** is the vector \(\textbf{Y}=[y_{1},\ldots,y_{i},\ldots,y_{m}]^{\mathsf{T}}\). For the Boolean relation between the observations of separate routes and the links' status, we use the following equation to extend Equation (6):  
\[\textbf{D}\odot\textbf{X}=\textbf{Y} \tag{7}\]  
where \(\textbf{D}=(d_{i}^{k})\) is an \(m\times n\) order measurement matrix and the element \(d_{i}^{k}\in\{0,1\}\), specifically \(d_{i}^{k}=1\), indicates that the \(k\)th route in **R** traverses \(l_{i}\); otherwise, \(d_{i}^{k}=0\). In addition, \"\(\odot\)\" is the product operators between the Boolean matrices.