Skip to content

general_configuration

Thomas Holterbach edited this page Apr 2, 2022 · 27 revisions

General configuration

We use several configuration files to configure the mini-Internet and define its topology at the different layers. The configuration files should be in the config. They are organized as follow:

config/
├── external_links_config.txt    [inter-AS links and policies] 
└── AS_config.txt                [per-AS topology & config]
    ├── router_config.txt                    [L3 internal topology]
    ├── internal_links_config.txt            [L3 internal topology]
    ├── layer2_switches_config.txt           ^
    ├── layer2_hosts_config.txt              |   [L2 topology]
    └── layer2_links_config.txt              v   

Examples

We provide multiple sample topologies (see examples/config_2020, examples/config_2019 and examples/config_l2). Of course, you can also define your own topology using the configuration files. We explain how to do that in the following section and pages.

The AS_config.txt is the main configuration file. It lists all the ASes and IXPs in the mini-Internet as well as the configuration files to use for every AS. The following table shows an example of this configuration file.

C1   C2    C3          C4                     C5              C6              C7              C8
------------------------------------------------------------------------------------------------
1    AS  Config    l3_router_krill.txt    l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
2    AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
11   AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
12   AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
5    AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
6    AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
15   AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
16   AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
3    AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
4    AS  Config    l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
13   AS  NoConfig  l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
14   AS  NoConfig  l3_router.txt          l3_links.txt    l2_switches.txt l2_hosts.txt    l2_topology.txt 
80  IXP  Config    N/A                    N/A             N/A             N/A             N/A
81  IXP  Config    N/A                    N/A             N/A             N/A             N/A
82  IXP  Config    N/A                    N/A             N/A             N/A             N/A

Below is the description of each column.

C1: As number.
C2: Type of the network (either AS or IXP).
C3: "Config" means the network will be automatically configured (VLANs, OSPF, BGP, ...) whereas "NoConfig" means the network comes not configured. Note: an IXP must be configured by default.
C4: Name of the configuration file that lists the layer 3 routers within the AS and their parameters.
C5: Name of the configuration file that describes the layer 3 internal topology.
C6: Name of the configuration file that lists the layer 2 switches and their parameters.
C7: Name of the configuration file that lists the hosts within the layer 2 network with their parameters.
C8: Name of the configuration file that describes the layer 2 topology

In this example, the platform will build a mini-Internet comprising 12 ASes and 3 IXPs. Every AS comes preconfigured but AS 13 and 14.