Package org.onosproject.driver.pipeline
Class SpringOpenTTP
- java.lang.Object
-
- org.onosproject.net.driver.AbstractBehaviour
-
- org.onosproject.net.driver.AbstractHandlerBehaviour
-
- org.onosproject.driver.pipeline.SpringOpenTTP
-
- All Implemented Interfaces:
org.onosproject.net.behaviour.Pipeliner,org.onosproject.net.driver.Behaviour,org.onosproject.net.driver.HandlerBehaviour
- Direct Known Subclasses:
SpringOpenTTPDell
public class SpringOpenTTP extends org.onosproject.net.driver.AbstractHandlerBehaviour implements org.onosproject.net.behaviour.PipelinerDriver for SPRING-OPEN pipeline.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classSpringOpenTTP.SpringOpenGroupSpringOpenGroup can either serve as storage for a GroupKey which can be used to fetch the group from the Group Service, or it can be serve as storage for Traffic Treatments which can be used as flow actions.
-
Field Summary
Fields Modifier and Type Field Description protected intaclTableIdprotected org.onlab.util.KryoNamespaceappKryoprotected org.onosproject.net.DeviceIddeviceIdprotected intdstMacTableIdprotected org.onosproject.net.flowobjective.FlowObjectiveStoreflowObjectiveStoreprotected org.onosproject.net.group.GroupServicegroupServiceprotected intipv4UnicastTableIdprotected intmplsTableIdprotected intsrcMacTableIdprotected inttmacTableIdprotected intvlanTableIdSet the default values.
-
Constructor Summary
Constructors Constructor Description SpringOpenTTP()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidfail(org.onosproject.net.flowobjective.Objective obj, org.onosproject.net.flowobjective.ObjectiveError error)voidfilter(org.onosproject.net.flowobjective.FilteringObjective filteringObjective)voidforward(org.onosproject.net.flowobjective.ForwardingObjective fwd)java.util.List<java.lang.String>getNextMappings(org.onosproject.net.behaviour.NextGroup nextGroup)voidinit(org.onosproject.net.DeviceId deviceId, org.onosproject.net.behaviour.PipelinerContext context)voidnext(org.onosproject.net.flowobjective.NextObjective nextObjective)protected voidpopulateTableMissEntry(int tableToAdd, boolean toControllerNow, boolean toControllerWrite, boolean toTable, int tableToSend)protected java.util.List<org.onosproject.net.flow.FlowRule>processEthDstFilter(org.onosproject.net.flow.criteria.EthCriterion ethCriterion, org.onosproject.net.flow.criteria.VlanIdCriterion vlanIdCriterion, org.onosproject.net.flowobjective.FilteringObjective filt, org.onlab.packet.VlanId assignedVlan, org.onosproject.core.ApplicationId applicationId)protected java.util.List<org.onosproject.net.flow.FlowRule>processEthDstOnlyFilter(org.onosproject.net.flow.criteria.EthCriterion ethCriterion, org.onosproject.core.ApplicationId applicationId, int priority)protected java.util.Collection<org.onosproject.net.flow.FlowRule>processEthDstSpecificObjective(org.onosproject.net.flowobjective.ForwardingObjective fwd)protected java.util.Collection<org.onosproject.net.flow.FlowRule>processEthTypeSpecificObjective(org.onosproject.net.flowobjective.ForwardingObjective fwd)protected java.util.Collection<org.onosproject.net.flow.FlowRule>processSpecific(org.onosproject.net.flowobjective.ForwardingObjective fwd)protected java.util.List<org.onosproject.net.flow.FlowRule>processVlanIdFilter(org.onosproject.net.flow.criteria.VlanIdCriterion vlanIdCriterion, org.onosproject.net.flowobjective.FilteringObjective filt, org.onlab.packet.VlanId assignedVlan, org.onlab.packet.VlanId explicitlyAssignedVlan, org.onlab.packet.VlanId pushedVlan, boolean pushVlan, boolean popVlan, org.onosproject.core.ApplicationId applicationId)protected voidsetTableMissEntries()-
Methods inherited from class org.onosproject.net.driver.AbstractHandlerBehaviour
handler, setHandler
-
-
-
-
Field Detail
-
vlanTableId
protected int vlanTableId
Set the default values. These variables will get overwritten based on the switch vendor type
-
tmacTableId
protected int tmacTableId
-
ipv4UnicastTableId
protected int ipv4UnicastTableId
-
mplsTableId
protected int mplsTableId
-
dstMacTableId
protected int dstMacTableId
-
aclTableId
protected int aclTableId
-
srcMacTableId
protected int srcMacTableId
-
groupService
protected org.onosproject.net.group.GroupService groupService
-
flowObjectiveStore
protected org.onosproject.net.flowobjective.FlowObjectiveStore flowObjectiveStore
-
deviceId
protected org.onosproject.net.DeviceId deviceId
-
appKryo
protected org.onlab.util.KryoNamespace appKryo
-
-
Method Detail
-
init
public void init(org.onosproject.net.DeviceId deviceId, org.onosproject.net.behaviour.PipelinerContext context)- Specified by:
initin interfaceorg.onosproject.net.behaviour.Pipeliner
-
filter
public void filter(org.onosproject.net.flowobjective.FilteringObjective filteringObjective)
- Specified by:
filterin interfaceorg.onosproject.net.behaviour.Pipeliner
-
forward
public void forward(org.onosproject.net.flowobjective.ForwardingObjective fwd)
- Specified by:
forwardin interfaceorg.onosproject.net.behaviour.Pipeliner
-
next
public void next(org.onosproject.net.flowobjective.NextObjective nextObjective)
- Specified by:
nextin interfaceorg.onosproject.net.behaviour.Pipeliner
-
processSpecific
protected java.util.Collection<org.onosproject.net.flow.FlowRule> processSpecific(org.onosproject.net.flowobjective.ForwardingObjective fwd)
-
processEthTypeSpecificObjective
protected java.util.Collection<org.onosproject.net.flow.FlowRule> processEthTypeSpecificObjective(org.onosproject.net.flowobjective.ForwardingObjective fwd)
-
processEthDstSpecificObjective
protected java.util.Collection<org.onosproject.net.flow.FlowRule> processEthDstSpecificObjective(org.onosproject.net.flowobjective.ForwardingObjective fwd)
-
processEthDstFilter
protected java.util.List<org.onosproject.net.flow.FlowRule> processEthDstFilter(org.onosproject.net.flow.criteria.EthCriterion ethCriterion, org.onosproject.net.flow.criteria.VlanIdCriterion vlanIdCriterion, org.onosproject.net.flowobjective.FilteringObjective filt, org.onlab.packet.VlanId assignedVlan, org.onosproject.core.ApplicationId applicationId)
-
processEthDstOnlyFilter
protected java.util.List<org.onosproject.net.flow.FlowRule> processEthDstOnlyFilter(org.onosproject.net.flow.criteria.EthCriterion ethCriterion, org.onosproject.core.ApplicationId applicationId, int priority)
-
processVlanIdFilter
protected java.util.List<org.onosproject.net.flow.FlowRule> processVlanIdFilter(org.onosproject.net.flow.criteria.VlanIdCriterion vlanIdCriterion, org.onosproject.net.flowobjective.FilteringObjective filt, org.onlab.packet.VlanId assignedVlan, org.onlab.packet.VlanId explicitlyAssignedVlan, org.onlab.packet.VlanId pushedVlan, boolean pushVlan, boolean popVlan, org.onosproject.core.ApplicationId applicationId)
-
setTableMissEntries
protected void setTableMissEntries()
-
populateTableMissEntry
protected void populateTableMissEntry(int tableToAdd, boolean toControllerNow, boolean toControllerWrite, boolean toTable, int tableToSend)
-
fail
protected void fail(org.onosproject.net.flowobjective.Objective obj, org.onosproject.net.flowobjective.ObjectiveError error)
-
getNextMappings
public java.util.List<java.lang.String> getNextMappings(org.onosproject.net.behaviour.NextGroup nextGroup)
- Specified by:
getNextMappingsin interfaceorg.onosproject.net.behaviour.Pipeliner
-
-