1.概述

     路由算法是用于获取路由表中的路由项目。它是路由选择协议的核心。
2.路由算法的分类
     从路由算法能否随网络的通信量或拓扑自适应的进行调整变化来分,可以分为两类。
  • 静态路由选择策略
    • 静态路由选择也叫非自适应路由选择,其特点是简单和开销较小,但不能适应网络变化
  • 动态路由选择策略
    • 动态路由选择也叫自适应路由选择,特点是能适应网络变化,实现起来复杂,开销也比较大。

3.自治系统

     因特网将整个互联网划分成许多较小的自治系统,一般简称为AS。自治系统有以下特点:
  • 自治系统有权决定自己的路由选择协议
  • 所有的网络都属于一个行政单位管辖
  • 所有的路由器在本自治系统内都必须是连通的

4.路由选择协议的分类

  • 内部网关协议IGP
    • 即在一个自治系统内部使用的路由选择协议。目前这类路由选择协议使用的最多,如RIP和OSPF协议。
  • 外部网关协议EGP
    • 若源站和目的站处在不相同的自治系统中,当数据报传到一个自治系统的边界时,就需要使用外部网关协议将路由选择信息传递到另一个自治系统中。目前外部网关协议使用最多的是BGP-4.

5.RIP路由信息协议(Routing Information Protocol)

  • 路由信息协议RIP是一种分布式的基于距离向量的路由选择协议,是因特网标准协议。
  • RIP协议将“距离”定义如下:
    • 从一路由器到直接连接的网络的距离定义为1,从一路由器到非直接链接的网络的距离定义为所经过的路由器加1。因此,直接链接的网络的距离定义为1。
    • RIP允许一条路径最多只能包含15个路由器。因此距离的最大值为16,相当于不可达。可见RIP只适用于小型互联网。
  • RIP的距离向量算法为(Bellman-Ford算法)(详情请谷歌or查阅算法导论)
  • RIP协议报文格式:
    • RIP协议使用运输层的用户数据报UDP进行传送。

    

    • 命令字段:1表示请求路由信息,2表示请求路由信息的响应或未被请求而发出的路由更新协议
    • 必为0字段:用来四字节对齐
    • 地址族标识符:该字段用来标识所使用的地址协议
    • 路由标记:填入自治系统的编号,这是因为考虑到有可能收到本自治系统以外的路由选择信息。

6.内部网关协议OSPF

  • OSPF开放最短路径优先协议(OpenShortestPathFirst)用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现。OSPF使用了Dijkstra提出的最短路径算法。
  • OSPF分组的格式

  

    • 版本:当前的版本号为2
    • 类型:可以是5种类型分组中的一种
      • 类型1:问候分组(hello),用来发现和维持邻站的可达性
      • 类型2:数据库描述分组,向邻站给出自己的链路状态数据库中的所有链路状态项目摘要信息。
      • 类型3:链路状态请求分组,向对方请求发送某些链路状态项目的详细信息
      • 类型4:链路状态更新分组,用洪泛法对全网更新链路状态
      • 类型5:链路状态确认分组,对链路状态更新分组确认。
    • 分组长度:包括OSPF首部在内的分组长度,以字节为单位
    • 路由器标识符:标志发送该分组的路由器的接口IP地址
    • 区域标识符:分组属于的区域
    • 检验和:用来检测分组中的差错。
    • 鉴别类型:0(不用),1(口令8个字符)

