|
||||||||||
| 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.
| 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(int startId,
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,
int 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(int startId,
java.util.Vector srlg)
startId - the id 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,
int 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 | |||||||||