I have been reading the book "High Performance Browser Networking" by Ilya Grigorik about the slow-start algorithm, which is used for congestion avoidance. While I do understand its concepts, there were these phrases that confused me
How does the phrase network segment have anything to do with the window size? I can't get the fact that the book mentioned "upgrade from sending 1 segment to 4 segments"
"1 network segment" refers to the same amount of data as maximum segment size MSS - the maximum size you can send in an unfragmented IP packet (with a payload size of the maximum transmission unit MTU).
Accordingly, the initial window size was 1*MSS, then 4*MSS and now 10*MSS.
TCP PDUs (Protocol Data Units) are called segments because TCP is a stream protocol where the application sends data to TCP, and TCP segments the data into chunks called segments to send over the network.
TCP is a transport protocol that sends segment to the network protocol that encapsulates the segments into packets to send to the data-link protocol that encapsulates the packets into frames. The reverse happens on the receiving end, where the data-link protocol strips off the frame, sending the frame payload (packet) to the network protocol that strips off the packet and sends the payload (segment) to TCP. TCP only knows about segments, and knows or cares nothing about packets and frames. TCP will strip off the segment from the data to pass the data to the application.