TCP/IP详解学习笔记(6)-- IP选路的更多相关文章

  1. TCP/IP详解学习笔记(5)-IP选路,动态选路,和一些细节

    1.静态IP选路 1.1.一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由.这里就不重复了.首先来看看一个简单的系统 ...

  2. TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议

    把这三个协议放到一起学习是因为这三个协议处于同一层,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数 ...

  3. TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议【转】

    转自:http://blog.csdn.net/goodboy1881/article/details/668556 把这三个协议放到一起学习是因为这三个协议处于同一层(网际层),ARP协议用来找到目 ...

  4. TCP/IP详解学习笔记

    TCP/IP详解学习笔记(1)-基本概念 TCP/IP详解学习笔记(2)-数据链路层 TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议 TCP/IP详解学习笔记(4)-ICMP协议, ...

  5. TCP/IP详解学习笔记 这位仁兄写得太好了

      TCP/IP详解学习笔记(1)-基本概念 为什么会有TCP/IP协议 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣 ...

  6. TCP/IP详解学习笔记 这位仁兄写得太好了.(转载)

    TCP/IP详解学习笔记   这位仁兄写得太好了   TCP/IP详解学习笔记   这位仁兄写得太好了. http://blog.csdn.net/goodboy1881/category/20444 ...

  7. 【转】TCP/IP详解学习笔记(二)

    TCP/IP详解学习笔记(5)-IP选路,动态选路,和一些细节 1.静态IP选路 1.1.一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据 ...

  8. TCP/IP详解学习笔记- 概述

    TCP/IP详解学习笔记(1)-- 概述1.TCP/IP的分层结构      网络协议通常分不同层次进行开发,每一层分别负责不同的同信功能.TCP/IP通常被认为是一个四层协议系统.      如图所 ...

  9. 【转】TCP/IP详解学习笔记(一)

      TCP/IP详解学习笔记   这位仁兄写得太好了. http://blog.csdn.net/goodboy1881/category/204448.aspx TCP/IP详解学习笔记(13)-T ...

  10. TCP/IP详解学习笔记(3)-- IP:网际协议

    1.概述      IP是TCP/IP协议族中最为核心的协议.所有的TCP,UDP,ICMP,IGMP数据都以IP数据报格式传输.      IP提供不可靠,无连接的数据报传送服务. 不可靠:它不能保 ...

随机推荐

  1. SVN并行开发管理策略

    总的原则:trunk保证相对稳定.分支合并到主干时将冲突降至最低. (1)       trunk用于集成.测试.发布,可以提交fixbug代码,但不允许直接提交新特性. (2)       特性在分 ...

  2. 黄聪:Discuz X2.5、3.0、3.1、3.2 如何不用插件实现用户名只允许中文注册

    1.在后台--注册与访问--注册链接文字,把“注册”改为“中文注册”或“注册(请使用中文注册)”等   2.后台UCenter管理中心---注册设置---禁止的用户名:   *q* *w* *e* * ...

  3. 《黄聪:手机移动站SEO优化教程》2、PC端和手机移动端SEO优化区别

    视频地址:http://v.youku.com/v_show/id_XNzE2ODcxNjM2.html

  4. ARM NEON编程系列1-导论

    ARM NEON 编程系列1 - 导论 前言 本系列博文用于介绍ARM CPU下NEON指令优化. 博文github地址:github 相关代码github地址:github NEON历史 ARM处理 ...

  5. Authentication token manipulation error for ubuntu ubuntu-16.04.1-desktop-amd64

    https://ubuntuforums.org/showthread.php?t=1772894 Hi, I faced the same problem when I tried to recov ...

  6. php 消息队列

    本消息队列用于linux下,进程通信 #根据路径和后缀创建一个id $key = ftok(__DIR__, 'R'); #获取队列中的消息 $q = msg_get_queue($key); #删除 ...

  7. M2M协议

    1, M2M协议 M2M是Machine-to-Machine/Man的简称,是一种以机器终端智能交互为核心的.网络化的应用与服务.M2M协议规定了人机和机器之间交互需要遵从的通信协议.随着科学技术的 ...

  8. GCD信号量并发控制

    /** *  当我们在处理一系列线程的时候,当数量达到一定量,在以前我们可能会选择使用NSOperationQueue来处理并发控制,但如何在GCD中快速的控制并发呢?答案就是dispatch_sem ...

  9. flexpaper源码的编译,去除logo和打印 (转)

    1.首先下载FlexPaper的源码.下载地址 2. 下载Adobe Flash Builder v4.5 现在最新是4.6了,在adobe网站木找到4.5下载,这里提供下4.5的种子文件 http: ...

  10. ubuntu 修改静态IP和DNS

    1.修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo vi /etc/network/interfaces 添加以下内容:auto eth0       ...