2). . 3.1.2. ACK SN " ", - 6000. , ACK SN = 2001 (ACK SN + -1) = 8000, . , SN=4001. ( ACK SN), , , 8001. () . , - . . . . , , , "" , . , TCP . , , , , , - . 24. TCP koormuse juhtimine - , IP . , , . : , ( LastByteRead , RcvWindow , etc) . . CongWin , : CongWing , RcWindow , LastByteSent LastByteAcked <= min ( Congwin, RcvWin) - . : , . : SlowStart : CongWin = 1 , CongWin++ , CongWin . 2 CongWin / 2 , Slowstart and CongWin=1 = W * MSS / RTT(B/s) W - RTT , MSS max segment size, RTT round trip time : 25. UDP user datagramm protocol , . , . , ( «»)
Selle jaoks on nt speed-matching, mis tagab selle, et saatja saadab andmeid sellise kiirusega, millise kiirusega vastuvõtja suudab neid lugeda. Et tagada flow control, sunnib TCP hoidma saatjal muutujat nimega “receive window,” mille abil on tal aimu sellest, kui palju on vastuvõtjas puhvriruumi. Kuna TCP on full-duplex, säilitavad mõlemal pool ühendust olevad saatjad selge vastuvõtuakna (receive window-i). Ütleme, et saatja A saadab midagi vastuvõtjale B (ehk A->B) LastByteRead - viimane baidinumber andmejadast, mis loeti puhvrist B-rakenduse poolt. LastByteRcvd - viimane baidinumber andmejadast, mis tuli võrgust ja istub nüüd puhvris B juures. RcvWindow muutub aja jooksul ehk siis on dünaamiline (valem on pildil v kui aru ei saa, siis: RcvWindow = RcvBuffer - [LastByteRcvd - LastByteRead]). Iga kord, kui B saadab A-le midagi vastu, võib ta RcvWindow-i väärtust muuta vastavalt vajadusele.