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, 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) |
Modifier and Type | Method and Description |
---|---|
protected void |
createOutboundTblEntryForVxlanGre(BigInteger dpnId,
long routerId,
Long extNetVpnId,
List<ExternalIps> externalIps,
int elanId,
int addOrRemove) |
protected void |
createOutboundTblTrackEntryForVxlanGre(BigInteger dpnId,
Long routerId,
Long extNetVpnId,
int addOrRemove) |
boolean |
handleCentralizedRouter(Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId,
int addOrRemove)
Adds/removes flows for centralized switch for the dpnId.
|
boolean |
handleCentralizedRouterAllSwitch(Routers routers,
BigInteger primarySwitchId,
int addOrRemove)
Adds/removes flows for centralized switch for all dpns having ports on the router subnet.
|
boolean |
handleSnat(Routers routers,
BigInteger primarySwitchId,
BigInteger dpnId,
int addOrRemove)
Adds/removes snat flows for the dpnId.
|
boolean |
handleSnatAllSwitch(Routers routers,
BigInteger primarySwitchId,
int addOrRemove)
Adds/removes snat flows for all dpns having ports on the router subnet.
|
protected void |
installInboundEntryForVxlanGre(BigInteger dpnId,
long routerId,
Long extNeVpnId,
List<ExternalIps> externalIps,
int elanId,
int addOrRemove) |
protected void |
installNaptPfibFlowForVxlanGre(Routers routers,
BigInteger dpnId,
Long extNetVpnId,
int addOrRemove) |
protected void |
installSnatMissEntry(BigInteger dpnId,
Long routerId,
String routerName,
BigInteger primarySwitchId,
int addOrRemove) |
protected void |
installSnatSpecificEntriesForNaptSwitch(Routers routers,
BigInteger dpnId,
int addOrRemove) |
protected void |
installTerminatingServiceTblEntryForVxlanGre(BigInteger dpnId,
String routerName,
Long routerId,
int elanId,
int addOrRemove) |
createOutboundTblEntry, createOutboundTblTrackEntry, installInboundEntry, installNaptPfibEntry, installNaptPfibFlow, installSnatMissEntryForPrimrySwch, installSnatSpecificEntriesForNonNaptSwitch
close, createGroupId, getDataBroker, getFlowRef, getGroupIdKey, getTunnelInterfaceName, init, installCommonEntriesForNaptSwitch, installCommonEntriesForNonNaptSwitch, installDefaultFibRouteForSNAT, installInboundFibEntry, installInboundTerminatingServiceTblEntry, installSnatCommonEntriesForNaptSwitch, installSnatCommonEntriesForNonNaptSwitch, installTerminatingServiceTblEntry, removeMipAdjacencies, syncFlow
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)
public boolean handleSnatAllSwitch(Routers routers, BigInteger primarySwitchId, int addOrRemove)
SnatServiceListener
handleSnatAllSwitch
in interface SnatServiceListener
handleSnatAllSwitch
in class AbstractSnatService
routers
- the router.primarySwitchId
- the primaryswitchIdaddOrRemove
- add or remove the flow.public boolean handleSnat(Routers routers, BigInteger primarySwitchId, BigInteger dpnId, int addOrRemove)
SnatServiceListener
handleSnat
in interface SnatServiceListener
handleSnat
in class AbstractSnatService
routers
- the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be added/removed.addOrRemove
- add or remove the flow.public boolean handleCentralizedRouterAllSwitch(Routers routers, BigInteger primarySwitchId, int addOrRemove)
SnatServiceListener
handleCentralizedRouterAllSwitch
in interface SnatServiceListener
handleCentralizedRouterAllSwitch
in class AbstractSnatService
routers
- the router.primarySwitchId
- the primaryswitchId.addOrRemove
- add or remove the flow.public boolean handleCentralizedRouter(Routers routers, BigInteger primarySwitchId, BigInteger dpnId, int addOrRemove)
SnatServiceListener
handleCentralizedRouter
in interface SnatServiceListener
handleCentralizedRouter
in class AbstractSnatService
routers
- routers the router.primarySwitchId
- the primaryswitchId.dpnId
- the dpnId for which the flows needs to be added/removed.addOrRemove
- add or remove the flow.protected void installSnatSpecificEntriesForNaptSwitch(Routers routers, BigInteger dpnId, int addOrRemove)
installSnatSpecificEntriesForNaptSwitch
in class ConntrackBasedSnatService
protected void createOutboundTblTrackEntryForVxlanGre(BigInteger dpnId, Long routerId, Long extNetVpnId, int addOrRemove)
protected void createOutboundTblEntryForVxlanGre(BigInteger dpnId, long routerId, Long extNetVpnId, List<ExternalIps> externalIps, int elanId, int addOrRemove)
protected void installNaptPfibFlowForVxlanGre(Routers routers, BigInteger dpnId, Long extNetVpnId, int addOrRemove)
protected void installInboundEntryForVxlanGre(BigInteger dpnId, long routerId, Long extNeVpnId, List<ExternalIps> externalIps, int elanId, int addOrRemove)
protected void installTerminatingServiceTblEntryForVxlanGre(BigInteger dpnId, String routerName, Long routerId, int elanId, int addOrRemove)
protected void installSnatMissEntry(BigInteger dpnId, Long routerId, String routerName, BigInteger primarySwitchId, int addOrRemove)
installSnatMissEntry
in class AbstractSnatService
Copyright © 2019 OpenDaylight. All rights reserved.