onos-drivers.xml 10.2 KB
<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2015 Open Networking Laboratory
  ~
  ~ 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.
  -->
<drivers>
    <driver name="default"
            manufacturer="ON.Lab" hwVersion="0.0.1" swVersion="0.0.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.DefaultSingleTablePipeline"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.DefaultSwitchHandshaker"/>
        <behaviour api="org.onosproject.net.behaviour.TunnelConfig"
                   impl="org.onosproject.driver.ovsdb.OvsdbTunnelConfig"/>
        <behaviour api="org.onosproject.net.behaviour.BridgeConfig"
                   impl="org.onosproject.driver.ovsdb.OvsdbBridgeConfig"/>
    </driver>
    <driver name="ovs" extends="default"
            manufacturer="Nicira, Inc\." hwVersion="Open vSwitch" swVersion="2\..*">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.NiciraSwitchHandshaker"/>
        <behaviour api="org.onosproject.net.behaviour.ControllerConfig"
                   impl="org.onosproject.driver.ovsdb.OvsdbControllerConfig"/>
        <behaviour api="org.onosproject.openflow.controller.ExtensionTreatmentInterpreter"
                   impl="org.onosproject.driver.extensions.NiciraExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionTreatmentResolver"
                   impl="org.onosproject.driver.extensions.NiciraExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.openflow.controller.ExtensionSelectorInterpreter"
                   impl="org.onosproject.driver.extensions.NiciraExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionSelectorResolver"
                   impl="org.onosproject.driver.extensions.NiciraExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.VlanQuery"
                   impl="org.onosproject.driver.query.FullVlanAvailable" />
        <behaviour api="org.onosproject.net.behaviour.MplsQuery"
                   impl="org.onosproject.driver.query.FullMplsAvailable" />
    </driver>
    <!--This driver is for simulated NETCONF devices through of-config tool on top og OVSDB-->
    <driver name="ovs-netconf" extends="default"
            manufacturer="" hwVersion="" swVersion="">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.NiciraSwitchHandshaker"/>
        <behaviour api="org.onosproject.net.behaviour.ControllerConfig"
                   impl="org.onosproject.driver.netconf.NetconfControllerConfig"/>
    </driver>
    <driver name="ovs-corsa" extends="ovs"
            manufacturer="Corsa" hwVersion="emulation" swVersion="0.0.0">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OVSCorsaPipeline"/>
    </driver>
    <!--  Emulation of the spring-open pipeline using a CPqD OF 1.3 software switch.
       ~  This driver is the default driver assigned to the CPqD switch.
      -->
    <driver name="spring-open-cpqd" extends="default"
            manufacturer="Stanford University, Ericsson Research and CPqD Research"
            hwVersion="OpenFlow 1.3 Reference Userspace Switch" swVersion=".*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.SpringOpenTTP"/>
    </driver>
    <driver name="spring-open" extends="default"
            manufacturer="Dell " hwVersion="OpenFlow switch HW ver. 1.0"
            swVersion="OpenFlow switch SW ver. 1.0 and 1.3">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.SpringOpenTTPDell"/>
    </driver>
    <driver name="linc-oe" extends="default"
            manufacturer="FlowForwarding.org" hwVersion="Unknown"
            swVersion="LINC-OE OpenFlow Software Switch 1.1">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.OfOpticalSwitchImplLinc13"/>
        <behaviour api="org.onosproject.net.behaviour.LambdaQuery"
                   impl="org.onosproject.driver.handshaker.OfOpticalSwitchImplLinc13"/>
    </driver>
    <driver name="corsa"
            manufacturer="Corsa" hwVersion="Corsa Element" swVersion="2.3.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CorsaPipeline"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CorsaSwitchHandshaker"/>
    </driver>
    <driver name="corsa-v1"
            manufacturer="Corsa" hwVersion="Corsa Element" swVersion="2.3.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CorsaPipeline"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CorsaSwitchHandshaker"/>
    </driver>
    <driver name="corsa-v3"
            manufacturer="Corsa" hwVersion="Corsa Element" swVersion="2.3.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CorsaPipelineV3"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CorsaSwitchHandshaker"/>
    </driver>
    <driver name="ofdpa" extends="default"
            manufacturer="Broadcom Corp." hwVersion="OF-DPA.*" swVersion="OF-DPA.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OFDPA2Pipeline"/>
    </driver>
    <driver name="pmc-olt" extends="default"
            manufacturer="Big Switch Networks" hwVersion="ivs 0.5" swVersion="ivs 0.5">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </driver>
    <driver name="g.fast" extends="default"
            manufacturer="TEST1" hwVersion="TEST2" swVersion="TEST3">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </driver>
    <!--  The SoftRouter driver is meant to be used by any software/NPU based
       ~  switch that wishes to implement a simple 2-table router. To use this
       ~  driver, configure ONOS with the dpid of the device, or extend the
       ~  driver declaration with the manufacturer/hwVersion/swVersion of the
       ~  device (see 'noviflow' example).
      -->
    <driver name="softrouter" extends="default"
            manufacturer="Various" hwVersion="various" swVersion="0.0.0">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.SoftRouterPipeline"/>
    </driver>
    <driver name="centec-V350" extends="default"
            manufacturer=".*Centec.*" hwVersion=".*" swVersion="3.1.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CentecV350Pipeline"/>
    </driver>
    <driver name="pica" extends="default"
            manufacturer="Pica8, Inc." hwVersion=".*" swVersion="PicOS 2.6">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.PicaPipeline"/>
    </driver>
    <driver name="noviflow" extends="softrouter"
            manufacturer="NoviFlow Inc" hwVersion="NS.*" swVersion="NW.*">
    </driver>
    <!--  Emulation of the ofdpa pipeline using a CPqD OF 1.3 software switch.
       ~  To use this driver, configure ONOS with the dpid of the device.
      -->
    <driver name="ofdpa-cpqd" extends="default"
            manufacturer="ONF"
            hwVersion="OF1.3 Software Switch from CPqD" swVersion="for Group Chaining">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CpqdOFDPA2Pipeline"/>
    </driver>
    <driver name="calient" extends="default"
            manufacturer="calient inc" hwVersion="calient hardware"
            swVersion="ocs switch">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CalientFiberSwitchHandshaker"/>
        <behaviour api="org.onosproject.net.behaviour.LambdaQuery"
                   impl="org.onosproject.driver.handshaker.CalientFiberSwitchHandshaker"/>
    </driver>
    <driver name="onosfw" extends="ovs"
            manufacturer="" hwVersion="" swVersion="">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OpenVSwitchPipeline"/>
    </driver>
    <driver name="eci" extends="default"
            manufacturer="ECI Telecom" hwVersion="Optical.*" swVersion="V_1_0">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.OFOpticalSwitch13"/>
    </driver>
    <driver name="aos" extends="ofdpa"
            manufacturer="Accton" hwVersion=".*" swVersion="1.*">
    </driver>
    <driver name="sona" extends="ovs"
            manufacturer="" hwVersion="" swVersion="">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OpenstackPipeline"/>
    </driver>
</drivers>