@Singleton public class ElanItmUtils extends Object
Constructor and Description |
---|
ElanItmUtils(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService itmRpcService,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService interfaceManagerRpcService,
org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager) |
Modifier and Type | Method and Description |
---|---|
List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> |
buildItmEgressActions(String interfaceName,
Long tunnelKey,
boolean internal)
Builds the list of actions to be taken when sending the packet over external port such as tunnel, physical
port etc.
|
List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> |
buildTunnelItmEgressActions(String tunnelIfaceName,
Long tunnelKey,
boolean ineternal)
Builds the list of actions to be taken when sending the packet over a VxLan Tunnel Interface, such as setting
the network VNI in the tunnel_id field.
|
List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> |
getExternalPortItmEgressAction(String interfaceName)
Build the list of actions to be taken when sending the packet to external
(physical) port.
|
String |
getExternalTunnelInterfaceName(String sourceNode,
String dstNode)
Gets the external tunnel interface name.
|
List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> |
getExternalTunnelItmEgressAction(BigInteger srcDpnId,
org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId torNode,
long vni)
Builds the list of actions to be taken when sending the packet over an
external VxLan tunnel interface, such as stamping the VNI on the VxLAN
header, setting the vlanId if it proceeds and output the packet over the
right port.
|
List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> |
getExternalTunnelItmEgressAction(BigInteger srcDpnId,
String nexthopIP,
long vni) |
List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> |
getInternalTunnelItmEgressAction(BigInteger sourceDpnId,
BigInteger destinationDpnId,
long tunnelKey)
Builds the list of actions to be taken when sending the packet over an internal VxLAN tunnel interface, such
as setting the serviceTag/segmentationID on the VNI field of the VxLAN header, setting the vlanId if it proceeds
and output the packet over the right port.
|
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress |
getSourceDpnTepIp(BigInteger srcDpnId,
org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId dstHwVtepNodeId)
Gets the source dpn tep ip.
|
@Inject public ElanItmUtils(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService itmRpcService, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService interfaceManagerRpcService, org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager interfaceManager)
public List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> getExternalTunnelItmEgressAction(BigInteger srcDpnId, org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId torNode, long vni)
srcDpnId
- Dpn where the tunnelInterface is locatedtorNode
- NodeId of the ExternalDevice where the packet must be sent to.vni
- Vni to be stamped on the VxLAN Header.public List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> getExternalTunnelItmEgressAction(BigInteger srcDpnId, String nexthopIP, long vni)
public List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> getInternalTunnelItmEgressAction(BigInteger sourceDpnId, BigInteger destinationDpnId, long tunnelKey)
sourceDpnId
- Dpn where the tunnelInterface is locateddestinationDpnId
- Dpn where the packet must be sent to. It is used here in order
to select the right tunnel interface.tunnelKey
- Tunnel key to be sent on the VxLAN header.public List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> buildTunnelItmEgressActions(String tunnelIfaceName, Long tunnelKey, boolean ineternal)
tunnelIfaceName
- the tunnel iface nametunnelKey
- the tunnel keypublic List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> getExternalPortItmEgressAction(String interfaceName)
interfaceName
- Interface namepublic List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> buildItmEgressActions(String interfaceName, Long tunnelKey, boolean internal)
interfaceName
- the interface nametunnelKey
- can be VNI for VxLAN tunnel interfaces, Gre Key for GRE
tunnels, etc.public org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress getSourceDpnTepIp(BigInteger srcDpnId, org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId dstHwVtepNodeId)
srcDpnId
- the src dpn iddstHwVtepNodeId
- the dst hw vtep node idCopyright © 2019 OpenDaylight. All rights reserved.