第12讲 网络层(3).ppt

上传人:bowdiet140 文档编号:388376 上传时间:2018-10-12 格式:PPT 页数:51 大小:447KB
下载 相关 举报
第12讲 网络层(3).ppt_第1页
第1页 / 共51页
第12讲 网络层(3).ppt_第2页
第2页 / 共51页
第12讲 网络层(3).ppt_第3页
第3页 / 共51页
第12讲 网络层(3).ppt_第4页
第4页 / 共51页
第12讲 网络层(3).ppt_第5页
第5页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、1/,第12讲 网络层(3),2/,知识回顾,ARP协议 IP数据报格式,3/,本讲教学内容和教学目标,理解IP转发分组的流程 理解划分子网的必要性 掌握划分子网的方法 掌握默认子网掩码 理解使用子网进行分组转发 掌握CIDR的网络前缀 理解路由聚合的概念和应用,4/,IP 层转发分组的流程,有四个 A 类网络通过三个路由器连接在一起。每一个网络上都可能有成千上万个主机。 可以想像,若按目的主机号来制作路由表,则所得出的路由表就会过于庞大。 但若按主机所在的网络地址来制作路由表,那么每一个路由器中的路由表就只包含 4 个项目。这样就可使路由表大大简化。,5/,网 1 10.0.0.0,网 4

2、40.0.0.0,网 3 30.0.0.0,网 2 20.0.0.0,10.0.0.4,40.0.0.4,30.0.0.2,20.0.0.9,20.0.0.7,目的主机所在的网络,下一跳地址,20.0.0.0,30.0.0.0,10.0.0.0,40.0.0.0,20.0.0.7,30.0.0.1,直接交付,接口 1,直接交付,接口 0,路由器 R2 的路由表,30.0.0.1,10.0.0.4,40.0.0.4,30.0.0.2,20.0.0.9,20.0.0.7,30.0.0.1,链路 4,链路 3,链路 2,链路 1,R2,R3,R1,0,1,R2,R3,R1,在路由表中,对每一条路由,

3、最主要的是 (目的网络地址,下一跳地址),6/,查找路由表,根据目的网络地址就能确定下一跳路由器,这样做的结果是:IP 数据报最终一定可以找到目的主机所在目的网络上的路由器(可能要通过多次的间接交付)。只有到达最后一个路由器时,才试图向目的主机进行直接交付。,7/,特定主机路由,这种路由是为特定的目的主机指明一个路由。 采用特定主机路由可使网络管理人员能更方便地控制网络和测试网络,同时也可在需要考虑某种安全问题时采用这种特定主机路由。,8/,默认路由(default route),路由器还可采用默认路由以减少路由表所占用的空间和搜索路由表所用的时间。 这种转发方式在一个网络只有很少的对外连接时

4、是很有用的。 默认路由在主机发送 IP 数据报时往往更能显示出它的好处。 如果一个主机连接在一个小网络上,而这个网络只用一个路由器和因特网连接,那么在这种情况下使用默认路由是非常合适的。,9/,N1,R1,因特网,目的网络 下一跳N1 直接 N2 R2默认 R1,路由表,N2,R2,只要目的网络不是 N1 和 N2, 就一律选择默认路由, 把数据报先间接交付路由器 R1, 让 R1 再转发给下一个路由器。,10/,必须强调指出,IP 数据报的首部中没有地方可以用来指明“下一跳路由器的 IP 地址”。 当路由器收到待转发的数据报,不是将下一跳路由器的 IP 地址填入 IP 数据报,而是送交下层的

5、网络接口软件。 网络接口软件使用 ARP 负责将下一跳路由器的 IP 地址转换成硬件地址,并将此硬件地址放在链路层的 MAC 帧的首部,然后根据这个硬件地址找到下一跳路由器。,11/,分组转发算法,(1) 从数据报的首部提取目的主机的 IP 地址 D, 得出目的网络地址为 N。 (2) 若网络 N 与此路由器直接相连,则把数据报直接交付目的主机 D;否则是间接交付,执行(3)。 (3) 若路由表中有目的地址为 D 的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)。 (4) 若路由表中有到达网络 N 的路由,则把数据报传送给路由表指明的下一跳路由器;否则,执行(5)

