Chapter 4. Web Protocols
In the previous chapter, you used TCP/IP to send and receive a sequence of bytes representing a text. This idea is the base of the Hypertext Transfer Protocol (HTTP), the most widely used protocol on the web today.
This chapter describes HTTP and its purpose and evolution.
You’ll programmatically explore the protocol variations, using network analysis tools like netcat, tcpdump, iperf, curl, nghttp2, tshark, or Wireshark.
We believe that the chronological introduction of the HTTP versions allows for a more gentle explanation of HTTP features, which otherwise could be overwhelming.
Demonstrations of HTTP and the related QUIC protocol at the network packet level will prepare you for the higher-level topics of network-based APIs, with a focus on APIs that use HTTP.
The discussion in this chapter focuses on the features of HTTP from the perspective of web API clients, including web browsers.
What Is Hypertext?
The term hypertext was introduced by Ted Holm Nelson in 1965:1
Let me introduce the word hypertext to mean a body of written or pictorial material interconnected in such a complex way that it could not conveniently be presented or represented on paper.
Ted Holm Nelson, 1965
However, this isn’t the only meaning of hypertext.2 Today’s web focuses more on the information-linking aspect of hypertext than on the information representation.3
Note
Hypermedia is a term similar to hypertext, indicating it isn’t limited to text only.
To understand hypertext, ...