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


public interface Domain

Represent a network domain

Creation date: 12-Jan-2005 17:24:56

Author:
Fabian Skivee (skivee@run.montefiore.ulg.ac.be), Simon Balon (balon@run.montefiore.ulg.ac.be)

Method Summary
 void addBgpRouter(BgpRouter router)
           
 void addLink(Link link)
          Add a link to the domain
 void addLsp(Lsp lsp)
          Add a Lsp in the domain without using implicit preemption
 void addLsp(Lsp lsp, boolean preemption)
          Add a Lsp in the domain
 void addNode(Node node)
          Add a node to the domain
 void addPriorityLevel(int priority, int classType, int preemptionLevel)
          Adds a priority level.
 java.lang.String generateDetourLspId(java.lang.String protectedId, int methodType, int protectionType)
          Generate an id for a new detour LSP, based on the detour lsp parameters A conversion for this new id is automatically added to the convertor.
 java.lang.String generateLspId()
          Generate a unique LSP id.
 java.util.List<BgpRouter> getAllBgpRouters()
          Returns the list of all BGP routers.
 int[] getAllCTId()
          Returns an array of all available CTs
 java.util.List<Link> getAllLinks()
          Return a list of all links and a empty list if there is no links.
 java.util.List<Lsp> getAllLsps()
          Get a list of all LSPs
 java.util.List<Node> getAllNodes()
          Return a list of all nodes and an empty if there is no nodes
 java.util.List<Lsp> getAllPrimaryLsps()
          Get a list of all primary LSPs
 int getASID()
          Get the Autonomous System ID
 java.lang.String getAuthor()
          Returns the author of the domain.
 java.util.List<Lsp> getBackupsOfPrimary(Lsp primaryLsp)
          Deprecated. use Lsp.getBackups()
 BandwidthManagement getBandwidthManagement()
          Returns the bandwidth management object associated with the domain
 BandwidthUnit getBandwidthUnit()
          Returns the bandwidth unit used in the domain.
 BgpRouter getBgpRouter(java.lang.String id)
          Returns the BGP router with the specified Id.
 int getClassType(int priority)
          Returns the class type corresponding to a priority
 DomainConvertor getConvertor()
          Get the domain convertor
 java.util.Calendar getDate()
          Returns the date of the domain.
 DelayUnit getDelayUnit()
          Returns the delay unit used in the domain.
 java.lang.String getDescription()
          Get the description of a domain
 DomainStatistics getDomainStatistics()
          Get the domain statistics
 Link getLink(java.lang.String id)
          Return the link with the specified id
 Link getLinkBetweenNodes(java.lang.String srcNodeId, java.lang.String srcIfId, java.lang.String dstNodeId, java.lang.String dstIfId)
          Returns the link between srcNode and dstNode and using the specified interfaces.
 Link getLinkFrom(java.lang.String nodeId, java.lang.String nodeInterfaceId)
          Returns the link connecting the given interface on the given source node.
 java.util.List<Link> getLinksBetweenNodes(Node srcNode, Node dstNode)
          Get the list of the UP links between srcNode and dstNode and a empty list if there is no links.
 java.util.List<Link> getLinksBetweenNodes(java.lang.String srcNodeId, java.lang.String dstNodeId)
          Get the list of the UP links between srcNode and dstNode and a empty list if there is no links.
 Link getLinkTo(java.lang.String nodeId, java.lang.String nodeInterfaceId)
          Returns the link connecting the given interface on the given destination node.
 java.util.List<java.lang.Integer> getLowerPLs(int priority)
          Returns all the priorities corresponding to same CT as priority but lower preemption level (higher numerical value)
 java.util.List<java.lang.Integer> getLowerPLsAllCTs(int priority)
          Returns all the priorities at lower preemption level (higher numerical value)
 Lsp getLsp(java.lang.String id)
          Return the Lsp with the specified id
 java.util.List<Lsp> getLsps(Node ingress, Node egress)
          Get the list of LSPs between ingress node and egress node
 java.util.List<Lsp> getLspsOnLink(Link link)
          Get all the LSPs that use the link
 java.util.List<Lsp> getLspStartingAtIngress(Node ingress)
          Get all the LSPs that begins at the specified ingress node
 int getMaxCTvalue()
          Obtain the maximum numerical value of CT
 int getMaxPLvalue()
          Obtain the maximum numerical value of preemption level
 int getMaxPLValue(int ctValue)
          Obtain the maximum numerical value of preemption level for a given Class Type
 int getMaxPreemptionLevel(int CT)
          Gets the maximum Preemption Level (lowest numerical value) for a given class type.
 int getMinCTValue()
          Obtain the minimum numerical value of CT (highest priority)
 int getMinPLValue()
          Obtain the minimum numerical value of preemption level
 int getMinPriority()
          Gets the default minimum Priority (ie for lowest priority Class Type and lowest corresponding priority level);
 int getMinPriority(int CT)
          Gets the minimum priority for the given Class Type (ie lowest priority level)
 java.lang.String getName()
          Get the name of the domain
 int getNbCT()
          Gets the number of different class types
 int getNbLinks()
          Return the number of links
 int getNbLsps()
          Get the number of LSPs
 int getNbNodes()
          Return the number of nodes
 Node getNode(java.lang.String id)
          Get the node of the specified id
 Node getNodeByRid(java.lang.String IP)
          Returns the node that as the given IP address as router id.
 DomainChangeObserver getObserver()
          Get the observer
 int getPreemptionLevel(int priority)
          Returns the preemption level corresponding to a priority
 java.util.List<java.lang.Integer> getPreemptionLevels(int classType)
          Returns the preemption levels corresponding to a given class type
 java.util.List<Lsp> getPrimaryLsps(Node ingress, Node egress)
          Get the list of primary LSPs between ingress node and egress node
 java.util.List<java.lang.Integer> getPriorities()
          Return a list of all priorities identifiers
 int getPriority(int preemption, int classtype)
          Returns the priority corresponding to a preemption level and a class type
 int getPriorityHighPL(int priority)
          Returns the priority corresponding to the same CT but a just higher preemption level (lower numerical value)
 java.util.List<java.lang.Integer> getPrioritySameCT(int CT)
          Returns all priorities corresponding to a same CT
 Link getReverseLink(Link link)
          Returns the reverse link for link link.
 java.util.List<Link> getReverseLinks(Link link)
          Returns the list of reverse links for link link.
 java.util.List<Link> getReverseLinks(java.lang.String linkId)
          Returns the list of reverse links for link linkId.
 SPFCache getSPFCache()
          Get the SPFCache
 SwitchingMethod getSwitchingMethod()
          Returns the current active switching method
 java.lang.String getTitle()
          Returns the title of the domain.
 java.util.List<Link> getUpLinks()
          Get all the up links
 java.util.List<Node> getUpNodes()
          Get the list of all up nodes.
 java.net.URI getURI()
          Get the URI from which the domain was loaded
 DomainValidator getValidator()
          Get the validator
 void init(boolean removeMultipleLink, boolean useBwSharing)
          Init all the index and give the Domain reference to Link, Node and Lsp.
 boolean isExistingPriority(int priority)
          Tells if the priority corresponds to an existing priority level
 boolean isExistingPriority(int preemptionLevel, int classType)
          Tells if the couple preemptionLevel/classType corresponds to an existing priority level
 void removeAllLsps()
          Removes all the LSPs from the Domain.
 void removeLink(Link link)
          Remove a link from the domain.
 void removeLsp(Lsp lsp)
          Remove a Lsp
 void removeLsp(Lsp lsp, boolean isReroute)
          Remove a Lsp
 void removeNode(Node node)
          Remove a node from the domain.
 boolean removePriorityLevel(int priority)
          Removes the given priority level.
 void renameLink(java.lang.String oldId, java.lang.String newId)
           
 void renameLsp(java.lang.String oldId, java.lang.String newId)
          Rename an lsp of the domain.
 void renameNode(java.lang.String oldId, java.lang.String newId)
          Rename a node of the domain.
 void setASID(int ASID)
           
 void setAuthor(java.lang.String author)
          Sets the author of the domain.
 void setBandWidthUnit(BandwidthUnit unit)
          Change the bandwidth unit used in the domain.
 void setDate(java.util.Calendar date)
          Sets the date of the domain.
 void setDelayUnit(DelayUnit unit)
          Change the delay unit used in the domain.
 void setDescription(java.lang.String description)
          Set the description of a domain
 void setName(java.lang.String name)
          Set the name of the domain
 void setSwitchingMethod(SwitchingMethod sm)
          Set a switching method for the domain.
 void setTitle(java.lang.String title)
          Sets the title of the domain.
 void setURI(java.net.URI uri)
          Set the URI from which the domain was loaded
 boolean useBandwidthSharing()
          returns true if the domain uses bandwidth management
 boolean usePreemption()
          Return true if the domain can use preemption.
 