6、。 (5) 若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行(6)。 (6) 报告转发分组出错。,12/,划分子网,从两级 IP 地址到三级 IP 地址 在 ARPANET 的早期,IP 地址的设计确实不够合理。 IP 地址空间的利用率有时很低。 给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏。 两级的 IP 地址不够灵活。 从 1985 年起在 IP 地址中又增加了一个“子网号字段”,使两级的 IP 地址变成为三级的 IP 地址。 这种做法叫作划分子网(subnetting) 。划分子网已成为因特网的正式标准协议,13/,划分子网纯属一个单

7、位内部的事情。单位对外仍然表现为没有划分子网的网络。 从主机号借用若干个位作为子网号 subnet-id,而主机号 host-id 也就相应减少了若干个位。 IP地址 := , , (4-2),划分子网的基本思路,14/,凡是从其他网络发送给本单位某个主机的 IP 数据报,仍然是根据 IP 数据报的目的网络号 net-id,先找到连接在本单位网络上的路由器。 然后此路由器在收到 IP 数据报后,再按目的网络号 net-id 和子网号 subnet-id 找到目的子网。 最后就将 IP 数据报直接交付目的主机。,划分子网的基本思路(续),15/,145.13.3.10,145.13.3.11,1

8、45.13.3.101,145.13.7.34,145.13.7.35,145.13.7.56,145.13.21.23,145.13.21.9,145.13.21.8,所有到网络 145.13.0.0的分组均到达此路由器,我的网络地址 是 145.13.0.0,R1,R3,R2,一个未划分子网的 B 类网络145.13.0.0,16/,划分为三个子网后对外仍是一个网络,145.13.3.10,145.13.3.11,145.13.3.101,145.13.7.34,145.13.7.35,145.13.7.56,145.13.21.23,145.13.21.9,145.13.21.8,子网

9、145.13.21.0,子网 145.13.3.0,子网 145.13.7.0,所有到达网络 145.13.0.0 的分组均到达 此路由器,网络 145.13.0.0,R1,R3,R2,17/,当没有划分子网时,IP 地址是两级结构。 划分子网后 IP 地址就变成了三级结构。 划分子网只是把 IP 地址的主机号 host-id 这部分进行再划分,而不改变 IP 地址原来的网络号 net-id。 从一个 IP 数据报的首部并无法判断源主机或目的主机所连接的网络是否进行了子网划分。 使用子网掩码(subnet mask)可以找出 IP 地址中的子网部分。,子网掩码,18/,IP 地址的各字段和子网

10、掩码,145 . 13 .,3 . 10,两级 IP 地址,子网号为 3 的网络的网络号,三级 IP 地址,主机号,子网掩码,net-id,host-id,子网的 网络地址,0,net-id,subnet-id,host-id,145 . 13 .,145 . 13 . 3,3 . 10,19/,(IP 地址) AND (子网掩码) = 网络地址,网络号 net-id,主机号 host-id,两级 IP 地址,网络号,三级 IP 地址,主机号,子网号,子网掩码,子网的 网络地址,net-id,subnet-id,0,逐位进行 AND 运算,20/,1 1 1 1 1 1 1 1 1 1 1 1

11、 1 1 1 1 1 1 1 1 1 1 1 1,0 0 0 0 0 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1,1 1 1 1 1 1 1 1,0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,net-id,net-id,host-id 为全 0,net-id,网络地址,A 类 地 址,默认子网掩码 255.0.0.0,网络地址,B 类 地 址,默认子网掩码 255.255.0.0,网络地址,C 类 地 址,默认子网掩码 255.255.255.0,h

12、ost-id 为全 0,host-id 为全 0,默认子网掩码,21/,子网掩码是一个重要属性,子网掩码是一个网络或一个子网的重要属性。 路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器。 路由器的路由表中的每一个项目,除了要给出目的网络地址外,还必须同时给出该网络的子网掩码。 若一个路由器连接在两个子网上就拥有两个网络地址和两个子网掩码。,22/,141 . 14 . 0 1 0 0 0 0 0 0,1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0,【例4-2】已知 IP 地址是 141.14.72.24,

