gov.nist.antd.mpls.mgmt.traffic_eng
Class OAMPacket

java.lang.Object
  |
  +--SSF.OS.ProtocolMessage
        |
        +--gov.nist.antd.mpls.mgmt.traffic_eng.OAMPacket

public class OAMPacket
extends ProtocolMessage

MPLS OAM Packet format for the MPLS OAM functions. There is one common MPLS OAM Packet Header definition and five MPLS OAM payload format in the OAMPacket class.

  =======================       =======================================
  MPLS OAM Packet Header        MPLS OAM Performance Monitoring payload
  =======================       =======================================
   - OAMMessageType             - TimeStamp
   - LSPID                      - BlockPacketCount
   - IngressLSRID               - BlockBytes
   - EgressLSRID                - SequenceNumber
  
  ==============================================      =========================
  MPLS OAM Performance Monitoring Report payload      Loop-back test payload
  ==============================================      =========================
  - PacketDelay (End-to-End packet delay)             - ReportNodeID (report point of the loop-back test)
  - bandwidth                                         - ReportTime
  - jitter
  - PacketLossRatio
  - sendingBlockBytes
  - receivingBlockBytes
  - sendingBlokCounts
  - receivingBlockCounts
  - OAMPacketLoss

  ===============================================        ================================
  MPLS OAM Performance Degradation Report payload        OAM Error Report payload
  ===============================================        ================================
  - DetectTime (Prformance Degradation Detection time)   - ErrorType
  - DelayWarning flag, DelayValue                        - ErrorDetectTime
  - JitterWarning flag, JitterValue                      - ErrorDetectNodeID
  - PacketLossWarning flag, PacketLossValue

 This class was developed at the National Institute of Standards and
 Technology by employees of the Federal Government in the course of
 their official duties. Pursuant to title 17 Section 105 of the United
 States Code this software is not subject to copyright protection and
 is in the public domain.
 NIST assumes no responsibility whatsoever for its use by other parties,
 and makes no guarantees, expressed or implied, about its quality,
 reliability, or any other characteristic.
 
We would appreciate acknowledgement if the software is used.
NIST ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION AND DISCLAIM ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.

Author:
EunHyuk Lim (ehlim@antd.nist.gov, othree28@hotmail.com)
, borchert , Chul Kim

Field Summary
 double bandwidth
          Field bandwidth - Bandwidth
 double BlockBytes
          Field BlockBytes - total bytes of transmitted user packets between previous MPLS OAM packet and this OAM packet
 long BlockPacketCount
          Field BlockPacketCount - total counts of transmitted user packets between previous MPLS OAM packet and this OAM packet
static int ContinuityCheckError
          Field ContinuityCheckError
static int ContinuityCheckRecover
          Field ContinuityCheckRecover
 double DelayValue
          Field DelayValue - Delayed value
 boolean DelayWarning
          Field DelayWarning - Delay warning
 java.lang.String DestinationID
          Field DestinationID - Destination LSR ID of a OAM Packet
 int DestinationIPAddr
          Field DestinationIPAddr - Destination LSR IP address of a OAM Packet
 double DetectTime
          Field DetectTime - Detection Time
 java.lang.String EgressLSRID
          Field EgressLSRID - XXX
 java.lang.String ErrorDetectNodeID
          Field ErrorDetectNodeID
 double ErrorDetectTime
          Field ErrorDetectTime
static int ErrorReport
          Field ErrorReport - Error Report type
 int ErrorType
          Field ErrorType - Error Type
 int ingressLSRID
          Field ingressLSRID - XXX
 java.lang.String IngressLSRID
          Field IngressLSRID - XXX
 boolean isContinuityCheck
          Field isContinuityCheck - Continuity check flag
 double jitter
          Field jitter - Jitter
 double JitterValue
          Field JitterValue - Jitter value
 boolean JitterWarning
          Field JitterWarning - Jitter warning
 int localLSPID
          Field localLSPID - XXX
static int LoopBackTest
          Field LoopBackTest - Loop-back Test type
static int LoopBackTestReport
          Field LoopBackTestReport - Loop-back Test Report type
static int Notification
          Field Notification - Notification Message type
 int OAMMessageType
          Field OAMMessageType - OAM Packet Message Type
 OAMModule oamModule
          Field oamModule - OAM module object
 long OAMPacketLoss
          Field OAMPacketLoss - OAM Packet loss
 double PacketDelay
          Field PacketDelay - End-to-end packet delay
 double PacketLossRatio
          Field PacketLossRatio - Packet loss ratio
 double PacketLossValue
          Field PacketLossValue - Packet loss value
 boolean PacketLossWarning
          Field PacketLossWarning - Packet Loss warning
 java.lang.String pathID
          Field pathID - XXX
static int PerformanceMonitoring
          Field PerformanceMonitoring - Performance Monitoring type
static int PerformanceMonitoringReport
          Field PerformanceMonitoringReport - Performance Monitoring Report type
 double receivingBlockBytes
          Field receivingBlockBytes - Received Block Bytes at the egress
 long receivingBlockCount
          Field receivingBlockCount - Received Block count at the egress
 java.lang.String ReportNodeID
          Field ReportNodeID - Report Node ID
 double ReportTime
          Field ReportTime - Reporting Time
 double sendingBlockBytes
          Field sendingBlockBytes - sending Block Bytes from the ingress
 long sendingBlockCount
          Field sendingBlockCount - sending Block count from the ingress
 long SN
          Field SN - Sequence Number
 double TimeStamp
          Field TimeStamp - TimeStamp to measure End-to-end packet delay
 
