APAN201202_FlowSpace_yamanaka

advertisement
Flow Space Virtualization on Shared
Physical OpenFlow Networks
Hiroaki Yamanaka, Shuji Ishii, Eiji Kawai (NICT),
Masayoshi Shimamura, Katsuyoshi Iida (TITECH),
and Masato Tsuru (Kyutech)
Background
• Diverse requirements to networks for application
services
– Network resources for application-specific
performance
– Functions of in-network processing
• Clean-slate network technology design
– Network programmability
– Testbed for spiral development
– OpenFlow is one of key technologies for flexible
routing
What OpenFlow is
• Decoupling control and data planes
Data plane;
Switches forward
packets according to
flow tables
Control plane:
A controller injects flow
tables for each switch
A controller
• Flexible routing
OpenFlow
protocol
OpenFlow networks
– Flow is defined using flow space, ingress port and L2-L4
packet headers (flow space).
– Dynamic path setting for arbitrary fine-grained flows
OpenFlow Testbed
• Testbed users’ OpenFlow-enabled networks
for experiments
– Connecting testbed user’s end-hosts to the
network
– Controlling the network by a testbed user’s
controller
• Resources of the experiments networks are
provided by testbed infrastructure providers,
e.g., JGN-X, GENI, and OFELLIA .
Virtual OpenFlow Networks
• Requirements
– Testbed infrastructure providers: Efficient use of physical
resources
– Testbed users: Use of customized experiment networks
• Building experiment networks as virtual OpenFlow
networks on physical OpenFlow networks
– Sharing physical resources by multi-testbed
users→efficiency
– Software defined networks→customization
The Gap between Virtual and Physical
OpenFlow Networks
• Virtual OpenFlow networks: customizable for testbed users
– Local flow space
• Local addressing in virtual OpenFlow networks
• Content centric networks using IP address as a name of content
– Local network topology
• Easy-to-manage topology for a testbed user’s experiments
gap
• Physical OpenFlow networks: manageability for testbed
infrastructure providers
– Regulated flow space
• Physical network addressing for easy-to-operate
• E.g., in-network processing hosts’ IP addresses
– Physical topology
• Depending on physical configuration
Existent Virtualization Mechanism
• Links and OpenFlow
switches of subgraph
• Just assigned flow space
• FlowVisor
Exp. NW 1
OpenFlow
controller of
testbed user 1
Access control
between slice
controllers and
physical switches
OpenFlow
controller of
testbed user 2
OpenFlow
protocol
FlowVisor
module
• Issues for testbed users
Exp. NW 2
OpenFlow
protocol
Physical
OpenFlow
networks
The customizability
for testbed users
is limited.
– Flow space: not allowed collision among distinct experiment networks
– Experiment network topology: just subgraph of physical networks
Proposal
• Supporting virtual OpenFlow network topology
independent from physical OpenFlow networks
– Name space mapping (data path id, link id)
– Links aggregation, nodes integration
• Allowing collision of flow space among virtual
OpenFlow networks
– Rewriting flow space for controllers and end-hosts of
virtual OpenFlow networks
Reference Providers Model
• 3 providers model
– Testbed user: Service Provider (SP)
– Testbed infrastructure provider: Infrastructure Provider (InP)
Our proposal :
– Mediator: Virtual Network Provider (VNP)
• The VNP’s functions:
– Resource brokering between SPs and InPs
An implementation for
customizable virtual
OpenFlow networks
• Conflict of resources requests from SPs are adjusted by a VNP.
– Mapping resources between physical networks and virtual networks
– Providing interfaces for both SPs and InPs
• Applicable to:
– Cross-domain testbed federation
– Network virtualization on the Internet with heterogenous SPs and InPs
Data Plane Model
Virtual Network of SP 2
SP (testbed user)
Virtual Network of SP 1
Virtual OpenFlow
network with
local flow space
and topology
Virtual Network of SP 3
VNP
Topology and
flow space
mapping
Middle Virtual
Network (MVN)
of VNP1
Resource pool with
abstracted topology of
physical OpenFlow
networks
InP
Resource
abstraction for
InP’s security
Physical switches
and links
Physical OpenFlow
network of InP1
Physical OpenFlow
network of InP 2
Control Plane Model
SP (testbed user)’s controller
•
Flow tables for logical OpenFlow switches
in the logical OpenFlow network
Referencing the local flow space and the
topology
•
Control messages, packet-in,
statistics for a virtual
OpenFlow network
VNP’s controller
•
•
Control messages,
packet-in, statistics
for the MVN
Transforming the message
from SP to fit the MVN
The mapping between the
slice and the MVN is
referenced.
InP’ controller
•
•
Transforming the message from
VNP to fit the physical
OpenFlow network
Mapping between MVN and
physical OpenFlow network is
references.
OpenFlow
protocol
Physical
OpenFlow
switches
Proposal: Independent Topology of
Virtual OpenFlow Networks
SP (testbed user)
SP’s OpenFlow
controller
Virtual OpenFlow networks
VNP
Interface to control virtual OpenFlow networks nodes and links
VNP’s controller
InP
Managing the
topology mapping*
between MVN and
virtual OpenFlow
network
Interface to control MVN nodes and links
InP’s controller
MVN
Managing the topology
mapping* between
physical OpenFlow
network and MVN
Physical OpenFlow networks
* All possible mappings (hiding, aggregation, slicing) are supported.
Proposal: Flow Space Virtualization for
Testbed User Controllers
SP (testbed user) 1’s OpenFlow controller
Ingre
ss
Port
Ether
src
Ether
dst
…
IPv4
src
SP (testbed user) 2’s OpenFlow controller
TCP/
UDP/
SCTP
src
port
IPv4
dst
TCP/
UDP/
SCTP
dst
port
Ingre
ss
Port
Ether
src
Ether
dst
…
IPv4
src
IPv4
dst
TCP/
UDP/
SCTP
src
port
TCP/
UDP/
SCTP
dst
port
Rewriting: SP local flow space⇔SP allocated flow space
• Port and packet header in packet-in messages
• Port and packet header in injecting flow tables
Ingress
Port
VNP
Flow space
allocation for
SP 1
InP’s controller
Ether src
Ether
dst
…
IPv4 src
IPv4 dst
TCP/UD
P/SCTP
src port
TCP/UD
P/SCTP
dst port
TCP/UD
P/SCTP
src port
TCP/UD
P/SCTP
dst port
Flow space allocation information
Ingress
Port
Flow space
allocation for
SP 2
Ether src
Ether
dst
…
IPv4 src
IPv4 dst
InP divisions packet header space and
allocates to each SP for management.
Proposal: Flow Space Virtualization for
End-hosts
SP
SP1’s virtual OpenFlow network
SP 2’s virtual
OpenFlow network
VNP
InP
Always sending
packets with SP1local headers
An edge switch
•
•
Identifying the end-host’s
belonging SP by the ingress
port or the MAC address
Rewriting to be the allocated
header on physical networks
An Initial Prototype
An SP’s OpenFlow
controller
A module for SP (testbed user)
A Virtual OpenFlow network
OpenFlow message for the
virtual OpenFlow network
A module of VNP
DB
OpenFlow message
for MVN
A module of InP
An InP can manage flow
space easily though SPs’
customization.
An SP (testbed user)
can control his/her
customized slice by only
referencing the slice.
DB
Mapping the topologies and
packet-header MVN and SPs’
virtual OpenFlow networks
MVN
An end-host only
uses SP-local
packet-headers.
Mapping the topologies
of InP and VNP
Physical OpenFlow network
An switch for
end-hosts
packet headers
rewriting
An end-host
Future Plan
• Detailed design of flow space allocation
management
• Demonstration experiments on JGN-X
Summary
• An OpenFlow testbed is important for cleanslate network architecture design.
• Proposal of customized virtual OpenFlow
networks on shared physical OpenFlow
networks
– Enabling virtual OpenFlow network-local topology
and flow space
• An initial prototype
Thank you!
Q&A
Download