Package network
Class Hypergraph
java.lang.Object
network.Hypergraph
public class Hypergraph
extends java.lang.Object
Multi-domain Hypergraph representation class
-
Field Summary
Fields Modifier and Type Field Description (package private) java.lang.Stringavcapacitystatistics(package private) java.lang.Doublebandstatistics(package private) java.lang.Doublec2rcost / reveneu ratio(package private) CodeccodEdge Vector coder-decoder(package private) java.lang.Doublecpustatistics(package private) java.text.DecimalFormatdf(package private) java.lang.Stringdomaindomain name(package private) intdomainsnumber of domainsint[][]domregdomain registry(package private) intdurationVNF lifecycle duration(package private) java.util.ArrayList<SFC>embeddedSFCsembedded Serve Function Chains(package private) java.lang.Stringerrmesserror message string(package private) java.lang.Stringfilenamelog file namejava.lang.ObjectHPcontrollernetwork controller object; create a controller object and cast it here(package private) intiterationSimulation iteration, request id(package private) intkparameter k(package private) intlastrequestsizejava.util.ArrayList<Link>linkslinks(package private) intmaxhopmaximum hop count between servers(package private) FTnetwork[]netsdomains(package private) java.lang.Stringpathpath to store log file(package private) booleanprintnetstatsprint on screen network statistics(package private) booleanprintSFCstatsprint on screen embedded SFC statistics(package private) booleanrejectlast embedding outcome(package private) java.lang.Doublereqcostembedding cost parameters(package private) java.lang.Doublereqrevenueembedding vnf revenue(package private) intrequeststotal number of requests(package private) java.lang.Stringresultsstatistics(package private) intservperdomainservers per domain(package private) int[]sortservacservers sorted by available capacity(package private) booleanstorestatsStore statistics in log a file.(package private) intsuccessfulsuccessfully embedded requests(package private) java.lang.Doubletotalcpustatistics(package private) java.lang.Stringtypetype of domain networks -
Constructor Summary
Constructors Constructor Description Hypergraph()Hypergraph(java.lang.String type, FTnetwork[] nets, int[] evi, double interlinkcap, int links)constructor for building multi-DC infrastructures with Fat-Tree topology DCs -
Method Summary
Modifier and Type Method Description voidaddsuccessful()Add request in successful counter.booleancheckembed(VNFgraph vnfgraph, int[] mapping)check the validity of embedding of input VNF-graph based on generated mappingvoiddelembeddedbyid(int sfcid)remove embedded SFC for multi-domain infrastructuresint[]domainpath(int s1, int s2)voiddomainreg()server registry index in edge vector of the paths that interconnect all serversvoiddomregsort()server registry sort servers registry based on their hop-count on descending order computationally efficient version using Bucket Sort algorithmvoidembed(VNFgraph vnfgraph, int[] mapping)embed input VNF-graph based on generated mappingjava.lang.Stringgetavcapacity()get available capacityjava.lang.Doublegetband(int a, int b)return the available bandwidth of the link connecting given nodesjava.lang.Objectgetcontroller()get network controllerFTnetworkgetdomain(int a)get FT domainint[]getdomainpath(int a, int b)get domain pathintgetdomains()get number of serversint[]getdomreg(int ii)get single record from server registryint[][]getdomregistry()getr server registryintgetduration()get VNF lifecycle durationjava.util.ArrayList<SFC>getembeddedSFCs()get embedded SFCsjava.lang.Stringgeterrmess()get error messageintgethopcount(int a, int b)intgetiteration()Get iteration.Linkgetlink(int tt)get linkintgetlinks()get number of linksjava.util.ArrayList<Link>getnetlinks()intgetnumofembedded()get number of embedded VNFsintgetservperdomain()get server per domainintgetsortednode(int i)get single node in sorted listjava.lang.Doublegettotalcpu()get total CPUjava.lang.Stringgettype()get network typejava.lang.Doublegetusedcpu()get used CPUSFCgetvnf(int i)get single embedded SFCbooleanisrejected()is request rejected?booleanmember(java.util.ArrayList<java.lang.Integer> list, int a)check membership in a Arraylistvoidnetstats()network statistics link traffic and CPU loadvoidnodecapsort()sorts nodes in ascending order based on their available capacityvoidprintel()print network parametersvoidprintel2()print network parameters shortervoidprintlinks()print linksvoidsetdomain(java.lang.String d)set domain namevoidsetduration(int d)set VNF lifecycle durationvoidsetfilename(java.lang.String fnm)set log file namevoidsetiteration(int s)Set iteration.voidsetpath(java.lang.String pth)path where the log files are storedvoidsetstorestats(boolean b)store statistics upon a successful embeddingvoidshownetstats()print network statisticsvoidstorerejectstats()store network statistics after rejecting a requestvoidstorestats()store network statisticsvoidtotalcpu()compute total CPUvoidvnfstats()network statistics link traffic and CPU loadvoidvnfstats(java.lang.Double revenue, java.lang.Double noderev, java.lang.Double vnftr, int hops)cost of embedding, it accumulates computational load and traffic added to the networkMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
nets
FTnetwork[] netsdomains -
type
java.lang.String typetype of domain networks -
domain
java.lang.String domaindomain name -
k
int kparameter k -
servperdomain
int servperdomainservers per domain -
domains
int domainsnumber of domains -
domreg
public int[][] domregdomain registry -
sortservac
int[] sortservacservers sorted by available capacity -
links
links -
embeddedSFCs
java.util.ArrayList<SFC> embeddedSFCsembedded Serve Function Chains -
duration
int durationVNF lifecycle duration -
cod
Codec codEdge Vector coder-decoder -
maxhop
int maxhopmaximum hop count between servers -
printSFCstats
boolean printSFCstatsprint on screen embedded SFC statistics -
printnetstats
boolean printnetstatsprint on screen network statistics -
storestats
boolean storestatsStore statistics in log a file. -
reject
boolean rejectlast embedding outcome -
requests
int requeststotal number of requests -
successful
int successfulsuccessfully embedded requests -
band
java.lang.Double bandstatistics -
cpu
java.lang.Double cpustatistics -
totalcpu
java.lang.Double totalcpustatistics -
results
java.lang.String resultsstatistics -
avcapacity
java.lang.String avcapacitystatistics -
df
java.text.DecimalFormat df -
path
java.lang.String pathpath to store log file -
filename
java.lang.String filenamelog file name -
lastrequestsize
int lastrequestsize -
errmess
java.lang.String errmesserror message string -
reqrevenue
java.lang.Double reqrevenueembedding vnf revenue -
reqcost
java.lang.Double reqcostembedding cost parameters -
c2r
java.lang.Double c2rcost / reveneu ratio -
iteration
int iterationSimulation iteration, request id -
HPcontroller
public java.lang.Object HPcontrollernetwork controller object; create a controller object and cast it here
-
-
Constructor Details
-
Hypergraph
public Hypergraph() -
Hypergraph
public Hypergraph(java.lang.String type, FTnetwork[] nets, int[] evi, double interlinkcap, int links)constructor for building multi-DC infrastructures with Fat-Tree topology DCs
-
-
Method Details
-
setpath
public void setpath(java.lang.String pth)path where the log files are stored -
setfilename
public void setfilename(java.lang.String fnm)set log file name -
setdomain
public void setdomain(java.lang.String d)set domain name -
gethopcount
public int gethopcount(int a, int b) -
domainpath
public int[] domainpath(int s1, int s2) -
member
public boolean member(java.util.ArrayList<java.lang.Integer> list, int a)check membership in a Arraylist -
nodecapsort
public void nodecapsort()sorts nodes in ascending order based on their available capacity -
getsortednode
public int getsortednode(int i)get single node in sorted list -
domainreg
public void domainreg()server registry index in edge vector of the paths that interconnect all servers -
domregsort
public void domregsort()server registry sort servers registry based on their hop-count on descending order computationally efficient version using Bucket Sort algorithm -
printel
public void printel()print network parameters -
printel2
public void printel2()print network parameters shorter -
setstorestats
public void setstorestats(boolean b)store statistics upon a successful embedding -
setduration
public void setduration(int d)set VNF lifecycle duration -
setiteration
public void setiteration(int s)Set iteration. -
getiteration
public int getiteration()Get iteration. -
getduration
public int getduration()get VNF lifecycle duration -
getdomains
public int getdomains()get number of servers -
getlinks
public int getlinks()get number of links -
gettype
public java.lang.String gettype()get network type -
getnetlinks
-
getservperdomain
public int getservperdomain()get server per domain -
getnumofembedded
public int getnumofembedded()get number of embedded VNFs -
getband
public java.lang.Double getband(int a, int b)return the available bandwidth of the link connecting given nodes -
isrejected
public boolean isrejected()is request rejected? -
geterrmess
public java.lang.String geterrmess()get error message -
getcontroller
public java.lang.Object getcontroller()get network controller -
getdomain
get FT domain -
getdomainpath
public int[] getdomainpath(int a, int b)get domain path -
getdomreg
public int[] getdomreg(int ii)get single record from server registry -
getdomregistry
public int[][] getdomregistry()getr server registry -
addsuccessful
public void addsuccessful()Add request in successful counter. Use if automatic store of statistics is inactive. -
checkembed
check the validity of embedding of input VNF-graph based on generated mapping -
embed
embed input VNF-graph based on generated mapping -
getembeddedSFCs
get embedded SFCs -
getvnf
get single embedded SFC -
totalcpu
public void totalcpu()compute total CPU -
gettotalcpu
public java.lang.Double gettotalcpu()get total CPU -
getusedcpu
public java.lang.Double getusedcpu()get used CPU -
getlink
get link -
storerejectstats
public void storerejectstats()store network statistics after rejecting a request -
storestats
public void storestats()store network statistics -
delembeddedbyid
public void delembeddedbyid(int sfcid)remove embedded SFC for multi-domain infrastructures -
vnfstats
public void vnfstats(java.lang.Double revenue, java.lang.Double noderev, java.lang.Double vnftr, int hops)cost of embedding, it accumulates computational load and traffic added to the network -
shownetstats
public void shownetstats()print network statistics -
netstats
public void netstats()network statistics link traffic and CPU load -
getavcapacity
public java.lang.String getavcapacity()get available capacity -
printlinks
public void printlinks()print links -
vnfstats
public void vnfstats()network statistics link traffic and CPU load
-