Class Server
- java.lang.Object
-
- org.networkcalculus.dnc.network.server_graph.Server
-
public class Server extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Stringaliasprivate intidprivate MaxServiceCurvemax_service_curveA zero delay burst curve lets the influence of the maximum service curve vanishprivate booleanmax_service_curve_flagprivate AnalysisConfig.Multiplexingmultiplexingprivate ServiceCurveservice_curveprivate booleanuse_max_scWhether to use maximum service curves in output bound computationprivate booleanuse_max_sc_output_rateWhether to constrain the output bound further through convolution with the maximum service curve's rate as the server cannot output data faster than this rate.
-
Constructor Summary
Constructors Modifier Constructor Description privateServer()protectedServer(int id, java.lang.String alias, ServiceCurve service_curve, AnalysisConfig.Multiplexing multiplexing)protectedServer(int id, java.lang.String alias, ServiceCurve service_curve, MaxServiceCurve max_service_curve, AnalysisConfig.Multiplexing multiplexing, boolean use_max_sc, boolean use_max_sc_output_rate)
-
Method Summary
Modifier and Type Method Description private java.lang.StringBuffercommonMaxScString()private java.lang.StringBuffercommonStringPrefix()private java.lang.StringBuffercommonStringPrefix2()static ServercreateExplicitSinkServer()static ServercreateExplicitSourceServer()java.lang.StringgetAlias()intgetId()MaxServiceCurvegetMaxScRate()In contrast togetMaxServiceCurve()this function always returns the default zero delay burst curve if the useMaxScRate flag is not set.MaxServiceCurvegetMaxServiceCurve()This function always returns the default zero delay burst curve if the useMaxSC flag is not set.ServiceCurvegetServiceCurve()MaxServiceCurvegetStoredMaxSC()MaxServiceCurvegetStoredMaxScRate()AnalysisConfig.Multiplexingmultiplexing()booleanremoveMaxServiceCurve()voidsetAlias(java.lang.String alias)booleansetMaxServiceCurve(MaxServiceCurve max_service_curve)Setting a maximum service curve also enables useMaxSC and useMaxScRate.booleansetMaxServiceCurve(MaxServiceCurve max_service_curve, boolean use_max_sc, boolean use_max_sc_output_rate)voidsetMultiplexing(AnalysisConfig.Multiplexing multiplexing)booleansetServiceCurve(ServiceCurve service_curve)java.lang.StringtoExtendedString()java.lang.StringtoShortString()java.lang.StringtoString()booleanuseMaxSC()voiduseMaxSC(boolean use_max_sc)booleanuseMaxScRate()voiduseMaxScRate(boolean use_max_sc_output_rate)
-
-
-
Field Detail
-
id
private int id
-
alias
private java.lang.String alias
-
service_curve
private ServiceCurve service_curve
-
max_service_curve
private MaxServiceCurve max_service_curve
A zero delay burst curve lets the influence of the maximum service curve vanish
-
max_service_curve_flag
private boolean max_service_curve_flag
-
use_max_sc
private boolean use_max_sc
Whether to use maximum service curves in output bound computation
-
use_max_sc_output_rate
private boolean use_max_sc_output_rate
Whether to constrain the output bound further through convolution with the maximum service curve's rate as the server cannot output data faster than this rate.
-
multiplexing
private AnalysisConfig.Multiplexing multiplexing
-
-
Constructor Detail
-
Server
private Server()
-
Server
protected Server(int id, java.lang.String alias, ServiceCurve service_curve, MaxServiceCurve max_service_curve, AnalysisConfig.Multiplexing multiplexing, boolean use_max_sc, boolean use_max_sc_output_rate)- Parameters:
id- The server's id (unique).alias- The server's alias (not necessarily unique).service_curve- The server's service curve.max_service_curve- The server's maximum service curve.multiplexing- The server's flow multiplexing setting.use_max_sc- Convolve the maximum service curve with the arrival curve before deriving an output bound.use_max_sc_output_rate- Convolve the output bound with the maximum service curve.
-
Server
protected Server(int id, java.lang.String alias, ServiceCurve service_curve, AnalysisConfig.Multiplexing multiplexing)
-
-
Method Detail
-
createExplicitSourceServer
public static Server createExplicitSourceServer()
-
createExplicitSinkServer
public static Server createExplicitSinkServer()
-
getId
public int getId()
-
setServiceCurve
public boolean setServiceCurve(ServiceCurve service_curve)
-
getServiceCurve
public ServiceCurve getServiceCurve()
- Returns:
- A copy of the service curve
-
setMaxServiceCurve
public boolean setMaxServiceCurve(MaxServiceCurve max_service_curve)
Setting a maximum service curve also enables useMaxSC and useMaxScRate.- Parameters:
max_service_curve- The maximum service curve.- Returns:
- Signals success of the operation.
-
setMaxServiceCurve
public boolean setMaxServiceCurve(MaxServiceCurve max_service_curve, boolean use_max_sc, boolean use_max_sc_output_rate)
-
removeMaxServiceCurve
public boolean removeMaxServiceCurve()
-
getMaxServiceCurve
public MaxServiceCurve getMaxServiceCurve()
This function always returns the default zero delay burst curve if the useMaxSC flag is not set.- Returns:
- A copy of the maximum service curve
-
getStoredMaxSC
public MaxServiceCurve getStoredMaxSC()
- Returns:
- The stored maximum service curve
-
getMaxScRate
public MaxServiceCurve getMaxScRate()
In contrast togetMaxServiceCurve()this function always returns the default zero delay burst curve if the useMaxScRate flag is not set.- Returns:
- The maximum service curve
-
getStoredMaxScRate
public MaxServiceCurve getStoredMaxScRate()
- Returns:
- The stored maximum service curve rate
-
useMaxSC
public boolean useMaxSC()
-
useMaxSC
public void useMaxSC(boolean use_max_sc)
-
useMaxScRate
public boolean useMaxScRate()
-
useMaxScRate
public void useMaxScRate(boolean use_max_sc_output_rate)
-
multiplexing
public AnalysisConfig.Multiplexing multiplexing()
-
setMultiplexing
public void setMultiplexing(AnalysisConfig.Multiplexing multiplexing)
-
getAlias
public java.lang.String getAlias()
-
setAlias
public void setAlias(java.lang.String alias)
-
commonStringPrefix
private java.lang.StringBuffer commonStringPrefix()
-
toShortString
public java.lang.String toShortString()
-
commonStringPrefix2
private java.lang.StringBuffer commonStringPrefix2()
-
commonMaxScString
private java.lang.StringBuffer commonMaxScString()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
toExtendedString
public java.lang.String toExtendedString()
-
-