Compare commits

..

No commits in common. "master" and "v1.8" have entirely different histories.
master ... v1.8

1809 changed files with 44355 additions and 468964 deletions

View File

@ -1,25 +0,0 @@
name: Unit tests
on: [push, pull_request]
jobs:
unit-tests:
name: Unit tests
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.5, 3.6, 3.7, 3.8, 3.9]
steps:
- name: Checkout repo
uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade -r pip-requirements.txt
pip install tox tox-gh-actions coveralls
bash ryu/tests/integrated/common/install_docker_test_pkg_for_github_actions.sh
- name: Test with tox
run: NOSE_VERBOSE=0 tox

1
.gitignore vendored
View File

@ -10,7 +10,6 @@ GPATH
GSYMS GSYMS
*.log *.log
.venv/ .venv/
.tox/
.coverage .coverage
covhtml/ covhtml/
coverage.xml coverage.xml

View File

@ -10,6 +10,6 @@
# W0614: Unused import %s from wildcard import # W0614: Unused import %s from wildcard import
# R0801: Similar lines in %s files # R0801: Similar lines in %s files
disable=C0111,W0511,W0142,E0602,C0103,E1101,R0903,W0614,R0801 disable=C0111,W0511,W0142,E0602,C0103,E1101,R0903,W0614,R0801
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg} output-format=parseable
reports=yes reports=yes
files-output=no files-output=no

View File

@ -1,11 +0,0 @@
version: 2
build:
image: latest
python:
version: 3.6
install:
- method: pip
path: .
sphinx:
configuration: doc/source/conf.py
formats: all

View File

@ -1,15 +0,0 @@
{
"separateMajorMinor": false,
"schedule": [
"after 10pm every weekday",
"before 5am every weekday",
"every weekend"
],
"timezone": "Pacific/Auckland",
"extends": [
"config:base",
":prHourlyLimit1",
":preserveSemverRanges",
"docker:enableMajor"
]
}

View File

@ -1,9 +0,0 @@
---
linters:
flake8:
python: 3
max-line-length: 120
pep8:
python: 3
max-line-length: 120
py3k:

View File

