电子科技大学网络协议(TCP/IP作业答案)--网工(五次作业汇总)

目录

作业1:OSI/RM、TCP/IP编址和底层网络技术

作业2:IP地址规划与路由选择

作业3:ARP、IP、ICMP

作业4:UDP、Routing Protocol

作业五


作业1:OSI/RM、TCP/IP编址和底层网络技术

物理地址属于OSI/RM的哪一层?是否需要全球唯一?应在什么范围内唯一?Ethernet网卡的物理地址——MAC地址为什么要求全球唯一?

答:1.数据链路层;

2.不需要全球统一;

3.应该在同一个网段(或者说成局域网)里唯一,MAC(Media Access Control, 介质访问控制)地址是识别LAN(局域网)节点的标识;

4. MAC地址是网卡的物理地址, MAC地址由生产厂商分配,在同一个局域网内可能使用多个厂商生成的网卡,为了区分网卡,需要保证MAC地址全球唯一。

在使用Windows系统的PC机上配置Internet协议(TCP/IP)属性时,“默认网关”是指路由器(Router)还是网关(Gateway)?理由是什么?

答:路由器;

“默认网关”是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。从功能上来看主要执行的是数据包路由转发的功能,因此windows上的配置协议属性时默认网关是指路由器。

而网关主要是执行的是协议转换功能。

3、完成下面的struct语句,用它来描述Ethernet的帧格式(RFC 894,从“目的地址”开始)。

struct Ethernet_frame

{

……

unsigned long  intCRC;

};

struct Ethernet_frame

{

unsigned long int  DMAC ;

unsigned long int  SMAC ;

unsigned long int   Type ;

char *data;

unsigned long int CRC;

};

4、以太网的链路层(MAC子层)从物理层收上来的以太帧应包括哪些字段?为什么?以太网网卡的接口驱动软件收到的以太帧应包括哪些字段?为什么?

以太网的链路层(MAC子层)从物理层收上来的以太帧应包括哪些字段?

答:前同步码,帧开始定界符;目的MAC地址,源MAC地址,类型字段(上层协议的类型,Type/len),数据字段,校验字段;

原因:MAC层从物理层收上来的以太帧,是携带有物理层信息的,包含前同步码与帧开始定界符,以太网的链路层并没有处理这些信息。

以太网网卡的接口驱动软件收到的以太帧应包括哪些字段?

目的MAC地址,源MAC地址,类型字段(上层协议的类型),数据字段,校验字段;

原因:以太网网卡的接口驱动软件收到的以太帧是经过网卡处理之后的,前同步码,帧开始定界符这些物理层的信息已经被处理掉了。

但是用wireshark从网卡中分析帧的时候,是不含有校验字段的。