Method Detail

init

void init(boolean removeMultipleLink,
          boolean useBwSharing)
          throws InvalidDomainException
Init all the index and give the Domain reference to Link, Node and Lsp. Create the DomainConvertor.

Parameters:
removeMultipleLink - true if the multiple links must be removed (@see DomainValidator)
Throws:
InvalidDomainException - If the domain is invalid (like bad lsps path).

getConvertor

DomainConvertor getConvertor()
Get the domain convertor

Returns:
the domain convertor

getObserver

DomainChangeObserver getObserver()
Get the observer

Returns:
the observer

getValidator

DomainValidator getValidator()
Get the validator

Returns:
the validator

getDomainStatistics

DomainStatistics getDomainStatistics()
Get the domain statistics

Returns:
the domain statistics

getBandwidthManagement

BandwidthManagement getBandwidthManagement()
Returns the bandwidth management object associated with the domain

Returns:

useBandwidthSharing

boolean useBandwidthSharing()
returns true if the domain uses bandwidth management

Returns:

getSPFCache

SPFCache getSPFCache()
Get the SPFCache

Returns:
the SPFCache

getURI

java.net.URI getURI()
Get the URI from which the domain was loaded

Returns:
the URI of the domain

setURI

void setURI(java.net.URI uri)
Set the URI from which the domain was loaded

