网络层
文章目录
- 网络层
- 网络层服务
- 网络层的核心功能——转发与路由
- 网络层的核心功能——建立连接
- 网络层服务模型
- 虚电路网络
- 数据报网络
- 数据报网络 or 虚电路网络
- IP协议
- IP数据报格式
- IP分片
- IP编址
- 无类域间路由(CIDR)
- 网络地址转换(NAT)
- NAT出现的动机
- NAT的实现
- NAT主要争议
- NAT穿透问题
- 互联网控制报文协议(ICMP)
- IPv6
- 设计IPv6的动机
- IPv6地址表示形式
- IPv6基本地址类型
- IPv4向IPv6过渡
- 路由算法
- 静态路由 VS 动态路由?
- 全局信息 VS 分散信息?
- 链路状态路由算法
- 距离向量路由算法
- 层次路由
- Internet路由选择协议
- RIP协议
- OSPF协议
- BGP协议
- BGP协议
由于参加互连的计算机网络都使用相同的网际协议IP,因此可以把互连以后的计算机网络看成一个虚拟互连网络。所谓虚拟互连网络也就是逻辑互连网络,它的意思就是互连起来的各种物理网络的异构本来是客观存在的,但是我们利用协议IP就可以使这些性能各异的网络在网络层上看起来好像是一个统一的网络。这种使用协议IP的虚拟互连网络可简称为IP网。使用IP网的好处是:当IP网上的主机进行通信时,就好像在一个单个网络上通信一样,它们看不见互连的各网络的具体异构细节(如具体的编址方案、路由选择协议等)。如果在这种覆盖全球的IP网的上层使用TCP协议,那么就是现在的互联网。
网络层服务
-
从发送主机向接收主机传送数据段(segment)
-
发送主机:将数据段封装到数据报(datagram)中
-
接收主机:向传输层交付数据段(segment)
-
每个主机和路由器都运行网络层协议
-
路由器检验所有穿越它的IP数据报的头部域,决策如何处理IP数据报
-
网络层的主要任务是实现网络互连,进而实现数据包在各网络之间的传输。
-
要实现网络层任务,需要解决以下主要问题:
网络层向运输层提供怎样的服务(“可靠传输”还是“不可靠传输”)
网络层寻址问题
路由选择问题
网络层的核心功能——转发与路由
- 转发(forwarding):将分组从路由器的输入端口转移到合适的输出端口
- 路由(routing):确定分组从源到目的经过的路径
- 路由算法确定通过网络的端到端路径
- 转发表确定在本路由器如何转发分组
网络层的核心功能——建立连接
-
数据分组传输之前两端主机需要首先建立虚拟/逻辑连接,网络设备(如路由器)参与连接的建立
-
网络层连接与传输层连接的对比:
网络层连接:两个主机之间(路径上的路由器等网络设备参与其中)
传输层连接:两个应用进程之间(对中间网络设备透明)
网络层服务模型
-
无连接服务:
不事先为系列分组的传输确定传输路径
每个分组独立确定传输路径
不同分组可能传输路径不同
数据报网络(datagram network)
-
连接服务:
首先为系列分组的传输确定从源到目的经过的路径(建立连接)
然后沿该路径(连接)传输系列分组
系列分组传输路径相同
传输结束后拆除连接
虚电路网络(virtual-circuit network)
虚电路网络
-
连接服务与无连接服务
数据报(datagram)网络与虚电路网络是典型两类分组交换网络
数据报网络提供网络层无连接服务
虚电路网络提供网络层连接服务
类似于传输层的无连接服务(UDP)和面向连接服务(TCP),但是网络层服务由主机到主机服务,网络核心实现。
-
虚电路
一条从源主机到目的主机,类似于电路的路径(逻辑连接),分组交换,每个分组的传输利用链路的全部带宽,源到目的路径经过的网络层设备共同完成虚电路功能。
通信过程:呼叫建立——>数据传输——>拆除呼叫
每个分组携带虚电路标识(VCID),而不是目的主机地址
虚电路经过的每个网络设备(如路由器),维护每条经过它的虚电路连接状态
链路、网络设备资源(如带宽、缓存等)可以面向VC进行预分配,预分配资源=可预期服务性能,如ATM的电路仿真(CBR)
-
VC的具体实现
每条虚电路包括:从源主机到目的主机的一条路径。虚电路号(VCID),沿路每段链路一个编号。沿路每个网络层设备(如路由器),利用转发表记录经过的每条虚电路。
沿某条虚电路传输的分组,携带对应虚电路的VCID,而不是目的地址
同一条VC,在每段链路上的VCID通常不同,路由器转发分组时依据转发表改写/替换虚电路号
-
虚电路信令协议(signaling protocols)
用于VC的建立、维护与拆除,路径选择问题
应用于虚电路网络,如ATM、帧中继网络等
目前的Internet不采用
数据报网络
- 网络层无连接
- 每个分组携带目的地址
- 路由器根据分组的目的地址转发分组,基于路由协议/算法构建转发表,检索转发表,每个分组独立选路
- 最长前缀匹配优先:在检索转发表时,优先选择与分组目的地址匹配前缀最长的入口(entry)。
数据报网络 or 虚电路网络
-
数据报网络:
计算机之间的数据交换,“弹性”服务,没有严格时间需求
链路类型众多,特点、性能各异,统一服务困难
“智能”端系统(计算机),可以自适应、性能控制、差错恢复
简化网络,复杂“边缘”
-
ATM(VC网络)
电话网络演化而来
核心业务是实时对话:严格的时间、可靠性需求,需要有保障的服务
“哑”端系统(非智能),如:电话机、传真机
简化“边缘”,复杂网络
IP协议
IP数据报格式
IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP只为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。
-
IP数据报格式
-
版本号字段占4位:IP协议的版本号
-
首部长度字段占4位:IP分组首部长度
-
服务类型(TOS)字段占8位:指示期望获得哪种类型的服务,1998年这个字段改名为区分服务,只有在网络提供区分服务时使用,一般情况下不适用,通常IP分组的该字段的值为00H
-
生存时间(TTL)字段占8位:IP分组在网络中可以通过的路由器数(或跳步数),路由器转发一次分组,TTL减1,如果TTL = 0,路由器则丢弃该IP分组
-
协议字段占8位:指示IP分组封装的是哪个协议的数据包,实现复用/分解。E.g.6为TCP,表示封装的为TCP段;17为UDP,表示封装的是UDP数据报
-
首部校验和字段占16位:实现对IP分组首部的差错检测,计算校验和时,该字段置全0。采用反码算数运算求和,和的反码作为首部校验和字段,逐跳计算、逐跳校验。
-
源IP地址、目的IP地址字段各占32位:分别标识发送分组的源主机/路由器(网络接口)和接收分组的目的主机/路由器(网络接口)的IP地址。
-
选项字段占长度可变,范围1~40B之间:携带安全、源选路径、时间戳和路由记录等内容,实际上很少被使用
-
填充字段占长度可变,范围在0~3B之间:目的是补齐整个首部,符合32位对齐,即保证首部长度是4字节的倍数
IP分片
一个IP包从源主机传输到目标主机可能需要经过多个不同的物理网络。由于各种网络的数据帧都有一个最大的传输单元(MTU)的限制,如以太网帧的MTU是1500;因此,当路由器在转发IP包时,如果数据包的大小超过了出口链路的最大传输单元时,则会将该IP分组分解成很多足够小的片段,以便能够在目标链路上进行传输。这些IP分片重新封装一个IP独立传输,并在到达目标主机时才会被重组起来。
-
网络链路存在MTU(最大传输单元)——链路层数据帧可封装数据的上限,不同链路的MTU不同。
-
IP分片与重组
大IP分组向较小MTU链路转发时,可以被“分片”,1个IP分组分为多片IP分组
IP分片到达目的主机后进行“重组”
IP首部的相关字段用于标识分片以及确定分片的相对顺序,总长度、标识、标志位和片偏移
-
标识字段占16位:标识一个IP分组
-
IP协议利用一个计数器,每产生IP分组计数器加1,作为该IP分组的标识
-
标志位字段占3位:DF = 1 (禁止分片),DF = 0(允许分片)。MF = 1(非最后一片),MF = 0(最后一片或未分片)
-
片偏移字段占13位:一个IP分组分片封装原IP分组数据的相对偏移量,片偏移字段以8字节为单位。
-
IP分片过程
假设原IP分组总长度为L,待转发链路的MTU为M
若L>M,且DF=0,则可以/需要分片
分片时每个分片的标识复制原IP分组的标识
通常分片时,除最后一个分片,其他分片均分为MTU允许的最大分片
一个最大分片可封装的数据应该是8的倍数,因此,一个最大分片可封装的数据为:d = (M - 20)/ 8 * 8
需要的总片数为:n = (L - 20)/ d
每片的片偏移字段取值为:F = d / 8 *(i - 1),1 <= i <= n
每片的总长度字段为:L = d + 10 or L = L -(n - 1)* d
每片的MF标志位为:MF = 1 or 0
IP编址
-
IP分组:源地址-从哪儿来,目的地址-到哪儿去
-
接口:主机/路由器与物理链路的连接
实现网络层功能
路由器通常有多个接口
主机通常只有一个或两个接口(有线的以太网接口,无线的802.11接口)
-
IP地址:32比特编号标识主机、路由器的接口
-
IP地址与每个接口关联
-
IP地址由网络号和主机号组成
-
IP子网:
IP地址具有相同网络号的设备接口
不跨越路由器(第三及以上层网络设备)可以彼此物理联通的接口
-
有类IP地址
-
A类地址:8位网络号,24位主机号,网络号的最高位固定为0
最小网络号为0,保留不指派
第一个可指派的网络号为1,网络地址为1.0.0.0
最大网络号127,作为本地环回测试地址,不指派。最小的本地环回测试地址为127.0.0.1,最大的本地环回测试地址为127.255.255.254
最后一个可指派的网络号为126,网络地址为126.0.0.0
可指派的网络数量为: 2的(8-1)次方 - 2 = 126
每个网络中可分配的IP地址数量:2的24次方 - 2 = 16777214
-
B类地址:10位网络号,16位主机号,网络号的最高两位固定为10
最小网络号也是第一个可指派的网络号128.0
网络地址为128.0.0.0
最大网络号也是最后一个可指派的网络号191.255
网络地址为191.255.0.0
可指派的网络数量为:2的(16-2) = 16384
每个网络中可分配的IP地址数量为:2的16次方 - 2 = 65534
-
C类地址:24位网络号,8位主机号,网络号的最高三位固定为110
最小网络号也是第一个可指派的网络号192.0.0
网络地址为192.0.0.0
最大网络号也是最后一个可指派的网络号223.255.255
网络地址为223.255.255.0
可指派的网络数量为:2的(24-3)次方 = 2097152
每个网络中可分配的IP地址数量为:2的8次方 - 2 = 254
-
D类地址:多播地址,网络号的最高四位固定为1110
-
E类地址:保留为今后使用,网络号的最高4位固定为1111
-
网络类别的区分:
小于127的为A类,128191的为B类,192223的为C类
根据网络类别,就可找出地址中的网络号部分和主机部分(A类地址网络号为左起第一个字节,B类地址网络号为左起前两个字节,C类地址网络号为左起前三个字节)
以下三种情况的地址不能指派给主机或路由器接口:
- A类网络号0和127
- 主机号为“全0”,这是网络地址
- 主机号为“全1”,这是广播地址
地址0.0.0.0是一个特殊的IPv4地址,只能作为源地址使用,表示“在本网络上的本主机”。封装有DHCP Discovery报文的IP分组的源地址使用0.0.0.0;
以127开头且后面三个字节非“全0”或“全1”的IP地址是一类特殊的IPv4地址,既可以作为源地址使用,也可以作为目的地址使用,用于本地软件环回测试,例如常用的环回测试地址127.0.0.1;
地址255.255.255.255是一个特殊的IPv4地址,只能作为目的地址使用,表示“只在本网络上进行广播(各路由器均不转发)”
注意事项:
- 只有A类、B类和C类地址可分配给网络中的主机或路由器的各接口
- 主机号为“全0”的地址是网络地址,不能分配给主机或路由器的各接口
- 主机号为“全1”的地址是广播地址,不能分配给主机或路由器的各接口
-
-
划分子网的IP地址
需求:一个公司原来使用的是一个B类的网络,现在需要增加一些电脑并且,要分为三个网络,请问怎么解决这个问题?
如果为新增网络申请新的网络号则会产生以下弊端:
- 需要等待时间和花费更多的费用
- 会增加其他路由器中路由表记录的数量
- 浪费原有网络中剩余的大量IP地址
从原有网络的主机号部分借用一部分作为子网号来划分子网。
32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特作为子网号
- 子网掩码使用连续的比特1来对应网络号和子网号
- 子网掩码使用连续的比特0来对应主机号
- 将划分子网的IPv4地址与其相应的子网掩码进行逻辑与运算就可得到IPv4地址所在子网的网络地址
给定一个分类的IP地址和其相应的子网掩码,就可知道子网划分的细节:
- 划分出的子网数量
- 每个子网可分配的IP地址数量
- 每个子网的网络地址和广播地址
- 每个子网可分配的最小和最大地址
默认的子网掩码是指在未划分子网的情况下使用的子网掩码
- A类地址的默认子网掩码:255.0.0.0
- B类地址的默认子网掩码:255.255.0.0
- C类地址的默认子网掩码:255.255.255.0
无类域间路由(CIDR)
-
无类域间路由(CIDR)
消除传统的A类、B类和C类地址界限,NetID + SubID ——> Network Prefix(Prefix)可以任意长度
融合子网地址与子网掩码,方便子网划分,无类地址格式:a.b.c.d/x,其中x为前缀长度
子网 201.2.3.64,255.255.255.192——>201.2.3.64/26
提高IPv4地址空间分配效率
提高路由效率,将多个子网聚合为一个较大的子网,构造超网
-
路由聚合
路由聚合(也叫汇总)是让路由选择协议能够用一个地址通告众多网络,旨在缩小路由器中路由选择表的规模,以节省内存,并缩短IP对路由选择表进行分析以找出前往远程网络的路径所需的时间。
层级编址使得路由信息通告更高效
选用更具体的路由:最长前缀匹配优先!
-
DHCP协议
如何获得IP地址?
- “硬编码”,静态配置
- 动态主机配置协议-DHCP,从服务器动态获取IP地址、子网掩码、默认网关地址、DNS服务器名称与IP地址等。“即插即用”,允许地址重用,支持在用地址续租,支持移动用户加入网络。
主机广播“DHCP discover”(发现报文)
DHCP服务器利用“DHCP offer”(提供报文)进行响应
主机请求IP地址:“DHCP request”(请求报文)
DHCP服务器分配IP地址:“DHCP ack”(确认报文)
DHCP工作过程示例
DHCP协议在应用层实现
- 请求报文封装到UDP数据报中
- IP广播
- 链路层广播
DHCP服务器构造ACK报文
- 包括分配给客户的IP地址、子网掩码、默认网关、DNS服务器地址
网络地址转换(NAT)
NAT出现的动机
- IPv4地址耗尽,只能从ISP申请一个IP地址
- 本地网络设备IP地址的变更,无需通告外界网络
- 变更ISP时,无需修改内部网络设备IP地址
- 内部网络设备对外界网络不可见,即不可直接寻址(安全)
NAT的实现
- 替换:利用(NAT IP地址,新端口号)替换每个外出IP数据报的(源IP地址,源端口号)
- 记录:将每对(NAT IP地址,新端口号)与(源IP地址,源端口号)的替换信息存储到NAT转换表中
- 替换:根据NAT转换表,利用(源IP地址,源端口号)替换每个进入内网IP数据报的(目的IP地址,目的端口号),即(NAT IP地址,新端口号)
NAT主要争议
- 路由器应该只处理第三层功能
- 违背端到端通信原则,应用开发者必须考虑到NAT的存在,e.g.,P2P应用
- 地址短缺问题应该由IPv6来解决
NAT穿透问题
- 客户期望连接内网地址为10.0.0.1的服务器,客户不能直接利用地址10.0.0.1直接访问服务器,对外唯一可见的地址是NAT地址:138.76.29.7
- 解决方案1:静态配置NAT,将特定端口的连接请求转发给服务器
- 解决方案2:利用UPnP互联网网关设备协议自动配置。学习到NAT公共IP地址,在NAT转换表中,增删端口映射。
- 解决方案3:中继(如Skype)。NAT内部的客户与中继服务器建立连接,外部客户也与中继服务器建立连接,中继服务器桥接两个连接的分组。
互联网控制报文协议(ICMP)
ICMP Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制信息。控制信息是指网络不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
ICMP使用IP的基本支持,就像它是一个更高级别的协议,但是,ICMP实际上是IP的一个组成部分,必须由每个IP模块实现。
-
互联网控制报文协议ICMP支持主机或路由器的差错报告、网络探询。
-
差错报告报文:目的不可达、源抑制、超时/超期、参数问题、重定向
-
网络探寻报文:回声请求与应答报文,时间戳请求与应答报文
-
例外情况:
几种不发送ICMP差错报告报文的特殊情况:
- 对ICMP差错报告报文不再发送ICMP差错报告报文
- 除第1个IP数据报分片外,对所有后续分片均不发送ICMP差错报告报文
- 对所有多播IP数据报均不发送ICMP差错报告报文
- 对具有特殊地址(如127.0.0.0或0.0.0.0)的IP数据报不发送ICMP差错报告报文
几种ICMP报文已不再使用
- 信息请求与应答报文
- 子网掩码请求和应答报文
- 路由器询问和通告报文
-
ICMP报文的格式
-
ICMP差错报告报文数据封装
IPv6
设计IPv6的动机
-
最初动机:32位IPv4地址空间已分配殆尽
-
其他动机:改进首部格式,快速处理/转发数据报,支持QoS
-
IPv6数据报格式:
固定长度的40字节基本首部
不允许分片
-
优先级:标识数据报的优先级
-
流标签:标识同一“流”中的数据报
-
下一个首部:标识下一个选项首部或上层协议首部(如TCP首部)
-
校验和:彻底移除,以减少每跳处理时间
-
选项:允许,但是从基本首部移出,定义多个选项首部,通过“下一个首部”字段指示
-
ICMPv6:新版ICMP,附加报文类型,多播管理功能
IPv6地址表示形式
- 一般形式:1080:0:FF:0:8:800:200C:417A
- 压缩形式:FF01:0:0:0:0:0:0:43
- IPv4-嵌入形式:0:0:0:0:0:FFFF:13.1.68.3 或 ::FFFF:13.1.68.3
- 地址前缀:2002:43c:476b::/48(注:IPv6不再使用掩码)
- URLs:http://[3FFE::1:800:200C:417A]:8000
IPv6基本地址类型
- 单播:一对一通信
- 多播:一对多通信
- 任意播:一对一组之一(最近一个)通信
IPv4向IPv6过渡
- 不可能在某个时刻所有路由器同时被更新为IPv6,不会有“标志性日期”,IPv4和IPv6路由器的网络如何运行?
- 隧道:IPv6数据报作为IPv4数据报的载荷进行封装,穿越IPv4网络
路由算法
静态路由 VS 动态路由?
-
静态路由
手工配置
路由更新慢
优先级高
-
动态路由
路由更新快,定期更新,及时响应链路费用或网络拓扑变化
全局信息 VS 分散信息?
-
全局信息:
所有路由器掌握完整的网络拓扑和链路费用信息
E.g. 链路状态(LS)路由算法
-
分散信息:
路由器只掌握物理相连的邻居以及链路费用
邻居间信息交换、运算的迭代过程
E.g. 距离向量(DV)路由算法
链路状态路由算法
-
Dijkstra算法
所有结点(路由器)掌握网络拓扑和链路费用,通过“链路状态广播”,所有结点拥有相同信息
计算从一个结点(“源”)到达所有其他结点的最短路径,获得该结点的转发表
k次迭代后,得到到达k个目的结点的最短路径
c(x,y): 结点x到结点y链路费用;如果x和y不直接相连,则=∞
D(v): 从源到目的v的当前路径费用值
p(v): 沿从源到v的当前路径, v的前序结点
N’: 已经找到最小费用路径的结点集合
-
Dijkstra算法:讨论
算法复杂性:n个结点
每次迭代:需要检测所有不在集合N’中的结点w
n(n+1)/2次比较:O(n^2)
更高效的实现:O(nlogn)
存在震荡(oscillations)可能
距离向量路由算法
距离向量路由算法,也叫做最大流量演算法,其被距离向量协议作为一个算法,如RIP,BGP,ISO IDRP,NOVELL IPX。使用这个算法的路由器必须掌握这个距离表(它是一个一维排列-“一个向量”),它告诉在网络中的所有节点(除了它自己本身)是等同的。这个表中的列代表直接和它相连的邻居,行代表在网络中的所有目的地。每个数据包括传送数据包到每个网上的目的地的路径和距离/或时间在那个路径上来传输(我们叫这个为“成本”)。这个在那个算法中的度量公式是跳跃的次数,等待时间,流出数据包的数量,等等。
在距离向量路由算法中,相邻路由器之间周期性地相互交换各自的路由表备份。当网络拓扑结构发生变化时,路由器之间也将及时地相互通知有关变更信息。
层次路由
层次路由中,网络节点按照不同的分族方法分为不同的族,网络的逻辑结构是层次的。一般来说,族的形成是基于传感器节点的剩余能量和族首的接近程度。
分层路由的主要目的是通过族间节点的多跳通信方式和执行数据融合来减少信息发送的次数,从而降低传感器网络节点的能源消耗。
Internet路由选择协议
路由选择协议规定了互联网中有关的路由器如何相互交换信息并生成出路由表。
互联网采用的路由选择协议主要是自适应的(即动态的)、分布式路由选择协议。由于以下两个原因,互联网采用分层次的路由选择协议:
- 互联网的规模非常大。如果让所有的路由器知道所有的网络应怎样到达,则这种路由表将非常大,处理起来也太花时间。而所有这些路由器之间交换路由信息所需的带宽就会使互联网的通信链路饱和。
- 许多单位不愿意外界了解自己单位网络的布局细节和本部门所采用的路由选择协议(这属于本部门内部的事情),但同时还希望连接到互联网上。
为此,可以把整个互联网划分为许多较小的自治系统,一般都记为AS。自治系统AS是在单一技术管理下的许多网络、IP地址以及路由器,而这些路由器使用一种自治系统内部的路由选择协议和共同的度量。每一个AS对其他AS表现出的是一个单一的和一致的路由选择策略。这样,互联网就把路由选择协议划分为两大类:
- 内部网关协议IGP:RIP、OSPF、IS-IS等
- 外部网关协议EGP:BGP
RIP协议
-
Internet采用层次路由
-
AS内部路由协议也称为内部网络协议IGP
-
最常见的AS内部路由协议:
路由信息协议:RIP
开放最短路径优先:OSPF
内部网关路由协议:IGRP(思科私有协议)
-
RIP早于1982年随BSD-UNIX操作系统发布
-
距离向量路由算法
距离度量:跳步数,每条链路1个跳步
每隔30秒,邻居之间交换一次DV,成为通告
每次通告:最多25个目的子网(IP地址形式)
-
RIP:链路失效、恢复
如果180秒没有收到通告——>邻居/链路失效
经过该邻居的路由不可用,重新计算路由
向邻居发送新的通告
邻居再依次向外发送通告(如果转发表改变)
链路失效信息能否快速传播到全网?可能发生无穷计数问题
毒性逆转技术用于预防乒乓环路
-
RIP路由表的处理
RIP路由表是利用一个称作route-d的应用层进程进行管理,应用进程实现
通告报文周期性地通过UDP数据报发送
OSPF协议
-
开放:公众可用
-
采用链路状态路由算法
LS分组扩散(通告)
每个路由器构造完整的网络(AS)拓扑图
利用Dijkstra算法计算路由
-
OSPF通告中每个入口对应一个邻居
-
OSPF通告在整个AS范围泛洪,OSPF报文直接封装装到IP数据报中
-
与OSPF极其相似的一个路由协议:IS-IS路由协议
-
OSPF的优点(RIP不具备)
安全:所有OSPF报文可以被认证(预防恶意入侵)
允许使用多条链路,可以针对不同的TOS设置多个不同的费用度量
集成单播路由与多播路由:多播OSPF协议(MOSPF)与OSPF利用相同的网络拓扑数据
OSPF支持对大规模AS分层
-
分层的OSPF
两级分层:局部区,主干区:
-
链路状态通告只限于区内
-
每个路由器掌握所在区的详细拓扑
-
只知道去往其他区网络的“方向”(最短路径)
区边界路由器:“汇总”到达所在区网络的距离,通告给其他区边界路由器
主干路由器:在主干区内运行OSPF路由算法
AS边界路由器:连接其他AS
-
BGP协议
边界网关协议(BGP)是运行于TCP上的一种自治系统的路由协议。BGP是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接协议。BGP构建在EGP的经验之上。BGP系统的主要功能是和其他的BGP系统交换网络可达信息。网络可达信息包括列出的自治系统(AS)的信息。这些信息有效地构造了AS互联的拓扑图并由此清除了路由环路,同时在AS级别上可实施策略决策。
OSPF报文直接封装装到IP数据报中
-
与OSPF极其相似的一个路由协议:IS-IS路由协议
-
OSPF的优点(RIP不具备)
安全:所有OSPF报文可以被认证(预防恶意入侵)
允许使用多条链路,可以针对不同的TOS设置多个不同的费用度量
集成单播路由与多播路由:多播OSPF协议(MOSPF)与OSPF利用相同的网络拓扑数据
OSPF支持对大规模AS分层
-
分层的OSPF
两级分层:局部区,主干区:
-
链路状态通告只限于区内
-
每个路由器掌握所在区的详细拓扑
-
只知道去往其他区网络的“方向”(最短路径)
区边界路由器:“汇总”到达所在区网络的距离,通告给其他区边界路由器
主干路由器:在主干区内运行OSPF路由算法
AS边界路由器:连接其他AS
-
BGP协议
边界网关协议(BGP)是运行于TCP上的一种自治系统的路由协议。BGP是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接协议。BGP构建在EGP的经验之上。BGP系统的主要功能是和其他的BGP系统交换网络可达信息。网络可达信息包括列出的自治系统(AS)的信息。这些信息有效地构造了AS互联的拓扑图并由此清除了路由环路,同时在AS级别上可实施策略决策。