日常生活中“路由器”对于每个人来说都是不会陌生的,简单来说我们上网就离不开路由器,而作为代码搬运工,路由器、路由等名词对我们来说更是需要深入了解的。

一、路由

1.概念
  路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程。(出自James F.Kurose,Keith W.Ross著.陈鸣译.《计算机网络》:机械工业出版社,2009)路由工作在OSI参考模型第三层——网络层的数据包转发设备。路由器通过转发数据包来实现网络互连。
  路由是指路由器从一个接口上收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程。路由通常与桥接来对比,在粗心的人看来,它们似乎完成的是同样的事。它们的主要区别在于桥接发生在OSI参考模型的第二层(数据链路层),而路由发生在第三层(网络层)。这一区别使二者在传递信息的过程中使用不同的信息,从而以不同的方式来完成其任务。

2.算法
路由工作包含两个基本的动作:

(1)确定最佳路径=》路径选择
  metric是路由算法用以确定到达目的地的最佳路径的计量标准,如路径长度。为了帮助选路,路由算法初始化并维护包含路径信息的路由表,路径信息根据使用的路由算法不同而不同。
  路由算法根据许多信息来填充路由表。目的/下一跳地址对告知路由器到达该目的最佳方式是把分组发送给代表“下一跳”的路由器,当路由器收到一个分组,它就检查其目标地址,尝试将此地址与其“下一跳”相联系。下表为一个目的/下一跳路由表的例子。路由表还可以包括其它信息。路由表比较metric以确定最佳路径,这些metric根据所用的路由算法而不同。路由器彼此通信,通过交换路由信息维护其路由表,路由更新信息通常包含全部或部分路由表,通过分析来自其它路由器的路由更新信息,该路由器可以建立网络拓扑图。路由器间发送的另一个信息是链接状态广播信息,它通知其它路由器发送者的链接状态,链接信息用于建立完整的拓扑图,使路由器可以确定最佳路径。
  
(2)通过网络传输信息=》交换算法
  交换算法相对而言较简单,对大多数路由协议而言是相同的,多数情况下,某主机决定向另一个主机发送数据,通过某些方法获得路由器的地址后,源主机发送指向该路由器的物理(MAC)地址的数据包,其协议地址是指向目的主机的。
  路由器查看了数据包的目的协议地址后,确定是否知道如何转发该包,如果路由器不知道如何转发,通常就将之丢弃。如果路由器知道如何转发,就把目的物理地址变成下一跳的物理地址并向之发送。下一跳可能就是最终的目的主机,如果不是,通常为另一个路由器,它将执行同样的步骤。当分组在网络中流动时,它的物理地址在改变,但其协议地址始终不变。
  ISO定义了用于描述此过程的分层的术语。在该术语中,没有转发分组能力的网络设备称为端系统(ES–end system),有此能力的称为中介系统(IS–intermediate system)。IS又进一步分成可在路由域内通信的域内IS(intradomain IS)和既可在路由域内又可在域间通信的域间IS(interdomain IS)。路由域通常被认为是统一管理下的一部分网络,遵守特定的一组管理规则,也称为自治系统(autonomous system)。在某些协议中,域内路由协议仍可用于在区间内和区间之间交换数据。

二、路由器

1.概念
  路由器是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。它能够理解不同的协议,例如某个局域网使用的以太网协议,因特网使用的TCP/IP协议。这样,路由器可以分析各种不同类型网络传来的数据包的目的地址,把非TCP/IP网络的地址转换成TCP/IP地址,或者反之;再根据选定的路由算法把各数据包按最佳路线传送到指定位置。所以路由器可以把非TCP/ IP网络连接到因特网上。