Parameters:
uri -

getBandwidthUnit

BandwidthUnit getBandwidthUnit()
Returns the bandwidth unit used in the domain.


setBandWidthUnit

void setBandWidthUnit(BandwidthUnit unit)
Change the bandwidth unit used in the domain. It DOES NOT convert the units. This function is intended to be used only on new Domain object to change default value (mbps).


getDelayUnit

DelayUnit getDelayUnit()
Returns the delay unit used in the domain.


setDelayUnit

void setDelayUnit(DelayUnit unit)
Change the delay unit used in the domain. It DOES NOT convert the units. This function is intended to be used only on new Domain object to change default value (ms).


setSwitchingMethod

void setSwitchingMethod(SwitchingMethod sm)
Set a switching method for the domain. The old switching method is stopped by calling SwitchingMethod.stop() and the new one is started (SwitchingMethod.start()).

Parameters:
sm -

getSwitchingMethod

SwitchingMethod getSwitchingMethod()
Returns the current active switching method

Returns:

getASID

int getASID()
Get the Autonomous System ID

Returns:
ASID the AS ID

setASID

void setASID(int ASID)

getDescription

java.lang.String getDescription()
Get the description of a domain

Returns:
the description of a domain

setDescription

void setDescription(java.lang.String description)
Set the description of a domain

Parameters:
description -

getName

java.lang.String getName()
Get the name of the domain

Returns:

setName

void setName(java.lang.String name)
Set the name of the domain

Parameters:
name -

setTitle

