Do we use the interface files (and signals) for project 1? My mistake - I incorrectly interpreted a comment from Professor Peterson to mean that we should use them for project 1. Go ahead and start getting familiar with them, but you'll first use them in Project 2. There's a litle in there that could be salvaged for Project 1, but you won't use them wholesale for it. What's the next reading assignment? Sections 2.6 - 2.8 Do people still use 1's complement CRC or has it all moved to 2's complement? [sic] Be careful with terminology here - the 1's complement checksum is used for the IP level. The CRC is used at the link level, and the CRC isn't 1's complement. Back to the question - once you've set up the standard, it's hard to change it. You can't gracefully transition the network easily, especially since a lot of the routers, etc., have the calculation in hardware. So, it'll be 16-bit 1's complement for the foreseeable future. Are both the CRC and the Internet checksum used at the same time? Yes. It's redundant, and for local-area networks, the CRC is generally strong enough that the IP checksum doesn't buy you anything. Some vendors used to cheat and disable IP checksum on a LAN. Isn't what I've described as 1's complement the same as "sign and magnitude representation"? I'd always heard it describe as 1's complement, but doing a google search seems to indicate that some people do call it sign-magnitude representation. I think the former is more common, however. What is it about the packet that's being lost/garbled in the data link layer in a point-to-point network? I don't think that these problems are all that common, but presumably, anything from thermal noise to gamma rays can cause bits in the packet to flip. What coding scheme does Ethernet use? Depends on the data link layer. Realize that gigabit ethernet comes in both copper (wire) and fiber varieties, so they'd be encoded differently. From what I can find, it appears that fiber gigabit uses an 8B/10B scheme adopted from another interface called FibreChannel (used for high-end disk storage). The 1000BaseT (copper Ethernet) uses a seemingly more complicated scheme called PAM-5. For gory details, see http://www.e-insite.net/ednmag/index.asp?layout=article&articleid=CA46370 The article itself is old, so ignore the info about pricing, difficulty, etc. They were problems, but they've been solved. What kind of transport-level protocol does sock_raw use? If the answer is none, that means we can make our own transport protocol, right? You can build in whatever you want, including building your IP headers, etc. Are ACKs tied to specific frames, or are they generic? I believe that even if you're doing stop-and-wait with a single outstanding frame, you need to have info in the ACK saying what it's acking. Otherwise, you could run into the situation where you send a frame, the timer goes off, you send it again, and then the ack arrives. If you send the next frame as soon as you receive an ACK, you won't know whether the second ACK you receive is for the second frame or whether it's a duplicate ACK for the duplicated first frame. Could you explain the process of calculating CRC in more detail? See section 2.4.3 of the book - I covered it lightly in lecture because it would take a long time to do in detail. What happens if the CRC itself is corrupted? You won't be able to tell that it's just the CRC corrupted, so you throw away the frame when the CRC and the data don't match. Given the possible large disparity (1500 bytes data, 4 bytes CRC), the chances of the CRC being corrupted are relatively low. What would be better than SONET if we only cared about data (no voice)? IP (Internet Protocol) tends to be simpler and is what's being used for data-only networks. As it has gotten faster, it has become more practical to use it for voice - it may not be as reliable as the phone system, but it can be a lot cheaper, and some people don't mind cheap as long as the reliability isn't too bad. Please elaborate on the construction of packets from STS-1 to STS-3(c)? I'm not sure if you're asking for more detail than 2.3.3 of the book. If so, let me know and I'll see what I can find.