The final deadline for Project 2 is Tuesday, 12/5 at 11:59pm
Turning in Test Cases:
As has been noted on the BBoard, we will let you turn in
test cases through 12/5 in a special ``testcases'' tag in order to receive
bonus points. This is different
from the test cases you are required to turn in to demonstrate any extra
credit functionality. Your testcases tag should include a README that
documents your entire test infrastructure, as well as code, scripts, graphs,
etc. that you used to test your code (note: you do not need to submit data
files, as we will be inspecting your tests manually, not running them).
You can receive up to 15 points for having excellent test cases, but
simply having checkpoints as test cases will get you not extra points.
You need to have created your own code, and explained in the README what
the code tests.
Free late-day for Checkpoint 4: Because of staff travel that will make responding to questions slow on monday and tuesday, we are giving you a free late day for checkpoint 4. This means you can turn it in by 11:59 on Wednesday with no penalty. However, we want to stress that to be ''on target'' to finish, you should be WELL past checkpoint 4 functionality by tuesday.
Checkpoint 4 Script: The checkpoint4 script is now available. The requirements and grading is very different from past checkpoints, so please view the README carefully. Note: unlike past checkpoints, a pass of the checkpoint script does not guarantee full points.
Please remember that the goal of releasing checkpoint scripts is as a final check of your code AFTER you have tested it yourself. Please be confident your code is working before emailing us with problems using the checkpoint script. If you do have problems with the script, please send Dan email with the output of the script run when you modify the script so that the ref_peer prints full debug information. Thanks!
Change to Checkpoint 4 Requirements: To try and simplify your your development process, we have decided to change the requirements for checkpoint 4 (due 11/28). Instead of implementing slow start and handling multiple downloads, we will instead test out a simple version of congestion avoidance. See the updated project2.pdf for details.
Packet Source IP: If you are having trouble because the source address you're getting from spiffy is '0.0.0.0' not '127.0.0.1', here's a simple change you can make to your code.
comment out this line: | myaddr.sin_addr.s_addr = INADDR_ANY; |
and add this line: | inet_aton("127.0.0.1", (struct in_addr *)&myaddr.sin_addr.s_addr); |
If this causes problems, make sure you are including the correct header files to use inet_aton.
Spiffy Bugs: With your help, we found some bugs in the spiffy.c file. While you code most likely works without the fix, you should download the new spiffy.c just to avoid future issues.