第2章TCPIP协议分析-5IP路由协议
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
L3
交换机
Si
路由器
VLAN 8 VLAN 1
VLAN 6
VLAN 1 VLAN 5
用路由器实现LAN-LAN互连
R4
R1
R2
R5
华北地区主干网
R3 北京邮电大学校园网
100Mbps
北京大学校园网 LAN
155Mbps
LAN 清华大学校园网 R6
LAN
LAN R7
WAN 64Kbps
DDN
WAN
WAN 2Mbps 微波
动态路由适用于网络规模大、网络拓扑复杂的 网络。当然,各种动态路由协议会不同程度地占用 网络带宽和CPU资源。
根据是否在一个自治域内部使用,动态 路由协议分为:
(1)内部网关协议(IGP-Interior Gateway Protocol)
在自治系统(AS)边界内部运行的路由协议为 内部网关协议(如:RIP、OSPF、IS-IS、IGRPE和 IGRP)
讨论路由选择算法涉及的主要参数:
跳数(hop count)— 分组从源结点到达目的结 点经过的路由器的个数
带宽(bandwidth)— 链路的传输速率 延时(delay)— 分组从源结点到达目的结点花费
的时间 负载(load)— 通过路由器或线路的单位时间通
信量 可靠性(reliability)— 传输过程中的误码率 开销(overhead)— 传输过程中的耗费,与所使
算法:Route_IP_Datagram(datagram, routing_table)
从数据库中提取目的IP地址ID;计算目的网络的网络地址IN; if IN = 某直接相连网络的地址 then 通过该网络发送该数据报
(包括把ID转换成物理地址、封装数据报及发送该帧。) else for 路由表中的每一项 do
N = ID逐位与子网掩码“与” if N = 该表项中的网络地址字段 then 将本数据报发往该表项中的下一跳地址所指定的路由器 endforloop else if 表中包含了一个默认路由 then 将本数据报发往该表项中的默认路由器 if 没有找到匹配的表项 then 宣布路由选择错误;
例: R2的路由表
then 通过该网络把数据报交付到目的地D(其中涉及到把D 转换成物理地址、封装数据报及发送该帧。) else if 表中包含特定于具体主机的一个到D的路由
then 把数据报发送到表中指定的下一跳 else if 表中包含到网络N的一个路由
then 把数据报发送到表中指定的下一跳 else if 表中包含了一个默认路由
(6)路由选择算法
标准路由选择算法
基于路由表 (网络地址,下一跳地址)
前三个比特对地址类型和格式 进行了编码(A、B、C和D)
目的网络 N1 N2 N3
: :
下一跳地址 R1 R2 R2
: :
IP选路算法: RouteDatagram(Datagram,RoutingTable)
从数据库中提取目的IP地址D,并计算网络前缀N; if N与任何直接相连的网络的地址匹配
30.0.0.6 30.0.0.7
路由到 直接投递 直接投递 20.0.0.5 30.0.0.7
40.0.0.7
子网路由选择算法
基于路由表 (子网掩码,网络地址,下一跳地址)
子网掩码和目的地址逐比特“与”操作,再与网络地址相比较。
目的网络 N1 N2 N3
: :
子网掩码 Mask 1 Mask 2 Mask 3
路由 选择
… …
输入端口 123
输入端口 123
分组处理 转发表
交换结构
输出端口 321
输出端口 321
分组 转发
路由表结构
共有内容
– 目标网络地址 – 目标网络的网络地址以及相应的子网掩码。 – 网关地址 – 接口
此外,依厂商不同,路由表中还会有
– 标记 – 生成该路由条目的协议 – 管理距离值 – 开销 – 该路由条目生存的时间等
(2)路由器功能
• 实现远程网络的互联(DDN、LAN、ATM…) • 数据在各种链路协议间的转换(HDLC、PPP、FR) • 流量管理(QOS) • 互联网络的“邮递员”-数据包路由(静态路由、
动态路由…)
Si
路由器
Si
主干交换机
千兆以太网 主干网
路由器
VLAN 1
VLAN 7 L2 交换机
路由表的初始化一般有以下几种情况:
a. 在系统启动时从外存中读取完整的路由表,而在系统 关闭时将当前的路由表(已经经过刷新)保存到外存中, 供下次启动时使用;
b. 系统启动使提供一个空路由表,使用命令填充初始表 项,然后通过路由协议逐步刷新;
c. 系统启动时,通过路由器所直接连接的周边网络推导 出一组初始路由,然后再通过路由协议,从周边路由器 那里获得距离更远的网络的路由信息,如此不断通过已 知网络获取未知网络的路由信息,直到逐步掌握全网的 路由信息。
用的链路带宽相关
1、自治系统
Internet是由大量的AS组成,各个AS由不同机构操纵。
主干网络
核心路由器
R
R
R
网络
自治系统
自治系统 AS
自治系统 AS
每个自治系统有一个唯 一的 16 bit 标识符
2、路由协议分类
(1)静态路由(Static routing)
静态路由是在路由器中设置的固定的路由表。除 非网络管理员干预,否则静态路由不会发生变化。由 于静态路由不能对网络的改变作出反映,一般用于网 络规模不大、拓扑结构固定的网络中。
间接转发的过程是先通过路由选择功能选定某一 个下一跳路由器,并把分组封装到物理帧中,发送到 这个下一跳路由器上,由下一跳路由器进行进一步转 发。
R2的路由表
• 默认路由和特定主机路由
在选路时,若未能在路由表中搜索到与目的地址 相匹配的表项,那么 IP 协议可以采用一条预定义的 默认路由,将分组转发到一个默认的下一跳路由器上; 默认路由用来进一步减少路由表的规模。
WAN
LAN
WAN WAN
R8
LAN
R9
512Kbps 256Kbps WAN DDN DDN
WAN
128Kbps FR WAN
校园网1
校园网2 天津地区 河北地区 河北院校校园网
路由器实现LAN-WAN-LAN互连
(3)路由器基本结构
3——网络层 2——数据链路层 1—静态路由的优点是简单、高效、可靠,还可以提 高安全性。在所有的路由中,静态路由优先级最高。 当动态路由与静态路由发生冲突时,以静态路由为准。
(2)动态路由(Dynamic routing)
动态路由是网络中的路由器之间相互通信, 传递路由信息,利用收到的路由信息更新路由器表 的过程。
根据实测或估计的距离、时延和网络拓扑结构 等度量权值,自动计算最佳路径和建立路由表,而 且能自动适应网络拓扑结构的变化,实时、动态地 更新路由表.
下一跳 40.0.0.7 直接投递 直接投递 128.1.0.9
路由器基本工作原理-路由转发
• IP packet
•
查找直连路由
•
查找主机路由
•
查找网段路由
•
查找默认网关
• 丢弃
添加静态路由 Route add (系统重启后不保存这些路由) Route add –p (不管计算机启动多少次,路由都会在) 更改网关 Route change (当需要优化路由中的数据报传输时,可以 用该命令更改分配给特定路由的度量标准) 删除路由 Route delete (允许使用通配符来删除同类的路由) Route delete –f (清除所有网关入口的路由表)
30.0.0.0
40.0.0.0
128.1.0.0
192.4.10.9
R1
R2
R3
30.0.0.7
40.0.0.8 40.0.0.7
128.1.0.8 128.1.0.9
192.4.10.9
目的网络 30.0.0.0 40.0.0.0 128.1.0.0 192.4.10.0
掩码 255.0.0.0 255.0.0.0 255.255.0.0 255.255.255.0
默认路由被定义为网络编号为 0.0.0.0 的路由。 特定主机路由:指定每个主机的路由使本地网络 管理员对网络的使用有更多的控制,允许对它进行测 试,并且也可以用于安全访问的控制。 在调试网络连接或选路表时,为单个主机指定一 个特殊路由的能力尤其有用。
(5)路由表的建立和刷新
路由表的建立也就是路由表的初始化。路由表 的建立是在路由器启动的时候进行的,路由器启动 时首先建立一个初始路由表,然后通过路由协议逐 步进行路由刷新,以反映真实的网络拓扑。
(2)外部网关协议EGP(Exterior Gateway Protocol)
在自治系统之间运行的路由协议为外部网关 协议.
自治系统与路由选择协议
域内路由协议
(1)距离矢量路由选择
距离矢量路由选择(Distance vector routing)是让路 由器维护一个路由表(即向量),路由表中存放着到达每个 目的站点已知的最佳距离和路径。通过与相邻路由器交换信 息,实现路由表的更新。该算法更新过程慢、交换信息量大、 收敛速度慢,并且在刷新的过程中容易发生远近路由器路径 不一致的问题。
-f 选项和别的命令一起使用时,会在运行该命令前先清 除路由表。
2.5.2 路由协议
为了保证选路的正确,任何一个路由器都必须了解 全部网络或部分网络的路由信息。为此,TCP/IP定义了 一组路由协议实现路由信息的自动获取:
在路由器之间传播网络的动态变化信息及其相应 的路由信息; 使路由器根据获得的知识实现特定的路由算法; 使路由器根据计算结果维护路由表,并为数据报 确定传输路径。
对照发方和目的主机的网络编号; ARP映射IP地址为MAC地址。
路由器R2的概念路由表
路由器R2直接连接网络2和网络3,因此,R2能将数据报 直接发往连在这两个网络上的任何目的主机。 当一个数据报的目的地在网络4中时,R2就需将数据报发往 路由器R3。
间接路由
当路由器与目的结点不在同一个网络中时,无法 直接转发,需采用间接转发方式。
需要考虑的要素:
a. 可升级性和可扩展性:协议本身在不改变其基本操作和向 后兼容的前提下加入新功能的能力(新功能可能包括组播、 QoS选路等)。可升级性是由协议自身的能力所决定的。
b. 环路避免:路由协议在计算和生成新的路由表时,应该能 够避免环路的出现,特别时在网络拓扑发生改变的不稳定期间, 避免环路的难度很大。
网络协议
第2章 TCP/IP协议分析
TCP/IP协议族 编址与地址解析 网际协议 网际控制消息协议 IP路由协议 IP组播协议 传输层协议 应用层协议
2.5 IP路由协议
路由是指导IP报文发送的路径信息。
(N,R1,M)
R 1
目标网络N
其它网络
2.5.1 路由转发
(4)基本路由转发方式
直接路由 间接路由 默认路由 特定主机路由
直接路由
指在一个物理网络上,数据报从一台机器直接传 送到另一台机器。
直接路由是在配置完路由器网络接口的IP地址后 自动生成的,因此,如果没有对这些接口进行特殊的 限制,这些接口所直连的网络之间就可以直接通信。
发方如何知道与目的地是否同处一个网络?
c. 收敛速度:当网络拓扑改变时(链路失效或信网络加入 等),路由协议必须能够将该信息发布到整个网络中,使每个 路由器都能根据该信息计算和生成新的路由表,反映网络拓扑 的变化。收敛速度是路由协议的一项重要性能。
d. 路由算法:路由协议所采用的路由算法也将影响到协议的 性能。目前的路由协议中存在着两种基本的路由算法(距离向 量法和链路状态法)。
then 把数据报发送到表中指定的默认路由器 else 宣布路由选择错误;
例: R2的下一跳路由选择
10.0.0.0
20.0.0.0
30.0.0.0
40.0.0.0
R1
R2
R3
10.0.0.5
20.0.0.6 20.0.0.5
目的网络 20.0.0.0 30.0.0.0 10.0.0.0 40.0.0.0
(1)路由器基本概念
Server PC
中心机房
MP3600
网络上传输的IP数据 包就是“行人、车辆”
公共IP网 络
(Internet)
路由器是IP互联网络 的枢纽、主要节点设
备、“交通警察”
分支机构二
PC MP2690
PC
MP2630
分支机构一
PC
路由器通过一定的策略 决定数据的转发。转发
策略称为路由选择 (routing)
: :
下一跳地址 R1 R2 R2
: :
掩码和数据报转发
目的地址
往往只包含目的地的网络地址 掩码
决定了第一部分网络地址的长度 下一跳
如果下一跳是一个路由器,则必须给出该路由器的 IP地址。
if ( (Mask[i]&D) = = Destination[i]) forwarding to NextHop[i]