Remove trailing whitespaces and tabs

This is done to make pre-commit script happy.

TrivialFix

Change-Id: I4a080f8559b0392c6305c6d7c222be6ca006323c
This commit is contained in:
Slawek Kaplonski
2024-05-06 12:26:11 +02:00
parent a4e10d3d0b
commit 143d5bcd0e
275 changed files with 42303 additions and 42303 deletions

View File

@@ -17,116 +17,116 @@ ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) sou
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest
help: help:
@echo "Please use \`make <target>' where <target> is one of" @echo "Please use \`make <target>' where <target> is one of"
@echo " html to make standalone HTML files" @echo " html to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories" @echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file" @echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files" @echo " pickle to make pickle files"
@echo " json to make JSON files" @echo " json to make JSON files"
@echo " htmlhelp to make HTML files and a HTML help project" @echo " htmlhelp to make HTML files and a HTML help project"
@echo " qthelp to make HTML files and a qthelp project" @echo " qthelp to make HTML files and a qthelp project"
@echo " devhelp to make HTML files and a Devhelp project" @echo " devhelp to make HTML files and a Devhelp project"
@echo " epub to make an epub" @echo " epub to make an epub"
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
@echo " latexpdf to make LaTeX files and run them through pdflatex" @echo " latexpdf to make LaTeX files and run them through pdflatex"
@echo " text to make text files" @echo " text to make text files"
@echo " man to make manual pages" @echo " man to make manual pages"
@echo " changes to make an overview of all changed/added/deprecated items" @echo " changes to make an overview of all changed/added/deprecated items"
@echo " linkcheck to check all external links for integrity" @echo " linkcheck to check all external links for integrity"
@echo " doctest to run all doctests embedded in the documentation (if enabled)" @echo " doctest to run all doctests embedded in the documentation (if enabled)"
clean: clean:
-rm -rf $(BUILDDIR)/* -rm -rf $(BUILDDIR)/*
html: html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo @echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html." @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml: dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo @echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml: singlehtml:
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo @echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle: pickle:
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo @echo
@echo "Build finished; now you can process the pickle files." @echo "Build finished; now you can process the pickle files."
json: json:
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo @echo
@echo "Build finished; now you can process the JSON files." @echo "Build finished; now you can process the JSON files."
htmlhelp: htmlhelp:
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo @echo
@echo "Build finished; now you can run HTML Help Workshop with the" \ @echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp." ".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp: qthelp:
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo @echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \ @echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:" ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/os_ken.qhcp" @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/os_ken.qhcp"
@echo "To view the help file:" @echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/os_ken.qhc" @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/os_ken.qhc"
devhelp: devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo @echo
@echo "Build finished." @echo "Build finished."
@echo "To view the help file:" @echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/os_ken" @echo "# mkdir -p $$HOME/.local/share/devhelp/os_ken"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/os_ken" @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/os_ken"
@echo "# devhelp" @echo "# devhelp"
epub: epub:
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo @echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub." @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex: latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo @echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \ @echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)." "(use \`make latexpdf' here to do that automatically)."
latexpdf: latexpdf:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..." @echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf $(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text: text:
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo @echo
@echo "Build finished. The text files are in $(BUILDDIR)/text." @echo "Build finished. The text files are in $(BUILDDIR)/text."
man: man:
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo @echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man." @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
changes: changes:
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo @echo
@echo "The overview file is in $(BUILDDIR)/changes." @echo "The overview file is in $(BUILDDIR)/changes."
linkcheck: linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo @echo
@echo "Link check complete; look for any errors in the above output " \ @echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt." "or in $(BUILDDIR)/linkcheck/output.txt."
doctest: doctest:
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \ @echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt." "results in $(BUILDDIR)/doctest/output.txt."

View File

@@ -47,8 +47,8 @@ instance advertizes some prefixes.
peer_down_handler=detect_peer_down) peer_down_handler=detect_peer_down)
speaker.neighbor_add('192.168.177.32', 64513) speaker.neighbor_add('192.168.177.32', 64513)
# uncomment the below line if the speaker needs to talk with a bmp server. # uncomment the below line if the speaker needs to talk with a bmp server.
# speaker.bmp_server_add('192.168.177.2', 11019) # speaker.bmp_server_add('192.168.177.2', 11019)
count = 1 count = 1
while True: while True:
eventlet.sleep(30) eventlet.sleep(30)

View File

@@ -77,10 +77,10 @@ app
--ctl-cert CTL_CERT --ctl-cert CTL_CERT
controller certificate controller certificate
--ctl-privkey CTL_PRIVKEY --ctl-privkey CTL_PRIVKEY
controller private key controller private key
--default-log-level DEFAULT_LOG_LEVEL --default-log-level DEFAULT_LOG_LEVEL
default log level default log level
--explicit-drop --explicit-drop
@@ -99,37 +99,37 @@ app
--log-file LOG_FILE --log-file LOG_FILE
log file name log file name
--log-file-mode LOG_FILE_MODE --log-file-mode LOG_FILE_MODE
default log file permission default log file permission
--neutron-admin-auth-url NEUTRON_ADMIN_AUTH_URL --neutron-admin-auth-url NEUTRON_ADMIN_AUTH_URL
auth url for connecting to neutron in admin context auth url for connecting to neutron in admin context
--neutron-admin-password NEUTRON_ADMIN_PASSWORD --neutron-admin-password NEUTRON_ADMIN_PASSWORD
password for connecting to neutron in admin context password for connecting to neutron in admin context
--neutron-admin-tenant-name NEUTRON_ADMIN_TENANT_NAME --neutron-admin-tenant-name NEUTRON_ADMIN_TENANT_NAME
tenant name for connecting to neutron in admin context tenant name for connecting to neutron in admin context
--neutron-admin-username NEUTRON_ADMIN_USERNAME --neutron-admin-username NEUTRON_ADMIN_USERNAME
username for connecting to neutron in admin context username for connecting to neutron in admin context
--neutron-auth-strategy NEUTRON_AUTH_STRATEGY --neutron-auth-strategy NEUTRON_AUTH_STRATEGY
auth strategy for connecting to neutron in admincontext auth strategy for connecting to neutron in admincontext
--neutron-controller-addr NEUTRON_CONTROLLER_ADDR --neutron-controller-addr NEUTRON_CONTROLLER_ADDR
openflow method:address:port to set controller ofovs bridge openflow method:address:port to set controller ofovs bridge
--neutron-url NEUTRON_URL --neutron-url NEUTRON_URL
URL for connecting to neutron URL for connecting to neutron
--neutron-url-timeout NEUTRON_URL_TIMEOUT --neutron-url-timeout NEUTRON_URL_TIMEOUT
timeout value for connecting to neutron in seconds timeout value for connecting to neutron in seconds
--noexplicit-drop --noexplicit-drop
The inverse of --explicit-drop The inverse of --explicit-drop
--noinstall-lldp-flow --noinstall-lldp-flow
The inverse of --install-lldp-flow The inverse of --install-lldp-flow
--noobserve-links --noobserve-links
@@ -147,13 +147,13 @@ app
--observe-links --observe-links
observe link discovery events. observe link discovery events.
--ofp-listen-host OFP_LISTEN_HOST --ofp-listen-host OFP_LISTEN_HOST
openflow listen host openflow listen host
--ofp-ssl-listen-port OFP_SSL_LISTEN_PORT --ofp-ssl-listen-port OFP_SSL_LISTEN_PORT
openflow ssl listen port openflow ssl listen port
--ofp-tcp-listen-port OFP_TCP_LISTEN_PORT --ofp-tcp-listen-port OFP_TCP_LISTEN_PORT
openflow tcp listen port openflow tcp listen port
--use-stderr --use-stderr
@@ -168,17 +168,17 @@ app
--version --version
show program's version number and exit show program's version number and exit
--wsapi-host WSAPI_HOST --wsapi-host WSAPI_HOST
webapp listen host webapp listen host
--wsapi-port WSAPI_PORT --wsapi-port WSAPI_PORT
webapp listen port webapp listen port
--test-switch-dir TEST-SWITCH_DIR --test-switch-dir TEST-SWITCH_DIR
test files directory test files directory
--test-switch-target TEST-SWITCH_TARGET --test-switch-target TEST-SWITCH_TARGET
target sw dp-id target sw dp-id
--test-switch-tester TEST-SWITCH_TESTER --test-switch-tester TEST-SWITCH_TESTER
tester sw dp-id tester sw dp-id

View File

@@ -1,4 +1,4 @@
# Sample configuration file # Sample configuration file
[DEFAULT] [DEFAULT]

View File

@@ -62,7 +62,7 @@
<xs:attribute name="message-id" type="messageIdType" <xs:attribute name="message-id" type="messageIdType"
use="required"/> use="required"/>
<!-- <!--
Arbitrary attributes can be supplied with <rpc> element. Arbitrary attributes can be supplied with <rpc> element.
--> -->
<xs:anyAttribute processContents="lax"/> <xs:anyAttribute processContents="lax"/>
</xs:complexType> </xs:complexType>
@@ -201,8 +201,8 @@
<xs:attribute name="message-id" type="messageIdType" <xs:attribute name="message-id" type="messageIdType"
use="optional"/> use="optional"/>
<!-- <!--
Any attributes supplied with <rpc> element must be returned Any attributes supplied with <rpc> element must be returned
on <rpc-reply>. on <rpc-reply>.
--> -->
<xs:anyAttribute processContents="lax"/> <xs:anyAttribute processContents="lax"/>
</xs:complexType> </xs:complexType>
@@ -271,13 +271,13 @@
--> -->
<xs:complexType name="configNameType"/> <xs:complexType name="configNameType"/>
<xs:element name="config-name" type="configNameType" <xs:element name="config-name" type="configNameType"
abstract="true"/> abstract="true"/>
<xs:element name="startup" type="configNameType" <xs:element name="startup" type="configNameType"
substitutionGroup="config-name"/> substitutionGroup="config-name"/>
<xs:element name="candidate" type="configNameType" <xs:element name="candidate" type="configNameType"
substitutionGroup="config-name"/> substitutionGroup="config-name"/>
<xs:element name="running" type="configNameType" <xs:element name="running" type="configNameType"
substitutionGroup="config-name"/> substitutionGroup="config-name"/>
<!-- <!--
<url> element <url> element
@@ -324,8 +324,8 @@
<xs:complexType name="filterInlineType"> <xs:complexType name="filterInlineType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="xs:anyType"> <xs:extension base="xs:anyType">
<xs:attribute name="type" type="FilterType" <xs:attribute name="type" type="FilterType"
default="subtree"/> default="subtree"/>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
@@ -360,9 +360,9 @@
<xs:complexType name="getType"> <xs:complexType name="getType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="filter" minOccurs="0" maxOccurs="1"/> <xs:element ref="filter" minOccurs="0" maxOccurs="1"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
@@ -374,15 +374,15 @@
<xs:complexType name="getConfigType"> <xs:complexType name="getConfigType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="source"/> <xs:element ref="source"/>
<xs:element ref="filter" minOccurs="0" maxOccurs="1"/> <xs:element ref="filter" minOccurs="0" maxOccurs="1"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="get-config" type="getConfigType" <xs:element name="get-config" type="getConfigType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<edit-config> operation <edit-config> operation
@@ -390,18 +390,18 @@
<xs:complexType name="editConfigType"> <xs:complexType name="editConfigType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="target"/> <xs:element ref="target"/>
<xs:element ref="default-operation" minOccurs="0"/> <xs:element ref="default-operation" minOccurs="0"/>
<xs:element ref="test-option" minOccurs="0"/> <xs:element ref="test-option" minOccurs="0"/>
<xs:element ref="error-option" minOccurs="0"/> <xs:element ref="error-option" minOccurs="0"/>
<xs:element ref="config" minOccurs="0"/> <xs:element ref="config" minOccurs="0"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="edit-config" type="editConfigType" <xs:element name="edit-config" type="editConfigType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<copy-config> operation <copy-config> operation
@@ -409,15 +409,15 @@
<xs:complexType name="copyConfigType"> <xs:complexType name="copyConfigType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="source"/> <xs:element ref="source"/>
<xs:element ref="target"/> <xs:element ref="target"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="copy-config" type="copyConfigType" <xs:element name="copy-config" type="copyConfigType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<delete-config> operation <delete-config> operation
@@ -425,14 +425,14 @@
<xs:complexType name="delete-configType"> <xs:complexType name="delete-configType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="target"/> <xs:element ref="target"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="delete-config" type="delete-configType" <xs:element name="delete-config" type="delete-configType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<lock> operation <lock> operation
@@ -440,14 +440,14 @@
<xs:complexType name="lockType"> <xs:complexType name="lockType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="target"/> <xs:element ref="target"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="lock" type="lockType" <xs:element name="lock" type="lockType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<unlock> operation <unlock> operation
@@ -455,14 +455,14 @@
<xs:complexType name="unlockType"> <xs:complexType name="unlockType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="target"/> <xs:element ref="target"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="unlock" type="unlockType" <xs:element name="unlock" type="unlockType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<validate> operation <validate> operation
@@ -470,14 +470,14 @@
<xs:complexType name="validateType"> <xs:complexType name="validateType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element ref="source"/> <xs:element ref="source"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="validate" type="validateType" <xs:element name="validate" type="validateType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<commit> operation <commit> operation
@@ -492,19 +492,19 @@
<xs:complexType name="commitType"> <xs:complexType name="commitType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element name="confirmed" minOccurs="0" maxOccurs="1"/> <xs:element name="confirmed" minOccurs="0" maxOccurs="1"/>
<xs:element name="confirm-timeout" type="confirmTimeoutType" <xs:element name="confirm-timeout" type="confirmTimeoutType"
minOccurs="0" maxOccurs="1"/> minOccurs="0" maxOccurs="1"/>
<xs:element name="persist" minOccurs="0" maxOccurs="1"/> <xs:element name="persist" minOccurs="0" maxOccurs="1"/>
<xs:element name="persist-id" type="persistIdType" <xs:element name="persist-id" type="persistIdType"
minOccurs="0" maxOccurs="1"/> minOccurs="0" maxOccurs="1"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="commit" type="commitType" <xs:element name="commit" type="commitType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<cancel-commit> operation <cancel-commit> operation
@@ -512,15 +512,15 @@
<xs:complexType name="cancelCommitType"> <xs:complexType name="cancelCommitType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element name="persist-id" type="persistIdType" <xs:element name="persist-id" type="persistIdType"
minOccurs="0" maxOccurs="1"/> minOccurs="0" maxOccurs="1"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="cancel-commit" type="cancelCommitType" <xs:element name="cancel-commit" type="cancelCommitType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<discard-changes> operation <discard-changes> operation
@@ -531,7 +531,7 @@
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="discard-changes" type="discardChangesType" <xs:element name="discard-changes" type="discardChangesType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<close-session> operation <close-session> operation
@@ -542,7 +542,7 @@
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="close-session" type="closeSessionType" <xs:element name="close-session" type="closeSessionType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
<!-- <!--
<kill-session> operation <kill-session> operation
@@ -550,13 +550,13 @@
<xs:complexType name="killSessionType"> <xs:complexType name="killSessionType">
<xs:complexContent> <xs:complexContent>
<xs:extension base="rpcOperationType"> <xs:extension base="rpcOperationType">
<xs:sequence> <xs:sequence>
<xs:element name="session-id" minOccurs="0" maxOccurs="1"/> <xs:element name="session-id" minOccurs="0" maxOccurs="1"/>
</xs:sequence> </xs:sequence>
</xs:extension> </xs:extension>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:element name="kill-session" type="killSessionType" <xs:element name="kill-session" type="killSessionType"
substitutionGroup="rpcOperation"/> substitutionGroup="rpcOperation"/>
</xs:schema> </xs:schema>

View File

@@ -12,11 +12,11 @@
xmlns:inet="urn:ietf:params:xml:ns:yang:ietf-inet-types" xmlns:inet="urn:ietf:params:xml:ns:yang:ietf-inet-types"
xmlns:of11-config="urn:onf:of111:config:yang"> xmlns:of11-config="urn:onf:of111:config:yang">
<xs:import namespace="urn:ietf:params:xml:ns:yang:ietf-inet-types" <xs:import namespace="urn:ietf:params:xml:ns:yang:ietf-inet-types"
schemaLocation="ietf-inet-types.xsd"/> schemaLocation="ietf-inet-types.xsd"/>
<xs:import namespace="urn:ietf:params:xml:ns:yang:ietf-yang-types" <xs:import namespace="urn:ietf:params:xml:ns:yang:ietf-yang-types"
schemaLocation="ietf-yang-types.xsd"/> schemaLocation="ietf-yang-types.xsd"/>
<xs:import namespace="urn:ietf:params:xml:ns:netconf:base:1.0" <xs:import namespace="urn:ietf:params:xml:ns:netconf:base:1.0"
schemaLocation="../netconf/netconf.xsd"/> schemaLocation="../netconf/netconf.xsd"/>
<xs:annotation> <xs:annotation>
<xs:documentation> This schema was generated from the YANG module of-config1.1.1 by pyang <xs:documentation> This schema was generated from the YANG module of-config1.1.1 by pyang
version 1.2. The schema describes an instance document consisting of the entire version 1.2. The schema describes an instance document consisting of the entire

View File

@@ -7,11 +7,11 @@
xmlns:of12-config="urn:onf:params:xml:ns:onf:of12:config" xmlns:of12-config="urn:onf:params:xml:ns:onf:of12:config"
xmlns:inet="urn:ietf:params:xml:ns:yang:ietf-inet-types"> xmlns:inet="urn:ietf:params:xml:ns:yang:ietf-inet-types">
<xs:import namespace="http://www.w3.org/2000/09/xmldsig#" <xs:import namespace="http://www.w3.org/2000/09/xmldsig#"
schemaLocation="xmldsig-core-schema.xsd"/> schemaLocation="xmldsig-core-schema.xsd"/>
<xs:import namespace="urn:ietf:params:xml:ns:yang:ietf-inet-types" <xs:import namespace="urn:ietf:params:xml:ns:yang:ietf-inet-types"
schemaLocation="ietf-inet-types.xsd"/> schemaLocation="ietf-inet-types.xsd"/>
<xs:import namespace="urn:ietf:params:xml:ns:netconf:base:1.0" <xs:import namespace="urn:ietf:params:xml:ns:netconf:base:1.0"
schemaLocation="../netconf/netconf.xsd"/> schemaLocation="../netconf/netconf.xsd"/>
<xs:element name="capable-switch" type="OFCapableSwitchType"> <xs:element name="capable-switch" type="OFCapableSwitchType">
<xs:annotation> <xs:annotation>
<xs:documentation>The OpenFlow Capable Switch and its configurationpoints, logical <xs:documentation>The OpenFlow Capable Switch and its configurationpoints, logical

View File

@@ -2,7 +2,7 @@
<!DOCTYPE schema <!DOCTYPE schema
PUBLIC "-//W3C//DTD XMLSchema 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd" PUBLIC "-//W3C//DTD XMLSchema 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd"
[ [
<!ATTLIST schema <!ATTLIST schema
xmlns:ds CDATA #FIXED "http://www.w3.org/2000/09/xmldsig#"> xmlns:ds CDATA #FIXED "http://www.w3.org/2000/09/xmldsig#">
<!ENTITY dsig 'http://www.w3.org/2000/09/xmldsig#'> <!ENTITY dsig 'http://www.w3.org/2000/09/xmldsig#'>
<!ENTITY % p ''> <!ENTITY % p ''>
@@ -29,7 +29,7 @@
<schema xmlns="http://www.w3.org/2001/XMLSchema" <schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
targetNamespace="http://www.w3.org/2000/09/xmldsig#" targetNamespace="http://www.w3.org/2000/09/xmldsig#"
version="0.1" elementFormDefault="qualified"> version="0.1" elementFormDefault="qualified">
<!-- Basic Types Defined for Signatures --> <!-- Basic Types Defined for Signatures -->
@@ -42,16 +42,16 @@
<element name="Signature" type="ds:SignatureType"/> <element name="Signature" type="ds:SignatureType"/>
<complexType name="SignatureType"> <complexType name="SignatureType">
<sequence> <sequence>
<element ref="ds:SignedInfo"/> <element ref="ds:SignedInfo"/>
<element ref="ds:SignatureValue"/> <element ref="ds:SignatureValue"/>
<element ref="ds:KeyInfo" minOccurs="0"/> <element ref="ds:KeyInfo" minOccurs="0"/>
<element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/> <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
</sequence> </sequence>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
</complexType> </complexType>
<element name="SignatureValue" type="ds:SignatureValueType"/> <element name="SignatureValue" type="ds:SignatureValueType"/>
<complexType name="SignatureValueType"> <complexType name="SignatureValueType">
<simpleContent> <simpleContent>
<extension base="base64Binary"> <extension base="base64Binary">
@@ -64,21 +64,21 @@
<element name="SignedInfo" type="ds:SignedInfoType"/> <element name="SignedInfo" type="ds:SignedInfoType"/>
<complexType name="SignedInfoType"> <complexType name="SignedInfoType">
<sequence> <sequence>
<element ref="ds:CanonicalizationMethod"/> <element ref="ds:CanonicalizationMethod"/>
<element ref="ds:SignatureMethod"/> <element ref="ds:SignatureMethod"/>
<element ref="ds:Reference" maxOccurs="unbounded"/> <element ref="ds:Reference" maxOccurs="unbounded"/>
</sequence> </sequence>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
</complexType> </complexType>
<element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/> <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
<complexType name="CanonicalizationMethodType" mixed="true"> <complexType name="CanonicalizationMethodType" mixed="true">
<sequence> <sequence>
<any namespace="##any" minOccurs="0" maxOccurs="unbounded"/> <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) namespace --> <!-- (0,unbounded) elements from (1,1) namespace -->
</sequence> </sequence>
<attribute name="Algorithm" type="anyURI" use="required"/> <attribute name="Algorithm" type="anyURI" use="required"/>
</complexType> </complexType>
<element name="SignatureMethod" type="ds:SignatureMethodType"/> <element name="SignatureMethod" type="ds:SignatureMethodType"/>
@@ -88,48 +88,48 @@
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/> <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) external namespace --> <!-- (0,unbounded) elements from (1,1) external namespace -->
</sequence> </sequence>
<attribute name="Algorithm" type="anyURI" use="required"/> <attribute name="Algorithm" type="anyURI" use="required"/>
</complexType> </complexType>
<!-- Start Reference --> <!-- Start Reference -->
<element name="Reference" type="ds:ReferenceType"/> <element name="Reference" type="ds:ReferenceType"/>
<complexType name="ReferenceType"> <complexType name="ReferenceType">
<sequence> <sequence>
<element ref="ds:Transforms" minOccurs="0"/> <element ref="ds:Transforms" minOccurs="0"/>
<element ref="ds:DigestMethod"/> <element ref="ds:DigestMethod"/>
<element ref="ds:DigestValue"/> <element ref="ds:DigestValue"/>
</sequence> </sequence>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
<attribute name="URI" type="anyURI" use="optional"/> <attribute name="URI" type="anyURI" use="optional"/>
<attribute name="Type" type="anyURI" use="optional"/> <attribute name="Type" type="anyURI" use="optional"/>
</complexType> </complexType>
<element name="Transforms" type="ds:TransformsType"/> <element name="Transforms" type="ds:TransformsType"/>
<complexType name="TransformsType"> <complexType name="TransformsType">
<sequence> <sequence>
<element ref="ds:Transform" maxOccurs="unbounded"/> <element ref="ds:Transform" maxOccurs="unbounded"/>
</sequence> </sequence>
</complexType> </complexType>
<element name="Transform" type="ds:TransformType"/> <element name="Transform" type="ds:TransformType"/>
<complexType name="TransformType" mixed="true"> <complexType name="TransformType" mixed="true">
<choice minOccurs="0" maxOccurs="unbounded"> <choice minOccurs="0" maxOccurs="unbounded">
<any namespace="##other" processContents="lax"/> <any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (0,unbounded) namespaces --> <!-- (1,1) elements from (0,unbounded) namespaces -->
<element name="XPath" type="string"/> <element name="XPath" type="string"/>
</choice> </choice>
<attribute name="Algorithm" type="anyURI" use="required"/> <attribute name="Algorithm" type="anyURI" use="required"/>
</complexType> </complexType>
<!-- End Reference --> <!-- End Reference -->
<element name="DigestMethod" type="ds:DigestMethodType"/> <element name="DigestMethod" type="ds:DigestMethodType"/>
<complexType name="DigestMethodType" mixed="true"> <complexType name="DigestMethodType" mixed="true">
<sequence> <sequence>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence> </sequence>
<attribute name="Algorithm" type="anyURI" use="required"/> <attribute name="Algorithm" type="anyURI" use="required"/>
</complexType> </complexType>
<element name="DigestValue" type="ds:DigestValueType"/> <element name="DigestValue" type="ds:DigestValueType"/>
@@ -141,26 +141,26 @@
<!-- Start KeyInfo --> <!-- Start KeyInfo -->
<element name="KeyInfo" type="ds:KeyInfoType"/> <element name="KeyInfo" type="ds:KeyInfoType"/>
<complexType name="KeyInfoType" mixed="true"> <complexType name="KeyInfoType" mixed="true">
<choice maxOccurs="unbounded"> <choice maxOccurs="unbounded">
<element ref="ds:KeyName"/> <element ref="ds:KeyName"/>
<element ref="ds:KeyValue"/> <element ref="ds:KeyValue"/>
<element ref="ds:RetrievalMethod"/> <element ref="ds:RetrievalMethod"/>
<element ref="ds:X509Data"/> <element ref="ds:X509Data"/>
<element ref="ds:PGPData"/> <element ref="ds:PGPData"/>
<element ref="ds:SPKIData"/> <element ref="ds:SPKIData"/>
<element ref="ds:MgmtData"/> <element ref="ds:MgmtData"/>
<any processContents="lax" namespace="##other"/> <any processContents="lax" namespace="##other"/>
<!-- (1,1) elements from (0,unbounded) namespaces --> <!-- (1,1) elements from (0,unbounded) namespaces -->
</choice> </choice>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
</complexType> </complexType>
<element name="KeyName" type="string"/> <element name="KeyName" type="string"/>
<element name="MgmtData" type="string"/> <element name="MgmtData" type="string"/>
<element name="KeyValue" type="ds:KeyValueType"/> <element name="KeyValue" type="ds:KeyValueType"/>
<complexType name="KeyValueType" mixed="false"> <complexType name="KeyValueType" mixed="false">
<choice> <choice>
<element ref="ds:DSAKeyValue"/> <element ref="ds:DSAKeyValue"/>
@@ -169,18 +169,18 @@
</choice> </choice>
</complexType> </complexType>
<element name="RetrievalMethod" type="ds:RetrievalMethodType"/> <element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
<complexType name="RetrievalMethodType"> <complexType name="RetrievalMethodType">
<sequence> <sequence>
<element ref="ds:Transforms" minOccurs="0"/> <element ref="ds:Transforms" minOccurs="0"/>
</sequence> </sequence>
<attribute name="URI" type="anyURI"/> <attribute name="URI" type="anyURI"/>
<attribute name="Type" type="anyURI" use="optional"/> <attribute name="Type" type="anyURI" use="optional"/>
</complexType> </complexType>
<!-- Start X509Data --> <!-- Start X509Data -->
<element name="X509Data" type="ds:X509DataType"/> <element name="X509Data" type="ds:X509DataType"/>
<complexType name="X509DataType"> <complexType name="X509DataType">
<sequence maxOccurs="unbounded"> <sequence maxOccurs="unbounded">
<choice> <choice>
@@ -194,10 +194,10 @@
</sequence> </sequence>
</complexType> </complexType>
<complexType name="X509IssuerSerialType"> <complexType name="X509IssuerSerialType">
<sequence> <sequence>
<element name="X509IssuerName" type="string"/> <element name="X509IssuerName" type="string"/>
<element name="X509SerialNumber" type="integer"/> <element name="X509SerialNumber" type="integer"/>
</sequence> </sequence>
</complexType> </complexType>
@@ -205,17 +205,17 @@
<!-- Begin PGPData --> <!-- Begin PGPData -->
<element name="PGPData" type="ds:PGPDataType"/> <element name="PGPData" type="ds:PGPDataType"/>
<complexType name="PGPDataType"> <complexType name="PGPDataType">
<choice> <choice>
<sequence> <sequence>
<element name="PGPKeyID" type="base64Binary"/> <element name="PGPKeyID" type="base64Binary"/>
<element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/> <element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0" <any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/> maxOccurs="unbounded"/>
</sequence> </sequence>
<sequence> <sequence>
<element name="PGPKeyPacket" type="base64Binary"/> <element name="PGPKeyPacket" type="base64Binary"/>
<any namespace="##other" processContents="lax" minOccurs="0" <any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/> maxOccurs="unbounded"/>
</sequence> </sequence>
@@ -226,13 +226,13 @@
<!-- Begin SPKIData --> <!-- Begin SPKIData -->
<element name="SPKIData" type="ds:SPKIDataType"/> <element name="SPKIData" type="ds:SPKIDataType"/>
<complexType name="SPKIDataType"> <complexType name="SPKIDataType">
<sequence maxOccurs="unbounded"> <sequence maxOccurs="unbounded">
<element name="SPKISexp" type="base64Binary"/> <element name="SPKISexp" type="base64Binary"/>
<any namespace="##other" processContents="lax" minOccurs="0"/> <any namespace="##other" processContents="lax" minOccurs="0"/>
</sequence> </sequence>
</complexType> </complexType>
<!-- End SPKIData --> <!-- End SPKIData -->
@@ -240,40 +240,40 @@
<!-- Start Object (Manifest, SignatureProperty) --> <!-- Start Object (Manifest, SignatureProperty) -->
<element name="Object" type="ds:ObjectType"/> <element name="Object" type="ds:ObjectType"/>
<complexType name="ObjectType" mixed="true"> <complexType name="ObjectType" mixed="true">
<sequence minOccurs="0" maxOccurs="unbounded"> <sequence minOccurs="0" maxOccurs="unbounded">
<any namespace="##any" processContents="lax"/> <any namespace="##any" processContents="lax"/>
</sequence> </sequence>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
<attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet --> <attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet -->
<attribute name="Encoding" type="anyURI" use="optional"/> <attribute name="Encoding" type="anyURI" use="optional"/>
</complexType> </complexType>
<element name="Manifest" type="ds:ManifestType"/> <element name="Manifest" type="ds:ManifestType"/>
<complexType name="ManifestType"> <complexType name="ManifestType">
<sequence> <sequence>
<element ref="ds:Reference" maxOccurs="unbounded"/> <element ref="ds:Reference" maxOccurs="unbounded"/>
</sequence> </sequence>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
</complexType> </complexType>
<element name="SignatureProperties" type="ds:SignaturePropertiesType"/> <element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
<complexType name="SignaturePropertiesType"> <complexType name="SignaturePropertiesType">
<sequence> <sequence>
<element ref="ds:SignatureProperty" maxOccurs="unbounded"/> <element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
</sequence> </sequence>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
</complexType> </complexType>
<element name="SignatureProperty" type="ds:SignaturePropertyType"/> <element name="SignatureProperty" type="ds:SignaturePropertyType"/>
<complexType name="SignaturePropertyType" mixed="true"> <complexType name="SignaturePropertyType" mixed="true">
<choice maxOccurs="unbounded"> <choice maxOccurs="unbounded">
<any namespace="##other" processContents="lax"/> <any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (1,unbounded) namespaces --> <!-- (1,1) elements from (1,unbounded) namespaces -->
</choice> </choice>
<attribute name="Target" type="anyURI" use="required"/> <attribute name="Target" type="anyURI" use="required"/>
<attribute name="Id" type="ID" use="optional"/> <attribute name="Id" type="ID" use="optional"/>
</complexType> </complexType>
<!-- End Object (Manifest, SignatureProperty) --> <!-- End Object (Manifest, SignatureProperty) -->
@@ -306,10 +306,10 @@
<element name="RSAKeyValue" type="ds:RSAKeyValueType"/> <element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
<complexType name="RSAKeyValueType"> <complexType name="RSAKeyValueType">
<sequence> <sequence>
<element name="Modulus" type="ds:CryptoBinary"/> <element name="Modulus" type="ds:CryptoBinary"/>
<element name="Exponent" type="ds:CryptoBinary"/> <element name="Exponent" type="ds:CryptoBinary"/>
</sequence> </sequence>
</complexType> </complexType>
<!-- End KeyValue Element-types --> <!-- End KeyValue Element-types -->

View File

@@ -101,7 +101,7 @@ OFPP_FLOOD = 0xfffffffb # All physical ports except input port and
OFPP_ALL = 0xfffffffc # All physical ports except input port. OFPP_ALL = 0xfffffffc # All physical ports except input port.
OFPP_CONTROLLER = 0xfffffffd # Send to controller. OFPP_CONTROLLER = 0xfffffffd # Send to controller.
OFPP_LOCAL = 0xfffffffe # Local openflow "port". OFPP_LOCAL = 0xfffffffe # Local openflow "port".
OFPP_ANY = 0xffffffff # Not associated with a physical port. OFPP_ANY = 0xffffffff # Not associated with a physical port.
# All ones is used to indicate all queues in a port (for stats retrieval). # All ones is used to indicate all queues in a port (for stats retrieval).
OFPQ_ALL = 0xffffffff OFPQ_ALL = 0xffffffff

View File

@@ -106,7 +106,7 @@ OFPP_FLOOD = 0xfffffffb # All physical ports except input port and
OFPP_ALL = 0xfffffffc # All physical ports except input port. OFPP_ALL = 0xfffffffc # All physical ports except input port.
OFPP_CONTROLLER = 0xfffffffd # Send to controller. OFPP_CONTROLLER = 0xfffffffd # Send to controller.
OFPP_LOCAL = 0xfffffffe # Local openflow "port". OFPP_LOCAL = 0xfffffffe # Local openflow "port".
OFPP_ANY = 0xffffffff # Not associated with a physical port. OFPP_ANY = 0xffffffff # Not associated with a physical port.
# All ones is used to indicate all queues in a port (for stats retrieval). # All ones is used to indicate all queues in a port (for stats retrieval).
OFPQ_ALL = 0xffffffff OFPQ_ALL = 0xffffffff

View File

@@ -206,7 +206,7 @@ arg_check() {
if [ $# -ne 0 ]; then if [ $# -ne 0 ]; then
ARGLIST=$* ARGLIST=$*
else else
ARGLIST=`find . -type f -name "*$TEST_SUFFIX"` ARGLIST=`find . -type f -name "*$TEST_SUFFIX"`
fi fi
for arg in $ARGLIST; do for arg in $ARGLIST; do

View File

@@ -1,5 +1,5 @@
generate: generate:
rebar get-deps rebar get-deps
rebar compile rebar compile
erl -pa ebin deps/*/ebin -s x x -s init stop erl -pa ebin deps/*/ebin -s x x -s init stop

View File

@@ -28,9 +28,9 @@ x() ->
skip, skip,
#ofp_packet_out{ #ofp_packet_out{
buffer_id = ?OFP_NO_BUFFER,in_port = controller, buffer_id = ?OFP_NO_BUFFER,in_port = controller,
actions = actions =
[#ofp_action_output{port = all,max_len = 65535}], [#ofp_action_output{port = all,max_len = 65535}],
data = data =
<<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0, <<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0,
0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2, 0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2,
8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0, 8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0,
@@ -63,11 +63,11 @@ x() ->
features_request, features_request,
#ofp_switch_features{ % features_reply #ofp_switch_features{ % features_reply
datapath_id = 16#ff12345678,n_buffers = 0,n_tables = 255, datapath_id = 16#ff12345678,n_buffers = 0,n_tables = 255,
capabilities = capabilities =
[arp_match_ip,ip_reasm,stp,flow_stats], [arp_match_ip,ip_reasm,stp,flow_stats],
actions = actions =
[enqueue,set_nw_src,set_vlan_vid,output], [enqueue,set_nw_src,set_vlan_vid,output],
ports = ports =
[#ofp_phy_port{ [#ofp_phy_port{
port_no = 7,hw_addr = <<"\362\v\244\320?p">>, port_no = 7,hw_addr = <<"\362\v\244\320?p">>,
name = <<"Port7">>, name = <<"Port7">>,

View File

@@ -191,9 +191,9 @@ x() ->
dp_desc = <<"dp">>}, dp_desc = <<"dp">>},
#ofp_packet_out{ #ofp_packet_out{
buffer_id = no_buffer,in_port = controller, buffer_id = no_buffer,in_port = controller,
actions = actions =
[#ofp_action_output{port = all,max_len = no_buffer}], [#ofp_action_output{port = all,max_len = no_buffer}],
data = data =
<<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0, <<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0,
0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2, 0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2,
8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0, 8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0,
@@ -302,9 +302,9 @@ x() ->
#ofp_features_reply{ #ofp_features_reply{
datapath_mac = <<8,96,110,127,116,231>>, datapath_mac = <<8,96,110,127,116,231>>,
datapath_id = 0,n_buffers = 0,n_tables = 255, datapath_id = 0,n_buffers = 0,n_tables = 255,
capabilities = capabilities =
[flow_stats,table_stats,port_stats,group_stats,queue_stats], [flow_stats,table_stats,port_stats,group_stats,queue_stats],
ports = ports =
[#ofp_port{ [#ofp_port{
port_no = 7,hw_addr = <<"\362\v\244\320?p">>, port_no = 7,hw_addr = <<"\362\v\244\320?p">>,
name = <<"Port7">>, name = <<"Port7">>,
@@ -425,10 +425,10 @@ x() ->
#ofp_group_mod{ #ofp_group_mod{
command = add,type = all,group_id = 1, command = add,type = all,group_id = 1,
buckets = buckets =
[#ofp_bucket{ [#ofp_bucket{
weight = 1,watch_port = 1,watch_group = 1, weight = 1,watch_port = 1,watch_group = 1,
actions = actions =
[#ofp_action_output{port = 2,max_len = no_buffer}]}]}, [#ofp_action_output{port = 2,max_len = no_buffer}]}]},
#ofp_port_mod{port_no = 1, hw_addr = <<0,17,0,0,17,17>>, #ofp_port_mod{port_no = 1, hw_addr = <<0,17,0,0,17,17>>,
config = [],mask = [], advertise = [fiber]}, config = [],mask = [], advertise = [fiber]},
@@ -8610,7 +8610,7 @@ x() ->
#ofp_port_stats_request{flags = [],port_no = any}, #ofp_port_stats_request{flags = [],port_no = any},
#ofp_port_stats_reply{ #ofp_port_stats_reply{
flags = [], flags = [],
stats = stats =
[#ofp_port_stats{ [#ofp_port_stats{
port_no = 7,rx_packets = 0,tx_packets = 4,rx_bytes = 0, port_no = 7,rx_packets = 0,tx_packets = 4,rx_bytes = 0,
tx_bytes = 336,rx_dropped = 0,tx_dropped = 0, tx_bytes = 336,rx_dropped = 0,tx_dropped = 0,
@@ -8637,13 +8637,13 @@ x() ->
#ofp_group_desc_stats_request{}, #ofp_group_desc_stats_request{},
#ofp_group_desc_stats_reply{ #ofp_group_desc_stats_reply{
flags = [], flags = [],
stats = stats =
[#ofp_group_desc_stats{ [#ofp_group_desc_stats{
type = all,group_id = 1, type = all,group_id = 1,
buckets = buckets =
[#ofp_bucket{ [#ofp_bucket{
weight = 1,watch_port = 1,watch_group = 1, weight = 1,watch_port = 1,watch_group = 1,
actions = actions =
[#ofp_action_output{ [#ofp_action_output{
port = 2, max_len = no_buffer}]}]}]}, port = 2, max_len = no_buffer}]}]}]},
#ofp_queue_get_config_request{port = any}, #ofp_queue_get_config_request{port = any},
@@ -8665,7 +8665,7 @@ x() ->
queue_id = all}, queue_id = all},
#ofp_queue_stats_reply{ #ofp_queue_stats_reply{
flags = [], flags = [],
stats = stats =
[#ofp_queue_stats{ [#ofp_queue_stats{
port_no = 7,queue_id = 1,tx_bytes = 0,tx_packets = 0, port_no = 7,queue_id = 1,tx_bytes = 0,tx_packets = 0,
tx_errors = 0}, tx_errors = 0},
@@ -8693,9 +8693,9 @@ x() ->
priority = 65535,reason = idle_timeout,table_id = 0, priority = 65535,reason = idle_timeout,table_id = 0,
duration_sec = 3,duration_nsec = 48825000,idle_timeout = 3, duration_sec = 3,duration_nsec = 48825000,idle_timeout = 3,
hard_timeout = 0,packet_count = 1,byte_count = 86, hard_timeout = 0,packet_count = 1,byte_count = 86,
match = match =
#ofp_match{ #ofp_match{
fields = fields =
[#ofp_field{ [#ofp_field{
class = openflow_basic,name = eth_dst, class = openflow_basic,name = eth_dst,
has_mask = false, has_mask = false,

View File

@@ -226,9 +226,9 @@ x() ->
dp_desc = <<"dp">>}, dp_desc = <<"dp">>},
#ofp_packet_out{ #ofp_packet_out{
buffer_id = no_buffer,in_port = controller, buffer_id = no_buffer,in_port = controller,
actions = actions =
[#ofp_action_output{port = all,max_len = no_buffer}], [#ofp_action_output{port = all,max_len = no_buffer}],
data = data =
<<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0, <<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0,
0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2, 0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2,
8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0, 8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0,
@@ -361,7 +361,7 @@ x() ->
datapath_mac = <<8,96,110,127,116,231>>, datapath_mac = <<8,96,110,127,116,231>>,
datapath_id = 0,n_buffers = 0,n_tables = 255, datapath_id = 0,n_buffers = 0,n_tables = 255,
auxiliary_id = 99, auxiliary_id = 99,
capabilities = capabilities =
[flow_stats,table_stats,port_stats,group_stats,queue_stats]}, [flow_stats,table_stats,port_stats,group_stats,queue_stats]},
#ofp_set_config{flags = [],miss_send_len = 128}, #ofp_set_config{flags = [],miss_send_len = 128},
#ofp_get_config_request{}, #ofp_get_config_request{},
@@ -501,10 +501,10 @@ x() ->
#ofp_group_mod{ #ofp_group_mod{
command = add,type = all,group_id = 1, command = add,type = all,group_id = 1,
buckets = buckets =
[#ofp_bucket{ [#ofp_bucket{
weight = 1,watch_port = 1,watch_group = 1, weight = 1,watch_port = 1,watch_group = 1,
actions = actions =
[#ofp_action_output{port = 2,max_len = no_buffer}]}]}, [#ofp_action_output{port = 2,max_len = no_buffer}]}]},
#ofp_port_mod{port_no = 1, hw_addr = <<0,17,0,0,17,17>>, #ofp_port_mod{port_no = 1, hw_addr = <<0,17,0,0,17,17>>,
config = [],mask = [], advertise = [fiber]}, config = [],mask = [], advertise = [fiber]},
@@ -532,7 +532,7 @@ x() ->
#ofp_port_stats_request{flags = [],port_no = any}, #ofp_port_stats_request{flags = [],port_no = any},
#ofp_port_stats_reply{ #ofp_port_stats_reply{
flags = [], flags = [],
body = body =
[#ofp_port_stats{ [#ofp_port_stats{
port_no = 7,rx_packets = 0,tx_packets = 4,rx_bytes = 0, port_no = 7,rx_packets = 0,tx_packets = 4,rx_bytes = 0,
tx_bytes = 336,rx_dropped = 0,tx_dropped = 0, tx_bytes = 336,rx_dropped = 0,tx_dropped = 0,
@@ -559,13 +559,13 @@ x() ->
#ofp_group_desc_request{}, #ofp_group_desc_request{},
#ofp_group_desc_reply{ #ofp_group_desc_reply{
flags = [], flags = [],
body = body =
[#ofp_group_desc_stats{ [#ofp_group_desc_stats{
type = all,group_id = 1, type = all,group_id = 1,
buckets = buckets =
[#ofp_bucket{ [#ofp_bucket{
weight = 1,watch_port = 1,watch_group = 1, weight = 1,watch_port = 1,watch_group = 1,
actions = actions =
[#ofp_action_output{ [#ofp_action_output{
port = 2, max_len = no_buffer}]}]}]}, port = 2, max_len = no_buffer}]}]}]},
#ofp_queue_get_config_request{port = any}, #ofp_queue_get_config_request{port = any},
@@ -599,7 +599,7 @@ x() ->
queue_id = all}, queue_id = all},
#ofp_queue_stats_reply{ #ofp_queue_stats_reply{
flags = [], flags = [],
body = body =
[#ofp_queue_stats{ [#ofp_queue_stats{
port_no = 7,queue_id = 1,tx_bytes = 0,tx_packets = 0, port_no = 7,queue_id = 1,tx_bytes = 0,tx_packets = 0,
tx_errors = 0}, tx_errors = 0},
@@ -627,9 +627,9 @@ x() ->
priority = 65535,reason = idle_timeout,table_id = 0, priority = 65535,reason = idle_timeout,table_id = 0,
duration_sec = 3,duration_nsec = 48825000,idle_timeout = 3, duration_sec = 3,duration_nsec = 48825000,idle_timeout = 3,
hard_timeout = 0,packet_count = 1,byte_count = 86, hard_timeout = 0,packet_count = 1,byte_count = 86,
match = match =
#ofp_match{ #ofp_match{
fields = fields =
[#ofp_field{ [#ofp_field{
class = openflow_basic,name = eth_dst, class = openflow_basic,name = eth_dst,
has_mask = false, has_mask = false,
@@ -693,21 +693,21 @@ x() ->
#ofp_meter_config_request{meter_id = all}, #ofp_meter_config_request{meter_id = all},
#ofp_meter_config_reply{ #ofp_meter_config_reply{
body = body =
[#ofp_meter_config{ [#ofp_meter_config{
flags = [pktps,burst,stats], flags = [pktps,burst,stats],
meter_id = 100, meter_id = 100,
bands = bands =
[#ofp_meter_band_drop{ [#ofp_meter_band_drop{
type = drop,rate = 1000,burst_size = 10}]}]}, type = drop,rate = 1000,burst_size = 10}]}]},
#ofp_meter_stats_request{meter_id = all}, #ofp_meter_stats_request{meter_id = all},
#ofp_meter_stats_reply{ #ofp_meter_stats_reply{
body = body =
[#ofp_meter_stats{ [#ofp_meter_stats{
meter_id = 100,flow_count = 0,packet_in_count = 0, meter_id = 100,flow_count = 0,packet_in_count = 0,
byte_in_count = 0,duration_sec = 0,duration_nsec = 480000, byte_in_count = 0,duration_sec = 0,duration_nsec = 480000,
band_stats = band_stats =
[#ofp_meter_band_stats{ [#ofp_meter_band_stats{
packet_band_count = 0,byte_band_count = 0}]}]}, packet_band_count = 0,byte_band_count = 0}]}]},
@@ -2603,12 +2603,12 @@ x() ->
#ofp_group_stats_request{flags = [],group_id = all}, #ofp_group_stats_request{flags = [],group_id = all},
#ofp_group_stats_reply{ #ofp_group_stats_reply{
flags = [], flags = [],
body = body =
[#ofp_group_stats{ [#ofp_group_stats{
group_id = 1,ref_count = 2,packet_count = 123, group_id = 1,ref_count = 2,packet_count = 123,
byte_count = 12345,duration_sec = 9, byte_count = 12345,duration_sec = 9,
duration_nsec = 609036000, duration_nsec = 609036000,
bucket_stats = bucket_stats =
[#ofp_bucket_counter{ [#ofp_bucket_counter{
packet_count = 234,byte_count = 2345}]}]}, packet_count = 234,byte_count = 2345}]}]},
#ofp_packet_in{ #ofp_packet_in{

View File

@@ -216,9 +216,9 @@ x() ->
dp_desc = <<"dp">>}, dp_desc = <<"dp">>},
#ofp_packet_out{ #ofp_packet_out{
buffer_id = no_buffer,in_port = controller, buffer_id = no_buffer,in_port = controller,
actions = actions =
[#ofp_action_output{port = all,max_len = no_buffer}], [#ofp_action_output{port = all,max_len = no_buffer}],
data = data =
<<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0, <<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0,
0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2, 0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2,
8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0, 8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0,
@@ -350,7 +350,7 @@ x() ->
datapath_mac = <<8,96,110,127,116,231>>, datapath_mac = <<8,96,110,127,116,231>>,
datapath_id = 0,n_buffers = 0,n_tables = 255, datapath_id = 0,n_buffers = 0,n_tables = 255,
auxiliary_id = 99, auxiliary_id = 99,
capabilities = capabilities =
[flow_stats,table_stats,port_stats,group_stats,queue_stats]}, [flow_stats,table_stats,port_stats,group_stats,queue_stats]},
#ofp_set_config{flags = [],miss_send_len = 128}, #ofp_set_config{flags = [],miss_send_len = 128},
#ofp_get_config_request{}, #ofp_get_config_request{},
@@ -488,14 +488,14 @@ x() ->
#ofp_group_mod{ #ofp_group_mod{
command = add,type = all,group_id = 1, command = add,type = all,group_id = 1,
buckets = buckets =
[#ofp_bucket{ [#ofp_bucket{
weight = 1,watch_port = 1,watch_group = 1, weight = 1,watch_port = 1,watch_group = 1,
actions = actions =
[#ofp_action_output{port = 2,max_len = no_buffer}]}]}, [#ofp_action_output{port = 2,max_len = no_buffer}]}]},
#ofp_port_mod{port_no = 1, hw_addr = <<0,17,0,0,17,17>>, #ofp_port_mod{port_no = 1, hw_addr = <<0,17,0,0,17,17>>,
config = [],mask = [], config = [],mask = [],
properties = properties =
[#ofp_port_mod_prop_ethernet{advertise = [fiber]}, [#ofp_port_mod_prop_ethernet{advertise = [fiber]},
#ofp_port_mod_prop_optical{ #ofp_port_mod_prop_optical{
configure = [rx_tune, tx_tune], configure = [rx_tune, tx_tune],
@@ -558,12 +558,12 @@ x() ->
#ofp_port_stats_request{flags = [],port_no = any}, #ofp_port_stats_request{flags = [],port_no = any},
#ofp_port_stats_reply{ #ofp_port_stats_reply{
flags = [], flags = [],
body = body =
[#ofp_port_stats{ [#ofp_port_stats{
port_no = 7,rx_packets = 0,tx_packets = 4,rx_bytes = 0, port_no = 7,rx_packets = 0,tx_packets = 4,rx_bytes = 0,
tx_bytes = 336,rx_dropped = 0,tx_dropped = 0, tx_bytes = 336,rx_dropped = 0,tx_dropped = 0,
rx_errors = 0, tx_errors = 0, rx_errors = 0, tx_errors = 0,
properties = properties =
[#ofp_port_stats_prop_ethernet{ [#ofp_port_stats_prop_ethernet{
rx_frame_err = 0,rx_over_err = 0, rx_frame_err = 0,rx_over_err = 0,
rx_crc_err = 0,collisions = 0}, rx_crc_err = 0,collisions = 0},
@@ -595,7 +595,7 @@ x() ->
port_no = 6,rx_packets = 4,tx_packets = 4,rx_bytes = 336, port_no = 6,rx_packets = 4,tx_packets = 4,rx_bytes = 336,
tx_bytes = 336,rx_dropped = 0,tx_dropped = 0, tx_bytes = 336,rx_dropped = 0,tx_dropped = 0,
rx_errors = 0, tx_errors = 0, rx_errors = 0, tx_errors = 0,
properties = properties =
[#ofp_port_stats_prop_ethernet{ [#ofp_port_stats_prop_ethernet{
rx_frame_err = 0,rx_over_err = 0, rx_frame_err = 0,rx_over_err = 0,
rx_crc_err = 0,collisions = 0}]}]}, rx_crc_err = 0,collisions = 0}]}]},
@@ -613,20 +613,20 @@ x() ->
#ofp_group_desc_request{}, #ofp_group_desc_request{},
#ofp_group_desc_reply{ #ofp_group_desc_reply{
flags = [], flags = [],
body = body =
[#ofp_group_desc_stats{ [#ofp_group_desc_stats{
type = all,group_id = 1, type = all,group_id = 1,
buckets = buckets =
[#ofp_bucket{ [#ofp_bucket{
weight = 1,watch_port = 1,watch_group = 1, weight = 1,watch_port = 1,watch_group = 1,
actions = actions =
[#ofp_action_output{ [#ofp_action_output{
port = 2, max_len = no_buffer}]}]}]}, port = 2, max_len = no_buffer}]}]}]},
#ofp_queue_stats_request{flags = [],port_no = any, #ofp_queue_stats_request{flags = [],port_no = any,
queue_id = all}, queue_id = all},
#ofp_queue_stats_reply{ #ofp_queue_stats_reply{
flags = [], flags = [],
body = body =
[#ofp_queue_stats{ [#ofp_queue_stats{
port_no = 7,queue_id = 1,tx_bytes = 0,tx_packets = 0, port_no = 7,queue_id = 1,tx_bytes = 0,tx_packets = 0,
tx_errors = 0, tx_errors = 0,
@@ -691,9 +691,9 @@ x() ->
priority = 65535,reason = idle_timeout,table_id = 0, priority = 65535,reason = idle_timeout,table_id = 0,
duration_sec = 3,duration_nsec = 48825000,idle_timeout = 3, duration_sec = 3,duration_nsec = 48825000,idle_timeout = 3,
hard_timeout = 0,packet_count = 1,byte_count = 86, hard_timeout = 0,packet_count = 1,byte_count = 86,
match = match =
#ofp_match{ #ofp_match{
fields = fields =
[#ofp_field{ [#ofp_field{
class = openflow_basic,name = eth_dst, class = openflow_basic,name = eth_dst,
has_mask = false, has_mask = false,
@@ -707,42 +707,42 @@ x() ->
#ofp_get_async_request{}, #ofp_get_async_request{},
#ofp_get_async_reply{ #ofp_get_async_reply{
properties = properties =
[#ofp_async_config_prop_reasons{ [#ofp_async_config_prop_reasons{
type = packet_in_slave, type = packet_in_slave,
mask = [table_miss, apply_action]}, mask = [table_miss, apply_action]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = packet_in_master, type = packet_in_master,
mask = [table_miss, apply_action]}, mask = [table_miss, apply_action]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = port_status_slave, type = port_status_slave,
mask = [add, delete]}, mask = [add, delete]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = port_status_master, type = port_status_master,
mask = [add, delete]}, mask = [add, delete]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = flow_removed_slave, type = flow_removed_slave,
mask = [idle_timeout, hard_timeout]}, mask = [idle_timeout, hard_timeout]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = flow_removed_master, type = flow_removed_master,
mask = [idle_timeout, hard_timeout]}, mask = [idle_timeout, hard_timeout]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = role_status_slave, type = role_status_slave,
mask = [master_request, config]}, mask = [master_request, config]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = role_status_master, type = role_status_master,
mask = [master_request, config]}, mask = [master_request, config]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = table_status_slave, type = table_status_slave,
mask = [vacancy_down, vacancy_up]}, mask = [vacancy_down, vacancy_up]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = table_status_master, type = table_status_master,
mask = [vacancy_down, vacancy_up]}, mask = [vacancy_down, vacancy_up]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = requestforward_slave, type = requestforward_slave,
mask = [group_mod, meter_mod]}, mask = [group_mod, meter_mod]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = requestforward_master, type = requestforward_master,
mask = [group_mod, meter_mod]}, mask = [group_mod, meter_mod]},
#ofp_async_config_prop_experimenter{ #ofp_async_config_prop_experimenter{
type = experimenter_slave, type = experimenter_slave,
experimenter = 101, experimenter = 101,
@@ -760,42 +760,42 @@ x() ->
data = <<1:32, 2:32>>}]}, data = <<1:32, 2:32>>}]},
#ofp_set_async{ #ofp_set_async{
properties = properties =
[#ofp_async_config_prop_reasons{ [#ofp_async_config_prop_reasons{
type = packet_in_slave, type = packet_in_slave,
mask = [table_miss, apply_action]}, mask = [table_miss, apply_action]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = packet_in_master, type = packet_in_master,
mask = [table_miss, apply_action]}, mask = [table_miss, apply_action]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = port_status_slave, type = port_status_slave,
mask = [add, delete]}, mask = [add, delete]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = port_status_master, type = port_status_master,
mask = [add, delete]}, mask = [add, delete]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = flow_removed_slave, type = flow_removed_slave,
mask = [idle_timeout, hard_timeout]}, mask = [idle_timeout, hard_timeout]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = flow_removed_master, type = flow_removed_master,
mask = [idle_timeout, hard_timeout]}, mask = [idle_timeout, hard_timeout]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = role_status_slave, type = role_status_slave,
mask = [master_request, config]}, mask = [master_request, config]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = role_status_master, type = role_status_master,
mask = [master_request, config]}, mask = [master_request, config]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = table_status_slave, type = table_status_slave,
mask = [vacancy_down, vacancy_up]}, mask = [vacancy_down, vacancy_up]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = table_status_master, type = table_status_master,
mask = [vacancy_down, vacancy_up]}, mask = [vacancy_down, vacancy_up]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = requestforward_slave, type = requestforward_slave,
mask = [group_mod, meter_mod]}, mask = [group_mod, meter_mod]},
#ofp_async_config_prop_reasons{ #ofp_async_config_prop_reasons{
type = requestforward_master, type = requestforward_master,
mask = [group_mod, meter_mod]}, mask = [group_mod, meter_mod]},
#ofp_async_config_prop_experimenter{ #ofp_async_config_prop_experimenter{
type = experimenter_slave, type = experimenter_slave,
experimenter = 101, experimenter = 101,
@@ -846,21 +846,21 @@ x() ->
#ofp_meter_config_request{meter_id = all}, #ofp_meter_config_request{meter_id = all},
#ofp_meter_config_reply{ #ofp_meter_config_reply{
body = body =
[#ofp_meter_config{ [#ofp_meter_config{
flags = [pktps,burst,stats], flags = [pktps,burst,stats],
meter_id = 100, meter_id = 100,
bands = bands =
[#ofp_meter_band_drop{ [#ofp_meter_band_drop{
type = drop,rate = 1000,burst_size = 10}]}]}, type = drop,rate = 1000,burst_size = 10}]}]},
#ofp_meter_stats_request{meter_id = all}, #ofp_meter_stats_request{meter_id = all},
#ofp_meter_stats_reply{ #ofp_meter_stats_reply{
body = body =
[#ofp_meter_stats{ [#ofp_meter_stats{
meter_id = 100,flow_count = 0,packet_in_count = 0, meter_id = 100,flow_count = 0,packet_in_count = 0,
byte_in_count = 0,duration_sec = 0,duration_nsec = 480000, byte_in_count = 0,duration_sec = 0,duration_nsec = 480000,
band_stats = band_stats =
[#ofp_meter_band_stats{ [#ofp_meter_band_stats{
packet_band_count = 0,byte_band_count = 0}]}]}, packet_band_count = 0,byte_band_count = 0}]}]},
@@ -2782,12 +2782,12 @@ x() ->
#ofp_group_stats_request{flags = [],group_id = all}, #ofp_group_stats_request{flags = [],group_id = all},
#ofp_group_stats_reply{ #ofp_group_stats_reply{
flags = [], flags = [],
body = body =
[#ofp_group_stats{ [#ofp_group_stats{
group_id = 1,ref_count = 2,packet_count = 123, group_id = 1,ref_count = 2,packet_count = 123,
byte_count = 12345,duration_sec = 9, byte_count = 12345,duration_sec = 9,
duration_nsec = 609036000, duration_nsec = 609036000,
bucket_stats = bucket_stats =
[#ofp_bucket_counter{ [#ofp_bucket_counter{
packet_count = 234,byte_count = 2345}]}]}, packet_count = 234,byte_count = 2345}]}]},
#ofp_packet_in{ #ofp_packet_in{
@@ -3006,17 +3006,17 @@ x() ->
version = 5, version = 5,
type = group_mod, type = group_mod,
xid = 0, xid = 0,
body = body =
#ofp_group_mod{ #ofp_group_mod{
command = add, command = add,
type = all, type = all,
group_id = 1, group_id = 1,
buckets = buckets =
[#ofp_bucket{ [#ofp_bucket{
weight = 1, weight = 1,
watch_port = 1, watch_port = 1,
watch_group = 1, watch_group = 1,
actions = actions =
[#ofp_action_output{ [#ofp_action_output{
port = 2, port = 2,
max_len = no_buffer}]}]}}} max_len = no_buffer}]}]}}}

View File

@@ -29,7 +29,7 @@ NOMAN=
all: generate all: generate
generate: ${PROG} generate: ${PROG}
${_MKMSG} "generate packet_data" ${_MKMSG} "generate packet_data"
cd ${.CURDIR} && ${.OBJDIR}/${PROG} cd ${.CURDIR} && ${.OBJDIR}/${PROG}
.include <bsd.prog.mk> .include <bsd.prog.mk>

View File

@@ -30,10 +30,10 @@ NOMAN=
all: generate all: generate
gen: gen.c gen: gen.c
${CC} $^ ${CPPFLAGS} ${LDFLAGS} -o $@ ${CC} $^ ${CPPFLAGS} ${LDFLAGS} -o $@
generate: ${PROG} generate: ${PROG}
./${PROG} ./${PROG}
clean: clean:
rm ${PROG} rm ${PROG}

View File

@@ -3,13 +3,13 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"max_len": 65535, "max_len": 65535,
"port": 65532 "port": 65532
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"data": "8guk0D9w8gukffjqCABFAABU+BoAAP8Br4sKAAABCgAAAggAAgj3YAAAMdYCAAAAAACrjS0xAAAAABAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vAAAAAAAAAAA=", "data": "8guk0D9w8gukffjqCABFAABU+BoAAP8Br4sKAAABCgAAAggAAgj3YAAAMdYCAAAAAACrjS0xAAAAABAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vAAAAAAAAAAA=",
"in_port": 65533 "in_port": 65533
} }
} }

View File

@@ -3,35 +3,35 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"max_len": 65535, "max_len": 65535,
"port": 6 "port": 6
} }
} }
], ],
"buffer_id": 65535, "buffer_id": 65535,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "f2:0b:a4:7d:f8:ea", "dl_dst": "f2:0b:a4:7d:f8:ea",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 0, "dl_type": 0,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 4194295 "wildcards": 4194295
} }
}, },
"out_port": 65532, "out_port": 65532,
"priority": 123 "priority": 123
} }
} }

View File

@@ -1,9 +1,9 @@
{ {
"OFPPacketIn": { "OFPPacketIn": {
"buffer_id": 2, "buffer_id": 2,
"data": "////////8gukffjqCAYAAQgABgQAAfILpH346goAAAEAAAAAAAAKAAAD", "data": "////////8gukffjqCAYAAQgABgQAAfILpH346goAAAEAAAAAAAAKAAAD",
"in_port": 99, "in_port": 99,
"reason": 1, "reason": 1,
"total_len": 42 "total_len": 42
} }
} }

View File

@@ -1,34 +1,34 @@
{ {
"OFPSwitchFeatures": { "OFPSwitchFeatures": {
"actions": 2115, "actions": 2115,
"capabilities": 169, "capabilities": 169,
"datapath_id": 1095522080376, "datapath_id": 1095522080376,
"n_buffers": 0, "n_buffers": 0,
"n_tables": 255, "n_tables": 255,
"ports": { "ports": {
"6": { "6": {
"OFPPhyPort": { "OFPPhyPort": {
"advertised": 640, "advertised": 640,
"config": 0, "config": 0,
"curr": 648, "curr": 648,
"hw_addr": "f2:0b:a4:7d:f8:ea", "hw_addr": "f2:0b:a4:7d:f8:ea",
"name": "Port6", "name": "Port6",
"peer": 648, "peer": 648,
"port_no": 6, "port_no": 6,
"state": 2, "state": 2,
"supported": 648 "supported": 648
} }
}, },
"7": { "7": {
"OFPPhyPort": { "OFPPhyPort": {
"advertised": 640, "advertised": 640,
"config": 0, "config": 0,
"curr": 648, "curr": 648,
"hw_addr": "f2:0b:a4:d0:3f:70", "hw_addr": "f2:0b:a4:d0:3f:70",
"name": "Port7", "name": "Port7",
"peer": 648, "peer": 648,
"port_no": 7, "port_no": 7,
"state": 16, "state": 16,
"supported": 648 "supported": 648
} }
} }

View File

@@ -3,12 +3,12 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"max_len": 65535, "max_len": 65535,
"port": 65532 "port": 65532
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"data": { "data": {
"Packet": { "Packet": {
"protocols": [ "protocols": [
@@ -52,7 +52,7 @@
} }
] ]
} }
}, },
"in_port": 65533 "in_port": 65533
} }
} }

View File

@@ -3,35 +3,35 @@
"actions": [ "actions": [
{ {
"NXActionDecMplsTtl": { "NXActionDecMplsTtl": {
"subtype": 26, "subtype": 26,
"vendor": 8992 "vendor": 8992
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "00:00:00:00:00:00", "dl_dst": "00:00:00:00:00:00",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 34887, "dl_type": 34887,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 3678447 "wildcards": 3678447
} }
}, },
"out_port": 65535, "out_port": 65535,
"priority": 100 "priority": 100
} }
} }

View File

@@ -3,35 +3,35 @@
"actions": [ "actions": [
{ {
"NXActionDecTtl": { "NXActionDecTtl": {
"subtype": 18, "subtype": 18,
"vendor": 8992 "vendor": 8992
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "00:00:00:00:00:00", "dl_dst": "00:00:00:00:00:00",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 34887, "dl_type": 34887,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 3678447 "wildcards": 3678447
} }
}, },
"out_port": 65535, "out_port": 65535,
"priority": 100 "priority": 100
} }
} }

View File

@@ -3,36 +3,36 @@
"actions": [ "actions": [
{ {
"NXActionPopMpls": { "NXActionPopMpls": {
"ethertype": 2048, "ethertype": 2048,
"subtype": 24, "subtype": 24,
"vendor": 8992 "vendor": 8992
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "00:00:00:00:00:00", "dl_dst": "00:00:00:00:00:00",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 34887, "dl_type": 34887,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 3678447 "wildcards": 3678447
} }
}, },
"out_port": 65535, "out_port": 65535,
"priority": 100 "priority": 100
} }
} }

View File

@@ -3,36 +3,36 @@
"actions": [ "actions": [
{ {
"NXActionPushMpls": { "NXActionPushMpls": {
"ethertype": 34887, "ethertype": 34887,
"subtype": 23, "subtype": 23,
"vendor": 8992 "vendor": 8992
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "00:00:00:00:00:00", "dl_dst": "00:00:00:00:00:00",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 2048, "dl_type": 2048,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 3678447 "wildcards": 3678447
} }
}, },
"out_port": 65535, "out_port": 65535,
"priority": 100 "priority": 100
} }
} }

View File

@@ -3,36 +3,36 @@
"actions": [ "actions": [
{ {
"NXActionSetMplsLabel": { "NXActionSetMplsLabel": {
"label": 10, "label": 10,
"subtype": 30, "subtype": 30,
"vendor": 8992 "vendor": 8992
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "00:00:00:00:00:00", "dl_dst": "00:00:00:00:00:00",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 34887, "dl_type": 34887,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 3678447 "wildcards": 3678447
} }
}, },
"out_port": 65535, "out_port": 65535,
"priority": 100 "priority": 100
} }
} }

View File

@@ -3,36 +3,36 @@
"actions": [ "actions": [
{ {
"NXActionSetMplsTc": { "NXActionSetMplsTc": {
"subtype": 31, "subtype": 31,
"tc": 10, "tc": 10,
"vendor": 8992 "vendor": 8992
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "00:00:00:00:00:00", "dl_dst": "00:00:00:00:00:00",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 34887, "dl_type": 34887,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 3678447 "wildcards": 3678447
} }
}, },
"out_port": 65535, "out_port": 65535,
"priority": 100 "priority": 100
} }
} }

View File

@@ -3,36 +3,36 @@
"actions": [ "actions": [
{ {
"NXActionSetMplsTtl": { "NXActionSetMplsTtl": {
"subtype": 25, "subtype": 25,
"ttl": 127, "ttl": 127,
"vendor": 8992 "vendor": 8992
} }
} }
], ],
"buffer_id": 4294967295, "buffer_id": 4294967295,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"dl_dst": "00:00:00:00:00:00", "dl_dst": "00:00:00:00:00:00",
"dl_src": "00:00:00:00:00:00", "dl_src": "00:00:00:00:00:00",
"dl_type": 34887, "dl_type": 34887,
"dl_vlan": 0, "dl_vlan": 0,
"dl_vlan_pcp": 0, "dl_vlan_pcp": 0,
"in_port": 0, "in_port": 0,
"nw_dst": "0.0.0.0", "nw_dst": "0.0.0.0",
"nw_proto": 0, "nw_proto": 0,
"nw_src": "0.0.0.0", "nw_src": "0.0.0.0",
"nw_tos": 0, "nw_tos": 0,
"tp_dst": 0, "tp_dst": 0,
"tp_src": 0, "tp_src": 0,
"wildcards": 3678447 "wildcards": 3678447
} }
}, },
"out_port": 65535, "out_port": 65535,
"priority": 100 "priority": 100
} }
} }

View File

@@ -2,14 +2,14 @@
"OFPStatsReply": { "OFPStatsReply": {
"body": { "body": {
"OFPDescStats": { "OFPDescStats": {
"dp_desc": "dp", "dp_desc": "dp",
"hw_desc": "hw", "hw_desc": "hw",
"mfr_desc": "mfr", "mfr_desc": "mfr",
"serial_num": "serial", "serial_num": "serial",
"sw_desc": "sw" "sw_desc": "sw"
} }
}, },
"flags": 0, "flags": 0,
"type": 0 "type": 0
} }
} }

View File

@@ -3,16 +3,16 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 4294967292, "port": 4294967292,
"type": 0 "type": 0
} }
} }
], ],
"actions_len": 16, "actions_len": 16,
"buffer_id": 4294967295, "buffer_id": 4294967295,
"data": "8guk0D9w8gukffjqCABFAABU+BoAAP8Br4sKAAABCgAAAggAAgj3YAAAMdYCAAAAAACrjS0xAAAAABAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vAAAAAAAAAAA=", "data": "8guk0D9w8gukffjqCABFAABU+BoAAP8Br4sKAAABCgAAAggAAgj3YAAAMdYCAAAAAACrjS0xAAAAABAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vAAAAAAAAAAA=",
"in_port": 4294967293 "in_port": 4294967293
} }
} }

View File

@@ -1,17 +1,17 @@
{ {
"OFPFlowStatsRequest": { "OFPFlowStatsRequest": {
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"table_id": 0 "table_id": 0
} }
} }

View File

@@ -3,159 +3,159 @@
"body": [ "body": [
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 0, "byte_count": 0,
"cookie": 0, "cookie": 0,
"duration_nsec": 115277000, "duration_nsec": 115277000,
"duration_sec": 358, "duration_sec": 358,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [], "instructions": [],
"length": 56, "length": 56,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"packet_count": 0, "packet_count": 0,
"priority": 65535, "priority": 65535,
"table_id": 0 "table_id": 0
} }
}, },
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 0, "byte_count": 0,
"cookie": 0, "cookie": 0,
"duration_nsec": 115055000, "duration_nsec": 115055000,
"duration_sec": 358, "duration_sec": 358,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 0, "max_len": 0,
"port": 4294967290, "port": 4294967290,
"type": 0 "type": 0
} }
} }
], ],
"len": 24, "len": 24,
"type": 4 "type": 4
} }
} }
], ],
"length": 88, "length": 88,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 10, "length": 10,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_type", "field": "eth_type",
"mask": null, "mask": null,
"value": 2054 "value": 2054
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"packet_count": 0, "packet_count": 0,
"priority": 65534, "priority": 65534,
"table_id": 0 "table_id": 0
} }
}, },
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 238, "byte_count": 238,
"cookie": 0, "cookie": 0,
"duration_nsec": 511582000, "duration_nsec": 511582000,
"duration_sec": 316220, "duration_sec": 316220,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionGotoTable": { "OFPInstructionGotoTable": {
"len": 8, "len": 8,
"table_id": 1, "table_id": 1,
"type": 1 "type": 1
} }
} }
], ],
"length": 80, "length": 80,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 22, "length": 22,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 6 "value": 6
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"packet_count": 3, "packet_count": 3,
"priority": 123, "priority": 123,
"table_id": 0 "table_id": 0
} }
}, },
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 98, "byte_count": 98,
"cookie": 0, "cookie": 0,
"duration_nsec": 980901000, "duration_nsec": 980901000,
"duration_sec": 313499, "duration_sec": 313499,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 4294967293, "port": 4294967293,
"type": 0 "type": 0
} }
} }
], ],
"len": 24, "len": 24,
"type": 3 "type": 3
} }
} }
], ],
"length": 80, "length": 80,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"packet_count": 1, "packet_count": 1,
"priority": 0, "priority": 0,
"table_id": 0 "table_id": 0
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 1 "type": 1
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"OFPErrorMsg": { "OFPErrorMsg": {
"code": 11, "code": 11,
"data": "ZnVnYWZ1Z2E=", "data": "ZnVnYWZ1Z2E=",
"type": 2 "type": 2
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"OFPExperimenter": { "OFPExperimenter": {
"data": "bmF6bw==", "data": "bmF6bw==",
"exp_type": 123456789, "exp_type": 123456789,
"experimenter": 98765432 "experimenter": 98765432
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPRoleRequest": { "OFPRoleRequest": {
"generation_id": 17294086455919964160, "generation_id": 17294086455919964160,
"role": 2 "role": 2
} }
} }

View File

@@ -1,12 +1,12 @@
{ {
"OFPFlowMod": { "OFPFlowMod": {
"buffer_id": 65535, "buffer_id": 65535,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
@@ -15,28 +15,28 @@
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "vlan_vid", "field": "vlan_vid",
"mask": null, "mask": null,
"value": 258 "value": 258
} }
}, },
"len": 16, "len": 16,
"type": 25 "type": 25
} }
}, },
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 6, "port": 6,
"type": 0 "type": 0
} }
} }
], ],
"len": 40, "len": 40,
"type": 3 "type": 3
} }
}, },
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
"actions": [ "actions": [
@@ -44,8 +44,8 @@
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "01:02:03:04:05:06" "value": "01:02:03:04:05:06"
} }
}, },
@@ -53,30 +53,30 @@
"type": 25 "type": 25
} }
} }
], ],
"len": 24, "len": 24,
"type": 4 "type": 4
} }
} }
], ],
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 14, "length": 14,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"priority": 123, "priority": 123,
"table_id": 1 "table_id": 1
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPRoleReply": { "OFPRoleReply": {
"generation_id": 17294086455919964160, "generation_id": 17294086455919964160,
"role": 3 "role": 3
} }
} }

View File

@@ -6,22 +6,22 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 2, "port": 2,
"type": 0 "type": 0
} }
} }
], ],
"len": 32, "len": 32,
"watch_group": 1, "watch_group": 1,
"watch_port": 1, "watch_port": 1,
"weight": 1 "weight": 1
} }
} }
], ],
"command": 0, "command": 0,
"group_id": 1, "group_id": 1,
"type": 0 "type": 0
} }
} }

View File

@@ -1,9 +1,9 @@
{ {
"OFPPortMod": { "OFPPortMod": {
"advertise": 4096, "advertise": 4096,
"config": 0, "config": 0,
"hw_addr": "00-11-00-00-11-11", "hw_addr": "00-11-00-00-11-11",
"mask": 0, "mask": 0,
"port_no": 1 "port_no": 1
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPTableMod": { "OFPTableMod": {
"config": 0, "config": 0,
"table_id": 255 "table_id": 255
} }
} }

View File

@@ -1,17 +1,17 @@
{ {
"OFPAggregateStatsRequest": { "OFPAggregateStatsRequest": {
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"table_id": 255 "table_id": 255
} }
} }

View File

@@ -2,12 +2,12 @@
"OFPStatsReply": { "OFPStatsReply": {
"body": { "body": {
"OFPAggregateStatsReply": { "OFPAggregateStatsReply": {
"byte_count": 574, "byte_count": 574,
"flow_count": 6, "flow_count": 6,
"packet_count": 7 "packet_count": 7
} }
}, },
"flags": 0, "flags": 0,
"type": 2 "type": 2
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPPortStatsRequest": { "OFPPortStatsRequest": {
"flags": 0, "flags": 0,
"port_no": 4294967295 "port_no": 4294967295
} }
} }

View File

@@ -1,46 +1,46 @@
{ {
"OFPFlowMod": { "OFPFlowMod": {
"buffer_id": 65535, "buffer_id": 65535,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionGotoTable": { "OFPInstructionGotoTable": {
"len": 8, "len": 8,
"table_id": 1, "table_id": 1,
"type": 1 "type": 1
} }
} }
], ],
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 22, "length": 22,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 6 "value": 6
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"priority": 123, "priority": 123,
"table_id": 0 "table_id": 0
} }
} }

View File

@@ -3,40 +3,40 @@
"body": [ "body": [
{ {
"OFPPortStats": { "OFPPortStats": {
"collisions": 0, "collisions": 0,
"port_no": 7, "port_no": 7,
"rx_bytes": 0, "rx_bytes": 0,
"rx_crc_err": 0, "rx_crc_err": 0,
"rx_dropped": 0, "rx_dropped": 0,
"rx_errors": 0, "rx_errors": 0,
"rx_frame_err": 0, "rx_frame_err": 0,
"rx_over_err": 0, "rx_over_err": 0,
"rx_packets": 0, "rx_packets": 0,
"tx_bytes": 336, "tx_bytes": 336,
"tx_dropped": 0, "tx_dropped": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 4 "tx_packets": 4
} }
}, },
{ {
"OFPPortStats": { "OFPPortStats": {
"collisions": 0, "collisions": 0,
"port_no": 6, "port_no": 6,
"rx_bytes": 336, "rx_bytes": 336,
"rx_crc_err": 0, "rx_crc_err": 0,
"rx_dropped": 0, "rx_dropped": 0,
"rx_errors": 0, "rx_errors": 0,
"rx_frame_err": 0, "rx_frame_err": 0,
"rx_over_err": 0, "rx_over_err": 0,
"rx_packets": 4, "rx_packets": 4,
"tx_bytes": 336, "tx_bytes": 336,
"tx_dropped": 0, "tx_dropped": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 4 "tx_packets": 4
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 4 "type": 4
} }
} }

View File

@@ -3,23 +3,23 @@
"body": { "body": {
"OFPGroupFeaturesStats": { "OFPGroupFeaturesStats": {
"actions": [ "actions": [
67082241, 67082241,
67082241, 67082241,
67082241, 67082241,
67082241 67082241
], ],
"capabilities": 5, "capabilities": 5,
"length": 40, "length": 40,
"max_groups": [ "max_groups": [
16777216, 16777216,
16777216, 16777216,
16777216, 16777216,
16777216 16777216
], ],
"types": 15 "types": 15
} }
}, },
"flags": 0, "flags": 0,
"type": 8 "type": 8
} }
} }

View File

@@ -9,27 +9,27 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 2, "port": 2,
"type": 0 "type": 0
} }
} }
], ],
"len": 32, "len": 32,
"watch_group": 1, "watch_group": 1,
"watch_port": 1, "watch_port": 1,
"weight": 1 "weight": 1
} }
} }
], ],
"group_id": 1, "group_id": 1,
"length": 40, "length": 40,
"type": 0 "type": 0
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 7 "type": 7
} }
} }

View File

@@ -1,50 +1,50 @@
{ {
"OFPQueueGetConfigReply": { "OFPQueueGetConfigReply": {
"port": 4294967295, "port": 4294967295,
"queues": [ "queues": [
{ {
"OFPPacketQueue": { "OFPPacketQueue": {
"len": 48, "len": 48,
"port": 77, "port": 77,
"properties": [ "properties": [
{ {
"OFPQueuePropMinRate": { "OFPQueuePropMinRate": {
"len": 16, "len": 16,
"property": 1, "property": 1,
"rate": 10 "rate": 10
} }
}, },
{ {
"OFPQueuePropMaxRate": { "OFPQueuePropMaxRate": {
"len": 16, "len": 16,
"property": 2, "property": 2,
"rate": 900 "rate": 900
} }
} }
], ],
"queue_id": 99 "queue_id": 99
} }
}, },
{ {
"OFPPacketQueue": { "OFPPacketQueue": {
"len": 48, "len": 48,
"port": 77, "port": 77,
"properties": [ "properties": [
{ {
"OFPQueuePropMinRate": { "OFPQueuePropMinRate": {
"len": 16, "len": 16,
"property": 1, "property": 1,
"rate": 100 "rate": 100
} }
}, },
{ {
"OFPQueuePropMaxRate": { "OFPQueuePropMaxRate": {
"len": 16, "len": 16,
"property": 2, "property": 2,
"rate": 200 "rate": 200
} }
} }
], ],
"queue_id": 88 "queue_id": 88
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"OFPQueueStatsRequest": { "OFPQueueStatsRequest": {
"flags": 0, "flags": 0,
"port_no": 4294967295, "port_no": 4294967295,
"queue_id": 4294967295 "queue_id": 4294967295
} }
} }

View File

@@ -3,33 +3,33 @@
"body": [ "body": [
{ {
"OFPQueueStats": { "OFPQueueStats": {
"port_no": 7, "port_no": 7,
"queue_id": 1, "queue_id": 1,
"tx_bytes": 0, "tx_bytes": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 0 "tx_packets": 0
} }
}, },
{ {
"OFPQueueStats": { "OFPQueueStats": {
"port_no": 6, "port_no": 6,
"queue_id": 1, "queue_id": 1,
"tx_bytes": 0, "tx_bytes": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 0 "tx_packets": 0
} }
}, },
{ {
"OFPQueueStats": { "OFPQueueStats": {
"port_no": 7, "port_no": 7,
"queue_id": 2, "queue_id": 2,
"tx_bytes": 0, "tx_bytes": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 0 "tx_packets": 0
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 5 "type": 5
} }
} }

View File

@@ -2,19 +2,19 @@
"OFPPortStatus": { "OFPPortStatus": {
"desc": { "desc": {
"OFPPort": { "OFPPort": {
"advertised": 10240, "advertised": 10240,
"config": 0, "config": 0,
"curr": 10248, "curr": 10248,
"curr_speed": 5000, "curr_speed": 5000,
"hw_addr": "f2:0b:a4:d0:3f:70", "hw_addr": "f2:0b:a4:d0:3f:70",
"max_speed": 5000, "max_speed": 5000,
"name": "\u79c1\u306e\u30dd\u30fc\u30c8", "name": "\u79c1\u306e\u30dd\u30fc\u30c8",
"peer": 10248, "peer": 10248,
"port_no": 7, "port_no": 7,
"state": 4, "state": 4,
"supported": 10248 "supported": 10248
} }
}, },
"reason": 0 "reason": 0
} }
} }

View File

@@ -1,80 +1,80 @@
{ {
"OFPPacketIn": { "OFPPacketIn": {
"buffer_id": 2, "buffer_id": 2,
"data": "////////8gukffjqCAYAAQgABgQAAfILpH346goAAAEAAAAAAAAKAAAD", "data": "////////8gukffjqCAYAAQgABgQAAfILpH346goAAAEAAAAAAAAKAAAD",
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 80, "length": 80,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 6 "value": 6
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_type", "field": "eth_type",
"mask": null, "mask": null,
"value": 2054 "value": 2054
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "ff:ff:ff:ff:ff:ff" "value": "ff:ff:ff:ff:ff:ff"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_op", "field": "arp_op",
"mask": null, "mask": null,
"value": 1 "value": 1
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_spa", "field": "arp_spa",
"mask": null, "mask": null,
"value": "10.0.0.1" "value": "10.0.0.1"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tpa", "field": "arp_tpa",
"mask": null, "mask": null,
"value": "10.0.0.3" "value": "10.0.0.3"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_sha", "field": "arp_sha",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tha", "field": "arp_tha",
"mask": null, "mask": null,
"value": "00:00:00:00:00:00" "value": "00:00:00:00:00:00"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"reason": 1, "reason": 1,
"table_id": 1, "table_id": 1,
"total_len": 42 "total_len": 42
} }
} }

View File

@@ -1,29 +1,29 @@
{ {
"OFPFlowRemoved": { "OFPFlowRemoved": {
"byte_count": 86, "byte_count": 86,
"cookie": 0, "cookie": 0,
"duration_nsec": 48825000, "duration_nsec": 48825000,
"duration_sec": 3, "duration_sec": 3,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 3, "idle_timeout": 3,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 14, "length": 14,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"packet_count": 1, "packet_count": 1,
"priority": 65535, "priority": 65535,
"reason": 0, "reason": 0,
"table_id": 0 "table_id": 0
} }
} }

View File

@@ -1,262 +1,262 @@
{ {
"OFPPacketIn": { "OFPPacketIn": {
"buffer_id": 4026531840, "buffer_id": 4026531840,
"data": "", "data": "",
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 294, "length": 294,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 84281096 "value": 84281096
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_phy_port", "field": "in_phy_port",
"mask": null, "mask": null,
"value": 16909060 "value": 16909060
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "metadata", "field": "metadata",
"mask": null, "mask": null,
"value": 283686952306183 "value": 283686952306183
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_type", "field": "eth_type",
"mask": null, "mask": null,
"value": 2054 "value": 2054
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "ff:ff:ff:ff:ff:ff" "value": "ff:ff:ff:ff:ff:ff"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "vlan_vid", "field": "vlan_vid",
"mask": null, "mask": null,
"value": 999 "value": 999
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ip_dscp", "field": "ip_dscp",
"mask": null, "mask": null,
"value": 9 "value": 9
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ip_ecn", "field": "ip_ecn",
"mask": null, "mask": null,
"value": 3 "value": 3
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ip_proto", "field": "ip_proto",
"mask": null, "mask": null,
"value": 99 "value": 99
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv4_src", "field": "ipv4_src",
"mask": null, "mask": null,
"value": "1.2.3.4" "value": "1.2.3.4"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv4_dst", "field": "ipv4_dst",
"mask": null, "mask": null,
"value": "1.2.3.4" "value": "1.2.3.4"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "tcp_src", "field": "tcp_src",
"mask": null, "mask": null,
"value": 8080 "value": 8080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "tcp_dst", "field": "tcp_dst",
"mask": null, "mask": null,
"value": 18080 "value": 18080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "udp_src", "field": "udp_src",
"mask": null, "mask": null,
"value": 28080 "value": 28080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "udp_dst", "field": "udp_dst",
"mask": null, "mask": null,
"value": 55936 "value": 55936
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "sctp_src", "field": "sctp_src",
"mask": null, "mask": null,
"value": 48080 "value": 48080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "sctp_dst", "field": "sctp_dst",
"mask": null, "mask": null,
"value": 59328 "value": 59328
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv4_type", "field": "icmpv4_type",
"mask": null, "mask": null,
"value": 100 "value": 100
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv4_code", "field": "icmpv4_code",
"mask": null, "mask": null,
"value": 101 "value": 101
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_op", "field": "arp_op",
"mask": null, "mask": null,
"value": 1 "value": 1
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_spa", "field": "arp_spa",
"mask": null, "mask": null,
"value": "10.0.0.1" "value": "10.0.0.1"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tpa", "field": "arp_tpa",
"mask": null, "mask": null,
"value": "10.0.0.3" "value": "10.0.0.3"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_sha", "field": "arp_sha",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tha", "field": "arp_tha",
"mask": null, "mask": null,
"value": "00:00:00:00:00:00" "value": "00:00:00:00:00:00"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_src", "field": "ipv6_src",
"mask": null, "mask": null,
"value": "fe80::f00b:a4ff:fe48:28a5" "value": "fe80::f00b:a4ff:fe48:28a5"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_dst", "field": "ipv6_dst",
"mask": null, "mask": null,
"value": "fe80::f00b:a4ff:fe05:b7dc" "value": "fe80::f00b:a4ff:fe05:b7dc"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_flabel", "field": "ipv6_flabel",
"mask": null, "mask": null,
"value": 541473 "value": 541473
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv6_type", "field": "icmpv6_type",
"mask": null, "mask": null,
"value": 200 "value": 200
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv6_code", "field": "icmpv6_code",
"mask": null, "mask": null,
"value": 201 "value": 201
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_nd_target", "field": "ipv6_nd_target",
"mask": null, "mask": null,
"value": "fe80::a60:6eff:fe7f:74e7" "value": "fe80::a60:6eff:fe7f:74e7"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_nd_sll", "field": "ipv6_nd_sll",
"mask": null, "mask": null,
"value": "00:00:00:00:02:9a" "value": "00:00:00:00:02:9a"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_nd_tll", "field": "ipv6_nd_tll",
"mask": null, "mask": null,
"value": "00:00:00:00:02:2b" "value": "00:00:00:00:02:2b"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "mpls_label", "field": "mpls_label",
"mask": null, "mask": null,
"value": 624485 "value": 624485
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "mpls_tc", "field": "mpls_tc",
"mask": null, "mask": null,
"value": 5 "value": 5
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"reason": 0, "reason": 0,
"table_id": 200, "table_id": 200,
"total_len": 0 "total_len": 0
} }
} }

View File

@@ -1,37 +1,37 @@
{ {
"OFPSwitchFeatures": { "OFPSwitchFeatures": {
"capabilities": 79, "capabilities": 79,
"datapath_id": 9210263729383, "datapath_id": 9210263729383,
"n_buffers": 0, "n_buffers": 0,
"n_tables": 255, "n_tables": 255,
"ports": { "ports": {
"6": { "6": {
"OFPPort": { "OFPPort": {
"advertised": 10240, "advertised": 10240,
"config": 0, "config": 0,
"curr": 10248, "curr": 10248,
"curr_speed": 5000, "curr_speed": 5000,
"hw_addr": "f2:0b:a4:7d:f8:ea", "hw_addr": "f2:0b:a4:7d:f8:ea",
"max_speed": 5000, "max_speed": 5000,
"name": "Port6", "name": "Port6",
"peer": 10248, "peer": 10248,
"port_no": 6, "port_no": 6,
"state": 4, "state": 4,
"supported": 10248 "supported": 10248
} }
}, },
"7": { "7": {
"OFPPort": { "OFPPort": {
"advertised": 10240, "advertised": 10240,
"config": 0, "config": 0,
"curr": 10248, "curr": 10248,
"curr_speed": 5000, "curr_speed": 5000,
"hw_addr": "f2:0b:a4:d0:3f:70", "hw_addr": "f2:0b:a4:d0:3f:70",
"max_speed": 5000, "max_speed": 5000,
"name": "Port7", "name": "Port7",
"peer": 10248, "peer": 10248,
"port_no": 7, "port_no": 7,
"state": 4, "state": 4,
"supported": 10248 "supported": 10248
} }
} }

View File

@@ -1,269 +1,269 @@
{ {
"OFPFlowMod": { "OFPFlowMod": {
"buffer_id": 65535, "buffer_id": 65535,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [], "instructions": [],
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 294, "length": 294,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 84281096 "value": 84281096
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_phy_port", "field": "in_phy_port",
"mask": null, "mask": null,
"value": 16909060 "value": 16909060
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "metadata", "field": "metadata",
"mask": null, "mask": null,
"value": 283686952306183 "value": 283686952306183
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_type", "field": "eth_type",
"mask": null, "mask": null,
"value": 2054 "value": 2054
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "ff:ff:ff:ff:ff:ff" "value": "ff:ff:ff:ff:ff:ff"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "vlan_vid", "field": "vlan_vid",
"mask": null, "mask": null,
"value": 999 "value": 999
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ip_dscp", "field": "ip_dscp",
"mask": null, "mask": null,
"value": 9 "value": 9
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ip_ecn", "field": "ip_ecn",
"mask": null, "mask": null,
"value": 3 "value": 3
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ip_proto", "field": "ip_proto",
"mask": null, "mask": null,
"value": 99 "value": 99
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv4_src", "field": "ipv4_src",
"mask": null, "mask": null,
"value": "1.2.3.4" "value": "1.2.3.4"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv4_dst", "field": "ipv4_dst",
"mask": null, "mask": null,
"value": "1.2.3.4" "value": "1.2.3.4"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "tcp_src", "field": "tcp_src",
"mask": null, "mask": null,
"value": 8080 "value": 8080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "tcp_dst", "field": "tcp_dst",
"mask": null, "mask": null,
"value": 18080 "value": 18080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "udp_src", "field": "udp_src",
"mask": null, "mask": null,
"value": 28080 "value": 28080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "udp_dst", "field": "udp_dst",
"mask": null, "mask": null,
"value": 55936 "value": 55936
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "sctp_src", "field": "sctp_src",
"mask": null, "mask": null,
"value": 48080 "value": 48080
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "sctp_dst", "field": "sctp_dst",
"mask": null, "mask": null,
"value": 59328 "value": 59328
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv4_type", "field": "icmpv4_type",
"mask": null, "mask": null,
"value": 100 "value": 100
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv4_code", "field": "icmpv4_code",
"mask": null, "mask": null,
"value": 101 "value": 101
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_op", "field": "arp_op",
"mask": null, "mask": null,
"value": 1 "value": 1
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_spa", "field": "arp_spa",
"mask": null, "mask": null,
"value": "10.0.0.1" "value": "10.0.0.1"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tpa", "field": "arp_tpa",
"mask": null, "mask": null,
"value": "10.0.0.3" "value": "10.0.0.3"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_sha", "field": "arp_sha",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tha", "field": "arp_tha",
"mask": null, "mask": null,
"value": "00:00:00:00:00:00" "value": "00:00:00:00:00:00"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_src", "field": "ipv6_src",
"mask": null, "mask": null,
"value": "fe80::f00b:a4ff:fe48:28a5" "value": "fe80::f00b:a4ff:fe48:28a5"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_dst", "field": "ipv6_dst",
"mask": null, "mask": null,
"value": "fe80::f00b:a4ff:fe05:b7dc" "value": "fe80::f00b:a4ff:fe05:b7dc"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_flabel", "field": "ipv6_flabel",
"mask": null, "mask": null,
"value": 541473 "value": 541473
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv6_type", "field": "icmpv6_type",
"mask": null, "mask": null,
"value": 200 "value": 200
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "icmpv6_code", "field": "icmpv6_code",
"mask": null, "mask": null,
"value": 201 "value": 201
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_nd_target", "field": "ipv6_nd_target",
"mask": null, "mask": null,
"value": "fe80::a60:6eff:fe7f:74e7" "value": "fe80::a60:6eff:fe7f:74e7"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_nd_sll", "field": "ipv6_nd_sll",
"mask": null, "mask": null,
"value": "00:00:00:00:02:9a" "value": "00:00:00:00:02:9a"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "ipv6_nd_tll", "field": "ipv6_nd_tll",
"mask": null, "mask": null,
"value": "00:00:00:00:02:2b" "value": "00:00:00:00:02:2b"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "mpls_label", "field": "mpls_label",
"mask": null, "mask": null,
"value": 624485 "value": 624485
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "mpls_tc", "field": "mpls_tc",
"mask": null, "mask": null,
"value": 5 "value": 5
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"priority": 123, "priority": 123,
"table_id": 1 "table_id": 1
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPGroupStatsRequest": { "OFPGroupStatsRequest": {
"flags": 0, "flags": 0,
"group_id": 4294967292 "group_id": 4294967292
} }
} }

View File

@@ -6,20 +6,20 @@
"bucket_counters": [ "bucket_counters": [
{ {
"OFPBucketCounter": { "OFPBucketCounter": {
"byte_count": 2345, "byte_count": 2345,
"packet_count": 234 "packet_count": 234
} }
} }
], ],
"byte_count": 12345, "byte_count": 12345,
"group_id": 1, "group_id": 1,
"length": 48, "length": 48,
"packet_count": 123, "packet_count": 123,
"ref_count": 2 "ref_count": 2
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 6 "type": 6
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPSetConfig": { "OFPSetConfig": {
"flags": 0, "flags": 0,
"miss_send_len": 128 "miss_send_len": 128
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPGetConfigReply": { "OFPGetConfigReply": {
"flags": 0, "flags": 0,
"miss_send_len": 128 "miss_send_len": 128
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPGroupStatsRequest": { "OFPGroupStatsRequest": {
"flags": 0, "flags": 0,
"group_id": 1 "group_id": 1
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPPortStatsRequest": { "OFPPortStatsRequest": {
"flags": 0, "flags": 0,
"port_no": 7 "port_no": 7
} }
} }

View File

@@ -3,16 +3,16 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 4294967292, "port": 4294967292,
"type": 0 "type": 0
} }
} }
], ],
"actions_len": 16, "actions_len": 16,
"buffer_id": 4294967295, "buffer_id": 4294967295,
"data": { "data": {
"Packet": { "Packet": {
"protocols": [ "protocols": [
{ {
@@ -55,7 +55,7 @@
} }
] ]
} }
}, },
"in_port": 4294967293 "in_port": 4294967293
} }
} }

View File

@@ -2,14 +2,14 @@
"OFPDescStatsReply": { "OFPDescStatsReply": {
"body": { "body": {
"OFPDescStats": { "OFPDescStats": {
"dp_desc": "dp", "dp_desc": "dp",
"hw_desc": "hw", "hw_desc": "hw",
"mfr_desc": "mfr", "mfr_desc": "mfr",
"serial_num": "serial", "serial_num": "serial",
"sw_desc": "sw" "sw_desc": "sw"
} }
}, },
"flags": 0, "flags": 0,
"type": 0 "type": 0
} }
} }

View File

@@ -3,16 +3,16 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 4294967292, "port": 4294967292,
"type": 0 "type": 0
} }
} }
], ],
"actions_len": 16, "actions_len": 16,
"buffer_id": 4294967295, "buffer_id": 4294967295,
"data": "8guk0D9w8gukffjqCABFAABU+BoAAP8Br4sKAAABCgAAAggAAgj3YAAAMdYCAAAAAACrjS0xAAAAABAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vAAAAAAAAAAA=", "data": "8guk0D9w8gukffjqCABFAABU+BoAAP8Br4sKAAABCgAAAggAAgj3YAAAMdYCAAAAAACrjS0xAAAAABAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vAAAAAAAAAAA=",
"in_port": 4294967293 "in_port": 4294967293
} }
} }

View File

@@ -3,14 +3,14 @@
"elements": [ "elements": [
{ {
"OFPHelloElemVersionBitmap": { "OFPHelloElemVersionBitmap": {
"length": 8, "length": 8,
"type": 1, "type": 1,
"versions": [ "versions": [
1, 1,
2, 2,
3, 3,
9, 9,
10, 10,
30 30
] ]
} }

View File

@@ -1,18 +1,18 @@
{ {
"OFPFlowStatsRequest": { "OFPFlowStatsRequest": {
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"table_id": 0, "table_id": 0,
"type": 1 "type": 1
} }
} }

View File

@@ -3,130 +3,130 @@
"body": [ "body": [
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 0, "byte_count": 0,
"cookie": 0, "cookie": 0,
"duration_nsec": 115277000, "duration_nsec": 115277000,
"duration_sec": 358, "duration_sec": 358,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [], "instructions": [],
"length": 56, "length": 56,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"packet_count": 0, "packet_count": 0,
"priority": 65535, "priority": 65535,
"table_id": 0 "table_id": 0
} }
}, },
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 0, "byte_count": 0,
"cookie": 0, "cookie": 0,
"duration_nsec": 115055000, "duration_nsec": 115055000,
"duration_sec": 358, "duration_sec": 358,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 0, "max_len": 0,
"port": 4294967290, "port": 4294967290,
"type": 0 "type": 0
} }
} }
], ],
"len": 24, "len": 24,
"type": 4 "type": 4
} }
} }
], ],
"length": 88, "length": 88,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 10, "length": 10,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_type", "field": "eth_type",
"mask": null, "mask": null,
"value": 2054 "value": 2054
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"packet_count": 0, "packet_count": 0,
"priority": 65534, "priority": 65534,
"table_id": 0 "table_id": 0
} }
}, },
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 238, "byte_count": 238,
"cookie": 0, "cookie": 0,
"duration_nsec": 511582000, "duration_nsec": 511582000,
"duration_sec": 316220, "duration_sec": 316220,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionGotoTable": { "OFPInstructionGotoTable": {
"len": 8, "len": 8,
"table_id": 1, "table_id": 1,
"type": 1 "type": 1
} }
} }
], ],
"length": 80, "length": 80,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 22, "length": 22,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 6 "value": 6
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"packet_count": 3, "packet_count": 3,
"priority": 123, "priority": 123,
"table_id": 0 "table_id": 0
} }
}, },
{ {
"OFPFlowStats": { "OFPFlowStats": {
"byte_count": 98, "byte_count": 98,
"cookie": 0, "cookie": 0,
"duration_nsec": 980901000, "duration_nsec": 980901000,
"duration_sec": 313499, "duration_sec": 313499,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
@@ -135,118 +135,118 @@
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "vlan_vid", "field": "vlan_vid",
"mask": null, "mask": null,
"value": 258 "value": 258
} }
}, },
"len": 16, "len": 16,
"type": 25 "type": 25
} }
}, },
{ {
"OFPActionCopyTtlOut": { "OFPActionCopyTtlOut": {
"len": 8, "len": 8,
"type": 11 "type": 11
} }
}, },
{ {
"OFPActionCopyTtlIn": { "OFPActionCopyTtlIn": {
"len": 8, "len": 8,
"type": 12 "type": 12
} }
}, },
{ {
"OFPActionCopyTtlIn": { "OFPActionCopyTtlIn": {
"len": 8, "len": 8,
"type": 12 "type": 12
} }
}, },
{ {
"OFPActionPopPbb": { "OFPActionPopPbb": {
"len": 8, "len": 8,
"type": 27 "type": 27
} }
}, },
{ {
"OFPActionPushPbb": { "OFPActionPushPbb": {
"ethertype": 4660, "ethertype": 4660,
"len": 8, "len": 8,
"type": 26 "type": 26
} }
}, },
{ {
"OFPActionPopMpls": { "OFPActionPopMpls": {
"ethertype": 39030, "ethertype": 39030,
"len": 8, "len": 8,
"type": 20 "type": 20
} }
}, },
{ {
"OFPActionPushMpls": { "OFPActionPushMpls": {
"ethertype": 34887, "ethertype": 34887,
"len": 8, "len": 8,
"type": 19 "type": 19
} }
}, },
{ {
"OFPActionPopVlan": { "OFPActionPopVlan": {
"len": 8, "len": 8,
"type": 18 "type": 18
} }
}, },
{ {
"OFPActionPushVlan": { "OFPActionPushVlan": {
"ethertype": 33024, "ethertype": 33024,
"len": 8, "len": 8,
"type": 17 "type": 17
} }
}, },
{ {
"OFPActionDecMplsTtl": { "OFPActionDecMplsTtl": {
"len": 8, "len": 8,
"type": 16 "type": 16
} }
}, },
{ {
"OFPActionSetMplsTtl": { "OFPActionSetMplsTtl": {
"len": 8, "len": 8,
"mpls_ttl": 10, "mpls_ttl": 10,
"type": 15 "type": 15
} }
}, },
{ {
"OFPActionDecNwTtl": { "OFPActionDecNwTtl": {
"len": 8, "len": 8,
"type": 24 "type": 24
} }
}, },
{ {
"OFPActionSetNwTtl": { "OFPActionSetNwTtl": {
"len": 8, "len": 8,
"nw_ttl": 10, "nw_ttl": 10,
"type": 23 "type": 23
} }
}, },
{ {
"OFPActionSetQueue": { "OFPActionSetQueue": {
"len": 8, "len": 8,
"queue_id": 3, "queue_id": 3,
"type": 21 "type": 21
} }
}, },
{ {
"OFPActionGroup": { "OFPActionGroup": {
"group_id": 99, "group_id": 99,
"len": 8, "len": 8,
"type": 22 "type": 22
} }
}, },
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 6, "port": 6,
"type": 0 "type": 0
} }
}, },
@@ -267,11 +267,11 @@
"subtype": 25976 "subtype": 25976
} }
} }
], ],
"len": 192, "len": 192,
"type": 3 "type": 3
} }
}, },
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
"actions": [ "actions": [
@@ -279,21 +279,21 @@
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "01:02:03:04:05:06" "value": "01:02:03:04:05:06"
} }
}, },
"len": 16, "len": 16,
"type": 25 "type": 25
} }
}, },
{ {
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "pbb_uca", "field": "pbb_uca",
"mask": null, "mask": null,
"value": 1 "value": 1
} }
}, },
@@ -301,43 +301,43 @@
"type": 25 "type": 25
} }
} }
], ],
"len": 40, "len": 40,
"type": 4 "type": 4
} }
}, },
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 4294967293, "port": 4294967293,
"type": 0 "type": 0
} }
} }
], ],
"len": 24, "len": 24,
"type": 3 "type": 3
} }
} }
], ],
"length": 312, "length": 312,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"packet_count": 1, "packet_count": 1,
"priority": 0, "priority": 0,
"table_id": 0 "table_id": 0
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 1 "type": 1
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"OFPErrorMsg": { "OFPErrorMsg": {
"code": 11, "code": 11,
"data": "ZnVnYWZ1Z2E=", "data": "ZnVnYWZ1Z2E=",
"type": 2 "type": 2
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"OFPExperimenter": { "OFPExperimenter": {
"data": "bmF6bw==", "data": "bmF6bw==",
"exp_type": 123456789, "exp_type": 123456789,
"experimenter": 98765432 "experimenter": 98765432
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPRoleRequest": { "OFPRoleRequest": {
"generation_id": 17294086455919964160, "generation_id": 17294086455919964160,
"role": 2 "role": 2
} }
} }

View File

@@ -1,12 +1,12 @@
{ {
"OFPFlowMod": { "OFPFlowMod": {
"buffer_id": 65535, "buffer_id": 65535,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
@@ -15,96 +15,96 @@
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "vlan_vid", "field": "vlan_vid",
"mask": null, "mask": null,
"value": 258 "value": 258
} }
}, },
"len": 16, "len": 16,
"type": 25 "type": 25
} }
}, },
{ {
"OFPActionCopyTtlOut": { "OFPActionCopyTtlOut": {
"len": 8, "len": 8,
"type": 11 "type": 11
} }
}, },
{ {
"OFPActionCopyTtlIn": { "OFPActionCopyTtlIn": {
"len": 8, "len": 8,
"type": 12 "type": 12
} }
}, },
{ {
"OFPActionCopyTtlIn": { "OFPActionCopyTtlIn": {
"len": 8, "len": 8,
"type": 12 "type": 12
} }
}, },
{ {
"OFPActionPopPbb": { "OFPActionPopPbb": {
"len": 8, "len": 8,
"type": 27 "type": 27
} }
}, },
{ {
"OFPActionPushPbb": { "OFPActionPushPbb": {
"ethertype": 4660, "ethertype": 4660,
"len": 8, "len": 8,
"type": 26 "type": 26
} }
}, },
{ {
"OFPActionPopMpls": { "OFPActionPopMpls": {
"ethertype": 39030, "ethertype": 39030,
"len": 8, "len": 8,
"type": 20 "type": 20
} }
}, },
{ {
"OFPActionPushMpls": { "OFPActionPushMpls": {
"ethertype": 34887, "ethertype": 34887,
"len": 8, "len": 8,
"type": 19 "type": 19
} }
}, },
{ {
"OFPActionPopVlan": { "OFPActionPopVlan": {
"len": 8, "len": 8,
"type": 18 "type": 18
} }
}, },
{ {
"OFPActionPushVlan": { "OFPActionPushVlan": {
"ethertype": 33024, "ethertype": 33024,
"len": 8, "len": 8,
"type": 17 "type": 17
} }
}, },
{ {
"OFPActionDecMplsTtl": { "OFPActionDecMplsTtl": {
"len": 8, "len": 8,
"type": 16 "type": 16
} }
}, },
{ {
"OFPActionSetMplsTtl": { "OFPActionSetMplsTtl": {
"len": 8, "len": 8,
"mpls_ttl": 10, "mpls_ttl": 10,
"type": 15 "type": 15
} }
}, },
{ {
"OFPActionDecNwTtl": { "OFPActionDecNwTtl": {
"len": 8, "len": 8,
"type": 24 "type": 24
} }
}, },
{ {
"OFPActionSetNwTtl": { "OFPActionSetNwTtl": {
"len": 8, "len": 8,
"nw_ttl": 10, "nw_ttl": 10,
"type": 23 "type": 23
} }
}, },
@@ -118,23 +118,23 @@
}, },
{ {
"OFPActionSetQueue": { "OFPActionSetQueue": {
"len": 8, "len": 8,
"queue_id": 3, "queue_id": 3,
"type": 21 "type": 21
} }
}, },
{ {
"OFPActionGroup": { "OFPActionGroup": {
"group_id": 99, "group_id": 99,
"len": 8, "len": 8,
"type": 22 "type": 22
} }
}, },
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 6, "port": 6,
"type": 0 "type": 0
} }
} }
@@ -142,7 +142,7 @@
"len": 176, "len": 176,
"type": 3 "type": 3
} }
}, },
{ {
"OFPInstructionActions": { "OFPInstructionActions": {
"actions": [ "actions": [
@@ -150,21 +150,21 @@
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "01:02:03:04:05:06" "value": "01:02:03:04:05:06"
} }
}, },
"len": 16, "len": 16,
"type": 25 "type": 25
} }
}, },
{ {
"OFPActionSetField": { "OFPActionSetField": {
"field": { "field": {
"OXMTlv": { "OXMTlv": {
"field": "pbb_uca", "field": "pbb_uca",
"mask": null, "mask": null,
"value": 1 "value": 1
} }
}, },
@@ -172,30 +172,30 @@
"type": 25 "type": 25
} }
} }
], ],
"len": 40, "len": 40,
"type": 4 "type": 4
} }
} }
], ],
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 14, "length": 14,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"priority": 123, "priority": 123,
"table_id": 1 "table_id": 1
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPRoleReply": { "OFPRoleReply": {
"generation_id": 17294086455919964160, "generation_id": 17294086455919964160,
"role": 3 "role": 3
} }
} }

View File

@@ -6,22 +6,22 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 2, "port": 2,
"type": 0 "type": 0
} }
} }
], ],
"len": 32, "len": 32,
"watch_group": 1, "watch_group": 1,
"watch_port": 1, "watch_port": 1,
"weight": 1 "weight": 1
} }
} }
], ],
"command": 0, "command": 0,
"group_id": 1, "group_id": 1,
"type": 0 "type": 0
} }
} }

View File

@@ -1,9 +1,9 @@
{ {
"OFPPortMod": { "OFPPortMod": {
"advertise": 4096, "advertise": 4096,
"config": 0, "config": 0,
"hw_addr": "00:11:00:00:11:11", "hw_addr": "00:11:00:00:11:11",
"mask": 0, "mask": 0,
"port_no": 1 "port_no": 1
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPTableMod": { "OFPTableMod": {
"config": 0, "config": 0,
"table_id": 255 "table_id": 255
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPDescStatsRequest": { "OFPDescStatsRequest": {
"flags": 0, "flags": 0,
"type": 0 "type": 0
} }
} }

View File

@@ -1,18 +1,18 @@
{ {
"OFPAggregateStatsRequest": { "OFPAggregateStatsRequest": {
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 4, "length": 4,
"oxm_fields": [], "oxm_fields": [],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"table_id": 255, "table_id": 255,
"type": 2 "type": 2
} }
} }

View File

@@ -2,12 +2,12 @@
"OFPAggregateStatsReply": { "OFPAggregateStatsReply": {
"body": { "body": {
"OFPAggregateStats": { "OFPAggregateStats": {
"byte_count": 574, "byte_count": 574,
"flow_count": 6, "flow_count": 6,
"packet_count": 7 "packet_count": 7
} }
}, },
"flags": 0, "flags": 0,
"type": 2 "type": 2
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPTableStatsRequest": { "OFPTableStatsRequest": {
"flags": 0, "flags": 0,
"type": 3 "type": 3
} }
} }

View File

@@ -3,22 +3,22 @@
"body": [ "body": [
{ {
"OFPTableStats": { "OFPTableStats": {
"active_count": 4, "active_count": 4,
"lookup_count": 4, "lookup_count": 4,
"matched_count": 4, "matched_count": 4,
"table_id": 0 "table_id": 0
} }
}, },
{ {
"OFPTableStats": { "OFPTableStats": {
"active_count": 4, "active_count": 4,
"lookup_count": 4, "lookup_count": 4,
"matched_count": 4, "matched_count": 4,
"table_id": 1 "table_id": 1
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 3 "type": 3
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"OFPPortStatsRequest": { "OFPPortStatsRequest": {
"flags": 0, "flags": 0,
"port_no": 4294967295, "port_no": 4294967295,
"type": 4 "type": 4
} }
} }

View File

@@ -1,46 +1,46 @@
{ {
"OFPFlowMod": { "OFPFlowMod": {
"buffer_id": 65535, "buffer_id": 65535,
"command": 0, "command": 0,
"cookie": 0, "cookie": 0,
"cookie_mask": 0, "cookie_mask": 0,
"flags": 0, "flags": 0,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 0, "idle_timeout": 0,
"instructions": [ "instructions": [
{ {
"OFPInstructionGotoTable": { "OFPInstructionGotoTable": {
"len": 8, "len": 8,
"table_id": 1, "table_id": 1,
"type": 1 "type": 1
} }
} }
], ],
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 22, "length": 22,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 6 "value": 6
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"out_group": 4294967295, "out_group": 4294967295,
"out_port": 4294967295, "out_port": 4294967295,
"priority": 123, "priority": 123,
"table_id": 0 "table_id": 0
} }
} }

View File

@@ -3,44 +3,44 @@
"body": [ "body": [
{ {
"OFPPortStats": { "OFPPortStats": {
"collisions": 0, "collisions": 0,
"duration_nsec": 0, "duration_nsec": 0,
"duration_sec": 0, "duration_sec": 0,
"port_no": 7, "port_no": 7,
"rx_bytes": 0, "rx_bytes": 0,
"rx_crc_err": 0, "rx_crc_err": 0,
"rx_dropped": 0, "rx_dropped": 0,
"rx_errors": 0, "rx_errors": 0,
"rx_frame_err": 0, "rx_frame_err": 0,
"rx_over_err": 0, "rx_over_err": 0,
"rx_packets": 0, "rx_packets": 0,
"tx_bytes": 336, "tx_bytes": 336,
"tx_dropped": 0, "tx_dropped": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 4 "tx_packets": 4
} }
}, },
{ {
"OFPPortStats": { "OFPPortStats": {
"collisions": 0, "collisions": 0,
"duration_nsec": 0, "duration_nsec": 0,
"duration_sec": 0, "duration_sec": 0,
"port_no": 6, "port_no": 6,
"rx_bytes": 336, "rx_bytes": 336,
"rx_crc_err": 0, "rx_crc_err": 0,
"rx_dropped": 0, "rx_dropped": 0,
"rx_errors": 0, "rx_errors": 0,
"rx_frame_err": 0, "rx_frame_err": 0,
"rx_over_err": 0, "rx_over_err": 0,
"rx_packets": 4, "rx_packets": 4,
"tx_bytes": 336, "tx_bytes": 336,
"tx_dropped": 0, "tx_dropped": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 4 "tx_packets": 4
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 4 "type": 4
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPGroupFeaturesStatsRequest": { "OFPGroupFeaturesStatsRequest": {
"flags": 0, "flags": 0,
"type": 8 "type": 8
} }
} }

View File

@@ -3,22 +3,22 @@
"body": { "body": {
"OFPGroupFeaturesStats": { "OFPGroupFeaturesStats": {
"actions": [ "actions": [
67082241, 67082241,
67082241, 67082241,
67082241, 67082241,
67082241 67082241
], ],
"capabilities": 5, "capabilities": 5,
"max_groups": [ "max_groups": [
16777216, 16777216,
16777216, 16777216,
16777216, 16777216,
16777216 16777216
], ],
"types": 15 "types": 15
} }
}, },
"flags": 0, "flags": 0,
"type": 8 "type": 8
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"OFPGroupDescStatsRequest": { "OFPGroupDescStatsRequest": {
"flags": 0, "flags": 0,
"type": 7 "type": 7
} }
} }

View File

@@ -9,27 +9,27 @@
"actions": [ "actions": [
{ {
"OFPActionOutput": { "OFPActionOutput": {
"len": 16, "len": 16,
"max_len": 65535, "max_len": 65535,
"port": 2, "port": 2,
"type": 0 "type": 0
} }
} }
], ],
"len": 32, "len": 32,
"watch_group": 1, "watch_group": 1,
"watch_port": 1, "watch_port": 1,
"weight": 1 "weight": 1
} }
} }
], ],
"group_id": 1, "group_id": 1,
"length": 40, "length": 40,
"type": 0 "type": 0
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 7 "type": 7
} }
} }

View File

@@ -1,102 +1,102 @@
{ {
"OFPQueueGetConfigReply": { "OFPQueueGetConfigReply": {
"port": 4294967295, "port": 4294967295,
"queues": [ "queues": [
{ {
"OFPPacketQueue": { "OFPPacketQueue": {
"len": 64, "len": 64,
"port": 77, "port": 77,
"properties": [ "properties": [
{ {
"OFPQueuePropMinRate": { "OFPQueuePropMinRate": {
"len": 16, "len": 16,
"property": 1, "property": 1,
"rate": 10 "rate": 10
} }
}, },
{ {
"OFPQueuePropMaxRate": { "OFPQueuePropMaxRate": {
"len": 16, "len": 16,
"property": 2, "property": 2,
"rate": 900 "rate": 900
} }
}, },
{ {
"OFPQueuePropExperimenter": { "OFPQueuePropExperimenter": {
"data": [], "data": [],
"experimenter": 999, "experimenter": 999,
"len": 16, "len": 16,
"property": 65535 "property": 65535
} }
} }
], ],
"queue_id": 99 "queue_id": 99
} }
}, },
{ {
"OFPPacketQueue": { "OFPPacketQueue": {
"len": 65, "len": 65,
"port": 77, "port": 77,
"properties": [ "properties": [
{ {
"OFPQueuePropMinRate": { "OFPQueuePropMinRate": {
"len": 16, "len": 16,
"property": 1, "property": 1,
"rate": 100 "rate": 100
} }
}, },
{ {
"OFPQueuePropMaxRate": { "OFPQueuePropMaxRate": {
"len": 16, "len": 16,
"property": 2, "property": 2,
"rate": 200 "rate": 200
} }
}, },
{ {
"OFPQueuePropExperimenter": { "OFPQueuePropExperimenter": {
"experimenter": 999, "experimenter": 999,
"data": [ "data": [
1 1
], ],
"len": 17, "len": 17,
"property": 65535 "property": 65535
} }
} }
], ],
"queue_id": 88 "queue_id": 88
} }
}, },
{ {
"OFPPacketQueue": { "OFPPacketQueue": {
"len": 66, "len": 66,
"port": 77, "port": 77,
"properties": [ "properties": [
{ {
"OFPQueuePropMinRate": { "OFPQueuePropMinRate": {
"len": 16, "len": 16,
"property": 1, "property": 1,
"rate": 200 "rate": 200
} }
}, },
{ {
"OFPQueuePropMaxRate": { "OFPQueuePropMaxRate": {
"len": 16, "len": 16,
"property": 2, "property": 2,
"rate": 400 "rate": 400
} }
}, },
{ {
"OFPQueuePropExperimenter": { "OFPQueuePropExperimenter": {
"experimenter": 999, "experimenter": 999,
"data": [ "data": [
1, 1,
2 2
], ],
"len": 18, "len": 18,
"property": 65535 "property": 65535
} }
} }
], ],
"queue_id": 77 "queue_id": 77
} }
} }

View File

@@ -1,8 +1,8 @@
{ {
"OFPQueueStatsRequest": { "OFPQueueStatsRequest": {
"flags": 0, "flags": 0,
"port_no": 4294967295, "port_no": 4294967295,
"queue_id": 4294967295, "queue_id": 4294967295,
"type": 5 "type": 5
} }
} }

View File

@@ -3,39 +3,39 @@
"body": [ "body": [
{ {
"OFPQueueStats": { "OFPQueueStats": {
"duration_nsec": 0, "duration_nsec": 0,
"duration_sec": 0, "duration_sec": 0,
"port_no": 7, "port_no": 7,
"queue_id": 1, "queue_id": 1,
"tx_bytes": 0, "tx_bytes": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 0 "tx_packets": 0
} }
}, },
{ {
"OFPQueueStats": { "OFPQueueStats": {
"duration_nsec": 0, "duration_nsec": 0,
"duration_sec": 0, "duration_sec": 0,
"port_no": 6, "port_no": 6,
"queue_id": 1, "queue_id": 1,
"tx_bytes": 0, "tx_bytes": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 0 "tx_packets": 0
} }
}, },
{ {
"OFPQueueStats": { "OFPQueueStats": {
"duration_nsec": 0, "duration_nsec": 0,
"duration_sec": 0, "duration_sec": 0,
"port_no": 7, "port_no": 7,
"queue_id": 2, "queue_id": 2,
"tx_bytes": 0, "tx_bytes": 0,
"tx_errors": 0, "tx_errors": 0,
"tx_packets": 0 "tx_packets": 0
} }
} }
], ],
"flags": 0, "flags": 0,
"type": 5 "type": 5
} }
} }

View File

@@ -2,19 +2,19 @@
"OFPPortStatus": { "OFPPortStatus": {
"desc": { "desc": {
"OFPPort": { "OFPPort": {
"advertised": 10240, "advertised": 10240,
"config": 0, "config": 0,
"curr": 10248, "curr": 10248,
"curr_speed": 5000, "curr_speed": 5000,
"hw_addr": "f2:0b:a4:d0:3f:70", "hw_addr": "f2:0b:a4:d0:3f:70",
"max_speed": 5000, "max_speed": 5000,
"name": "\u79c1\u306e\u30dd\u30fc\u30c8", "name": "\u79c1\u306e\u30dd\u30fc\u30c8",
"peer": 10248, "peer": 10248,
"port_no": 7, "port_no": 7,
"state": 4, "state": 4,
"supported": 10248 "supported": 10248
} }
}, },
"reason": 0 "reason": 0
} }
} }

View File

@@ -1,81 +1,81 @@
{ {
"OFPPacketIn": { "OFPPacketIn": {
"buffer_id": 2, "buffer_id": 2,
"cookie": 283686884868096, "cookie": 283686884868096,
"data": "////////8gukffjqCAYAAQgABgQAAfILpH346goAAAEAAAAAAAAKAAAD", "data": "////////8gukffjqCAYAAQgABgQAAfILpH346goAAAEAAAAAAAAKAAAD",
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 80, "length": 80,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "in_port", "field": "in_port",
"mask": null, "mask": null,
"value": 6 "value": 6
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_type", "field": "eth_type",
"mask": null, "mask": null,
"value": 2054 "value": 2054
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "ff:ff:ff:ff:ff:ff" "value": "ff:ff:ff:ff:ff:ff"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_src", "field": "eth_src",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_op", "field": "arp_op",
"mask": null, "mask": null,
"value": 1 "value": 1
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_spa", "field": "arp_spa",
"mask": null, "mask": null,
"value": "10.0.0.1" "value": "10.0.0.1"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tpa", "field": "arp_tpa",
"mask": null, "mask": null,
"value": "10.0.0.3" "value": "10.0.0.3"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_sha", "field": "arp_sha",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
}, },
{ {
"OXMTlv": { "OXMTlv": {
"field": "arp_tha", "field": "arp_tha",
"mask": null, "mask": null,
"value": "00:00:00:00:00:00" "value": "00:00:00:00:00:00"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"reason": 1, "reason": 1,
"table_id": 1, "table_id": 1,
"total_len": 42 "total_len": 42
} }
} }

View File

@@ -1,29 +1,29 @@
{ {
"OFPFlowRemoved": { "OFPFlowRemoved": {
"byte_count": 86, "byte_count": 86,
"cookie": 0, "cookie": 0,
"duration_nsec": 48825000, "duration_nsec": 48825000,
"duration_sec": 3, "duration_sec": 3,
"hard_timeout": 0, "hard_timeout": 0,
"idle_timeout": 3, "idle_timeout": 3,
"match": { "match": {
"OFPMatch": { "OFPMatch": {
"length": 14, "length": 14,
"oxm_fields": [ "oxm_fields": [
{ {
"OXMTlv": { "OXMTlv": {
"field": "eth_dst", "field": "eth_dst",
"mask": null, "mask": null,
"value": "f2:0b:a4:7d:f8:ea" "value": "f2:0b:a4:7d:f8:ea"
} }
} }
], ],
"type": 1 "type": 1
} }
}, },
"packet_count": 1, "packet_count": 1,
"priority": 65535, "priority": 65535,
"reason": 0, "reason": 0,
"table_id": 0 "table_id": 0
} }
} }

View File

@@ -1,15 +1,15 @@
{ {
"OFPGetAsyncReply": { "OFPGetAsyncReply": {
"flow_removed_mask": [ "flow_removed_mask": [
15, 15,
3 3
], ],
"packet_in_mask": [ "packet_in_mask": [
5, 5,
1 1
], ],
"port_status_mask": [ "port_status_mask": [
7, 7,
3 3
] ]
} }

View File

@@ -1,15 +1,15 @@
{ {
"OFPSetAsync": { "OFPSetAsync": {
"flow_removed_mask": [ "flow_removed_mask": [
15, 15,
3 3
], ],
"packet_in_mask": [ "packet_in_mask": [
5, 5,
1 1
], ],
"port_status_mask": [ "port_status_mask": [
7, 7,
3 3
] ]
} }

View File

@@ -3,33 +3,33 @@
"bands": [ "bands": [
{ {
"OFPMeterBandDrop": { "OFPMeterBandDrop": {
"burst_size": 10, "burst_size": 10,
"len": 16, "len": 16,
"rate": 1000, "rate": 1000,
"type": 1 "type": 1
} }
}, },
{ {
"OFPMeterBandDscpRemark": { "OFPMeterBandDscpRemark": {
"burst_size": 10, "burst_size": 10,
"len": 16, "len": 16,
"prec_level": 1, "prec_level": 1,
"rate": 1000, "rate": 1000,
"type": 2 "type": 2
} }
}, },
{ {
"OFPMeterBandExperimenter": { "OFPMeterBandExperimenter": {
"burst_size": 10, "burst_size": 10,
"experimenter": 999, "experimenter": 999,
"len": 16, "len": 16,
"rate": 1000, "rate": 1000,
"type": 65535 "type": 65535
} }
} }
], ],
"command": 0, "command": 0,
"flags": 14, "flags": 14,
"meter_id": 100 "meter_id": 100
} }
} }

Some files were not shown because too many files have changed in this diff Show More