Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • P p4-learning
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • p4git
  • p4-learning
  • Wiki
  • Migrate to the new version

Migrate to the new version · Changes

Page history
Updated Migrate to the new version (markdown) authored Jul 28, 2021 by Jurij Nota's avatar Jurij Nota
Hide whitespace changes
Inline Side-by-side
Migrate-to-the-new-version.md
View page @ 5c41cea3
## What's new? ## What's new?
The recent update of *P4-Utils* introduced several improvements, affecting also *P4-Learning*. Hereafter, we list the most important ones. The recent update of *P4-Utils* introduced several improvements, affecting also *P4-Learning*. Indeed *P4-Utils* is the framework that makes it possible to create virtual networks with P4 devices in them. Hereafter, we list the most important features that were added or modified.
- The application is now fully based on Python 3. - The application is now fully based on Python 3.
- The legacy JSON configuration file used to start the network has been simplified. - The legacy JSON configuration file used to start the network has been simplified.
- The network can now be started also using a Python script and the new `NetworAPI`. - The network can now be started also using a Python script and the new `NetworAPI`.
...@@ -14,4 +15,17 @@ All the exercises and examples have been already migrated to the new version and ...@@ -14,4 +15,17 @@ All the exercises and examples have been already migrated to the new version and
## How to migrate to the new version? ## How to migrate to the new version?
Hereafter we list the changes between the old and the new JSON network configuration file. ### JSON Network Configuration
\ No newline at end of file
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***.
|Old version|New version|Description|
|:---------:|:---------:|:----------|
|`obj["program"]`|`obj["p4_src"]`|Path to the default program for all the P4 switches (string).|
|`obj["switch"]`|*removed*|Default switch binary to use (string).|
|`obj["compiler"]`|*removed*|Default compiler binary to use (string).|
|`obj["options"]`|*removed*|Options to pass to the compiler (string).|
|`obj["switch_cli"]`|*removed*|Default *Thrift* client binary to configure the switches (string).|
|*not present*|`obj["tasks_file"]`|Path to the file that contains all the tasks to execute in the nodes (string).|
### Python Network Configuration
Clone repository

P4-Learning Documentation

  • Getting Started
  • Migrate to the new version
  • BMv2 Simple Switch
  • Control Plane
  • Debugging and Troubleshooting

沪ICP备19002739号