A发送了11个字节的数据 A的发送窗口位置不变 可用窗口 2国2☑28293@3132333435363738394041424344454647484950515253545556 已发送并 不允许发送 收到确认 已发送但未收到确认 允许发送但尚未发送 P2 P2 P3 B的接收窗口 262☑282303132333435363738394041424344454647484950515253545556 已发送确认 不允许接收 并交付主机 允许接收 接收窗口内的序号(31~50》 未按序收到 是允许接收的序号。 P3-P1=A的发送窗口( 又称为通知窗口) P2-P1=已发送但尚未收到确认的字节数 P3一P2=允许发送但尚未发送的字节数(又称为可用窗口) 运输层(1)
已发送并 不允许发送 收到确认 A 的发送窗口位置不变 允许发送但尚未发送 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 已发送但未收到确认 56 P1 P2 P3 已发送确认 不允许接收 并交付主机 B 的接收窗口 允许接收 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 未按序收到 可用窗口 A 发送了 11 个字节的数据 P3 – P1 = A 的发送窗口(又称为通知窗口) P2 – P1 = 已发送但尚未收到确认的字节数 P3 – P2 = 允许发送但尚未发送的字节数(又称为可用窗口) 接收窗口内的序号(31 ~ 50) 是允许接收的序号。 运输层(1) 7
A收到新的确认号,发送窗口向前滑动 A的发送窗口向前滑动 262☑282四3@B闰32333435363738394041424344454647484950515253545556 已发送并收到确认 已发送 允许发送但尚未发送 不允许 发送 P1 但未收到确认 P2 P3 B的接收窗口向前滑动 262☑282国30β闰B23☒3435363738394041424344454647484950515253545556 已发送确认 不允许 并交付主机 允许接收 接收 未按序收到 先存下,等待缺少的 数据的到达 运输层(1) 8
允许发送但尚未发送 A 的发送窗口向前滑动 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 已发送并收到确认 不允许 已发送 发送 但未收到确认 56 P1 P2 P3 允许接收 B 的接收窗口向前滑动 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 已发送确认 并交付主机 不允许 接收 56 未按序收到 A 收到新的确认号,发送窗口向前滑动 先存下,等待缺少的 数据的到达 运输层(1) 8
A的发送窗口内的序号都已用完, 但还没有再收到确认,必须停止发送。 A的发送窗口已满,有效窗口为零 262☑2图293@313233343536373839404幻4243444546474849505152 53 545556 已发送并收到确认 不允许 已发送但未收到确认 发送 PI P23 发送窗口内的序号都属于已发送但未被确认 运输层(1) 9
不允许 发送 已发送并收到确认 A 的发送窗口已满,有效窗口为零 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 已发送但未收到确认 56 P1 P2 P3 A 的发送窗口内的序号都已用完, 但还没有再收到确认,必须停止发送。 发送窗口内的序号都属于已发送但未被确认 运输层(1) 9
发送缓存 发送方的应用进程把字节流写入TCP的发送缓存。 发送窗口通常只是发 送缓存的一部分。 发送应用程序 TCP 发送缓存 发送窗口 已发送 最后被确认 最后发送 序号增大 的字节 的字节 运输层(1) 10
发送缓存 最后被确认 的字节 发送应用程序 发送缓存 最后发送 的字节 发送窗口 已发送 TCP 序号增大 发送方的应用进程把字节流写入 TCP 的发送缓存。 发送窗口通常只是发 送缓存的一部分。 运输层(1) 10
接收缓存 接收方的应用进程从TCP的接收缓存中读取字节流。 接收应用程序 TCP 接收缓存 下一个读取 的字节 接收窗口 已收到 下一个期望收到的 序号增大 字节(确认号) 运输层(1) 11
接收缓存 接收应用程序 已收到 接收窗口 TCP 接收缓存 下一个读取 的字节 下一个期望收到的 序号增大 字节(确认号) 接收方的应用进程从 TCP 的接收缓存中读取字节流。 运输层(1) 11