第五章
5- 09端口的作用是什么?为什么端口要划分为三种?
答:端口的作用是对TCP/IP体系的应用进程进行统一的标志, 使运行不同操作系统的计算机的应用进程能够互相通信。熟知端口,数值-般为0~1023,标记常规的服务进程;登记端口号,数值为1024-49151,标记没有熟知端口号的非常规的服务进程; 客户端使用的端口号,数值为49152-65535,在客户进程运行时动态选择。
5-13 一个UDP用户数据的数据字段为8192字节。在数据链路层要使用以太网来传送。试问应当划分为几个IP数据报片?说明每一个IP数据报字段长度和片偏移字段的值。
答: 数据报总长度=8192+8(UDP首部)=8200字节
以太网传送,IP层最大传送单元MTU=1500,因为IP首部为20字节,所以数据部分占了1480字节,则:
8200/1480=5......800,所以划分为6个IP数据报片,前五个数据字段长度为1480字节,最后一个数据字段长度为800字节。
第一个偏移量的值为0,长度为1480;
第二个偏移量的值为1480/8=185,因为片偏移以8个字节为偏移单位,长度为1480;
第三个偏移量的值为1480*2/8=370,长度为1480;
第四个偏移量的值为1480*3/8=555,长度为1480;
第五个偏移量的值为1480*4/8=740,长度为1480;
第六个偏移量的值为1480*5/8=925,长度为800.
5-18假定在运输层使用停止等待协议。发送发在发送报文段MO后再设定的时间内未收到确认,于是重传M0,但M0又迟迟不能到达接收方。不久,发送方收到了迟到的对M0的确认,于是发送下一个报文段M1,不久就收到了对M1的确认。接着发送方发送新的报文段M0,但这个新的M0在传送过程中丢失了。正巧,一开始就滞留在网络中的M0现在到达接收方。接收方无法分辨M0是旧的。于是收下M0,并发送确认。显然,接收方后来收到的M0是重复的,协议失败了。试画出类似于图5-9(p213)所示的双方交换报文段的过程。
5-24一个 TCP连接下面使用256kb/s的链路,其端到端时延为128ms。经测试,发现吞吐量只有120kb/s。试问发送窗口w是多少? (提示: 可以有两种答案,取决于接收等发出确认的时机)。
解:来回路程的时延等于256ms(=128msx2).设窗口值为X(注意:以字节为单位),假定一次最大发送量等于窗口值,且发射时间等于256ms,那么,每发送一次都得停下来期待再次得到下一窗口的确认,以得到新的发送许可.这样,发射时间等于停止等待应答的时间结果,测到的平均吞吐率就等于发送速率的一半,即
8X(bit)÷(256×1000)=256x0.001X=8192所以,窗口值为8192.
{总时间T=发送时延(x÷256kb/s)+往返时延(256ms);X/T=吞吐量}
5-30设TCP使用的最大窗口为65535字节,而传输信道不产生差错,带宽也不受限制。若报文段的平均往返时延为20ms,问所能得到的最大吞吐量是多少?
答:在发送时延可忽略的情况下,最大数据率=最大窗口*8/平均往返时间=26.2Mb/s.
5-37在TCP的拥塞控制中,什么是慢开始、拥塞避免、快重传和快恢复算法?这里每一 种算法各起什么作用?“乘法减小”和“加法增大” 各用在什么情况下?
答:慢开始:在主机刚刚开始发送报文段时可先将拥塞窗口cwnd设置为一个最大报文段
MSS的数值。在每收到一一个对新的报文段的确认后,将拥塞窗口增加至多一个 MSS的数值。用这样的方法逐步增大发送端的拥塞窗口cwnd,可以分组注入到网络的速率更加合理。
拥塞避免: 当拥塞窗口值大于慢开始门限时,停止使用慢开始算法而改用拥塞避免算法。拥塞避免算法使发送的拥塞窗口每经过一个往返时延RTT就增加一个 MSS的大小。
快重传算法规定:发送端只要一连收到 三个重复的ACK即可断定有分组丢失了,就应该立即重传丢手的报文段而不必继续等待为该报文段设置的重传计时器的超时。
快恢复算法:当发送端收到连续三个重复的ACK时,就重新设置慢开始门限shresh 与慢开始不同之处是拥塞窗口cwnd不是设置为1,而是设置为ssthresh若收到的重复的AVK为n个(n>3), 则将cwnd设置为ssthresh若发送窗口值还容许发送报文段,就按拥塞避免算法继续发送报文段。若收到了确认新的报文段的ACK,就将cwnd缩小到stresh
乘法减小:是指不论在慢开始阶段还是拥塞避免阶段,只要出现一次超时(即出现一次网络拥塞), 就把慢开始门限值sstresh 设置为当前的拥塞窗口值乘以0.5。 当网络频繁出现拥塞时,shresh 值就下降得很快,以大大减少注入到网络中的分组数。
加法增大:是指执行拥塞避免算法后,在收到对所有报文段的确认后(即经过一一个往返时间),就把拥塞窗口ewnd增加一个MSS大小,使拥塞窗口缓慢增大,以防止网
络过早出现拥塞.
5-39TCP的拥塞窗口cwnd大小与传输轮次n的关系如下所示(p247)
(1)试画出如图5-25所示的拥塞窗口与传输轮次的关系曲线。
(2)指明TCP工作在慢开始阶段的时间间隔。
(3)指明TCP工作在拥塞避免阶段的时间间隔。
(4)在第16轮次和第22轮次之后发送方是通过收到三个重复的确认还是通过超市检测到丢失了报文段?
(5)在第1轮次,第18轮次和第24轮次发送时,门限sthresh分别被设置为多大?
(6)在第几轮次发送出第70个报文段?
(7)假定在第26轮次之后收到了三个重复的确认,因而检测出了报文段的丢失,那么拥塞窗口cwnd和门限shresh应设置为多大?
答: (1)拥塞窗口与传输轮次的关系曲线如图所示
(2)慢开始时间间隔: [1, 6]和[23, 26]
(3) 拥塞避免时间间隔: [6, 16]和[17, 22]
(4)在第16 轮次之后发送方通过收到三个重复的确认检测到丢失的报文段。在第22轮次之后发送方是通过超时检测到丢失的报文段。
(5)在第 1轮次发送时,门限ssthresh被设置为32,在第18轮次发送时,门限ssthresh被设置为发生拥塞时的一半,即21。在第24轮次发送时,门限ssthresh是第18轮次发送时设置的21
(6)第70报文段在第7轮次发送出。
(7)拥塞窗口cwnd和门限ssthresh应设置为8的一半,即4。
5- 41用 TCP传送512字节的数据。设窗口为100字节,而TCP报文段每次也是传送100字节的数据。再设发送端和接收端的起始序号分别选为100和200,试画出类似于图5-28的工作示意图。从连接建立阶段到连按释放都要画上。.(p238240)
5-46试用具体例子说明为什么在运输连接建立时要使用三次握手。说明如不这样做可能会出现什么情况。
答: 3次握手完成两个重要的功能,既要双方做好发送数据的准备工作(双方都知道彼此已准备好),也要允许双方就初始序列号进行协商,这个序列号在握手过程中被发送和确认。假定B给A发送一个连接请求分组,A收到了这个分组,并发送了确认应答分组。按照两次握手的协定,A认为连接已经成功地建立了,可以开始发送数据分组。可是,B在A的应答分组在传输中被丢失的情况下,将不知道A是否已准备好,不知道A建议什么样的序列号,B甚至怀疑A是否收到自己的连接请求分组,在这种情况下,B认为连接还未建立成功,将忽略A发来的任何数据分组,只等待连接确认应答分组。而 A发出的分组超时后,重复发送同样的分组。这样就形成了死锁。
第六章
6-02域名系统的主要功能是什么?域名系统中的本地域名服务器、根域名服务器、顶级域名服务器以及权限城名权服务器有何区别?
答:域名系统的主要功能:将域名解析为主机能识别的IP地址。
因特网上的城名服务器系统也是按照域名的层次来安排的。每一个域名服务器都只对域名体系中的一部分进行管辖。共有三种不同类型的域名服务器。即本地域名服务器、根域名服务器、授权域名服务器。当一个本地城名服务器不能立即回答某个主机的查询时,该本地城名服务器就以DNS客户的身份向某一一个根域名服务器查询。若根域名服务器有被查询主机的信息,就发送DNS回答报文给本地城名服务器,然后本地
域名服务器再回答发起查询的主机。但当根城名服务器没有被查询的主机的信息时,它一定知道某 个保存有被查询的主机名字映射的授权域名服务器的IP地址。通常根域名服务器用来管辖项级域。根域名服务器并不直接对顶级域下面所属的所有的城名进行转换,但它一定能够找到下面的所有二级域名的域名服务器。每一个主机都必须在授权域名服务器处注册登记。通常,一个主机的授权域名服务器就是它的主机ISP的一个域名服务器。授权域名服务器总是能够将其管辖的主机名转换为该主机的IP地址。因特网允许各个单位根据本单位的具体情况将本域名划分为若干个域名服务器管辖区。一般就在 各管辖区中设置相应的授权域名服务器。
6-03举例说明域名转换的过程。域名服务器中的高速缓存的作用是什么?
答: (1)把不方便记忆的IP地址转换为方便记忆的城名地址。
(2)作用:可大大减轻根域名服务器的负荷,使因特网上的DNS查询请求和回答报文的数量大为减少。
6-04 设想有一-天整个因特网的DNS系统都瘫痪了(这种情况不大会出现),试问还可以给朋友发送电子邮件吗?
答:不能:
6-05 文件传送协议FTP的主要工作过程是怎样的?为什么说FTP是带外传送控制信息?主进程和从属进程各起什么作用?
答: (1) FTP使用客户服务器方式。一个 FTP服务器进程可同时为多个客户进程提供服务。FIP的服务器进程由两大部分组成: 一个主进程,负责接受新的请求:另外有若干个从属进程,负责处理单个请求。
主进程的工作步骤:
1、打开熟知端口(端口号为21), 使客户进程能够连接上.
2、等待客户进程发出连接请求。
3、启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。
6-13 浏览器同时打开多个TCP连接进行浏览的优缺点如何?请说明理由。
答:优点:简单明了方便。缺点:卡的时候容易死机
6-20试述电子邮件的最主要的组成部件。用户代理UA的作用是什么?没有UA行不行?
答电子邮件系统的最主要组成部件:用户代理、邮件服务器、以及电子邮件使用的协议。UA就是用户与电子邮件系统的接口。用户代理使用户能够通过-一个很友好的按口来发送和接收邮件。没有UA不行。因为并非所有的计算机都能运行邮件服务器程序。有些计算机可能没有足够的存储器来运行允许程序在后台运行的操作系统,或是可能没有足够的CPU能力来运行邮件服务器程序。更重要的是,邮件服务器程序必须不间断地运行,每天24小时都必须不间断地连接在因特网上,否则就可能使很多外面发来的邮件丢失。这样看来,让用户的PC机运行邮件服务器程序显然是很不现实的。