TE implementation

LocalTE is responsible for converting the aggregation-block-level TE solution generated by GlobalTE into groups to be installed on each switch, i.e., TE implementation.

Specifically, GlobalTE generates the TE solution grouped by clusters, and each cluster has one instance of LocalTE running to process the TE solution input.

Upon receiving the snippet of TE solution targeting its cluster, LocalTE first breaks the traffic split intention into smaller traffic splits for each switch. It then constructs switch rules for each prefix (group). After this, group reduction is invoked to reduce the constructed (ideal) groups so that they fit within the switch hardware table limit. Finally, the reduced groups are installed onto each switch and traffic load on each link is updated. More details can be found in localTE/wcmp_alloc.py.

Group reduction is the core component in FabricEval and the focus of our paper. We discuss it in the next section.