This page contains the code etc for the new version of the simulation of a Go-Back-n protocol Ms Kanigiluppai has written. Many readers will profit from first reading the ``Introduction'' and ``How to run on afs'' files in the page for the old version of the simulation. The main difference with the old version is that the new version uses commandline input. Many readers will profit from first reading the ``Introduction'' and ``How to run on afs'' files in the page for the old simulation (which did not have commandline input). In other words: values of (int, length of simulation: number of frames simulated), (in sec. float. (or double ?)) (int, in frames) (int, in bits. This is the data part only. The header is 320 bits and is added automatically) (Time-out interval. If at time t node 1 hands a dataframe to buffer 1, it sets a time-out event for time t + Time_out ) (in bits/sec. type?) (double. between zero and one) (double. between zero and one) (sum must also be between zero and one: Prob.OK + Prob.lost + Prob.damaged = 1.00 ). (seed for the random number generator. Must be positive integer, at least one, at most ??? ) (To be filled in later). Are given on the commandline. You compile the the program ``once and for all'', see the README file. Give the excutable some name. Say simexec2 (or whatever). (Make sure it is executable!). Then, to run the simulation you type simexec2 ... where ... are the actual values you want. The size of ACK frames is given in constants.h , at 100 Bytes (800 bits). This includes the header (or wrapper) of the ACK frame. The sizes of the data frame header (320 bits) and ACK Frame (800 bits) are given in constants.h . If you want to change those values you must edit constants.h , and recompile. If you keep the seed_value constant you have exactly the same sequence of (pseudo)-random numbers in every run. This is handy if you make changes in the code: You are sure all changes are due to changes you made, not due to ``an accident'' in the (pseudo)-random number generator. If you change the seed_value you get a different sequence of (pseudo)-random numbers. Conceptually a new ``independent'' sequence. If you want the output to go to a file called outputx.25 (say this is the 25-th time you run the simulation in the x-series) it is simexec2 ... > outputx.25 See the README file on this page for an example. This is the same README file you will get when unzipping the .zip file. For help with running on an afs machine, see the other simulation page on this website. (the ``Old simulation'' page).