Skip to content

V4run14/Go-Back-N-ARQ

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go-Back-N-ARQ

This is part of CSC/ECE 573 - Internet Protocols Project 2

How to run the program

Go-Back-N (go_back_n/)

Simple transfer (remote)

  • Server: python3 server.py 7735 output.txt 0.05
  • Client: python client.py <server_ip> 7735 data_1mb.bin 4 500

Task 1 – window sweep

  • Run: python experiments/task1_remote.py --host <server_ip> --port 7735 --file data_1mb.bin --output task1_remote.csv
  • Plot: python experiments/plot_task1.py --input task1_remote.csv --output task1_plot.png

Task 2 – MSS sweep (N=64)

  • Run: python experiments/task2_remote.py --host <server_ip> --port 7735 --file data_1mb.bin --output task2_remote.csv
  • Plot: python experiments/plot_task2.py --input task2_remote.csv --output task2_plot.png

Task 3 – loss sweep (N=64, MSS=500)

  • Server (fixed p): python3 server.py 7735 output.txt 0.05
  • Server (auto-cycle): python server_task3.py 7735 output.txt --pmin 0.01 --pmax 0.10 --pstep 0.01 --per-p 5
  • Run: python experiments/task3_remote.py --host <server_ip> --port 7735 --file data_1mb.bin --output task3_remote.csv
  • Plot: python experiments/plot_task3.py --input task3_remote.csv --output task3_plot.png

Selective Repeat (selective_repeat/)

Files import the shared packet format from go_back_n.

Simple transfer (remote)

  • Server: python3 sr_server.py 7735 output.txt 0.05 4096 (use a large window for 1MB files)
  • Client: python sr_client.py <server_ip> 7735 ../go_back_n/data_1mb.bin 64 500

Task 1 – window sweep

  • Run: python experiments/sr_task1_remote.py --host <server_ip> --port 7735 --file ../go_back_n/data_1mb.bin --output sr_task1_remote.csv
  • Plot: python ../go_back_n/experiments/plot_task1.py --input sr_task1_remote.csv --output sr_task1_plot.png

Task 2 – MSS sweep (N=64)

  • Run: python experiments/sr_task2_remote.py --host <server_ip> --port 7735 --file ../go_back_n/data_1mb.bin --output sr_task2_remote.csv
  • Plot: python ../go_back_n/experiments/plot_task2.py --input sr_task2_remote.csv --output sr_task2_plot.png

Task 3 – loss sweep (N=64, MSS=500, control packets)

  • Server: python3 sr_server_task3.py 7735 output.txt --pmin 0.01 --pmax 0.10 --pstep 0.01 --per-p 5 --window 4096
  • Run: python experiments/sr_task3_remote.py --host <server_ip> --port 7735 --file ../go_back_n/data_1mb.bin --output sr_task3_remote.csv
  • Plot: python ../go_back_n/experiments/plot_task3.py --input sr_task3_remote.csv --output sr_task3_plot.png

Report The results of all the tasks can be found in IP Project 2 Doc.pdf

About

This is part of CSC/ECE 573 - Internet Protocols Project 2

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages