... | ... | @@ -17,7 +17,7 @@ All the exercises and examples have been already migrated to the new version and |
|
|
|
|
|
### JSON Network Configuration
|
|
|
|
|
|
Consider that `obj` is the main object contained in the JSON network configuration file (i.e. the `p4app.json` file contained in the folders of the exercises and examples). Then we have the following changes between the old and the new JSON network configuration file. Please remember that, because of these changes, **old JSON configuration files are not compatible with the new version of *P4-Utils***.
|
|
|
Consider that `obj` is the main object contained in the JSON network configuration file (i.e. the `p4app.json` file contained in the folders of the exercises and examples). Then we have the following major changes between the old and the new JSON network configuration file. Please remember that, because of these changes, **old JSON configuration files are not compatible with the new version of *P4-Utils***.
|
|
|
|
|
|
|Old version|New version|Description|JSON Data Type|
|
|
|
|:---------:|:---------:|:----------|:------------:|
|
... | ... | @@ -30,10 +30,17 @@ Consider that `obj` is the main object contained in the JSON network configurati |
|
|
|`obj["topo_module"]`|*removed*|Default *Mininet* `Topo` class to use. Now this setting cannot be specified anymore because we always use the default one.|object|
|
|
|
|`obj["controller_module"]`|*removed*|Default controller class to use to configure all the switches.|object|
|
|
|
|`obj["topodb_module"]`|*removed*|Default topology database class to query network information and save it to the disk. Now this setting cannot be specified anymore because we always use the default one.|object|
|
|
|
|*not present*|`obj["host_node"]`|Default Mininet host class to use.|object|
|
|
|
|*not present*|`obj["switch_node"]`|Default Mininet switch class to use.|object|
|
|
|
|*not present*|`obj["router_node"]`|Default Mininet router class to use.|object|
|
|
|
|*not present*|`obj["compiler_module"]`|Default P4 compiler class to use.|object|
|
|
|
|*not present*|`obj["client_module"]`|Default *Thrift* client class to use to configure the switches.|object|
|
|
|
|`obj["topology"]["default_delay"]`|`obj["topology"]["default"]["delay"]`|Links default transmission delay (ms).|number|
|
|
|
|`obj["topology"]["default_bw"]`|`obj["topology"]["default"]["bw"]`|Links default bandwidth (Mbps).|number|
|
|
|
|`obj["topology"]["default_loss"]`|`obj["topology"]["default"]["loss"]`|Links default loss.|number|
|
|
|
|`obj["topology"]["default_link_weight"]`|`obj["topology"]["default"]["weight"]`|Links default weight.|number|
|
|
|
|`obj["topology"]["default_queue_length"]`|`obj["topology"]["default"]["max_queue_size"]`|Links default maximum queue length.|number|
|
|
|
|`obj["topology"]["auto_gw_arp"]`|`obj["topology"]["default"]["auto_gw_arp"]`|Populate the ARP table of hosts with the default gateway MAC address. This prevents the exchange of ARP requests among hosts and default gateway.|boolean|
|
|
|
|`obj["topology"]["auto_arp_tables"]`|`obj["topology"]["default"]["auto_arp_tables"]`|Populate the ARP table of hosts with the MAC addresses of all the hosts in the same subnet. This prevents the exchange of ARP requests among hosts.|boolean|
|
|
|
|
|
|
### Python Network Configuration |