计算机网络原理(经典).ppt_第1页
计算机网络原理(经典).ppt_第2页
计算机网络原理(经典).ppt_第3页
计算机网络原理(经典).ppt_第4页
计算机网络原理(经典).ppt_第5页
已阅读5页,还剩121页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机网络原理 第6章 网络互连 1 内容安排 n本章讨论网络互连问题,即多个网络通过路由 器互连成为一个互联网的各种问题 n互连网的核心技术是网际协议IP,只有较深入 的掌握了IP协议的主要内容,才能理解因特网 是怎样工作的。此外还要讨论因特网的路由选 择协议,以及介绍因特网控制报文协议ICMP 和因特网管理协议IGMP。最后简要讨论下一 代的网际协议IPv6的主要内容 2 n本章重要概念 qIP地址与物理地址的关系 q传统的分类的IP地址(包括子网掩码)和无分类域 间路由选择CIDR q路由选择协议的工作原理 3 n内容安排 q6.1 路由器在网际互连中的作用 q6.2 因特网的网际协议IP q6.3 划分子网和构造超网 q6.4 因特网控制报文协议ICMP q6.5 因特网的路由选择协议 q6.6 IP多播和因特网组管理协议IGMP q6.7虚拟专用网VPN和网络地址转换NAT q6.8下一代的网际协议IPv6(IPng) 4 6.1 路由器在网际互连中的作用 n在现实世界中,单一的网络无法满足各种用户 的多种需求,因此我们经常使用的计算机网络 往往由许多种不同类型的网络互连而成。这些 通过网络相互连接的计算机不仅仅在物理上时 连通的,更重要的是它们能够进行通信 n这些网络通过路由器实现连接。在互联网中, 路由器起到关键作用。 n本节首先讨论路由器的构成,接着介绍路由器 的关键构件交换结构,最后给出互联网和 因特网的概念 5 6.1.1路由器的构成 n路由器的作用 q当主机A和主机B发送数据时,如果它们连接到同一 个网络上,则数据报直接交付给目的主机B而不需 要通过路由器,这叫做直接交付 q如果目的主机C和源主机A不是连接到同一个网络 上,则应将数据报发送给本网络上的某个路由器, 由该路由器按照转发表指出的路由将数据报转发给 下一个路由器,这叫做间接交付。在数据报传输路 径上的最后一个路由器与目的主机在同一个网络中 ,由该路由器将数据报直接交付给目的主机C。 q可见离开路由器就无法在互联网上传送数据 6 n路由器的构成 q路由器是一种具有多个输入端口和多个输出端口的 专用计算机或网络设备,其任务是转发分组。 q路由器将某个端口收到的分组,按照分组要去的目 的网络,将分组从某个合适的输出端口转发给下一 跳路由器。下一跳路由器也按此处理,直到目的地 q路由器的转发分组视网络层的主要工作 7 n整个路由器结构可划分成两大部分: q路由选择部分 q分组转发部分 输入端口 输入端口输出端口 输出端口 路 由 选 择 分 组 转 发 路由选择协议 路由表 1 1 11 2 22 2 33 3 3 转发表 分组处理 交换结构 路由选择处理机 8 n路由选择部分 q也叫做控制部分,核心构件是路由选择处理机。 q路由选择处理机的任务是根据所选定的路由选择协 议构造出路由表,同时经常或定期和相邻路由器交 换路由信息而不断更新和维护路由表(思考:why? ) 9 n分组转发部分由三部分组成 q交换结构 q一组输入端口 q一组输出端口 10 q交换结构 n又称为交换组织,作用是根据转发表对分组进行处理,将 某个输入端口进入的分组从一个合适的输出端口转发出去 。 n交换结构本身就是一种网络,但这种网络完全包含在路由 器之中,因此交换结构可看成“在路由器中的网络” 11 n转发和路由选择的区别 q转发:路由器根据转发表将用户的IP数据报从合适的端口转 发出去,转发表是根据路由表而来的,必须包含完成转发功 能所必须的信息,即在转发表每一行包含从要到达目的网络 到输出端口和某些MAC地址(例如下一跳的以太网地址)的 映射 q路由选择:按照复杂的分布式算法,更具从各相邻路由器所 得到关于整个网络的拓扑变化情况,动态地改变所选择的路 由,路由表一般仅包含从从目的网络到下一跳的映射 q转发表和路由表使用不同的数据结构实现会带来一些好处, 这是因为在转发分组时,转发表的结构应当使查找过程最优 化,而路由表则需要对网络拓扑变化的计算最优化。路由表 总是用软件实现的,而转发表甚至可用特殊硬件实现 12 n输入端口和输出端口 q物理层 q数据链路层 q网络层 n路由器之间交换路由信息的分组(RIP,OSPF),送交路 由器的路由选择部分中的路由选择处理机 n数据分组,按照分组首部中的目的地址查找转发表,根据 得出的结果,分组经过交换结构到达合适的输出端口 n一个路由器的输入端口和输出端口就做在路由器的线路接 口卡上 13 q输入端口中的查找和转发功能在路由器的交换功能 中是最重要的,为了使交换功能分散化,往往将复 制的转发表放在每一个输入端口中(虚线所示)。 路由选择处理机负责对各转发表的副本进行更新, 这些副本常称为“影子副本”。分散化交换可以避免 在路由器中的某一点上出现瓶颈 14 q以上的查找转发表和转发分组概念并不复杂,但是 路由器要求必须以很高的速率转发分组,此种速率 称为线速。最理想的情况时输入端口的处理速率能 够跟上线路将分组传送到路由器的速率。 Mpps(百万分组每秒) 15 n当一个分组正在查找转发表时,后面又紧跟着 从这个输入端口收到另一个分组。这个后到的 分组就必须在队列中排队等候,因而产生了一 定时延 物理层处 理 数据链路 层处理 网络层处理 分组排队 查表和转发 从 线 路 接 收 分 组 交 换 结 构 16 n输出端口从交换结构接收分组,然后将它们发 送到路由器外面的线路上。 物理层处 理 数据链路 层处理 网络层处理 分组排队 缓存管理 向 线 路 发 送 分 组 交 换 结 构 17 n从以上讨论可以看出,分组在路由器的输入端 口和输出端口都可能会在队列中排队等候处理 。若分组处理的速率赶不上分组进入队列的速 率,则队列的存储空间最终必定减少到0,这 就使后面再进入队列的分组由于没有存储空间 而丢弃 18 6.1.2交换结构 n交换结构式路由器的关键构件。正是这个交换 结构将分组从一个输入端口转移到某个合适的 输出端口 q通过存储器进行交换 q通过总线进行交换 q通过纵横交换结构(常称为互联网络)进行交换 19 q通过存储器进行交换 n最早使用普通的计算机作为路由器,用CPU作为路由选择 处理机,路由器的输入和输出端口的功能和传统的操作系 统中的I/O设备一样 n现代许多路由器也通过存储器进行交换 存 储 器 20 q通过总线进行交换 n数据报从输入端口通过共享的总线直接传送到合适的输出 端口,不需要路由选择处理机的干预 n同一个时间只能有一个分组在总线上传送,因此路由器的 转发带宽就受到总线速率的限制 总线 21 q通过纵横交换结构(常称为互联网络)进行交换 n2N条总线,节点是否接通 22 6.1.3互联网与因特网 n互连在一起的网络要进行通信,需要解决: q不同的寻址方案 q不同的最大分组长度 q不同的网络接入机制 q不同的超时控制 q不同的差错恢复方法 q不同的状态报告方法 q不同的路由选择技术 q不同的用户介入控制 q不同的服务(面向连接,连接) q不同的管理与控制方式等 23 n从一般概念讲,将网络互相连接起来要使用一 些中间设备(中间系统),ISO术语称为中继 系统,根据中继系统所在层次,可以分为 q物理层中继系统,即转发器(repeater,中继器) q数据链路层中继系统,即网桥或桥接器(bridge) q网络层中继系统,即路由器(router) q网桥和路由器的混合物桥接器(brouter),不普遍 q在网络层以上的中继系统,称为网关(gateway),目 前使用的比较少 24 n因特网在IP层采用了标准化协议。许多网络通 过路由器互连,它们都使用相同的网际协议 IP,因此可以将互连之后的网络看成一个虚拟 互联网络,即逻辑互联网络,简称IP网。使用 虚拟互联网络的好处是:当互联网上主机进行 通信时,就好像在一个网络上通信一样,它们 看不见互连的各具体的网络的异构细节。 25 n互联网络的概念 虚拟互联网络 (IP网) 26 ninternet(互联网或互连网)是一个通用名词,泛 指多个计算机网络互连而成的虚拟网络 nInternet(因特网)是一个专用名词,指当前最大 的、开放的、由众多网络相互连接而成的特定 计算机网络,它采用TCP/IP协议族,其前身 是ARPANET 27 6.2 因特网的网际协议IP n网际协议IP是TCP/IP体系中两个最主要协议之 一,也是最重要的因特网标准协议,与IP协议 配套使用还有四个协议 q地址解析协议ARP q逆(反向)地址解析协议RARP q因特网控制报文协议ICMP q因特网组管理协议IGMP 28 n网际协议IP及其配套协议 各种应用层协议 (TELNET,FTP,SMTP) TCP UDP IP 与各种网络接口 物理硬件 ICMPIGMP ARPRARP 应用层 运输层 网际层 网络接口层 29 6.2.1分类的IP地址 n在TCP/IP体系中,IP地址是一个最基本的概念 。有关IP最重要的文档就是RFC791,很早就 成了因特网的正式标准 q1 IP地址及其表示方法 q2 常用的三种类别的IP地址 30 n1 IP地址及其表示方法 q把整个Internet看成为一个单一的、抽象的网络 qIP地址:每个连接在Internet上的主机(路由器) 上分配一个在全世界范围内唯一的32bit的标识符, IP地址的结构使我们可以在因特网上很方便的进行 寻址 qIP地址现在由因特网名字与号码指派公司ICANN进 行分配。 qIP地址的编址经历了三个阶段: n分类的IP地址,1981年通过相应标准 n子网的划分,1985年通过相应标准 n构成超网, 1993年通过并得到推广应用 31 n最基本的分类IP地址:将IP地址划分成若干个 固定类,每一类地址都由两个固定长度的字段 组成, q其中一个字段是网络号net-id,它标志主机(路由 器)所连接到的网络 q另一个字段是主机号host-id,标志主机(路由器) IP地址:=, 32 nA类,B类和C类是最常用的 n今年来已经广泛使用不分类IP地址进行路由选择, A,B,C类区分已成为历史 IP地址分类 分类字节1字节2字节3字节4 Class A0NNNNNNN (1-126) Class B10NNNNNN (128-191) Class C110NNNNN (192-223) Class D1110后跟28比特的组播地址(开始) Class E1111,为将来使用保留(开始) 33 n路由器为转发分组而查找转发表所花费的时间 要尽量短。如果把所有目的主机的路由全部写 入转发表中,就会有很多路由是重复的,我们 应将重复的路由合并。 n转发表只使用IP地址中的网络号net-id来查找 路由,只要IP数据报能够正确到达目的网络, 就可在这个网络上直接交付给目的主机而不在 需要经过其他路由器转发 34 n路由器转发分组的步骤 q1,先按所要找的IP地址中网路号net-id把目的网络 找到:根据IP地址最前面的类别比特,很容易确定 网络字段的准确字节数 q2,当分组到达目的网络后,再利用主机号host-id 将数据报直接交付给目的主机 Net-id下一跳 E0 E1 E2 35 n将IP地址划分成3各类别,当初是这样考虑的 :各种网络的差异比较大,有的网络拥有很多 主机,有的网络上主机很少,将IP地址分类可 更好满足不同用户的要求 nA类IP地址网络号不多,现在能申请到B类和C 类 n当申请到一个IP地址后,实际上只获得了一个 net-id,各个主机号host-id可自行分配 36 n我们常常将32bit的IP地址中的每8个比特用其 等效十进制数字麦示,并且在这些数字之间加 上一个点。这就是点分十进制记法。 IP地址的“点分十进制记数法”: 10000010 00001011 00000011 00011110 130 11 3 30 第一字段:128191为B类,192223为C类。 37 n2 常用的三种类别的IP地址 nA类地址可供使用的网络号是126个(27-2) q第一,IP地址中的全0标示“这个(this)”,net-id字段全 部为0的IP地址是个保留地址,意思是本网络 q第二,net-id字段为127保留用作本地软件环回测试 本主机用(后面3个字节值任意,但不能是0和全1 ,即和55) 38 nB类地址网络数为214 nC类地址网络数为221 分类网络号范围网络数目主机部分可 能值 Class A - 126224- 2=167772 14 Class B - 214=16384216-2=65534 Class C - 233.255.255. 0 221=2097152 28-2=254 39 n一般不使用的特殊IP地址 Net-idHost-id源地址 使用 目的地 址使用 意义 00yN在本地网络上的主机 0Host-idYN在本地网路上的某个主机 全1全1NY只在本网络上进行广播(各 路由器均不转发) Net-id全1NY对net-id上所有主机进行 广播 127任何数yy用作本软件环回测试之用 40 nRFC1918将 q-55 q-55 q-55 n以上地址资源作为预留地址,用作内部专用地 址,不能直接相连到因特网上 41 nIP地址具有一些重要特点 n(1 ) IP地址是一种分等级的地址结构。 n(2) 当一个主机同时连接到两个网络上时(作路由器用的主机),该 主机就须同时具有两个相应的IP地址,其网络号是不一样的。 n(3)按照Internet的观点用转发器或网桥连接起来的若干个局网仍 为一个网络,这些局域网都具有相同的网络号net-id。 n(4)在IP地址中,所有分配到net-id的网络(不管是第4章讨论的局域 网还是第5章讨论的广域网)都是平等的。 n(5)IP地址有时也可用来指明一个网络的地址。这时只要将该IP 地址的主机号字段置为全0即可。例10000;175890 0和201123560这三个IP地址(分别是A类、B类和C类地址) 都指的是单个网络的地址。 42 6.2.2IP地址与硬件地址 nIP地址和硬件地址的区别 q从层次上看,物理地址是数据链路层和物理层使用 的地址,而IP地址是网络层和以上各层使用的地址 首部应应用层层数据 首部应应用层层数据 首部应应用层层数据 IP数据报 网络层及 以上使用 IP地址 TCP报文 MAC帧 IP地址 硬件地址 链路层及 以下使用 硬件地址 43 nIP地址放在IP数据报的首部,而硬件地址则放在 MAC帧的首部。在网络层和网络层以上使用的是 IP地址,而数据链路层及以下使用的是硬件地址 IP1 HA1 IP4IP5 IP6IP2 IP3 路由器R1 路由器R2 主机H2 HA2 HA3HA4HA5HA6 IP1到IP2IP1到IP2 IP1到IP2 主机H1 HA1到HA3HA4到HA5HA6到HA2 44 n上图总不同层次、不同区间的源地址和目的地 址 在网络层写入 IP数据报首部的 源地址源地址源地址源地址 在数据链路层写入 MAC帧首部的 IP1IP2 IP1IP2 IP1IP2 HA1HA3 HA4HA5 HA6HA2 从H1到R1 从R1到R2 从R2到H2 45 n需要强调的是 q1。在IP层抽象的互联网上只能看到IP数据报 q2。虽然在IP数据报首部有源站IP地址,但路由器 只根据目的站IP地址的网络号进行路由选择 q3。在具体的物理网络的链路层,只能看见MAC帧 q4。尽管互连在一起的网络的硬件地址体系各不相 同,但IP层抽象的互联网却屏蔽了下层这些很复杂 的细节,只要我们在网络层上讨论问题,就能够使 用统一的、抽象地IP地址研究主机和主机或路由器 之间的通信 46 6.2.3ARP、RARP n主机或路由器怎样知道应当在MAC帧的首部 填入什么样的硬件地址? nIP地址不能直接用来进行数据通信,这是因为 IP地址只是主机在抽象的网路层中的地址。若 要将网络层中传送的数据报交给主机,还要传 到链路层转变成MAC帧才能发送,因此最总 还是必须使用硬件地址 47 n由于IP地址有32bit,而局域网的硬件地址是 48bit,因此他们没有一个简单的映射关系 n由于网络上主机经常变动,在主机中应存放一 个从IP地址到硬件地址的映射表,并且这个映 射表还必须能够经常动态更新 nARP:地址解析协议 48 n每一个主机都设有一个ARP高速缓存,里面有 所在局域网上的各主机和路由器的IP地址到硬 件地址的映射表。 n当主机A向局域网上的主机B发送IP数据报时 ,首先在ARP高速缓存里面查看有无主机B的 IP地址,如有,就查出对应的硬件地址。 主机A 主机B ARP高速缓存 49 n若主机A的ARP高速缓存里面没有主机B的IP 地址项目,则主机A运行ARP。然后按下面步 骤 q1。ARP进程在本局域网上广播一个ARP请求分组 q2。局域网内所有主机运行的ARP进程接收该分组 q3。主机B在请求分组中发现IP地址,发回ARP响应 分组,将主机A的地址映射写入到ARP高速缓存 q4。主机A将主机B的IP地址到物理地址的映射写入 ARP高速缓存 50 51 52 ARP格式 53 ARP Request Hardware type=1 Protocol type=0800(IP) Length of hardware address=6 bytes Length of protocol address=4 bytes Opcode 1 (ARP Request) Senders HD address= 0:a0:24:ec:c1:b4 Senders IP address= Target HD address= ? Target IP address= 5 ARP/RARP帧 Ethernet报头 Destination=ff:ff:ff:ff:ff:ff Source= 0:a0:24:ec:c1:b4 Ethertype=0806(ARP) FF FF FF FF FF FF 00 A0 24 EC C1 B4 08 06 00 01 08 00 06 04 00 01 00 A0 24 EC C1 B4 80 01 02 07 00 00 00 00 00 00 80 01 02 0F 54 ARP Reply Hardware type=1 Protocol type=0800(IP) Length of hardware address=6 bytes Length of protocol address=4 bytes Opcode 2 (ARP Replyt) Senders HD address= 8:0:20:e:28:ef Senders IP address= 5 Target HD address= 0:a0:24:ec:c1:b4 Target IP address= ARP/RARP帧 Ethernet报头 Destination= 0:a0:24:ec:c1:b4 Source= 8:0:20:e:28:ef Ethertype=0806 (ARP) 00 A0 24 EC C1 B4 08 00 20 E0 28 EF 08 06 00 01 08 00 06 04 00 02 08 00 20 E0 28 EF 80 01 02 0F 00 A0 24 EC C1 B4 80 01 02 07 55 nARP将保存在高速缓存中的每一个映射地址项 目都设置生存时间,凡超过生存时间的项目就 从高速缓存中删除掉。 nARP是解决同一个局域网上的主机或路由器的 IP地址和硬件地址的映射问题。但如两台主机 不在同一个局域网上,则无法解析(下页图) n从IP地址到硬件地址的解析是自动进行的,主 机用户对这种地址解析过程是不知道的 56 n缺省网关 目的MAC地址:路由器 源MAC地址:主机A 目的IP地址:主机F 源IP地址:主机阿A MAC报头IP报头 57 n逆地址解析协议RARP 58 6.2.4IP数据报的格式 nIP数据报的格式能够说明IP协议具有什么功能 。在TCP/IP的标准中,各种数据格式常常以 32bit为单位描述 n一个IP数据报由首部和数据两部分组成。首部 的前一部分是固定长度(20字节),是所有IP数 据报必须具有的,在首部的固定部分的后面是 一些可选字段,长度可变 59 IP数据报格式 60 n1IP数据报首部固定部分: q版本号:通信双方IP协议版本须一致。如:IPv4, “0100”。 q首部长度:最大数值15个单位(4字节/单位),最 长60字节。 q服务类型:为PPPDTRCX,其中PPP为优先级、 D=1要求时延小的路由、T=1要求比特率高的路由 、R=1要求可靠性高的路由、C=1要求收费低的路 由。 优先级DTRC未用 34567012 61 q总长度:数据报的总长度,以字节为单位。 n在IP层下面每一种数据链路层都有自己的帧格式,其中包括帧 格式中的数据字段的最大长度,称为最大传送单元MTU,IP报 文(包括首部和数据部分)不能超过MTU n如果IP报文超过MTU的话,则需要分片,此时IP首部中的“总长 度”指分片后每片的首部长度与数据长度的总和 协议MTU(字节)协议MTU(字节 ) 令牌环 (16Mbps) 17914以太网 1500 令牌环 (16Mbps) 4464X.25576 FDDI4352PPP296 62 q标识:长数据报分成多个数据片时所给予的标识。 q标志:MF、DF、X,MF=1(后面还有分片数据报 ),反之为最后一个数据片;DF=0(允许分片) ,反之不允许分片。 q片偏移:以8字节为单位,分片后该数据报在原分 组中的相对位置。 63 q生存时间:TTL,以秒为单位,典型值为32秒,也 可到255秒。 q协议:标识本数据报中数据来自运输层的哪个协议 ,以便目的主机的IP层将数据交给相应的上层处理 。 64 q首部检验和:此字段只检验数据报的首部,不包括 数据部分。每个途径结点对首部重新校验。不采用 CRC,校验算法: n首部看作N个16位字,用反码算术运算将16位字相加后, 将和的反码写入检验和字段 n接收方将首部的所有16位字再使用反码算术运算相加一次 ,将得到的和取反码,若首部未发生变化,结果必为0, 则保留这个数据报,否则丢弃该数据报。 q源地址:4个字节 q目的地址:4个字节 65 n2首部可变部分: qIP首部的可变部分是一个选项字段,主要支持排错 、测量以及安全等。其长度可为140字节,取决于 所选择的项目。 66 6.2.5IP层转发分组的流程 n在因特网中路由器的作用和第5章广域网交换 机中结点交换机非常类似,但有所区别 q路由器是用来连接不同的网络,而结点交换机只是 在一个特定的网络中工作 q路由器是专门用来转发分组,而结点交换机还可接 上许多主机 q路由器使用统一的IP协议,而结点交换机使用所在 网络的特定协议 q路由器根据目的网络找出下一跳,而结点交换机根 据目的站所接入的交换机号找出下一跳 67 n路由表:对每一条路由来说最主要的就是两项 q目的网络地址 q下一跳地址 网1 网2 网3 网4 R1R2R3 目的主机所在的网络下一跳路由器的地址 直接交付,接口0 直接交付,接口1 01 68 n特定主机路由:对特定的目的主机指明一个路 由 n和结点交换机路由表情况类似,路由器也可采 用默认路由减少路由表所占用的空间和搜索路 由表所用的时间 69 n综上,在因特网中某一个路由器的IP层所执行的分组 转发算法如下 q1,从数据报的首部提取目的站的IP地址D,得出目的网络N q2,若N就是与此路由器之间相连的某个网络地址,则这种交 付为直接交付,不需要经过其他路由器 q3,若路由表中有目的地址为D的特定主机路由,则将数据报 传送给路由表中所指明的下一跳路由器,否则执行4 q4,若路由表中有到达网络N的路由,则将数据报传送给路由 表中所指明的下一跳路由器,否则执行5 q5,若路由表有一个默认路由,则将数据报传送给路由表中 所知名的默认路由器,否则执行6 q报告转发分组 70 路由器转发过程 包头校验和有效吗 ? TTL值减1 TTL0 查找到目的地的路由项 找到路由器了吗? 查找下一站的MAC地址 找到MAC地址吗 ? 利用MAC地址封装IP数据包 发送 接收ARP响应,把MAC地 址放放ARP表中 发送ARP请求 发送ICMP错误报文丢弃该数据包 结束 N Y Y Y Y N N N 71 Data Transfer Across Routers 目标机器是否在本网 Yes, 目标网卡MAC address No, 路由器 MAC address 总是使用destinations IP address 检查数据包 TTL减一 目标机器是否在本网 Yes, 目标网卡MAC address No, 另一路由器 MAC address 检查数据包 检查IP address 将数据包发给上一层 目标机器是否在本网 Yes, 目标网卡MAC address No, 路由器 MAC address 总是使用destinations IP address 检查数据包 检查IP address 将数据包发给上一层 检查数据包 TTL减一 目标机器是否在本网 Yes, 目标网卡MAC address No, 另一路由器 MAC address Router 2Router 2 Router 1Router 1 A B C D 72 6.3 划分子网和构造超网 n6.3.1划分子网 n6.3.2使用子网掩码的分组转发过程 n6.3.3无分类编址CIDR 73 6.3.1划分子网 n1.从两级IP地址到三级IP地址 q在ARPANET的早期,IP地址的设计确实不够合理 nIP地址空间的利用率有时很低,有的网络上计算机数目很 少,从网络吞吐量考虑,将大量的主机安装在一个网络上 往往会影响网络性能 n给每一个物理网络分配一个网络号会使路由表变得太大而 使网络性能变坏 n两级的IP地址不够灵活 q为解决上述问题,从1985年起在IP地址中又增加了 一个“子网号字段”,使两级IP地址变为3级,这种做 法叫做划分子网,或子网寻址或子网路由选择,划 分子网已经成为因特网的正式标准协议 74 n划分子网的基本思路 q一个拥有许多物理网络的单位,可将所属的物理网络划分为 若干个子网,但外部看不见(事实上也不关心)这些子网,因 为这个单位对外仍表现为一个没有划分子网的网络 q划分子网的方法是从网络的主机号借用若干个比特作为子网 号subnet-id,而主机号host-id也就相应减少了若干个比特, 于是两级的IP地址在本单位内部就变为三级的IP地址:网络 号,子网号,主机号 q凡是从其他网络发送给本单位某个主机的IP数据报,仍然是 根据IP数据报的目的网络号net-id找到连接在本单位网络上 的路由器。但此路由器在收到IP数据报后,再按目的网络号 net-id和子网号subnet-id找到目的子网,将IP数据报交付给 目的主机 75 n划分子网 76 n2子网掩码 q从一个IP数据报的首部无法判断源主机或者目的主 机所连接的网络是否进行了子网的划分,这是因为 32位的IP地址本身以及数据报的首部都没有包含任 何有关子网的划分信息,因此引入子网掩码 网络号net-id主机号host-id 因特网部分本地部分 net-idsubnet-id 因特网部分本地部分 host-id 因特网部分主机号子网号 11111111111111111111111100000000 net-idsubnet-id00000000 三级IP地址 二级IP地址 子网掩码 划分子网时的网络地址 77 n使用子网掩码的好处是:不管网络有没有划分 子网,不管网络字段net-id的长度是1字节、2 字节还是3字节,只要将子网掩码和IP地址进 行逐比特与运算,就理解得出网络地址,这样 在路由器处理到来分组时就可采用同样的算法 n子网掩码是一个网络或一个子网的重要属性。 路由器在和相邻路由器交换路由信息时,必须 将自己所在网络(或子网)的子网掩码告诉相邻 路由器。 78 n现在因特网规定:所有的网络都必须有一个子网掩码 ,同时在路由器的路由表中也必须有子网掩码这一栏 。如果一个网络不划分子网,那么该网络的子网掩码 就使用默认子网掩码 网络地址缺省掩码 A类地址 B类地址 C类地址 79 n8位扩展屏蔽 8位扩展屏蔽 网络子网主机 172162 160 10101100000100000000001010100000 255255 2550 11111111111111111111111100000000 相与的结果10101100000100000000001000000000 网络号1721620 80 n10位扩展屏蔽 10位扩展屏蔽 网络子网主机 172162 160 101011000001000000000010 10100000 255255 255192 111111111111111111111111 11000000 相与的结果101011000001000000000010 10000000 网络号172162128 81 nC类常用子网掩码 子网 数目 主机 数量 掩码子网借 用位数 主机 位数 2629226 6302435 14144044 3064853 6225262 82 n子网掩码计算 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 1 192 224 240 248 1 1 1 1 1 0 0 252 83 n虽然根据已成为因特网标准协议的RFC950, 子网号不能为全1或全0,但随着无分类域间路 由选择CIDR的广泛使用,现在全1和全0的子 网号也可以使用,需要注意的是,必须弄清路 由器所用的路由软件是否支持全0和全1的子网 号 84 6.3.2使用子网掩码的分组转发过程 n在不划分子网的两级IP地址下,从IP地址得出 网络地址是个很简单的事,但在划分子网的情 况下,从IP地址却不能唯一地得出网络地址来 ,因为网络地址取决于那个网络所采用的子网 掩码,但数据报的首部并没有提供子网掩码的 信息,因此分组转发算法也必须做相应改动 85 n划分子网后分组转发算法 q1.从收到的数据报首部提取目的IP地址D q2.先判断是否为直接交付,对路由器直接相连的网络逐个进 行检查:用各网络的子网掩码和D逐比特相与,看结果是否 和相应的网络地址匹配,若匹配,则将分组进行直接交付, 否则间接交付,执行3 q3.若路由表中有目的地址为D的特定主机路由,则将数据报 传送给路由表所指明的下一跳路由器,否则执行4 q4.对路由表中的每一行(目的网络地址,子网掩码,下一跳地 址),将其中的子网掩码和D逐比特相与,其结果为N,若N 与该行的目的网络地址匹配,则将数据报传送给该行指明的 下一跳路由器,否则执行5 q5.若路由表中有一个默认路由,则将数据报传送给路由表中 所指明的默认路由器,否则执行6 q6.报告转发分组出错 86 n划分子网后分组的转发举例 3 30 38 29 2 28 28 28 28 接口0 2828 接口1 R2 目的网络地址子网掩码下一跳 R2 R1 H1 H2 H3 87 6.3.3无分类编址CIDR n划分子网在一定程度上缓解了因特网发展中的 问题。1992年因特网仍然面临的问题: qB类地址已分配一半,1994年3月将分配完 q因特网主干网上路由表的项目数急剧增长到上万 q整个IPv4的地址空间将全部耗尽 nIETF因特网工程部研究出了无分类编址CIDR 解决前两个问题,第三个问题由IETF的IPv6工 作组解决。 88 n目前CIDR已经成为因特网建议标准。 nCIDR的最主要特点有: q消除了传统的A、B、C类地址以及划分子网的概念 ,而使用各种长度的“网络前缀”代替“网络号”和“子 网号”,使得IP地址由三级减为两级。标记方法为: IP地址:=网络前缀 ,主机号,CIDR使 用“斜线记法”(CIDR记法),记载IP地址后面加上/, 然后写上网络前缀所占的比特数.如 1/20表示在32位IP地址中,网络前缀占 20位,主机号占12位。前缀长度一般在1327之间 。 89 qCIDR将网络前缀相同的IP地址组成“CIDR地址块” ,一个CIDR地址块由地址块的起始地址和地址块 中的地址数来定义。CIDR也可用斜线法来表示。 如/20表示的地址块有212个地址,其起 始地址为。 最小地址10000000000011100010000000000000 最大地址5510000000000011100010111111111111 90 q一个CIDR地址块可以表示很多地址,路由表可以 利用它来查找目的网络。这种地址的聚合常称为路 由聚合,它使得路由表中的一个项目可以表示很多 传统分类地址的路由,也称为构成超网。路由聚合 有利于减少路由器之间的路由选择信息的交换,从 而提高了整个因特网的性能 qCIDR不使用子网,但使用掩码一词(但不交子网掩 码)。对于/20地址块,掩码为 11111111111111111111000000000000(20个连续 1),斜线记法中的数字就是掩码中的1的个数 91 n路由表的项目由网络前缀和下一跳地址组成。 在查找路由表时可能会得到不止一个匹配结果 ,选择哪一条路由成为核心问题。 n结论:应当从匹配结果中选择具有最长网络前 缀的路由,这称为最长前缀匹配。 92 6.4 因特网控制报文协议ICMP n为了提高IP数据报交付成功的机会,在网际层 使用了Internet 控制报文协议ICMP。ICMP允 许主机或路由器报告出错情况和提供有关异常 情况的报告。但ICMP不是高层的协议它仍 是IP层中的协议。ICMP报文作为IP层的数据 报的数据,加上数据报的首部,组成IP数据报 发送出去。 93 nICMP报文格式 类类型代码码检验检验 和 这这4个字节节取决于ICMP报报文的类类型 ICMP的数据部分 ICMP报文 数据部分首部 IP数据报 081631 94 nICMP报文的类型: ICMP 差错报文和ICMP询问报文 。 ICMP报文类型类型的值ICMP报文类型 差错报 告报文3终点不可到达 4源站抑制 11时间 超时 12参数问题 5改变路由 询问报 文8 或 0回送请求或回答 13 或 14时间 戳请求或回答 17 或 18地址掩码请 求或回答 10 或 9路由器询问 或通告 95 nICMP测试:PING命令产生的回声应答 AB B可以到达吗?发送ICMP回声请求 B可以到达。发送ICMP回声应答 96 6.5 因特网的路由选择协议 n6.5.1有关路由选择协议的几个基本概念 n6.5.2内部网关协议RIP n6.5.3内部网关协议OSPF n6.5.4外部网关协议BGP 97 6.5.1有关路由选择协议的几个基本 概念 n1.理想的路由算法 q路由选择协议的核心就是路由算法,即需要何种算 法来获得路由表中的各项目,一个理想的路由算法 应具有如下特点 n算法必须是正确的和完整的。 n算法在计算上应简单 n算法应能适应通信量和网络拓扑的变化,即自适应性 n算法应具有稳定性 n算法应是最佳的(度量值最小) 98 q从路由算法能否随网络通信量或拓扑自适应地进行 调整变化来划分,只有两大类 n静态路由选择策略(非自适应路由选择):简单,开销较小 n动态路由选择策略(自适应路由选择):能较好地适应网络 状态的变化,但实现起来较为复杂,开销较大 99 n2分层次的路由选择协议 q因特网采用的路由选择协议主要是自适应的、分布 式路由选择协议。由于下面两个原因,因特网采用 分层次的路由选择协议 n因特网规模非常大,如果让所有的路由器知道所有的网络 应怎样到达,则路由表将非常大,处理起来也太花时间。 而所有这些路由器之间交换路由信息所需的带宽就会使因 特网的通信链路饱和 n许多单位不愿意让外界了解自己单位网络的布局细节和本 部门所采用的路由选择协议,但同时还希望自己连接到因 特网上 100 q因特网将整个互联网划分成许多较小的自治系统 (AS)。一个自治系统是一个互联网,其最重要的特 点是自治系统有权自主地决定在本系统内应采用何 种路由选择协议。 q因特网把路由选择协议划分两大类 n内部网关协议IGP(IRP,内部路由器协议),即在一个自治 系统内部使用的路由选择协议,如RIP,OSPF n外部网关协议EGP(ERP ,外部路由器协议),若源站和目 的站处在不同的自治系统中(它们使用不同的内部网关协 议),当数据报一个自治系统的边界时,就需要使用一种 协议将路由选择信息传递到另一个自治系统红,此协议即 为EGP 101 n自治系统 自治系统A 自治系统B 自治系统C EGP EGP EGP IGP IGP IGP IGP IGP IGP IGP IGP IGP 102 n总之,使用分层次的路由选择算法,可将因特 网的路由选择协议划分成 q内部网关协议IGP:RIP,OSPF q外部网关协议EGP:BGP 103 6.5.2内部网关协议RIP n1.工作原理 q路由信息协议RIP是IGP中最先得到广泛使用的协 议,它是一种分布式的基于距离向量的路由选择协 议,是因特网的标准协议,最大优点是简单 qRIP协议要求网络中的每一个路由器都要维护从它 自己到其他每一个目的网络的距离,即跳数。从一 个路由器到直接连接的网络的距离定义为1,从一 路由器到非直接连接的网络的距离定义为所经过的 路由器数加1 网1网2网3 网4 R1R2R3 104 qRIP认为一个好的路由就是跳数少,即经过的路由 器数目少,哪怕还存在另一条高速但路由器多的路 由(见下图) qRIP允许一条路径最多只能包含15个路由器,即距 离最大值为16时即相当于不可达。因为RIP只适用 于小型互联网 R1 R2R3 R4 105 nRIP和 OSPF都是分布式路由选择协议,他们 共同特点就是每一个路由器都要不断地和其他 一些路由器交换路由信息 q和哪些路由器交换信息? q交换什么信息? q在什么时候交换信息? 106 q和哪些路由器交换信息? n仅和相邻的路由器交换信息 q交换什么信息? n当前本路由器所知道的全部信息,即自己的路由表 q在什么时候交换信息? n按固定时间间隔交换路由信息,例如30s,当网络拓扑结 构发生变化时,路由器也及时向相邻路由器通告拓扑变化 后的路由信息 107 q收敛:在自治系统中所有的结点都得到正确的路由 选择信息,即对网络拓扑结构观点取得一致,RIP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论