void setTitle(java.lang.String title)
Sets the title of the domain.

Parameters:
title -

getTitle

java.lang.String getTitle()
Returns the title of the domain.

Returns:
The title of the domain.

setDate

void setDate(java.util.Calendar date)
Sets the date of the domain.

Parameters:
date -

getDate

java.util.Calendar getDate()
Returns the date of the domain.

Returns:

setAuthor

void setAuthor(java.lang.String author)
Sets the author of the domain.

Parameters:
author -

getAuthor

java.lang.String getAuthor()
Returns the author of the domain.

Returns:
The author of the domain.

getNode

Node getNode(java.lang.String id)
             throws NodeNotFoundException
Get the node of the specified id

Parameters:
id -
Returns:
the node
Throws:
NodeNotFoundException

getNodeByRid

Node getNodeByRid(java.lang.String IP)
                  throws NodeNotFoundException
Returns the node that as the given IP address as router id.

Parameters:
IP - ip address of the node
Returns:
the node whose rid is IP.
Throws:
NodeNotFoundException - when no node exists in the domain with the given IP address.

addNode

void addNode(Node node)
             throws NodeAlreadyExistException
Add a node to the domain

Parameters:
node -
Throws:
NodeAlreadyExistException

removeNode

void removeNode(Node node)
                throws NodeNotFoundException,
                       LinkNotFoundException
Remove a node from the domain. WARNING : use this method carrefully. When removing a node, all the in and out links will be remove. Prefer using the node.setNodeStatus(NODE.STATUS_DOWN) method.

Parameters:
node -
Throws:
NodeNotFoundException
LinkNotFoundException

getNbNodes

int getNbNodes()
Return the number of nodes

Returns:

getAllNodes

java.util.List<Node> getAllNodes()
Return a list of all nodes and an empty if there is no nodes

Returns:

getUpNodes

java.util.List<Node> getUpNodes()
Get the list of all up nodes.

Returns:

getLinksBetweenNodes

java.util.List<Link> getLinksBetweenNodes(Node srcNode,
                                          Node dstNode)
                                          throws NodeNotFoundException
Get the list of the UP links between srcNode and dstNode and a empty list if there is no links.

Parameters:
srcNode -
dstNode -
Returns:
the list of the links between srcNode and dstNode and a empty list if there is no links.
Throws:
NodeNotFoundException

getLinksBetweenNodes

java.util.List<Link> getLinksBetweenNodes(java.lang.String srcNodeId,
                                          java.lang.String dstNodeId)
                                          throws NodeNotFoundException
Get the list of the UP links between srcNode and dstNode and a empty list if there is no links.

Parameters:
srcNodeId -
dstNodeId -
Returns:
the list of the links between srcNode and dstNode and a empty list if there is no links.
Throws:
NodeNotFoundException

getLinkBetweenNodes

Link getLinkBetweenNodes(java.lang.String srcNodeId,
                         java.lang.String srcIfId,
                         java.lang.String dstNodeId,
                         java.lang.String dstIfId)
                         throws LinkNotFoundException,
                                NodeNotFoundException,
                                NodeInterfaceNotFoundException
Returns the link between srcNode and dstNode and using the specified interfaces.

Parameters:
srcNodeId - The source node ID.
srcIfId - The source interface ID.
dstNodeId - The destination node ID.
dstIfId - The destination interface ID.
Returns:
The link between srcNode and dstNode and using the specified interfaces.
Throws:
LinkNotFoundException
NodeNotFoundException
NodeInterfaceNotFoundException

getReverseLink

Link getReverseLink(Link link)
                    throws NodeNotFoundException
Returns the reverse link for link link. It is the opposite link that connects the same interfaces if interfaces are defined or the link between the destination and the source node if there is only one. Otherwise, null is returned.

Parameters:
link - The link to consider.
Returns:
The reverse link for link link.
Throws:
NodeNotFoundException

getReverseLinks

java.util.List<Link> getReverseLinks(Link link)
                                     throws NodeNotFoundException
