2 * (c) 2015 Cable Television Laboratories, Inc. All rights reserved.
5 package org.pcmm.gates;
7 import org.pcmm.base.IPCMMBaseObject;
10 * GateSpec describes specific authorization parameters defining a Gate (i.e., QoS limits, timers, etc.).
12 * From the Packetcable Multimedia specification section 6.1.4
14 * The GateSpec describes some high-level attributes of the Gate, and contains information regarding the treatment of
15 * other objects specified in the Gate message. Information contained in a GateSpec is outlined below.
22 * * Committed Recovery Timer
23 * * DSCP/TOS Overwrite
26 * SessionClassID provides a way for the Application Manager and the Policy Server to group Gates into different
27 * classes with different authorization characteristics. For example, one could use the SessionClassID to represent
28 * some prioritization or preemption scheme that would allow either the Policy Server or the CMTS to preempt a preauthorized
29 * Gate in favor of allowing a new Gate with a higher priority to be authorized.
31 * Direction indicates whether the Gate is for an upstream or downstream flow. Depending on this direction, the CMTS
32 * MUST reserve and activate the DOCSIS flows accordingly. For Multicast Gates the CMTS needs to only support
33 * flows or gates in the downstream direction.
35 * Authorized Timer limits the amount of time the authorization must remain valid before it is reserved (see
38 * Reserved Timer limits the amount of time the reservation must remain valid before the resources are committed (see
41 * Committed Timer limits the amount of time a committed service flow may remain idle.
43 * Committed Recovery Timer limits the amount of time that a committed service flow can remain without a
44 * subsequent refresh message from the PS/AM once the PS/AM has been notified of inactivity (see Section 6.2).
45 * DSCP/TOS Overwrite field can be used to overwrite the DSCP/TOS field of packets associated with the DOCSIS
46 * Service Flow that corresponds to the Gate. This field may be unspecified in which case the DSCP/TOS field in the
47 * packet is not over-written by the CMTS. This field may be used in both the upstream and downstream directions.
48 * The CMTS MUST support DSCP/TOS overwrite for upstream gates. The CMTS MAY support DSCP/TOS
49 * overwrite for downstream gates. If DSCP/TOS is enabled in a downstream gate and the CMTS does not support that
50 * function, then the field is ignored. The manner in which the CMTS interprets the DSCP/TOS Overwrite & Mask
51 * fields and transforms it into the corresponding DOCSIS Service Flow Parameters is defined in Section 6.4.2.5.
53 public interface IGateSpec extends IPCMMBaseObject {
56 * The S-Type for Gate Specifications
62 * Direction indicates whether the Gate is for an upstream or downstream
63 * flow. Depending on this direction, the CMTS MUST reserve and activate the
64 * DOCSIS flows accordingly. For Multicast Gates the CMTS needs to only
65 * support flows or gates in the downstream direction.
72 UPSTREAM((byte) 1), DOWNSTREAM((byte) 0);
74 Direction(byte value) {
78 public byte getValue() {
83 public String toString() {
94 public static Direction valueOf(byte v) {
97 return Direction.DOWNSTREAM;
99 return Direction.UPSTREAM;
101 throw new IllegalArgumentException("not supported value");
109 * provides a way for the Application Manager and the Policy Server to group
110 * Gates into different classes with different authorization
111 * characteristics. For example, one could use the SessionClassID to
112 * represent some prioritization or preemption scheme that would allow
113 * either the Policy Server or the CMTS to preempt a pre-authorized Gate in
114 * favor of allowing a new Gate with a higher priority to be authorized.
117 * @return session class ID;
119 ISessionClassID getSessionClassID();
125 Direction getDirection();
128 * Authorized Timer limits the amount of time the authorization must remain
129 * valid before it is reserved
131 * @return time in ms;
136 * Reserved Timer limits the amount of time the reservation must remain
137 * valid before the resources are committed
139 * @return time in ms;
144 * Committed Timer limits the amount of time a committed service flow may
147 * @return time in ms;
152 * Committed Recovery Timer limits the amount of time that a committed
153 * service flow can remain without a subsequent refresh message from the
154 * PS/AM once the PS/AM has been notified of inactivity
156 * @return time in ms;
164 byte getDSCP_TOSOverwrite();
170 byte getDSCP_TOSMask();