Refer to the “philosophy” sections of RFC 793 to answer the following questions about TCP:
- What is the URL you used to access RFC 793?
- Described 6 ways TCP mitigates the inherently unreliable Internet Protocol
- Throughout the RFC, the authors frequently refer to the term “octet”. What is an octet?
- What is a “window”, and why do you suppose the receiving TCP defines this?
- What does it mean when the RFC states that TCP sockets are “full duplex”?
- Review section 2.8 (Data Communication), then review the introduction of RFC 896, which describes John Nagle’s algorithm. How do Nagle’s observations relate to section 2.8?
- Review section 2.9, specifically where it discusses security. This is a rather short section that addresses what today is a major consideration of TCP. Do you think the methods mentioned in this section are used today?
- How are sequence numbers used in TCP, and how does TCP ensure they are unique?
- Review the scenarios described in section 3.4 (Establishing a connection). What is the “three-way handshake”? Describe “half-open connection discovery”.
Refer to RFC 768, which describes UDP:
- What is the primary difference between UDP and TCP? Why do you think the UDP RFC is so much shorter than TCP’s?
- The RFP mentions some appropriate uses of UDP; what technologies rely on UDP today that perhaps the authors of this RFP did not foresee in 1980?
Refer to RFC 792, which describes ICMP:
- What are the primary purposes for which ICMP was designed?
- Why do you think many networks and firewalls block ICMP?
Refer to RFC 1149, which describes a standard for avian carriers for IP:
- What would you estimate is the speed of delivery using this protocol, as opposed to TCP?
- Does this protocol appear to be as reliable as TCP?
Refer to RFC 2795, which refers to IMPS:
- What are the four types of documents the author postulates could be generated using this protocol?