0%

计算机网络——第4章习题

课后习题和问题

4.1

  1. 网络层的分组名为数据报,路由器能够在网络层处理数据报,而链路层交换机只能在链路层处理链路层帧。
  2. 数据平面的主要功能是转发和路由,控制平面的主要功能是连接建立。
  3. 路由选择指的是路由器指定一条到目的主机的路由的过程,转发指的是路由器内部将输入端口的分组正确转移到指定的输出端口。
  4. 转发表中保存了若干个<目标,端口>数据对,便于路由器根据这些数据确定需要将数据报转发到哪一个端口。
  5. 因特网的网络层提供单一的服务,称为尽力而为服务。传送的分组既不能保证以它们发送的顺序被接收,也不能保证它们最终交付;既不能保证端到端时延,也不能保证有最小的带宽。

4.2

  1. 输入端口、输出端口、交换端口由硬件实现,其数据表处理功能比软件快很多;路由选择处理器由软件实现,维护路由表以及其他的路由信息,并计算转发表。数据平面使用硬件实现,控制平面使用软件实现。
  2. 在高速路由器的输入端口存储转发表的副本可以大大减少路由器进行路由选择的时间,无需每一次都计算一次路径。转发决策能在每个输入端口本地做出,无须基于每个分组调用集中式路由选择处理器,因此避免了集中式处理的瓶颈。
  3. 基于目的地转发意味着路由器仅会根据数据报的目的IP地址来决定转发端口,通用转发除了数据报的最终目的地之外还有其他的影响因素,如转发决策可以基于数据报的TCP/UDP源端口号和目的端口号进行转发。
  4. 使用最长前缀匹配原则来确定应该转发到哪一个端口。
  5. 经过内存交换:在输入端口与输出端口之间的交换是在CPU的直接控制之下完成的,一个分组到达一个输入端口时,该端口会通过中断方式向路由选择处理器发出信号,该分组从输入端口处被复制到处理器内存中,理由选择处理器提取目的地址,在转发表中查找到适当的转发端口,并将该分组复制到输出端口的缓存中。
    经过总线交换:输入端口经过一条共享总线将分组直接传送到输出端口,不需要路由选择处理器的干预。让输入端口为分组预先计划一个交换机内部标签,指示本地输出端口,使分组在总线上传送和传输到输出端口。该分组能够由所有输出端口收到,但只有与该标签匹配的端口才能保存该分组。
    经互联网络交换:使用一个更为复杂的互联网络,如纵横式交换机结构,每条垂直的总线在交叉点与每条水平的总线交叉,交叉点通过交换结构控制器能够在任何时候开启和闭合。当分组到达端口A需要转发到Y时,交换机控制器闭合A和Y总线交叉部分的交叉点,然后即可转发。只有互联网络交换可以并行交换多个分组。
  6. 如果数据报到达的速率大于数据报处理的速率,当输入端口的数据报缓存满时,后面到达的数据报就可能会丢失。加快路由器处理器的处理速率即可消除排队。
  7. 如果数据报被大量送入输入端口,速率大于转发速率时,会导致输出端口排队,到达一定程度后出现丢失。无法防止这种丢失。
  8. HOL阻塞,即线头阻塞,即在一个输入端口的缓存中,后面的分组由于前面的分组等待转移到输出端口而产生等待时延的现象,又称线路前部阻塞。出现于输入端口。
  9. FIFO
  10. 不同的数据报中的数据的重要程度不同,对时延的要求也不同,因此需要为分组设置优先权。
  11. RR指循环排队原则,WFQ指加权公平排队原则,二者的基本差异是RR将所有类通信都一视同仁地看待,而WFQ则将通信分为多个不同优先权的分组,优先权表现在一个循环周期内某一类分组处理的时间比例。当WFQ中所有类具有相同的服务权重时,与RR相同。

4.3

  1. IP数据报首部中含有上层协议字段,可用于标识上层协议。
  2. TTL(time to live),每一次转发都会减1,当该值被减为0时即丢弃。
  3. 不用,IP数据报只检验其头部信息。
  4. 当数据报中数据部分的长度大于MTU,即链路的最大传送单元时,需要对数据报进行分割,较小的数据报在最终目的主机装配。
  5. 路由器有IP地址,有多个IP地址,数量等于其有效接口数量。
  6. 11011111 00000001 00000011 00011011
  7. 8个接口,3个
  8. IP数据报头部20字节,TCP报文段头部20字节,一个数据报中头部信息占40字节,还有40字节为数据,因此开销为50%,即发送的内容只有1-50%是有效数据,应用数据所占百分比为50%
  9. 通过路由器的DHCP服务器为5台PC分配IP地址,该无线路由器使用NAT,因为ISP只给了它一个IP地址,它必须自己构建一个局域网。
  10. 路由聚合指使用单个网络前缀通告多个网络的能力,其使用一个具有公共前缀的地址来汇聚许多的子网。
  11. 能够自动配置主机的IP地址。
  12. 专用网络地址指在各个子网中可以重复使用的网络IP地址。具有专用网络地址的数据报不会出现在大型公共因特网中,否则数据报将无法确定到底应该发送到哪一台主机。
  13. 有,如源IP和目的IP。
  14. 是,因为IPv6载荷包裹在IPv4数据报中。