13、子网掩码是 255.255.192.0。试求网络地址。,(a) 点分十进制表示的 IP 地址,(c) 子网掩码是 255.255.192.0,0 0 0 0 0 0 0 0,141 . 14 .,72 . 24,141 . 14 .,64 . 0,. 0,0 1 0 0 1 0 0 0,141 . 14 .,. 24,(b) IP 地址的第 3 字节是二进制,(d) IP 地址与子网掩码逐位相与,(e) 网络地址(点分十进制表示),计算子网号例题,23/,141 . 14 . 0 1 0 0 0 0 0 0,1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0

14、 0 0,【例4-3】在上例中,若子网掩码改为255.255.224.0。试求网络地址,讨论所得结果。,(a) 点分十进制表示的 IP 地址,(c) 子网掩码是 255.255.224.0,0 0 0 0 0 0 0 0,141 . 14 .,72 . 24,141 . 14 .,64 . 0,. 0,0 1 0 0 1 0 0 0,141 . 14 .,. 24,(b) IP 地址的第 3 字节是二进制,(d) IP 地址与子网掩码逐位相与,(e) 网络地址(点分十进制表示),不同的子网掩码得出相同的网络地址。 但不同的掩码的效果是不同的。,24/,在不划分子网的两级 IP 地址下,从 IP

15、 地址得出网络地址是个很简单的事。 但在划分子网的情况下,从 IP 地址却不能唯一地得出网络地址来,这是因为网络地址取决于那个网络所采用的子网掩码,但数据报的首部并没有提供子网掩码的信息。 因此分组转发的算法也必须做相应的改动。,使用子网掩码的分组转发过程,25/,在划分子网的情况下路由器转发分组的算法,(1) 从收到的分组的首部提取目的 IP 地址 D。 (2) 先用各网络的子网掩码和 D 逐位相“与”,看是否和相应的网络地址匹配。若匹配,则将分组直接交付。否则就是间接交付,执行(3)。 (3) 若路由表中有目的地址为 D 的特定主机路由,则将分组传送给指明的下一跳路由器;否则,执行(4)。

16、 (4) 对路由表中的每一行的子网掩码和 D 逐位相“与”,若其结果与该行的目的网络地址匹配,则将分组传送给该行指明的下一跳路由器;否则,执行(5)。 (5) 若路由表中有一个默认路由,则将分组传送给路由表中所指明的默认路由器;否则,执行(6)。 (6) 报告转发分组出错。,26/,128.30.33.1,0,128.30.33.13,H1,子网1:网络地址 128.30.33.0子网掩码 255.255.255.128,128.30.33.130,1,R2,子网2:网络地址 128.30.33.128子网掩码 255.255.255.128,H2,128.30.33.138,0,1,128.

17、30.33.129,H3,128.30.36.2,子网3:网络地址 128.30.36.0子网掩码 255.255.255.0,128.30.36.12,【例4-4】已知互联网和路由器 R1 中的路由表。主机 H1 向 H2 发送分组。试讨论 R1 收到 H1 向 H2 发送的分组后查找路由表的过程。,27/,主机 H1 要发送分组给 H2,128.30.33.1,0,R1 的路由表(未给出默认路由器),128.30.33.13,H1,子网1:网络地址 128.30.33.0子网掩码 255.255.255.128,128.30.33.130,R1,1,R2,子网2:网络地址 128.30.3

18、3.128子网掩码 255.255.255.128,H2,128.30.33.138,0,1,128.30.33.129,H3,128.30.36.2,子网3:网络地址 128.30.36.0子网掩码 255.255.255.0,128.30.36.12,要发送的分组的目的 IP 地址:128.30.33.138,请注意:H1 并不知道 H2 连接在哪一个网络上。 H1 仅仅知道 H2 的 IP 地址是 128.30.33.138,因此 H1 首先检查主机 128.30.33.138 是否连接在本网络上 如果是,则直接交付; 否则,就送交路由器 R1,并逐项查找路由表。,28/,128.30.