Returns the list of reverse links for link link.

Parameters:
link - The link to consider.
Returns:
The list of reverse links for link link.
Throws:
NodeNotFoundException

getReverseLinks

java.util.List<Link> getReverseLinks(java.lang.String linkId)
                                     throws LinkNotFoundException,
                                            NodeNotFoundException
Returns the list of reverse links for link linkId.

Parameters:
linkId - The ID of the link to consider.
Returns:
The list of reverse links for link linkId.
Throws:
LinkNotFoundException
NodeNotFoundException

getLink

Link getLink(java.lang.String id)
             throws LinkNotFoundException
Return the link with the specified id

Parameters:
id -
Returns:
Throws:
LinkNotFoundException

getLinkFrom

Link getLinkFrom(java.lang.String nodeId,
                 java.lang.String nodeInterfaceId)
                 throws NodeNotFoundException,
                        NodeInterfaceNotFoundException,
                        LinkNotFoundException
Returns the link connecting the given interface on the given source node.

Returns:
The link connecting the given interface on the given source node.
Throws:
NodeNotFoundException
NodeInterfaceNotFoundException
LinkNotFoundException

getLinkTo

Link getLinkTo(java.lang.String nodeId,
               java.lang.String nodeInterfaceId)
               throws NodeNotFoundException,
                      NodeInterfaceNotFoundException,
                      LinkNotFoundException
Returns the link connecting the given interface on the given destination node.

Returns:
The link connecting the given interface on the given destination node.
Throws:
NodeNotFoundException
NodeInterfaceNotFoundException
LinkNotFoundException

getNbLinks

int getNbLinks()
Return the number of links

Returns:

addLink

void addLink(Link link)
             throws LinkAlreadyExistException,
                    NodeNotFoundException
Add a link to the domain

Parameters:
link -
Throws:
LinkAlreadyExistException - if a link with the same id already exist in the domain
NodeNotFoundException

removeLink

void removeLink(Link link)
                throws LinkNotFoundException
Remove a link from the domain. WARNING : use this method carrefully. This method removes all the LSP crossing the removed link. You can change the status of a link if you want to simulate a failure of this link.

Parameters:
link -
Throws:
LinkNotFoundException - if the link is not found in the domain

getAllLinks

java.util.List<Link> getAllLinks()
Return a list of all links and a empty list if there is no links.

Returns:

getUpLinks

java.util.List<Link> getUpLinks()
Get all the up links

Returns:

generateLspId

java.lang.String generateLspId()
Generate a unique LSP id.

Returns:

generateDetourLspId

java.lang.String generateDetourLspId(java.lang.String protectedId,
                                     int methodType,
                                     int protectionType)
Generate an id for a new detour LSP, based on the detour lsp parameters A conversion for this new id is automatically added to the convertor.

Parameters:
protectedId - id of the protected lsp
methodType -
protectionType -
Returns:
a new id

getLsp

Lsp getLsp(java.lang.String id)
           throws LspNotFoundException
Return the Lsp with the specified id

Parameters:
id -
Returns:
the Lsp with the specified id
Throws:
LspNotFoundException

getLsps

java.util.List<Lsp> getLsps(Node ingress,
                            Node egress)
Get the list of LSPs between ingress node and egress node

Parameters:
ingress - the ingress node
egress - the egress node
Returns:
the list of LSPs between ingress node and egress node

getPrimaryLsps

java.util.List<Lsp> getPrimaryLsps(Node ingress,
                                   Node egress)
Get the list of primary LSPs between ingress node and egress node

Parameters:
ingress - the ingress node
egress - the egress node
Returns:
the list of primary LSPs between ingress node and egress node

addLsp

void addLsp(Lsp lsp)
            throws LinkCapacityExceededException,
                   LspAlreadyExistException,
                   LspNotFoundException,
                   DiffServConfigurationException
Add a Lsp in the domain without using implicit preemption