2.原理
  网络中的设备相互通信主要是用它们的IP地址,路由器只能根据具体的IP地址来转发数据。IP地址由网络地址和主机地址两部分组成。在Internet中采用的是由子网掩码来确定网络地址和主机地址。子网掩码与IP地址一样都是32位的,并且这两者是一一对应的,子网掩码中“1”对应IP地址中的网络地址,“0”对应的是主机地址,网络地址和主机地址就构成了一个完整的IP地址。在同一个网络中,IP地址的网络地址必须是相同的。计算机之间的通信只能在具有相同网络地址的IP地址之间进行,如果想要与其他网段的计算机进行通信,则必须经过路由器转发出去。不同网络地址的IP地址是不能直接通信的,即便它们距离非常近,也不能进行通信。路由器的多个端口可以连接多个网段,每个端口的IP地址的网络地址都必须与所连接的网段的网络地址一致。不同的端口它的网络地址是不同的,所对应的网段也是不同的,这样才能使各个网段中的主机通过自己网段的IP地址把数据发送到路由器上。

3.功能
路由器的功能就是将不同的子网之间的数据进行传递。
(1)实现IP、TCP、UDP、ICMP等网络的互连。
(2)对数据进行处理。收发数据包,具有对数据的分组过滤、复用、加密、压缩及防护墙等各项功能。
(3)依据路由表的信息,对数据包下一传输目的地进行选择。
(4) 进行外部网关协议和其他自治域之间拓扑信息的交换。
(5) 实现网络管理和系统支持功能。

三、硬路由、软路由、主路由、旁路由对比

1.硬路由
  硬路由是以特有的硬设备,包括处理器、电源供应、嵌入式软件,提供设定的路由器功能。
  市场上大多数普通消费者买到的都是硬路由,比如华为、小米路由器等。这些路由器都有固定的天线、WAN口、LAN口。

2.软路由
  软路由是指利用台式机或服务器配合软件形成路由解决方案,主要靠软件的设置,达成路由器的功能。
  软路由没有固定的形态,不局限于有没有天线,网络接口,核心在于系统,例如只有一个LAN口的电脑,刷了软路由系统后,就是一个软路由。
  软路由除了核心的路由功能以外,与普通路由器(硬路由)最大的不同就是软路由可以装各种软件,比如全局广告屏蔽、全局出国上网等

主路由和旁路由其实是软路由中的概念,主路由和旁路由是根据接驳的位置来确定的。

3.主路由
  主路由是串联在主线路中的路由,正常情况下就是光猫(猫(MODEM)或者是交换机与路由器连接口(WAN):此接口用一条网线与家用宽带调制解调器(或者与交换机)进行连接。)通过网线第一个接入的路由器叫做主路由,主要实现拨号遥控网络宽带叠加的功能,一般主路由的拨号性能都比较强劲,稳定并且还可以轻松地实现一些可远程地功能或者脚本。简单来说,我们家中用地路由器就是主路由。

4.旁路由
  在官方的技术用语里,正确的叫法应该是「旁路网关」(为了方便,后续将依旧以旁路由为准)。而所谓的「旁路网关」,是指挂靠在主路由网络下的一个旁系网络,他分担了一部分路由器的功能,因此被大众简称为「旁路由」,本质上它是一个通过 LAN 口与主路由连接的一个客户端设备。

参考自:
《路由》
《路由器》