19、33.1,0,H1,子网1:网络地址 128.30.33.0子网掩码 255.255.255.128,128.30.33.130,R1,1,R2,子网2:网络地址 128.30.33.128子网掩码 255.255.255.128,H2,128.30.33.13,128.30.33.138,0,1,128.30.33.129,H3,128.30.36.2,子网3:网络地址 128.30.36.0子网掩码 255.255.255.0,128.30.36.12,主机 H1 首先将 本子网的子网掩码 255.255.255.128 与分组的 IP 地址 128.30.33.138 逐比特相“与”(A

20、ND 操作),255.255.255.128 AND 128.30.33.138 的计算,255 就是二进制的全 1,因此 255 AND xyz = xyz, 这里只需计算最后的 128 AND 138 即可。,128 10000000 138 10001010,逐比特 AND 操作后:10000000 128, H1 的网络地址,29/,因此 H1 必须把分组传送到路由器 R1 然后逐项查找路由表,128.30.33.1,0,R1 的路由表(未给出默认路由器),128.30.33.13,H1,子网1:网络地址 128.30.33.0子网掩码 255.255.255.128,128.30.3

21、3.130,R1,1,R2,子网2:网络地址 128.30.33.128子网掩码 255.255.255.128,H2,128.30.33.138,0,1,128.30.33.129,H3,128.30.36.2,子网3:网络地址 128.30.36.0子网掩码 255.255.255.0,128.30.36.12,30/,路由器 R1 收到分组后就用路由表中第 1 个项目的 子网掩码和 128.30.33.138 逐比特 AND 操作,128.30.33.1,0,R1 的路由表(未给出默认路由器),128.30.33.13,H1,子网1:网络地址 128.30.33.0子网掩码 255.25

22、5.255.128,128.30.33.130,R1,1,R2,子网2:网络地址 128.30.33.128子网掩码 255.255.255.128,H2,128.30.33.138,0,1,128.30.33.129,H3,128.30.36.2,子网3:网络地址 128.30.36.0子网掩码 255.255.255.0,128.30.36.12,255.255.255.128 AND 128.30.33.138 = 128.30.33.128 不匹配! (因为128.30.33.128 与路由表中的 128.30.33.0 不一致),R1 收到的分组的目的 IP 地址:128.30.33

23、.138,不一致,31/,路由器 R1 再用路由表中第 2 个项目的 子网掩码和 128.30.33.138 逐比特 AND 操作,128.30.33.1,0,R1 的路由表(未给出默认路由器),128.30.33.13,H1,子网1:网络地址 128.30.33.0子网掩码 255.255.255.128,128.30.33.130,R1,1,R2,子网2:网络地址 128.30.33.128子网掩码 255.255.255.128,H2,128.30.33.138,0,1,128.30.33.129,H3,128.30.36.2,子网3:网络地址 128.30.36.0子网掩码 255.2

24、55.255.0,128.30.36.12,255.255.255.128 AND 128.30.33.138 = 128.30.33.128 匹配! 这表明子网 2 就是收到的分组所要寻找的目的网络,R1 收到的分组的目的 IP 地址:128.30.33.138,32/,划分子网在一定程度上缓解了因特网在发展中遇 到的困难。然而在 1992 年因特网仍然面临三个必 须尽早解决的问题,这就是: B 类地址在 1992 年已分配了近一半,眼看就要在 1994 年 3 月全部分配完毕! 因特网主干网上的路由表中的项目数急剧增长(从几千个增长到几万个)。 整个 IPv4 的地址空间最终将全部耗尽。,

25、无分类编址 CIDR网络前缀,33/,1987 年,RFC 1009 就指明了在一个划分子网的网络中可同时使用几个不同的子网掩码。使用变长子网掩码 VLSM (Variable Length Subnet Mask)可进一步提高 IP 地址资源的利用率。 在 VLSM 的基础上又进一步研究出无分类编址方法,它的正式名字是无分类域间路由选择 CIDR (Classless Inter-Domain Routing)。,IP 编址问题的演进,34/,CIDR 消除了传统的 A 类、B 类和 C 类地址以及划分子网的概念,因而可以更加有效地分配 IPv4 的地址空间。 CIDR使用各种长度的“网络前