请访问IETF主页(http://www.ietf.org),找1~2个感兴趣的活动工作组(active working group),写出该工作组的全称、缩写和所属领域(英文),简要描述该工作组的主要研究内容(中文),并给出该工作组发布的最新一个RFC的编号、名称和状态。

答:

全称:Inter-Domain Routing

缩写:idr

所属领域:Routing Area (rtg)

主要研究内容:主要负责BGP的研究;IDR工作组将致力于准确性、稳健性和协议的可扩展性,以及协议的清晰度和准确性边界网关协议文档集

RFC编号:RFC9294

RFC名称:draft-ietf-idr-bgp-ls-app-specific-attr

RFC状态:Proposed Standard RFC

全称:Light-Weight Implementation Guidance (lwig)

缩写:lwig

所属领域:Internet Area

主要研究内容:搭建能够在大多数环境下工作最小但可互操作的ip设备;从IP栈中的使用中收集经验

RFC编号:RFC 9178

RFC名称:draft-ietf-lwig-cellular

RFC状态:Informational RFC


作业2:IP地址规划与路由选择

根据下图所示网络拓扑进行IP地址规划。

要求:

  1. 如果IP地址总空间是10.1.1.0/24,能否根据图中所示网络大小为每个IP网络分配适当的IP地址空间?如果可以,应如何编址?如果不行,请说明理由。\\

不可以;地址空间不够用;

解释:每个IP网的需要的地址数量=本子网内主机数 + 本子网内路由器接口数 + 2

从上述网络拓扑图当中可以看到,一共有10个子网,

分析有主机的子网:

子网1:地址数量=15+1+2=17,需要32个地址

子网2:地址数量=25+1+2=18,需要32个地址

子网3:地址数量=30+1+2=33,需要64个地址

子网4:地址数量=50+1+2=53,需要64个地址

子网5:地址数量=60+1+2=63,需要64个地址

子网6:地址数量=2+2=4,需要4个地址

子网7:地址数量=2+2=4,需要4个地址

子网8:地址数量=2+2=4,需要4个地址

子网9:地址数量=2+2=4,需要4个地址

子网10:地址数量=2+2=4,需要4个地址

现在地址块的地址数量为28 =256,而(32+32+64+64+64+4*5)>256,地址数量不够用

  1. IP地址总空间是10.1.0.0/16,请采用聚合设计,按照图中所示网络大小为每个IP网络分配适当的IP地址空间,从而使得每台路由器的路由表项数尽可能最少。写出每个IP网络的网络地址、掩码和直接广播地址,并写出每台路由器每个网络接口的IP地址,以及每个有主机的子网中一台主机的IP地址、子网掩码和缺省网关。

采用路由地址聚合:

分配的IP地址为10.1.0.0/16,网络需要的地址规模是32+32+64+64+64+4*5=276,

所以整个网络分配10.1.0.0/23地址块就行

采用聚合设计

3,4,9可以聚合成一个网络,需要地址64+64+4 一共256的地址

1单独一张网络,需要32地址

网络 1 ,6,7 ,10聚合成一个网络,需要64个地址

2 ,8 ,5聚合成一张网络,需要32+4+64,一共128地址

地址聚合示意图如下:

路由聚合表如下,每一个长条表示128大小的地址块

网络3

10.1.0.0/26

网络4

10.1.0.64/26

10.1.0.0/24

网络9

10.1.0.128/30

网络5

10.1.1.0/26

网络2  10.1.1.64 /27

网络8 10.1.1.96/30

10.1.1.0/25

网络6

10.1.1.128/30

网络7

10.1.1.132/30

网络10

10.1.1.136/30

网络1

10.1.1.160/27

10.1.1.128/25

网络名称

网络地址

子网掩码

广播地址

子网1

10.1.1.160

255.255.255.224

10.1.1.191

子网2

10.1.1.64

255.255.255.224

10.1.1.95

子网3

10.1.0.0

255.255.255.192

10.1.0.63

子网4

10.1.0.64

255.255.255.192

10.1.0.127

子网5

10.1.1.0

255.255.255.192

10.1.1.63

子网6

10.1.1.128

255.255.255.252

10.1.1.131

子网7

10.1.1.132

255.255.255.252

10.1.1.135

子网8

10.1.1.96

255.255.255.252

10.1.1.99

子网9

10.1.0.128

255.255.255.252

10.1.0.131

子网10

10.1.1.136

255.255.255.252

10.1.1.139

路由器

接口

IP地址

A

E1

10.1.1.161

S1

10.1.1.133

S0

10.1.1.129

B

S0

10.1.1.134

S1

10.1.1.137

S2

10.1.0.129

E0

10.1.0.65

C

S0

10.1.1.138

S1

10.1.1.130

S2

10.1.1.97

E0

10.1.1.65

D

S1

10.1.0.130

E0

10.1.0.1

E

S0

10.1.1.98

E0

10.1.1.1

每个有主机的子网中一台主机的IP地址、子网掩码和缺省网关。

网络名称

主机IP

子网掩码

缺省网关

子网1

10.1.1.162

255.255.255.224

10.1.1.161

子网2

10.1.1.66

255.255.255.224

10.1.1.65

子网3

10.1.0.2

255.255.255.192

10.1.0.1

子网4

10.1.0.66

255.255.255.192

10.1.0.65

子网5

10.1.1.2

255.255.255.192

10.1.1.1

(3)请根据(2)中的IP地址分配方案,按以下格式分别写出路由器A、B、C、D和E的路由选择表。

目的网络地址

目的掩码

下一跳IP地址

发送接口

路由器A的路由表:

目的网络地址

目的掩码

下一跳IP地址

发送接口

10.1.1.160

255.255.255.224

_

E1

10.1.0.0

255.255.255.0

10.1.1.134

S1

10.1.1.0

255.255.255.128

10.1.1.130

S0

路由器B的路由表:

目的网络地址

目的掩码

下一跳IP地址

发送接口

10.1.0.64

255.255.255.192

_

E0

10.1.1.160

255.255.255.224

10.1.1.133

S0

10.1.1.0

255.255.255.128

10.1.1.138

S1

10.1.0.0

255.255.255.192

10.1.0.130

S2

路由器C的路由表:

目的网络地址

目的掩码

下一跳IP地址

发送接口

10.1.1.64 

255.255.255.224

_

E0

10.1.0.0

255.255.255.0

10.1.1.137

S0

10.1.1.128

255.255.255.224

10.1.1.129

S1

10.1.1.0

255.255.255.192

10.1.1.1

S2

路由器D的路由表:

目的网络地址

目的掩码

下一跳IP地址

发送接口

10.1.0.0

255.255.255.192

_

E0

0.0.0.0

0.0.0.0

10.1.0.129

S1

路由器E的路由表:

目的网络地址

目的掩码

下一跳IP地址

发送接口

10.1.1.0

255.255.255.192

_

E0

0.0.0.0

0.0.0.0

10.1.1.97

S0

作业3:ARP、IP、ICMP

  1. 路由器A的一个网络接口的IP地址为195.23.67.3,掩码是255.255.255.0,以太网物理地址是0x2345AB4F67CD。路由器收到一个目的IP地址是185.11.78.10的IP分组,当路由器检查路由表时,它找出该分组应交付给下一跳路由器B,其IP地址是195.23.67.9,掩码是255.255.255.0,请写出路由器A发出的ARP请求分组和收到的ARP响应分组的内容,以及封装这两个分组的数据帧的首部字段。假设:195.23.67.9对应的MAC地址是0x154983AF6CD2,185.11.78.10对应的MAC地址是0x94EF65A3B2D7。

路由器A发出的ARP请求分组:

0x0001

0x0800

0x06

0x04

0x0001

0x2345AB4F67CD

195.23.67.3

0x000000000000

195.23.67.9

数据帧的首部字段:

前同步码

帧开始定界符

0xFFFFFFFFFFFF

0x2345AB4F67CD

0x0806

ARP分组和填充字段

FCS

路由器A收到的ARP响应分组:

0x0001

0x0800

0x06

0x04

0x0002

0x154983AF6CD2

195.23.67.9

0x2345AB4F67CD

195.23.67.3

数据帧的首部字段

前同步码

帧开始定界符

0x2345AB4F67CD

0x154983AF6CD2

0x0806

ARP分组和填充字段

FCS

分析RFC826中“Packet Reception”一节关于ARP分组的接收处理,指出教材8.4.4节的“表8.3 输入模块”中对ARP分组接收处理的不正确或不准确描述。

答:

  1. 首先没有检查是否支持收到包的硬件地址类型
  2. 其次,没有检查协议地址的类型,也没有检查协议地址的长度
  3. 再者,标准中没有提到PENDING,也没有之后的操作。RFC826提到的是Merge_flag状态的改变。
  4. 最后,判断是ARP请求之前,应该先判断自己是否为ARP分组里面的目的协议地址,如果不是应该丢弃

一个IP数据报到达时其首部信息如下:

45 00 00 54 00 03 00 00 20 06 00 00 7C 4E 03 02 B4 0E 0F 02

试回答以下问题:

    1. 该数据报有无选项字段?
    2. 是否被分片?
    3. 数据报中数据部分的长度是多少?
    4. 数据报中封装的是哪个高层协议数据?
    5. TTL值是多少?

答:

  1. 没有选项字段。因为一共20个字节。不会包含选项字段
  2. 没有被分片,分片标志位和分片偏移量都为0
  3. 64字节。
  4. TCP
  5. 32(十进制)

试用一张表来归纳说明:哪些类型的ICMP差错报告报文是由路由器发送的?哪些类型的ICMP差错报告报文是由目的主机发送的?

ICMP差错报文类型

路由器发送

目的主机发送

Code

内容

Code

内容

终点不可达

0

网络不可达(可能硬件问题)

2

协议不可达

1

主机不可达(可能是硬件问题)

3

端口不可达

4

需要进行分片

5

源路由不能完成

6

目的网络未知

7

目的主机未知

8

源主机被隔离了

9/10

从管理上禁止与目的网络通信

11/12

对指明的服务类型,主机不可达

13

主机不可达,因为管理员已经在主机上放置了过滤器

14

主机不可达,因为主机违反了优先级策略

15

主机不可达,因为它的优先级被截至

源点抑制

路由器因为拥塞或者流量控制丢弃报文

目的主机因为拥塞或者流量控制丢弃报文

超时

报文的生存时间变为了0

目的主机没有在规定时间内收到所有的分片

参数问题

0

路由器发现首部某个字段有差错或者二义性

0

目的主机发现首部某个字段有差错或者二义性

1

路由器发现表示缺少所需的选项部分

1

目的主机发现表示缺少所需的选项部分

路由重定向

0

对特定网络路由发生改变

1

对特定主机路由发生改变

2

基于指定服务类型的对特定网络路由发生改变

3

基于指定服务类型的对特定主机路由发生改变


作业4:UDP、Routing Protocol

  1. 路由器A的路由表如下:

目的网络

Metric

Next-hop

Net1

1

B

Net2

4

C

Net3

1

D

Net4

5

E

Net5

3

B

若该路由器收到来自路由器B的RIP报文如下:

目的网络

Metric

Net1

1

Net2

2

Net3

3

Net4

7

Net5

3

请按照RFC1058中定义的RIP更新算法,写出路由器A更新后的路由表。

答:

目的网络

Metric

Next-hop

Net1

2

B

Net2

3

B

Net3

1

D

Net4

5

E

Net5

4

B

  1. 试画出具有以下规约的自治系统:

a、共有8个网络:N1~N8,有8台路由器:R1~R8

b、共有4个OSPF区域:Area 0 ~ Area 3

c、N3、N5、N8是以太网,其余均为点到点网络

d、R1连接N1

e、R2连接N2

f、R3连接N1、N2和N3

g、R4连接N3和N4

h、R5连接N4和N5

i、R6连接N3和N6

j、R7连接N6和N7

k、R8连接N7和N8

l、N1和N2在Area 1中,N4和N5在Area 2中,N6~N8在Area 3中

m、N3在Area 0中

试回答以下问题:

    1. 该自治系统中的路由器分别是哪种类型的OSPF路由器?
    2. 该自治系统中会产生哪几种类型的OSPF LSA?
    3. 该自治系统中哪几台路由器的链路状态数据库完全一致?
    4. 该自治系统中有哪几种类型的OSPF链路?

答:

自治系统的拓扑如下:

a)   内部路由器:R1,R2,R5,R7,R8

