You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 27, 2018. It is now read-only.
James Guthrie edited this page Jun 1, 2015
·
4 revisions
Run Pyretic from the command line using pyretic.py, e.g.,
$ pyretic.py -m p0 pyretic.modules.mac_learner
The -m flag indicates the Pyretic runtime's mode of operation.
interpreted (i) - every packet is processed in the controller runtime. Unsurprisingly slow, but useful for debugging.
reactive (r0) - rules are reactively pushed to switches based on the Pyretic policy and the packets seen.
proactive (p0) - rules are proactively pushed to switches based on the Pyretic policy. Generally the highest performant mode currently available.
Arguments can be passed into the main() method of your module:
$ pyretic.py -m p0 my.custom.module --foo=bar
Additional (non-pyretic) arguments passed with --key=value are parsed by pyretic and passed into main() using the **kwargs paradigm.
Our typical mininet workflow on the Pyretic VM uses screen
$ screen -S test
from within screen ctrl-a ctrl-c opens a second screen (ctrl-a, ctrl-a toggles between the two). In one screen run mininet, in the other run the pyretic. (TIP: start pyretic first for quicker hookup w/ mininet) Each example file in pyretic/pyretic/examples contains instructions regarding mininet setup and testing.