26、缀”(network-prefix)来代替分类地址中的网络号和子网号。 IP 地址从三级编址(使用子网掩码)又回到了两级编址。,CIDR 最主要的特点,35/,无分类的两级编址的记法是: IP地址 := , (4-3) CIDR 还使用“斜线记法”(slash notation),它又称为CIDR记法,即在 IP 地址面加上一个斜线“/”,然后写上网络前缀所占的位数(这个数值对应于三级编址中子网掩码中 1 的个数)。 CIDR 把网络前缀都相同的连续的 IP 地址组成“CIDR 地址块”。,无分类的两级编址,36/,CIDR 地址块,128.14.32.0/20 表示的地址块共有 212 个地

27、址(因为斜线后面的 20 是网络前缀的位数,所以这个地址的主机号是 12 位)。 这个地址块的起始地址是 128.14.32.0。 在不需要指出地址块的起始地址时,也可将这样的地址块简称为“/20 地址块”。 128.14.32.0/20 地址块的最小地址:128.14.32.0 128.14.32.0/20 地址块的最大地址:128.14.47.255 全 0 和全 1 的主机号地址一般不使用。,37/,128.14.32.0/20 表示的地址(212 个地址),10000000 00001110 00100000 00000000 10000000 00001110 00100000 00

28、000001 10000000 00001110 00100000 00000010 10000000 00001110 00100000 00000011 10000000 00001110 00100000 00000100 10000000 00001110 00100000 0000010110000000 00001110 00101111 11111011 10000000 00001110 00101111 11111100 10000000 00001110 00101111 11111101 10000000 00001110 00101111 11111110 100000

29、00 00001110 00101111 11111111,所有地址 的 20 位 前缀都是 一样的,38/,一个 CIDR 地址块可以表示很多地址,这种地址的聚合常称为路由聚合,它使得路由表中的一个项目可以表示很多个(例如上千个)原来传统分类地址的路由。 路由聚合也称为构成超网(supernetting)。 CIDR 虽然不使用子网了,但仍然使用“掩码”这一名词(但不叫子网掩码)。 对于 /20 地址块,它的掩码是 20 个连续的 1。 斜线记法中的数字就是掩码中1的个数。,路由聚合(route aggregation),39/,CIDR 记法的其他形式,10.0.0.0/10 可简写为 1

30、0/10,也就是把点分十进制中低位连续的 0 省略。 10.0.0.0/10 隐含地指出 IP 地址 10.0.0.0 的掩码是 255.192.0.0。此掩码可表示为11111111 11000000 00000000 00000000,40/,CIDR 记法的其他形式,10.0.0.0/10 可简写为 10/10,也就是将点分十进制中低位连续的 0 省略。 10.0.0.0/10 相当于指出 IP 地址 10.0.0.0 的掩码是 255.192.0.0,即11111111 11000000 00000000 00000000 网络前缀的后面加一个星号 * 的表示方法如 00001010

31、00*,在星号 * 之前是网络前缀,而星号 * 表示 IP 地址中的主机号,可以是任意值。,41/,构成超网,前缀长度不超过 23 位的 CIDR 地址块都包含了多个 C 类地址。 这些 C 类地址合起来就构成了超网。 CIDR 地址块中的地址数一定是 2 的整数次幂。 网络前缀越短,其地址块所包含的地址数就越多。而在三级结构的IP地址中,划分子网是使网络前缀变长。,42/,CIDR 地址块划分举例,因特网,206.0.68.0/22,206.0.64.0/18,ISP,大学 X,一系,二系,三系,四系,206.0.71.128/26 206.0.71.192/26,206.0.68.0/25

32、 206.0.68.128/25 206.0.69.0/25 206.0.69.128/25,206.0.70.0/26 206.0.70.64/26 206.0.70.128/26 206.0.70.192/26,206.0.70.0/24,206.0.71.0/25,206.0.71.0/26 206.0.71.64/26,206.0.71.128/25,206.0.68.0/23,单位 地址块 二进制表示 地址数ISP 206.0.64.0/18 11001110.00000000.01* 16384大学 206.0.68.0/22 11001110.00000000.010001* 1