主干路由器:R3、R6、R4

区域边界路由器:R3、R6、 R4,

AS边界路由器:无

b)Type1:Router-LSA(路由器链路通告)

   Type2:Network-LSA(网络链路通告)

   Type3:Summary-LSA(汇总链路到网络)

c)  R1和R2;

R7和R8;

R3 、R4和R6

d) 点到点链路(point-to-point)

   转接链路(transient)

   残桩链路(stub)

IP协议和UDP协议都是一种不可靠的无连接数据报交付协议,使用无连接、不可靠传输服务的应用进程为什么不能直接使用IP协议进行传输?

原因1:IP只能实现端到端的传输,传输层需要进程到进程,需要端口来识别,不同的应用进程需要不同的端口号(port)标识,而IP协议不提供端口号的标识,所以在此基础之上是无法替代的。

原因2:传输层和网络层在操作系统内的实现层次不同,给用户开放的权限也不同,并非所有用户都可以直接操作IP协议,出于安全和易操作性的考虑,现代操作系统往往不允许/不建议普通用户直接操作IP协议,一般是用户完成传输层协议封装,然后由操作系统进行网络层封装和校验和计算。

原因3:IP是需要进行验证,UDP不需要进行验证,速度快,

原因4:IP协议比较复杂,需要考虑路由等,而UDP协议简单,应用进程直接用UDP协议,会更加的简单化,用户操作性强。

