22 #ifndef IPCS_CLASSIFIER_RECORD_H
23 #define IPCS_CLASSIFIER_RECORD_H
26 #include "ns3/ipv4-address.h"
55 uint16_t srcPortLow, uint16_t srcPortHigh,
56 uint16_t dstPortLow, uint16_t dstPortHigh,
117 uint16_t srcPort, uint16_t dstPort,
118 uint8_t proto)
const;
122 uint16_t
GetCid (
void)
const;
135 void SetCid (uint16_t cid);
std::vector< struct PortRange > m_srcPortRange
a class to represent an Ipv4 address mask
bool CheckMatch(Ipv4Address srcAddress, Ipv4Address dstAddress, uint16_t srcPort, uint16_t dstPort, uint8_t proto) const
check if a packets can be used with this classifier
bool CheckMatchProtocol(uint8_t proto) const
bool CheckMatchSrcAddr(Ipv4Address srcAddress) const
This class implements the Type-Len-Value structure channel encodings as described by "IEEE Standard f...
std::vector< uint8_t > m_protocol
uint16_t GetCid(void) const
void AddSrcAddr(Ipv4Address srcAddress, Ipv4Mask srcMask)
add a new source ip address to the classifier
std::vector< struct ipv4Addr > m_dstAddr
void AddSrcPortRange(uint16_t srcPortLow, uint16_t srcPortHigh)
add a range of source port to the classifier
std::vector< struct PortRange > m_dstPortRange
void AddDstAddr(Ipv4Address dstAddress, Ipv4Mask dstMask)
add a new destination ip address to the classifier
bool CheckMatchDstPort(uint16_t dstPort) const
void SetCid(uint16_t cid)
Set the cid associated to this classifier.
void SetPriority(uint8_t prio)
Set the priority of this classifier.
bool CheckMatchSrcPort(uint16_t srcPort) const
bool CheckMatchDstAddr(Ipv4Address dstAddress) const
std::vector< struct ipv4Addr > m_srcAddr
void AddDstPortRange(uint16_t dstPortLow, uint16_t dstPortHigh)
add a range of destination port to the classifier
Ipv4 addresses are stored in host order in this class.
uint16_t GetIndex(void) const
void AddProtocol(uint8_t proto)
add a protocol to the classifier
void SetIndex(uint16_t index)
Set the index of the classifier.
uint8_t GetPriority(void) const
Tlv ToTlv(void) const
Creates a TLV from this classifier.