public class VxlanGreConntrackBasedSnatService extends ConntrackBasedSnatService
DNAT_CT_STATE, DNAT_CT_STATE_MASK, SNAT_CT_STATE, SNAT_CT_STATE_MASK, TRACKED_NEW_CT_MASK, TRACKED_NEW_CT_STATE
dataBroker, eventCallbacks, fibManager, idManager, interfaceManager, itmManager, mdsalManager, naptSwitchSelector, natDataUtil, odlInterfaceRpcService, txRunner, vpnFootprintService
Constructor and Description |
---|
VxlanGreConntrackBasedSnatService(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService itmManager,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService odlInterfaceRpcService,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager,
NAPTSwitchSelector naptSwitchSelector,
ExternalRoutersListener externalRouterListener,
IElanService elanManager,
org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager,
IVpnFootprintService vpnFootprintService,
IFibManager fibManager,
NatDataUtil natDataUtil,
org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks,
NatOverVxlanUtil natOverVxlanUtil) |
Modifier and Type | Method and Description |
---|---|
boolean |
addCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Adds flows for centralized switch for the dpnId.
|
boolean |
addCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Adds flows for centralized switch for all dpns having ports on the router subnet.
|
protected void |
addInboundEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId,
Long extNeVpnId,
List<ExternalIps> externalIps,
int elanId) |
protected void |
addNaptPfibFlowForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger dpnId,
Long extNetVpnId) |
protected void |
addOutboundTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId,
Long extNetVpnId,
List<ExternalIps> externalIps,
int elanId) |
protected void |
addOutboundTblTrackEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
Long extNetVpnId) |
boolean |
addSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Adds snat flows for the dpnId.
|
boolean |
addSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Adds snat flows for all dpns having ports on the router subnet.
|
protected void |
addSnatMissEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
String routerName,
BigInteger primarySwitchId) |
protected void |
addSnatSpecificEntriesForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger dpnId) |
protected void |
addTerminatingServiceTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
String routerName,
Long routerId,
int elanId) |
boolean |
removeCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Removes flows for centralized switch for the dpnId.
|
boolean |
removeCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Removes flows for centralized switch for all dpns having ports on the router subnet.
|
protected void |
removeInboundEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId,
List<ExternalIps> externalIps) |
protected void |
removeNaptPfibFlowForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger dpnId,
Long extNetVpnId) |
protected void |
removeOutboundTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
long routerId,
List<ExternalIps> externalIps) |
protected void |
removeOutboundTblTrackEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId) |
boolean |
removeSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId)
Removes snat flows for the dpnId.
|
boolean |
removeSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger primarySwitchId)
Removes snat flows for all dpns having ports on the router subnet.
|
protected void |
removeSnatMissEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId,
String routerName) |
protected void |
removeSnatSpecificEntriesForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
Routers routers,
BigInteger dpnId) |
protected void |
removeTerminatingServiceTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx,
BigInteger dpnId,
Long routerId) |
addInboundEntry, addNaptPfibEntry, addNaptPfibFlow, addOutboundTblEntry, addOutboundTblTrackEntry, addSnatMissEntryForPrimrySwch, addSnatSpecificEntriesForNonNaptSwitch, removeInboundEntry, removeNaptPfibEntry, removeNaptPfibFlow, removeOutboundTblEntry, removeOutboundTblTrackEntry, removeSnatMissEntryForPrimrySwch, removeSnatSpecificEntriesForNonNaptSwitch
addCommonEntriesForNaptSwitch, addCommonEntriesForNonNaptSwitch, addDefaultFibRouteForSNAT, addInboundFibEntry, addInboundTerminatingServiceTblEntry, addSnatCommonEntriesForNaptSwitch, addSnatCommonEntriesForNonNaptSwitch, addTerminatingServiceTblEntry, close, createGroupId, getDataBroker, getFlowRef, getGroupIdKey, handleRouterUpdate, init, removeCommonEntriesForNaptSwitch, removeCommonEntriesForNonNaptSwitch, removeDefaultFibRouteForSNAT, removeInboundFibEntry, removeInboundTerminatingServiceTblEntry, removeMipAdjacencies, removeSnatCommonEntriesForNaptSwitch, removeSnatCommonEntriesForNonNaptSwitch, removeTerminatingServiceTblEntry
public VxlanGreConntrackBasedSnatService(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalManager, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService itmManager, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService odlInterfaceRpcService, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager, NAPTSwitchSelector naptSwitchSelector, ExternalRoutersListener externalRouterListener, IElanService elanManager, org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager, IVpnFootprintService vpnFootprintService, IFibManager fibManager, NatDataUtil natDataUtil, org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks, NatOverVxlanUtil natOverVxlanUtil)
public boolean addSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId)
SnatServiceListener
addSnatAllSwitch
in interface SnatServiceListener
addSnatAllSwitch
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchIdpublic boolean removeSnatAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId) throws ExecutionException, InterruptedException
SnatServiceListener
removeSnatAllSwitch
in interface SnatServiceListener
removeSnatAllSwitch
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchIdExecutionException
InterruptedException
public boolean addCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId)
SnatServiceListener
addCentralizedRouterAllSwitch
in interface SnatServiceListener
addCentralizedRouterAllSwitch
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.public boolean removeCentralizedRouterAllSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId) throws ExecutionException, InterruptedException
SnatServiceListener
removeCentralizedRouterAllSwitch
in interface SnatServiceListener
removeCentralizedRouterAllSwitch
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.ExecutionException
InterruptedException
public boolean addCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId, BigInteger dpnId)
SnatServiceListener
addCentralizedRouter
in interface SnatServiceListener
addCentralizedRouter
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be added.public boolean removeCentralizedRouter(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId, BigInteger dpnId) throws ExecutionException, InterruptedException
SnatServiceListener
removeCentralizedRouter
in interface SnatServiceListener
removeCentralizedRouter
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be removed.ExecutionException
InterruptedException
public boolean addSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId, BigInteger dpnId)
SnatServiceListener
addSnat
in interface SnatServiceListener
addSnat
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be added.public boolean removeSnat(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger primarySwitchId, BigInteger dpnId) throws ExecutionException, InterruptedException
SnatServiceListener
removeSnat
in interface SnatServiceListener
removeSnat
in class AbstractSnatService
confTx
- The transaction to use.routers
- the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be removed.ExecutionException
InterruptedException
protected void addSnatSpecificEntriesForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger dpnId)
addSnatSpecificEntriesForNaptSwitch
in class ConntrackBasedSnatService
protected void removeSnatSpecificEntriesForNaptSwitch(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger dpnId) throws ExecutionException, InterruptedException
removeSnatSpecificEntriesForNaptSwitch
in class ConntrackBasedSnatService
ExecutionException
InterruptedException
protected void addOutboundTblTrackEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, Long routerId, Long extNetVpnId)
protected void removeOutboundTblTrackEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, Long routerId) throws ExecutionException, InterruptedException
protected void addOutboundTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, long routerId, Long extNetVpnId, List<ExternalIps> externalIps, int elanId)
protected void removeOutboundTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, long routerId, List<ExternalIps> externalIps) throws ExecutionException, InterruptedException
protected void addNaptPfibFlowForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger dpnId, Long extNetVpnId)
protected void removeNaptPfibFlowForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, Routers routers, BigInteger dpnId, Long extNetVpnId) throws ExecutionException, InterruptedException
protected void addInboundEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, long routerId, Long extNeVpnId, List<ExternalIps> externalIps, int elanId)
protected void removeInboundEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, long routerId, List<ExternalIps> externalIps) throws ExecutionException, InterruptedException
protected void addTerminatingServiceTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, String routerName, Long routerId, int elanId)
protected void removeTerminatingServiceTblEntryForVxlanGre(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, Long routerId) throws ExecutionException, InterruptedException
protected void addSnatMissEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, Long routerId, String routerName, BigInteger primarySwitchId)
addSnatMissEntry
in class AbstractSnatService
protected void removeSnatMissEntry(org.opendaylight.genius.infra.TypedReadWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> confTx, BigInteger dpnId, Long routerId, String routerName) throws ExecutionException, InterruptedException
removeSnatMissEntry
in class AbstractSnatService
ExecutionException
InterruptedException
Copyright © 2019 OpenDaylight. All rights reserved.