* Adding initial implementation of basic_encap example
* Updated basic_encap example to count the number of valid packets
* Updated basic_encap example to put encapsulation layer after Ethernet
header.
* Added solution file for basic_encap example
* Changed the name of the basic_encap example to basic_tunnel and called
the new header myTunnel. Also changed the myTunnel field names slightly.
* Updated the README file for the basic_tunnel exercise. Also added topo.pdf
image to serve as a reference during implementation.
* Updated basic/README.md to point to basic_tunnel as the next exercise.
* Updated the README for basic to point to basic_tunnel.
Updated the starter code for basic_tunnel to look like basic
solution with todo comments.
Updated send.py and receive.py to be able to send both plain IP
packets and tunneled IP packets.
Updated basic_tunnel.p4 to have same control flow as p4runtime
exercise.
* Updated the basic and basic_tunnel README files to remove references
to the old run.sh script.
Updated TODO list in basic_tunnel README
* Updated README files to indicate logs are in /tmp
* Updated README for basic_tunnel exercise to specify the etherType
field value.
Updating the P4Switch class to use different mechanism
for checking when the switch is listening on the Thrift
port. This might fix an issues where Mininet hangs on
start.
The previous implementation had a race conditiona between the
socket check and the BMv2 startup. Sometimes, if the check happen
just before (or as) BMv2 was trying to bind the port, it would
not be able to bind it. This solution uses psutil's equivalent
to 'netstat' to determine whether is BMv2 has bound the port yet.
Also, some minor README and comment improvements.
- Minor fixes to p4runtime exercise and README
- Adding p4runtime/solution
- Adding p4runtime/topology.json
- Updating .gitignore to include solution directory and topology.json
- Fixing root-bootstrap to exit on errors
- Updating VM name in Vagrantfile
- Setting up VM to automatically log 'p4' user in on startup
* Adding initial implementation of basic_encap example
* Updated basic_encap example to count the number of valid packets
* Updated basic_encap example to put encapsulation layer after Ethernet
header.
* Added solution file for basic_encap example
* Changed the name of the basic_encap example to basic_tunnel and called
the new header myTunnel. Also changed the myTunnel field names slightly.
* Updated the README file for the basic_tunnel exercise. Also added topo.pdf
image to serve as a reference during implementation.
* Updated basic/README.md to point to basic_tunnel as the next exercise.
* Updated the README for basic to point to basic_tunnel.
Updated the starter code for basic_tunnel to look like basic
solution with todo comments.
Updated send.py and receive.py to be able to send both plain IP
packets and tunneled IP packets.
Updated basic_tunnel.p4 to have same control flow as p4runtime
exercise.
* Updated the basic and basic_tunnel README files to remove references
to the old run.sh script.
Updated TODO list in basic_tunnel README
* Updated README files to indicate logs are in /tmp
Summary of changes:
- Adding the p4runtime starter code and solution.
- Adding NO_P4, BMV2_SWITCH_EXE and P4C_ARGS to utils/Makefile
- Updated p4runtime/Makefile to use variables
- Adding conversion functions for match and action param values
- Separating P4Info and P4Runtime libraries
- Updating global README and adding p4runtime/README.md
- Disabling screen saver on VM GUI
- Adding desktop icons for Terminal, Wireshare and Sublime Text
- Updating topo.pdf -> png for Markdown viewing in basic_tunnel and
p4runtime READMEs
* Adding initial implementation of basic_encap example
* Updated basic_encap example to count the number of valid packets
* Updated basic_encap example to put encapsulation layer after Ethernet
header.
* Added solution file for basic_encap example
* Changed the name of the basic_encap example to basic_tunnel and called
the new header myTunnel. Also changed the myTunnel field names slightly.
* Updated the README file for the basic_tunnel exercise. Also added topo.pdf
image to serve as a reference during implementation.
* Updated basic/README.md to point to basic_tunnel as the next exercise.
* Updated the README for basic to point to basic_tunnel.
Updated the starter code for basic_tunnel to look like basic
solution with todo comments.
Updated send.py and receive.py to be able to send both plain IP
packets and tunneled IP packets.
Updated basic_tunnel.p4 to have same control flow as p4runtime
exercise.
* Updated the basic and basic_tunnel README files to remove references
to the old run.sh script.
Updated TODO list in basic_tunnel README
* Adding initial implementation of basic_encap example
* Updated basic_encap example to count the number of valid packets
* Updated basic_encap example to put encapsulation layer after Ethernet
header.
* Added solution file for basic_encap example
* Changed the name of the basic_encap example to basic_tunnel and called
the new header myTunnel. Also changed the myTunnel field names slightly.
* Updated the README file for the basic_tunnel exercise. Also added topo.pdf
image to serve as a reference during implementation.
* Updated basic/README.md to point to basic_tunnel as the next exercise.
* Updated the README for basic to point to basic_tunnel.
Updated the starter code for basic_tunnel to look like basic
solution with todo comments.
Updated send.py and receive.py to be able to send both plain IP
packets and tunneled IP packets.
Updated basic_tunnel.p4 to have same control flow as p4runtime
exercise.
* Added Makefile and topology.jsons for all examples.
* use branch
* Updated MRI exercise (#73)
* Updated MRI exercise
* Updated basic_tunnel.p4 for changes to p4 lang
* updated other examples
* Created p4runtime exercise directory with draft P4 program
* Updating VM
- Adding p4 to vboxsf group for VirtualBox Shared Folders
- Adding gRPC Python package for p4 runtime
- Setting up VM to use 2 CPUs
* Updating .gitignore for PyCharms and Mac OS
* Adding P4RuntimeSwitch type and support in run_exercises
If the grpc switch target is used, we will instantiate a P4RuntimeSwitch.
Ideally, this will get merged with BMv2's P4Switch and can be removed
* Adding p4 runtime and p4info browser libraries
Also, adding a Makefile for this project
* moved basic exercise to new run script
* forgot some files
* CLI output now goes to logs
* typo, and forgot topo file
* fixed net.stop() bug
* added temporary change to makefile
* typos hard
* Updated vm provisioning scripts to build and install P4Runtime
Also, hardcoded commit ID for each tool to improve reproducibility
of exercises (the P4Runtime API could change in the future).
TODO: there is a permission error at line 114 of user-bootstrap.sh that
needs to be fixed.
* Removed unnecessary compiler flags when bulding PI
* Fixed permission error and updated BMv2 and PI commit IDs
* Adding initial implementation of basic_encap example
* Updated basic_encap example to count the number of valid packets
* Updated basic_encap example to put encapsulation layer after Ethernet
header.
* Added solution file for basic_encap example
* Changed the name of the basic_encap example to basic_tunnel and called
the new header myTunnel. Also changed the myTunnel field names slightly.
* Created new subdirectory for Fall developer day.
* Created vm directory for P4D2_2017_Fall. Fixed emacs permission problem.
* Remove checkout of SIGCOMM branch.