This is a short user's manual of the
RTNOU program. RTNOU is a Win32 program developed with
Visual C++. It provides a simple and graphical user interface to test all the
algorithms of the RTNOU Library. As a research program it is in permanent
construction, so it is easy that you find bugs. The program has a typical
Windows Interface and is documented with this manual.
Main characteristics:
You can use this program with the following traffic traces:
The program can be downloaded as a self-extractor zip in . Create a directory and extract all the files in this directory. The executable of the program is RTNOU.exe and the program configuration is stored in the RTNOU.ini file.
Browser Manual Setup: I recommend to download the HTML help file and configurate the RTNOU.ini to link with the manual. The default configuration link with the manual on the web using Internet Explorer. The RTNOU,ini file has the following section and two entries:
[Internet] URLhtml=D:\Software\RTNOU\html\ Browser=C:\IE\IEXPLORE "%s"
Where URLhtml is the directory of the HTML files and Browser contains the command to lauch the browser. The %s is replaced by the URL
The RTNOU program is a typical windows SDI application (Single document Interface). The main components of the application are:
The following figure shows a sample of the RTNOU application:
The menu has the following options (ignoring the standard windows menus like read, copy, etc.)
This dialog contain the network parameters that are used in RTNOU. This dialog is no modal so you can keep it open to modify the network parameters used in other dialogs.
The Ctot and Dtot values are obtained using the following expressions (Etot = Dtot)
With this dialog you can obtain the bandwidth reservation and network delay for a given network parameters using Parekh/Gallaguer or IETF IntServ guaranteed service delay equations. The Parekh/Gallaguer equation uses a leaky bucket traffic specification (s,r) so the traffic is constrained by the following function a(t)=s+rt. The delay equation is:
The IETF equation uses the token bucket specification (b,r,p) so the traffic is constrained by a(t)=min{pt, b+rt}. The delay equations are:
The dialog can obtain the delay for a given reservation and viceversa:
With this dialog you can calculate the bandwidth reservation and network delay for a given network parameters using IETF EF DiffServ delay equations (see [16,17]. Depending on the parameter that is 0 the button recalculate this parameters, For example, for obtaining the reservation R you must inform the fields B and Delay and leave the R field to 0. The delay equation used is:
This option reads the traffic traces. RTNOU works internally as bandwidth but it can read different traces formats (Workload traces formats)
Shows a dialog with the traffic information. The information is the Max and Mean frame size, Peak and Mean bandwidth and Burst Rate (Peak/Mean).
Generates the cumulative arrival traffic of the loaded traffic. The file extension is .ACU. The cumulative arrival function A is defined as the bits accumulated, that is, if f is the frames per second of the traffic and Bi the frame size, then A(t) is obtained as:
Generates the empirical envelope of the load traffic. The file extension is .ENV. The empirical envelope is defined as
The following example shows the first 500 frames of the soccer traffic and its cumulative and empirical envelope.
NOTE: This process has a high computational cost: O(n2).
Generates the traffic trace of the output of a leaky bucket shaper. The file extension is .SLB. The leaky bucket shaper has two parameters: ss is the buffer size and rs is the output rate, so the output is contrained to the following function a(t)= rst. The shaper delay is ss/rs.
The following example shows the first 500 frames of the soccer traffic and the output of a leaky bucket shaper with r=0.8Mb/s.
Writes the loaded traffic trace as frame size (bits) with extension .WRT
Writes the loaded traffic trace as bandwidth (b/s) with extension .WRK
If checked, write all the files in one line separated by spaces (for example in order to work with EXCEL)
This option presents a dialog with several utilities that uses the s(r) function. The s(r) is obtained using the following expression:
In the dialog there are 3 options:
The following example shows the first 500 frames of the soccer traffic and the output and the s value depending on time for r=1Mb/s.
This option get the optimal bandwidth reservation R for a given delay using an iterative method (O(log n2).The I value is the number of iterations needed to find the solution. The method is described in [1][2].
This option presents a dialog to obtain the DiffServ EF PHB parameters (B,R). The bandwidth reservation is obtained using this equation (see [16][17]):
The Etot is equivalent to Dtot
In the second group box, you can generate a file with the optimal reservation values for a given interval of delay. The extension of this file is .RFD. The interval is defined as [d0, d1] with increment 'Inc d' in seconds. The following table show the results for Soccer500 using a delay range from 0.1 to 1s, increment 0.1s. The columns show the delay, the B and R values and the utilisation (R/mean bandwidth)
Network parameters : Etot = 0.000007 Hops = 4 Traffic MeanRate = 565633.66 PeakRate = 2005856 D(s) | B(bits)| R(b/s) | U() ------------|------------|--------------|-------- 0.1000 30858 1234404 45.82 0.2000 47540 950826 59.49 0.3000 66530 887081 63.76 0.4000 85139 851406 66.44 0.5000 104178 833433 67.87 0.6000 122659 817736 69.17 0.7000 140941 805383 70.23 0.8000 158678 793398 71.29 0.9000 175896 781765 72.35 1.0000 192616 770467 73.41
In the third group box, you can generate a file with the optimal reservation by segments for a given delay. The extension of this file is .SEQ. The following table show the results for Soccer500 using 5 segments The columns show the start, the B and R values and the utilisation (R/mean bandwidth)
Network parameters : Etot = 0.000007 Hops = 4 Traffic MeanRate = 565633.66 PeakRate = 2005856 Delay = 0.1000 Segments = 5 Start(s) | B(bits)| R(b/s) | U() ------------|------------|--------------|-------- 0.00 22620 904859 62.51 4.00 28649 1146021 49.36 8.00 27101 1084107 52.18 12.00 30858 1234404 45.82 16.00 28776 1151101 49.14
This option generate the histogram for the traffic loaded with extension .HST
The following table show the result for the Rose Soccer traffic using 10 classes. The count column is the number of element in the class and % is the percentage. The last column shows the cumulative percentage.
Classes | Count | % | %Cumulative ----------------------------------------------- 0 | 870 | 58.00 | 58.00 420601 | 293 | 19.53 | 77.53 841202 | 120 | 8.00 | 85.53 1261803 | 138 | 9.20 | 94.73 1682404 | 53 | 3.53 | 98.27 2103005 | 17 | 1.13 | 99.40 2523606 | 3 | 0.20 | 99.60 2944207 | 1 | 0.07 | 99.67 3364808 | 2 | 0.13 | 99.80 3785409 | 3 | 0.20 | 100.00
This option reduce the loaded traffic. The reduction is done in two steps:
For example, a 10% reduction in a traffic with 1500 frames reduce 150 frames to a new peak frame. The following example shows the first 500 frames of the soccer traffic and the 10% reduced traffic
This option read the envelope points from a .VPD file.
The dialog shows the envelope points. You can write the envelope points to a file for future work (with .VPD extension). Table generation generates a text file (extension .EP) with the envelope points as follows (for the first 500 frames of the soccer traffic).
i | T(s)| rho(b/s)| Ei(bits) | ------|-------------|--------------|--------------| 0 0.000000 2005856.00 0.00 1 0.040000 973071.00 80234.24 7 0.280000 896589.67 313771.28 10 0.400000 873485.67 421362.04 13 0.520000 865485.33 526180.32 16 0.640000 850530.56 630038.56 25 1.000000 844940.67 936229.56 28 1.120000 820236.78 1037622.44 37 1.480000 716771.13 1332907.68 45 1.800000 618441.33 1562274.44 48 1.920000 598152.78 1636487.40 57 2.280000 591964.85 1851822.40 357 14.280000 511543.67 8955400.60 369 14.760000 501079.58 9200941.56 393 15.720000 484887.17 9681977.96 405 16.200000 420950.25 9914723.80 417 16.680000 379656.80 10116779.92 477 19.080000 349301.00 11027956.24 489 19.560000 290116.00 11195620.72 492 19.680000 283907.67 11230434.64 498 19.920000 181058.00 11298572.48 500 20.000000 0.00 11305814.80
The envelope points are detailed in [1][2]
This option generate the empirical envelope from the traffic loaded. When the Envelope Points are generated RTNOU presents the same dialog of the previous option.
NOTE: This process has a high computational cost: O(n2).
This option presents a dialog with several utilities that uses the s'(r) function, that uses the envelope points. In the dialog there are 3 options:
The following figure shows s'(r) function for the first 500 frames of the soccer traffic for r range [0, 2Mb/s]:
This option presents a dialog to obtain the optimal reservation (bandwidth) for a given end-to-end delay using the envelope points (as described in [1][2]). Two methods:
Both methods obtain the same result. 'Iterations' is the number of iterations needed to find out the solution. If 'Use Parekh Galleguer equation' is checked then the delay equation used are the Parekh and Galleguer ones. By default the optimisation methods use the IETF delay equations (although the results are the same)
In the second group box, you can generate a file with the optimal reservation values for a given interval of delay. The extension of this file is .RFD. The interval is defined as [d0, d1] with increment 'Inc d' in seconds. The following table show the results for Soccer500 using a delay range from 0 to 1s, increment 0.1s. The columns show the delay, the s and reservation values and the utilisation (reservation/mean bandwidth)
Network parameters : Ctot = 40000.000000 Dtot = 0.003550 M = 10000 Traffic MeanRate = 565633.66 PeakRate = 2005856 D(s) | sigma(bits)| rho=R(b/s) | U() ------------|------------|--------------|-------- 0.0000 0 0 1.#J 0.1000 50640 939756 60.19 0.2000 120880 818937 69.07 0.3000 189108 772838 73.19 0.4000 250063 731652 77.31 0.5000 306382 697718 81.07 0.6000 358788 668603 84.60 0.7000 406996 641821 88.13 0.8000 451538 617161 91.65 0.9000 493906 595578 94.97 1.0000 546751 588841 96.06
The following figure shows the s and r values.
This option presents a dialog to obtain the optimal leaky bucket shaper for a given end-to-end delay using the envelope points (as described in [4]).
In the second group box, you can generate a file with the optimal shaper reservation values for a given interval of delay. The extension of this file is .SFD. The interval is defined as [d0, d1] with increment 'Inc d' in seconds. The format of the table is the same as the previous option. The s and r columns corresponds to the shaper parameters.
Obtain the Piecewise Linear Function from the envelope points as describe in [14]. The extension of the file is PLE and has the s and r for the multi leaky bucket characterization.The following table show the results for Soccer500.
Piecewise Linear Envelope n = 21 i | rho(b/s)| sigma(bits)| ------|--------------|--------------| 0 2005856 0 1 973071 41311 2 896590 62726 3 873486 71968 4 865485 76128 5 850531 85699 6 844941 91289 7 820237 118957 8 716771 272086 9 618441 449080 10 598153 488034 11 591965 502143 12 511544 1650557 13 501080 1805007 14 484887 2059552 15 420950 3095330 16 379657 3784104 17 349301 4363293 18 290116 5520952 19 283908 5643132 20 181058 7691897
Obtain the Envelope Function E(t) depending on time. The extension of the file is EFT. This function is obtained from the Piecewise Linear Envelope The interval is defined as [t0, t1] with increment 'Inc t' in seconds. The following figure shows the Envelope Function for Soccer500.
Reduce the number of segments of a piecewise linear envelope using the parameterization algorithm described in [13]. The extension of the file is PLR and has the sigma and rho for the multi leaky bucket characterization.
This option presents a dialog to obtain the primary and backup reservation (bandwidth) for a given end-to-end delay as presented in [16]. You can generate a file with the optimal reservation values for a given interval of delay. The extension of this file is .RFB. The interval is defined as [d0, d1] with increment 'Inc d' in seconds.
The parameter Reduction represent the difference between D and D', that is D'=D*reduction. The F parameter represents the false failure rate and is used to obtain the total reservation as TR = R+ R'*F. The savings column is obtained as (R'-TR)/R'*100
The following table show the results for Soccer500 using a delay range from 0 to 1s, increment 0.1s.
Network parameters : Ctot = 40000.000000 Dtot = 0.004500 M = 418 Traffic MeanRate = 565633.66 PeakRate = 2005856 Reduction = 0.500000 Phi = 0.010000 D(s) | R(b/s) | D'(s) | R'(b/s) | Total R | %Savings ------------|--------------|------------|--------------|--------------|------------- 0.0000 0 0.0000 0 0 -1.#IND 0.1000 942134 0.0500 1406248 956196 32.0037 0.2000 819402 0.1000 942134 828823 12.0270 0.3000 773251 0.1500 853009 781781 8.3502 0.4000 732022 0.2000 819402 740216 9.6638 0.5000 698007 0.2500 795658 705963 11.2730 0.6000 668868 0.3000 773251 676601 12.4992 0.7000 642065 0.3500 752072 649586 13.6271 0.8000 617377 0.4000 732022 624697 14.6614 0.9000 595756 0.4500 713549 602891 15.5081 1.0000 588878 0.5000 698007 595858 14.6344
Optimise the buffer utilization in a node for as set of workload using the envelope points. This optimisation is described in [3]. It also implements the buffer scheme assignation introduced by Le Presti in [9].
You can generate a file with the B value for a C interval. The values C0 and C1 are calculate from the traffic workload (C0 is the sum of the bandwidth reservation values of the workloads and C1 is the sum of the peak values). If "Recalculate Ctot,Dtot" is checked these values are recalculate for every C value. If "Include Simulation" is checked the mean and max simulations values are includes in the file. The name of the file is BufferOpt.obn
Network parameters Bandwidth = 30000000 bps MTU = 10000 bits M = 10000 bits Nodes = 1 bits Ctot = 10000.000000 Dtot = 0.000333 D = 0.100000 Loads Traffic name | N | sigma(bits)| rho=R(bps)| Peak(bps)| Ton(s) --------------------|----|------------|------------|------------|------------ LAMBS.VPD 5 92918 1032630 3355600 0.0399996556 SOCCER.VPD 5 228448 2392460 4679400 0.0998924327 NEWS.VPD 5 44705 548883 1155000 0.0737563870 C(b/s) | sigma(bits)| EP | Presti | Max.Buf. | Mean Buf. | % ------------|------------|------------|------------|------------|------------|-------- 19869865 1828190 0 0 0 0 0.0 21869865 1828780 1126073 1630060 641245 215864 30.92 23869865 1829265 915480 1430550 561245 192423 36.01 25869865 1829680 803205 1230935 485088 179370 34.75 27869865 1830035 723204 1031225 450221 166836 29.87 29869865 1830335 643204 831435 419197 156263 22.64 31869865 1830605 563204 646400 388173 144690 12.87 33869865 1830845 483205 498865 373620 139420 3.14 35869865 1831050 403205 403205 373620 132572 0.00 37869865 1831240 323205 323205 304285 123202 0.00 39869865 1831410 243205 243205 226604 101755 0.00 41869865 1831560 163205 163205 144285 88237 0.00 43869865 1831700 83205 83205 68261 64683 0.00 45869865 1831825 3205 3210 3205 3205 0.16
The following figure shows the buffer utilisation for two loads.
You can simulate the maximal and mean buffer optimization. The iterations field indicate the number of variations in the traffic. This simulation need the traffic traces (*.wrt files) of the workloads. Assuming that all the traffic loads have the same time scale, the total buffer B needed in a node can be obtained using the following expression: (where si,j is the channel j si function):
Wi gives the total buffer used in time frame i. Therefore B is the the maximum buffer for all frames i.
In this option you can test diffent admission tests as described in [2].
In this dialog you can define the workload to be used in the admission tests used in the simulations. This dialog is no modal so you can mantain it open to modify the traffic workload used in the following menu options. Up to 20 six classes of loads can be used.
You can test if the given workload can be scheduled in a node. First, introduce network node parameters. In this test all the nodes has the same characteristics. This dialog closely interacts with the Workload Definition (update the reservations).
The admission tests implemented are described in [2], and are the following
This simulation obtains several performance parameters, as the call admission probability, and bandwidth utilization for a given set of traffics. The results of the simulation are generated in the log. In order to start a simulation you must follow these steps:
The simulation calculate the following parameters
The following example shows a result for load 130.00 and 1 hops
==================================================================================== Simulations of Schedulabilty Flows = 10000 Delay = 0.100000,1.500000 s Load 130.00 Hops 1 EDF(Exact) EDF(F.Burs) EDF(C.Hull) GPS(Optim) GPS(S.Opt) RC-EDF(STS) RC-EDF(SHS) RC-EDF(LB) CBR(Peak) CBR(Mean) CALL ACCEP. 0.001300 0.078100 0.893800 0.015400 0.015600 0.054400 0.979900 0.015400 0.575300 0.000000 MEAN UTIL. 35.51919 32.17401 3.91007 34.93174 34.91458 33.58226 0.82562 34.93174 13.88361 35.56359 MEAN BW. 55054752 49869721 6060615 54144202 54117594 52052496 1279710 54144202 21519591 55123563 PEAK BW. 70419977 56501496 52712245 66161499 65978710 71060270 17361403 66161499 26462613 72392391 TEST TI. 361.291 237.000 757.207 128.472 13.249 85.085 124.697 111.068 9.232 8.339 ====================================================================================
The following example shows the results for load ranging from 100 to 150 step 10 and 1 hops
==================================================================================== Simulations of Schedulabilty Flows = 10000 Delay = 0.100000,1.500000 s ->LOAD ITERATION Hops fixed 1 ***Call acceptance prob.*** Load EDF(Exact) EDF(F.Burs) EDF(C.Hull) GPS(Optim) GPS(S.Opt) RC-EDF(STS) RC-EDF(SHS) RC-EDF(LB) CBR(Peak) CBR(Mean) 100 0.000000 0.005100 0.902400 0.000000 0.000000 0.025600 0.980600 0.000000 0.475800 0.000000 110 0.000000 0.017300 0.895100 0.000600 0.000600 0.423200 0.980100 0.000600 0.523700 0.000000 120 0.000100 0.042200 0.894400 0.003800 0.003800 0.045000 0.980000 0.003800 0.554300 0.000000 130 0.001300 0.078100 0.893800 0.015400 0.015600 0.159500 0.979900 0.015400 0.575300 0.000000 140 0.007000 0.116900 0.766000 0.035600 0.035600 0.090900 0.979800 0.035600 0.605800 0.000000 150 0.019200 0.153500 0.605400 0.066200 0.064800 0.051200 0.979500 0.066200 0.622100 0.000000 ***Mean utilisation*** Load EDF(Exact) EDF(F.Burs) EDF(C.Hull) GPS(Optim) GPS(S.Opt) RC-EDF(STS) RC-EDF(SHS) RC-EDF(LB) CBR(Peak) CBR(Mean) 100 27.41938 27.27172 2.77816 27.41938 27.41938 26.72593 0.61514 27.41938 13.45061 27.41938 110 30.13782 29.42283 3.27996 30.10957 30.10957 17.33699 0.68751 30.10957 13.56064 30.13782 120 32.84562 30.97807 3.60057 32.71322 32.71322 31.30872 0.75666 32.71322 13.70779 32.85285 130 35.51919 32.17401 3.91007 34.93174 34.91458 30.12851 0.82562 34.93174 13.88361 35.56359 140 37.89519 32.85140 9.02568 36.57668 36.56744 35.03845 0.89110 36.57668 14.03167 38.26890 150 39.95651 33.44521 16.66776 37.82055 37.83315 38.96626 0.96297 37.82055 14.32465 40.97081 ***Mean Bandwidth*** Load EDF(Exact) EDF(F.Burs) EDF(C.Hull) GPS(Optim) GPS(S.Opt) RC-EDF(STS) RC-EDF(SHS) RC-EDF(LB) CBR(Peak) CBR(Mean) 100 42500038 42271167 4306146 42500038 42500038 41425192 953470 42500038 20848442 42500038 110 46713627 45605384 5083936 46669837 46669837 26872327 1065635 46669837 21018990 46713627 120 50910713 48016005 5580889 50705486 50705486 48528522 1172823 50705486 21247081 50921919 130 55054752 49869721 6060615 54144202 54117594 46699191 1279710 54144202 21519591 55123563 140 58737540 50919676 13989802 56693847 56679526 54309597 1381211 56693847 21749088 59316801 150 61932590 51840083 25835036 58621859 58641376 60397707 1492611 58621859 22203206 63504752 ***Peak Bandwidth*** Load EDF(Exact) EDF(F.Burs) EDF(C.Hull) GPS(Optim) GPS(S.Opt) RC-EDF(STS) RC-EDF(SHS) RC-EDF(LB) CBR(Peak) CBR(Mean) 100 59625887 54924624 42395989 59625887 59625887 59092887 13417315 59625887 25994343 59625887 110 65103629 55062830 45569967 62417957 62417957 58440870 15076211 62417957 25845992 65103629 120 68861463 55479303 49015523 64127580 64127580 66177587 15963936 64127580 26696947 69539676 130 70419977 56501496 52712245 66161499 65978710 72065437 17361403 66161499 26462613 72392391 140 71467136 57036673 61201993 66491581 66491581 73578072 17361403 66491581 27638448 77010488 150 74257573 56963319 64142792 67092986 66824697 81715546 17894403 67092986 27187122 81715546 ***Peak Test time*** Load EDF(Exact) EDF(F.Burs) EDF(C.Hull) GPS(Optim) GPS(S.Opt) RC-EDF(STS) RC-EDF(SHS) RC-EDF(LB) CBR(Peak) CBR(Mean) 100 361.790 206.053 698.185 133.767 13.330 76.165 119.912 97.800 8.966 8.188 110 359.189 219.483 737.419 19.092 13.289 53.698 122.726 101.791 9.071 8.139 120 359.830 232.343 757.016 19.743 13.191 84.103 125.150 108.616 9.122 8.103 130 371.353 245.781 793.766 21.178 13.428 85.498 131.665 118.087 9.149 8.109 140 373.161 252.963 1969.087 23.730 14.174 99.727 138.007 125.733 9.452 8.357 150 379.249 263.646 3820.324 26.759 14.443 115.337 146.068 133.407 9.930 8.464 ====================================================================================
The GPS flows traces have the following rows:
Letter | Admission Test |
---|---|
C | EDF(Concave Hull) |
E | EDF(Exact) |
F | EDF(Fixed Burst) |
G | GPS |
H | RC-EDF(SHS) |
L | RC-EDF(LB) |
M | CBR(Mean) |
P | CBR(Peak) |
S | GPS(Shaped) |
T | RC-EDF(STS) |
This an example of this log trace:
Load Deadline(s) Duration(s) StartTime(s) Hops Sigma(bits) Rho(b/s) Peak(b/s) EFCGSTHLPM ------------------------------------------------------------------------------------------------------------ 1 1.433219 149.376967 296.252742 1 1077516 752414 2990800 .......... 1 0.464965 25.184210 296.556202 1 399898 861907 2990800 .X......X. 1 1.499658 67.653133 296.779293 1 1121119 748156 2990800 .XXXX..XX. 1 1.198569 118.174978 296.963937 1 928875 775703 2990800 .XXXXX.XX. 4 0.218821 124.425409 297.591995 1 443469 2030568 4679400 .XXXXX.XX. 5 0.573659 55.025999 298.692408 1 582716 1017284 1600000 .......... 1 1.102820 199.651782 298.707199 1 865697 785763 2990800 ........X. 2 0.897650 59.157814 298.757558 1 1737038 1936054 5730000 .XXXXX.XX. 4 0.224204 166.181279 298.864563 1 451564 2017918 4679400 ..XXXX.XX. 5 0.387930 52.487076 299.508573 1 446585 1153415 1600000 ..........
In this option you can generate traffic aggregates..
This option generate a traffic aggregate as a composition of several traffic workloads. The workload used in the aggregation can be defined in the list Up to 50 six classes of loads can be used.
There are 3 ways to generate the traffic aggregate:
The aggregate can be written to file with 'Generate File' in bandwidth format (*.wrk). The traffic used to generate the traffic must has 25fps.
The following graphics shows the static aggregation for soccer500 with the following configuration
Aggregate information... LoadName Loads Start(s) Duration(s) Exp? Soccer500.wrt 1 0.00 20.00 Soccer500.wrt 2 10.00 20.00 Soccer500.wrt 1 5.00 15.00
This option generate a synthetic traffic aggregate.There are 2 ways to generate the traffic aggregate:
where mi is the mean rate and ai is the amplitude of a sinusoid with period T. The random nature of the demand is further modeled by additive white noise Zi() (i.e., EZi(t)Zi(t + s)=0 for s <> 0) that has uniform distribution, that is, Zi() ~ U[ -bi ,bi ]. Finally, the sinusoids have random phase qi which can be in the range [0, 2p]
.The aggregate can be written to file with 'Generate File' in bandwidth format (*.wrk).
The following graphics shows the sinusoid aggregation for the following configuration
Mean =3000000 b/s Amplitude =1000000 b/s Period =50.000 s Phase = 0 White Noise = [-1500000.000000,1500000.000000] Duration = 100.000000 Traffic Period = 0.040000 Aggregate Peak=5968951 b/s Mean=3009568 b/s Ratio=1.983325
This option starts a network simulator. This simulator is a C++ object oriented discrete-event simulation program specifically designed to test traffic workloads and scheduling algorithms. It uses a modified version of the SMPL library. The netword is specified in a simply description language file (see appendix 3) and it can use a deterministic flow as the MPEG traces seen in former sections. The traffic is introduced in the network following the leaky or token bucket flow. It implements part of the RSVP resource reservation mechanism and two network scheduling disciplines: WFQ and PQ. The main characteristics of the simulator are:
For PQ scheduler have 6 FCFS queues, one for each class of service (PHB: per hop behaviuor) : (two levels of Expedited Forward and four for Automatic Forwarding: AF). EF1,EF2,AF1,AF2,AF3,AF4. The implementation is based in the RFC3246[17] standard.
In the WFQ algorithm there is a one ordered queue where the packets are inserted in time stamp order.
The following figure shows a sample of the simulation dialog:
This dialog has a set of buttons to control the simulation like a VCR player and information about the simulation progress. The simulation trace shows the events generated by the simulator and can be configured to different levels. In the following table is a description of the elements in the dialog
Element Description > One step button >> Fast forward.button # Stops simulation Simulation time Time of current simulation (in mseconds) H4 IterationH4 Current Iteration number and total of iterationsH4 Simulation traceH4 This part of the dialog present the simulation traces. The list box contains the trace log that is real-time updated (if configured)H4 Clear logH4 Clear the trace logH4 Trace levelH4 There are three level of tracing (from lesser to greater information): No trace, Normal, Normal + SMPL.H4 StatisticsH4 Present a windows with the current statistics. H4 Copy to fileH4 Generate the file "NetSim.log" with the contenst displayed in the trace windowH4
The information generated in each simulation is very complete: it contains information about each channel and link.
This information is dumped in file that is specified in the definition file (.net). The following table shows the information generated in the simulations (the information generated can be configured using the @SIM_INFO variable)
Section Description Variables Shows the values of the variables used in the simulations Channels For each channel shows the following information: Channel The channel number Pkt Snd The total number of packets send Pkt Rcv The total Number of packets received Tmean Packet Mean time transmission (in mseconds) Tmax Packet Maximal time transmission (in mseconds) Tmin Packet Minimal time transmission (in mseconds) Set-up time Time for channel establishment (in mseconds) Set-up time Bandwith reserved in the nodes (in b/s) Interval The interval information can be used to know how the traffic trace is modified in the network. The interval time is equal to the load period. For each time interval the following information is presented: Interval Start end time of the interval (in mseconds). Pkt Snd Packet sent in the interval Pkt Rcv Packet received in the interval Tmean Packet Mean time transmission (in mseconds) Tmax Packet Maximal time transmission (in mseconds) Tmin Packet Minimal time transmission (in mseconds) BitsInt Bits introduced in the shaper BitsGen Bits generated to the network BitsSnd Bits sended BitsRcv Bits received Packet delay distribution The packet delay distribution can be used to know how the packets are delayed, The number of classes are defined in the @PDF_CLASSES variable. For each class the following information is presented: Interval Start end time of the interval (in mseconds) Pkt Number the packet in the class % Percentage of total %Cum Percentage cummulated Link For each link shows the following information: Link The link name Pkt The total number of packets transmitted Bits The total number of bits transmitted Utl The link utilisation Channel Info Shows the information of the channel that traverses the link. Channel Channel number. The channel numbers 9999 to 10009 are created to load the link Pkt Number of packet of the channel transmitted Tmean Packet Mean time transmission (in mseconds) Tmax Packet Maximal time transmission (in mseconds) Tmin Packet Minimal time transmission (in mseconds) MaxPktQueued Maximal number of packet queued MaxBitsQueued Maximal number of bits queued Reduced info Presents in a line a condensed information about every simulation: D Delay (in mseconds) U Utilization n Number of the channel PktSnd Total packets send in the channel PktRcv Total packets received in the channel Tmean Packet Mean time transmission (in mseconds) Tmax Packet Maximal time transmission (in mseconds) Tmin Packet Minimal time transmission (in mseconds) BW.Resv Bandwidth reservation (b/s) 3/4 ... Porcentage of packet below 3/4 of delay. For 1/2, 1/4, 1/8 and 1/16 is always obtained.
One of the problems that arises in the simulations is the one of how to load the network in order to compare schemes involving guaranteed performance connections. To solve this problem, 10 channels are created in each node with a load index that ranges from 0% (no load) to 100% (full load). The load index is the percentage of the rest of the free bandwidth of the link.
This is a sample information file
Total simulation Time = 3001040.720 *****Vars***** @DURATION = 300000 @LEAKYBUCKET = 0 @LOAD = 100 @M = 8192 @FILEOUT = .\Network1.RES @NAME = NETWORK1 @FILEOUTR = .\Network1.RR @DELAY = 10000 *****Channels***** Channel = 0 Pkt Snd = 120 Rcv = 119 Tmean = 1660.49us Tmax = 2593.00us Tmin = 334.23us Set-up time = 1375.28us BW Reservation(R)= 4110008(b/s) Time Interval(us) Pkt: Snd Rcv Tmean Tmax Tmin BitsInt. BitGen. BitsSnd. BitsRcv. [ 1375, 41375] 49 46 1637.73us 2541.12us 334.23us 47931 48000 48050 46000 [ 41375, 81375] 8 10 1657.39us 2541.67us 813.56us 7426 8000 8000 10000 [ 81375, 121375] 8 7 1390.59us 2098.55us 499.95us 7833 8000 8000 7000 [ 121375, 161375] 18 18 1840.99us 2593.00us 905.32us 19553 18000 18000 18000 [ 161375, 201375] 8 9 1678.07us 2225.29us 881.12us 7480 8000 8000 9000 [ 201375, 241375] 7 7 1585.29us 2329.68us 959.79us 7326 7000 7000 7000 [ 241375, 281375] 19 18 1686.25us 2215.30us 663.52us 19108 19000 19000 18000 [ 281375, 321375] 3 4 1566.19us 2180.16us 649.47us 6942 3000 3000 4000 Packet delay distribution Interval (us) Pkt % %Cum. [ 0, 1000] 15 12.61 12.61 [ 1000, 2000] 74 62.18 74.79 [ 2000, 3000] 30 25.21 100.00 [ 3000, 4000] 0 0.00 100.00 [ 4000, 5000] 0 0.00 100.00 [ 5000, 6000] 0 0.00 100.00 [ 6000, 7000] 0 0.00 100.00 [ 7000, 8000] 0 0.00 100.00 [ 8000, 9000] 0 0.00 100.00 [ 9000, 10000] 0 0.00 100.00 *****Links***** Link E3 Pkt = 804 Bits = 13819000 Utl = 92.09 Channel 0 Pkt = 119 Tmean = 580.39us Tmax = 1219.14us Tmin = 20.00us MaxPktQueued = 3 MaxBitsQueued = 3000 Channel 9999 Pkt = 115 Tmean = 400.23us Tmax = 419.09us Tmin = 400.00us MaxPktQueued = 1 MaxBitsQueued = 20000 Channel 10004 Pkt = 114 Tmean = 2410.42us Tmax = 2460.00us Tmin = 2400.00us MaxPktQueued = 1 MaxBitsQueued = 20000 Channel 10003 Pkt = 114 Tmean = 2010.42us Tmax = 2060.00us Tmin = 2000.00us MaxPktQueued = 1 MaxBitsQueued = 20000 Channel 10002 Pkt = 114 Tmean = 1607.26us Tmax = 1660.00us Tmin = 1600.00us MaxPktQueued = 1 MaxBitsQueued = 20000 Channel 10001 Pkt = 114 Tmean = 1204.45us Tmax = 1220.00us Tmin = 1200.00us MaxPktQueued = 1 MaxBitsQueued = 20000 Channel 10000 Pkt = 114 Tmean = 800.23us Tmax = 819.09us Tmin = 800.00us MaxPktQueued = 1 MaxBitsQueued = 20000 Link E2 Pkt = 2033 Bits = 28829000 Utl = 96.06 Channel 0 Pkt = 119 Tmean = 258.64us Tmax = 539.22us Tmin = 10.00us MaxPktQueued = 2 MaxBitsQueued = 2000 Channel 9999 Pkt = 319 Tmean = 150.00us Tmax = 150.00us Tmin = 150.00us MaxPktQueued = 1 MaxBitsQueued = 15000 Channel 10004 Pkt = 319 Tmean = 901.60us Tmax = 920.00us Tmin = 900.00us MaxPktQueued = 1 MaxBitsQueued = 15000 Channel 10003 Pkt = 319 Tmean = 751.60us Tmax = 770.00us Tmin = 750.00us MaxPktQueued = 1 MaxBitsQueued = 15000 Channel 10002 Pkt = 319 Tmean = 601.32us Tmax = 620.00us Tmin = 600.00us MaxPktQueued = 1 MaxBitsQueued = 15000 Channel 10001 Pkt = 319 Tmean = 450.66us Tmax = 460.00us Tmin = 450.00us MaxPktQueued = 1 MaxBitsQueued = 15000 Channel 10000 Pkt = 319 Tmean = 300.00us Tmax = 300.00us Tmin = 300.00us MaxPktQueued = 1 MaxBitsQueued = 15000 Link E1 Pkt = 888 Bits = 9347000 Utl = 88.99 Channel 0 Pkt = 119 Tmean = 523.22us Tmax = 1047.19us Tmin = 28.57us MaxPktQueued = 2 MaxBitsQueued = 2000 Channel 9999 Pkt = 129 Tmean = 342.86us Tmax = 342.86us Tmin = 342.86us MaxPktQueued = 1 MaxBitsQueued = 12000 Channel 10004 Pkt = 128 Tmean = 2069.22us Tmax = 2114.28us Tmin = 2057.14us MaxPktQueued = 1 MaxBitsQueued = 12000 Channel 10003 Pkt = 128 Tmean = 1726.14us Tmax = 1771.43us Tmin = 1714.29us MaxPktQueued = 1 MaxBitsQueued = 12000 Channel 10002 Pkt = 128 Tmean = 1378.58us Tmax = 1400.00us Tmin = 1371.43us MaxPktQueued = 1 MaxBitsQueued = 12000 Channel 10001 Pkt = 128 Tmean = 1031.71us Tmax = 1057.14us Tmin = 1028.57us MaxPktQueued = 1 MaxBitsQueued = 12000 Channel 10000 Pkt = 128 Tmean = 685.73us Tmax = 687.14us Tmin = 685.71us MaxPktQueued = 1 MaxBitsQueued = 12000 Link E0 Pkt = 1493 Bits = 13859000 Utl = 92.36 Channel 0 Pkt = 119 Tmean = 298.23us Tmax = 638.25us Tmin = 20.00us MaxPktQueued = 1 MaxBitsQueued = 1000 Channel 9999 Pkt = 229 Tmean = 200.11us Tmax = 217.21us Tmin = 200.00us MaxPktQueued = 1 MaxBitsQueued = 10000 Channel 10004 Pkt = 229 Tmean = 1204.39us Tmax = 1220.00us Tmin = 1200.00us MaxPktQueued = 1 MaxBitsQueued = 10000 Channel 10003 Pkt = 229 Tmean = 1004.39us Tmax = 1020.00us Tmin = 1000.00us MaxPktQueued = 1 MaxBitsQueued = 10000 Channel 10002 Pkt = 229 Tmean = 803.25us Tmax = 820.00us Tmin = 800.00us MaxPktQueued = 1 MaxBitsQueued = 10000 Channel 10001 Pkt = 229 Tmean = 601.68us Tmax = 620.00us Tmin = 600.00us MaxPktQueued = 1 MaxBitsQueued = 10000 Channel 10000 Pkt = 229 Tmean = 400.11us Tmax = 417.21us Tmin = 400.00us MaxPktQueued = 1 MaxBitsQueued = 10000 ********* REDUCED INFO ************* D(us) U n PktSnd. PktRec. Tmean. Tmax. Tmin. BW.Resv 3/4 1/2 1/4 1/8 1/16 20000 0 0 126 125 78.57 78.57 78.57 3531252 100.00 100.00 100.00 100.00 100.00 20000 25 0 126 125 169.07 418.82 78.57 3531252 100.00 100.00 100.00 100.00 100.00 20000 50 0 126 125 451.50 1154.89 78.57 3531252 100.00 100.00 100.00 100.00 100.00 20000 75 0 126 124 914.11 1778.59 78.57 3531252 100.00 100.00 100.00 100.00 76.61 20000 100 0 126 124 1603.81 2583.77 395.35 3531252 100.00 100.00 100.00 95.16 20.97
In this option are collected some functions that are in beta version or does not work well.
The following table shows the files extensions used or generated by the program.
Extension Format Description WRK bits/s Traffic trace in bandwidth format WRT bits Traffic trace in frame format (frame size in bits) WRB bytes Traffic trace in frame format (frame size in bytes) WSH bits/s Traffic shape trace in bandwidth format ACU bits Cumulated traffic ENV bits Empirical envelope RED bits/s Traffic trace of the reduced traffic. SLB bits/s Traffic trace of the leaky bucket shaper. HST table Histogram classes. BUF bits Buffer size depending on time. VPD binary Dump of the Envelope Points structure EP text Envelope Points table BFR bits s(r) function RFD table The optimal reservation for a given delay range RFB table Primary and backup reservation for a given delay range SFD table The optimal shaper leaky bucket parameters for a given delay range PLE table The piecewise linear envelope derived from the envelope points WDE table Workload definition for schedulability tests. EFT bits The envelope function depending on time OBN table Buffer optimisation table
The traffic traces files format are plain text. Each line has the frame value that can be expressed as frame size or bandwidth. RTNOU works internally as bandwidth frames but it can read different traces formats. This allows RTNOU to work with most traffic traces as the Rose's set and Berlin set.
The following example shows the traffic traces in 3 formats for the Terse_Soccer MPEG4 traffic trace of the Berlin Set
| Frame size | Frame size | Bandwidth Frame | (bytes) | (bits) | (b/s) Number | *.wrb | *.wrt | *.wrk ----------------------------------------------- 1 | 7559 | 60472 | 1511800 2 | 1865 | 14920 | 373000 3 | 2021 | 16168 | 404200 4 | 3442 | 27536 | 688400 5 | 1532 | 12256 | 306400 6 | 1853 | 14824 | 370600 7 | 2282 | 18256 | 456400 8 | 1515 | 12120 | 303000 9 | 1664 | 13312 | 332800 10 | 2216 | 17728 | 443200 11 | 1451 | 11608 | 290200 12 | 1473 | 11784 | 294600 13 | 8506 | 68048 | 1701200 14 | 1821 | 14568 | 364200 15 | 1791 | 14328 | 358200
This is the relation between the frames: WRTi = 8*WRBi; WRKi = f*WRTi (f is the frames per second of the traffic)
NOTE: Information for using known traffic traces.
This appendix describes the sintax of the network definition language used in network simulations.
The network is defined in a text file with a .NET extension. In this file we define the links, nodes and workload of the simulation using the following format:
RED ::= VAR ... LINK... TERMINAL... NODE
A line beginnig with / is assume to be a comment.
The sintax to define a variable is the following.
VAR ::= VAR_NORMAL | VAR_ITER VAR_NORMAL ::= @Name = Value VAR_ITER ::= #Name = ( Value1 Value2 ... ValueN )
where:
Field Description Name Name of the Variable Value Value assigned to a variable Value1..n Value assigned to a variable in each iteration
The variables has a value and its value is replaced in the network definition. The iterative variables can be used to define several values for a variable and permits to make consecutive simulations. (at the most, only two iterative variables can be defined). The following table shows some predefined variables that are used in the simulations:
Variable Description @DURATION Duration of the simulation in microseconds @NAME Simulation name @FILEOUT Name of the file to store the result of the simulations @LEAKYBUCKET If Leaky is 1 then the traffic is introduced in the network using a leaky bucket shaper, else the traffic is token bucket shaped @DELAY End-to-end delay. This a typical iterative variable. It is used only to generate reports @LOAD Load or utilization.This a typical iterative variable. It is used only to generate reports @PDF_CLASSES Number of classe used to obtain the probability density function of the packet delays. (default value is 10) @SIM_INFO Configure the information simulation that is generated. Is a string that indicates with information is NOT presented with a letter. (by default all information is generated). The posible values are: T:Time interval, P:PDF, C:Link channels, R:Reduced info, For example the text "TC" will not generate the time interval and Link channels information,
The variables are used in the network definition as @Variable (both types of variables: normal and iteratives). IMPORTANT: This type of variable can only holds integer values
Sample
@DURATION = 3100000 #LOAD = ( 0 25 50 75 100 ) #MTU = ( 0 1000 2000 5000 )
The sintax to define a link is the following.
ENLACE ::= L(N),( BW delay MTU M Trans [Sched]) [,( Utilisation) ]
where:
Variable Description Unit N A positive integer that identifies the link BW Link bandwidth bits/s Delay Fixed delay of the link (can be 0) microseconds MTU Minimal Transmition Unit Bits M Maximal packet size Bits Trans Type of transmission (F: Fullduplex H: Halfduplex). Do not used Bits Scheduler Link scheduler (WFQ, etc). The default option is "WFQ" Bits Utilisation Utilisation of the link. This value indicates the utilisation of the not reserved bandwidth. %
Sample:
L(0 ),(10000000 0 2000 10000 F) L(1 ),(15000000 50 1000 10000 F)
The sintax to define a sender or receiver node (a terminal node) is the following.
SENDER ::= T(ip_addr), (link) [ { destino_ip : channel [PHB] LOAD; … } ] LOAD ::= LOAD_VBR | LOAD_PAR | LOAD_DIF LOAD_VBR ::= dmax V R b min_pkt max_pkt p r WORKLOAD LOAD_VBO ::= dmax P min_pkt max_pkt WORKLOAD LOAD_DIF ::= PHB min_pkt max_pkt WORKLOAD WORKLOAD ::= Tload Frames { ( v1, v2,.... vn )| $FileIn }
The traffic definition set the type of transmission. It can be an IntServ approach (the reservation is the same in all the nodes along the path) and in a DiffServ approach, the reservation is specified in the nodes. For IntServ traffic, it can be defined with variable rate and fixed reservation (LOAD_VBR) or variable rate with reservation obtained using the optimal method described in [1] LOAD_VBO. This diffserv traffic is specified defining a PHP and the workload. The workload can be introduced in the definition as a series of values or can be readed from a file. The following table describe each element:
Field Description Unit ip_addr IP address of the terminal node b.b.b link The number of link connected to this terminal ip_dest the destination IP address of the channel b.b.b channel Channel identification (Positive integer number) Dmax Maximal End-to-end delay microseconds PHB Per hop behaviour: class of service in DiffServ. There are two clases for Expedit Forwarding (EF) and four for Assured Forwarding (AF) EF1,EF2,AF1,AF2,AF3,AF4 R Bandwidth reservation in the node for the channel Bits/s b Traffic specification. Bucket depth. Bits min_pkt Size of the minimal packet of the channel. Bits max_pkt Size of the maximal packet of the channel. Bits p Traffic specification. Peak rate. Bits/s r Traffic specification. Drain rate. Bits/s Tload Period of variable load . microseconds Frames Number of frames of the workload. vi Transmission rate in period i. bits/s $FileIn Workload file in bandwidth format
Sample:
T(1.1.1),( 0) { 2.1.1: 2 V 500000 1500000 20 10000 1000 1000000 360000 100000 31 ( 200000 100000 200000 0 0 100000 300000 200000 300000 200000 100000 200000 0 200000 100000 300000 400000 700000 400000 300000 500000 600000 500000 600000 800000 1000000 800000 600000 400000 500000 200000) ; 2.1.1: 3 P 1000000 1000 1000 40000 1500 $.\lambs.wrk }
The sintax to define a node is the following.
NODE ::= N(ip_addr), (link … ) ROUTE_TABLE ROUTE_TABLE ::= { ip_mask: output_link; … }
where:
Field Description Unit ip_addr IP address of the node b.b.b link The number of links connected to this sender ip_mask IP mask to router. * stands for all values. output_link Output link associated with the mask.
Sample:
N(1.1),(0 1) { 2.1.* : 1; 1.1.* : 0 } N(1.2),(1 2) { 2.1.* : 2; 1.1.* : 1 }
The following sample network has 3 nodes and two sender and two receivers. The first sender has two flows: one of CBR type and the other the SOCCER traffic traffic. The other sender has only one flow.
// SAMPLE NETWORK // // T(1,1,2) // ---- // L4 // ---- // T(1,1,1)----L0----N(1,1)----L1----N(1,2)----L2----N(1,3)----L3----T(2,1,1) // ---- // L5 // ---- // T(2,1,2) /*********** /* V A R S * /*********** @NAME = 002VBR100 @DURATION = 4000000 @M = 8192 #DELAY = (100000 50000 25000 20000 10000) #LOAD = ( 0 50 100) @FILEOUT = ".\soccer1.RES" @LEAKYBUCKET = 0 /**************** /* L I N K S * /**************** L(0 ),(50000000 0 10000 @M F),(@LOAD ) L(1 ),(35000000 0 12000 @M F),(@LOAD ) L(2 ),(100000000 0 15000 @M F),(@LOAD ) L(3 ),(50000000 0 20000 @M F),(@LOAD ) L(4 ),(50000000 0 10000 @M F),(@LOAD ) L(5 ),(35000000 0 12000 @M F),(@LOAD ) /*********************** /* T E R M I N A L * /*********************** T(1.1.1),( 0) { 2.1.1: 0 P @DELAY 1000 @M 40000 1500 $.\soccer.wrk; 2.1.2: 1 C 1000000 1650000 500000 750 4500 500 3000000 } T(2.1.1),( 3) T(1.1.2),( 4) { 2.1.1: 2 C 500000 5000000 250000 5000 5000 1000 3000000 } T(2.1.2),( 5) /************* /* N O D E S * /************* N(1.1),(0 1) { 2.1.* : 1; 1.1.* : 0 } N(1.2),(1 2 4) { 2.1.* : 2; 1.1.1 : 1 1.1.2 : 4 } N(1.3),(2 3 5) { 2.1.1 : 3; 2.1.2 : 5 1.1.* : 2; }
The following table show the error codes and description that can be displayed when a the network file is not correct.
Code Description 1 I/O file error %filename 2 Token error in line %u 3 Sintax error in line %u 4 Cannot create a terminal in line %u 6 Link does not exist in line %u 7 Maximal number of link for a node exceeded in line %u 8 Link error in line %u 9 Workload definition error in line %u 10 The table of routes cannot be generated in line %u 11 Variable does not exits in line %u 13 Only two iterative variables can be declared. Line %u 14 Cannot read the workload file in line %u
This appendix describes the history of RTNOU and the main characteristics of the different versions.
Version Date Description 1.0 15-Oct-1999 Basic version. The name was RTNetSim (Real Time Network Simulator).
- It had only a first version of the network simulator.
- The application interface was a simple dialog
- Compiled in Visual C++ 4.2
2.0 02-May-2000 This version included the library of optimisation function.
- The application interface was MDI. It had menu and toolbar
- Included the dialogs to work with trace loads, obtain the optimal reservation, envelope points.
3.0 15-May-2001 This a revised version of 2.0, that included the algorithms presented in my Phd.
- The dialog and menus had been translated to english
- Included a simple help in the dialogs.
- The functions were separated in a single file (The RTNOULib)
4.0 02-Aug-2002 Full revision of the program in order to put it on the web
- Compiled in Visual C++ 5.0
- Includes an html help, that is linked with program (using F1).
- Includes the schedubility simulation
4.1 01-Nov-2002 Include the Network simulator as a option in the menu
- The network definition language is in english language.
- Some corrections of known bugs
4.2 01-Mar-2003 New functionalities:
- Traffic aggregation generation
- Diffserv EF PHB delay equations and optimisation
4.3 1-Jun-2003 Some minor corrections:
[1] E. Hernandez-Orallo and J. Vila-Carbo, "A Fast Method to Optimise Network
Resources for Video-on-Demand Transmission" Euromicro Conference, 2000. Proceedings of the 26th 1, 440-447 vol. 1
[2] E. Hernandez-Orallo and J. Vila-Carbo, "A New Approach to Optimise Bandwidth
Reservation for Real-Time Video Transmission with Deterministic Guarantees"
In Real-Time Imaging, vol 9/1 pp 11-26, Feb. 2003
[3] E. Hernandez-Orallo and J. Vila-Carbo, "An Optimal Method for Allocating Buffer
and Bandwidth for MPEG Traffic in a Network Node" in Proceedings of Euromicro'2001. 354-361, 2001
[4] E. Hernandez, J. Vila, S. Sáez and Silvia Terrasa
"Optimal Traffic Shaping with Deterministic Guarantees using GPS scheduling"
Joint International Workshop on Interactive Distributed Multimedia Systems/
Protocols for Multimedia Systems (IDMS/PROMS'2002). Coimbra, Portugal, Nov. 2002.
[5] E Hernandez-Orallo, J Vila-Carbó. "In advance activation of backup channels for real-time transmission", Dependable Systems and Networks, 2004 International Conference on, 555-560
[6] A.K.Parekh and R.G.Gallager,"A generalized
processor sharing approach to flow control in integrated services networks: The
single node case", IEEE/ACM Trans. Networking, vol.1, nº3, pp.344-357,Jun. 1993.
[7] A.K.Parekh and R.G.Gallager, "A generalized processor sharing
approach to flow control in integrated services networks: The multiple node
case", IEEE/ACM Trans. Networking, vol.2, nº2, pp.137-150, Apr. 1994.
[8] A.R. Reibman and A.W.Berger "Traffic Descriptors for VBR Video
Teleconferencing Over ATM Networks". IEEE/ACM Transaction On Networking. Vol 3,
Nº 3, June 1995 pp. 329-339.
[9] F.L. Presti, Z.L. Zhang, J. Kurose, and D. Towsley
"Source Time Scale and Optimal Buffer/Bandwidth Trade-off for
Heterogeneous Regulated Traffic in a Network Node" IEEE
Transactions , Aug. 1999
[10] J.Liebeherr, D. Wrege and D. Ferrari.
"Exact Admission Control for Networks with Bounded Delay Services". IEEE/ACM
Transactions on Networking, December 1996
[11] V. Firoiu, J. Kurose, and D. Towsley. "Efficient admission control of piece-wise linear traffic
envelopes at EDF schedulers",IEEE/ACM Transactions on Networking, 6(5):558–570,
October 1998.
[12] V. Sivaraman, F. Chiussi, M. Gerla,"Traffic Shaping for
End-to-End Delay Guarantees with EDF Scheduling", In proceedings of IWQoS'00.
[13] J. Liebeherr and D.E. Wrege. "Traffic Characterization Algorithms
for VBR Video in Multimedia Networks". In ACM/Springer Multimedia
Systems Journal. Vol. 6, Nº 4, July 1998.
[14] E. Wrege, E.W. Knightly, H. Zhang and J. Liebeherr, "Deterministic
Delay Bounds for VBR Video in Packet-Switching Networks: Fundamental Limits
and Practical Tradeoffs". IEEE/ACM Transactions on Networking, 4(3):352-362, June 1996.
[15] P. Pancha and M. El Zarki. "Leaky Bucket Access Control for VBR
MPEG Video. In Proc. INFOCOM’95, pages 796-803, April 1995.
[16] E. Hernández and J. Vila . "Evaluation of a new resource reservation
scheme for MPEG transmission in highly available real-time channels". 5th IFIP TC6
International Simposium. Interworking’2000. Bergen, Norway, Oct. 2000.
In Lecture Notes in Computer Science nº 1938. Springer-Verlag 2000, pp. 122-136
[17] B. Davie et al . "An Expedited Forwarding PHB (Per-Hop Behavior)" RFC3246.
[18] A, Charny et al. " Supplemental Information for the New Definition of the
EF PHB (Expedited Forwarding Per-Hop Behavior)". RFC 3247,
[19] Huirong Fu and Edward W. Knightly, "Aggregation and Scalable QoS: A Performance
Study", Proc. Of IWQoS, LNCS 2092, Jun. 2001