gov.nist.antd.mpls.signaling.information
Class ExplicitRoutingInformation

java.lang.Object
  |
  +--gov.nist.antd.mpls.signaling.information.ExplicitRoutingInformation

public class ExplicitRoutingInformation
extends java.lang.Object

Explicit Routing Information.

 This class was developed at the National Institute of Standards and
 Technology by employees of the Federal Government and the Towson
 University by student 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
 java.util.Vector ConstraintTable
          Field ConstraintTable - Contraint content table
 int DestIPAddr
          Field DestIPAddr - Destination IP Address
 java.lang.String EgressNodeID
          Field IngressNodeID, EgressNodeID - Ingress / Egress Node ID
 java.lang.String IngressNodeID
          Field IngressNodeID, EgressNodeID - Ingress / Egress Node ID
 java.util.Vector NodeIDList
          Field NodeIDList - Node ID List - for simulation
 java.util.Vector NodeList
          Field NodeList - TE Path Node List
 java.util.Vector pathVector
          Field pathVector - TE Path List
 MPLSSignalingInfo sigInfo
          Field sigInfo - MPLS Signaling Information
 int SrcIPAddr
          Field SrcIPAddr - Source IP Address
 
Constructor Summary
ExplicitRoutingInformation(MPLSSignalingInfo siginfo)
          Constructor ExplicitRoutingInformation
 
Method Summary
 void addConstraintInfo(int ConstraintType, double value, int CompareType)
          Method addConstraintInfo Add contraint information to the tabel
 void addLabelInfo(java.util.Vector tunnelpathinfo)
          Method addLabelInfo Add Label information about Tennel path to a table
 void addNodeInfo(boolean isloose, java.lang.String nodeid, int ipaddr)
          Method addNodeInfo Add Node inforamtion to Node table
 void addPathVectorInfo(boolean isloose, java.lang.String nodeid, int ipaddr)
          Method addPathVectorInfo Add path Vector information to the table
 void addPathVectorLabelInfo(java.lang.String nodeid, int inintf, int inlabel, int outintf, int outlabel)
          Method addPathVectorLabelInfo Add path vector label information to a talbe
 void configExplicitRoutingInformation(com.renesys.raceway.DML.Configuration cfg)
          Method configExplicitRoutingInformation Configuration Explicit Routing Information
 boolean configExplicitRoutingInformation(java.util.Vector nodelist)
          Method configExplicitRoutingInformation Configure Explicit routing information
 void configLSPs(com.renesys.raceway.DML.Configuration cfg)
          Method configLSPs Configure LSPs - from DML
 void configTEExplicitRoutingInformation(com.renesys.raceway.DML.Configuration cfg)
          Method configTEExplicitRoutingInformation Configure the TE-Explicit Routing information
 int getIPAddr()
          Method getIPAddr Retrieve IP Address
 boolean getLooseRoutingInfo()
          Method getLooseRoutingInfo Retrieve Loose routing information
 java.lang.String getNodeID()
          Method getNodeID Get Node ID
 int getNodeListSize()
          Method getNodeListSize Get Node List size
 java.lang.String getOUNIPathVectorString()
          Method getOUNIPathVectorString Get O-UNI Path Vector through String
 java.lang.String getPathInfo()
          Method getPathInfo Retrieve the Path Information
 java.lang.String getPathVectorString()
          Method getPathVectorString Get Path Vector information through String
 void printNodeInfo()
          Method printNodeInfo Print Node Information
 void printPathVector()
          Method printPathVector Print Path Vector Information
 void removeTopNodeID()
          Method removeTopNodeID Remove the Top Node ID from the table
 void ReverseCopy(ExplicitRoutingInformation expinfo, MPLSSignalingInfo sinfo)
          Method ReverseCopy Reverse copy : Generate Backward Explicit routing information
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sigInfo

public MPLSSignalingInfo sigInfo
Field sigInfo - MPLS Signaling Information


IngressNodeID

public java.lang.String IngressNodeID
Field IngressNodeID, EgressNodeID - Ingress / Egress Node ID


EgressNodeID

public java.lang.String EgressNodeID
Field IngressNodeID, EgressNodeID - Ingress / Egress Node ID


SrcIPAddr

public int SrcIPAddr
Field SrcIPAddr - Source IP Address


DestIPAddr

public int DestIPAddr
Field DestIPAddr - Destination IP Address


ConstraintTable

public java.util.Vector ConstraintTable
Field ConstraintTable - Contraint content table


NodeList

public java.util.Vector NodeList
Field NodeList - TE Path Node List


pathVector

public java.util.Vector pathVector
Field pathVector - TE Path List


