5.3.3 因特网的路由协议(三)OSPF协议

5.3.3 因特网的路由协议(三)OSPF协议

前面我们学习了基于距离向量算法的路由信息协议RIP(5.3.2 因特网的路由协议(二)基于距离向量算法的RIP协议),为了克服RIP协议的局限性于是就有了新的内部网关协议OSPF协议,OSPF是Open Shortest Path First的缩写,又被成为开放式最短路径优先协议,最短路径优先是因为使用了Dijkstra提出的最短路径算法SPF,这个协议在选择路径的时候是基于链路的状态

一、链路状态

链路状态是指链路中一台路由器都和那些路由器相邻,以及该链路的带宽、延时、线路负荷等因素的综合,也就是说他会为每条链路去计算出它的代价,又称为Cost,综合考虑了链路状态以后OSPF将利用Dijkstra算法来选择最佳路径。

二、OSPF路由信息交换

我们知道在RIP中当前路由器只和邻居路由器去交换信息,而OSPF协议则不同,他会把链路的状态信息去通知自治系统中所有的路由器知道。那它又是如何去通知呢?其实OSPF采用的是一种洪泛法,所谓的洪泛法顾名思义就像洪水泛滥一样以当前路由器为中心把消息向四周传递,直到所有的路由器都得知了这个消息。下面我们来演示一下OSPF用洪泛法进行路由器间链路状态信息的交换的过程。

如图

路由信息交换

我们从图中看到是一个由路由器A、B、C、D四台路由器所连接形成的自治系统,经过初始化之后路由器A作为源路由器,根据洪泛法的规则,A首先将自身的链路状态信息传送给与它相邻的B与C,当然我们并没有把链路状态中所有包含内容写在上面,实际上应该还包含有与A相连的链路Cost(代价)是多少等等,B与C再将A传来的链路状态信息与自己相邻的路由器D,这样的过程就是利用洪泛法进行链路状态信息交换的过程。当网络中路由器全部相互交换过链路状态以后,OSPF会使每台路由器根据链路状态生成本自治系统的一个拓扑结构,并且也知道自己在拓扑结构中的哪个位置。图中每个方框标记的就是每个路由器在自治系统中的位置。

三、OSPF协议特点
  1. OSPF对不同的链路可以根据链路的带宽等因素设置成不同的代价,在选择走那条路的时候它不像RIP一样去选择一条经过路由器数量最少的路,而是选择了一条总的代价最低的路。
  2. 特殊情况是,如果两条路相同的情况下OSPF协议会把数据报平均分配给这两条路径,也就是说OSPF可以实现多路径间的负载平衡。
  3. 当和某个路由器相邻的链路状态发生变化的时候当前路由器会采用洪泛法去通知所有的路由器去知道这个消息。
  4. OSPF规定每隔一段时间比如30分钟就会刷新一次数据库中的链路状态。
  5. OSPF与RIP相比最大的优点就是当互联规模很大的时候由于OSPF是基于链路状态所以他只会涉及到与相邻路由器的连通的状态,而与整个互联网的规模并没有直接的关系,也解决了RIP协议解决不了的难题。

实际上如果说自治系统的规模也就是网络数量比较多的情况下,在OSPF中还可以划分成若干个区域(Area)

如图

区域

