You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Nuage VSP Plugin

Bug References

CLOUDSTACK-6845

Branch

TBD

Introduction

The proposed CloudStack networking plugin will bring the Nuage VSP network virtualization technology to CloudStack.

Purpose

This is a design document of the Nuage VSP Plugin, which has Jira ID CLOUDSTACK-6845

References

External link describing the Nuage SDN solution : http://www.nuagenetworks.net/solutions/

Document History

 

Date

Revision

Author

Description of the change

06/04/2014

0.1

Suresh Ramamurthy

Initial Draft

 

Glossary

 

Term

Definition

VSP

Virtualized Services Platform

VSD

Virtualized Services Directory

VSC

Virualized Services Controller

VRS

Virtualized Routing and Switching

 

Feature Specification

Feature Summary

For the Nuage VSP plugin, we plan to support the following network model / service combinations:

1. Advanced Isolated network mode:

  • DHCP

  • Static NAT

  • Source NAT

  • Network ACL

2. VPC network mode:

  • DHCP

  • Static NAT

  • Source NAT

  • Network ACL

If User needs Password Reset funtionality, then they can choose UserData Service and select VirtualRouter as the ServiceProvider. UserData Service support will be available only in Isolated Network.

The initial implementation targets the Xen Server and ESXI hypervisor. Additional services will be supported in subsequent releases

Advantages

All the network isolation and routing is handled by the Nuage SDN solution. Routing of the packets happen at hypervisor itself. Virtual Router is not used for routing the packets thus the current issue of the Virtual Router being the bottleneck is avoided. The Virtual Router VM is spawned only for Password reset functionality. The Nuage solution also helps significantly improve the agility and scale of a CS deployment as compared to a Virtual Router based deployment

Nuage VSP Background

The Nuage NetworksTM Virtualized Services Platform (VSP) is a Software-Defined Networking (SDN) solution that virtualizes any datacenter (DC) network infrastructure and automatically establishes connectivity between compute resources upon their creation. The Nuage Networks VSP enables the deployment of massively scalable cloud-based services with the agility and performance demanded by highly dynamic application environments. It deploys the full range of L2-L4 networking services on a per-tenant or per-application basis using overlay technologies.

Test Guidelines

Nuage VSP plugin depends on following components of Nuage SDN solution

a) Nuage VSD

b) Nuage VSC

c) Nuage VRS, this needs installed on the Hypervisor

All the above components needs to be provisioned for the plugin to function properly. Also, Nuage VSP plugin directly talks with Nuage VSD using Rest API. So, all the components needs to be running to test the plugin functionality.

The following tests should be verified before declaring the feature complete:

Isolated Network Test Cases

a) Create a network offering with default egress deny rule and select services supported by Nuage VSP plugin. Choose NuageVsp as the service provider for DHCP, SourceNAT, StaticNAT, Firewall and Virtual Networking services.

    Choose VirtualRouter as the service provider for UserData service.

b) Create an isolated Network with network offering created above

c) Spawn a 2 VMs. VMs should each get an IP address. They should ping each other. SSH to a box on the external network should fail

b) Create a Static NAT and associate it one of the VM

    1. Add an Egress rule for the network with source CIDR as 0.0.0.0/0, protocol as TCP and ssh port number

d) SSH to box that is in the external network should work

e) Password reset for the VM should work

VPC Test Cases

a) Create a network offering for VPC with default deny all rule and select services supported by Nuage VSP plugin for VPC. Choose NuageVsp as the service provider for DHCP, SourceNAT, StaticNAT and Virtual Networking services. Choose NuageVspVpc for NerworkACL service. 

b) Create an VPC and select "Default VPC offering with NuageVsp" as the VPC offering

c) Create a tier and select the network offering created above

c) Spawn a 2 VMs. VMs should each get an IP address. They should ping each other. SSH to a box on the external network should fail

d) Create a Static NAT and associate it one of the VM

e) Add an Network ACL Egress rule for the network with source CIDR as 0.0.0.0/0, protocol as TCP and ssh port number

f) SSH to box that is in the external network should work

Use Cases

Advanced Isolated Network

There is no change in the existing Cloudstack work flow to create an advanced isolated network

VPC

There is not change in the existing Cloudstack work flow to create a VPC.

When the first VM is spawned either in Isolated network or in a tier of VPC, NuageVSP plugin creates logical network topology in VSD and information is pushed down in VSC. Nuage SDN solution then takes care of providing network isolation, connectivity, routing, Static NAT.

Architecture and Design description

A Nuage VSP pluign will be developed to add Nuage network virtualization into CloudStack


NuageVspNetworkGuru

This network guru is implemented to

a) Create/Delete logical topology in VSP

b) Create/Delete VM

NuageVspElement

a) Create/Delete Firewall and Egress rule in VSP

b) Create/Delete Static NAT

NuageVspVpcElement

a) Create/Delete NetworkACL

b) Spawn/Delete VR

NuageVspManager

a) Create a default VPC offering

b) Handle sync to clean up the stale entities in VSP

The capability / Networking mode combinations to be supported by the NuageVsp plugin are listes in the Feature Summary section above

Configuration changes

A new Isolation Method called VSP will be added(PhysicalNetwork.java)

A new BroadCastDomainType called Vsp will be added(Network.java)

Isolation type VSP should be chosen for Guest Network.

A new Service provider called NuageVsp will be added. This needs to enabled for the physical network that has the Guest Network with VSP isolation. Nuage VSD information need to be configured for NuageVsp Service provider

Web Services APIs

None

UI Flow

No change

  • No labels