2 * (c) 2015 Cable Television Laboratories, Inc. All rights reserved.
5 package org.pcmm.gates;
7 import org.pcmm.base.IPCMMBaseObject;
9 import java.net.InetAddress;
12 * The Classifier object specifies the packet matching rules associated with a Gate. As defined in Sections 6.4.3.1 and
13 * 6.4.3.2, for Unicast Gates multiple Classifier objects may be included in the Gate-Set to allow for complex
14 * classifier rules. When an AM is using Classifier objects, at least one Classifier MUST be provided by the PDP in all
15 * Gate-Set messages. More than one Classifier is allowed for Unicast Gates. Only one classifier is required to be
16 * supported for Multicast Gates. Unlike DOCSIS DSx signaling, Classifiers have no identifier and have no explicit add,
17 * change, or remove operations. The entire set of Classifiers present in a Gate-Set message replaces the entire set of
18 * classifiers for the existing Gate. Equivalence of Classifiers is determined by comparing all fields within the
19 * Classifier. Classifiers may be provided in any order.
21 public interface IClassifier extends IPCMMBaseObject {
26 * IP Destination Address or IPv6 Destination Address is the termination
27 * point for the IP flow
29 * @return destination IP address.
31 InetAddress getDestinationIPAddress();
34 * Returns the destination port value
35 * @return - the port number
37 short getDestinationPort();
40 * Source IP, IP Source Address, or IPv6 Source Address (in the case of
41 * Extended Classifier or IPv6 Classifier) is the IP address (as seen at the
42 * CMTS) of the originator of the IP flow.
44 * @return source IP address.
46 InetAddress getSourceIPAddress();
49 * Returns the source port value
50 * @return - the port number
52 short getSourcePort();
55 * Protocol field, in a legacy Classifier or Extended Classifier, identifies
56 * the type of protocol (e.g., IP, ICMP, etc.). The Next Header Type field
57 * serves a similar function in the IPv6 Classifier.
59 * @return the protocol.
61 Protocol getProtocol();
64 * Priority may be used to distinguish between multiple classifiers that
65 * match a particular packet. This is typically set to a default value since
66 * classifiers are generally intended to be unique.
73 * Returns the DSCPTOS enumeration value (ENABLE|DISABLE)
74 * @return the enumeration
79 * Returns the DSCPTOS mask value
82 byte getDSCPTOSMask();
85 * Enumeration of supported protocols
88 /*ICMP((short) 1), IGMP((short) 2), */
89 NONE((short)0), TCP((short) 6), UDP((short) 17);
95 public static Protocol valueOf(short v) {
99 /* TODO - Determine why these two values are not being supported???
113 public short getValue() {