|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectbe.ac.ulg.montefiore.run.totem.domain.model.impl.DiffServBandwidthManagement
public class DiffServBandwidthManagement
This class manages link bandwidth. Lsps can be added or remove temporarily to see the effect on reservable bandwidth.
Lsp can also be added or removed permanently, changing the reservation in the links.
This implementation uses preemption. it also uses Diffserv model to update link reservable bandwidth.
Creation date: 3/11/2006
| Constructor Summary | |
|---|---|
DiffServBandwidthManagement(Domain domain)
Create a new DiffServBandwidthManagement object to use with the given domain. |
|
| Method Summary | |
|---|---|
void |
addLsp(Lsp lsp)
Add lsp reservation. |
void |
addLspTemp(Lsp lsp)
Removes a lsp temporarily. |
void |
cancelChanges()
Cancel changes made by adding and removing lsp temporarily. |
java.util.List<Lsp> |
getPreemptList(Lsp lsp)
Returns the list of lsps to be preempted when a lsp is to be added to the domain. |
float |
getReservableBandwidth(int priority,
Link link,
java.util.Set<Link> protectedLinks)
Returns the maximum reservable bandwidth at priority level priority for a
lsp traversing the link link. |
void |
init()
Initialise the Bandwidth Management object with the lsps already present in the domain. |
void |
recomputeRbw(Link link)
Recompute the reservable bandwidth (rbw array) of the link link |
void |
removeLsp(Lsp lsp)
Removes lsp reservation. |
void |
removeLspTemp(Lsp lsp)
!!! if the exception is thrown, tempData will be left in an inconsistent state |
boolean |
usePreemption()
returns true. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public DiffServBandwidthManagement(Domain domain)
domain - | Method Detail |
|---|
public void init()
throws LinkCapacityExceededException
init in interface BandwidthManagementLinkCapacityExceededException - if the calculated bandwidth exceed link capacity
public java.util.List<Lsp> getPreemptList(Lsp lsp)
throws LinkCapacityExceededException
removeLspTemp(Lsp)).
getPreemptList in interface BandwidthManagementlsp - the Lsp to be added to the domain
LinkCapacityExceededException
public void addLsp(Lsp lsp)
throws LinkCapacityExceededException
addLsp in interface BandwidthManagementlsp -
LinkCapacityExceededException - If not enough bandwidth is available
public void removeLsp(Lsp lsp)
throws LinkCapacityExceededException
removeLsp in interface BandwidthManagementlsp -
LinkCapacityExceededException
public void removeLspTemp(Lsp lsp)
throws LinkCapacityExceededException,
DiffServConfigurationException,
LspNotFoundException
removeLspTemp in interface BandwidthManagementlsp -
LinkCapacityExceededException
DiffServConfigurationException
LspNotFoundException
public void addLspTemp(Lsp lsp)
throws LinkCapacityExceededException,
LspNotFoundException
#getReservableBandwidth(int, Link, java.util.Set) method is called.
This can be undone by a call to cancelChanges().
addLspTemp in interface BandwidthManagementlsp -
LinkCapacityExceededException
LspNotFoundExceptionpublic void cancelChanges()
cancelChanges in interface BandwidthManagementpublic boolean usePreemption()
usePreemption in interface BandwidthManagement
public float getReservableBandwidth(int priority,
Link link,
java.util.Set<Link> protectedLinks)
priority for a
lsp traversing the link link. If protectedLinks is given, the reservable bandwidth for
a backup lsp protecting those links is returned, otherwise, a primary lsp is assumed.
getReservableBandwidth in interface BandwidthManagementpriority - link - protectedLinks -
public void recomputeRbw(Link link)
throws LinkCapacityExceededException
link by using the lsps established in
the domain.
Warning: all rbw values should be set to 0 before calling this method.
- Specified by:
recomputeRbw in interface BandwidthManagement
- Parameters:
link -
- Throws:
LinkCapacityExceededException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||