Merge "Remove "response" from yang."
[packetcable.git] / packetcable-driver / src / main / java / org / pcmm / gates / ISubscriberID.java
1 /**
2  @header@
3  */
4
5
6 package org.pcmm.gates;
7
8 import java.net.InetAddress;
9
10 import org.pcmm.base.IPCMMBaseObject;
11
12 /**
13  * <p>
14  * The SubscriberID, consisting of the IPv4 or IPv6 address of either the CM or
15  * client CPE device (either directly connected to the CM or on a routable
16  * network behind the CM), identifies the user requesting the service. In
17  * complex network environments this address may be used to route Gate Control
18  * messages between a number of Policy Servers and to determine which CMTS is
19  * providing service to a particular endpoint. In addition to the IPv4 or IPv6
20  * address, a subscriber may also be identified via a FQDN or some opaque data
21  * (object defined below) relevant to the service in question.
22  * </p>
23  * <p>
24  * For a Multicast Gates the CMTS uses the SubscriberID to decide where the
25  * Multicast replication needs to be created. The CMTS treats the SubscriberID
26  * as the source IP address of a JoinMulticastSession [1]. If the SubscriberID
27  * is on an IP subnet that is not directly connected to the CMTS, the CMTS MAY
28  * reject the Gate as having an invalid SubscriberID see 6.4.2.14 PacketCable
29  * Error.
30  * </p>
31  *
32  *
33  */
34
35 public interface ISubscriberID extends IPCMMBaseObject {
36     static final short LENGTH = 8;
37     static final byte SNUM = 3;
38     static final byte STYPE = 1;
39
40     /**
41      * source IP address for the PCMM gate.
42      *
43      * @return IP v4 or v6 ip address.
44      */
45     InetAddress getSourceIPAddress();
46
47     void setSourceIPAddress(InetAddress address);
48
49 }