NodeIDList

public java.util.Vector NodeIDList
Field NodeIDList - Node ID List - for simulation

Constructor Detail

ExplicitRoutingInformation

public ExplicitRoutingInformation(MPLSSignalingInfo siginfo)
Constructor ExplicitRoutingInformation

Parameters:
siginfo -
Method Detail

configExplicitRoutingInformation

public void configExplicitRoutingInformation(com.renesys.raceway.DML.Configuration cfg)
                                      throws com.renesys.raceway.DML.configException
Method configExplicitRoutingInformation Configuration Explicit Routing Information

Parameters:
cfg -
Throws:
com.renesys.raceway.DML.configException

configTEExplicitRoutingInformation

public void configTEExplicitRoutingInformation(com.renesys.raceway.DML.Configuration cfg)
                                        throws com.renesys.raceway.DML.configException
Method configTEExplicitRoutingInformation Configure the TE-Explicit Routing information

Parameters:
cfg -
Throws:
com.renesys.raceway.DML.configException

configLSPs

public void configLSPs(com.renesys.raceway.DML.Configuration cfg)
                throws com.renesys.raceway.DML.configException
Method configLSPs Configure LSPs - from DML

Parameters:
cfg - - XXX
Throws:
com.renesys.raceway.DML.configException

configExplicitRoutingInformation

public boolean configExplicitRoutingInformation(java.util.Vector nodelist)
Method configExplicitRoutingInformation Configure Explicit routing information

Parameters:
nodelist - - Node List
Returns:
boolean

addNodeInfo

public void addNodeInfo(boolean isloose,
                        java.lang.String nodeid,
                        int ipaddr)
Method addNodeInfo Add Node inforamtion to Node table

Parameters:
isloose - - True if loose routing is activated
nodeid - - Node ID
ipaddr - - Node's IP Address

addPathVectorInfo

public void addPathVectorInfo(boolean isloose,
                              java.lang.String nodeid,
                              int ipaddr)
Method addPathVectorInfo Add path Vector information to the table

Parameters:
isloose - - True if loose routing is activated
nodeid - - Node ID
ipaddr - - Node's IP Address

addPathVectorLabelInfo

public void addPathVectorLabelInfo(java.lang.String nodeid,
                                   int inintf,
                                   int inlabel,
                                   int outintf,
                                   int outlabel)
Method addPathVectorLabelInfo Add path vector label information to a talbe

Parameters:
nodeid - - Node ID
inintf - - Incoming Interface Id
inlabel - - Incoming label
outintf - - Outgoing Interface Id
outlabel - - Outgoing Label

addLabelInfo

public void addLabelInfo(java.util.Vector tunnelpathinfo)
Method addLabelInfo Add Label information about Tennel path to a table

Parameters:
tunnelpathinfo - - Tunnel Path Information table

addConstraintInfo

public void addConstraintInfo(int ConstraintType,
                              double value,
                              int CompareType)
Method addConstraintInfo Add contraint information to the tabel

Parameters:
ConstraintType - - Contraint type
value - - Contraint Value
CompareType - - Compare type

getPathInfo

public java.lang.String getPathInfo()
Method getPathInfo Retrieve the Path Information

Returns:
String

getLooseRoutingInfo

public boolean getLooseRoutingInfo()
Method getLooseRoutingInfo Retrieve Loose routing information

Returns:
boolean - True if Loose routing is activated

getNodeID

public java.lang.String getNodeID()
Method getNodeID Get Node ID

Returns:
String - Node ID

getIPAddr

public int getIPAddr()
Method getIPAddr Retrieve IP Address

Returns:
int - IP Address

getNodeListSize

public int getNodeListSize()
Method getNodeListSize Get Node List size

Returns:
int - List size

removeTopNodeID

public void removeTopNodeID()
Method removeTopNodeID Remove the Top Node ID from the table


printNodeInfo

public void printNodeInfo()
Method printNodeInfo Print Node Information


printPathVector

public void printPathVector()
Method printPathVector Print Path Vector Information


getPathVectorString

public java.lang.String getPathVectorString()
Method getPathVectorString Get Path Vector information through String

Returns:
String

getOUNIPathVectorString

public java.lang.String getOUNIPathVectorString()
Method getOUNIPathVectorString Get O-UNI Path Vector through String

Returns:
String

ReverseCopy

public void ReverseCopy(ExplicitRoutingInformation expinfo,
                        MPLSSignalingInfo sinfo)
Method ReverseCopy Reverse copy : Generate Backward Explicit routing information

Parameters:
expinfo - - Explicit Routing information
sinfo - - Signaling Informaiton