2%% Example of
class switching controlled by a reducible Markov chain
3model = Network(
'mm1cs');
6node{1} = Source(model,
'Source 1');
7node{2} = Queue(model,
'Queue 0', SchedStrategy.FCFS);
8node{3} = Queue(model,
'Queue 1', SchedStrategy.FCFS);
9node{4} = Queue(model,
'Queue 2', SchedStrategy.FCFS);
10node{5} = Sink(model,
'Sink 1');
13jobclass{1} = OpenClass(model,
'Class1', 0);
14jobclass{2} = OpenClass(model,
'Class2', 0);
15jobclass{3} = OpenClass(model,
'Class3', 0);
17node{1}.setArrival(
jobclass{1}, Exp(1.000000)); % (Source 1,Class1)
18node{2}.setService(
jobclass{1}, Exp(10.000000)); % (Queue 1,Class2)
19node{3}.setService(
jobclass{2}, Exp(20.000000)); % (Queue 1,Class2)
20node{4}.setService(
jobclass{3}, Exp(30.000000)); % (Queue 2,Class3)
22P = model.initRoutingMatrix(); % initialize routing matrix
31model.printRoutingMatrix();
33solver{1} = MVA(model);
34AvgTable{1} = solver{1}.getAvgChainTable;