be.ac.ulg.montefiore.run.totem.domain.model
Interface Lsp

All Superinterfaces:
DomainElement

public interface Lsp
extends DomainElement

A Label Switched Path in a Domain

Creation date: 19-Jan-2005 15:47:36

Author:
Fabian Skivee (skivee@run.montefiore.ulg.ac.be)

Field Summary
static int BYPASS_BACKUP_TYPE
           
static int DETOUR_E2E_BACKUP_TYPE
           
static int DETOUR_LOCAL_BACKUP_TYPE
           
static int STATUS_DOWN
           
static int STATUS_UP
           
 
Method Summary
 void activateBackup(Lsp backupLsp)
           
 void addBackupLsp(Lsp lsp)
          Add a lsp in the list of backup lsps of this primary lsp.
 void deactivateBackup(Lsp backupLsp)
           
 java.util.List<Lsp> getActivatedBackups()
           
 java.util.Set<Lsp> getBackups()
          returns a set of the backups lsps
 int getBackupType()
           
 int getCT()
           
 int getHoldingPreemption()
           
 Path getLspPath()
           
 int getLspStatus()
          Returns the status of the LSP.
 float getMaxRate()
           
 float getMetric()
           
 java.util.List<Link> getProtectedLinks()
           
 Lsp getProtectedLsp()
           
 float getReservation()
           
 int getSetupPreemption()
           
 Path getWorkingPath()
          The working path is the current path used for routing on this LSP.
 Path getWorkingPath(boolean nocheck)
          If nocheck is true, the path is returned even if there are still failed links and thus the LSP cannot be used for routing packets.
 void init(Domain domain)
           
 boolean isActivated()
           
 boolean isBackupLsp()
           
 void linkDownEvent(Link link)
          A link came down on the lsp path.
 void linkUpEvent(Link link)
          A link came up on the lsp path.
 void makePrimary()
          Make a primary lsp out of the lsp object.
 void nodeDownEvent(Node node)
          A node came up on the lsp path.
 void nodeUpEvent(Node node)
          A node came up on the lsp path.
 void removeBackupLsp(Lsp lsp)
          Removes a LSP for the list of backups
 void setLspPath(Path path)
           
 void setProtectedLsp(java.lang.String lspId)
          Sets the protected lsp of a backup lsp.
 void setReservation(float bw)
           
 
Methods inherited from interface be.ac.ulg.montefiore.run.totem.domain.model.DomainElement
getId, setElementId
 

Field Detail

DETOUR_E2E_BACKUP_TYPE

static final int DETOUR_E2E_BACKUP_TYPE
See Also:
Constant Field Values

DETOUR_LOCAL_BACKUP_TYPE

static final int DETOUR_LOCAL_BACKUP_TYPE
See Also:
Constant Field Values

BYPASS_BACKUP_TYPE

static final int BYPASS_BACKUP_TYPE
See Also:
Constant Field Values

STATUS_UP

static final int STATUS_UP
See Also:
Constant Field Values

STATUS_DOWN

static final int STATUS_DOWN
See Also:
Constant Field Values
Method Detail

init

void init(Domain domain)
          throws InvalidPathException,
                 DiffServConfigurationException
Parameters:
domain -
Throws:
InvalidPathException - If the LSP has invalid path.
DiffServConfigurationException

getMetric

float getMetric()

getMaxRate

float getMaxRate()

getReservation

float getReservation()

setReservation

void setReservation(float bw)
                    throws LinkCapacityExceededException
Throws:
LinkCapacityExceededException

getLspPath

Path getLspPath()

getWorkingPath

Path getWorkingPath()
                    throws InvalidPathException
The working path is the current path used for routing on this LSP. It is different from the normal path since the lsp can be routed temporarily on backups.

Returns:
Throws:
InvalidPathException - when called on a backup lsp or when the working path is down

getWorkingPath

Path getWorkingPath(boolean nocheck)
                    throws InvalidPathException
If nocheck is true, the path is returned even if there are still failed links and thus the LSP cannot be used for routing packets.

Parameters:
nocheck -
Returns:
Throws:
InvalidPathException

getActivatedBackups

java.util.List<Lsp> getActivatedBackups()

isActivated

boolean isActivated()

activateBackup

void activateBackup(Lsp backupLsp)
                    throws LspNotFoundException
Throws:
LspNotFoundException

deactivateBackup

void deactivateBackup(Lsp backupLsp)
                      throws LspNotFoundException
Throws:
LspNotFoundException

linkDownEvent

void linkDownEvent(Link link)
A link came down on the lsp path. Sets the lsp status accordingly.

Parameters:
link -

linkUpEvent

void linkUpEvent(Link link)
A link came up on the lsp path. Sets the lsp status accordingly.

Parameters:
link -

nodeUpEvent

void nodeUpEvent(Node node)
A node came up on the lsp path. Sets the lsp status accordingly.

Parameters:
node -

nodeDownEvent

void nodeDownEvent(Node node)
A node came up on the lsp path. Sets the lsp status accordingly.

Parameters:
node -

setLspPath

void setLspPath(Path path)

getCT

int getCT()

getHoldingPreemption

int getHoldingPreemption()

getSetupPreemption

int getSetupPreemption()

isBackupLsp

boolean isBackupLsp()

getBackupType

int getBackupType()

getProtectedLsp

Lsp getProtectedLsp()
                    throws LspNotFoundException
Throws:
LspNotFoundException

setProtectedLsp

void setProtectedLsp(java.lang.String lspId)
                     throws BadLspTypeException
Sets the protected lsp of a backup lsp.

Parameters:
lspId -
Throws:
BadLspTypeException - If the lsp is not a backup lsp

getProtectedLinks

java.util.List<Link> getProtectedLinks()
                                       throws LinkNotFoundException
Throws:
LinkNotFoundException

addBackupLsp

void addBackupLsp(Lsp lsp)
Add a lsp in the list of backup lsps of this primary lsp.


removeBackupLsp

void removeBackupLsp(Lsp lsp)
                     throws LspNotFoundException
Removes a LSP for the list of backups

Parameters:
lsp -
Throws:
LspNotFoundException

getBackups

java.util.Set<Lsp> getBackups()
returns a set of the backups lsps

Returns:

makePrimary

void makePrimary()
Make a primary lsp out of the lsp object. Do nothing if the lsp is already a primary lsp.


getLspStatus

int getLspStatus()
Returns the status of the LSP. Can be STATUS_DOWN or STATUS_UP. The status of the lsp is changed via the linkUpEvent, linkDownEvent, nodeUpEvent, nodeDownEvent methods.

Returns:


Copyright © 2004-2007 Research Unit in Networking, All Rights Reserved.