作业五

试画出具有以下规约的自治系统:

a、共有8个网络:N1~N8,有8台路由器:R1~R8

b、共有4个OSPF区域:Area 0 ~ Area 3

c、N3、N5、N8是以太网,其余均为点到点网络

d、R1连接N1

e、R2连接N2

f、R3连接N1、N2和N3

g、R4连接N3和N4

h、R5连接N4和N5

i、R6连接N3和N6

j、R7连接N6和N7

k、R8连接N7和N8

l、N1和N2在Area 1中,N4和N5在Area 2中,N6~N8在Area 3中

m、N3在Area 0中

试回答以下问题:

    1. 该自治系统中的路由器分别是哪种类型的OSPF路由器?
    2. 该自治系统中会产生哪几种类型的OSPF LSA?
    3. 该自治系统中哪几台路由器的链路状态数据库完全一致?
    4. 该自治系统中有哪几种类型的OSPF链路?

a)   内部路由器:R1,R2,R5,R7,R8

主干路由器:R3、R6、R4

区域边界路由器:R3、R6、 R4,

AS边界路由器:无

b)Type1:Router-LSA(路由器链路通告)

   Type2:Network-LSA(网络链路通告)

   Type3:Summary-LSA(汇总链路到网络)

c)  R1和R2;

R7和R8;

