目录
一、路由器的工作原理
1.1 回顾交换机的工作原理
交换机维护了一张MAC地址表,主要记录的是MAC地址和接口的对应关系,交换机在初始状态下MAC地址表为空,当收到一个数据来自某接口(F0/1)的数据时,首先查看数据帧中源MAC地址,对照自己的MAC地址表,如果不在表中将发送方的MAC地址学习并记录到自己表中,并附上对应接口(F0/1),再查看目的MAC地址,如果目的MAC地址也不在MAC地址表中,将进行从接收接口外的其他所有连接接口转发出去(广播),此时,目的主机将接收到,其他主机也会收到,其他主机接收到后查看目的MAC不是自己,直接丢弃
目的主机接收并回应,回应过程中,数据同样会交给交换机进行转发,目的主机这时就变成了回应的发送主机。当交换机接收到来自目的主机的回应报文时,(F0/10),同样查看目的发送方的MAC地址,不在就学习并记录到MAC表。(F0/10)并附带对应接口,再查看目的目的MAC,由于之前有记录,直接从对应的接口(F0/1)进行转发 (单播)
总结:
学习源MAC—广播数据帧---接收方回应---单播转发
1.2 回顾路由器相关知识
路由器属于三层设备(网络层)
网络层的功能:进行逻辑地址(IP地址)寻址,实现不同网络之间的路径选择。
逻辑地址寻址:查询目的地址是否可达。如果可达就选择一条最优路径进行转发。
如果目的地址不可达,直接返回给发送方一个消息,提示目的主机不可达。
不同网络:网络地址不等、内网和外网的分割(内网的IP无法直接在外网进行路由)
网络层所传输的PDU(传输数据单元):数据包(IP数据包)
网络层所封装的是IP头部 关键信息:源IP,目的IP
1.3 网络层IP数据包格式
TCP/IP协议定义了一个在英特网上传输的包,称为IP数据包。由首部和数据两部分组成,首部前一部分是固定长度,共20字节,是所有IP数据包必须具备的,首部固定部分后面是一些可选字段,其长度是可变的,首部中源IP和目的IP地址都是IP协议地址。
IPv4 IP数据包
版本:占4位,指的是IP协议版本,通信双方使用的IP协议版本必须一致,目前主流的是版本4,即IPV4
首部长度:占4位,IP包头部长度,长度可变,(因为有可选字段)需要定义
优先级和服务类型:占8位,用来获得更好的服务,1998年IETF把该字段改名为分区服务DS,只有在使用分区服务时该字段才起作用。提供3层的QoS(服务访问质量)
总长度:至首部及数据之和的长度,单位为字节
标识:占16位,IP软件在存储器中维持了一个计数器,每产生一个数据报,计数器就加1,并将该值赋给标识字段
标志:占3位
段偏移量:占13位,上层来的数据到IP层会被分片,这几个字段用来对数据包进行标识,使数据到达目的端重组时不会乱序
生存时间:占8位 常用英文缩写TTL(time to live) 表明其数据报在网络中的寿命,当TTL为0就丢弃这个数据报,防止数据包在网络传输循环不停的传。数据包在路由器转发的消耗时间,如果小于1s TTL值就减1,如果为0还未到达目的就丢掉。
协议号:占8位 指出该数据报写到的数据使用何种协议,以便使目的主机IP层知道将数据部分上交给哪个处理过程(标识封装的上层数据是TCP还是UDP。 TCP 6 UDP 17)
首部校验和:占16位,只校验数据报首部,不包括数据部分,因为数据报每经过一个路由器,都要重新计算一下首部校验和(如生存时间,标志,等可能发生变化)
源地址:发送方IP地址 32位
目的地址:接收方IP地址 32位
二、路由器工作原理
2.1 路由
从源主机到目标主机的转发过程(跨网络访问)
包含两个基本动作
确定最佳路径:手动指定、使用动态路由,根据动态路由协商方式
通过网络传输信息
2.2 路由器工作模式
路由器:能够将数据包转发到正确的目的地,并在转发过程中选择最佳路径的设备
路由器转发数据过程
接收数据包—>查看目的IP地址—>与路由表进行匹配找到转发端口—>转发到该端口
具体过程
主机1.1发送数据包给主机4.1 因为IP地址不在同一网段,主机将数据包发送给本网段的网关路由器A
路由器A收到数据包,查看数据包IP首部中目标IP地址,再查找自己的路由表,数据包目标IP地址4.1是属于4.0网段,路由器A在路由表中找到4.0网段转发接口是s0(如果没有记录需要给路由器配置动态路由协议,让他协商学习到该网段的路由条目。)于是路由器A将数据包重新封装后,通过S0接口转发出去
网络中的每一个路由器都按这样的步骤转发数据,直到到达路由器B,用同样的方法从E0口转发出去,4.1主机收到这个数据包。
如果是同网段,可以直接通过ARP广播查找目标主机,使用MAC地址建立通信。不同网段需要将数据包发送给网关。
2.3 路由表
直连路由:当路由器接口配置好对应IP地址,并开启接口后自动生成
非直连路由:手动配置静态路由或者使用动态路由协议学习到。
2.4 静态路由
由管理员手动配置,不灵活而且是单向的
默认路由(特殊静态路由):可到达任意路由
使用场景:一般应用于末梢网络,网络最末端。(一个路由器的一段只连接了一个网络)
主要用途:当在路由器中找不到目标网络的路由条目时,再去查看默认路由
2.5 动态路由
通过某种动态路由协议,自动去建立自己的路由表,并能够根据实际情况动态调整
常见的动态路由协议:RIP、OSPF、IS-IS、BGP、IGRP、EIGRP等
2.6 分层次的路由协议
互联网划分为许多较小的自治系统AS.每个自治系统通常运行相同的路由算法。不同AS之间彼此互联,因此一个AS中会有一个或多个路由器用于不同AS之间的通信,即负责将本AS内之外的目的地址转发分组。这些路由称为网关路由
内部网关协议(IGP):在一个自治系统内不使用的路由选择协议,常见的:RIP、OSPF
外部网关协议(EGP):用于实现不同自治系统之间通信传递,这样的协议就是EGP,目前使用最多的是BGP-4版本
RIP(Routing Information Protocol)协议——路由信息协议,是一种分布式的基于距离向量的路由选择协议,最大的优点是简单。
OSPF(Open Shortest Path First)协议——开放最短路径优先协议。“最短路径优先”是因为使用了迪杰特斯拉(Dijkstra)提出的最短路径算法 SPF。
IS-IS属于内部网关协议IGP(Interior Gateway Protocol),用于自治系统内部。IS-IS是一种链路状态协议,使用最短路径优先SPF(Shortest Path First)算法进行路由计算,与OSPF协议有很多相似之处。
BGP协议是外部网关协议,目前使用最多的版本是BGP-4,通常简写为BGP。
IGRP内部网关路由协议(英语:Interior Gateway Routing Protocol,缩写为IGRP),又译网关间选径协议,是一种内部网关协议,采用距离向量算法
EIGRP 是另一种思科路由协议 IGRP(内部网关路由协议)的增强版。 IGRP 是较早的有类距离矢量路由协议,自 IOS 12.3 后已被淘汰。