Freescale SDN ML2 Mechanism Driver

Introduction
Freescale SDN (FSL-SDN) Mechanism Driver is an add-on support for ML2 plugin for Neutron.

It supports the Cloud Resource Discovery (CRD) service by updating Network, Subnet and Port Create/Update/Delete data into the CRD database.

CRD service manages network nodes, virtual network appliances and openflow controller based network applications.

Basic work flow


+-+ |                                | |       Neutron Server            | |     (with ML2 plugin)          | |                                | | +---+ | |        Freescale SDN          | | |      Mechanism Driver        | +-++--+           |            |  ReST API | +--+-+ |     CRD server        | ++

How does Freescale SDN Mechanism Driver work?
- Freescale Mechanism driver handles the following postcommit operations. - Network create/update/delete - Subnet create/update/delete - Port   create/delete

Sequence diagram : create_network


create_network {  neutron    ->  ML2_plugin ML2_plugin -> FSL-SDN-MD FSL-SDN-MD -> crd_service FSL-SDN-MD <-- crd_service ML2_plugin <-- FSL-SDN-MD neutron   <-- ML2_plugin }

- Supported network types by FSL OF Controller include vlan and vxlan.

- Freescale SDN mechanism driver handles VM port binding within in the mechanism driver (like ODL MD).

- 'bind_port' function verifies the supported network types (vlan,vxlan) and calls context.set_binding with binding details.

- Flow management in OVS is handled by Freescale Openflow Controller.

Configuring ML2 Plugin
In [ml2] section of /etc/neutron/plugins/ml2/ml2_conf.ini, modify 'mechanism_drivers' attributes as:



mechanism_drivers = fslsdn

Configuring FSLSDN Mechanism Driver
Update /etc/neutron/plugins/ml2/ml2_conf_fslsdn.ini, as below.



[ml2_fslsdn] crd_auth_strategy = keystone crd_url = http://127.0.0.1:9797 crd_auth_url = http://127.0.0.1:5000/v2.0/ crd_tenant_name = service crd_password = <-service-password-> crd_user_name = <-service-username->

CRD service must be running in the controller.