Parameters:
lsp -
Throws:
LinkCapacityExceededException
LspAlreadyExistException
LspNotFoundException - If it is a backup LSP and the primary LSP cannot be found.
DiffServConfigurationException

addLsp

void addLsp(Lsp lsp,
            boolean preemption)
            throws LinkCapacityExceededException,
                   LspAlreadyExistException,
                   LspNotFoundException,
                   DiffServConfigurationException
Add a Lsp in the domain

Parameters:
lsp -
preemption - tells if implicit preemption should be used
Throws:
LinkCapacityExceededException
LspAlreadyExistException
LspNotFoundException - If it is a backup LSP and the primary LSP cannot be found.
DiffServConfigurationException

removeLsp

void removeLsp(Lsp lsp)
               throws LspNotFoundException
Remove a Lsp

Parameters:
lsp -
Throws:
LspNotFoundException

removeLsp

void removeLsp(Lsp lsp,
               boolean isReroute)
               throws LspNotFoundException
Remove a Lsp

Parameters:
lsp - the LSP to remove
isReroute - specify if the LSP is a rerouted LSP. If true, a LSP reroute notification will be send to the NetController. Otherwise, the LSP will be simply removed without notification.
Throws:
LspNotFoundException

removeAllLsps

void removeAllLsps()
Removes all the LSPs from the Domain.


getNbLsps

int getNbLsps()
Get the number of LSPs

Returns:

getAllLsps

java.util.List<Lsp> getAllLsps()
Get a list of all LSPs

Returns:

getAllPrimaryLsps

java.util.List<Lsp> getAllPrimaryLsps()
Get a list of all primary LSPs

Returns:

getBackupsOfPrimary

java.util.List<Lsp> getBackupsOfPrimary(Lsp primaryLsp)
Deprecated. use Lsp.getBackups()

Get all the backups Lsp of a primary LSP

Parameters:
primaryLsp -
Returns:

getLspsOnLink

java.util.List<Lsp> getLspsOnLink(Link link)
Get all the LSPs that use the link

Parameters:
link -
Returns:

getLspStartingAtIngress

java.util.List<Lsp> getLspStartingAtIngress(Node ingress)
Get all the LSPs that begins at the specified ingress node

Parameters:
ingress - the ingress node
Returns:
the list of LSPs begins at ingress node

renameLsp

void renameLsp(java.lang.String oldId,
               java.lang.String newId)
               throws LspNotFoundException,
                      LspAlreadyExistException
Rename an lsp of the domain.

Parameters:
oldId -
newId -
Throws:
LspNotFoundException - If the lsp cannot be found in the domain
LspAlreadyExistException - If the lsp already exists

renameNode

void renameNode(java.lang.String oldId,
                java.lang.String newId)
                throws NodeNotFoundException,
                       IdException,
                       NodeAlreadyExistException
Rename a node of the domain.

Parameters:
oldId -
newId -
Throws:
NodeNotFoundException
IdException
NodeAlreadyExistException

renameLink

void renameLink(java.lang.String oldId,
                java.lang.String newId)
                throws LinkNotFoundException,
                       LinkAlreadyExistException,
                       IdException
Throws:
LinkNotFoundException
LinkAlreadyExistException
IdException

getPriority

int getPriority(int preemption,
                int classtype)
Returns the priority corresponding to a preemption level and a class type

Parameters:
preemption -
classtype -
Returns:

usePreemption

boolean usePreemption()
Return true if the domain can use preemption. Preemption cannot be used if bandwidth sharing is enabled.

Returns:

getPreemptionLevel

int getPreemptionLevel(int priority)
Returns the preemption level corresponding to a priority

Parameters:
priority -
Returns:

getPreemptionLevels

java.util.List<java.lang.Integer> getPreemptionLevels(int classType)
Returns the preemption levels corresponding to a given class type

Parameters:
classType -
Returns:

getClassType

int getClassType(int priority)
Returns the class type corresponding to a priority

Parameters:
priority -
Returns:

