第一章计算机网络与因特网
1.端到端的数据传输有两种基本技术:电路交换和分组交换。
(1)电路交换,需要在数据正式传输之前,协商预留端到端资源:即预留端系统之间通信路径上,所需要的资源,包括交换机的缓存,链路带宽等资源,这种预留的资源是在建立连接的时候预留的。在建立连接的时候,相关资源就被协商确定下来。既然有预留的资源,那发送方就可以以恒定速率向接收方传送数据。电话网采用的电路交换技术。电路交换缺陷:效率较低:静默期(无数据传输)专用电路空闲,网络资源被浪费;创建端到端电路及预留端到端带宽的过程复杂。
(2)分组交换:不需要资源预留,按需使用资源,可能要排队等待:因特网采用的是分组交换技术。所有分组共享网络资源,分组交换带宽共享好,简单,有效,成本更低。资源按需使用,资源利用率高。传输过程中采用存储转发传输机制。分组交换不适合实时服务:端到端时延不确定;
2.请简述报文分段技术的优缺点。
(1)优点:当源主机和目的主机之间有多跳时,可显著减小时延;当某个分段出错时仅需重发该分段;如果不分段,在路由器上过大的报文会堵塞较小的报文,增加后者的延迟(此点也可答为:过大的报文会增加路由器的处理负担)
(2)缺点:在目的地报文分段需要进行排序;报文分段意味着每个分段都要加上头部信息,这增加了总的传输负荷。
3.在使用 Web 缓存时,缓存器采用了什么技术来证实其保存的对象是否为最
新的?描述相关技术的原理。
(1)Web 缓存使用条件 GET 方法,来证实其保存的对象是否为最新的。
(2)Web 服务器回发响应报文:包括对象的最后修改时间:Last-modified:date1
缓存检查 Web 服务器中的该对象是否已被修改,发送一个条件 GET 请求报文:
报文中包含 If-modified-since: date1 首部行,告诉服务器,仅当自指定日期之后该对象被修改过,才发送该对象。若 Web 服务器中的该对象未被修改,则响应报文含有 304 Not Modified,并且实体为空。
第二章 应用层
1.简单描述和比较持续连接的两种方式。
(1)非流水线方式:客户机只能在前一个响应接收到之后才能发出新的请求。
特点:客户机为每一个引用对象的请求和接收都使用一个 RTT 时延。会浪费一
些服务器资源:服务器在发送完一个对象,等待下一个请求时,会出现空闲状态。
(2)流水线方式:客户机可一个接一个连续产生请求(只要有引用就产生)。服务器一个接一个连续响应请求,发送相应对象。
特点:节省 RTT 时延,可能所有引用对象只花费一个 RTT 。TCP 连接空闲时间
很短。
2.描述使用 Web 缓存服务器后网页的访问过程以及使用条件 GET 请求更新对象的过程。
客户的所有网页请求都送达 WEB 缓存服务器;WEB 缓存服务器先查询本地是否具有请求对象,如果有且没有超时(或过期)
则直接返回给客户,如果 WEB 缓存服务器本地没有所请求的对象,则转发请求到起始网页服务器,并接收网页响应,然后缓存在本地并转发给客户;如果本地存在请求的网页但超时(或过期),则 WEB 缓存服务器使用条件 GET进行本地缓存更新;web 服务器收到条件 GET 请求后判断自己是否对网页进行了修改,如果没有修改,则只返回未修改的响应报头,否则返回整个网页文件。
3.SMTP 与 HTTP 的简单对比
(1)相同点:都用于从一台主机向另一台主机传送文件
持久 HTTP 和 SMTP 都使用持久连接。
(2)不同点
HTTP 是拉协议:其 TCP 连接是由想获取文件的机器发起。SMTP 是推协议:其TCP 连接是由要发送文件的机器发起。
SMTP 使用 7 位 ASCII 码格式,HTTP 数据没有该限制。
对含有文本和图形 (或其他媒体类型)的文档:HTTP 把每个对象封装在它各自的HTTP 响应报文中发送;电子邮件则把所有报文对象放在一个报文中。
4.实现可靠数据传输需解决哪几个问题? 各使用何种技术?
(1)解决三个问题:
分组出错;
乱序;
包丢失;
(2)各自解决方法:
错误校验+回复确认+序号;
序号;
倒计数定时器
5.简述 TCP 和 UDP 协议的主要特点。
答:TCP 的主要特点是:
(1)面向连接,提供了可靠的建立连接和拆除连接的方法,还提供了流量控制
和拥塞控制的机制。
(2)可靠交付,提供了对报文段的检错、确认、重传和排序等功能。
(3)报文段头部长,传输开销大。
UDP 的主要特点是:
(1)传送数据前无需建立连接,没有流量控制机制,数据到达后也无需确认。
(2)不可靠交付,只有有限的差错控制机制。
(3)报文头部短,传输开销小,时延较短。
6.简单描述 GBN 协议和 SR 协议的区别。
(1)都采用流水线协议,允许发送方连续发送多个分组而不需确认,但它也受限于在流水线中未确认的分组数不能超过某个设定的最大值 N。
(2)GBN 接收方只对按序接收的分组进行确认,是累计确认方式。而 SR 接收方分别确认所有正确接收的报文段。
(3)对于正确接收但失序的分组 GBN 接收方予以丢弃,而 SR 接收方将缓存这些正确接收但失序的分组,以便最后按序交付给给上层。
(4)GBN 发送方对每个传输中的分组的用同一个定时器,该定时器对第一个发送未被确认的报文定时。SR 发送方对每个没有确认的分组计时,即每个分组需要设置一个定时器。
(5)若超时,GBN 发送方重传窗口中的分组 n 及所有更高序号的分组。SR 发送方只重传没有收到 ACK 的分组。
(6)SR 相对于 GBN 具有更高的传输效率,但是实现起来更复杂。
7.流量控制和拥塞控制的区别
(1)都是通过抑制发送方的发送速率来实现,但是其实现的目的不同:
(2)流量控制:是为了使得发送方不能发送太快,而淹没接收方。
(3)拥塞控制:是通过抑止发送方速率来防止过分占用网络资源。
8.TCP 建立连接时,三次握手的过程。
(1)步骤 1: 客户机向服务器发送 TCP SYN 报文段
指定初始序号
没有数据
(2)步骤 2: 服务器收到 SYN 报文段, 用 SYNACK 报文段回复
服务器为该连接分配缓冲区和变量
指定服务器初始序号
- 步骤 3: 客户机接收到 SYNACK, 分配缓冲,用 ACK 报文段回复,可能包含数据
9.描述 TCP 的拥塞控制过程?
(1)当 CongWin 低于阀值, 发送方处于慢启动阶段, 窗口指数增长.
(2) 当 CongWin 高于阀值, 发送方处于拥塞避免阶段, 窗口线性增长..
(3)当三个重复的 ACK 出现时,阀值置为 CongWin/2 并且 CongWin 置为阀值的一半加上 3 个 MSS 并进入快速恢复阶段,此时每收到一个重复的 ACK 拥塞窗口增加 1MSS,
(4)如果收到新的 ACK 则拥塞窗口置成阀值.
(5)当超时发生时 ,迁移到慢启动阶段,阀值置为 CongWin/2 并且 CongWin 置为1 MSS.
10.TCP 可靠数据传输过程;
• 发送方设置一个发送窗口,表示可以连续发送但未被确认的最大报文数,
发送方收到确认报文后,则窗口向后移动到未收到确认的报文段的位置,
并设置定时器;
• 发送方在某一个报文的定时器超时之前没有收到确认报文,则发送方重传
该报文,并重置定时器。
• 接收方有一个接收窗口,表示能够接收的数据的最大数量,接收方在接收
一个新报文时如果之前所有接收的报文都已经被确认,则等待 500ms,如
果在 500ms 之内再次接收一个新报文,则返回累计确认,如果在 500ms
之内没有接收到新报文,则返回对该报文的确认。
• 接收方如果接到一个失序的报文则保存该报文,并重发正确接收的最高序号的报文段的确认。如果接收到的报文能够填充所有未被确认的报文序列,
则返回最高序号的累计确认
第五章链路层
- 路由器和交换机的比较:
- 两者都是存储转发设备:
(2)两者都有转发表:路由器:使用路由算法计算转发表,基于IP地址转发
交换机:通过泛洪、自学习来学习转发表,基于MAC地址转发
- 交换机的优缺点:
1.即插即用:不需网络管理员干预;
2.较高的分组过滤和转发率:二层数据处理;
3.拓扑结构限制为一棵生成树: 防止广播帧循环。
4.较大的ARP表产生可观的ARP流量和处理量;
5.可能产生“广播风暴”
- 路由器的优缺点:
1.网络寻址是层次的;
2.若网络中存在冗余路径,分组不会在路由器中循环。
3.无生成树限制,使用路由器构建因特网可以采用大量丰富的拓扑结构。
4.可以使用源和目的之间的最佳路径。
5.为第二层的广播风暴提供防火墙保护。
6.非即插即用:路由器及主机都需配置IP地址。
7.每个分组的处理时间比交换机长。