硬路由、软路由、主路由、旁路由对比分析相关推荐

  1. 家庭网络软路由才是主路由 进阶版

    家庭网络软路由才是主路由 进阶版

  2. HCNP——默认路由和浮动静态路由

    一.默认路由 默认路由又被称之为缺省路由,是目的网络地址及网络掩码均为0的路由,即0.0.0.0/0或者0.0.0.0 0.0.0.0.这是一条非常特殊的路由,所有的目的IP地址都能被这条路由匹配. ...

  3. 国内外主流云主机 | 对比分析 - 阿里云与Digital Ocean

    本章目录 话前小唠 福利1-阿里云在家"实践"计划 福利2 -Github-education-pack学生包服务 入题: 阿里云分析 1.申请注意事项: 2.学生优惠: 3.Wo ...

  4. PVE系列教程(九)、openWRT设置主路由与旁路由模式

    PVE系列教程(九).openWRT设置主路由与旁路由模式 为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客http://nas.hepcloud.top:7000 Hello,小伙伴们,这是凯尔 ...

  5. 关于旁路由设置后,主路由WIFI无法上网的问题

    前言 旁路由设置好后,手机.电脑连接主路由 WIFI,会无法访问外网. 但是,如果电脑用网线连接主路由,则可以正常上网. 这究竟是怎么一回事儿呢? 1. 旁路由解释 旁路由: 旁路由其实并不是路由,路 ...

  6. Django视图层:URL的反向解析(主路由include之namespace,子路由之name,模板标签{%url%},视图reverse()函数,反向解析示例,URL命名空间

    一.视图层The view layer Django 具有 "视图" 的概念,负责处理用户的请求并返回响应. 二.URL反向解析Reverse resolution of URLs ...

  7. lede旁路由作用,【旁路由】LEDE/OpenWrt作为旁路由辅助网关(目前最优解)OpenWrt网关旁路由设置...

    主路由一般安装爱快或者ROS,主要负责PPPOE拨号.实现多拨.流控.宽带叠加等功能,辅路由一般安装OpenWrt用于实现去广告.网易云音乐听歌等功能. 旁路由一般选择单网口的设备安装OpenWrt, ...

  8. 以太网速率怎么手动设置_OPENWRT-KOOLSHARE软路由,一级/单臂/二级/旁软路由设置单臂路由联网教程...

    [此文原创]此文基于单口软路由讨论 一级/单臂路由 LAN:IPV4设置除192.168.1.1之外和你局域网不冲突的地址,关闭桥接接口,物理设置eth0 WAN:协议改成PPPOE,物理设置eth0 ...

  9. 单臂路由之2,多网口软路由实现单臂路由功能,且其剩余网口及光猫剩余网口均实现上网功能

    之前写了一篇单网口实现单臂路由的帖子<单臂路由之一,单网口软路由实现主路由功能,光猫或交换机剩余网口实现上网功能>,有博友问到作为单臂路由的主路由有多个网口时,剩余的其它网口也需要实现上网 ...

最新文章

  1. python 可变参数 关键字参数_Python关键字及可变参数*args,**kw原理解析
  2. Acwing第 30 场周赛【完结】
  3. 可以改动的option组件_uni-app WebView 组件通信
  4. 如何在管理员页面查看知识星球活跃度和更多明细
  5. Red Hat Enterprise 5 server 上安装 memcached 的问题记录
  6. 微课|中学生可以这样学Python(5.8.2节):使用切片修改列表
  7. SQL 比较全的银行列表、带名称缩写、带银行logo
  8. vep加密视频转换为mp4提取破解录屏教程
  9. Uiautomator 2.0之BySelector类学习小记
  10. 2013年12月甘肃省广播电台网络影响力排名
  11. java实现京东云第三方登录
  12. python解一元二次方程复数_一元二次方程求解(包括复数各种情况)
  13. 计组3——加/减法器构造
  14. Android中Finish和OnBackPressed、OnDestroy的区别
  15. ad中按钮开关的符号_火速收藏!电工最常用电气元件实物图及对应符号
  16. 程序员的算法趣题Q13: 满足字母算式的解法
  17. 2021年度高等院校皇家勋章授勋仪式-乌隆他尼皇家大学
  18. 一条sql是如何执行的
  19. 结束进程 --inux命令
  20. JVM 基础知识:不积跬步,无以至千里

热门文章

  1. 高情商的人都在这样表现汇报工作
  2. 词根词缀sinu/sist/soci/sol/somn等词根衍生单词
  3. 普元的ajax,有人了解普元 primeton EOS 产品的么?可否评价一下?
  4. 关于cmake与make
  5. C/C++源代码如何变成可执行程序的?
  6. 2014-07-23 .NET实现微信公众号接入
  7. 【二分图匹配】矩阵游戏
  8. 网工笔记(三):IP Multicast组播技术
  9. v-if导致用ref取不到元素的解决办法
  10. NPOI导出Excel 65536限制