From 557bf3f8972477c7e7d1c1fffd116da11316a8b3 Mon Sep 17 00:00:00 2001
From: Borja Sotomayor Inadequate lockingsendall function that you can use to ensure that send() sends all the data you want it to send. You would still need to update this sendall function to lock/unlock the socket’s lock.
Warning
-This page has not yet been updated for Spring 2024.
-Before you get started, make sure you’ve read through the Projects - Getting Started page.
Writing the “packet arrival handler” (i.e., how TCP reacts when a packet arrives) is actually -pretty simple: you just have to translate pages 64-75 of the RFC into code. A common pitfall +
Writing the “packet arrival handler” (i.e., how TCP reacts when a packet arrives) is, in a sense, +somewhat straightforward: you just have to “translate” pages 64-75 of the RFC into code. A common pitfall is to write this handler as a gigantic if-else statement (with each branch corresponding to a TCP state) where you implement your interpretation of what should happen in each state when a packet arrives. Pages 64-75 methodically describe how to process a packet. Although some @@ -266,7 +262,7 @@
Achieving a perfect implementation that can pass all the tests under every possible sequencing of events is very challenging. It is very likely that many of you will end up passing nearly -all the tests (and certainly enough to get an E score on Completeness), with a few stubborn +all the tests (and certainly enough to get a Satisfactory score on Completeness), with a few stubborn tests that sometimes pass but sometimes don’t. More often than not, this is due to bugs that are very hard to track down, because they only manifest themselves under a specific ordering of events, and which typically require a very deep debugging session diff --git a/projects/project3.html b/projects/project3.html index e2f3e5c..d85800b 100644 --- a/projects/project3.html +++ b/projects/project3.html @@ -8,7 +8,7 @@