
第5章 传输层.ppt
27页第第5章章 传输层传输层5.1 知识结构图知识结构图传输层寻址与端口号服务UDPTCP面向无连接服务面向连接服务面向无连接服务面向数据报UDP校验面向连接服务连接管理可靠传输流量控制拥塞控制三步握手四步分离面向字节流序号机制累积确认滑动窗口发送窗口取接收窗口的最小值慢开始拥塞避免快恢复快重传5.2 大纲要点归纳大纲要点归纳1.传输层端口 用一个16位端口号进行标志端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程在因特网中不同计算机的相同端口号是没有联系的下图是TCP首部,掌握每个字段的含义2.TCP连接管理三次握手的报文序列四步分离机制l例1(2011年第39题) 主机甲向主机乙发送一个(SYN=1,seq=11 220)的TCP段,期望与主机乙建立TCP连接,若主机乙接受该连接请求,则主机乙向主机甲发送的正确TCP段可能是( ) A.(SYN=0,ACK=0,seq=11 221,ack=11 221) B.(SYN=1,ACK=1,seq=11 220,ack=11 220) C.(SYN=1,ACK=1,seq=11 221,ack=11 221) D.(SYN=0,ACK=0,seq=11 220,ack=11 220) 答案:Cl例2(2009年第38题) 主机甲和主机乙已建立一个TCP连接,主机甲向主机乙发送了两个连续的TCP段,分别包括300字节和500字节的有效载荷,第一个段的序列号为200,主机乙正确接收到两个段后,发送给主机甲的确认序列号是( )。
A.500 B.700 C.800 D.1000 答案:D甲乙Seq=200,300字节Seq=500,500字节ACK=1000 考查考查TCPTCP的数据编号与确的数据编号与确认认 TCP是面向字节流的,其选择确认(ACK)机制是接收端对字节序号进行确认,其返回的序号是接收端下一次期望接收的序号,因此主机乙接收两个网段后返回给主机甲的确认序列号是1000,如图所示l例3(2011年第40题) 主机甲和主机乙之间已建立一个TCP连接,主机甲向主机乙发送了3个连续的TCP段,分别包含300字节,400字节和500字节的有效载荷,第3个段的序号为900若主机乙仅正确收到第1个段和第3个段,则主机乙发送给主机甲的确认序号是( ) A.300 B.500 C.1200 D.1400 答案:B甲乙Seq=200,300字节Seq=500,400字节ACK=500Seq=900,500字节 TCP段首部中的序号字段是指本报文所发送的数据第一个字节的序号。
第三个字段的序号为900,则第二个段的序号为 900-400=500,而确认号是期待接收到对方下一个报文的第一个字节的序号,现在主机乙期待接收第二个字段,其过程如图所示l例4(2013年第39题) 主机甲和主机乙之间已建立一个TCP连接,双方持续有数据传输,且数据无差错与丢失若甲收到1个来自乙的TCP段,该段的序号为1913、确认序号为2046、有效载荷为100字节,则甲立即发送给乙的TCP段的序号和确认序号分别是( ) A.2046、2012 B.2046、2013 C.2047、2012 D.2047、2013 答案:B 若甲收到1个来自乙的TCP段,该段的序号seq=1913、确认序号ack=2046、有效载荷为100字节,则甲立即发送给乙的TCP段的序号seq1=ack=2046和确认序号ack1=seq+100=2013,答案为B3.TCP的滑动窗口机制 为了提高报文段的传输速率,TCP采用大小可变的滑动窗口进行流量控制窗口大小的单位是字节发送窗口在连接建立时由双方商定,但在通信过程中,接收端可根据自己的接收缓存的大小,随时动态地调整发送端的发送窗口的上限值。
这就是接收端窗口rwnd(receiver windows),这个值被放在接收端发送的TCP报文首部的窗口字段中 同时,发送端根据其对当前网络拥塞程度的估计而确定的窗口值,叫做拥塞窗口cwnd(congestion windows)其大小与网络的带宽和时延密切相关 发送端设置的当前能够发送数据量的大小叫做发送窗口,发送窗口的上限值由下面公式确定:发送窗口的上限值=Min[cwnd,rwnd] rwnd由接收端根据其接收缓存确定,接收方用报文的窗口字段反馈其接收能力,限制发送方的发送流量发送端确定cwnd比较复杂,详细情况在慢启动和拥塞避免一节中叙述 发送窗口的左边沿对应已发送数据中被确认的最高序号+1,其右边沿对应左边沿的序号加上发送窗口的大小在数据传输的过程中,这个发送窗口不时地向右移动构成了滑动窗口窗口的两边沿的相对运动增加或减少了窗口的大小TCP可变窗口流量控制示例 4.TCP的拥塞控制lTCP/IP拥塞控制最根本的措施是源抑制(source quench)l为了避免和控制拥塞,TCP推荐使用以下技术:l慢启动(slow start);l拥塞避免(congestion avoidance);l快速重传(fast retransmission);l快速恢复(fast recovery) lTCP的拥塞控制机制是闭环控制,可以有以下途径发现拥塞:l报文段的重传定时器到时;l收到ICMP的源抑制报文。
l拥塞窗口(congestion window)l发送窗口: swnd = Min(cwnd,rwnd) l慢启动门限(slow start threshold) l当cwnd﹤ssthresh, 使用慢启动策略;l当cwnd﹥ssthresh, 使用拥塞避免策略;l当cwnd = ssthresh, 即可使用慢启动策略也可使用 拥塞避免策略 慢启动和拥塞避免拥塞控制策略示例 l慢启动 每出现一次拥塞,拥塞窗口都要降到1 MSS的起点l拥塞避免 当拥塞窗口增大到慢启动门限值之后,将其增长速率由指数增长变为加 性增长,以避免再次出现拥塞 l快速重传和快速恢复 当收到第3个重复的确认时,就认为报文丢失,发生了拥塞,因此重传报文段, 而不必等到重传定时器到时,故称快速重传下面取消慢启动而执行快速恢复, 并不把cwnd降到1,而是原来的一半lTCP Reno版本 采用了快速重传和快速恢复算法,在建立连接和超时重传时则使用慢启 动和拥塞避免 TCP Reno拥塞控制策略示例l例5(2009年第39题) 一个TCP连接总是以1KB的最大段发送TCP段,发送方有足够多的数据要发送。
当拥塞窗口为16KB时发生了超时,如果接下来的4个RTT(往返时间)时间内的TCP段的传输都是成功的,那么当第4个RTT时间内发送的所有TCP段都得到肯定应答时,拥塞窗口大小是( ) A.7KB B.8KB C.9KB D.16KB答案:C 考查考查TCPTCP的拥塞控制方法的拥塞控制方法 无论在慢开始阶段还是拥塞避免阶段,只要发送方判断网络出现拥塞(其根据就是没有按时收到确认),就要把开始门限ssthresh设置为出现拥塞时的发送方窗口值的一半(但不能小于2)Ø把拥塞窗口cwnd重新设置为1,执行慢开始算法这样做的目的就是要迅速减少主机发送到网络中的分组数,使得发生拥塞的路由器有足够时间把队列中积压的分组处理完毕Ø在发送拥塞后,慢开始门限ssthresh变为16/2=8KB,发送窗口变为1KBØ在接下来的3个RTT内,拥塞窗口执行慢开始算法,呈指数形式增加到8KB由于慢开始门限为8KB,因此转而执行拥塞避免算法,即拥塞窗口开始加法增大在第4个RTT结束后,拥塞窗口的大小为9KBl例6(2010年第39题) 主机甲和主机乙之间已建立了一个TCP连接,TCP最大段长度为1000字节。
若主机甲的当前拥塞窗口为4000字节,在主机甲向主机乙连续发送两个最大段后,成功收到主机乙发送的对第一个段的确认段,确认段中通告的接收窗口大小为2000字节,则此时主机甲还可以向主机乙发送的最大字节数是( ) A.1000 B.2000 C.3000 D.4000 答案:A 考查TCP流量控制与拥塞控制 发送方发送窗口的上限值应该取接收窗口和拥塞窗口这两个值中较小的一个,于是此时发送方的发送窗口为min{4000,2000}=2000字节,由于发送方还没有收到第二个最大段的确认,所以此时主机甲还可以向主机乙发送的最大字节数为2000-1000=1000字节5.3 难点释疑难点释疑l传输地址与网络地址的区别 传输地址(TSAP)是传输层通信的端点,网络地址(NSAP)是网络层通信的端点,TSAP、NSAP与传输实体的关系是每个TSAP上绑定一个应用进程,应用进程通过各自的TSAP调用传输层服务传输实体(传输层服务的提供者)通过本地的NSAP调用网络层服务,与远程的对等传输实体进行通信5.4 5.4 真题高频考点总结真题高频考点总结2009-2013年全国考研真题本章出题情况年份年份单选题单选题(分值)(分值)综合题综合题(分值)(分值)总分值总分值考核点考核点20092题(4分)0题4分TCP序号、拥塞控制20101题(2分)0题2分滑动窗口机制20112题(4分)0题4分TCP连接管理、可靠传输20120题1题(4分)4分TCP连接管理、序号机制20131题(2分)0题2分可靠传输序号机制 本章真题高频考点: TCP的连接管理、可靠传输、流量控制和拥塞控制。
以选择题为主,命题方式是原理的灵活应用和协议分析机制,注意TCP段和端口号的意义。