33、024一系 206.0.68.0/23 11001110.00000000.0100010* 512二系 206.0.70.0/24 11001110.00000000.01000110.* 256三系 206.0.71.0/25 11001110.00000000.01000111.0* 128四系 206.0.71.128/25 11001110.00000000.01000111.1* 128,43/,CIDR 地址块划分举例,因特网,206.0.68.0/22,206.0.64.0/18,ISP,大学 X,一系,二系,三系,四系,206.0.71.128/26 206.0.71.192

34、/26,206.0.68.0/25 206.0.68.128/25 206.0.69.0/25 206.0.69.128/25,206.0.70.0/26 206.0.70.64/26 206.0.70.128/26 206.0.70.192/26,206.0.70.0/24,206.0.71.0/25,206.0.71.0/26 206.0.71.64/26,206.0.71.128/25,206.0.68.0/23,这个 ISP 共有 64 个 C 类网络。如果不采用 CIDR 技术,则在与该 ISP 的路由器交换路由信息的每一个路由器的路由表中,就需要有 64 个项目。但采用地址聚合后,

35、只需用路由聚合后的 1 个项目 206.0.64.0/18 就能找到该 ISP。,44/,最长前缀匹配,使用 CIDR 时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果。 应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配(longest-prefix matching)。 网络前缀越长,其地址块就越小,因而路由就越具体(more specific) 。 最长前缀匹配又称为最长匹配或最佳匹配。,45/,最长前缀匹配举例,收到的分组的目的地址 D = 206.0.71.128 路由表中的项目:206.0.68.0/22 (ISP)206.0

36、.71.128/25 (四系),查找路由表中的第 1 个项目,AND D = 206. 0. 01000100. 0,第 1 个项目 206.0.68.0/22 的掩码 M 有 22 个连续的 1。,M = 11111111 11111111 11111100 00000000,因此只需把 D 的第 3 个字节转换成二进制。,M = 11111111 11111111 11111100 00000000,206. 0. 01000100. 0,与 206.0.68.0/22 匹配,46/,最长前缀匹配举例,收到的分组的目的地址 D = 206.0.71.128 路由表中的项目:206.0.68

37、.0/22 (ISP)206.0.71.128/25 (四系),再查找路由表中的第 2 个项目,AND D = 206. 0. 71. 10000000,第 2 个项目 206.0.71.128/25 的掩码 M 有 25 个连续的 1。,M = 11111111 11111111 11111111 10000000,因此只需把 D 的第 4 个字节转换成二进制。,M = 11111111 11111111 11111111 10000000,206. 0. 71. 10000000,与 206.0.71.128/25 匹配,47/,最长前缀匹配,D AND (11111111 1111111

38、1 11111100 00000000)= 206.0.68.0/22 匹配 D AND (11111111 11111111 11111111 10000000)= 206.0.71.128/25 匹配 选择两个匹配的地址中更具体的一个,即选择最长前缀的地址。,48/,使用二叉线索查找路由表,当路由表的项目数很大时,怎样设法减小路由表的查找时间就成为一个非常重要的问题。 为了进行更加有效的查找,通常是将无分类编址的路由表存放在一种层次的数据结构中,然后自上而下地按层次进行查找。这里最常用的就是二叉线索(binary trie)。 IP 地址中从左到右的比特值决定了从根结点逐层向下层延伸的路径

39、,而二叉线索中的各个路径就代表路由表中存放的各个地址。 为了提高二叉线索的查找速度,广泛使用了各种压缩技术。,49/,用 5 个前缀构成的二叉线索,32 位的 IP 地址 唯一前缀 01000110 00000000 00000000 00000000 0100 01010110 00000000 00000000 00000000 0101 01100001 00000000 00000000 00000000 011 10110000 00000010 00000000 00000000 10110 10111011 00001010 00000000 00000000 10111,50/,小结,转发分组算法 划分子网 子网掩码 CIDR,51/,作业,上交作业 P175 9,20,21,23,27 课后作业 P176,28-37,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学课件 > 大学教育

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1