|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--gov.nist.antd.merlin.algorithm.AlgorithmTemplate
|
+--gov.nist.antd.merlin.protocol.protectionlink.BackupLink
This class implements a route computation for link protection only. The given route requests must be point-to-point connections. The algorithm will compute an alternative backup to these given link.
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.
VERSION CONTROL
-------------------------------------------------------------------------
Name - YYYY/MM/DD - VERSION - ACTION
rouil - 2001/07/11 - 1.0 - Source created.
rouil - 2001/07/23 - 1.1 - Use new structure to store backup.
borchert - 2002/01/29 - 1.2 - Added the algorithm type.
- Updated documentation.
rouil - 2002/01/29 - Updated import files.
rouil - 2002/02/14 - Complete documentation.
borchert - 2002/04/25 - 1.3 - Chenged reference from OpNet to Glass.
borchert - 2002/06/06 - 1.4 - Changed Reference from OpticalRoute to
OpticalConnection
rouil - 2002/06/21 - 1.5 - Extended the OXCEdgeRouter to ExtRouter
rouil - 2002/09/25 - 1.6 - Use NHI instead of ID
| Field Summary | |
private java.util.Vector |
backups
Vector of backup route. |
private LinkGraph |
graph
The graph of the net |
private java.lang.String |
name
The name of the algorithm |
| Fields inherited from class gov.nist.antd.merlin.algorithm.AlgorithmTemplate |
|
| Fields inherited from interface gov.nist.antd.optical.algorithm.Algorithm |
ROUTING, RWA, UNKNOWN, WAVELENGTH |
| Constructor Summary | |
BackupLink()
Default constructor |
|
| Method Summary | |
void |
buildPath(Vertex source,
Vertex dest,
java.util.Vector v,
java.util.Vector srlg)
Recursive routine to build path to dest after running shortest path algorithm. |
void |
config(com.renesys.raceway.DML.Configuration cfg,
Glass net)
Configure the Centralized Algorithm. |
void |
dijkstra(java.lang.String startNhi,
java.util.Vector srlg)
The Dijktra's algorithm. |
java.lang.Object[] |
execute(Glass net,
OpticalConnection[] routes,
java.lang.Object[] parameter)
This method executes the algorithm in the synchronized mode. |
java.util.Vector |
execute(Glass net,
java.util.Vector routes,
java.util.Vector parameter)
This method executes the algorithm in the synchronized mode. |
private double |
getCost(Edge edge,
java.lang.String fromHost,
java.util.Vector srlg)
Get the cost of the given edge. |
byte |
getType()
this algorithm is a routing algorithm for a given link. |
void |
processBackup(OpticalConnection oRoute)
Process a backup request |
OpticalConnection |
processRequest(OpticalConnection oRoute)
Process a request. |
java.lang.String |
toDML()
This method generates the DML representation of this class. |
| Methods inherited from class gov.nist.antd.merlin.algorithm.AlgorithmTemplate |
getName, isDebug, setDebug, setName |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
private LinkGraph graph
private java.lang.String name
private java.util.Vector backups
| Constructor Detail |
public BackupLink()
| Method Detail |
public void dijkstra(java.lang.String startNhi,
java.util.Vector srlg)
startNhi - the NHI of the node the diekstra has to start from.srlg - The vector of SRLG we don't want to include in the path
private double getCost(Edge edge,
java.lang.String fromHost,
java.util.Vector srlg)
edge - The edge.fromHost - The source node.srlg - The Vector of SRLG that must not appear in the path.
public void buildPath(Vertex source,
Vertex dest,
java.util.Vector v,
java.util.Vector srlg)
source - The source vertex.dest - The destination vertexv - The vector where the path is stored.srlg - The srlg of the pathpublic void processBackup(OpticalConnection oRoute)
oRoute - The connection Requestpublic OpticalConnection processRequest(OpticalConnection oRoute)
oRoute - The connection Request
public java.util.Vector execute(Glass net,
java.util.Vector routes,
java.util.Vector parameter)
throws AlgorithmException
execute in interface Algorithmexecute in class AlgorithmTemplatenet - The OpNet that contains the topology.routes - The vector containing the OpticalConnection objects. These objects
must not have an owner.parameter - not used by this algorithm.
AlgorithmException - An AlgorithmException occured.
public java.lang.Object[] execute(Glass net,
OpticalConnection[] routes,
java.lang.Object[] parameter)
throws AlgorithmException
execute in interface Algorithmexecute in class AlgorithmTemplatenet - The OpNet that contains the topology.routes - The array of OpticalRoutes to compute.parameter - The array of objects containing the parameters for the
algorithm.
AlgorithmException - An AlgorithmException occured.
public void config(com.renesys.raceway.DML.Configuration cfg,
Glass net)
throws com.renesys.raceway.DML.configException
config in interface Algorithmconfig in class AlgorithmTemplatecfg - configurationnet - The OpNet that contains the topology.
com.renesys.raceway.DML.configException - when a configuration exception occurs.public java.lang.String toDML()
toDML in interface DMLDumptoDML in class AlgorithmTemplatepublic byte getType()
getType in interface AlgorithmgetType in class AlgorithmTemplate
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||