isExistingPriority

boolean isExistingPriority(int preemptionLevel,
                           int classType)
Tells if the couple preemptionLevel/classType corresponds to an existing priority level

Parameters:
preemptionLevel -
classType -
Returns:

isExistingPriority

boolean isExistingPriority(int priority)
Tells if the priority corresponds to an existing priority level

Parameters:
priority -
Returns:

getMinPriority

int getMinPriority()
Gets the default minimum Priority (ie for lowest priority Class Type and lowest corresponding priority level);

Returns:

getMinPriority

int getMinPriority(int CT)
Gets the minimum priority for the given Class Type (ie lowest priority level)

Parameters:
CT -
Returns:

getMaxCTvalue

int getMaxCTvalue()
Obtain the maximum numerical value of CT

Returns:

getMinCTValue

int getMinCTValue()
Obtain the minimum numerical value of CT (highest priority)

Returns:

getMaxPLValue

int getMaxPLValue(int ctValue)
Obtain the maximum numerical value of preemption level for a given Class Type

Parameters:
ctValue -
Returns:

getMaxPLvalue

int getMaxPLvalue()
Obtain the maximum numerical value of preemption level

Returns:

getMinPLValue

int getMinPLValue()
Obtain the minimum numerical value of preemption level

Returns:

getMaxPreemptionLevel

int getMaxPreemptionLevel(int CT)
Gets the maximum Preemption Level (lowest numerical value) for a given class type.

Returns:

getPriorityHighPL

int getPriorityHighPL(int priority)
Returns the priority corresponding to the same CT but a just higher preemption level (lower numerical value)

Parameters:
priority -
Returns:

getNbCT

int getNbCT()
Gets the number of different class types

Returns:

getAllCTId

int[] getAllCTId()
Returns an array of all available CTs

Returns:

getPriorities

java.util.List<java.lang.Integer> getPriorities()
Return a list of all priorities identifiers

Returns:

getLowerPLs

java.util.List<java.lang.Integer> getLowerPLs(int priority)
Returns all the priorities corresponding to same CT as priority but lower preemption level (higher numerical value)

Parameters:
priority -
Returns:

getLowerPLsAllCTs

java.util.List<java.lang.Integer> getLowerPLsAllCTs(int priority)
Returns all the priorities at lower preemption level (higher numerical value)

Parameters:
priority -
Returns:

getPrioritySameCT

java.util.List<java.lang.Integer> getPrioritySameCT(int CT)
Returns all priorities corresponding to a same CT

Parameters:
CT -
Returns:

addPriorityLevel

void addPriorityLevel(int priority,
                      int classType,
                      int preemptionLevel)
                      throws DiffServConfigurationException
Adds a priority level.

Parameters:
priority - The ID of the newly created priority level.
classType - The class type of the newly created priority level.
preemptionLevel - The preemption level of the newly created priority level.
Throws:
DiffServConfigurationException - If the priority level already exists (with same id or with same class type and preemption level) or if one of priority, classType, preemptionLevel is not >= 0 and < 8.

removePriorityLevel

boolean removePriorityLevel(int priority)
                            throws DiffServConfigurationException
Removes the given priority level.

Parameters:
priority - The ID of the priority level to remove.
Returns:
true if the priority level was successfully removed and false if the priority level did not exist.
Throws:
DiffServConfigurationException - if the priority level is in used by some lsps.

addBgpRouter

void addBgpRouter(BgpRouter router)
                  throws RouterAlreadyExistException
Throws:
RouterAlreadyExistException

getBgpRouter

BgpRouter getBgpRouter(java.lang.String id)
Returns the BGP router with the specified Id.

Parameters:
id - the Id of the requested BGP router.
Returns:
the BGP router associated with the given Id, if it exists. Otherwise, returns null.

getAllBgpRouters

java.util.List<BgpRouter> getAllBgpRouters()
Returns the list of all BGP routers.

Returns:
the list of all BGP routers available in the domain.


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