Fields inherited from class SSF.OS.ProtocolMessage
 
Constructor Summary
OAMPacket()
          Constructor OAMPacket
 
Method Summary
 int bytecount()
          Returns the total number of bytes in this Shim packet.
 int header_bytecount()
          Method header_bytecount
 java.lang.String toString()
          Method toString
 
Methods inherited from class SSF.OS.ProtocolMessage
carryPayload, copy, dropHeader, dropPayload, frombytes, fromVersion, payload, previous, size, tobytes, version
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

OAMMessageType

public int OAMMessageType
Field OAMMessageType - OAM Packet Message Type


PerformanceMonitoring

public static final int PerformanceMonitoring
Field PerformanceMonitoring - Performance Monitoring type

See Also:
Constant Field Values

PerformanceMonitoringReport

public static final int PerformanceMonitoringReport
Field PerformanceMonitoringReport - Performance Monitoring Report type

See Also:
Constant Field Values

LoopBackTest

public static final int LoopBackTest
Field LoopBackTest - Loop-back Test type

See Also:
Constant Field Values

LoopBackTestReport

public static final int LoopBackTestReport
Field LoopBackTestReport - Loop-back Test Report type

See Also:
Constant Field Values

ErrorReport

public static final int ErrorReport
Field ErrorReport - Error Report type

See Also:
Constant Field Values

Notification

public static final int Notification
Field Notification - Notification Message type

See Also:
Constant Field Values

DestinationID

public java.lang.String DestinationID
Field DestinationID - Destination LSR ID of a OAM Packet


DestinationIPAddr

public int DestinationIPAddr
Field DestinationIPAddr - Destination LSR IP address of a OAM Packet


pathID

public java.lang.String pathID
Field pathID - XXX


ingressLSRID

public int ingressLSRID
Field ingressLSRID - XXX


localLSPID

public int localLSPID
Field localLSPID - XXX


IngressLSRID

public java.lang.String IngressLSRID
Field IngressLSRID - XXX


EgressLSRID

public java.lang.String EgressLSRID
Field EgressLSRID - XXX


TimeStamp

public double TimeStamp
Field TimeStamp - TimeStamp to measure End-to-end packet delay


BlockPacketCount

public long BlockPacketCount
Field BlockPacketCount - total counts of transmitted user packets between previous MPLS OAM packet and this OAM packet


BlockBytes

public double BlockBytes
Field BlockBytes - total bytes of transmitted user packets between previous MPLS OAM packet and this OAM packet


SN

public long SN
Field SN - Sequence Number


PacketDelay

public double PacketDelay
Field PacketDelay - End-to-end packet delay


bandwidth

public double bandwidth
Field bandwidth - Bandwidth


jitter

public double jitter
Field jitter - Jitter


PacketLossRatio

public double PacketLossRatio
Field PacketLossRatio - Packet loss ratio


sendingBlockBytes

public double sendingBlockBytes
Field sendingBlockBytes - sending Block Bytes from the ingress


receivingBlockBytes

public double receivingBlockBytes
Field receivingBlockBytes - Received Block Bytes at the egress


sendingBlockCount

public long sendingBlockCount
Field sendingBlockCount - sending Block count from the ingress


receivingBlockCount

public long receivingBlockCount
Field receivingBlockCount - Received Block count at the egress


OAMPacketLoss

public long OAMPacketLoss
Field OAMPacketLoss - OAM Packet loss


ReportNodeID

public java.lang.String ReportNodeID
Field ReportNodeID - Report Node ID


ReportTime

public double ReportTime
Field ReportTime - Reporting Time


DetectTime

public double DetectTime
Field DetectTime - Detection Time


DelayWarning

public boolean DelayWarning
Field DelayWarning - Delay warning


DelayValue

public double DelayValue
Field DelayValue - Delayed value


JitterWarning

public boolean JitterWarning
Field JitterWarning - Jitter warning


JitterValue

public double JitterValue
Field JitterValue - Jitter value


PacketLossWarning

public boolean PacketLossWarning
Field PacketLossWarning - Packet Loss warning


PacketLossValue

public double PacketLossValue
Field PacketLossValue - Packet loss value


ErrorType

public int ErrorType
Field ErrorType - Error Type


ContinuityCheckError

public static final int ContinuityCheckError
Field ContinuityCheckError

See Also:
Constant Field Values

ContinuityCheckRecover

public static final int ContinuityCheckRecover
Field ContinuityCheckRecover

See Also:
Constant Field Values

ErrorDetectTime

public double ErrorDetectTime
Field ErrorDetectTime


ErrorDetectNodeID

public java.lang.String ErrorDetectNodeID
Field ErrorDetectNodeID


oamModule

public OAMModule oamModule
Field oamModule - OAM module object


isContinuityCheck

public boolean isContinuityCheck
Field isContinuityCheck - Continuity check flag

Constructor Detail

OAMPacket

public OAMPacket()
Constructor OAMPacket

Method Detail

toString

public java.lang.String toString()
Method toString

Overrides:
toString in class java.lang.Object
Returns:
String

header_bytecount

public int header_bytecount()
Method header_bytecount

Overrides:
header_bytecount in class ProtocolMessage
Returns:
int

bytecount

public int bytecount()
Returns the total number of bytes in this Shim packet.

Overrides:
bytecount in class ProtocolMessage