# **Emulation of Backbone Networks in Hyperscalers**
The Internet is a network of networks and thus, a graph. For certain distributed systems such as distributed consensus systems (DCSs), specific networks impact the DCSs' performance (i.e., the latency). Examples for DCSs include decentralized storage systems, lock systems, distributed payment mean systems, and cryptocurrencies.
For this thesis, we want to take a look at networks that belong (are run) by hyperscalers (e.g., AWS, Azure, GCP).
Related work [1-3] attempts to characterize these networks based on a graph-centric view of these hyperscaler networks and a curvature concentration metric, which is based on latency.
This project aims at replicating and validating the measurements and analysis of a hyperscaler backbone and using the analysis for Internet emulation.
Related work [1-3] only provides the results, but not the raw data used for the analysis.
The measurements were based on pair-wise traceroutes and matched the results to estimated autonomous systems (ASes) topologies from [4]. We aim at:
1. Objective
- Reproducing the curvature-based network analysis, including performing measurements or using existing RIPE Atlas measurements.
- Providing an emulated platform to reproduce a backbone internal network and its complexities such as latency and hops.
2. Literature Review
- Concentration Metrics (Ricci curvatures) in graphs
- Measurements techniques (tracing paths with load balancing)
- Containers (Linux namespaces, especially network namespaces and traffic control for path property emulation)
3. Design
4. Evaluation
## Resources
- Manifold and Curvature Analysis
-[1] L. Salamatian et al. A Manifold View of Connectivity in the Private Backbone Networks of Hyperscalers https://dl.acm.org/doi/pdf/10.1145/3604620
-[2] L. Salamatian et al. Curvature-based Analysis of Network Connectivity in Private Backbone Infrastructures https://dl.acm.org/doi/pdf/10.1145/3489048.3522645
-[3] (This source code is not reproducible)L Salamatian et al. https://github.com/Burdantes/Curvature-based-Analysis-of-Network-Connectivity-in-Private-Backbone-Infrastructures
The graphs for the ASes are not available,
and the source code is not clear
how to translate and turn into the geographical locations
- But, there are some hints for using the following
-[4] Riple Atlas. Notes on Traceroutes and Datasets https://labs.ripe.net/author/nevil/exploring-ripe-atlas-traceroutes-from-2012-to-2019/
-Source Code: https://github.com/nevil-brownlee/Atlas-graphs
- Tools
-[5] (traceroute MTR) https://github.com/traviscross/mtr
-[6] docker
-[8] Mini Internet Emulator : https://github.com/nsg-ethz/mini_internet_project
-[9] SEED Emulator: https://github.com/seed-labs/seed-emulator
-[10] Globalping: https://www.jsdelivr.com/globalping/cli