R3 、R4和R6

d) 点到点链路(point-to-point)

   转接链路(transient)

   残桩链路(stub)

主机A的发送窗口大小为2000字节。第1秒钟,主机A向主机B发送了第1个报文段:序号为2001,发送了800字节数据,重传计时器为5秒。第2秒钟,主机A向主机B发送了第2个报文段:序号为2801,发送了800字节数据,重传计时器为5秒。第3秒钟,主机A收到来自主机B的1个TCP确认报文段:确认号为2801,窗口字段值为1600。此时,主机A的发送窗口将如何改变?如果主机A要在第4秒钟向主机B发送第3个TCP报文段,该报文段的序号是多少?该报文段中的数据长度是多少字节?

①主机A的发送窗口应该变为1600发送方的窗口将会根据接收方的窗口进行调整,主机A收到了TCP确认报文段,窗口字段值为1600,所哟主机A的发送窗口应该变为1600。

②序号为3601,报文长度最大为800字节报文数据长度小于等于800字节第四秒钟主机A向主机B发送第三个TCP报文段,由于之前发送了序号为2801,800字节的数据,此时的发送窗口为1600,而且还没有收到之前的确认报文段,所以还能发送序号为3601,报文长度最大为800字节

  1. 试举例说明什么情况下TCP会从FIN-WAIT-1状态转换到TIME-WAIT状态?

通信双方同时关闭连接

说明:在这种FIN-WAIT-1状态之下,一方发起关闭后,发送了FIN,等待对方ACK 的时候,正好被动方也发起关闭请求,发送了FIN这时客户端接收到了先前ACK, 也收到了对方的FIN,然后发送ACK(对对方FIN的回应)然后就进入TIME-WAIT 状态

猜你喜欢

转载自blog.csdn.net/weixin_53284122/article/details/129220172