习题

  1. a. 路由器A的转发表:其中1项的目的地址为H3,转发端口为3。
    b. 无法实现,因为路由器转发仅根据目的地址转发,而不根据数据来源转发。
  2. a. 不能,因为交换结构是共享总线时,一次只能转发一个分组。
    b. 不能,因为交换结构是内存交换时,一次也只能转发一个分组。
    c. 不能,因为两个分组转发到相同的输出端口,交换结构为纵横式时,允许不同端口同时转发不同分组,但一个端口在一个时刻不能同时转发多个分组。
  3. 内存和总线交换结构:每一次只能转发一个分组,因此最大时延为(n-1)D。纵横式:不同端口的输出可以交互进行,因此最大时延为0。
  4. 在第一个时隙,第一个输入端口的X分组到达X输出端口,另外剩余两个端口的最前两个Y分组选择一个到达Y输出端口,之后的分组还需要两个时隙完成传输,故最少需要3个时隙。最大也是3个时隙。
  5. a.
    目的地址为192.0.0.0/10时输出到0端口,前缀11100000 00
    目的地址为192.64.0.0/16时输出到1端口,前缀11100000 01000000
    目的地址为192.0.0.0/7且不属于端口0、1的地址范围时输出到2端口,前缀1110000
    其余输出到3端口
    b. 第一个地址根据最长前缀匹配原则匹配到其他,输出到3端口
    第二个地址可匹配端口2,且不匹配端口0、1,输出到2端口
    第三个地址匹配到其他,输出到3端口
  6. 首先看前缀长的。
    接口1前缀010,匹配64~95,地址数量为32。
    接口2前缀011,匹配96~127,地址数量为32。
    接口0前缀00,匹配0~63,地址数量为64。
    接口2前缀10,匹配128~191,地址数量为64。
    接口2可匹配96~191,地址数量为96。
    接口3前缀11,匹配192~255,地址数量为64。
  7. 首先看前缀长的。
    接口2前缀111,匹配224~255,地址数量为32。
    接口1前缀10,匹配128~191,地址数量为64。
    接口0前缀1,匹配192~223,地址数量为32。
    接口3匹配0~127,地址数量为128。
  8. 首先分配需求大的子网,子网2分配一个25地址,即223.1.17.0/25,子网1分配一个26地址,即223.1.17.128/26,子网3分配剩余地址,即223.1.17.192/26。

244.0.0.0/10 → 端口0
224.64.0.0/16 → 端口1
224.0.0.0/7 → 端口2
0.0.0.0/0 → 端口3

  1. 128.119.40.(64\80\96\112)/28
  2. 子网1:214.97.254.0/24
    子网2:214.97.255.0/25 - 214.97.255.0/29
    子网3:214.97.255.128/25
    子网4:214.97.255.0/31
    子网5:214.97.255.2/31
    子网6:214.97.255.4/30
  3. 将会产生4个分片,表示均为422,偏移分别为0、85、170、255,前3个分片的MF为1,数据量700字节,最后一个为0,数据量300字节。
  4. 5MB=5×106字节,首部字段的长度为40字节(含IP首部和TCP首部),故每个数据报最大数据量为1460字节,需要将5MB分为3425个数据报。
  5. a. 192.168.1.1~192.168.1.3
    b. 源IP地址:192.168.1.1,端口3345;转换IP地址:24.34.112.235,端口4000。其余5个类似。
  6. a. 通过标识号识别,由于每一台主机的标识号都是连号的,可以将所有的分组编号提取出来,检测其中连号或单号的数量,可以大致检测出主机的数量,通过这样的方式检测出的主机数量不会大于实际的主机数量,因为不同主机在不同的时间段可能会使用同一个编号。
    b. 不能。这样就无法通过标识号的规律对数据报进行源关联。
  7. 不可能设计这种技术。TCP首先需要创建一个连接,一方通过NAT地址转换可以找到另一方NAT的网关,但不能定位到NAT内部子网的另一方。