路由器转发分组的依据
路由表

路由表从何而来 直连路由、静态路由、动态路由

路由器收到一个分组之后…

 打开分组L3,提取出目的IP地址

 确定目标网络,查找路由表

按位“AND”操作

 重新封装,转发

TTL-1,置换源和目的的MAC地址,计算校验和,可选分片等

什么是直连路由?

 开启了路由器接口后,自动发现

什么是静态路由?

 静态路由:管理员手工配置的路由

静态路由的好处

 一种常用的静态路由:默认/缺省路由

是默认的路径,找不到路的时候可以从这里通过

• 避免错误丢包

• 缩减路由表的规模

• 减少路由器的运行负担

静态的优缺点

主机上也有一张路由表!

什么是动态路由?

 动态路由:由路由选择协议动态地建立、更新和维护的路由

适合大型的、经常变动的网络,需要维护开销

减少了网络管理员的负担

动态路由从何而来?

什么是路由选择算法?

网络层软件的一部分



总是选择最优的路径

负责确定所收到分组
应传送的外出线路

路由选择算法必须考虑的因素

怎么量度路径的优劣? (度量/代价/开销 /成本)

路径长度 由网络管理员定义每条网络链路的代价(cost),从源到宿的代价总和为路径长度,hop (跳数)

可靠性 链路数据传输的可靠性(误码率)

延迟 数据包从源到宿需要花费的传输时间

带宽 链路的最大传输能力以及网络流量

负载 网络资源(例如路由器的CPU)的使用率

通信代价 占用通信线路的费用

最优化原理 ( Optimization principle )

沉落树/汇集树 (Sink tree)

动态路由的优缺点

路由表包括三种路由

直连路由、静态路由、动态路由

 动态路由协议产生和维护动态路由,主要有

两大类

距离矢量路由选择协议(DV)

链路状态路由选择协议(LS)

 静态路由有优点和缺点

 动态路由也有它的优点和缺点

 常见的路径量度:跳数、带宽

s5-10 路由的更多相关文章

  1. (转)MVC 路由

    URL路由系统通过对请求地址进行解析从而得到以目标Controller名称为核心的路由数据.Url路由系统最初是为了实现请求url与物理文件路径分离而建立的,MVC的Url Route是将Url地址与 ...

  2. Express路由

    1. 路由器的配置分为两个,一个是需要做页面的渲染,一个是需要直接进行对数据进行输出,对于路由器的配置需要对路由器在公共的app.js进行注册与注入才能生效,否则是不能生效的.配置时根据不同的应用场景 ...

  3. 【10】react 之 react-router

    1.1.  路由 路由:URL与处理器的映射. 浏览器当前的 URL 发生变化时,路由系统会做出一些响应,用来保证用户界面与 URL 的同步. 1.2.  Router安装 npm i react-r ...

  4. vue学习-day04(路由)

    目录: 1.组件传值-父组件向子组件传值和data与props的区别    2.组件传值-子组件通过事件调用向父组件传值          3.案例:发表评论.使用ref获取DOM元素和组件引用   ...

  5. Vue自定义页面路由

    错误1:webpackEmptyContext (eval at ./src/store/modules sync recursive (0.js:10), <anonymous>:2:1 ...

  6. Vue 路由的简单使用(命名路由、query路由传参、params路由传参)

    1 # Vue 路由 2 # 1.理解:一个路由(toute)就是一组映射关系(key-value),多个路由需要路由器(router)进行管理 3 # 2.前端路由:key是路径,value是组件 ...

  7. qingku

    # -*- coding:utf-8 -*- list1=[] list2=[] list3 = [] list4 = [] while True: inputs = raw_input(" ...

  8. C++ Primer 5th 第3章 字符串、向量和数组

    *****代码在Debian g++ 5.40 / clang++ 3.8(C++11)下编写调试***** 本章主要是关于字符串.数组的内容,以及一些简单的容器知识. 1.using的声明 usin ...

  9. 小猪猪逆袭成博士之C++基础篇(三)字符串

    小猪猪逆袭成博士之C++基础篇(三)字符串 String 写在题外的话: 非常感谢在我发了第一篇随笔以后有很多人看还评论了,这大概就是一种笔记性质的,也不一定全对,如果不对的地方请指出来让我加以改正. ...

  10. windows指令

    &        无条件执行&符号后面的命令: &&      当&&前面的命令成功执行时,执行&&后面的命令,否则不执行: ||   ...

随机推荐

  1. crm作业知识点集合[二]

    知识点1 前面我们实现了这个功能,就是在models中如果有了choice选项,我们可以实现在页面显示这个chocice的value值,而不是key值,我们这个知识点就是在优化一下这个点 首先如果表中 ...

  2. Kafka、 RabbitMQ、Redis、 ZeroMQ、 ActiveMQ、 Kafka/Jafka 对比

    Kafka是一种分布式的,基于发布/订阅的消息系统.主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间复杂度的访问性能. 高吞吐率.即使在非常廉价 ...

  3. for循环中的 break和continue的区别

    break 语句用于跳出循环. for (i=0;i<10;i++) { if (i==3) { break; } x=x + "The number is " + i + ...

  4. mysql --secure-file-priv is set to NULL.Operations related to importing and exporting data are disabled

    --secure-file-priv is set to NULL. Operations related to importing and exporting data are disabledmy ...

  5. Java并发-volatile的原理及用法

    Java并发-volatile的原理及用法 volatile属性:可见性.保证有序性.不保证原子性.一.volatile可见性 在Java的内存中所有的变量都存在主内存中,每个线程有单独CPU缓存内存 ...

  6. git 本地仓库与远程仓库的连接

    在远程如github新建一个项目名称为blog, 本地项目为store,是一个laravel框架项目,首先用 git init初始化本目,然后用git remote add origin git@gi ...

  7. Kali Linux 网络扫描秘籍

    第三章 端口扫描(二) 作者:Justin Hutchens 译者:飞龙 协议:CC BY-NC-SA 4.0 3.6 Scapy 隐秘扫描 执行 TCP 端口扫描的一种方式就是执行一部分.目标端口上 ...

  8. Python.Books

    Flask 1. Flask Web Development Miguel Grinberg April 2014 2. Flask Framework Cookbook Shalabh Aggarw ...

  9. AngularJS 高级程序设计

    1.5.4 安装Web服务器 原来的: connect.static("../angularjs"); 报错.可以修改为: var connect = require('conne ...

  10. 20172325 2017-2018-2 《Java程序设计》第十一周学习总结

    20172325 2017-2018-2 <Java程序设计>第十一周学习总结 教材学习内容总结 Android简介 Android操作系统是一种多用户的Linux系统,每个应用程序作为单 ...