Hash migration
This section illustrates how a hashing NTPL example from Green Bay 2 matching on an IPv4 address can be converted to a Link-Capture™ Software 12.8 NTPL example with the equivalent functionality.
Green Bay 2
This is the NTPL example from Green Bay 2.
IPMatchList[ListType=OuterIP] = IPv4Addr == [10.10.10.1] HashMode[IPMatch=SrcOrDstIP; InnerLayer3Type = IPV4; MaskNo=1; TupleSwap=IPMatchLast] = HashInner2Tuple HashMask[HashWord0=[FF.FF.FF.FF]; HashWord4=[0.0.0.0]] = MaskNo == 1 Assign[StreamId=(0..7)] = (IPMatch == SrcIP,DstIP and TunnelType == GTPv1-U-GPDU)
Link-Capture™ Software 12.8
This is a converted Link-Capture™ Software 12.8 NTPL example.
Define IPv4_list = Macro("3") Define IPv4SrcField = Field(Layer3Header[12]/32) Define IPv4DstField = Field(Layer3Header[16]/32) Define InnerSourceIP = Field(InnerLayer3Header[12]/32) Define InnerDestIP = Field(InnerLayer3Header[16]/32) Define UplinkHash = Hash(HashWord0_3=InnerSourceIP) Define DownlinkHash = Hash(HashWord0_3=InnerDestIP) KeyType[Name=kt_IPv4; Access=Full] = {32} KeyDef[Name=IPv4Src; KeyType=kt_IPv4] = (IPv4SrcField) KeyDef[Name=IPv4Dst; KeyType=kt_IPv4] = (IPv4DstField) KeyList[KeySet = IPv4_list; KeyType = kt_IPv4] = ([10.10.10.1]) Assign[StreamId=(0..7); Hash= UplinkHash] = TunnelType == GTPv1-U-GPDU AND \\ ( Key(IPv4Src) == IPv4_list OR Key(IPv4Dst) == ANY ) Assign[StreamId=(0..7); Hash= DownlinkHash] = TunnelType == GTPv1-U-GPDU AND \\ ( Key(IPv4Dst) == IPv4_list OR Key(IPv4Src) == ANY )