|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Domain
Represent a network domain
Creation date: 12-Jan-2005 17:24:56
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 |
---|
void init(boolean removeMultipleLink, boolean useBwSharing) throws InvalidDomainException
removeMultipleLink
- true if the multiple links must be removed (@see DomainValidator)
InvalidDomainException
- If the domain is invalid (like bad lsps path).DomainConvertor getConvertor()
DomainChangeObserver getObserver()
DomainValidator getValidator()
DomainStatistics getDomainStatistics()
BandwidthManagement getBandwidthManagement()
boolean useBandwidthSharing()
SPFCache getSPFCache()
java.net.URI getURI()
void setURI(java.net.URI uri)
uri
- BandwidthUnit getBandwidthUnit()
void setBandWidthUnit(BandwidthUnit unit)
DelayUnit getDelayUnit()
void setDelayUnit(DelayUnit unit)
void setSwitchingMethod(SwitchingMethod sm)
SwitchingMethod.stop()
and the new one is started (SwitchingMethod.start()
).
sm
- SwitchingMethod getSwitchingMethod()
int getASID()
void setASID(int ASID)
java.lang.String getDescription()
void setDescription(java.lang.String description)
description
- java.lang.String getName()
void setName(java.lang.String name)
name
- void setTitle(java.lang.String title)
title
- java.lang.String getTitle()
void setDate(java.util.Calendar date)
date
- java.util.Calendar getDate()
void setAuthor(java.lang.String author)
author
- java.lang.String getAuthor()
Node getNode(java.lang.String id) throws NodeNotFoundException
id
-
NodeNotFoundException
Node getNodeByRid(java.lang.String IP) throws NodeNotFoundException
IP
- ip address of the node
IP
.
NodeNotFoundException
- when no node exists in the domain with the given IP address.void addNode(Node node) throws NodeAlreadyExistException
node
-
NodeAlreadyExistException
void removeNode(Node node) throws NodeNotFoundException, LinkNotFoundException
node
-
NodeNotFoundException
LinkNotFoundException
int getNbNodes()
java.util.List<Node> getAllNodes()
java.util.List<Node> getUpNodes()
java.util.List<Link> getLinksBetweenNodes(Node srcNode, Node dstNode) throws NodeNotFoundException
srcNode
- dstNode
-
NodeNotFoundException
java.util.List<Link> getLinksBetweenNodes(java.lang.String srcNodeId, java.lang.String dstNodeId) throws NodeNotFoundException
srcNodeId
- dstNodeId
-
NodeNotFoundException
Link getLinkBetweenNodes(java.lang.String srcNodeId, java.lang.String srcIfId, java.lang.String dstNodeId, java.lang.String dstIfId) throws LinkNotFoundException, NodeNotFoundException, NodeInterfaceNotFoundException
srcNodeId
- The source node ID.srcIfId
- The source interface ID.dstNodeId
- The destination node ID.dstIfId
- The destination interface ID.
LinkNotFoundException
NodeNotFoundException
NodeInterfaceNotFoundException
Link getReverseLink(Link link) throws NodeNotFoundException
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.
link
- The link to consider.
link
.
NodeNotFoundException
java.util.List<Link> getReverseLinks(Link link) throws NodeNotFoundException
link
.
link
- The link to consider.
link
.
NodeNotFoundException
java.util.List<Link> getReverseLinks(java.lang.String linkId) throws LinkNotFoundException, NodeNotFoundException
linkId
.
linkId
- The ID of the link to consider.
linkId
.
LinkNotFoundException
NodeNotFoundException
Link getLink(java.lang.String id) throws LinkNotFoundException
id
-
LinkNotFoundException
Link getLinkFrom(java.lang.String nodeId, java.lang.String nodeInterfaceId) throws NodeNotFoundException, NodeInterfaceNotFoundException, LinkNotFoundException
NodeNotFoundException
NodeInterfaceNotFoundException
LinkNotFoundException
Link getLinkTo(java.lang.String nodeId, java.lang.String nodeInterfaceId) throws NodeNotFoundException, NodeInterfaceNotFoundException, LinkNotFoundException
NodeNotFoundException
NodeInterfaceNotFoundException
LinkNotFoundException
int getNbLinks()
void addLink(Link link) throws LinkAlreadyExistException, NodeNotFoundException
link
-
LinkAlreadyExistException
- if a link with the same id already exist in the domain
NodeNotFoundException
void removeLink(Link link) throws LinkNotFoundException
link
-
LinkNotFoundException
- if the link is not found in the domainjava.util.List<Link> getAllLinks()
java.util.List<Link> getUpLinks()
java.lang.String generateLspId()
java.lang.String generateDetourLspId(java.lang.String protectedId, int methodType, int protectionType)
protectedId
- id of the protected lspmethodType
- protectionType
-
Lsp getLsp(java.lang.String id) throws LspNotFoundException
id
-
LspNotFoundException
java.util.List<Lsp> getLsps(Node ingress, Node egress)
ingress
- the ingress nodeegress
- the egress node
java.util.List<Lsp> getPrimaryLsps(Node ingress, Node egress)
ingress
- the ingress nodeegress
- the egress node
void addLsp(Lsp lsp) throws LinkCapacityExceededException, LspAlreadyExistException, LspNotFoundException, DiffServConfigurationException
lsp
-
LinkCapacityExceededException
LspAlreadyExistException
LspNotFoundException
- If it is a backup LSP and the primary LSP cannot be found.
DiffServConfigurationException
void addLsp(Lsp lsp, boolean preemption) throws LinkCapacityExceededException, LspAlreadyExistException, LspNotFoundException, DiffServConfigurationException
lsp
- preemption
- tells if implicit preemption should be used
LinkCapacityExceededException
LspAlreadyExistException
LspNotFoundException
- If it is a backup LSP and the primary LSP cannot be found.
DiffServConfigurationException
void removeLsp(Lsp lsp) throws LspNotFoundException
lsp
-
LspNotFoundException
void removeLsp(Lsp lsp, boolean isReroute) throws LspNotFoundException
lsp
- the LSP to removeisReroute
- 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.
LspNotFoundException
void removeAllLsps()
Domain
.
int getNbLsps()
java.util.List<Lsp> getAllLsps()
java.util.List<Lsp> getAllPrimaryLsps()
java.util.List<Lsp> getBackupsOfPrimary(Lsp primaryLsp)
Lsp.getBackups()
primaryLsp
-
java.util.List<Lsp> getLspsOnLink(Link link)
link
-
java.util.List<Lsp> getLspStartingAtIngress(Node ingress)
ingress
- the ingress node
void renameLsp(java.lang.String oldId, java.lang.String newId) throws LspNotFoundException, LspAlreadyExistException
oldId
- newId
-
LspNotFoundException
- If the lsp cannot be found in the domain
LspAlreadyExistException
- If the lsp already existsvoid renameNode(java.lang.String oldId, java.lang.String newId) throws NodeNotFoundException, IdException, NodeAlreadyExistException
oldId
- newId
-
NodeNotFoundException
IdException
NodeAlreadyExistException
void renameLink(java.lang.String oldId, java.lang.String newId) throws LinkNotFoundException, LinkAlreadyExistException, IdException
LinkNotFoundException
LinkAlreadyExistException
IdException
int getPriority(int preemption, int classtype)
preemption
- classtype
-
boolean usePreemption()
int getPreemptionLevel(int priority)
priority
-
java.util.List<java.lang.Integer> getPreemptionLevels(int classType)
classType
-
int getClassType(int priority)
priority
-
boolean isExistingPriority(int preemptionLevel, int classType)
preemptionLevel
- classType
-
boolean isExistingPriority(int priority)
priority
-
int getMinPriority()
int getMinPriority(int CT)
CT
-
int getMaxCTvalue()
int getMinCTValue()
int getMaxPLValue(int ctValue)
ctValue
-
int getMaxPLvalue()
int getMinPLValue()
int getMaxPreemptionLevel(int CT)
int getPriorityHighPL(int priority)
priority
-
int getNbCT()
int[] getAllCTId()
java.util.List<java.lang.Integer> getPriorities()
java.util.List<java.lang.Integer> getLowerPLs(int priority)
priority
-
java.util.List<java.lang.Integer> getLowerPLsAllCTs(int priority)
priority
-
java.util.List<java.lang.Integer> getPrioritySameCT(int CT)
CT
-
void addPriorityLevel(int priority, int classType, int preemptionLevel) throws DiffServConfigurationException
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.
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.boolean removePriorityLevel(int priority) throws DiffServConfigurationException
priority
- The ID of the priority level to remove.
true
if the priority level was successfully removed
and false
if the priority level did not exist.
DiffServConfigurationException
- if the priority level is in used by some lsps.void addBgpRouter(BgpRouter router) throws RouterAlreadyExistException
RouterAlreadyExistException
BgpRouter getBgpRouter(java.lang.String id)
id
- the Id of the requested BGP router.
java.util.List<BgpRouter> getAllBgpRouters()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |