Flow Space Virtualization on Shared Physical Open Flow


















- Slides: 18
Flow Space Virtualization on Shared Physical Open. Flow 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 – Open. Flow is one of key technologies for flexible routing
What Open. Flow 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 Open. Flow protocol Open. Flow networks – Flow is defined using flow space, ingress port and L 2 -L 4 packet headers (flow space). – Dynamic path setting for arbitrary fine-grained flows
Open. Flow Testbed • Testbed users’ Open. Flow-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 Open. Flow Networks • Requirements – Testbed infrastructure providers: Efficient use of physical resources – Testbed users: Use of customized experiment networks • Building experiment networks as virtual Open. Flow networks on physical Open. Flow networks – Sharing physical resources by multi-testbed users→efficiency – Software defined networks→customization
The Gap between Virtual and Physical Open. Flow Networks • Virtual Open. Flow networks: customizable for testbed users – Local flow space • Local addressing in virtual Open. Flow 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 Open. Flow 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 Open. Flow switches of subgraph • Just assigned flow space • Flow. Visor Exp. NW 1 Open. Flow controller of testbed user 1 Access control between slice controllers and physical switches Open. Flow controller of testbed user 2 Open. Flow protocol Flow. Visor module • Issues for testbed users Exp. NW 2 Open. Flow protocol Physical Open. Flow 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 Open. Flow network topology independent from physical Open. Flow networks – Name space mapping (data path id, link id) – Links aggregation, nodes integration • Allowing collision of flow space among virtual Open. Flow networks – Rewriting flow space for controllers and end-hosts of virtual Open. Flow networks
Reference Providers Model • 3 providers model – Testbed user: Service Provider (SP) – Testbed infrastructure provider: Infrastructure Provider (In. P) Our proposal : – Mediator: Virtual Network Provider (VNP) • The VNP’s functions: – Resource brokering between SPs and In. Ps An implementation for customizable virtual Open. Flow 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 In. Ps • Applicable to: – Cross-domain testbed federation – Network virtualization on the Internet with heterogenous SPs and In. Ps
Data Plane Model Virtual Network of SP 2 SP (testbed user) Virtual Network of SP 1 Virtual Open. Flow network with local flow space and topology Virtual Network of SP 3 VNP Topology and flow space mapping Middle Virtual Network (MVN) of VNP 1 Resource pool with abstracted topology of physical Open. Flow networks In. P Resource abstraction for In. P’s security Physical switches and links Physical Open. Flow network of In. P 1 Physical Open. Flow network of In. P 2
Control Plane Model SP (testbed user)’s controller Control messages, packetin, statistics for a virtual Open. Flow network VNP’s controller Flow tables for logical Open. Flow switches in the logical Open. Flow network Referencing the local flow space and the topology • • 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. In. P’ controller • • Transforming the message from VNP to fit the physical Open. Flow network Mapping between MVN and physical Open. Flow network is references. Open. Flow protocol Physical Open. Flow switches
Proposal: Independent Topology of Virtual Open. Flow Networks SP (testbed user) SP’s Open. Flow controller Virtual Open. Flow networks VNP Interface to control virtual Open. Flow networks nodes and links VNP’s controller In. P Managing the topology mapping* between MVN and virtual Open. Flow network Interface to control MVN nodes and links In. P’s controller MVN Managing the topology mapping* between physical Open. Flow network and MVN Physical Open. Flow networks * All possible mappings (hiding, aggregation, slicing) are supported.
Proposal: Flow Space Virtualization for Testbed User Controllers SP (testbed user) 1’s Open. Flow controller Ingre ss Port Ether src Ether dst … IPv 4 src SP (testbed user) 2’s Open. Flow controller TCP/ UDP/ SCTP src port IPv 4 dst TCP/ UDP/ SCTP dst port Ingre ss Port Ether src Ether dst … IPv 4 src IPv 4 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 In. P’s controller Ether src Ether dst … IPv 4 src IPv 4 dst 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 … IPv 4 src IPv 4 dst In. P divisions packet header space and allocates to each SP for management.
Proposal: Flow Space Virtualization for End-hosts SP SP 1’s virtual Open. Flow network SP 2’s virtual Open. Flow network VNP In. P Always sending packets with SP 1 local 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 Open. Flow controller Flow n e Op tocol pro A module for SP (testbed user) A Virtual Open. Flow network Open. Flow message for the virtual Open. Flow network A module of VNP DB Open. Flow message for MVN A module of In. P Op e pro n. Flow toc ol An In. P 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 Open. Flow networks MVN An end-host only uses SP-local packet-headers. Mapping the topologies of In. P and VNP Physical Open. Flow 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 Open. Flow testbed is important for cleanslate network architecture design. • Proposal of customized virtual Open. Flow networks on shared physical Open. Flow networks – Enabling virtual Open. Flow network-local topology and flow space • An initial prototype
Thank you! Q&A