1、计算机网络原理 第六章一、填空题1、传输层利用 _层提供的服务,向 _ 层提供服务。2、因特网传输地址由 IP 地址和主机 _ 组成。3、传输层是 OSI 七层模型中负责_ 的最高层,有是面向 _的低三层和面向_的高三层之间的中三层。4、传输控制协议 TCP 是用于在不可靠的因特网上提供 _的 、_的字节流通信协议。5、TCP 地址是节点的某个应用的地址,这种应用在计算机内部是进程。多个进程的数据传递通过不同的_完成。6、TCP 段结构中端口地址是_比特。7、端口小于_为常用端口,_一般都是通过常用端口来识别的。8、任何 TCP/IP 实现所提供的服务都用 _之间的端口,这是端口号由 IANA
2、 来管理。9、超文本传送协议 HTTP 使用的端口 _。TCP 端口 21 表示_。10、TCP 传输控制协议是面向连接的控制协议,连接建议采用_次握手协议。11、因为是双工通信,TCP 连接释放采用_释放方式。12、TCP 协议用于控制数据段是否需要重传的依据是设立_。13、因特网中,对拥塞的控制大部分是有 TCP 来完成,对拥塞控制的最有效的方法是 _。14、使用 UDP 协议传输数据会出现分组丢失、重复、乱序 _,需要负责传输可靠性方面的工作。15、TCP 使用的流量控制协议是可变大小的 _协议。答案:1. 网络 应用2. 端口号3. 数据通信 网络通信 信息处理4. 可靠 端到端5.
3、端口6. 167. 256 服务器8. 110239. 80 文本传输协议 FTP10. 三11 . 对称12. 重发定时器13. 降低数据传输速率14. 应用程序15. 滑动窗口简答题1、传输协议的要素有哪些?2、TCP 提供什么样的服务?3、TCP 与 UDP 对于端口的使用有什么规定?4、TCP 的重传策略是什么?5、UDP 提供什么样的服务,它的应用场合是什么样的?6、简述 TCP 与 UDP 的区别。答案:1. 答:寻址。当一个应用程序希望与另一个应用程序传输数据时,必须指明是与哪个应用程序相连。寻址的方法一般采用定义传输地址。因特网传输地址由 IP 地址和主机端口号组成。建立连接。
4、在实际的网络应用中,采用三次握手的算法,并增加某些条件以保证建立起可的连接。增加的条件是:所发送的报文都要有递增的序列号;对每个报文设立一个 计时器,设定一个最大的时延,对那些超过最大时延没有收到确认信息的报文就认为已经丢失,需要重传。释放连接。也采用三次握手地算法。2. 答:TCP 协议提供的是可靠的、面向连接的传输控制协议,即在传输数据前要先建立逻辑连接,然后再传输数据,最后释放连接 3 个过程。TCP 提供端到端、全双工通信;采用字节流方式,如果字节流太长,将其分段;提供紧急数据传输功能。3. 答:TCP 与 UDP 段结构中端口地址都是 16 比特,可以有在 065535 范围内的端口
5、号。对于这 65536 个端口号有以下的使用规格:端口号小于 256 的定义为常用端口,服务器一般都是通过常用的端口号来识别的。任何TCP/IP 实现所提供的服务都用 11023 之间的端口号,是由 IANA 来管理的;客户端只需保证该端口在本机上是唯一的就可以了。客户端口号因存在时间很短暂又称临时端口号;大多数 TCP/IP 实现给临时端口号分配 10245000 之间的端口号。大于 5000 的端口号是为其他服务器预留的。4. 答:TCP 协议用于控制数据段是否需要重传的依据是设立重发定时器。在发送一个数据段的同时启动一个重发定时器,如果在定时器超时前收到确认,就关闭该定时器,如果定时器超
6、时前没有收到确认,则重传该数据段。这种重传策略的关键是对定时器初值的设定。目前采用较多的算法是 Jacobson 于 1988 年提出的一种不断调整超时时间间隔的动态算法。5、答:UDP 提供的服务是不可靠的、无连接的服务。UDP 适用于无须应答并且通常一次只传送少量数据的情况。由于 UDP 协议在数据传输过程中无须建立逻辑连接,对数据包也不进行检查,因此 UDP 协议具有较好的实时性、效率性。在有些情况下,包括视频电话会议系统在内的众多客户/服务器模式的网络应用都需要使用 UDP 协议。6. 答:TCP 是面向连接的传输控制协议,而 UDP 提供了无连接的数据报服务。TCP 具有高可靠性,确
7、保传输数据的正确性,不出现丢失或乱序;UDP 在传输数据前不建立连接,不对数据报进行检查与修改,无须待对方的应答,所以会出现分组、重复、乱序,应用程序需要负责传输可靠性方面的所有工作。也正因为以上的特征,UDP 具有较好的实时性,工作效率较 TCP 协议要。UDP 段结构比 TCP 的段结构简单,因此网络开销也小。应用题画图说明 TCP 采用三次握手协议建立连接的过程。答案:(本步骤 3 分)TCP 连接的建立采用三次握手协议。三次握手的具体过程是:第一方向另一方发送连接请求段,另一方回应对连接请求的确认段,第一方再发送对对方的确认段的确认。这个过程可以用下图表示:(画图 5 分)请求建立连接
8、段SYN=1,本段序列号=XT1T3T2应答确认段SYN=1,应答号=X+1本段序列号=Y发送 TCP 数据段从序列号 Y+1,应答号X+1 开始对确认段确认的段应答号=Y+1发送 TCP 数据段从序列号 X+1,应答号 Y+1 开始(本步骤 2 分)图中,SYN 为请求建立的标志,三次握手的具体过程如下:在 T1 时刻,A 向 B 发送请求建立连接段,序列号为 X。在 T2 时刻,B 发送应答 A 的 X 序列号的请求建立连接的段,该应答段的序列号为 Y。在 T3 时刻,A 发送对 B 的应答段的应答,应答号为 Y+1,表明应答号为 Y 的段已接受。至此,连接建立成功。X.25 协议 CCI
9、TT 提出的 X.25 协议描述了主机(DTE)与分组交换网(PSN)之间的接口标准,使主机不必关心网络内部的操作就能方便地实现对各种不同网络的访问。x.25 实际上是 DTE 与PSN 之间接口的一组协议,它包括物理层、数据链路层和分组层三个层次。x.25 的分组级相当于创 I 参考模型中的网络层 ,其主要功能是向主机提供多信道的虚电路服务。B时间 时间A1.X.25 分组级的功能X.25 分组级的主要功能是将链路层所提供的连接 DTE 一 DCE 的一条或多条物理链路复用成数条逻辑信道,并且对每一条逻辑信道所建立的虚电路执行与链路层单链路协议类似的链路建立、数据传输、流量控制、顺序和差错检
10、测、链路的拆除等操作。利用 X.25 分组级协议,可向网络层的用户提供多个虚电路连接,使用户可以同时与公用数据网中若干个其它X.25 数据终端用户(DTE)通信。 x.25 提供虚呼叫和永久虚电路两种虚电路服务,虚呼叫即需要呼叫建立与拆除过程的虚电路服务,永久虚电路即在接入时由协商指定的不需要呼叫建立与拆除过程的虚电路服务。每条虚电路都要赋予一个虚电路号,x.25 中的虚电路号由逻辑信道组号(015)和逻辑信道号(0255)组成。用于虚呼叫的虚电路号范围和永久虚电路的虚电路号应在签订服务时与管理部门协商确定与分配。公用数据网有虚电路和数据报两种操作方式,尽管有些网络体系结构(如 Etherne
11、t)仍在使用数据报技术,但数据报服务已在 1980 年的修订中被从 X.25 标准中删去,取而代之的是一个称做快速选择(Fast Select)的可选扩充服务。x.25 所规定的虚电路服务属于面向连接的 OSI 服务方式,这正好符合 OSI 参考模型中的网络层服务标准定义,这就为公用数据网与 OSI 结合提供了可能性。 OSI 网络层的功能是提供独立于运输层的中继和路由选择以及其它与之相关的功能。在面向连接的网络层服务中,要进行通信的网络层实体必须首先建立连接,这在 X.25 中即为相应的建立虚电路的呼叫建立规程。2.X.25 分组级分组格式在分组级上,所有的信息都以分组为基本单位进行传输和处
12、理,无论是 UIE 之间所要传输的数据,还是交换网所用的控制信息,都以分组形式来表示,并按照链路协议穿越 DTE-DCE界面进行传输。因此在链路层上传输时,分组应嵌入到信息帧(I 帧) 的信息字段中,即表示成如下的格式:|标记字段 F|地址宇段 A|控制字段 C|(分组)|帧校验序列 FCS|标记字段 F每个分组均由分组头和数据信息两部分组成,其一般格式如图 3.17 所示。 分组格式中的数据部分(可以为空) 通常被递交给高层协议或用户程序去处理 ,所以分组协议中不对它做进一步规定。分组头用于网络控制,主要包括 UIE-ECE 的局部控制信息,其长度随分组类型不同有所不同,但至少要包含前三个字
13、节作为通用格式标识、逻辑信道标识和分组类型标识,它们的含义如下:(1)通用格式标识(GFI)。由分组中第一个字节的前四位组成,用于标志分组头中其余部分的格式。第一位(b8)称作 Q 位或限定位,只用于数据分组中。这是为了对分组中的数据进行特殊处理而设置的,可用于区分数据是正常数据,还是控制信息。对于其它类型的分组,该位恒置为“O“ 第二位(b7) 称 D 位或传送确认位,设置该位的目的是用来指出 DTE 是否希望用分组接收序号 P(R)来对它所接收的数据做端一端确认。在呼叫建立时,DTE 之间可通过D 位来商定虚呼叫期间是否将使用 D 位规程。第三、四位 (b6、b5)用以指示数据分组的序号是
14、用 3 位即模 8(b5 置“1)还是 7 位即模 128(b6 置“1“),这两位或者取“10“,或者取“01“,一旦选定,相应的分组格式也有所变化。(2)逻辑信道标识。由第一个字节中的剩余四位(b4 、b3、b2、b1)所做的逻辑信道组号(LCGN)和第二个字节所做的逻辑信道号(LCN)两部分组成,用以标识逻辑信道。(3)分组类型标识。由第三个字节组成,用于区分分组的类型和功能。若该字节的最后一位(b1)为“。“,则表示分组为数据分组; 若该位为“1“,则表示分组为控制分组 ,可以用做呼叫请求或指示分组、释放请求或指示分组。若该字节未三位(b3、b2、b1) 为全“1“, 则表示该分组是某
15、个确认或接受分组。第四个字节及其后诸字节将依据分组类型的不同而有不同的定义。X.25 分组级协议规定了多种类型的分组。由于 UTE 与 DCE 的不对称性,所以具有相同类型编码的同类型分组,因其传输方向的不同有不同的含义和解释,具体实现时也有所不同。为此,分组协议从本地 DTE 的角度出发,为它们取了不同的名称以示区别。一般来说,从 UTE到 ECE 的分组表示本地 DTE 经 DCE 向远地 UTE 发送的命令请求或应答响应;反之,从 ECE到 ME 的分组表示 DCE 代表远地 DTE 向本地 DTE 发送的命令或应答响应。表 3.5 列出了这些分组的名称、分组类型编号及参数。表中的分组类
16、型可归纳为图 3.18 所示的六种格式。数据分组中的数据类型编码部分,除了用 M 位代替 I 帧中的 P/F 位外,其它内容与数 5 链路级的 mu 帧格式中的控制字段 C 非常类似,最未位的“。“是数据类型分组的特征 20M (More data)位置“1“,表示还有后续的数据,即当前数据分组中的数据将以同 E 辑信道上的下一数据分组中的数据作为逻辑继续。P(S)、P(R)分别称为分组发送顺序号和是收顺序号,它们的作用大致与帧格式中的 N(S)和 N(R)相当。但是,它们的主要作用是控司每条逻辑信道上向分组交换网发送或从交换网接收的数据流,而不只为站点之间提供确认 R 段。其目的是为了调节每
17、个逻辑信道上的流量,以防止对分组交换网的压力过重。 实际上,P(S)或 P(R)的值用以确定一个给定的逻辑信道上的“窗口“, 表示信道上允许传送多快个未被响应的分组。能传输未响应分组的最大值称为窗口尺寸,每条虚电路的窗口尺寸是医立户或呼叫建立时分配的,但序号采用 3 位时最大不能超过 7 个分组,序号采用 7 位时最k 不能超过 127 个分组。与数据链路级帧格式一样,分组级也包括 RR、RNR 和 R 日三种分组,它们被称为流量控制分组,这些分组中的类型字段只包括接收顺序号 P(R),而无发送顺序号 P(S)。 RR 用 F 告知对方本方正准备从给定逻辑信道上接收顺序号为 P(R)的分组;R
18、NR 用于向对方表示位方目前不能在给定逻辑信道上接收数据分组。RNR 可以通过同一方向上发送的 RR 分组阳以清除。另外,分组级也包括一些无编号的分组。如中断请求分组,它不需要等待事先已发送的隐它分组而能立即向外发送,甚至在对方不能接收数据时也能发送。中断请求分组只能携带-个字节的用户数据,放在原因字段中用以向对方传送中断信息或原因。X.25 中还定义了很多其它类型的分组 ,包括释放请求/指示、复位请求/指示、重启动青求/指示等。其中除复位请求 /指示分组多一个诊断代码外 ,其它均与中断请求分组格式相司。这些分组都包括一个“原因“ 字段 ,用以存人引起相应动作的原因。需要悦明一下复位与重启动之间的差别。复位请求是为了在数据传输状态中对虚呼叫或永久虚电路进行重新初崎准备而设置的;而重启动则为同时释放 DTE-CE 界面上所有虚呼叫以及复位所有永童电路而设置的。各类确认分组仅包含三个字节,它们分别用做对呼叫、释放、中断、复位及重启动的请求或指示的确认。