在图中的自治系统中划分了4个区域,其中周围的三个是一般的区域,中间部分是主干区域。这样做的好处是把采用洪泛法去通知链路状态的范围缩小到了一个区域内的所有的路由器。每个区域内的路由器只知道本区域的拓扑结构。区域和区域之间的路由选择是通过区域边界路由器R3、R4、R7和主干区域的路由器来完成的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机网络相关知识、网络结构等等。 序言 前言 第1章 引言 1.1 计算机网络的产生和发展 1.2 计算机网络的功能 1.3 计算机网络分类 1.3.1 局域网 1.3.2 城域网 1.3.3 广域网 1.3.4 互联网 1.3.5 无线网 1.4 网络体系结构 1.4.1 协议分层 1.4.2 服务类型 1.4.3 服务原语 1.5 ISO/OSI参考模型 1.5.1 参考模型 1.5.2 模型评价 1.6 本书的结构 第一部分 数据通信 第2章 数据通信基础知识 2.1 基本概念 2.1.1 信号与通信 2.1.2 模拟通信 2.1.3 数字通信 2.2 数据通信基础理论 2.2.1 信号的频谱和带宽 2.2.2 信道的截止频率与带宽 2.2.3 信道的最大数据传输率 2.3 传输介质 2.3.1 双绞线 2.3.2 同轴电缆 2.3.3 光纤 2.3.4 无线介质 2.4 多路复用 2.4.1 频分多路复用 2.4.2 波分多路复用 2.4.3 时分多路复用 2.5 数据交换技术 2.5.1 电路交换 2.5.2 报文交换 2.5.3 分组交换 2.6 调制解调器 2.6.1 调制方式 2.6.2 Modem标准 2.6.3 Modem分类 2.6.4 工作模式 2.7 小结 习题 第3章 物理层接口 3.1 RS-232-C接口 3.1.1 机械特性 3.1.2 电气特性 3.1.3 功能特性 3.1.4 过程特性 3.1.5 空Modem电缆 3.2 其他接口 3.2.1 RS-449接口 3.2.2 RS-530接口 3.3 小结 习题 第二部分 底层物理网络 第4章 广域网 4.1 广域网结构 4.1.1 虚电路和数据报 4.1.2 两者比较 4.2 广域网实例 4.2.1 PSTN 4.2.2 X.25 4.2.3 DDN 4.2.4 帧中继 4.2.5 SMDS 4.2.6 B-ISDN/ATM 4.3 各种广域网的比较 4.4 小结 习题 第5章 局域网 5.1 介质访问控制协议 5.1.1 ALOHA协议 5.1.2 CSMA协议 5.1.3 CSMA/CD协议 5.2 以太网和IEEE 802.3 5.2.1 物理层标准 5.2.2 MAC协议 5.2.3 性能分析 5.3 令牌环网和IEEE 802.5 5.3.1 MAC协议 5.3.2 管理与维护 5.3.3 性能分析 5.4 网桥 5.4.1 透明网桥 5.4.2 源选径网桥 5.5 小结 习题 第6章 高速局域网 6.1 FDDI网络 6.1.1 与OSI的关系 6.1.2 帧格式 6.1.3 MAC协议 6.1.4 工作原理 6.1.5 拓扑结构 6.1.6 网络容错 6.1.6 技术指标 6.2 快速以太网 6.3 千兆位以太网 6.4 局域网交换机 6.5 小结 习题 第部分 网络互联 第7章 网络互联与TCP/IP 7.1 网络互联层次 7.1.1 应用级互联 7.1.2 网络级互联 7.2 TCP/IP参考模型 7.3 TCP/IP参考模型的特点 7.3.1 TCP/IP的两大边界 7.3.2 IP层的地位 7.3.3 TCP/IP的可靠性思想 7.3.4 TCP/IP模型的特点 7.4 TCP/IP与ISO/OSI 7.5 小结 习题 第8章 IP 8.1 IP数据报 8.1.1 数据报格式 8.1.2 地址格式 8.2 IPv6 8.2.1 固定头部格式 8.2.2 IPv6地址 8.2.3 扩展头部 8.3 小结 习题 第9章 ARP、RARP和ICMP 9.1 ARP和RARP 9.1.1 ARP 9.1.2 RARP协议 9.1.3 报文格式 9.2 ICMP 9.2.1 ICMP报文类型 9.2.2 ICMP报文格式 9.2.3 ICMP差错报文 9.2.4 ICMP控制报文 9.2.5 ICMP请求/应答报文 9.3 小结 习题 第10章 IP路由协议 10.1 路由器路由选择 10.1.1 路由器 10.1.2 路由选择 10.2 Internet结构 10.3 基本路由算法 10.3.1 D-V路由算法 10.3.2 L-S路由算法 10.4 IGP:内部网关协议 10.4.1 RIP 10.4.2 IGRP 10.4.3 OSPF协议 10.5 外部网关协议EGP 10.6 Internet组播 10.6.1 组播协议 10.6.2 组的维护 10.6.3 组播范围 10.7 移动IP路由 10.8 无类域间路由 10.9 小结 习题 第11章 传输层协议:TCP和UDP 11.1 传输层基本原理 11.1.1 服务质量 11.1.2 传输层端口 11.2 UDP 11.2.1 UDP报文格式 11.2.2 UDP伪头部 11.2.3 UDP多路复用 11.3 TCP 11.3.1 TCP报文格式 11.3.2 TCP连接端点 11.3.3 TCP可靠传输 11.3.4 TCP流量控制 11.3.5 TCP拥塞控制 11.3.6 TCP连接建立 11.3.7 TCP连接删除 11.3.8 TCP紧急数据传输 11.4 小结 习题 第四部分 网络应用 第12章 客户/服务器模型与套接字编程接口 12.1 网络间进程通信 12.2 客户/服务器模型 12.3 套接字编程接口 12.3.1 套接字基本概念 12.3.2 套接字系统调用 12.3.3 其它系统调用 12.4 基于客户/服务器模型的套接字编程举例 12.4.1 客户/服务器模型流程图 12.4.2 套接字实现机制 12.4.3 Unix环境下的套接字编程举例 12.5 小结 习题 第13章 DNS域名系统 13.1 域名结构 13.1.1 平面型命名机制 13.1.2 层次型命名机制 13.1.3 层次型名字管理 13.1.4 TCP/IP域名 13.2 域名解析 13.2.1 TCP/IP域名服务器 13.2.2 域名解析 13.2.3 逆向域名解析 13.2.4 域名解析的效率 13.3小结 习题 第14章 远程登录Telnet和Rlogin 14.1 为什么要引入远程登录? 14.2 TELNET协议 14.2.1 Telnet工作原理 14.2.2 网络虚终端 14.2.3 Telnet选项 14.3 Rlogin 14.4 小结 习题 第15章 文件传输与访问 15.1 FTP:文件传输协议 15.1.1 FTP特点 15.1.2 FTP工作原理 15.1.3 FTP连接建立 15.1.4 FTP访问控制 15.2 TFTP:简单文件传输协议 15.3 NFS:网络文件系统 15.4 小结 习题 第16章 电子邮件 16.1 电子邮件系统体系结构 16.1.1 ISO/OSI电子邮件系统 16.1.2 TCP/IP电子邮件系统 16.2 TCP/IP电子邮件地址 16.3 TCP/IP电子邮件标准 16.3.1 TCP/IP电子邮件格式 16.3.2 MIME:多用途Internet邮件扩展 16.3.3 SMTP:简单邮件传输协议 16.4 邮箱访问 16.5 小结 习题 第17章 万维网 17.1 Web页面浏览 17.1.1 浏览器和服务器 17.1.2 HTTP 17.1.3 HTML语言 17.2 交互式动态页面 17.2.1 CGI 17.2.2 Java 17.2.3 ASP 17.3小结 习题 第五部分 网络管理与安全 第18章 网络管理 18.1 互连网管理 18.2 SNMP网管体系 18.2.1 管理员/代理模型 18.2.2 MIB:管理信息库 18.2.3 ASN.1 18.2.4 SNMP 18.3 小结 习题 第19章 网络安全 19.1 基本概念 19.2 网络安全攻击 19.3 安全策略 19.4 安全机制 19.4.1 加密 19.4.2 鉴别 19.4.3 数字签名 19.5 防火墙 19.5.1 包过滤 19.5.2 应用级网关 19.6 小结 习题 第20章 网络技术的未来发展 20.1 新型网络应用技术 20.2 宽带网络技术 20.3 无线接入技术 20.4 统一网络技术 20.5 网络安全技术 20.6 主动网络技术 20.7 小结 参考文献
codesite 5.3.3是一个软件开发工具,旨在帮助开发人员进行代码调试和错误查找。这个版本是codesite的最新版本,修复了之前版本中的一些漏洞和问题。 codesite 5.3.3提供了一种简单且直观的方式来记录和跟踪代码执行过程中的信息。它可以将日志消息发送到远程服务器或本地文件,以供开发人员分析调试。开发人员可以在代码中插入特定的代码行,用于记录重要变量的值、函数执行的结果、错误消息等等。通过查看这些日志信息,开发人员可以更容易地了解代码的执行流程,并找出可能的错误原因。 此外,codesite 5.3.3还增加了对多线程应用程序的支持。开发人员可以在多个线程中使用codesite来记录日志信息,以便更有效地调试复杂的并发问题。codesite还提供了过滤和搜索功能,使开发人员可以按关键字、级别、时间等方式来查找特定的日志信息,从而更快地找到问题所在。 codesite 5.3.3还具有良好的兼容性和可扩展性。它支持多种编程语言和框架,包括C++、Java、Python等。开发人员可以根据自己的需求扩展和定制codesite,以便适应不同的项目和团队。 总体来说,codesite 5.3.3是一个强大的代码调试和错误查找工具,它提供了简单易用的日志记录和跟踪功能,帮助开发人员更快捷地定位和解决问题。它的多线程支持和良好的兼容性使其成为开发人员在日常开发过程中必备的工具之一。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值