public class RRO extends RSVPObject
RFC 3209 RSVP-TE Record Route Object
Routes can be recorded via the RECORD_ROUTE object (RRO). Optionally, labels may also be recorded. The Record Route Class is 21. Currently one C_Type is defined, Type 1 Record Route. The RECORD_ROUTE object has the following format: Class = 21, C_Type = 1 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // (Subobjects) // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Subobjects The contents of a RECORD_ROUTE object are a series of variable-length data items called subobjects. The subobjects are defined in section 4.4.1 below. The RRO can be present in both RSVP Path and Resv messages. If a Path message contains multiple RROs, only the first RRO is meaningful. Subsequent RROs SHOULD be ignored and SHOULD NOT be propagated. Similarly, if in a Resv message multiple RROs are encountered following a FILTER_SPEC before another FILTER_SPEC is encountered, only the first RRO is meaningful. Subsequent RROs SHOULD be ignored and SHOULD NOT be propagated.
bytes, classNum, cType, length
Constructor and Description |
---|
RRO()
Constructor to be used when a new RRO Object wanted to be attached to a new message
|
RRO(byte[] bytes,
int offset)
Constructor to be used when a new RRO Object wanted to be decoded from a received
message.
|
Modifier and Type | Method and Description |
---|---|
void |
addRROubobject(RROSubobject rroSO)
Method to add a new RRO subobject to the ERO object.
|
void |
decode(byte[] bytes,
int offset) |
void |
encode()
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// (Subobjects) //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
LinkedList<RROSubobject> |
getRroSubobjects() |
void |
setRroSubobjects(LinkedList<RROSubobject> rroSubobjects) |
decodeHeader, encodeHeader, getBytes, getClassNum, getClassNum, getcType, getcType, getLength, getLength, setBytes, setClassNum, setcType, setLength
public RRO()
public RRO(byte[] bytes, int offset)
bytes
- offset
- public void addRROubobject(RROSubobject rroSO)
rroSO
- public void encode() throws RSVPProtocolViolationException
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // (Subobjects) // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
encode
in interface RSVPElement
encode
in class RSVPObject
RSVPProtocolViolationException
public void decode(byte[] bytes, int offset) throws RSVPProtocolViolationException
decode
in class RSVPObject
RSVPProtocolViolationException
public LinkedList<RROSubobject> getRroSubobjects()
public void setRroSubobjects(LinkedList<RROSubobject> rroSubobjects)
Copyright © 2016. All rights reserved.