@ -1,13 +1,11 @@
include LICENSE include LICENSE
include MANIFEST.in include MANIFEST.in
include *.rst include *.rst
recursive-include ryu *.xsd recursive-include *.xsd
graft contrib
graft doc graft doc
graft etc graft etc
graft tools recursive-exclude doc/build/*/ *
recursive-exclude doc/build *
recursive-exclude ryu/tests/packet_data_generator *
recursive-exclude ryu/tests/packet_data_generator2 *
global-exclude *~ global-exclude *~
global-exclude *.pyc global-exclude *.pyc
global-exclude .gitignore global-exclude .gitignore

View File

@ -1,17 +1,12 @@
**PLEASE READ: RYU NOT CURRENTLY MAINTAINED**
* The Ryu project needs new maintainers - please file an issue if you are able to assist.
* see OpenStack's os-ken (`<https://github.com/openstack/os-ken>`_) for a maintained Ryu alternative.
What's Ryu What's Ryu
========== ==========
Ryu is a component-based software defined networking framework. Ryu is an Operating System for Software Defined Networking.
Ryu provides software components with well defined API's that make it Ryu aims to provide a logically centralized control and well defined
easy for developers to create new network management and control API that make it easy for operators to create new network management
applications. Ryu supports various protocols for managing network and control applications. Currently, Ryu manages network devices by
devices, such as OpenFlow, Netconf, OF-config, etc. About OpenFlow, using OpenFlow. You can say that Ryu is an OpenFlow Controller, which
Ryu supports fully 1.0, 1.2, 1.3, 1.4, 1.5 and Nicira Extensions. support OpenFlow v1.0, v1.2, v1.3, and Nicira Extensions.
All of the code is freely available under the Apache 2.0 license. Ryu All of the code is freely available under the Apache 2.0 license. Ryu
is fully written in Python. is fully written in Python.
@ -25,46 +20,25 @@ Installing Ryu is quite easy::
If you prefer to install Ryu from the source code:: If you prefer to install Ryu from the source code::
% git clone https://github.com/faucetsdn/ryu.git % git clone git://github.com/osrg/ryu.git
% cd ryu; pip install . % cd ryu; python ./setup.py install
If you want to use Ryu with `OpenStack <http://openstack.org/>`_,
please refer `detailed documents <http://osrg.github.com/ryu/doc/using_with_openstack.html>`_.
You can create tens of thousands of isolated virtual networks without
using VLAN. The Ryu application is included in OpenStack mainline as
of Essex release.
If you want to write your Ryu application, have a look at If you want to write your Ryu application, have a look at
`Writing ryu application <http://ryu.readthedocs.io/en/latest/writing_ryu_app.html>`_ document. `Writing ryu application <http://osrg.github.com/ryu/doc/writing_ryu_app.html>`_ document.
After writing your application, just type:: After writing your application, just type::
% ryu-manager yourapp.py % ryu-manager yourapp.py
Optional Requirements
=====================
Some functions of ryu require extra packages:
- OF-Config requires lxml and ncclient
- NETCONF requires paramiko
- BGP speaker (SSH console) requires paramiko
- Zebra protocol service (database) requires SQLAlchemy
If you want to use these functions, please install the requirements::
% pip install -r tools/optional-requires
Please refer to tools/optional-requires for details.
Prerequisites
=============
If you got some error messages at the installation stage, please confirm
dependencies for building the required Python packages.
On Ubuntu(16.04 LTS or later)::
% apt install gcc python-dev libffi-dev libssl-dev libxml2-dev libxslt1-dev zlib1g-dev
Support Support
======= =======
Ryu Official site is `<https://ryu-sdn.org/>`_. Ryu Official site is `<http://osrg.github.com/ryu/>`_.
If you have any If you have any
questions, suggestions, and patches, the mailing list is available at questions, suggestions, and patches, the mailing list is available at

View File

@ -5,59 +5,46 @@ How to Get Your Change Into Ryu
Submitting a change Submitting a change
=================== ===================
To send patches to ryu, please make a Send patches to ryu-devel@list.sourceforge.net. Please don't use 'pull
`pull request <https://github.com/faucetsdn/ryu>`_ on GitHub. request' on github. We expect you to send a patch in Linux kernel
development style. If you are not familiar with it, please read the
following document:
Please check your changes with autopep8, pycodestyle(pep8) and running http://lxr.linux.no/source/Documentation/SubmittingPatches
unit tests to make sure that they don't break the existing features.
The following command does all for you.
.. code-block:: bash Please check your changes with pep8 and run unittests to make sure
that they don't break the existing features. The following command
does both for you:
# Install dependencies of tests fujita@rose:~/git/ryu$ ./run_tests.sh
$ pip install -r tools/test-requires
# Execute autopep8 Of course, you are encouraged to add unittests when you add new
# Also, it is convenient to add settings of your editor or IDE for
# applying autopep8 automatically.
$ autopep8 --recursive --in-place ryu/
# Execute unit tests and pycodestyle(pep8)
$ ./run_tests.sh
Of course, you are encouraged to add unit tests when you add new
features (it's not a must though). features (it's not a must though).
Python version and libraries Python version and libraries
============================ ============================
* Python 3.5, 3.6, 3.7, 3.8, 3.9: * Python 2.6+
As RHEL 6 adopted python 2.6, features only for 2.7+ should be avoided.
Ryu supports multiple Python versions. CI tests on GitHub Actions is running * standard library + widely used library
on these versions. Basically widely used == OpenStack adopted
As usual there are exceptions. gevents. Or python binding library for other
* standard library + widely used library:
Basically widely used == OpenStack adopted.
As usual there are exceptions. Or python binding library for other
component. component.
Coding style guide Coding style guide
================== ==================
* pep8: * pep8
As python is used, PEP8 is would be hopefully mandatory for As python is used, PEP8 is would be hopefully mandatory for
https://www.python.org/dev/peps/pep-0008/ http://www.python.org/dev/peps/pep-0008/
* pylint:
* pylint
Although pylint is useful for finding bugs, but pylint score not very Although pylint is useful for finding bugs, but pylint score not very
important for now because we're still at early development stage. important for now because we're still at early development stage.
https://www.pylint.org/
* Google python style guide is very helpful: * Google python style guide is very helpful
http://google.github.io/styleguide/pyguide.html http://google-styleguide.googlecode.com/svn/trunk/pyguide.html
* Guidelines derived from Guido's Recommendations: Guidelines derived from Guido's Recommendations
============================= ================= ======== ============================= ================= ========
Type Public Internal Type Public Internal
@ -75,16 +62,9 @@ Coding style guide
Local Variables lower_with_under Local Variables lower_with_under
============================= ================= ======== ============================= ================= ========
* OpenStack Nova style guide: * OpenStack Nova style guide
https://github.com/openstack/nova/blob/master/HACKING.rst https://github.com/openstack/nova/blob/master/HACKING.rst
* JSON files:
Ryu source tree has JSON files under ryu/tests/unit/ofproto/json.
They are used by unit tests. To make patches easier to read,
they are normalized using tools/normalize_json.py. Please re-run
the script before committing changes to these JSON files.
Reference Reference
========= =========
* Python Essential Reference, 4th Edition [Amazon] * Python Essential Reference, 4th Edition [Amazon]

107
bin/ryu-client Executable file
View File

@ -0,0 +1,107 @@
#!/usr/bin/env python
#
# Copyright (C) 2011 Nippon Telegraph and Telephone Corporation.
# Copyright (C) 2011 Isaku Yamahata <yamahata at valinux co jp>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import sys
from optparse import OptionParser
from ryu.app.client import OFPClient
from ryu.app.client import QuantumIfaceClient
from ryu.app.client import SwitchConfClient
from ryu.app.client import TunnelClient
from ryu.app.client import TopologyClient
def client_test():
parser = OptionParser(usage="Usage: %prog [OPTIONS] <command> [args]")
parser.add_option("-H", "--host", dest="host", type="string",
default="127.0.0.1", help="ip address rest api service")
parser.add_option("-p", "--port", dest="port", type="int", default="8080")
options, args = parser.parse_args()
if len(args) == 0:
parser.print_help()
sys.exit(1)
address = options.host + ':' + str(options.port)
ofp_client = OFPClient(address)
tun_client = TunnelClient(address)
sc_client = SwitchConfClient(address)
qi_client = QuantumIfaceClient(address)
topo_client = TopologyClient(address)
commands = {
'list_nets': lambda a: sys.stdout.write(ofp_client.get_networks()),
'create_net': lambda a: ofp_client.create_network(a[1]),
'update_net': lambda a: ofp_client.update_network(a[1]),
'delete_net': lambda a: ofp_client.delete_network(a[1]),
'list_ports': lambda a: sys.stdout.write(ofp_client.get_ports(a[1])),
'create_port': lambda a: ofp_client.create_port(a[1], a[2], a[3]),
'update_port': lambda a: ofp_client.update_port(a[1], a[2], a[3]),
'delete_port': lambda a: ofp_client.delete_port(a[1], a[2], a[3]),
'get_tun_key': lambda a: sys.stdout.write(
tun_client.get_tunnel_key(a[1])),
'delete_tun_key': lambda a: tun_client.delete_tunnel_key(a[1]),
'create_tun_key': lambda a: tun_client.create_tunnel_key(a[1], a[2]),
'update_tun_key': lambda a: tun_client.update_tunnel_key(a[1], a[2]),
'list_tun_ports': lambda a: sys.stdout.write(
tun_client.list_ports(a[1])),
'delete_tun_port': lambda a: tun_client.delete_port(a[1], a[2]),
'get_remote_dpid': lambda a: sys.stdout.write(
tun_client.get_remote_dpid(a[1], a[2])),
'create_remote_dpid': lambda a: tun_client.create_remote_dpid(
a[1], a[2], a[3]),
'update_remote_dpid': lambda a: tun_client.update_remote_dpid(
a[1], a[2], a[3]),
'sc_list_sw': lambda a: sys.stdout.write(sc_client.list_switches()),
'sc_delete_sw': lambda a: sc_client.delete_switch(a[1]),
'sc_list_keys': lambda a: sys.stdout.write(sc_client.list_keys(a[1])),
'sc_set_key': lambda a: sc_client.set_key(a[1], a[2], a[3]),
'sc_get_key': lambda a: sys.stdout.write(
sc_client.get_key(a[1], a[2])),
'sc_delete_key': lambda a: sc_client.delete_key(a[1], a[2]),
'qi_list_iface': lambda a: sys.stdout.write(qi_client.list_ifaces()),
'qi_delete_iface': lambda a: qi_client.delete_iface(a[1]),
'qi_list_keys': lambda a: sys.stdout.write(
qi_client.list_keys(a[1])),
'qi_create_key': lambda a: qi_client.create_network_id(
a[1], a[2], a[3]),
'qi_update_key': lambda a: qi_client.update_network_id(
a[1], a[2], a[3]),
'qi_get_net_id': lambda a: sys.stdout.write(
qi_client.get_network_id(a[1])),
'qi_create_net_id': lambda a: qi_client.create_network_id(a[1], a[2]),
'qi_update_net_id': lambda a: qi_client.update_network_id(a[1], a[2]),
'topo_list_switches': lambda a: topo_client.list_switches(),
'topo_list_links': lambda a: topo_client.list_links(),
}
# allow '-', instead of '_'
commands.update(dict([(k.replace('_', '-'), v)
for (k, v) in commands.items()]))
cmd = args[0]
res = commands[cmd](args)
if res:
print res.read()
if __name__ == "__main__":
client_test()

View File

@ -1,6 +1,7 @@
#!/usr/bin/env python #!/usr/bin/env python
#
# Copyright (C) 2011, 2012 Nippon Telegraph and Telephone Corporation. # Copyright (C) 2011, 2012 Nippon Telegraph and Telephone Corporation.
# Copyright (C) 2011 Isaku Yamahata <yamahata at valinux co jp>
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -15,5 +16,72 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from ryu.cmd.manager import main import gevent
main() from gevent import monkey
monkey.patch_all()
# TODO:
# Right now, we have our own patched copy of ovs python bindings
# Once our modification is upstreamed and widely deployed,
# use it
#
# NOTE: this modifies sys.path and thus affects the following imports.
# eg. oslo.config.cfg.
import ryu.contrib
from oslo.config import cfg
import logging
import sys
from ryu import log
log.early_init_log(logging.DEBUG)
from ryu import flags
from ryu import version
from ryu.app import wsgi
from ryu.base.app_manager import AppManager
from ryu.controller import controller
from ryu.topology import switches
CONF = cfg.CONF
CONF.register_cli_opts([
cfg.ListOpt('app-lists', default=[],
help='application module name to run'),
cfg.MultiStrOpt('app', positional=True, default=[],
help='application module name to run')
])
def main():
CONF(project='ryu', version='ryu-manager %s' % version)
log.init_log()
# always enable ofp for now.
app_lists = CONF.app_lists + CONF.app + ['ryu.controller.ofp_handler']
app_mgr = AppManager()
app_mgr.load_apps(app_lists)
contexts = app_mgr.create_contexts()
app_mgr.instantiate_apps(**contexts)
services = []
ctlr = controller.OpenFlowController()
thr = gevent.spawn_later(0, ctlr)
services.append(thr)
webapp = wsgi.start_service(app_mgr)
if webapp:
thr = gevent.spawn_later(0, webapp)
services.append(thr)
try:
gevent.joinall(services)
finally:
app_mgr.close()
if __name__ == "__main__":
main()

5
debian/changelog vendored
View File

@ -1,5 +0,0 @@
ryu (3.10-1) trusty; urgency=low
* Initial release.
-- Ryu Project Team <ryu-devel@lists.sourceforge.net> Wed, 18 Jun 2014 14:50:23 +0900

3
debian/clean vendored
View File

@ -1,3 +0,0 @@
ryu.egg-info/*
debian/ryu-manager.8
debian/ryu.8

1
debian/compat vendored
View File

@ -1 +0,0 @@
9

82
debian/control vendored
View File

@ -1,82 +0,0 @@
Source: ryu
Section: net
Priority: optional
Maintainer: Ryu Project Team <ryu-devel@lists.sourceforge.net>
Build-Depends: debhelper (>= 9.0.0), python-all (>= 2.6), python-sphinx
Build-Depends-Indep:
python-eventlet,
python-lxml,
python-msgpack (>= 0.4.0),
python-netaddr,
python-oslo.config (>= 1:1.2.0),
python-paramiko,
python-routes,
python-six (>= 1.4.0),
python-webob (>=1.2),
python-setuptools,
python-pip,
python-pbr
Standards-Version: 3.9.5
Homepage: https://ryu-sdn.org
Vcs-Git: git://github.com/faucetsdn/ryu.git
Vcs-Browser: https://github.com/faucetsdn/ryu
XS-Python-Version: >= 2.6
Package: python-ryu
Architecture: all
Section: python
Depends:
python-eventlet,
python-lxml,
python-msgpack (>= 0.4.0),
python-netaddr,
python-oslo.config (>= 1:1.2.0),
python-paramiko,
python-routes,
python-six (>= 1.4.0),
python-webob (>=1.2),
${misc:Depends},
${python:Depends}
Suggests: python-ryu-doc
Provides: ${python:Provides}
XB-Python-Version: ${python:Versions}
Description: Ryu is a software defined networking framework
Ryu is a component-based software defined networking framework.
Ryu provides software components with well defined API that make
it easy for developers to create new network management and control
applications. Ryu supports various protocols for managing network
devices, such as OpenFlow, Netconf, OF-config, etc. About OpenFlow,
Ryu supports fully 1.0, 1.2, 1.3, 1.4 and Nicira Extensions.
.
This package provides the Python library.
Package: ryu-bin
Architecture: all
Depends:
python-ryu,
${misc:Depends},
${python:Depends},
${shlibs:Depends}
Description: Ryu is a software defined networking framework
Ryu is a component-based software defined networking framework.
Ryu provides software components with well defined API that make
it easy for developers to create new network management and control
applications. Ryu supports various protocols for managing network
devices, such as OpenFlow, Netconf, OF-config, etc. About OpenFlow,
Ryu supports fully 1.0, 1.2, 1.3, 1.4 and Nicira Extensions.
.
This package provides the Ryu manager.
Package: python-ryu-doc
Architecture: all
Section: doc
Description: Ryu is a software defined networking framework
Ryu is a component-based software defined networking framework.
Ryu provides software components with well defined API that make
it easy for developers to create new network management and control
applications. Ryu supports various protocols for managing network
devices, such as OpenFlow, Netconf, OF-config, etc. About OpenFlow,
Ryu supports fully 1.0, 1.2, 1.3, 1.4 and Nicira Extensions.
.
This package provides the HTML documentation including the Ryu API
manual.

62
debian/copyright vendored
View File

@ -1,62 +0,0 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: ryu
Source: http://github.com/faucetsdn/ryu
Files: *
Copyright: 2014 Ryu Project Team <ryu-devel@lists.sourceforge.net>
License: Apache-2.0
Files: ryu/contrib/_eventlet/*
Copyright: 2005-2006, Bob Ippolito
2007-2010, Linden Research, Inc.
2008-2010, Eventlet Contributors (see AUTHORS)
License: MIT
Files: ryu/contrib/ncclient/*
Copyright: Shikhar Bhushan <shikhar@schmizz.net>
Leonidas Poulopoulos <leopoul@noc.grnet.gr>
Ebben Aries <earies@juniper.net>
License: Apache-2.0
Files: ryu/contrib/tinyrpc/*
Copyright: 2013 Marc Brinkmann
License: MIT
Files: ryu/contrib/ovs/*
Copyright: 2009, 2010, 2011, 2012, 2013 Nicira, Inc.
License: Apache-2.0
License: Apache-2.0
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
.
http://www.apache.org/licenses/LICENSE-2.0
.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
.
On Debian-based systems, the full text of the Apache version 2.0 license
can be found in "/usr/share/common-licenses/Apache-2.0".
License: MIT
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

1
debian/docs vendored
View File

@ -1 +0,0 @@
README.rst

21
debian/log.conf vendored
View File

@ -1,21 +0,0 @@
[loggers]
keys = root
[handlers]
keys = file
[formatters]
keys = simple
[logger_root]
level = INFO
handlers = file
[handler_file]
class = handlers.WatchedFileHandler
formatter = simple
args = ('/var/log/ryu/ryu.log',)
[formatter_simple]
format = %(asctime)s.%(msecs)03d %(levelname)s %(name)s %(message)s
datefmt = %Y-%m-%d %H:%M:%S

View File

@ -1,9 +0,0 @@
Document: python-ryu-doc
Title: Ryu User Documentation
Author: Ryu Project Team
Abstract: Ryu is a component-based software defined networking framework.
Section: Programming/Python
Format: HTML
Index: /usr/share/doc/python-ryu-doc/html/index.html
Files: /usr/share/doc/python-ryu-doc/html/*.html

View File

@ -1,2 +0,0 @@
README.rst
debian/html

View File

@ -1 +0,0 @@
usr/lib/python*/dist-packages/*

35
debian/rules vendored
View File

@ -1,35 +0,0 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# This has to be exported to make some magic below work.
export DH_OPTIONS
%:
dh $@ --with python2
override_dh_installman:
cd doc; \
make man; \
cp build/man/* ../debian/
dh_installman
override_dh_auto_build:
dh_auto_build
mkdir -p debian/html
cd doc; \
make html; \
cp -r build/html/* ../debian/html/
override_dh_installinit:
dh_installinit --no-start --name=ryu
override_dh_installlogrotate:
dh_installlogrotate --name=ryu
override_dh_auto_clean:
rm -rf html
dh_auto_clean

1
debian/ryu-bin.dirs vendored
View File

@ -1 +0,0 @@
/var/log/ryu

View File

@ -1,4 +0,0 @@
usr/bin/ryu-manager usr/bin
usr/bin/ryu usr/bin
debian/ryu.conf etc/ryu
debian/log.conf etc/ryu

View File

@ -1,2 +0,0 @@
debian/ryu-manager.8
debian/ryu.8

View File

@ -1,2 +0,0 @@
update-rc.d -f ryu remove >/dev/null || exit $?
#DEBHELPER#

View File

@ -1,7 +0,0 @@
/var/log/ryu/ryu.log {
daily
missingok
compress
delaycompress
notifempty
}

View File

@ -1,9 +0,0 @@
description "Ryu server"
start on (starting neutron-server or runlevel [2345])
stop on runlevel [!2345]
respawn
exec start-stop-daemon --start --exec /usr/bin/ryu -- \
run --config-file /etc/ryu/ryu.conf

36
debian/ryu.conf vendored
View File

@ -1,36 +0,0 @@
[DEFAULT]
log_config_file=/etc/ryu/log.conf
# app_lists = $RYU_APPS
#
# for OpenStack Neutron Ryu plugin:
# mac address based isolation
#app_lists = ryu.app.simple_isolation,ryu.app.rest
# VLAN
#app_lists=ryu.app.quantum_adapter,ryu.app.rest,ryu.app.rest_conf_switch,ryu.app.rest_quantum,ryu.app.rest_tunnel,ryu.app.simple_vlan
# GRE tunneling
#app_lists=ryu.app.gre_tunnel,ryu.app.quantum_adapter,ryu.app.rest,ryu.app.rest_conf_switch,ryu.app.rest_quantum,ryu.app.rest_tunnel,ryu.app.tunnel_port_updater
#
# wsapi_host=<hostip>
# wsapi_port=<port:8080>
# ofp_listen_host=<hostip>
# ofp_tcp_listen_port=<port:6633>
#wsapi_host = 0.0.0.0
#wsapi_port = 8080
#ofp_listen_host = 0.0.0.0
#ofp_tcp_listen_port = 6633
#
# the followings must be set according to neutron settings
# neutron_url = http://$Q_HOST:$Q_PORT
# neutron_admin_username = $Q_ADMIN_USERNAME
# neutron_admin_password = $SERVICE_PASSWORD
# neutron_admin_tenant_name = $SERVICE_TENANT_NAME
# neutron_admin_auth_url=$KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_HOST:$KEYSTONE_AUTH_PORT/v2.0
# neutron_auth_strategy = $Q_AUTH_STRATEGY
# neutron_controller_addr = tcp:$RYU_OFP_HOST:$RYU_OFP_PORT
#neutron_url = http://192.168.0.1:9696
#neutron_admin_username = admin
#neutron_admin_password = password
#neutron_admin_tenant_name = service
#neutron_admin_auth_url = http://192.168.0.1:5000/v2.0
#neutron_auth_strategy = keystone
#neutron_controller_addr = tcp:192.168.0.1:6633

View File

@ -1 +0,0 @@
3.0 (quilt)

View File

@ -1,15 +0,0 @@
.. _api_ref:
*******************************
Ryu API Reference
*******************************
.. XXX list all members explicitly to workaround a sphinx bug
.. XXX https://bitbucket.org/birkenfeld/sphinx/issue/1362
.. py:currentmodule:: ryu.base.app_manager
.. autoclass:: ryu.base.app_manager.RyuApp
:members: OFP_VERSIONS,_CONTEXTS,_EVENTS,close,context_iteritems,reply_to_request,send_event,send_event_to_observers,send_request,start
.. autoclass:: ryu.controller.dpset.DPSet
:members:

View File

@ -1,15 +0,0 @@
*************************
Built-in Ryu applications
*************************
Ryu has some built-in Ryu applications.
Some of them are examples.
Others provide some functionalities to other Ryu applications.
.. toctree::
:maxdepth: 1
app/ofctl.rst
app/ofctl_rest.rst
app/rest_vtep.rst
app/bgp_application.rst

View File

@ -1,6 +0,0 @@
**************************************
ryu.services.protocols.bgp.application
**************************************
.. automodule:: ryu.services.protocols.bgp.application
:members:

View File

@ -1,30 +0,0 @@
*************
ryu.app.ofctl
*************
ryu.app.ofctl provides a convenient way to use OpenFlow messages
synchronously.
OfctlService ryu application is automatically loaded if your
Ryu application imports ofctl.api module.
Example::
import ryu.app.ofctl.api
OfctlService application internally uses OpenFlow barrier messages
to ensure message boundaries. As OpenFlow messages are asynchronous
and some of messages does not have any replies on success, barriers
are necessary for correct error handling.
api module
==========
.. automodule:: ryu.app.ofctl.api
:members:
exceptions
==========
.. automodule:: ryu.app.ofctl.exception
:members:

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +0,0 @@
*****************
ryu.app.rest_vtep
*****************
.. automodule:: ryu.app.rest_vtep
REST API
========
.. autoclass:: ryu.app.rest_vtep.RestVtepController
:members:
:member-order: bysource

View File

@ -1,144 +0,0 @@
*****************
Components of Ryu
*****************
Executables
===========
bin/ryu-manager
---------------
The main executable.
Base components
===============
ryu.base.app_manager
--------------------
.. automodule:: ryu.base.app_manager
OpenFlow controller
===================
ryu.controller.controller
-------------------------
.. automodule:: ryu.controller.controller
ryu.controller.dpset
--------------------
.. automodule:: ryu.controller.dpset
ryu.controller.ofp_event
------------------------
.. automodule:: ryu.controller.ofp_event
ryu.controller.ofp_handler
--------------------------
.. automodule:: ryu.controller.ofp_handler
OpenFlow wire protocol encoder and decoder
==========================================
ryu.ofproto.ofproto_v1_0
------------------------
.. automodule:: ryu.ofproto.ofproto_v1_0
ryu.ofproto.ofproto_v1_0_parser
-------------------------------
.. automodule:: ryu.ofproto.ofproto_v1_0_parser
ryu.ofproto.ofproto_v1_2
------------------------
.. automodule:: ryu.ofproto.ofproto_v1_2
ryu.ofproto.ofproto_v1_2_parser
-------------------------------
.. automodule:: ryu.ofproto.ofproto_v1_2_parser
ryu.ofproto.ofproto_v1_3
------------------------
.. automodule:: ryu.ofproto.ofproto_v1_3
ryu.ofproto.ofproto_v1_3_parser
-------------------------------
.. automodule:: ryu.ofproto.ofproto_v1_3_parser
ryu.ofproto.ofproto_v1_4
------------------------
.. automodule:: ryu.ofproto.ofproto_v1_4
ryu.ofproto.ofproto_v1_4_parser
-------------------------------
.. automodule:: ryu.ofproto.ofproto_v1_4_parser
ryu.ofproto.ofproto_v1_5
------------------------
.. automodule:: ryu.ofproto.ofproto_v1_5
ryu.ofproto.ofproto_v1_5_parser
-------------------------------
.. automodule:: ryu.ofproto.ofproto_v1_5_parser
Ryu applications
================
ryu.app.cbench
--------------
.. automodule:: ryu.app.cbench
ryu.app.simple_switch
---------------------
.. automodule:: ryu.app.simple_switch
ryu.topology
------------
.. automodule:: ryu.topology
Libraries
=========
ryu.lib.packet
--------------
.. automodule:: ryu.lib.packet
ryu.lib.ovs
-----------
.. automodule:: ryu.lib.ovs
ryu.lib.of_config
-----------------
.. automodule:: ryu.lib.of_config
ryu.lib.netconf
---------------
.. automodule:: ryu.lib.netconf
ryu.lib.xflow
-------------
.. automodule:: ryu.lib.xflow
Third party libraries
=====================
ryu.contrib.ovs
---------------
Open vSwitch python binding. Used by ryu.lib.ovs.
ryu.contrib.oslo.config
-----------------------
Oslo configuration library. Used for ryu-manager's command-line options
and configuration files.
ryu.contrib.ncclient
--------------------
Python library for NETCONF client. Used by ryu.lib.of_config.

View File

@ -12,14 +12,12 @@
# serve to show the default. # serve to show the default.
import sys, os import sys, os
from ryu import version as ryu_version
# If extensions (or modules to document with autodoc) are in another directory, # If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the # add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here. # documentation root, use os.path.abspath to make it absolute, like shown here.
sys.path.insert(0, os.path.abspath('../..')) #sys.path.insert(0, os.path.abspath('.'))
sys.path.insert(0, os.path.abspath('.'))
from ryu import version as ryu_version
# -- General configuration ----------------------------------------------------- # -- General configuration -----------------------------------------------------
@ -28,7 +26,7 @@ from ryu import version as ryu_version
# Add any Sphinx extension module names here, as strings. They can be extensions # Add any Sphinx extension module names here, as strings. They can be extensions
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
extensions = [ 'sphinx.ext.autodoc' ] extensions = []
# Add any paths that contain templates here, relative to this directory. # Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates'] templates_path = ['_templates']
@ -44,7 +42,7 @@ master_doc = 'index'
# General information about the project. # General information about the project.
project = u'Ryu' project = u'Ryu'
copyright = u'2011-2014 Nippon Telegraph and Telephone Corporation' copyright = u'2011, 2012 Nippon Telegraph and Telephone Corporation'
# The version info for the project you're documenting, acts as replacement for # The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the # |version| and |release|, also used in various other places throughout the
@ -94,7 +92,7 @@ pygments_style = 'sphinx'
# The theme to use for HTML and HTML Help pages. See the documentation for # The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes. # a list of builtin themes.
html_theme = 'sphinx_rtd_theme' html_theme = 'haiku'
# Theme options are theme-specific and customize the look and feel of a theme # Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the # further. For a list of options available for each theme, see the
@ -132,7 +130,6 @@ html_static_path = ['_static']
# If true, SmartyPants will be used to convert quotes and dashes to # If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities. # typographically correct entities.
#html_use_smartypants = True #html_use_smartypants = True
# (Deprecated since version 1.6)
# Custom sidebar templates, maps document names to template names. # Custom sidebar templates, maps document names to template names.
#html_sidebars = {} #html_sidebars = {}
@ -216,9 +213,9 @@ latex_documents = [
# (source start file, name, description, authors, manual section). # (source start file, name, description, authors, manual section).
man_pages = [ man_pages = [
('index', 'ryu', u'ryu Documentation', ('index', 'ryu', u'ryu Documentation',
[u'Ryu development team'], 8), [u'ryu development team'], 1),
('man/ryu', 'ryu', u'management for Ryu application', ('man/ryu_manager', 'ryu-manager', u'ryu manager',
[u'Ryu development team'], 8), [u'ryu development team'], 1),
('man/ryu_manager', 'ryu-manager', 'management for Ryu application', ('man/ryu_client', 'ryu-client', u'ryu client utility',
[u'Ryu development team'], 8), [u'ryu development team'], 1),
] ]

View File

@ -6,5 +6,4 @@ Configuration
:maxdepth: 2 :maxdepth: 2
tls.rst tls.rst
gui.rst

View File

@ -6,9 +6,5 @@ Writing Your Ryu Application
:maxdepth: 2 :maxdepth: 2
writing_ryu_app.rst writing_ryu_app.rst
components.rst
ryu_app_api.rst
library.rst library.rst
ofproto_ref.rst
nicira_ext_ref.rst
api_ref.rst

View File

@ -1,2 +0,0 @@
[parsers]
smart_quotes: false

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

View File

@ -1,33 +0,0 @@
***************
Topology Viewer
***************
ryu.app.gui_topology.gui_topology provides topology visualization.
This depends on following ryu applications.
===================== =================================================
ryu.app.rest_topology Get node and link data.
ryu.app.ws_topology Being notified change of link up/down.
ryu.app.ofctl_rest Get flows of datapaths.
===================== =================================================
Usage
=====
Run mininet (or join your real environment)::
$ sudo mn --controller remote --topo tree,depth=3
Run GUI application::
$ PYTHONPATH=. ./bin/ryu run --observe-links ryu/app/gui_topology/gui_topology.py
Access http://<ip address of ryu host>:8080 with your web browser.
Screenshot
==========
.. image:: gui.png
:width: 640 px

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

View File

@ -0,0 +1,722 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1052.3622"
height="744.09448"
id="svg2"
version="1.1"
inkscape:version="0.48.1 r9760"
sodipodi:docname="compute-node.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/scarab-2/doc/source/images/compute-node.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.81601008"
inkscape:cx="538.22825"
inkscape:cy="378.53655"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1314"
inkscape:window-height="980"
inkscape:window-x="110"
inkscape:window-y="42"
inkscape:window-maximized="0"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false"
inkscape:snap-bbox="false"
inkscape:snap-page="false" />
<defs
id="defs4">
<linearGradient
id="linearGradient6493"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop6495" />
</linearGradient>
<linearGradient
id="linearGradient5313"
osb:paint="solid">
<stop
style="stop-color:#5555ff;stop-opacity:1;"
offset="0"
id="stop5315" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path5567"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mstart"
style="overflow:visible">
<path
id="path5564"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lend"
style="overflow:visible;">
<path
id="path5579"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) rotate(180) translate(1,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path5561"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path5558"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8) translate(12.5,0)" />
</marker>
<inkscape:path-effect
effect="skeletal"
id="path-effect5339"
is_visible="true"
pattern="M 0,0 0,10 10,5 z"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient5242"
osb:paint="solid">
<stop
style="stop-color:#7fff2a;stop-opacity:1;"
offset="0"
id="stop5244" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 372.04724 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="1052.3622 : 372.04724 : 1"
inkscape:persp3d-origin="526.18109 : 248.03149 : 1"
id="perspective3009" />
<marker
inkscape:stockid="Arrow1LendM"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendM"
style="overflow:visible;">
<path
id="path4159"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1LendF"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendF"
style="overflow:visible;">
<path
id="path4585"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend6"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend6"
style="overflow:visible;">
<path
id="path5404"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1MendN"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1MendN"
style="overflow:visible;">
<path
id="path5645"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient5349-6"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83990127,0,0,1.846462,-201.58875,-629.6685)" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.2042654,0,0,2.6602952,-344.10309,-1384.9447)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079-9"
xlink:href="#linearGradient5343-7-4"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-4">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-1" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-6" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.6454892,0,0,2.6579041,-106.61003,-1414.0767)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079-6"
xlink:href="#linearGradient5343-7-43"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-43">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-0" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-3" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.2041922,0,0,2.7019977,-347.48146,-932.31394)"
gradientUnits="userSpaceOnUse"
id="linearGradient8058"
xlink:href="#linearGradient5343-7-4-5"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-4-5">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-1-6" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-6-1" />
</linearGradient>
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-308.2677)">
<path
style="fill:#000000;fill-opacity:0;stroke:#1afc00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 237.11002,689.51457 1.86077,-123.1146"
id="path6488-0-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path5485-6"
d="m 246.19071,689.24143 0.82837,-123.63888"
style="fill:none;stroke:#000000;stroke-width:5.2421937;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
sodipodi:nodetypes="cc" />
<rect
style="opacity:0.5;fill:url(#linearGradient6079-6);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.33679771;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3065-4-9"
width="349.8284"
height="374.35648"
x="-981.90985"
y="53.918316"
transform="matrix(0,-1,1,0,0,0)" />
<a
id="a4003"
transform="matrix(1,0,0,0.81896683,-0.728701,296.31497)"
style="fill:#ff2ad4;fill-opacity:1" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="14.34453"
y="1039.1901"
id="text5549"
sodipodi:linespacing="125%"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/scarab-2/doc/source/images/compute-node.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90"><tspan
sodipodi:role="line"
id="tspan5551"
x="14.34453"
y="1039.1901">compute node: single NIC</tspan></text>
<path
style="opacity:0.275;fill:#dd6de5;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#ff0000;stroke-width:4.27355194;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.13677602, 2.13677602;stroke-dashoffset:0"
d=""
id="path4088"
inkscape:connector-curvature="0"
transform="translate(0,308.2677)" />
<g
id="g6423"
transform="translate(-60,2)"
style="opacity:0.6125;fill:#3866a9;fill-opacity:0.46666667" />
<path
style="fill:#000000;fill-opacity:0;stroke:#1afc00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 347.28719,818.50031 -235.12212,0 -1.13388,-109.57905 95.01236,-0.15491"
id="path6473-0"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
inkscape:connector-curvature="0"
id="path5485-5"
d="m 369.67935,811.39255 -0.65638,-99.51593 -85.07583,-0.79742"
style="fill:none;stroke:#000000;stroke-width:5.2421937;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
sodipodi:nodetypes="ccc" />
<path
sodipodi:type="arc"
style="opacity:0.4125;fill:#3866a9;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path6269-5"
sodipodi:cx="185.74246"
sodipodi:cy="191.14935"
sodipodi:rx="84.039093"
sodipodi:ry="31.581572"
d="m 269.78156,191.14935 a 84.039093,31.581572 0 1 1 -168.07819,0 84.039093,31.581572 0 1 1 168.07819,0 z"
transform="matrix(1.1689088,0,0,0.56811324,34.35592,665.4191)" />
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;font-family:Bitstream Vera Sans"
x="159.9389"
y="777.61945"
id="text6271-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6273-1"
x="159.9389"
y="777.61945">quantum_ovs_agent</tspan></text>
<path
style="fill:#000000;fill-opacity:0;stroke:#1afc00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 157.93794,773.53672 -45.24394,0"
id="path6488-0"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<g
id="g5864-4-8-5"
transform="matrix(1,0,0,0.71409652,-491.78016,176.92621)">
<rect
y="601.5531"
x="722.52655"
height="59.086094"
width="26.969246"
id="rect5858-6-0-0"
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.79479539px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="matrix(0,1,-1,0,0,0)"
sodipodi:linespacing="125%"
id="text5860-69-9-6"
y="-729.16479"
x="603.36359"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="-729.16479"
x="603.36359"
id="tspan5862-8-6-4"
sodipodi:role="line">peth</tspan></text>
</g>
<path
sodipodi:type="star"
style="opacity:0.275;fill:#b1c76d;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#ff1300;stroke-width:4;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3488"
sodipodi:sides="6"
sodipodi:cx="703.35907"
sodipodi:cy="240.93047"
sodipodi:r1="24.436026"
sodipodi:r2="21.162218"
sodipodi:arg1="2.0736395"
sodipodi:arg2="2.5972383"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 691.58289,262.3417 -12.65458,-20.90409 11.77618,-21.41123 24.43076,-0.50715 12.65458,20.90409 -11.77618,21.41123 z"
transform="matrix(1.57683,0,0,0.88317766,-864.61882,496.27264)" />
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="216.08893"
y="715.48041"
id="text3490"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3492"
x="216.08893"
y="715.48041">bridge</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.67163575px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5858-6-1"
width="26.969246"
height="42.193172"
x="98.511742"
y="691.39148" />
<text
xml:space="preserve"
style="font-size:20.2810154px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="819.70374"
y="-87.1661"
id="text5860-69-2"
sodipodi:linespacing="125%"
transform="matrix(0,0.84504232,-1.1833727,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5862-8-0"
x="819.70374"
y="-87.1661">veth</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.67163575px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5858-6-1-4"
width="26.969246"
height="42.193172"
x="356.81827"
y="689.26471" />
<text
xml:space="preserve"
style="font-size:20.2810154px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="819.55377"
y="-307.13614"
id="text5860-69-2-6"
sodipodi:linespacing="125%"
transform="matrix(0,0.84504232,-1.1833727,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5862-8-0-2"
x="819.55377"
y="-307.13614">veth</tspan></text>
<g
transform="translate(189.61855,-3.63579)"
id="g4188-6">
<rect
y="807.76764"
x="120.29346"
height="168.16565"
width="337.21384"
id="rect5351-5-2-9"
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:3.17921257px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
transform="translate(-228.13313,-0.39285583)" />
<text
sodipodi:linespacing="125%"
id="text5353-2-6"
y="966.48846"
x="172.48773"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="translate(-228.13313,-0.39285583)"><tspan
y="966.48846"
x="172.48773"
id="tspan5355-6-5"
sodipodi:role="line">nova-compute</tspan></text>
<g
id="g4099-6"
transform="translate(-228.13313,-0.39285583)">
<path
sodipodi:type="star"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-6"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.69506452,0,0,0.47991755,79.246065,639.64778)" />
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="175.07115"
y="905.74854"
id="text5274-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-4"
x="175.07115"
y="905.74854"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan><tspan
sodipodi:role="line"
x="175.07115"
y="928.24854"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
id="tspan3167-1">tenant-X</tspan></text>
</g>
<text
sodipodi:linespacing="125%"
id="text5329-7-8"
y="913.58319"
x="311.78284"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="translate(-228.13313,-0.39285583)"><tspan
id="tspan5333-1"
y="913.58319"
x="311.78284"
sodipodi:role="line">...</tspan></text>
<g
id="g6174-1-3-4"
transform="translate(-334.01622,209.06446)">
<path
sodipodi:type="star"
style="opacity:0.5;fill:#2ad4ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5523-9-0"
sodipodi:sides="6"
sodipodi:cx="260.68668"
sodipodi:cy="248.36246"
sodipodi:r1="28.846476"
sodipodi:r2="24.981781"
sodipodi:arg1="0"
sodipodi:arg2="0.52359878"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 289.53315,248.36246 -14.42324,24.98178 -28.84647,0 -14.42324,-24.98178 14.42324,-24.98178 28.84647,0 z"
transform="matrix(1.0086434,0,0,0.68923037,243.74678,449.4383)" />
<text
xml:space="preserve"
style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="486.00281"
y="627.69855"
id="text5525-6-8-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5527-5-2"
x="486.00281"
y="627.69855">OVS</tspan></text>
</g>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-9"
d="M 180.26786,884.67321 374.03954,832.21569"
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
transform="translate(-228.13313,-0.39285583)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6230-0"
d="m 293.74741,898.5905 88.85662,-53.52808"
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
transform="translate(-228.13313,-0.39285583)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6232-1"
d="m 395.45077,882.53208 18.19954,-34.25796"
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
transform="translate(-228.13313,-0.39285583)" />
<text
sodipodi:linespacing="125%"
id="text7945-1-8-0"
y="855.57654"
x="90.787804"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#193edc;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="translate(-228.13313,-0.39285583)"><tspan
style="fill:#31562b;fill-opacity:1;stroke:none"
y="855.57654"
x="90.787804"
id="tspan7947-2-1-8"
sodipodi:role="line">openflow</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,-44.98222,640.35447)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-8-1"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-5-6"
y="906.84808"
x="278.97601"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="translate(-228.13313,-0.39285583)"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="906.84808"
x="278.97601"
id="tspan5276-33-7"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-8-8"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="929.34808"
x="278.97601"
sodipodi:role="line">tenant-Y</tspan></text>
<path
sodipodi:type="star"
style="fill:#ccff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-7-8"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.69506452,0,0,0.47991755,79.246065,639.64778)" />
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="175.07115"
y="905.74854"
id="text5274-7-2"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-1-1"
x="175.07115"
y="905.74854"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan><tspan
sodipodi:role="line"
x="175.07115"
y="928.24854"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
id="tspan3167-2-3">tenant-...</tspan></text>
</g>
<text
xml:space="preserve"
style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="29.411377"
y="589.0155"
id="text3348"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3350"
x="29.411377"
y="589.0155">peth: physical NIC</tspan><tspan
sodipodi:role="line"
x="29.411377"
y="614.0155"
id="tspan3352">veth: virtual NIC</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
x="64.95018"
y="656.40637"
id="text3354"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="64.95018"
y="656.40637"
id="tspan3358">physical host</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

View File

@ -0,0 +1,891 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1052.3622"
height="744.09448"
id="svg2"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="filtering-broadcast.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/ryu/ryu-1/doc/source/images/filtering-broadcast.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.8162589"
inkscape:cx="387.88548"
inkscape:cy="372.04724"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1345"
inkscape:window-height="1004"
inkscape:window-x="88"
inkscape:window-y="112"
inkscape:window-maximized="0"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false"
inkscape:snap-bbox="false"
inkscape:snap-page="false"
showguides="true"
inkscape:guide-bbox="true" />
<defs
id="defs4">
<marker
style="overflow:visible;"
id="Arrow1Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Send">
<path
transform="scale(0.2) rotate(180) translate(6,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path4154" />
</marker>
<marker
inkscape:stockid="Arrow2Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Mend"
style="overflow:visible;">
<path
id="path4166"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lstart"
style="overflow:visible">
<path
id="path5113"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) translate(1,0)" />
</marker>
<linearGradient
id="linearGradient6493"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop6495" />
</linearGradient>
<linearGradient
id="linearGradient5313"
osb:paint="solid">
<stop
style="stop-color:#5555ff;stop-opacity:1;"
offset="0"
id="stop5315" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path5567"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mstart"
style="overflow:visible">
<path
id="path5564"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lend"
style="overflow:visible;">
<path
id="path5579"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) rotate(180) translate(1,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path5561"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path5558"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8) translate(12.5,0)" />
</marker>
<inkscape:path-effect
effect="skeletal"
id="path-effect5339"
is_visible="true"
pattern="M 0,0 0,10 10,5 z"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient5242"
osb:paint="solid">
<stop
style="stop-color:#7fff2a;stop-opacity:1;"
offset="0"
id="stop5244" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 372.04724 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="1052.3622 : 372.04724 : 1"
inkscape:persp3d-origin="526.18109 : 248.03149 : 1"
id="perspective3009" />
<marker
inkscape:stockid="Arrow1LendM"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendM"
style="overflow:visible;">
<path
id="path4159"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1LendF"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendF"
style="overflow:visible;">
<path
id="path4585"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend6"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend6"
style="overflow:visible;">
<path
id="path5404"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1MendN"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1MendN"
style="overflow:visible;">
<path
id="path5645"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient5349-6"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83990127,0,0,1.846462,-201.58875,-629.6685)" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.2042654,0,0,2.6602952,-344.10309,-1384.9447)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079-9"
xlink:href="#linearGradient5343-7-4"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-4">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-1" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-6" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Lenda"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lenda"
style="overflow:visible;">
<path
id="path5800"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#05ff00;stroke-width:1.0pt;fill:#05ff00;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lendan"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lendan"
style="overflow:visible;">
<path
id="path5943"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;marker-start:none;stroke:#059500;stroke-width:1.0pt;fill:#059500"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient6508"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.953777,0,0,4.0502288,67.45781,-2202.1414)"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621" />
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2MendC"
style="overflow:visible;">
<path
id="path4651"
style="stroke-linejoin:round;font-size:12.0;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.62500000;fill:#05ff00"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend4"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend4"
style="overflow:visible;">
<path
id="path6229"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#0000ff;stroke-width:1.0pt;fill:#0000ff;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-8"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-7"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-9"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-2"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-1"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-75"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-308.2677)">
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 302.18545,821.37998 0,-137.21137"
id="path6078"
inkscape:connector-curvature="0" />
<rect
style="opacity:0.5;fill:url(#linearGradient6508);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:3.14326644;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3065-4"
width="415.37"
height="570.46045"
x="-971.83258"
y="34.852787"
transform="matrix(0,-1,1,0,0,0)" />
<a
id="a4003"
transform="matrix(1,0,0,0.81896683,-0.728701,296.31497)"
style="fill:#ff2ad4;fill-opacity:1" />
<path
style="opacity:0.275;fill:#dd6de5;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#ff0000;stroke-width:4.27355194;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.13677602, 2.13677602;stroke-dashoffset:0"
d=""
id="path4088"
inkscape:connector-curvature="0"
transform="translate(0,308.2677)" />
<rect
y="596.97156"
x="60.367882"
height="333.62399"
width="519.82361"
id="rect5351-5"
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5.55974579px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5353-2"
y="912.9986"
x="259.60919"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="912.9986"
x="259.60919"
id="tspan5355-6"
sodipodi:role="line">nova-compute</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,209.24607,575.64778)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274"
y="841.74854"
x="305.07117"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="841.74854"
x="305.07117"
id="tspan5276"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="864.24854"
x="305.07117"
sodipodi:role="line">tenant-X</tspan></text>
<path
transform="matrix(1.0086434,0,0,0.68923037,39.99481,494.12072)"
d="m 289.53315,248.36246 -14.42324,24.98178 -28.84647,0 -14.42324,-24.98178 14.42324,-24.98178 28.84647,0 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="0.52359878"
sodipodi:arg1="0"
sodipodi:r2="24.981781"
sodipodi:r1="28.846476"
sodipodi:cy="248.36246"
sodipodi:cx="260.68668"
sodipodi:sides="6"
id="path5523-9"
style="opacity:0.5;fill:#2ad4ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5525-6"
y="672.38098"
x="282.25085"
style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="672.38098"
x="282.25085"
id="tspan5527-5"
sodipodi:role="line">OVS</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228"
d="m 300.47129,472.34665 0.1678,161.83023"
style="fill:none;stroke:#05ff00;stroke-width:9.44542694;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="232.90851"
y="955.89026"
id="text3193"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3195"
x="232.90851"
y="955.89026">physical host</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="30.008099"
y="1010.6731"
id="text6045"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="30.008099"
y="1010.6731"
id="tspan3090">broadcast filtering</tspan></text>
<g
id="g6280"
transform="translate(38.34449,-184.28264)">
<g
transform="matrix(1,0,0,0.71409652,-474.38063,289.09459)"
id="g5864-4">
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.79479539px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5858-6"
width="26.969246"
height="59.086094"
x="722.52655"
y="601.5531" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="611.76575"
y="-729.16479"
id="text5860-69"
sodipodi:linespacing="125%"
transform="matrix(0,1,-1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5862-8"
x="611.76575"
y="-729.16479">eth</tspan></text>
</g>
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#05ff00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="459.41306"
y="697.02533"
id="text6080"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6082"
x="459.41306"
y="697.02533" /></text>
<flowRoot
xml:space="preserve"
id="flowRoot6500"
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Bitstream Vera Sans;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
id="flowRegion6502"><rect
id="rect6504"
width="978.85608"
height="519.44305"
x="-91.882614"
y="261.40448" /></flowRegion><flowPara
id="flowPara6506" /></flowRoot> <rect
y="429.50186"
x="539.10345"
height="41.623135"
width="183.73491"
id="rect5364-7"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031623px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366-8"
y="461.66403"
x="546.43896"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="461.66403"
x="546.43896"
id="tspan5368-6"
sodipodi:role="line">tenant-Y</tspan></text>
<rect
y="489.30692"
x="543.70288"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7-9"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940903px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1-8"
y="536.4245"
x="517.40717"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="536.4245"
x="517.40717"
id="tspan5238-6-0-7-5"
sodipodi:role="line">mac addr</tspan></text>
<rect
y="372.95862"
x="331.97534"
height="31.143024"
width="48.134926"
id="rect6358-7"
style="opacity:0.6125;fill:#b1c76d;fill-opacity:0.46666667;fill-rule:evenodd;stroke:#ff1300;stroke-width:1.76083171;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.6125;fill:#3866a9;fill-opacity:0.46666667;stroke:none;font-family:Bitstream Vera Sans"
x="338.36438"
y="395.34769"
id="text6360-0"
sodipodi:linespacing="125%"><tspan
style="fill:#ff0000;fill-opacity:1;stroke:#000000;stroke-opacity:1"
sodipodi:role="line"
id="tspan6362-5"
x="338.36438"
y="395.34769">ryu</tspan></text>
<rect
y="430.70511"
x="336.8739"
height="41.623135"
width="183.73491"
id="rect5364"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031623px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366"
y="462.86722"
x="344.20935"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="462.86722"
x="344.20935"
id="tspan5368"
sodipodi:role="line">tenant-X</tspan></text>
<rect
y="486.73129"
x="330.94141"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940903px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1"
y="533.69043"
x="316.90228"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="533.69043"
x="316.90228"
id="tspan5238-6-0-7"
sodipodi:role="line">mac addr</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,36.24517,389.72159)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-9"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-7"
y="655.82227"
x="132.07027"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="655.82227"
x="132.07027"
id="tspan5276-5"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-3"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="678.32227"
x="132.07027"
sodipodi:role="line">tenant-X</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,418.47684,392.17178)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-8"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-8"
y="658.27258"
x="514.30194"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="658.27258"
x="514.30194"
id="tspan5276-3"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-1"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="680.77258"
x="514.30194"
sodipodi:role="line">tenant-Y</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="383.86325"
y="695.50299"
id="text3315"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3317"
x="383.86325"
y="695.50299"
style="font-size:22px;fill:#ff0000">X:block</tspan></text>
<rect
y="420.81296"
x="147.81929"
height="97.126534"
width="101.95992"
id="rect5232-3-7"
style="fill:#f2f2f2;stroke:#000000;stroke-width:0.68900102px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<rect
y="421.77469"
x="148.8909"
height="47.919254"
width="99.525726"
id="rect5234-1-0"
style="fill:none;stroke:#000000;stroke-width:0.95860159px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5236-0-4"
y="468.51468"
x="142.9001"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="468.51468"
x="142.9001"
id="tspan5238-7-8"
sodipodi:role="line">broadcast/</tspan><tspan
y="490.07004"
x="142.9001"
sodipodi:role="line"
id="tspan3123">multicast</tspan></text>
<rect
y="470.63403"
x="148.29062"
height="24.908871"
width="99.792274"
id="rect5234-2-4-0"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.69205552px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5236-9-8-4"
y="517.9024"
x="145.92354"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="517.9024"
x="145.92354"
id="tspan5238-6-0-2"
sodipodi:role="line">src addr</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5280-1-9"
y="545.19006"
x="163.08846"
style="font-size:15.80727291px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="545.19006"
x="163.08846"
id="tspan5282-8-6"
sodipodi:role="line">data</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 272.57822,666.10054 -95.55792,-1.2251"
id="path6078-6"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 464.91915,668.55074 -132.31096,-1.2251"
id="path6078-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-0"
d="m 281.13836,702.34941 0.1737,106.92062"
style="fill:none;stroke:#05ff00;stroke-width:4.62460232;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-8"
d="m 270.11603,684.79147 -77.01907,-1.48458"
style="fill:none;stroke:#05ff00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-8-7"
d="m 337.67593,687.84027 35.90109,1.00644"
style="fill:none;stroke:#05ff00;stroke-width:4.11323547;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="172.32462"
y="714.73059"
id="text4337-4"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4339-5"
x="172.32462"
y="714.73059">forward</tspan></text>
<flowRoot
xml:space="preserve"
id="flowRoot4029"
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Bitstream Vera Sans;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
id="flowRegion4031"><rect
id="rect4033"
width="580.69812"
height="236.4446"
x="526.79364"
y="-33.844967" /></flowRegion><flowPara
id="flowPara4035" /></flowRoot> <text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="-814.13312"
y="265.47296"
id="text4337-4-3"
sodipodi:linespacing="125%"
transform="matrix(0,-1,1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan4339-5-6"
x="-814.13312"
y="265.47296">forward</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

View File

@ -0,0 +1,966 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1052.3622"
height="744.09448"
id="svg2"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="filtering-incoming.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/ryu/ryu-1/doc/source/images/filtering-incoming.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.86228854"
inkscape:cx="462.38176"
inkscape:cy="372.04724"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1360"
inkscape:window-height="1049"
inkscape:window-x="118"
inkscape:window-y="72"
inkscape:window-maximized="0"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false"
inkscape:snap-bbox="false"
inkscape:snap-page="false"
showguides="true"
inkscape:guide-bbox="true" />
<defs
id="defs4">
<marker
style="overflow:visible;"
id="Arrow1Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Send">
<path
transform="scale(0.2) rotate(180) translate(6,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path4154" />
</marker>
<marker
inkscape:stockid="Arrow2Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Mend"
style="overflow:visible;">
<path
id="path4166"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lstart"
style="overflow:visible">
<path
id="path5113"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) translate(1,0)" />
</marker>
<linearGradient
id="linearGradient6493"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop6495" />
</linearGradient>
<linearGradient
id="linearGradient5313"
osb:paint="solid">
<stop
style="stop-color:#5555ff;stop-opacity:1;"
offset="0"
id="stop5315" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path5567"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mstart"
style="overflow:visible">
<path
id="path5564"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lend"
style="overflow:visible;">
<path
id="path5579"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) rotate(180) translate(1,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path5561"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path5558"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8) translate(12.5,0)" />
</marker>
<inkscape:path-effect
effect="skeletal"
id="path-effect5339"
is_visible="true"
pattern="M 0,0 0,10 10,5 z"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient5242"
osb:paint="solid">
<stop
style="stop-color:#7fff2a;stop-opacity:1;"
offset="0"
id="stop5244" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 372.04724 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="1052.3622 : 372.04724 : 1"
inkscape:persp3d-origin="526.18109 : 248.03149 : 1"
id="perspective3009" />
<marker
inkscape:stockid="Arrow1LendM"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendM"
style="overflow:visible;">
<path
id="path4159"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1LendF"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendF"
style="overflow:visible;">
<path
id="path4585"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend6"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend6"
style="overflow:visible;">
<path
id="path5404"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1MendN"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1MendN"
style="overflow:visible;">
<path
id="path5645"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient5349-6"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83990127,0,0,1.846462,-201.58875,-629.6685)" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.2042654,0,0,2.6602952,-344.10309,-1384.9447)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079-9"
xlink:href="#linearGradient5343-7-4"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-4">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-1" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-6" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Lenda"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lenda"
style="overflow:visible;">
<path
id="path5800"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#05ff00;stroke-width:1.0pt;fill:#05ff00;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lendan"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lendan"
style="overflow:visible;">
<path
id="path5943"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;marker-start:none;stroke:#059500;stroke-width:1.0pt;fill:#059500"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient6508"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.0300247,0,0,4.0497986,83.81093,-2201.8735)"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621" />
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2MendC"
style="overflow:visible;">
<path
id="path4651"
style="stroke-linejoin:round;font-size:12.0;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.62500000;fill:#05ff00"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend4"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend4"
style="overflow:visible;">
<path
id="path6229"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#0000ff;stroke-width:1.0pt;fill:#0000ff;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-8"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-7"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-9"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-2"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-1"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-75"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-308.2677)">
<rect
style="opacity:0.5;fill:url(#linearGradient6508);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:3.20384383;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3065-4"
width="431.58017"
height="570.3999"
x="-996.03864"
y="34.883072"
transform="matrix(0,-1,1,0,0,0)" />
<a
id="a4003"
transform="matrix(1,0,0,0.81896683,-0.728701,296.31497)"
style="fill:#ff2ad4;fill-opacity:1" />
<path
style="opacity:0.275;fill:#dd6de5;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#ff0000;stroke-width:4.27355194;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.13677602, 2.13677602;stroke-dashoffset:0"
d=""
id="path4088"
inkscape:connector-curvature="0"
transform="translate(0,308.2677)" />
<rect
y="626.91656"
x="60.312897"
height="320.48892"
width="519.93359"
id="rect5351-5"
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5.44977713px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5353-2"
y="930.9986"
x="259.60919"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="930.9986"
x="259.60919"
id="tspan5355-6"
sodipodi:role="line">nova-compute</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,209.24607,599.64778)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274"
y="865.74854"
x="305.07117"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="865.74854"
x="305.07117"
id="tspan5276"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="888.24854"
x="305.07117"
sodipodi:role="line">tenant-X</tspan></text>
<path
transform="matrix(1.0086434,0,0,0.68923037,39.99481,506.12072)"
d="m 289.53315,248.36246 -14.42324,24.98178 -28.84647,0 -14.42324,-24.98178 14.42324,-24.98178 28.84647,0 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="0.52359878"
sodipodi:arg1="0"
sodipodi:r2="24.981781"
sodipodi:r1="28.846476"
sodipodi:cy="248.36246"
sodipodi:cx="260.68668"
sodipodi:sides="6"
id="path5523-9"
style="opacity:0.5;fill:#2ad4ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5525-6"
y="684.38098"
x="282.25085"
style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="684.38098"
x="282.25085"
id="tspan5527-5"
sodipodi:role="line">OVS</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228"
d="m 302.85566,483.00893 0.16815,158.68416"
style="fill:none;stroke:#05ff00;stroke-width:9.36286354;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="234.13361"
y="977.9939"
id="text3193"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3195"
x="234.13361"
y="977.9939">physical host</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="32.392906"
y="1034.0115"
id="text6045"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="32.392906"
y="1034.0115"
id="tspan3090">incoming filtering</tspan></text>
<g
id="g6280"
transform="translate(38.34449,-177.47673)">
<g
transform="matrix(1,0,0,0.71409652,-474.38063,289.09459)"
id="g5864-4">
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.79479539px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5858-6"
width="26.969246"
height="59.086094"
x="722.52655"
y="601.5531" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="611.76575"
y="-729.16479"
id="text5860-69"
sodipodi:linespacing="125%"
transform="matrix(0,1,-1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5862-8"
x="611.76575"
y="-729.16479">eth</tspan></text>
</g>
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#05ff00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="459.41306"
y="697.02533"
id="text6080"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6082"
x="459.41306"
y="697.02533" /></text>
<flowRoot
xml:space="preserve"
id="flowRoot6500"
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Bitstream Vera Sans;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
id="flowRegion6502"><rect
id="rect6504"
width="978.85608"
height="519.44305"
x="-91.882614"
y="261.40448" /></flowRegion><flowPara
id="flowPara6506" /></flowRoot> <g
id="g5284-2"
transform="matrix(0.7624367,0,0,0.67711861,-154.08141,180.88421)">
<rect
style="fill:#f2f2f2;stroke:#000000;stroke-width:0.78552711px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5232-3"
width="117.8242"
height="109.24851"
x="628.36981"
y="431.12851" />
<rect
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.90931469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5234-1"
width="116.47533"
height="36.843727"
x="629.65686"
y="432.41547" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="638.27789"
y="458.18796"
id="text5236-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5238-7"
x="638.27789"
y="458.18796">dst addr</tspan></text>
<rect
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.90931469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5234-2-4"
width="116.47533"
height="36.843727"
x="629.04431"
y="470.39359" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="637.66534"
y="496.16611"
id="text5236-9-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5238-6-0"
x="637.66534"
y="496.16611">src addr</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="661.55481"
y="534.14423"
id="text5280-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5282-8"
x="661.55481"
y="534.14423">data</tspan></text>
</g>
<rect
y="464.40228"
x="656.7132"
height="41.623135"
width="183.73491"
id="rect5364-7"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031623px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366-8"
y="496.56445"
x="664.04871"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="496.56445"
x="664.04871"
id="tspan5368-6"
sodipodi:role="line">tenant-Y</tspan></text>
<rect
y="524.20734"
x="661.31262"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7-9"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940903px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1-8"
y="573.45862"
x="628.24133"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="573.45862"
x="628.24133"
id="tspan5238-6-0-7-5"
sodipodi:role="line">mac addr</tspan></text>
<rect
y="407.85098"
x="449.57703"
height="31.159182"
width="47.231167"
id="rect6358-7"
style="opacity:0.6125;fill:#b1c76d;fill-opacity:0.46666667;fill-rule:evenodd;stroke:#ff1300;stroke-width:1.7446754;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.6125;fill:#3866a9;fill-opacity:0.46666667;stroke:none;font-family:Bitstream Vera Sans"
x="455.97415"
y="430.24811"
id="text6360-0"
sodipodi:linespacing="125%"><tspan
style="fill:#ff0000;fill-opacity:1;stroke:#000000;stroke-opacity:1"
sodipodi:role="line"
id="tspan6362-5"
x="455.97415"
y="430.24811">ryu</tspan></text>
<rect
y="465.60553"
x="454.48364"
height="41.623135"
width="183.73491"
id="rect5364"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031623px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366"
y="497.76764"
x="461.81909"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="497.76764"
x="461.81909"
id="tspan5368"
sodipodi:role="line">tenant-X</tspan></text>
<rect
y="521.63171"
x="448.55115"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940903px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1"
y="570.72449"
x="427.73648"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="570.72449"
x="427.73648"
id="tspan5238-6-0-7"
sodipodi:role="line">mac addr</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,36.24517,401.72159)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-9"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-7"
y="667.82227"
x="132.07027"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="667.82227"
x="132.07027"
id="tspan5276-5"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-3"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="690.32227"
x="132.07027"
sodipodi:role="line">tenant-X</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,418.47684,404.17178)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-8"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-8"
y="670.27258"
x="514.30194"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="670.27258"
x="514.30194"
id="tspan5276-3"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-1"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="692.77258"
x="514.30194"
sodipodi:role="line">tenant-Y</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="340.93289"
y="462.23975"
id="text3311"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3313"
x="340.93289"
y="462.23975">drop</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="383.86325"
y="707.50299"
id="text3315"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3317"
x="383.86325"
y="707.50299"
style="font-size:22px;fill:#ff0000">X:block</tspan></text>
<rect
y="474.02759"
x="183.75699"
height="73.974197"
width="89.833496"
id="rect5232-3-7"
style="fill:#f2f2f2;stroke:#000000;stroke-width:0.56441098px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<rect
y="474.89899"
x="184.73828"
height="24.947573"
width="88.805061"
id="rect5234-1-0"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.65335387px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5236-0-4"
y="522.44855"
x="180.28972"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="522.44855"
x="180.28972"
id="tspan5238-7-8"
sodipodi:role="line">dst addr</tspan></text>
<rect
y="500.61469"
x="184.27127"
height="24.947573"
width="88.805061"
id="rect5234-2-4-0"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.65335387px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5236-9-8-4"
y="549.73639"
x="179.84959"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="549.73639"
x="179.84959"
id="tspan5238-6-0-2"
sodipodi:role="line">src addr</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5280-1-9"
y="577.02417"
x="197.01451"
style="font-size:15.80727291px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="577.02417"
x="197.01451"
id="tspan5282-8-6"
sodipodi:role="line">data</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="199.2713"
y="463.23572"
id="text3373"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3375"
x="199.2713"
y="463.23572">pass</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 272.57822,678.10054 -95.55792,-1.2251"
id="path6078-6"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 464.91915,680.55074 -132.31096,-1.2251"
id="path6078-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-0"
d="m 284.23066,714.1456 0.17377,110.30245"
style="fill:none;stroke:#05ff00;stroke-width:4.69796419;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-8"
d="m 270.11603,696.79147 -77.01907,-1.48458"
style="fill:none;stroke:#05ff00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-8-7"
d="m 337.67593,699.84027 35.90109,1.00644"
style="fill:none;stroke:#05ff00;stroke-width:4.11323547;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="172.32462"
y="726.73059"
id="text4337-4"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4339-5"
x="172.32462"
y="726.73059">forward</tspan></text>
<flowRoot
xml:space="preserve"
id="flowRoot3137"
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Bitstream Vera Sans;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
id="flowRegion3139"><rect
id="rect3141"
width="584.37341"
height="270.74744"
x="469.21387"
y="-63.247402" /></flowRegion><flowPara
id="flowPara3143" /></flowRoot> <path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 300.41581,695.36313 1.05506,151.85591"
id="path6078-9-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="-823.17712"
y="266.8158"
id="text4337-4-2"
sodipodi:linespacing="125%"
transform="matrix(0,-1,1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan4339-5-4"
x="-823.17712"
y="266.8158">forward</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

View File

@ -0,0 +1,955 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1052.3622"
height="744.09448"
id="svg2"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="filtering-outgoing.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/scarab-2/doc/source/images/filtering-outgoing.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.8162589"
inkscape:cx="442.89126"
inkscape:cy="372.04724"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1345"
inkscape:window-height="1004"
inkscape:window-x="89"
inkscape:window-y="51"
inkscape:window-maximized="0"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false"
inkscape:snap-bbox="false"
inkscape:snap-page="false"
showguides="true"
inkscape:guide-bbox="true" />
<defs
id="defs4">
<marker
style="overflow:visible;"
id="Arrow1Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Send">
<path
transform="scale(0.2) rotate(180) translate(6,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path4154" />
</marker>
<marker
inkscape:stockid="Arrow2Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Mend"
style="overflow:visible;">
<path
id="path4166"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lstart"
style="overflow:visible">
<path
id="path5113"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) translate(1,0)" />
</marker>
<linearGradient
id="linearGradient6493"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop6495" />
</linearGradient>
<linearGradient
id="linearGradient5313"
osb:paint="solid">
<stop
style="stop-color:#5555ff;stop-opacity:1;"
offset="0"
id="stop5315" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path5567"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mstart"
style="overflow:visible">
<path
id="path5564"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lend"
style="overflow:visible;">
<path
id="path5579"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) rotate(180) translate(1,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path5561"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path5558"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8) translate(12.5,0)" />
</marker>
<inkscape:path-effect
effect="skeletal"
id="path-effect5339"
is_visible="true"
pattern="M 0,0 0,10 10,5 z"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient5242"
osb:paint="solid">
<stop
style="stop-color:#7fff2a;stop-opacity:1;"
offset="0"
id="stop5244" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 372.04724 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="1052.3622 : 372.04724 : 1"
inkscape:persp3d-origin="526.18109 : 248.03149 : 1"
id="perspective3009" />
<marker
inkscape:stockid="Arrow1LendM"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendM"
style="overflow:visible;">
<path
id="path4159"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1LendF"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendF"
style="overflow:visible;">
<path
id="path4585"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend6"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend6"
style="overflow:visible;">
<path
id="path5404"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1MendN"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1MendN"
style="overflow:visible;">
<path
id="path5645"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient5349-6"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83990127,0,0,1.846462,-201.58875,-629.6685)" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.2042654,0,0,2.6602952,-344.10309,-1384.9447)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079-9"
xlink:href="#linearGradient5343-7-4"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-4">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-1" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-6" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Lenda"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lenda"
style="overflow:visible;">
<path
id="path5800"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#05ff00;stroke-width:1.0pt;fill:#05ff00;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lendan"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lendan"
style="overflow:visible;">
<path
id="path5943"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;marker-start:none;stroke:#059500;stroke-width:1.0pt;fill:#059500"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient6508"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.1604673,0,0,4.0490813,171.38161,-2201.4268)"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621" />
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2MendC"
style="overflow:visible;">
<path
id="path4651"
style="stroke-linejoin:round;font-size:12.0;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.62500000;fill:#05ff00"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend4"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend4"
style="overflow:visible;">
<path
id="path6229"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#0000ff;stroke-width:1.0pt;fill:#0000ff;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-8"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-7"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-9"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-2"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0"
refX="0"
id="Arrow2MendC-1"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4651-75"
style="font-size:12px;fill:#05ff00;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)" />
</marker>
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-308.2677)">
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 299.73525,592.64067 0,-137.21137"
id="path6078"
inkscape:connector-curvature="0" />
<rect
style="opacity:0.5;fill:url(#linearGradient6508);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:3.30488253;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3065-4"
width="459.31204"
height="570.29883"
x="-977.85541"
y="34.933594"
transform="matrix(0,-1,1,0,0,0)" />
<a
id="a4003"
transform="matrix(1,0,0,0.81896683,-0.728701,296.31497)"
style="fill:#ff2ad4;fill-opacity:1" />
<path
style="opacity:0.275;fill:#dd6de5;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#ff0000;stroke-width:4.27355194;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.13677602, 2.13677602;stroke-dashoffset:0"
d=""
id="path4088"
inkscape:connector-curvature="0"
transform="translate(0,308.2677)" />
<rect
y="559.10913"
x="60.505432"
height="367.65173"
width="519.54852"
id="rect5351-5"
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5.83484936px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5353-2"
y="906.9986"
x="259.60919"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="906.9986"
x="259.60919"
id="tspan5355-6"
sodipodi:role="line">nova-compute</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,209.24607,569.64778)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274"
y="835.74854"
x="305.07117"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="835.74854"
x="305.07117"
id="tspan5276"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="858.24854"
x="305.07117"
sodipodi:role="line">tenant-X</tspan></text>
<path
transform="matrix(1.0086434,0,0,0.68923037,39.99481,438.12072)"
d="m 289.53315,248.36246 -14.42324,24.98178 -28.84647,0 -14.42324,-24.98178 14.42324,-24.98178 28.84647,0 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="0.52359878"
sodipodi:arg1="0"
sodipodi:r2="24.981781"
sodipodi:r1="28.846476"
sodipodi:cy="248.36246"
sodipodi:cx="260.68668"
sodipodi:sides="6"
id="path5523-9"
style="opacity:0.5;fill:#2ad4ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5525-6"
y="616.38098"
x="282.25085"
style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="616.38098"
x="282.25085"
id="tspan5527-5"
sodipodi:role="line">OVS</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228"
d="m 301.69654,810.2751 0.16768,-162.95949"
style="fill:none;stroke:#05ff00;stroke-width:9.474823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="234.13361"
y="961.9939"
id="text3193"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3195"
x="234.13361"
y="961.9939">physical host</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="31.2332"
y="1021.6772"
id="text6045"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="31.2332"
y="1021.6772"
id="tspan3090">unicast filtering</tspan></text>
<g
id="g6280"
transform="translate(38.34449,-222.28264)">
<g
transform="matrix(1,0,0,0.71409652,-474.38063,289.09459)"
id="g5864-4">
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.79479539px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5858-6"
width="26.969246"
height="59.086094"
x="722.52655"
y="601.5531" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="611.76575"
y="-729.16479"
id="text5860-69"
sodipodi:linespacing="125%"
transform="matrix(0,1,-1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5862-8"
x="611.76575"
y="-729.16479">eth</tspan></text>
</g>
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#05ff00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="459.41306"
y="697.02533"
id="text6080"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6082"
x="459.41306"
y="697.02533" /></text>
<flowRoot
xml:space="preserve"
id="flowRoot6500"
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Bitstream Vera Sans;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
id="flowRegion6502"><rect
id="rect6504"
width="978.85608"
height="519.44305"
x="-91.882614"
y="261.40448" /></flowRegion><flowPara
id="flowPara6506" /></flowRoot> <g
id="g5284-2"
transform="matrix(0.7624367,0,0,0.67711861,-148.92999,421.60979)">
<rect
style="fill:#f2f2f2;stroke:#000000;stroke-width:0.78552711px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5232-3"
width="117.8242"
height="109.24851"
x="628.36981"
y="431.12851" />
<rect
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.90931469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5234-1"
width="116.47533"
height="36.843727"
x="629.65686"
y="432.41547" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="638.27789"
y="458.18796"
id="text5236-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5238-7"
x="638.27789"
y="458.18796">dst addr</tspan></text>
<rect
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.90931469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5234-2-4"
width="116.47533"
height="36.843727"
x="629.04431"
y="470.39359" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="637.66534"
y="496.16611"
id="text5236-9-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5238-6-0"
x="637.66534"
y="496.16611">src addr</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="661.55481"
y="534.14423"
id="text5280-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5282-8"
x="661.55481"
y="534.14423">data</tspan></text>
</g>
<rect
y="378.02576"
x="536.65326"
height="41.623135"
width="183.73491"
id="rect5364-7"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031623px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366-8"
y="410.18793"
x="543.98877"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="410.18793"
x="543.98877"
id="tspan5368-6"
sodipodi:role="line">tenant-Y</tspan></text>
<rect
y="437.83081"
x="541.25269"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7-9"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940903px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1-8"
y="481.8017"
x="515.09814"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="481.8017"
x="515.09814"
id="tspan5238-6-0-7-5"
sodipodi:role="line">mac addr</tspan></text>
<rect
y="321.49313"
x="329.5358"
height="31.121752"
width="49.338757"
id="rect6358-7"
style="opacity:0.6125;fill:#b1c76d;fill-opacity:0.46666667;fill-rule:evenodd;stroke:#ff1300;stroke-width:1.78210545;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.6125;fill:#3866a9;fill-opacity:0.46666667;stroke:none;font-family:Bitstream Vera Sans"
x="335.91418"
y="343.87155"
id="text6360-0"
sodipodi:linespacing="125%"><tspan
style="fill:#ff0000;fill-opacity:1;stroke:#000000;stroke-opacity:1"
sodipodi:role="line"
id="tspan6362-5"
x="335.91418"
y="343.87155">ryu</tspan></text>
<rect
y="379.229"
x="334.42374"
height="41.623135"
width="183.73491"
id="rect5364"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031623px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366"
y="411.39111"
x="341.75919"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="411.39111"
x="341.75919"
id="tspan5368"
sodipodi:role="line">tenant-X</tspan></text>
<rect
y="435.25519"
x="328.49124"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940903px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1"
y="479.06763"
x="314.59326"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="479.06763"
x="314.59326"
id="tspan5238-6-0-7"
sodipodi:role="line">mac addr</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,36.24517,333.72159)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-9"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-7"
y="599.82227"
x="132.07027"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="599.82227"
x="132.07027"
id="tspan5276-5"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-3"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="622.32227"
x="132.07027"
sodipodi:role="line">tenant-X</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,418.47684,336.17178)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-8"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-8"
y="602.27258"
x="514.30194"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="602.27258"
x="514.30194"
id="tspan5276-3"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-1"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="624.77258"
x="514.30194"
sodipodi:role="line">tenant-Y</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="346.08432"
y="702.96533"
id="text3311"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3313"
x="346.08432"
y="702.96533">drop</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="383.86325"
y="639.50299"
id="text3315"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3317"
x="383.86325"
y="639.50299"
style="font-size:22px;fill:#ff0000">X:block</tspan></text>
<rect
y="714.75317"
x="190.90842"
height="73.974197"
width="89.833496"
id="rect5232-3-7"
style="fill:#f2f2f2;stroke:#000000;stroke-width:0.56441098px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<rect
y="715.62457"
x="191.88971"
height="24.947573"
width="88.805061"
id="rect5234-1-0"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.65335387px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5236-0-4"
y="777.89038"
x="187.02913"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="777.89038"
x="187.02913"
id="tspan5238-7-8"
sodipodi:role="line">dst addr</tspan></text>
<rect
y="741.34027"
x="191.4227"
height="24.947573"
width="88.805061"
id="rect5234-2-4-0"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.65335387px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5236-9-8-4"
y="805.17816"
x="186.589"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="805.17816"
x="186.589"
id="tspan5238-6-0-2"
sodipodi:role="line">src addr</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5280-1-9"
y="832.46588"
x="203.75392"
style="font-size:15.80727291px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"
transform="scale(1.0611323,0.94238956)"><tspan
y="832.46588"
x="203.75392"
id="tspan5282-8-6"
sodipodi:role="line">data</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="206.42273"
y="703.9613"
id="text3373"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3375"
x="206.42273"
y="703.9613">pass</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 272.57822,610.10054 -95.55792,-1.2251"
id="path6078-6"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 464.91915,612.55074 -132.31096,-1.2251"
id="path6078-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-0"
d="m 270.11538,579.86992 0.1713,-126.73982"
style="fill:none;stroke:#05ff00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-8"
d="m 270.11603,628.79147 -77.01907,-1.48458"
style="fill:none;stroke:#05ff00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228-8-7"
d="m 337.67593,631.84027 35.90109,1.00644"
style="fill:none;stroke:#05ff00;stroke-width:4.11323547;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="-536.76379"
y="249.9476"
id="text4337"
sodipodi:linespacing="125%"
transform="matrix(0,-1,1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan4339"
x="-536.76379"
y="249.9476">forward</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="172.32462"
y="658.73059"
id="text4337-4"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4339-5"
x="172.32462"
y="658.73059">forward</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

View File

@ -0,0 +1,382 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
id="svg2993"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="internal-live-migration.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/gre-tunnel/ryu-2/doc/source/images/internal-live-migration.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
id="defs2995">
<marker
inkscape:stockid="Arrow1Send"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Send"
style="overflow:visible;">
<path
id="path4099"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
transform="scale(0.2) rotate(180) translate(6,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path4093"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path4087"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
</defs>
<sodipodi:namedview
inkscape:document-units="mm"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.62145905"
inkscape:cx="501.23978"
inkscape:cy="368.82901"
inkscape:current-layer="layer1"
id="namedview2997"
showgrid="false"
inkscape:window-width="1398"
inkscape:window-height="951"
inkscape:window-x="29"
inkscape:window-y="9"
inkscape:window-maximized="0" />
<metadata
id="metadata2999">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="fill:#cccccc;fill-rule:evenodd;stroke:#000000;stroke-width:0.87761605px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3002"
width="286.55447"
height="168.97145"
x="44.489792"
y="199.9754" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="147.26869"
y="220.12793"
id="text3004"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3006"
x="147.26869"
y="220.12793">compute-node</tspan></text>
<path
sodipodi:type="star"
style="fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3008"
sodipodi:sides="6"
sodipodi:cx="153.46948"
sodipodi:cy="266.63385"
sodipodi:r1="54.234737"
sodipodi:r2="46.968662"
sodipodi:arg1="2.1112158"
sodipodi:arg2="2.6348146"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 125.56594,313.13975 -26.323523,-47.41812 27.903543,-46.50591 54.22706,0.91223 26.32353,47.41812 -27.90354,46.50591 z"
transform="matrix(1.3064901,0,0,1.125237,-69.171744,-16.602549)" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="79.060043"
y="274.3848"
id="text3778"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3780"
x="79.060043"
y="274.3848">software</tspan><tspan
sodipodi:role="line"
x="79.060043"
y="304.3848"
id="tspan3782">bridge</tspan></text>
<rect
style="fill:#ffff00;fill-rule:evenodd;stroke:#000000;stroke-width:0.48876548px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3784"
width="67.248123"
height="51.989056"
x="97.399261"
y="75.517654" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="111.61417"
y="110.06398"
id="text3786"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3788"
x="111.61417"
y="110.06398">VM</tspan></text>
<path
style="fill:none;stroke:#800080;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 134.86712,124.01574 1.5502,108.51378"
id="path3790"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
sodipodi:type="arc"
style="fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3792"
sodipodi:cx="496.83807"
sodipodi:cy="479.78592"
sodipodi:rx="59.682579"
sodipodi:ry="53.481792"
d="m 556.52065,479.78592 a 59.682579,53.481792 0 1 1 -119.36516,0 59.682579,53.481792 0 1 1 119.36516,0 z" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 452.65748,441.8061 88.36122,79.06004"
id="path3802"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 457.30807,520.86614 534.81791,440.2559"
id="path3804"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 161.22047,330.19192 441.8061,472.81004"
id="path3806"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<rect
style="fill:#cccccc;fill-rule:evenodd;stroke:#000000;stroke-width:0.87941957px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3002-0"
width="287.73346"
height="168.97145"
x="726.01721"
y="193.08995" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="732.21796"
y="214.79266"
id="text3004-7"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3006-1"
x="732.21796"
y="214.79266">compute-node</tspan></text>
<path
sodipodi:type="star"
style="fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3008-3"
sodipodi:sides="6"
sodipodi:cx="153.46948"
sodipodi:cy="266.63385"
sodipodi:r1="54.234737"
sodipodi:r2="46.968662"
sodipodi:arg1="2.1112158"
sodipodi:arg2="2.6348146"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 125.56594,313.13975 -26.323523,-47.41812 27.903543,-46.50591 54.22706,0.91223 26.32353,47.41812 -27.90354,46.50591 z"
transform="matrix(1.3064901,0,0,1.125237,725.05414,-23.488005)" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="873.28589"
y="267.49936"
id="text3778-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3780-7"
x="873.28589"
y="267.49936">software</tspan><tspan
sodipodi:role="line"
x="873.28589"
y="297.49936"
id="tspan3782-6">bridge</tspan></text>
<rect
style="fill:#ffff00;fill-rule:evenodd;stroke:#000000;stroke-width:0.48876548px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3784-6"
width="67.248123"
height="51.989056"
x="897.82593"
y="77.933372" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="912.04083"
y="112.47969"
id="text3786-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3788-1"
x="912.04083"
y="112.47969">VM</tspan></text>
<path
style="fill:none;stroke:#800080;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 930.64321,127.98166 1.5502,94.56201"
id="path3790-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 889.81298,320.89075 553.42027,474.36023"
id="path3856"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="702.23914"
y="27.903547"
id="text3858"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3860"
x="702.23914"
y="27.903547">1. prepare destination VM </tspan><tspan
sodipodi:role="line"
x="702.23914"
y="57.903549"
id="tspan3862">ports are created</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="364.29623"
y="48.056103"
id="text3864"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3866"
x="364.29623"
y="48.056103">2. VM state are sent</tspan><tspan
sodipodi:role="line"
x="364.29623"
y="78.056099"
id="tspan3868" /></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="179.82283"
y="144.1683"
id="text3870"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3872"
x="179.82283"
y="144.1683">3. stop VM</tspan><tspan
sodipodi:role="line"
x="179.82283"
y="174.1683"
id="tspan3896">on the source</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="668.13483"
y="133.31693"
id="text3874"
sodipodi:linespacing="125%"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90"><tspan
sodipodi:role="line"
id="tspan3876"
x="668.13483"
y="133.31693">6. resume VM</tspan><tspan
sodipodi:role="line"
x="668.13483"
y="163.31693"
id="tspan3894">on the desitnation</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="710.59766"
y="476.47729"
id="text3878"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="710.59766"
y="476.47729"
id="tspan3882">4. hypervisor sends</tspan><tspan
sodipodi:role="line"
x="710.59766"
y="506.47729"
id="tspan4008">GARP pakcet to notify that</tspan><tspan
sodipodi:role="line"
x="710.59766"
y="536.47729"
id="tspan3886">the mac address is moved</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="84.450134"
y="556.10828"
id="text3888"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3890"
x="84.450134"
y="556.10828">5. switches re-learn mac-address and</tspan><tspan
sodipodi:role="line"
x="84.450134"
y="586.10828"
id="tspan3892">update mac-learing table</tspan></text>
<path
style="fill:none;stroke:#00ff00;stroke-width:10.62992126;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:5.31496063,5.31496063;marker-start:none;marker-end:url(#Arrow1Send);stroke-dashoffset:0"
d="m 175.17224,97.662401 713.09055,0"
id="path3898"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:7.08661413;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:21.25984252, 7.08661417;stroke-dashoffset:0;marker-end:url(#Arrow1Send)"
d="m 963.86077,185.73107 45.05523,72.41024 -25.74583,85.28317 -408.71559,148.03871"
id="path3034"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

View File

@ -0,0 +1,411 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
id="svg2994"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="internal-quantum-bootup.svg">
<defs
id="defs2996">
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path3845"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path3839"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
</defs>
<sodipodi:namedview
inkscape:document-units="mm"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.94549198"
inkscape:cx="528.29639"
inkscape:cy="372.04724"
inkscape:current-layer="layer1"
id="namedview2998"
showgrid="false"
inkscape:window-width="1523"
inkscape:window-height="1072"
inkscape:window-x="39"
inkscape:window-y="75"
inkscape:window-maximized="0" />
<metadata
id="metadata3000">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="fill:#00ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.59297168;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3003"
width="131.57176"
height="70.721771"
x="188.27751"
y="176.18547" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="110.88218"
y="154.5258"
id="text3773"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3775"
x="110.88218"
y="154.5258" /></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="200.65062"
y="206.13747"
id="text3777"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3779"
x="200.65062"
y="206.13747">Quantum</tspan><tspan
sodipodi:role="line"
x="200.65062"
y="236.13747"
id="tspan3781">Server</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3783"
width="112.23441"
height="70.315529"
x="717.44904"
y="145.77005" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="730.97125"
y="176.87114"
id="text3785"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3787"
x="730.97125"
y="176.87114">Ryu</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.10748124px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3789"
width="769.55322"
height="270.44434"
x="43.437778"
y="393.86905" />
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.9129163px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3791"
width="136.5744"
height="51.840321"
x="66.870529"
y="437.97333" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="95.267166"
y="471.77887"
id="text3793"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3795"
x="95.267166"
y="471.77887">ryu.ini</tspan></text>
<g
id="g3825"
transform="translate(416.71427,-6.3459026)">
<path
transform="matrix(1.042316,0,0,1.0647383,35.099087,16.081462)"
d="m 201.48104,585.88452 -47.30174,0.79573 -24.33999,-40.56665 22.96175,-41.36238 47.30175,-0.79572 24.33999,40.56665 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5539756"
sodipodi:arg1="1.0303768"
sodipodi:r2="40.97031"
sodipodi:r1="47.308437"
sodipodi:cy="545.31787"
sodipodi:cx="177.14105"
sodipodi:sides="6"
id="path3797"
style="fill:#00ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text3801"
y="603.46344"
x="192.01549"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="603.46344"
x="192.01549"
id="tspan3803"
sodipodi:role="line">OVS</tspan></text>
</g>
<path
sodipodi:type="arc"
style="fill:#00ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.77165353;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3805"
sodipodi:cx="384.03098"
sodipodi:cy="482.43958"
sodipodi:rx="125.75662"
sodipodi:ry="35.833878"
d="m 509.7876,482.43958 a 125.75662,35.833878 0 1 1 -251.51325,0 125.75662,35.833878 0 1 1 251.51325,0 z"
transform="matrix(0.7468437,0,0,0.70094681,178.67835,126.04697)" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="399.21118"
y="468.24127"
id="text3807"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3809"
x="399.21118"
y="468.24127">Ryu agent</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 204.25845,465.47229 163.93582,0.72099"
id="path3830"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="M 518.2067,442.54904 728.86992,219.25852"
id="path4462"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 521.02895,482.64718 78.74585,82.48553"
id="path4648"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="81.932907"
y="517.38977"
id="text4834"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4836"
x="81.932907"
y="517.38977">1.get IP address</tspan><tspan
sodipodi:role="line"
x="81.932907"
y="547.38977"
id="tspan4404">for ryu to access</tspan><tspan
sodipodi:role="line"
x="81.932907"
y="577.38977"
id="tspan4406">ovsdb</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="352.14709"
y="540.65802"
id="text4838"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="352.14709"
y="540.65802"
id="tspan4842">3. setup OVS</tspan><tspan
sodipodi:role="line"
x="352.14709"
y="570.65802"
id="tspan4200">to accept changes</tspan><tspan
sodipodi:role="line"
x="352.14709"
y="600.65802"
id="tspan4202">from Ryu.</tspan><tspan
sodipodi:role="line"
x="352.14709"
y="622.68402"
id="tspan4606"
style="font-size:16px">set-manager ptcp:&lt;port&gt;</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="387.24884"
y="216.63544"
id="text4846"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="387.24884"
y="216.63544"
id="tspan4850">4. register necesary infos</tspan><tspan
sodipodi:role="line"
x="387.24884"
y="246.63544"
id="tspan4854">dpid, ovsdb ip address</tspan><tspan
sodipodi:role="line"
x="387.24884"
y="276.63544"
id="tspan4177">(+ ip adress for tunnel</tspan><tspan
sodipodi:role="line"
x="387.24884"
y="306.63544"
id="tspan4616">if GRE is enabled)</tspan><tspan
sodipodi:role="line"
x="387.24884"
y="336.63544"
id="tspan4860" /></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="22.987768"
y="50.404736"
id="text4862"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4864"
x="22.987768"
y="50.404736"
style="font-size:48px">Node boot up</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.29350114;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="M 403.26785,443.90126 252.79812,248.84757"
id="path3027"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="51.824883"
y="268.15176"
id="text4192"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4194"
x="51.824883"
y="268.15176">2. Get address</tspan><tspan
sodipodi:role="line"
x="51.824883"
y="298.15176"
id="tspan4198">for Ryu REST</tspan><tspan
sodipodi:role="line"
x="51.824883"
y="328.15176"
id="tspan4196">via openstack RPC</tspan><tspan
sodipodi:role="line"
x="51.824883"
y="358.15176"
id="tspan4618">which is used for</tspan><tspan
sodipodi:role="line"
x="51.824883"
y="388.15176"
id="tspan4620">internal communication</tspan></text>
<rect
style="fill:none;stroke:#000000;stroke-width:0.78022003px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect4204"
width="125.13995"
height="47.363235"
x="192.15517"
y="72.159836" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="213.64537"
y="101.04301"
id="text4206"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4208"
x="213.64537"
y="101.04301">ryu.ini</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 250.66315,119.02308 0,58.17077"
id="path4210"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="11.634151"
y="124.31133"
id="text4396"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4398"
x="11.634151"
y="124.31133">get IP address </tspan><tspan
sodipodi:role="line"
x="11.634151"
y="154.31133"
id="tspan4400">for Ryu REST API</tspan><tspan
sodipodi:role="line"
x="11.634151"
y="184.31133"
id="tspan4402">on startup</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="M 779.48837,217.38456 672.66568,570.63981"
id="path4408"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="767.85419"
y="286.13184"
id="text4594"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="767.85419"
y="286.13184"
id="tspan4598">5. setup ovs</tspan><tspan
sodipodi:role="line"
x="767.85419"
y="316.13184"
id="tspan4602">to connect Ryu</tspan><tspan
sodipodi:role="line"
x="767.85419"
y="346.13184"
id="tspan3045"
style="font-size:16px">set-controller tcp:&lt;ip&gt;:&lt;port&gt;</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

View File

@ -0,0 +1,589 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
id="svg2985"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="internal-quantum-gre-flow-table.svg">
<defs
id="defs2987" />
<sodipodi:namedview
inkscape:document-units="mm"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.79307804"
inkscape:cx="527.69924"
inkscape:cy="380"
inkscape:current-layer="layer1"
id="namedview2989"
showgrid="false"
inkscape:window-width="1123"
inkscape:window-height="981"
inkscape:window-x="412"
inkscape:window-y="92"
inkscape:window-maximized="0" />
<metadata
id="metadata2991">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="fill:#00ff00;fill-rule:evenodd;stroke:#000000;stroke-width:0.83911663px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2994"
width="100.26987"
height="45.822945"
x="200.97739"
y="68.814583" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="209.40253"
y="98.370522"
id="text3015"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3017"
x="209.40253"
y="98.370522">table 0</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.87275267px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3815"
width="282.60529"
height="70.102013"
x="106.53268"
y="201.69412" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="120.8026"
y="226.28462"
id="text3817"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3819"
x="120.8026"
y="226.28462">in_port</tspan><tspan
sodipodi:role="line"
x="120.8026"
y="256.28461"
id="tspan3821">src mac</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="236.0596"
y="228.48"
id="text3823"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3825"
x="236.0596"
y="228.48">set_tunnel</tspan><tspan
sodipodi:role="line"
x="236.0596"
y="258.47998"
id="tspan3827">goto table 1</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.89289355px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3829"
width="279.90991"
height="35.005596"
x="106.53268"
y="299.23138" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="128.48639"
y="321.66245"
id="text3831"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3833"
x="128.48639"
y="321.66245">in_port</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="244.84109"
y="322.76013"
id="text3835"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3837"
x="244.84109"
y="322.76013">drop</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.01448965px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3839"
width="283.56137"
height="72.447266"
x="107.63037"
y="394.23053" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="115.31416"
y="421.67267"
id="text3841"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3843"
x="115.31416"
y="421.67267">in_port</tspan><tspan
sodipodi:role="line"
x="115.31416"
y="451.67267"
id="tspan3845">tunnel_id</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="235.36183"
y="431.71509"
id="text3847"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3849"
x="235.36183"
y="431.71509">goto table 2</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.08350325px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3851"
width="314.95236"
height="72.363762"
x="427.73532"
y="201.40605" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="430.98666"
y="226.61108"
id="text3853"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3855"
x="430.98666"
y="226.61108">tunnel_id</tspan><tspan
sodipodi:role="line"
x="430.98666"
y="256.61108"
id="tspan3857">dst mac</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="566.00195"
y="226.61107"
id="text3859"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3861"
x="566.00195"
y="226.61107">output(tunnel)</tspan><tspan
sodipodi:role="line"
x="566.00195"
y="256.61105"
id="tspan3863">goto table 2</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.74088061px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3865"
width="313.09958"
height="36.482754"
x="429.7594"
y="304.41724" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="435.37741"
y="326.50049"
id="text3867"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3869"
x="435.37741"
y="326.50049">tunnel_id</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="573.68579"
y="326.50049"
id="text3871"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3873"
x="573.68579"
y="326.50049">goto table 2</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.04436409px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3875"
width="268.13486"
height="66.304108"
x="771.08972"
y="260.98209" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="777.67578"
y="282.93579"
id="text3877"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3879"
x="777.67578"
y="282.93579">tunnel_id</tspan><tspan
sodipodi:role="line"
x="777.67578"
y="312.93579"
id="tspan3881">dst mac</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="902.81189"
y="284.03348"
id="text3883"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3885"
x="902.81189"
y="284.03348">output(vm)</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.85090744px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3887"
width="193.53958"
height="34.483585"
x="773.2851"
y="370.75067" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="780.96887"
y="394.89975"
id="text3889"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3891"
x="780.96887"
y="394.89975">tunnel_id</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="903.90961"
y="393.80206"
id="text3893"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3895"
x="903.90961"
y="393.80206">drop</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 226.96379,200.64229 0,70.61096"
id="path3897"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 228.2247,298.99327 0,34.04457"
id="path3899"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 229.57289,392.30061 0,75.65459"
id="path3914"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 556.06129,201.9032 0,71.87187"
id="path3916"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 556.06129,302.776 0,40.34912"
id="path3918"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 895.24607,263.68779 0,65.56732"
id="path3920"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 897.76789,372.12605 0,32.78365"
id="path3922"
inkscape:connector-curvature="0" />
<rect
style="fill:#00ff00;fill-rule:evenodd;stroke:#000000;stroke-width:0.83911663px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2994-6"
width="100.26987"
height="45.822945"
x="513.47406"
y="69.514412" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="521.89917"
y="99.070351"
id="text3015-4"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3017-9"
x="521.89917"
y="99.070351">table 1</tspan></text>
<rect
style="fill:#00ff00;fill-rule:evenodd;stroke:#000000;stroke-width:0.83911663px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2994-4"
width="100.26987"
height="45.822945"
x="840.04974"
y="70.775322" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="848.47491"
y="100.33126"
id="text3015-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3017-3"
x="848.47491"
y="100.33126">table 2</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="834.72241"
y="27.897627"
id="text3989"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3991"
x="834.72241"
y="27.897627">Local out</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="504.36398"
y="32.941265"
id="text3993"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3995"
x="504.36398"
y="32.941265">tunnel out</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="204.26741"
y="30.419449"
id="text3997"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3999"
x="204.26741"
y="30.419449">src table</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 6.3045498,176.685 1036.4679502,0"
id="path4001"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 97.132777,11.505798 0,520.755812"
id="path4003"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 10.08728,374.64787 750.24142,0"
id="path4005"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="6.521821"
y="97.464943"
id="text4007"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4009"
x="6.521821"
y="97.464943">in port</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="15.13092"
y="269.99234"
id="text4011"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4013"
x="15.13092"
y="269.99234">vm</tspan><tspan
sodipodi:role="line"
x="15.13092"
y="299.99234"
id="tspan4021">port</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="6.3045492"
y="442.737"
id="text4015"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4017"
x="6.3045492"
y="442.737">tunnel</tspan><tspan
sodipodi:role="line"
x="6.3045492"
y="472.737"
id="tspan4019">port</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 407.27392,12.766708 0,511.929442"
id="path4023"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 762.85052,11.505798 0,520.755812"
id="path4025"
inkscape:connector-curvature="0" />
<g
id="g3102"
transform="translate(-107.17735,-524.53854)">
<rect
y="637.55701"
x="244.02382"
height="36.223633"
width="175.15869"
id="rect3027"
style="fill:#00ffff;stroke:#000000;stroke-width:1.35430717px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text3019"
y="661.76013"
x="252.12903"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="661.76013"
x="252.12903"
id="tspan3021"
sodipodi:role="line">match</tspan></text>
<text
sodipodi:linespacing="125%"
id="text3023"
y="661.95551"
x="339.7807"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="661.95551"
x="339.7807"
id="tspan3025"
sodipodi:role="line">action</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3089"
d="m 334.14114,636.91714 0,37.82729"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
id="g3102-3"
transform="translate(219.41449,-525.79946)">
<rect
y="641.33972"
x="244.02382"
height="36.223633"
width="175.15869"
id="rect3027-5"
style="fill:#00ffff;stroke:#000000;stroke-width:1.35430717px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text3019-1"
y="666.58649"
x="252.12903"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="666.58649"
x="252.12903"
id="tspan3021-2"
sodipodi:role="line">match</tspan></text>
<text
sodipodi:linespacing="125%"
id="text3023-3"
y="665.73822"
x="339.7807"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="665.73822"
x="339.7807"
id="tspan3025-4"
sodipodi:role="line">action</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3089-8"
d="m 334.14114,640.69987 0,37.82729"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
id="g3102-3-5"
transform="translate(552.29471,-524.53854)">
<rect
y="641.33972"
x="244.02382"
height="36.223633"
width="175.15869"
id="rect3027-5-6"
style="fill:#00ffff;stroke:#000000;stroke-width:1.35430717px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text3019-1-1"
y="666.58649"
x="252.12903"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="666.58649"
x="252.12903"
id="tspan3021-2-7"
sodipodi:role="line">match</tspan></text>
<text
sodipodi:linespacing="125%"
id="text3023-3-5"
y="665.73822"
x="339.7807"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="665.73822"
x="339.7807"
id="tspan3025-4-1"
sodipodi:role="line">action</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3089-8-8"
d="m 334.14114,640.69987 0,37.82729"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

View File

@ -0,0 +1,481 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
id="svg2985"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="internal-quantum-instance-create.svg">
<sodipodi:namedview
inkscape:document-units="mm"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.87"
inkscape:cx="495.53846"
inkscape:cy="380"
inkscape:current-layer="layer1"
id="namedview2989"
showgrid="false"
inkscape:window-width="1544"
inkscape:window-height="1073"
inkscape:window-x="35"
inkscape:window-y="32"
inkscape:window-maximized="0" />
<defs
id="defs2987">
<linearGradient
id="linearGradient5384"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop5386" />
</linearGradient>
<linearGradient
id="linearGradient5358"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop5360" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path4800"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="Arrow1Mend-0"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4800-2"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend-03"
orient="auto"
refY="0"
refX="0"
id="Arrow1Mend-03"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5472"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="stroke:#00ff00;stroke-width:1pt;fill:#00ff00;fill-rule:evenodd"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend-0L"
orient="auto"
refY="0"
refX="0"
id="Arrow1Mend-0L"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path3835"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="stroke:#999999;stroke-width:1pt;fill:#999999;fill-rule:evenodd"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend-0L"
orient="auto"
refY="0"
refX="0"
id="Arrow1Mend-0L-5"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path3835-3"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill:#999999;fill-rule:evenodd;stroke:#999999;stroke-width:1pt"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend-03"
orient="auto"
refY="0"
refX="0"
id="Arrow1Mend-03-7"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5472-9"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
</defs>
<metadata
id="metadata2991">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.96969086px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2994"
width="674.27905"
height="257.23532"
x="172.72917"
y="353.05884" />
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.60284865px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2996"
width="123.39545"
height="72.787445"
x="265.09756"
y="61.223278" />
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.44750994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2998"
width="64.270126"
height="55.630074"
x="723.80182"
y="72.612694" />
<path
sodipodi:type="arc"
style="fill:#00ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.45036435;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3000"
sodipodi:cx="348.4295"
sodipodi:cy="527.60168"
sodipodi:rx="96.219025"
sodipodi:ry="43.006989"
d="m 444.64853,527.60168 a 96.219025,43.006989 0 1 1 -192.43805,0 96.219025,43.006989 0 1 1 192.43805,0 z"
transform="matrix(1.1341678,0,0,0.61951977,-41.122543,79.338007)" />
<path
sodipodi:type="arc"
style="fill:#00ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.95329165;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3002"
sodipodi:cx="368.8396"
sodipodi:cy="658.80945"
sodipodi:rx="107.88194"
sodipodi:ry="34.259804"
d="m 476.72154,658.80945 a 107.88194,34.259804 0 1 1 -215.76388,0 107.88194,34.259804 0 1 1 215.76388,0 z"
transform="matrix(0.75548852,0,0,0.5533406,63.453465,144.36077)" />
<g
style="fill-rule:evenodd;stroke-width:28.22200012;stroke-linejoin:round;visibility:visible"
transform="matrix(1.0633793,0,0,1.0513456,522.96619,-119.46046)"
id="g3825">
<path
transform="matrix(1.042316,0,0,1.0647383,35.099087,16.081462)"
d="m 201.48104,585.88452 -47.30174,0.79573 -24.33999,-40.56665 22.96175,-41.36238 47.30175,-0.79572 24.33999,40.56665 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5539756"
sodipodi:arg1="1.0303768"
sodipodi:r2="40.97031"
sodipodi:r1="47.308437"
sodipodi:cy="545.31787"
sodipodi:cx="177.14105"
sodipodi:sides="6"
id="path3797"
style="fill:#00ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text3801"
y="603.46344"
x="192.01549"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="603.46344"
x="192.01549"
id="tspan3803"
sodipodi:role="line">OVS</tspan></text>
</g>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="15.952232"
y="33.356243"
id="text3987"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3989"
x="15.952232"
y="33.356243">Instance Creation</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="267.49033"
y="412.46277"
id="text3991"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3993"
x="267.49033"
y="412.46277">nova-compute</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="285.68054"
y="516.57892"
id="text4763"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4765"
x="285.68054"
y="516.57892">vid driver</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 21.624353,404.0288 223.076917,0"
id="path4767"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 308.24681,380.35633 0,-243.95605"
id="path4769"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 338.92674,133.6486 0,249.45055"
id="path4771"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 424.92105,510.62221 278.06594,-1"
id="path4773"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 388.65732,105.1277 329.67033,0"
id="path4775"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="269.97598"
y="90.841988"
id="text4777"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4779"
x="269.97598"
y="90.841988">quantum</tspan><tspan
sodipodi:role="line"
x="269.97598"
y="120.84199"
id="tspan4781">server</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="737.00897"
y="110.64419"
id="text4783"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4785"
x="737.00897"
y="110.64419">ryu</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
d="m 337.00896,434.01874 -1.0989,56.04396"
id="path4771-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="18.954023"
y="384.60022"
id="text5255"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5257"
x="18.954023"
y="384.60022">1.create instance</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="130.60919"
y="270.91058"
id="text5259"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5261"
x="130.60919"
y="270.91058">2.create port</tspan><tspan
sodipodi:role="line"
x="130.60919"
y="300.91058"
id="tspan3068">on network</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="346.48276"
y="172.48529"
id="text5263"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5265"
x="346.48276"
y="172.48529">5. uuid for the created port</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="364.95401"
y="465.60022"
id="text5267"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5269"
x="364.95401"
y="465.60022">6.plug</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="425.22986"
y="536.60022"
id="text5271"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5273"
x="425.22986"
y="536.60022">7. create port</tspan><tspan
sodipodi:role="line"
x="425.22986"
y="566.60022"
id="tspan3050">store port uuid and</tspan><tspan
sodipodi:role="line"
x="425.22986"
y="596.60022"
id="tspan3052">mac address to ovsdb</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="398.90805"
y="83.600227"
id="text5275"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5277"
x="398.90805"
y="83.600227">4. (netork uuid, port uuid)</tspan></text>
<path
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#00ff00;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend-03)"
d="m 728.95402,461.60023 0,-334"
id="path5279"
inkscape:connector-curvature="0" />
<path
inkscape:connector-curvature="0"
id="path3027"
d="m 753.95402,125.60023 0,337"
style="fill:none;stroke:#999999;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend-0L)" />
<text
sodipodi:linespacing="125%"
id="text4001"
y="258.30136"
x="415.05746"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#00ff00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
id="tspan4009"
y="258.30136"
x="415.05746"
sodipodi:role="line">8. OFPPortStatus</tspan><tspan
id="tspan4013"
y="288.30136"
x="415.05746"
sodipodi:role="line">OVS notifies port creation</tspan><tspan
id="tspan4015"
y="318.30136"
x="415.05746"
sodipodi:role="line">via OpenFlow protocol</tspan></text>
<text
sodipodi:linespacing="125%"
id="text4027"
y="320.60022"
x="784.95404"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#00ff00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="320.60022"
x="784.95404"
id="tspan4029"
sodipodi:role="line">10. setup flow entries</tspan></text>
<path
style="fill:#00ff00;fill-opacity:1;stroke:#00ff00;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend-03)"
d="m 778.95402,127.27149 0,334"
id="path5279-1"
inkscape:connector-curvature="0" />
<text
sodipodi:linespacing="125%"
id="text4017"
y="164.49678"
x="759.51727"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#999999;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="164.49678"
x="759.51727"
id="tspan4019"
sodipodi:role="line">9. query ovsdb</tspan><tspan
id="tspan4021"
y="194.49678"
x="759.51727"
sodipodi:role="line">get infos, port uuid</tspan><tspan
id="tspan4025"
y="224.49678"
x="759.51727"
sodipodi:role="line">and mac address</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="32.183903"
y="75.128967"
id="text3060"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3062"
x="32.183903"
y="75.128967">3. quantum server</tspan><tspan
sodipodi:role="line"
x="32.183903"
y="105.12897"
id="tspan3064">allocates uuid to</tspan><tspan
sodipodi:role="line"
x="32.183903"
y="135.12897"
id="tspan3066">the created port</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

View File

@ -0,0 +1,236 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
id="svg4866"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="internal-quantum-network-creation.svg">
<defs
id="defs4868">
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="Arrow1Mend"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path3845"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="marker4887"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4889"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="marker4891"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4893"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="marker4891-6"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4893-4"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
</defs>
<sodipodi:namedview
inkscape:document-units="mm"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.91"
inkscape:cx="428.97898"
inkscape:cy="306.18903"
inkscape:current-layer="layer1"
id="namedview4870"
showgrid="false"
inkscape:window-width="1367"
inkscape:window-height="1036"
inkscape:window-x="188"
inkscape:window-y="77"
inkscape:window-maximized="0" />
<metadata
id="metadata4872">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="fill:#00ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.59297168;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3003"
width="131.57176"
height="70.721771"
x="245.45879"
y="226.30139" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="257.83188"
y="256.25342"
id="text3777"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3779"
x="257.83188"
y="256.25342">Quantum</tspan><tspan
sodipodi:role="line"
x="257.83188"
y="286.25342"
id="tspan3781">Server</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3783"
width="112.23441"
height="70.315529"
x="595.88733"
y="223.039" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="609.40955"
y="254.14008"
id="text3785"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3787"
x="609.40955"
y="254.14008">Ryu</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="21.212479"
y="59.017372"
id="text4862"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4864"
x="21.212479"
y="59.017372"
style="font-size:48px">Network creation</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#marker4891)"
d="m 60.659341,263.08349 181.318679,0"
id="path5040"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#marker4891)"
d="m 377.46247,266.3802 217.58242,1.0989"
id="path5040-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="22.197802"
y="329.01755"
id="text5778"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5780"
x="22.197802"
y="329.01755">1. create network</tspan></text>
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.99661446;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect5861"
width="246.50816"
height="81.791458"
x="208.7912"
y="83.182137" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="218.68132"
y="108.92966"
id="text5863"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5865"
x="218.68132"
y="108.92966">quantum db</tspan><tspan
sodipodi:role="line"
x="218.68132"
y="138.92966"
id="tspan5867">(network uuid, key)</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#marker4891-6)"
d="m 296.7033,224.31426 -1.0989,-57.14285"
id="path5869"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="315.38461"
y="204.53406"
id="text6059"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6061"
x="315.38461"
y="204.53406">2. allocate key</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="381.31866"
y="330.90768"
id="text6083"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6085"
x="381.31866"
y="330.90768">3. tell (network uuid, key)</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

View File

@ -0,0 +1,623 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1052.3622"
height="744.09448"
id="svg2"
version="1.1"
inkscape:version="0.48.1 r9760"
sodipodi:docname="logical-view.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/scarab-2/doc/source/images/logical-view.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
id="defs4">
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path5567"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mstart"
style="overflow:visible">
<path
id="path5564"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lend"
style="overflow:visible;">
<path
id="path5579"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) rotate(180) translate(1,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path5561"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path5558"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8) translate(12.5,0)" />
</marker>
<inkscape:path-effect
effect="skeletal"
id="path-effect5339"
is_visible="true"
pattern="M 0,0 0,10 10,5 z"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient5242"
osb:paint="solid">
<stop
style="stop-color:#7fff2a;stop-opacity:1;"
offset="0"
id="stop5244" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 372.04724 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="1052.3622 : 372.04724 : 1"
inkscape:persp3d-origin="526.18109 : 248.03149 : 1"
id="perspective3009" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.1517355"
inkscape:cx="527.91764"
inkscape:cy="392.97266"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1375"
inkscape:window-height="1083"
inkscape:window-x="18"
inkscape:window-y="2"
inkscape:window-maximized="0"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-308.2677)">
<rect
style="opacity:0.325;fill:#aade87;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.69828618px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5357-9"
width="325.40015"
height="193.2157"
x="634.08337"
y="652.44501" />
<rect
style="opacity:0.325;fill:#aade87;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.70321101px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5357"
width="325.3952"
height="195.95367"
x="24.654757"
y="649.00568" />
<rect
style="fill:#5555ff;fill-rule:evenodd;stroke:#000000;stroke-width:0.33128864px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3772"
width="111.84713"
height="36.141087"
x="334.73782"
y="438.67487" />
<path
sodipodi:type="star"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.54468914,0,0,0.43300157,8.893779,516.39652)" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="60.610229"
y="772.59448"
id="text5274"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276"
x="60.610229"
y="772.59448"
style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan></text>
<path
sodipodi:type="star"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-9"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.54468914,0,0,0.43300157,224.04537,515.72527)" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="274.87598"
y="774.58069"
id="text5274-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-3"
x="274.87598"
y="774.58069"
style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan></text>
<path
sodipodi:type="star"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-3"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.54468914,0,0,0.43300157,93.490245,515.06779)" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1.0;stroke:none;font-family:Bitstream Vera Sans"
x="144.32086"
y="773.92322"
id="text5274-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-1"
x="144.32086"
y="773.92322"
style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1.0;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="215.02756"
y="766.42914"
id="text5329"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="215.02756"
y="766.42914"
id="tspan5333">...</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 168.30708,671.18896 0,66.437"
id="path5353"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 78.83869,737.62585 0,-38.97615 227.75678,0 0,38.97615"
id="path5355"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="34.547245"
y="835.06689"
id="text5359"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5361"
x="34.547245"
y="835.06689">Tenant-X</tspan></text>
<path
sodipodi:type="star"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-31"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.54468914,0,0,0.43300157,618.32488,517.09536)" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="670.04132"
y="773.29333"
id="text5274-96"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-7"
x="670.04132"
y="773.29333"
style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan></text>
<path
sodipodi:type="star"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-9-5"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.54468914,0,0,0.43300157,833.47647,516.42411)" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="884.30707"
y="775.27954"
id="text5274-8-2"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-3-9"
x="884.30707"
y="775.27954"
style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan></text>
<path
sodipodi:type="star"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-3-1"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.54468914,0,0,0.43300157,702.92135,515.76663)" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="753.75195"
y="774.62207"
id="text5274-9-2"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-1-4"
x="753.75195"
y="774.62207"
style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="824.45868"
y="767.12799"
id="text5329-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="824.45868"
y="767.12799"
id="tspan5333-7">...</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 777.73818,671.8878 0,66.437"
id="path5353-5"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 688.26979,738.32469 0,-38.97615 227.75678,0 0,38.97615"
id="path5355-0"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="643.97833"
y="835.76575"
id="text5359-5"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5361-5"
x="643.97833"
y="835.76575">Tenant-Y</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5479"
y="728.68225"
x="471.24713"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="728.68225"
x="471.24713"
id="tspan5481"
sodipodi:role="line">...</tspan></text>
<path
inkscape:connector-curvature="0"
id="path5485"
d="m 164.66453,628.43991 0,-75.7058 612.28244,0 0,78.3467"
style="fill:none;stroke:#000000;stroke-width:3.49188328;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 389.76378,472.76376 0,77.95276 2.65748,0"
id="path5512"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="339.0433"
y="463.04724"
id="text5514"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5516"
x="339.0433"
y="463.04724">gateway</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 388.87795,387.72439 0,49.6063 0,0"
id="path5518"
inkscape:connector-curvature="0" />
<path
sodipodi:type="star"
style="opacity:0.325;fill:#5555ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5543"
sodipodi:sides="6"
sodipodi:cx="349.90158"
sodipodi:cy="64.665352"
sodipodi:r1="34.501789"
sodipodi:r2="28.966175"
sodipodi:arg1="-1.0612041"
sodipodi:arg2="-0.62241192"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 366.73229,34.547239 17.6677,29.634878 -16.83071,30.118112 -34.49841,0.483235 -17.66769,-29.634877 16.8307,-30.118112 z"
transform="translate(39.862204,292.0551)" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="303.83856"
y="355.83463"
id="text5545"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5547"
x="303.83856"
y="355.83463">public internet</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="22.857574"
y="1011.2186"
id="text5549"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5551"
x="22.857574"
y="1011.2186">Logical network view</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:8.48272705;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
d="m 361.69128,800.92899 254.92112,0"
id="path8990"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="380.34985"
y="560.3197"
id="text9936"
sodipodi:linespacing="125%"
transform="translate(0,308.2677)"><tspan
sodipodi:role="line"
id="tspan9938"
x="380.34985"
y="560.3197">L2-level</tspan><tspan
sodipodi:role="line"
x="380.34985"
y="610.3197"
id="tspan9940">segregation</tspan></text>
<a
style="fill:#ff2ad4;fill-opacity:1"
transform="matrix(1.7591674,0,0,1.2473597,-134.20474,-124.3429)"
id="a4003">
<rect
style="fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.48250109px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2985"
width="124.30867"
height="49.962151"
x="140.79437"
y="588.12579" />
</a>
<text
sodipodi:linespacing="125%"
id="text4006"
y="656.40906"
x="132.9359"
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="656.40906"
x="132.9359"
id="tspan4008"
sodipodi:role="line">gateway</tspan></text>
<rect
style="fill:#ffcc00;fill-rule:evenodd;stroke:#000000;stroke-width:0.72736639px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3065"
width="89.108681"
height="17.268652"
x="231.68684"
y="641.18787" />
<text
xml:space="preserve"
style="font-size:14px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffcc00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="233.42279"
y="654.40955"
id="text3067"
sodipodi:linespacing="125%"><tspan
style="fill:#000000;fill-opacity:1"
sodipodi:role="line"
x="233.42279"
y="654.40955"
id="tspan3071">dhcp server</tspan></text>
<text
sodipodi:linespacing="125%"
id="text3070"
y="665.98871"
x="296.07492"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="665.98871"
x="296.07492"
id="tspan3072"
sodipodi:role="line" /></text>
<a
style="fill:#ff2ad4;fill-opacity:1"
transform="matrix(1.7591674,0,0,1.1959526,459.74622,-92.580367)"
id="a4003-7">
<rect
style="fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.48250109px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect2985-4"
width="124.30867"
height="49.962151"
x="140.79437"
y="588.12579" />
</a>
<text
sodipodi:linespacing="125%"
id="text4006-1"
y="655.35114"
x="726.88684"
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="655.35114"
x="726.88684"
id="tspan4008-1"
sodipodi:role="line">gateway</tspan></text>
<rect
style="fill:#ffcc00;fill-rule:evenodd;stroke:#000000;stroke-width:0.72736639px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3065-4"
width="89.108681"
height="17.268652"
x="824.59692"
y="642.11475" />
<text
xml:space="preserve"
style="font-size:14px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffcc00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="826.33289"
y="655.33643"
id="text3067-1"
sodipodi:linespacing="125%"><tspan
style="fill:#000000;fill-opacity:1"
sodipodi:role="line"
x="826.33289"
y="655.33643"
id="tspan3071-7">dhcp server</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="143.30341"
y="633.5274"
id="text5487"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5489"
x="143.30341"
y="633.5274">NAT</tspan></text>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="754.6554"
y="635.15948"
id="text5487-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5489-6"
x="754.6554"
y="635.15948">NAT</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

View File

@ -0,0 +1,759 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1052.3622"
height="744.09448"
id="svg2"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="mac-learning.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/scarab-2/doc/source/images/mac-learning.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.8162589"
inkscape:cx="376.6376"
inkscape:cy="324.99839"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1345"
inkscape:window-height="1004"
inkscape:window-x="54"
inkscape:window-y="32"
inkscape:window-maximized="0"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false"
inkscape:snap-bbox="false"
inkscape:snap-page="false"
showguides="true"
inkscape:guide-bbox="true" />
<defs
id="defs4">
<marker
style="overflow:visible;"
id="Arrow1Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Send">
<path
transform="scale(0.2) rotate(180) translate(6,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path4154" />
</marker>
<marker
inkscape:stockid="Arrow2Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Mend"
style="overflow:visible;">
<path
id="path4166"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lstart"
style="overflow:visible">
<path
id="path5113"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) translate(1,0)" />
</marker>
<linearGradient
id="linearGradient6493"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop6495" />
</linearGradient>
<linearGradient
id="linearGradient5313"
osb:paint="solid">
<stop
style="stop-color:#5555ff;stop-opacity:1;"
offset="0"
id="stop5315" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path5567"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mstart"
style="overflow:visible">
<path
id="path5564"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lend"
style="overflow:visible;">
<path
id="path5579"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) rotate(180) translate(1,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path5561"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path5558"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8) translate(12.5,0)" />
</marker>
<inkscape:path-effect
effect="skeletal"
id="path-effect5339"
is_visible="true"
pattern="M 0,0 0,10 10,5 z"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient5242"
osb:paint="solid">
<stop
style="stop-color:#7fff2a;stop-opacity:1;"
offset="0"
id="stop5244" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 372.04724 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="1052.3622 : 372.04724 : 1"
inkscape:persp3d-origin="526.18109 : 248.03149 : 1"
id="perspective3009" />
<marker
inkscape:stockid="Arrow1LendM"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendM"
style="overflow:visible;">
<path
id="path4159"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1LendF"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendF"
style="overflow:visible;">
<path
id="path4585"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend6"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend6"
style="overflow:visible;">
<path
id="path5404"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1MendN"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1MendN"
style="overflow:visible;">
<path
id="path5645"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient5349-6"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83990127,0,0,1.846462,-201.58875,-629.6685)" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.2042654,0,0,2.6602952,-344.10309,-1384.9447)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079-9"
xlink:href="#linearGradient5343-7-4"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-4">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-1" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-6" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Lenda"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lenda"
style="overflow:visible;">
<path
id="path5800"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#05ff00;stroke-width:1.0pt;fill:#05ff00;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lendan"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lendan"
style="overflow:visible;">
<path
id="path5943"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;marker-start:none;stroke:#059500;stroke-width:1.0pt;fill:#059500"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient6508"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.963808,0,0,2.0387048,132.33185,-1087.5143)"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621" />
<marker
inkscape:stockid="Arrow2MendC"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2MendC"
style="overflow:visible;">
<path
id="path4651"
style="stroke-linejoin:round;font-size:12.0;fill-rule:evenodd;stroke:#05ff00;stroke-width:0.62500000;fill:#05ff00"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(0.6) rotate(180) translate(0,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend4"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend4"
style="overflow:visible;">
<path
id="path6229"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#0000ff;stroke-width:1.0pt;fill:#0000ff;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-308.2677)">
<path
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 123.73525,606.64067 0,-137.21137"
id="path6078"
inkscape:connector-curvature="0" />
<rect
style="opacity:0.5;fill:url(#linearGradient6508);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.23578811;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3065-4"
width="417.50256"
height="287.14444"
x="-912.29431"
y="38.488934"
transform="matrix(0,-1,1,0,0,0)" />
<a
id="a4003"
transform="matrix(1,0,0,0.81896683,-0.728701,296.31497)"
style="fill:#ff2ad4;fill-opacity:1" />
<path
style="opacity:0.275;fill:#dd6de5;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#ff0000;stroke-width:4.27355194;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.13677602, 2.13677602;stroke-dashoffset:0"
d=""
id="path4088"
inkscape:connector-curvature="0"
transform="translate(0,308.2677)" />
<rect
y="607.22595"
x="502.84055"
height="31.143024"
width="48.134926"
id="rect6358-7"
style="opacity:0.6125;fill:#b1c76d;fill-opacity:0.46666667;fill-rule:evenodd;stroke:#ff1300;stroke-width:1.76083171;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.6125;fill:#3866a9;fill-opacity:0.46666667;stroke:none;font-family:Bitstream Vera Sans"
x="509.22961"
y="629.61499"
id="text6360-0"
sodipodi:linespacing="125%"><tspan
style="fill:#ff0000;fill-opacity:1;stroke:#000000;stroke-opacity:1"
sodipodi:role="line"
id="tspan6362-5"
x="509.22961"
y="629.61499">ryu</tspan></text>
<rect
y="573.9325"
x="74.458321"
height="295.24646"
width="233.97559"
id="rect5351-5"
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:3.5089395px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5353-2"
y="854.9986"
x="83.609177"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="854.9986"
x="83.609177"
id="tspan5355-6"
sodipodi:role="line">nova-compute</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,33.246065,517.64778)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274"
y="783.74854"
x="129.07115"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="783.74854"
x="129.07115"
id="tspan5276"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="806.24854"
x="129.07115"
sodipodi:role="line">tenant-X</tspan></text>
<path
transform="matrix(1.0086434,0,0,0.68923037,-136.00519,452.12072)"
d="m 289.53315,248.36246 -14.42324,24.98178 -28.84647,0 -14.42324,-24.98178 14.42324,-24.98178 28.84647,0 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="0.52359878"
sodipodi:arg1="0"
sodipodi:r2="24.981781"
sodipodi:r1="28.846476"
sodipodi:cy="248.36246"
sodipodi:cx="260.68668"
sodipodi:sides="6"
id="path5523-9"
style="opacity:0.5;fill:#2ad4ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5525-6"
y="630.38098"
x="106.25084"
style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="630.38098"
x="106.25084"
id="tspan5527-5"
sodipodi:role="line">OVS</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path6228"
d="m 125.69434,759.67428 0.17857,-108.00709"
style="fill:none;stroke:#05ff00;stroke-width:8.14929199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2MendC)" />
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="58.133625"
y="897.9939"
id="text3193"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3195"
x="58.133625"
y="897.9939">physical host</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="33.077721"
y="977.57361"
id="text6045"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="33.077721"
y="977.57361"
id="tspan6049">associates mac address</tspan><tspan
sodipodi:role="line"
x="33.077721"
y="1027.5736"
id="tspan3090">to network uuid of OVS port</tspan></text>
<g
id="g6280"
transform="translate(-137.65551,-208.28264)">
<g
transform="matrix(1,0,0,0.71409652,-474.38063,289.09459)"
id="g5864-4">
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.79479539px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5858-6"
width="26.969246"
height="59.086094"
x="722.52655"
y="601.5531" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="611.76575"
y="-729.16479"
id="text5860-69"
sodipodi:linespacing="125%"
transform="matrix(0,1,-1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5862-8"
x="611.76575"
y="-729.16479">eth</tspan></text>
</g>
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#05ff00;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="459.41306"
y="697.02533"
id="text6080"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6082"
x="459.41306"
y="697.02533" /></text>
<flowRoot
xml:space="preserve"
id="flowRoot6500"
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Bitstream Vera Sans;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
id="flowRegion6502"><rect
id="rect6504"
width="978.85608"
height="519.44305"
x="-91.882614"
y="261.40448" /></flowRegion><flowPara
id="flowPara6506" /></flowRoot> <text
sodipodi:linespacing="125%"
id="text4810"
y="754.66254"
x="144.56197"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="754.66254"
x="144.56197"
id="tspan4812"
sodipodi:role="line">send packet</tspan></text>
<path
inkscape:connector-curvature="0"
id="path4814"
d="m 153.13769,623.1046 335.67781,0"
style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Lend)" />
<g
id="g5284-2"
transform="matrix(0.7624367,0,0,0.67711861,-318.80448,357.75715)">
<rect
style="fill:#f2f2f2;stroke:#000000;stroke-width:0.78552711px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5232-3"
width="117.8242"
height="109.24851"
x="628.36981"
y="431.12851" />
<rect
style="fill:#b3b3b3;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.90931469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5234-1"
width="116.47533"
height="36.843727"
x="629.65686"
y="432.41547" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="638.27789"
y="458.18796"
id="text5236-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5238-7"
x="638.27789"
y="458.18796">dst addr</tspan></text>
<rect
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.90931469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5234-2-4"
width="116.47533"
height="36.843727"
x="629.04431"
y="470.39359" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="637.66534"
y="496.16611"
id="text5236-9-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5238-6-0"
x="637.66534"
y="496.16611">src addr</tspan></text>
<text
xml:space="preserve"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="661.55481"
y="534.14423"
id="text5280-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5282-8"
x="661.55481"
y="534.14423">data</tspan></text>
</g>
<text
sodipodi:linespacing="125%"
id="text5340"
y="589.2738"
x="145.78708"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="589.2738"
x="145.78708"
id="tspan5342"
sodipodi:role="line">packet in event</tspan></text>
<rect
y="664.97241"
x="507.73914"
height="41.623135"
width="183.73491"
id="rect5364"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031623px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366"
y="697.13458"
x="515.07465"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="697.13458"
x="515.07465"
id="tspan5368"
sodipodi:role="line">tenant-X</tspan></text>
<rect
y="720.99866"
x="511.80664"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7"
style="fill:#05ff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940903px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1"
y="782.27899"
x="487.34879"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="782.27899"
x="487.34879"
id="tspan5238-6-0-7"
sodipodi:role="line">mac addr</tspan></text>
<rect
y="664.02014"
x="720.37482"
height="41.623135"
width="183.73491"
id="rect5364-7"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.03031622999999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5366-8"
y="696.18231"
x="727.71033"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="696.18231"
x="727.71033"
id="tspan5368-6"
sodipodi:role="line">tenant-Y</tspan></text>
<rect
y="723.8252"
x="724.97424"
height="24.921518"
width="96.129616"
id="rect5234-2-4-7-9"
style="fill:#00fffc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.67940902999999997px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
transform="scale(1.0611323,0.94238956)"
sodipodi:linespacing="125%"
id="text5236-9-8-1-8"
y="785.27838"
x="688.23566"
style="font-size:17.24429703px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="785.27838"
x="688.23566"
id="tspan5238-6-0-7-5"
sodipodi:role="line">mac addr</tspan></text>
<path
transform="translate(0,308.2677)"
inkscape:connector-curvature="0"
id="path5536"
d="M 245.0203,381.46444 C 396.93288,431.6936 504.74182,428.0183 504.74182,428.0183"
style="stroke-linejoin:miter;marker-end:url(#Arrow1Lend4);stroke-opacity:1;marker-start:none;stroke-dashoffset:0;stroke:#0000ff;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:15, 5;stroke-width:5;fill:none" />
<text
sodipodi:linespacing="125%"
id="text6170"
y="791.41553"
x="344.25351"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="791.41553"
x="344.25351"
id="tspan6172"
sodipodi:role="line">associate</tspan><tspan
id="tspan6174"
y="841.41553"
x="344.25351"
sodipodi:role="line">mac address to</tspan><tspan
id="tspan6176"
y="891.41553"
x="344.25351"
sodipodi:role="line">network uuid</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

View File

@ -0,0 +1,903 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1052.3622"
height="744.09448"
id="svg2"
version="1.1"
inkscape:version="0.48.1 r9760"
sodipodi:docname="minimul-setup.svg"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/scarab-2/doc/source/images/minimul-setup.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.81601008"
inkscape:cx="326.8338"
inkscape:cy="349.33466"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1314"
inkscape:window-height="980"
inkscape:window-x="30"
inkscape:window-y="141"
inkscape:window-maximized="0"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false"
inkscape:snap-bbox="false"
inkscape:snap-page="false" />
<defs
id="defs4">
<linearGradient
id="linearGradient6493"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop6495" />
</linearGradient>
<linearGradient
id="linearGradient5313"
osb:paint="solid">
<stop
style="stop-color:#5555ff;stop-opacity:1;"
offset="0"
id="stop5315" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path5567"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mstart"
style="overflow:visible">
<path
id="path5564"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lend"
style="overflow:visible;">
<path
id="path5579"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) rotate(180) translate(1,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path5561"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path5558"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8) translate(12.5,0)" />
</marker>
<inkscape:path-effect
effect="skeletal"
id="path-effect5339"
is_visible="true"
pattern="M 0,0 0,10 10,5 z"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient5242"
osb:paint="solid">
<stop
style="stop-color:#7fff2a;stop-opacity:1;"
offset="0"
id="stop5244" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 372.04724 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="1052.3622 : 372.04724 : 1"
inkscape:persp3d-origin="526.18109 : 248.03149 : 1"
id="perspective3009" />
<marker
inkscape:stockid="Arrow1LendM"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendM"
style="overflow:visible;">
<path
id="path4159"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1LendF"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1LendF"
style="overflow:visible;">
<path
id="path4585"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend6"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend6"
style="overflow:visible;">
<path
id="path5404"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1MendN"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1MendN"
style="overflow:visible;">
<path
id="path5645"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="marker-start:none;stroke:#ff0000;stroke-width:1.0pt;fill:#ff0000;fill-rule:evenodd"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343-7"
id="linearGradient5349-6"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83990127,0,0,1.846462,-201.58875,-629.6685)" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4" />
</linearGradient>
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(2.2778076,0,0,6.0730972,231.64447,-3322.8016)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079"
xlink:href="#linearGradient5343-7"
inkscape:collect="always" />
<linearGradient
y2="622.73621"
x2="-318.84055"
y1="622.73621"
x1="-532.43896"
gradientTransform="matrix(1.2042654,0,0,2.6602952,-344.10309,-1384.9447)"
gradientUnits="userSpaceOnUse"
id="linearGradient6079-9"
xlink:href="#linearGradient5343-7-4"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343-7-4">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345-4-1" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347-4-6" />
</linearGradient>
<marker
inkscape:stockid="Arrow1Mend6"
orient="auto"
refY="0"
refX="0"
id="Arrow1Mend6-0"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5404-3"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt;marker-start:none"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<marker
inkscape:stockid="Arrow1MendN"
orient="auto"
refY="0"
refX="0"
id="Arrow1MendN-9"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5645-1"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt;marker-start:none"
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
</marker>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5343"
id="linearGradient5349"
x1="-532.43896"
y1="622.73621"
x2="-318.84055"
y2="622.73621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83990127,0,0,1.846462,-190.51819,-497.6685)" />
<linearGradient
inkscape:collect="always"
id="linearGradient5343">
<stop
style="stop-color:#aaccff;stop-opacity:1;"
offset="0"
id="stop5345" />
<stop
style="stop-color:#aaccff;stop-opacity:0;"
offset="1"
id="stop5347" />
</linearGradient>
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-308.2677)">
<rect
style="opacity:0.5;fill:url(#linearGradient6079);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.15592432;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3065-4"
width="484.2583"
height="855.37451"
x="-980.01013"
y="31.449005"
transform="matrix(0,-1,1,0,0,0)" />
<path
style="fill:#000000;fill-opacity:0;stroke:#1afc00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 543.11341,673.45817 -320.85591,-1.38039 1.07056,39.84316"
id="path6473"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<rect
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.71000719px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5351-5"
width="336.37537"
height="122.49554"
x="417.9646"
y="700.86536" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="458.61511"
y="812.50928"
id="text5353-2"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5355-6"
x="458.61511"
y="812.50928">nova-compute</tspan></text>
<a
id="a4003"
transform="matrix(1,0,0,0.81896683,-0.728701,296.31497)"
style="fill:#ff2ad4;fill-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path5485"
d="m 575.81554,518.47262 -0.0744,-131.08463"
style="fill:none;stroke:#000000;stroke-width:5.05247164;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="32.64756"
y="1027.5137"
id="text5549"
sodipodi:linespacing="125%"
inkscape:export-filename="/home/yamahata/openvswitch/sp-lab/scarab/scarab-2/doc/source/images/compute-node.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90"><tspan
sodipodi:role="line"
id="tspan5551"
x="32.64756"
y="1027.5137">All-in-One setup</tspan></text>
<path
style="opacity:0.275;fill:#dd6de5;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#ff0000;stroke-width:4.27355194;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.13677602, 2.13677602;stroke-dashoffset:0"
d=""
id="path4088"
inkscape:connector-curvature="0"
transform="translate(0,308.2677)" />
<g
id="g6280"
transform="translate(312.16089,-235.21169)">
<g
transform="matrix(1,0,0,0.71409652,-474.38063,289.09459)"
id="g5864-4">
<rect
style="fill:#00ffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.79479539px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5858-6"
width="26.969246"
height="59.086094"
x="722.52655"
y="601.5531" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="611.76575"
y="-729.16479"
id="text5860-69"
sodipodi:linespacing="125%"
transform="matrix(0,1,-1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5862-8"
x="611.76575"
y="-729.16479">eth</tspan></text>
</g>
</g>
<g
transform="translate(65.5766,51.261127)"
id="g6174-1">
<path
transform="matrix(1.0086434,0,0,0.68923037,243.74678,449.4383)"
d="m 289.53315,248.36246 -14.42324,24.98178 -28.84647,0 -14.42324,-24.98178 14.42324,-24.98178 28.84647,0 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="0.52359878"
sodipodi:arg1="0"
sodipodi:r2="24.981781"
sodipodi:r1="28.846476"
sodipodi:cy="248.36246"
sodipodi:cx="260.68668"
sodipodi:sides="6"
id="path5523-9"
style="opacity:0.5;fill:#2ad4ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5525-6"
y="627.69855"
x="486.00281"
style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="627.69855"
x="486.00281"
id="tspan5527-5"
sodipodi:role="line">OVS</tspan></text>
</g>
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 467.62072,731.43747 83.47892,-52.45752"
id="path6228"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 692.60743,728.07086 596.83779,684.0091"
id="path6232"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
sodipodi:type="arc"
style="opacity:0.4125;fill:#3866a9;fill-opacity:0.46666667;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path6269"
sodipodi:cx="185.74246"
sodipodi:cy="191.14935"
sodipodi:rx="84.039093"
sodipodi:ry="31.581572"
d="m 269.78156,191.14935 c 0,17.44202 -37.62559,31.58157 -84.0391,31.58157 -46.41351,0 -84.03909,-14.13955 -84.03909,-31.58157 0,-17.44202 37.62558,-31.58157 84.03909,-31.58157 46.41351,0 84.0391,14.13955 84.0391,31.58157 z"
transform="matrix(1.1689088,0,0,0.56811324,10.97702,488.03964)" />
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;font-family:Bitstream Vera Sans"
x="137.63055"
y="600.23999"
id="text6271"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6273"
x="137.63055"
y="600.23999">quantum_ovs_agent</tspan></text>
<g
id="g6423"
transform="translate(-60,2)"
style="opacity:0.6125;fill:#3866a9;fill-opacity:0.46666667" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#193edc;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="289.90646"
y="697.4389"
id="text7945-1-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan7947-2-1"
x="289.90646"
y="697.4389"
style="fill:#31562b;fill-opacity:1;stroke:none">openflow</tspan></text>
<rect
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.7666558px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5351-8"
width="112.94334"
height="29.197376"
x="505.20587"
y="843.80408" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="506.81201"
y="865.17035"
id="text5353-29"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5355-2"
x="506.81201"
y="865.17035">nova-api</tspan></text>
<rect
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.99003595px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5351-8-4"
width="189.8004"
height="28.973995"
x="485.51215"
y="894.55353" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="487.00659"
y="915.80811"
id="text5353-29-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5355-2-3"
x="487.00659"
y="915.80811">nova-scheduler</tspan></text>
<g
id="g6388"
transform="translate(37.098036,274.46221)">
<rect
style="fill:#4975b6;fill-opacity:0.23137255;fill-rule:evenodd;stroke:#000000;stroke-width:0.84044451px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect6358"
width="187.50786"
height="29.064722"
x="85.200211"
y="530.91882" />
<text
sodipodi:linespacing="125%"
id="text6360"
y="552.26874"
x="90.55011"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="552.26874"
x="90.55011"
id="tspan6362"
sodipodi:role="line">quantum-server</tspan></text>
</g>
<rect
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.89793426px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect5351-8-4-8"
width="155.63452"
height="29.066097"
x="493.65576"
y="940.33221" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="497.19629"
y="961.63287"
id="text5353-29-6-8"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5355-2-3-5"
x="497.19629"
y="961.63287">nova-...</tspan></text>
<g
id="g6234"
transform="translate(65.43986,27.776)">
<rect
y="515.01691"
x="415.87427"
height="80.739517"
width="196.60234"
id="rect5351"
style="opacity:0.275;fill:#ff2ad4;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.68203735px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5353"
y="541.27826"
x="435.22226"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="541.27826"
x="435.22226"
id="tspan5355"
sodipodi:role="line">nova-network</tspan></text>
</g>
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="692.86469"
y="559.70044"
id="text5487-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5489-6"
x="692.86469"
y="559.70044"
style="fill:#ff0000">SNAT</tspan></text>
<path
style="fill:none;stroke:#ff0000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2, 2;stroke-dashoffset:0;marker-start:none;marker-end:url(#Arrow1MendN)"
d="m 498.15874,603.65235 c -53.4194,-45.94069 -7.50046,-82.28109 -7.50046,-82.28109 l 57.69296,-4.27355"
id="path6239"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<path
style="fill:none;stroke:#ff0000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2, 2;stroke-dashoffset:0;marker-start:none;marker-end:url(#Arrow1Mend6)"
d="m 650.54421,602.47083 c 53.4194,-45.94069 10.71214,-81.21053 10.71214,-81.21053 l -57.69296,-4.27355"
id="path6239-4"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<rect
style="opacity:0.41249999999999998;fill:#05ff00;fill-rule:evenodd;stroke:#000000;stroke-width:0.71524047999999996px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"
id="rect5947"
width="62.431255"
height="24.849373"
x="584.12842"
y="-524.00653"
transform="matrix(0,1,-1,0,0,0)" />
<text
xml:space="preserve"
style="font-size:16.64327431px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="636.57861"
y="-468.99884"
id="text5949"
sodipodi:linespacing="125%"
transform="matrix(0,0.92462636,-1.0815179,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5951"
x="636.57861"
y="-468.99884">gw-xxx</tspan></text>
<rect
style="opacity:0.41249999999999998;fill:#00fffc;fill-rule:evenodd;stroke:#000000;stroke-width:0.70914637999999997px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"
id="rect5947-4"
width="61.371914"
height="24.849373"
x="581.86981"
y="-651.82678"
transform="matrix(0,1,-1,0,0,0)" />
<text
xml:space="preserve"
style="font-size:16.50146866px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="639.50269"
y="-582.18176"
id="text5949-7"
sodipodi:linespacing="125%"
transform="matrix(0,0.91674822,-1.0908121,0,0,0)"><tspan
sodipodi:role="line"
id="tspan5951-3"
x="639.50269"
y="-582.18176">gw-yyy</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 576.43361,730.03267 574.12928,689.8299"
id="path6228-0"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 596.04122,664.31823 41.81277,-21.30086"
id="path6228-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 549.47316,662.38705 514.081,646.69379"
id="path6228-06"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#6b7393;stroke-width:5.03195906;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 416.33269,761.13247 -45.30653,0.15491 -0.64494,57.28036 -61.39088,0.0557"
id="path7949"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90" />
<rect
style="fill:#5555ff;fill-rule:evenodd;stroke:#000000;stroke-width:0.33128864px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect3772"
width="111.84713"
height="36.141087"
x="514.22339"
y="412.79633" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="518.52893"
y="437.1687"
id="text5514"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5516"
x="518.52893"
y="437.1687">gateway</tspan></text>
<path
sodipodi:type="star"
style="opacity:0.325;fill:#5555ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5543"
sodipodi:sides="6"
sodipodi:cx="349.90158"
sodipodi:cy="64.665352"
sodipodi:r1="34.501789"
sodipodi:r2="28.966175"
sodipodi:arg1="-1.0612041"
sodipodi:arg2="-0.62241192"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 366.73229,34.547239 17.6677,29.634878 -16.83071,30.118112 -34.49841,0.483235 -17.66769,-29.634877 16.8307,-30.118112 z"
transform="translate(223.34776,292.17655)" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="487.32413"
y="355.95609"
id="text5545"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5547"
x="487.32413"
y="355.95609">public internet</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="53.920906"
y="948.19678"
id="text3555"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3557"
x="53.920906"
y="948.19678">physical host</tspan></text>
<path
sodipodi:type="star"
style="fill:#05ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-6"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.69506452,0,0,0.47991755,376.19731,483.38087)" />
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="472.0224"
y="749.48163"
id="text5274-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-4"
x="472.0224"
y="749.48163"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan><tspan
sodipodi:role="line"
x="472.0224"
y="771.98163"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
id="tspan3167-1">tenant-X</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="608.73407"
y="757.31628"
id="text5329-7"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="608.73407"
y="757.31628"
id="tspan5333-1">...</tspan></text>
<path
sodipodi:type="star"
style="fill:#00fffc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5250-8-1"
sodipodi:sides="6"
sodipodi:cx="136.41731"
sodipodi:cy="572.24408"
sodipodi:r1="69.884941"
sodipodi:r2="23.694832"
sodipodi:arg1="1.0390722"
sodipodi:arg2="1.5626709"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
transform="matrix(0.69506452,0,0,0.47991755,480.10215,484.48042)" />
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="575.92719"
y="750.58118"
id="text5274-5-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5276-33-7"
x="575.92719"
y="750.58118"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans">VM</tspan><tspan
sodipodi:role="line"
x="575.92719"
y="773.08118"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
id="tspan3167-8-8">tenant-Y</tspan></text>
<path
transform="matrix(0.69506452,0,0,0.47991755,604.3304,483.77373)"
d="m 171.85039,632.4803 -69.88264,0.56783 -35.433072,-60.23622 34.449562,-60.80405 69.88263,-0.56783 35.43308,60.23622 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5626709"
sodipodi:arg1="1.0390722"
sodipodi:r2="23.694832"
sodipodi:r1="69.884941"
sodipodi:cy="572.24408"
sodipodi:cx="136.41731"
sodipodi:sides="6"
id="path5250-7-8"
style="fill:#ccff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
sodipodi:type="star" />
<text
sodipodi:linespacing="125%"
id="text5274-7-2"
y="749.87451"
x="700.15552"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="749.87451"
x="700.15552"
id="tspan5276-1-1"
sodipodi:role="line">VM</tspan><tspan
id="tspan3167-2-3"
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
y="772.37451"
x="700.15552"
sodipodi:role="line">tenant-...</tspan></text>
<path
style="fill:#000000;fill-opacity:0;stroke:#1afc00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 172.06998,743.00719 -1.00693,59.89335"
id="path6473-7-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<g
id="g6423-3"
transform="translate(-3.945028,138.1109)"
style="opacity:0.6125;fill:#3866a9;fill-opacity:0.46666667">
<rect
style="fill:#b1c76d;fill-opacity:0.46666667;fill-rule:evenodd;stroke:#ff1300;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect6358-7"
width="267.63913"
height="28.903856"
x="86.955444"
y="577.54102" />
<text
sodipodi:linespacing="125%"
id="text6360-0"
y="598.81049"
x="92.224907"
style="font-size:22px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#3866a9;fill-opacity:0.46666667;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
y="598.81049"
x="92.224907"
id="tspan6362-5"
sodipodi:role="line"
style="fill:#ff0000;fill-opacity:1;stroke:#000000;stroke-opacity:1">ryu-openflow-controller</tspan></text>
</g>
<path
style="fill:#000000;fill-opacity:0;stroke:#1afc00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 172.06997,610.65589 -1.00693,105.23593"
id="path6473-7-9-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:24px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="401.80255"
y="550.07538"
id="text5487-3-7"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5489-6-7"
x="401.80255"
y="550.07538"
style="fill:#ff0000">SNAT</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 37 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -13,11 +13,9 @@ Contents:
:maxdepth: 2 :maxdepth: 2
getting_started.rst getting_started.rst
openstack.rst
developing.rst developing.rst
configuration.rst configuration.rst
tests.rst
snort_integrate.rst
app.rst
Indices and tables Indices and tables
================== ==================

View File

@ -0,0 +1,193 @@
.. _internals_l2_isolation:
****************
Ryu L2 isolation
****************
This section describes how Ryu cooperates with Openstack Quantum and
how its L2 isolation works.
Overview
========
Ryu provides REST API by which Quantum server tells necessary informations.
Quantum Server manages the association networks(uuid) to actual key value in
addition to normal Quantum management informations.
(Here key value is an integer for VLAN ID, GRE key and so on.
The quantum only have to know the range of key which depends on the isolation
technology. For example, 12 bit in VLAN case, 24 bit in GRE case.)
Quantum Ryu plugin doesn't know about what technology Ryu uses for L2
isolation.
.. image:: /images/internal-quantum-overview.png
Quantum doesn't necessarily knows all the informations Ryu needs like
mac address attached to the interface. Ryu can gather those informations
by accessing directly to OVSDB. When tunnel ports on OVS needs to be created
on compute-node, Ryu will directly accesses to OVSDB and creates/deletes
ports.
Cooperate with Openstack Quantum
================================
Ryu reacts to Qauntnum events, compute-node boots up, network
creation/deletion, and VM instance creation/deletion.
When VM instance is created, corresponding quantum port is created.
compute-node boot up
--------------------
When a compute note boots up, minimal initalization work is done by
Ryu-quantum-agent which tell necessary informations to Ryu.
Then Ryu set up OVS such that OVS connects to Ryu via OpenFlow.
There are 2 steps of OVS initialization. By agent and by Ryu.
This is to keep Ryu agent logic minimal and independent from what actual Ryu
needs to set. Even if Ryu is enhanced for new feature and some additional
configuration to OVS is needed (for example multi-controller for HA),
ryu agent doesn't need to be modified due to 2 step initialization.
.. image:: /images/internal-quantum-bootup.png
network creation
----------------
When network is created, quantum Ryu plugin assigns Key value to
a created network, and tell the association to Ryu
.. image:: /images/internal-quantum-network-creation.png
VM instance creation
--------------------
When VM instance is created, quantum port is created. Quantum Ryu
plugin tells the association of (network uuid, port uuid) to Ryu, and
then OVS port is created. Ryu finds the port creation via OpenFlow
and get the information of the created port for (port uuid, attached
mac address) via OVSDB protocoal, and then sets up network
configuration to OVS.
.. image:: /images/internal-quantum-instance-create.png
quantum_adapater RyuApp
-----------------------
This application watches port creation/deletion by OF protocol.
When it detects the creation of ports, it tries to retrieve related
informations(port uuid, mac address) by OVSDB protocol,
tries to determine if the port corresponds to Qauntnum VM port, and then
stores those informations into the in-memory, which generates the event of
VMPort creation. Then Ryu app of isolation (simple_vlan or gre_tunnel)
will be notified.
live-migration
--------------
live-migration is popular feature with virtualization, so as OpenStack.
As of this writing, there is no hooks in quantum. So no notification/callback
are triggered when live-migration starts/on-going/ends/error-abort.
Traditional live-migration uses GARP to tell switches the used mac address
is moved.
.. image:: /images/internal-live-migration.png
VLAN
====
OVS supports port vlan with setting tag value in OVSDB.
Ryu utilizes it for L2 isolation.
simple_vlan RyuApp
------------------
When port is created, it sets tag value to key assigned to a given network uuid.
And sets flow entry to output:normal.
live-migration
--------------
As flows includes output:normal action, packets are processed by
OVS builtin mac-learning.
#. When destination VM port is created, same rule is inserted on OVS
on the destination.
But the port on the destination is not used until the first GARP packet
is sent
#. When VM is resumed on the destination, a GARP packet is sent.
Then, mac learning tables on each switch are updated.
So the port on the source will be unused.
#. When the VM on the source is destroyed, the port on the source is also
destroyed.
GRE tunneling
=============
OVS supports tunneling and Ryu utilizes it for L2 isolation as follows.
.. image:: /images/internal-gre-tunnel.png
tunnel_port_updator RyuApp
--------------------------
This application watches the VM port creation/deletion, and creates/deletes
tunnel port on OVS when necessary.
That is, it creates tunnel port between compute-nodes which have VMs of same
tenant. it deletes tunnel ports when compute-nodes have no VMs of same
tenant.
gre_tunnel RyuApp
-----------------
This application watches VM/tunnel port creation/deletion, and
installs/removes flow entries based on port creation/deletion.
Flow Entries
------------
Ryu installs following flow entries.
.. image:: /images/internal-quantum-gre-flow-table.png
live-migration
--------------
As flows are aware of mac address of each ports, Ryu updates flow table
for live-migration on each compute-nodes.
When the port of same mac address is added on another compute-node,
Ryu installs flows that duplicates packet so that packets destined to
the mac address will be duplicated and sent to both ports.
GARP from hypervisor isn't used.
.. image:: /images/internal-tunnel-live-migration-before.png
.. image:: /images/internal-tunnel-live-migration-during.png
.. image:: /images/internal-tunnel-live-migration-after.png
Mac address based L2 isolation
==============================
Ryu also supports mac address based L2 isolation.
In this case key isn't used.
mac learing
-----------
When VM sends packets, Ryu determins network uuid from OVS port and then
associates src mac address to network uuid.
.. image:: /images/mac-learning.png
packet filtering(L2 unicast case)
---------------------------------
* When VM sending L2-unicast packet, Ryu checks if the destination mac
address belongs to the same netowrk id of the source mac address which
is same to the network uuid that the OVS port is associated to.
* If no, the packet is dropped.
* If yes, send the packet is sent to ports which belongs to the same
network uuid and external port.
.. image:: /images/filtering-outgoing.png
.. image:: /images/filtering-incoming.png
packet filtering(L2 broadcast case)
-----------------------------------
* When VM sending L2-broadcast/multicaset packet, Ryu checks if the source
mac address.
* send the packet to all external ports and all OVS ports that belongs
to the same network uuid of the source mac address.
* When receiving broacast/multicast packet from the external ports,
Ryu checks if the source mac address belongs to known network uuid.
* If yes, send the packet to the external ports except incoming one
and the all OVS ports that belongs to the network uuid
* if no, drop the packet.
.. image:: /images/filtering-broadcast.png
live-migration
--------------
As of this writing, simple isolation doesn't support live-migration.

View File

@ -8,11 +8,4 @@ Ryu provides some useful library for your network applications.
:maxdepth: 1 :maxdepth: 1
library_packet.rst library_packet.rst
library_packet_ref.rst
library_pcap.rst
library_of_config.rst library_of_config.rst
library_bgp_speaker.rst
library_bgp_speaker_ref.rst
library_mrt.rst
library_ovsdb_manager.rst
library_ovsdb.rst

View File

@ -1,61 +0,0 @@
*******************
BGP speaker library
*******************
Introduction
============
Ryu BGP speaker library helps you to enable your code to speak BGP
protocol. The library supports IPv4, IPv4 MPLS-labeled VPN, IPv6
MPLS-labeled VPN and L2VPN EVPN address families.
Example
=======
The following simple code creates a BGP instance with AS number 64512
and Router ID 10.0.0.1. It tries to establish a bgp session with a
peer (its IP is 192.168.177.32 and the AS number is 64513). The
instance advertizes some prefixes.
.. code-block:: python
import eventlet
# BGPSpeaker needs sockets patched
eventlet.monkey_patch()
# initialize a log handler
# this is not strictly necessary but useful if you get messages like:
# No handlers could be found for logger "ryu.lib.hub"
import logging
import sys
log = logging.getLogger()
log.addHandler(logging.StreamHandler(sys.stderr))
from ryu.services.protocols.bgp.bgpspeaker import BGPSpeaker
def dump_remote_best_path_change(event):
print 'the best path changed:', event.remote_as, event.prefix,\
event.nexthop, event.is_withdraw
def detect_peer_down(remote_ip, remote_as):
print 'Peer down:', remote_ip, remote_as
if __name__ == "__main__":
speaker = BGPSpeaker(as_number=64512, router_id='10.0.0.1',
best_path_change_handler=dump_remote_best_path_change,
peer_down_handler=detect_peer_down)
speaker.neighbor_add('192.168.177.32', 64513)
# uncomment the below line if the speaker needs to talk with a bmp server.
# speaker.bmp_server_add('192.168.177.2', 11019)
count = 1
while True:
eventlet.sleep(30)
prefix = '10.20.' + str(count) + '.0/24'
print "add a new prefix", prefix
speaker.prefix_add(prefix)
count += 1
if count == 4:
speaker.shutdown()
break

View File

@ -1,21 +0,0 @@
*********************************
BGP speaker library API Reference
*********************************
BGPSpeaker class
================
.. autoclass:: ryu.services.protocols.bgp.bgpspeaker.BGPSpeaker
:members:
.. autoclass:: ryu.services.protocols.bgp.bgpspeaker.EventPrefix
:members:
.. autoclass:: ryu.services.protocols.bgp.info_base.base.PrefixFilter
:members:
.. autoclass:: ryu.services.protocols.bgp.info_base.base.ASPathFilter
:members:
.. autoclass:: ryu.services.protocols.bgp.info_base.base.AttributeMap
:members:

View File

@ -1,28 +0,0 @@
****************
MRT file library
****************
Introduction
============
Ryu MRT file library helps you to read/write MRT
(Multi-Threaded Routing Toolkit) Routing Information Export Format
[`RFC6396`_].
.. _RFC6396: https://tools.ietf.org/html/rfc6396
Reading MRT file
================
For loading the routing information contained in MRT files, you can use
mrtlib.Reader.
.. autoclass:: ryu.lib.mrtlib.Reader
Writing MRT file
================
For dumping the routing information which your RyuApp generated, you can use
mrtlib.Writer.
.. autoclass:: ryu.lib.mrtlib.Writer

View File

@ -1,76 +0,0 @@
*************
OVSDB library
*************
Path: ``ryu.lib.ovs``
Similar to the :doc:`library_ovsdb_manager`, this library enables your
application to speak the OVSDB protocol (RFC7047_), but differ from the
:doc:`library_ovsdb_manager`, this library will initiate connections from
controller side as ovs-vsctl_ command does.
Please make sure that your devices are listening on either the Unix domain
socket or TCP/SSL port before calling the APIs of this library.
.. code-block:: bash
# Show current configuration
$ ovs-vsctl get-manager
# Set TCP listen address
$ ovs-vsctl set-manager "ptcp:6640"
See manpage of ovs-vsctl_ command for more details.
.. _RFC7047: https://tools.ietf.org/html/rfc7047
.. _ovs-vsctl: http://openvswitch.org/support/dist-docs/ovs-vsctl.8.txt
Basic Usage
===========
1. Instantiate :py:mod:`ryu.lib.ovs.vsctl.VSCtl`.
2. Construct commands with :py:mod:`ryu.lib.ovs.vsctl.VSCtlCommand`.
The syntax is almost the same as ovs-vsctl_ command.
3. Execute commands via :py:mod:`ryu.lib.ovs.vsctl.VSCtl.run_command`.
Example
-------
.. code-block:: python
from ryu.lib.ovs import vsctl
OVSDB_ADDR = 'tcp:127.0.0.1:6640'
ovs_vsctl = vsctl.VSCtl(OVSDB_ADDR)
# Equivalent to
# $ ovs-vsctl show
command = vsctl.VSCtlCommand('show')
ovs_vsctl.run_command([command])
print(command)
# >>> VSCtlCommand(args=[],command='show',options=[],result='830d781f-c3c8-4b4f-837e-106e1b33d058\n ovs_version: "2.8.90"\n')
# Equivalent to
# $ ovs-vsctl list Port s1-eth1
command = vsctl.VSCtlCommand('list', ('Port', 's1-eth1'))
ovs_vsctl.run_command([command])
print(command)
# >>> VSCtlCommand(args=('Port', 's1-eth1'),command='list',options=[],result=[<ovs.db.idl.Row object at 0x7f525fb682e8>])
print(command.result[0].name)
# >>> s1-eth1
API Reference
=============
ryu.lib.ovs.vsctl
-----------------
.. automodule:: ryu.lib.ovs.vsctl
:members:
ryu.lib.ovs.bridge
------------------
.. automodule:: ryu.lib.ovs.bridge
:members:

View File

@ -1,99 +0,0 @@
*********************
OVSDB Manager library
*********************
Path: ``ryu.services.protocols.ovsdb``
Introduction
============
Ryu OVSDB Manager library allows your code to interact with devices
speaking the OVSDB protocol. This enables your code to perform remote
management of the devices and react to topology changes on them.
Please note this library will spawn a server listening on the port 6640 (the
IANA registered for OVSDB protocol), but does not initiate connections from
controller side.
Then, to make your devices connect to Ryu, you need to tell the controller IP
address and port to your devices.
.. code-block:: bash
# Show current configuration
$ ovs-vsctl get-manager
# Set manager (controller) address
$ ovs-vsctl set-manager "tcp:127.0.0.1:6640"
# If you want to specify IPv6 address, wrap ip with brackets
$ ovs-vsctl set-manager "tcp:[::1]:6640"
Also this library identifies the devices by "system-id" which should be unique,
persistent identifier among all devices connecting to a single controller.
Please make sure "system-id" is configured before connecting.
.. code-block:: bash
# Show current configuration
$ ovs-vsctl get Open_vSwitch . external_ids:system-id
# Set system-id manually
$ ovs-vsctl set Open_vSwitch . external_ids:system-id=<SYSTEM-ID>
Example
=======
The following logs all new OVSDB connections in "handle_new_ovsdb_connection"
and also provides the API "create_port" for creating a port on a bridge.
.. code-block:: python
import uuid
from ryu.base import app_manager
from ryu.controller.handler import set_ev_cls
from ryu.services.protocols.ovsdb import api as ovsdb
from ryu.services.protocols.ovsdb import event as ovsdb_event
class MyApp(app_manager.RyuApp):
@set_ev_cls(ovsdb_event.EventNewOVSDBConnection)
def handle_new_ovsdb_connection(self, ev):
system_id = ev.system_id
address = ev.client.address
self.logger.info(
'New OVSDB connection from system-id=%s, address=%s',
system_id, address)
# Example: If device has bridge "s1", add port "s1-eth99"
if ovsdb.bridge_exists(self, system_id, "s1"):
self.create_port(system_id, "s1", "s1-eth99")
def create_port(self, system_id, bridge_name, name):
new_iface_uuid = uuid.uuid4()
new_port_uuid = uuid.uuid4()
bridge = ovsdb.row_by_name(self, system_id, bridge_name)
def _create_port(tables, insert):
iface = insert(tables['Interface'], new_iface_uuid)
iface.name = name
iface.type = 'internal'
port = insert(tables['Port'], new_port_uuid)
port.name = name
port.interfaces = [iface]
bridge.ports = bridge.ports + [port]
return new_port_uuid, new_iface_uuid
req = ovsdb_event.EventModifyRequest(system_id, _create_port)
rep = self.send_request(req)
if rep.status != 'success':
self.logger.error('Error creating port %s on bridge %s: %s',
name, bridge, rep.status)
return None
return rep.insert_uuids[new_port_uuid]

View File

@ -10,13 +10,6 @@ packets. dpkt is the popular library for the same purpose, however it
is not designed to handle protocols that are interleaved; vlan, mpls, is not designed to handle protocols that are interleaved; vlan, mpls,
gre, etc. So we implemented our own packet library. gre, etc. So we implemented our own packet library.
Network Addresses
=================
Unless otherwise specified, MAC/IPv4/IPv6 addresses are specified
using human readable strings for this library.
For example, '08:60:6e:7f:74:e7', '192.0.2.1', 'fe80::a60:6eff:fe7f:74e7'.
Parsing Packet Parsing Packet
============== ==============
@ -52,7 +45,8 @@ If vlan is not used, you see something like::
<ryu.lib.packet.tcp.tcp object at 0x107a5d850> <ryu.lib.packet.tcp.tcp object at 0x107a5d850>
You can access to a specific protocol class instance by using the You can access to a specific protocol class instance by using the
packet class iterator. Let's try to check VLAN id if VLAN is used: packet class find_protocol method. Let's try to check VLAN id if VLAN
is used:
.. code-block:: python .. code-block:: python
@ -85,18 +79,12 @@ serialize method. You have the raw data to send. The following example
is building an arp packet. is building an arp packet.
.. code-block:: python .. code-block:: python
from ryu.ofproto import ether dst = 'a' * 6
from ryu.lib.packet import ethernet, arp, packet src = 'b' * 6
e = ethernet.ethernet(dst, src, ether.ETH_TYPE_8021Q)
e = ethernet.ethernet(dst='ff:ff:ff:ff:ff:ff', a = arp.arp(1, 0x0800, 6, 4, 2, '\a' * 6, 50, '\b' * 6, 30)
src='08:60:6e:7f:74:e7',
ethertype=ether.ETH_TYPE_ARP)
a = arp.arp(hwtype=1, proto=0x0800, hlen=6, plen=4, opcode=2,
src_mac='08:60:6e:7f:74:e7', src_ip='192.0.2.1',
dst_mac='00:00:00:00:00:00', dst_ip='192.0.2.2')
p = packet.Packet() p = packet.Packet()
p.add_protocol(e) p.add_protocol(e)
p.add_protocol(a) p.add_protocol(a)
p.serialize() p.serialize()
print repr(p.data) # the on-wire packet

View File

@ -1,28 +0,0 @@
****************************
Packet library API Reference
****************************
Packet class
============
.. automodule:: ryu.lib.packet.packet
:members:
Stream Parser class
===================
.. automodule:: ryu.lib.packet.stream_parser
:members:
List of the sub-classes:
- :py:mod:`ryu.lib.packet.bgp.StreamParser`
Protocol Header classes
=======================
.. toctree::
:glob:
library_packet_ref/packet_base
library_packet_ref/*

View File

@ -1,6 +0,0 @@
***
ARP
***
.. automodule:: ryu.lib.packet.arp
:members:

View File

@ -1,6 +0,0 @@
*****************
Packet Base Class
*****************
.. automodule:: ryu.lib.packet.packet_base
:members:

View File

@ -1,6 +0,0 @@
***
BFD
***
.. automodule:: ryu.lib.packet.bfd
:members:

View File

@ -1,6 +0,0 @@
***
BGP
***
.. automodule:: ryu.lib.packet.bgp
:members:

View File

@ -1,6 +0,0 @@
***
BMP
***
.. automodule:: ryu.lib.packet.bmp
:members:

View File

@ -1,6 +0,0 @@
****
BPDU
****
.. automodule:: ryu.lib.packet.bpdu
:members:

View File

@ -1,6 +0,0 @@
***
CFM
***
.. automodule:: ryu.lib.packet.cfm
:members:

View File

@ -1,6 +0,0 @@
****
DHCP
****
.. automodule:: ryu.lib.packet.dhcp
:members:

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