数据传输原理(下)—— 网络设备部分 – 作者:chenhh

1620820668_609bc2bc3f250da6ceb6a.png!small?1620820670378

L2/L3网络设备

组成原理

1620820697_609bc2d9e02339c6719d1.png!small?1620820698300

软件框架

1620820745_609bc3096993551729a09.png!small?1620820746959

1620820764_609bc31c1de9f90ff4f3e.png!small?1620820766417

MAC地址学习表–二层数据包转发依据

MAC地址表来源:静态添加、动态学习

1620820798_609bc33e1cc8f8fe524ce.png!small?1620820798928

1620820818_609bc352ce694374245cf.png!small?1620820821310

路由表–三层数据包转发依据

1620820865_609bc3819076baf630725.png!small?1620820868525

1620820851_609bc373b5426f51271ed.png!small?1620820855004

路由表来源

IP报文中的目的IP地址往往是主机地址,而路由表中的目的地址往往为网络地址,怎么让二者匹配呢?这里面有个底层的操作:首先将IP报文中的目的地址和路由表项中的子网掩码进行“逻辑与”操作,得到一个网络地址,然后拿此网络地址与路由项中的网络地址做比较,如果一致就认为匹配,否则认为不匹配。

如果路由项匹配,则路由器查看所匹配的路由项的下一跳地址是否在直连的链路上。如果在直连的链路上,则根据此下一跳转发;如果不在直连的链路上,则需要在路由表中再次查找此下一跳地址所匹配的路由项(路由迭代)。

确定了下一跳地址后,路由器将此报文送往对应的接口,接口进行相应的地址解析,解析出对应的链路层地址后,对IP报文进行数据封装并转发。

1、直连路由

1620820917_609bc3b5bd050f029a20e.png!small?1620820927129

2、静态路由(含黑洞路由)

1620820924_609bc3bc7c93ef33d3aa0.png!small?1620820927129

3、动态路由,如OSPF、BGP

1620820949_609bc3d577b1e9037378b.png!small?1620820953002

4、策略路由(不存在于路由表)

1620820973_609bc3ed11fe3c6d4bc70.png!small?1620820976954

动态路由协议-IGP、EGP

每一个自治系统内部网络用IGP协议,自治系统之间用EGP协议交换路由信息

IGP与EGP的路由信息通过路由重发布的方式相互引入

IGP典型代表–OSPF

EGP典型代表–BGP

1621000032_609e7f60e8bef9ad1b22e.png!small

IGP动态路由协议-OSPF

OSPF:Open Shortest Path First 开放式最短路径优先是一种内部网关协议(IGP),用于在单一自治系统(AS)内决策路由,最多容纳上万条路由条目信息。

1621000060_609e7f7cc313d9c40c906.png!small?1621000062378

1621000072_609e7f887539e8e077d60.png!small

OSPF的七种类型LSA:

1、路由器LSA (Router LSA) 由区域内所有路由器产生,并且只能在本个区域内泛洪广播。

这些最基本的LSA通告列出了路由器所有的链路和接口,并 指明了它们的状态和沿每条链路方向出站的代价。

LSA传播范围:本域内传递,不穿越ABR(边界路由器)

LSA通告路由器:本路由器的Router ID

LSA链路状态ID:本路由器的Router ID

LSA包含的内容:本路由器的直连邻居,以及直连接口的信息

2、网络LSA (Network LSA) 由区域内的DR或BDR路由器产生,报文包括DR和BDR连接的路由器的链路信息。

网络LSA也仅仅在产生这条网络LSA的区域内部进行泛洪。

LSA传播范围:本域(存在以太网络连接的域)内传递,不穿越ABR(边界路由器)

LSA通告路由器:DR的Router ID

LSA链路状态ID:DR的接口IP

LSA包含的内容:MA网络中的路由器以及本网的掩码信息和DR路由器本身的Router ID

3、网络汇总LSA (Network summary LSA) 由ABR产生,可以通知本区域内的路由器通往区域外的路由信息。

在一个区域外部但是仍然在一个OSPF自治系统内部的缺省路由也可以通过这种LSA来通告。

如果一台ABR路由器经过骨干区域从其他的ABR路由器收到多条网络汇总LSA,

那么这台始发的ABR路由器将 会选择这些LSA通告中代价最低的LSA,

并且将这个LSA的最低代价通告给与它相连的非骨干区域。

LSA传播范围:域间路由,能泛洪到整个AS中,始发路由器除外。

LSA通告路由器:ABR的Router ID(经过一个ABR,就会改为这个ABR的Router ID)

LSA链路状态ID:网络号

LSA包含的内容:本区域中的路由信息,包括网络号和掩码

4、ASBR汇总LSA (ASBR summary LSA)

也是由ABR产生,但是它是一条主机路由,指向ASBR路由器地址的路由。

LSA传播范围:泛洪到整个AS中,(把ASBR的Router ID传播到其他区域,让其他区域的路由器得知ASBR的位置。)

LSA通告路由器:ABR的Router ID(经过一个ABR,就会改为这个ABR的Router ID)

LSA链路状态ID:ASBR的Router ID

LSA包含的内容:本区域中的路由信息,包括网络号和掩码

注意:在ASBR直连的区域内,不会产生4类的LSA,因为ASBR会发出1类的LSA,其中会指明自己是ASBR。

5、自治系统外部LSA (Autonomous system external LSA)

由ASBR产生,告诉相同自治区的路由器通往外部自治区的路径。

自治系统外部LSA是惟一不和具体的区域相关联的LSA通告,将在整个自治系统中进行泛洪。

LSA传播范围:域外路由,不属于某个区域,一个LSA即是一条路由信息

LSA通告路由器:ASBR的Router ID,通告路由器不会发生改变

LSA链路状态ID:网络号

LSA包含的内容:将外部自治系统传递进来,包含着域外的路由信息

6、组成员LSA (Group membership LSA)  * 目前不支持组播OSPF (MOSPF协议)

7、NSSA外部LSA (NSSA External LSA)

由ASBR产生,几乎和LSA 5通告是相同的,

但NSSA外部LSA通告仅仅在始发这个NSSA外部LSA通告的非纯末梢区域内部进行泛洪。

在NSSA区域中,当有一个路由器是ASBR时,不得不产生LSA 5报文,

但是NSSA中不能有LSA 5报文,所有ASBR产生LSA 7报文,发给本区域 的路由器。

EGP动态路由协议-BGP

BGP(Border Gateway Protocol 边界网关协议)是一种外部网关协议(EGP),用于在不同的自治系统(AS)之间交换路由信息;

最多容纳上百万条路由条目(目前互联网路由条目为50多万条);

BGP AS号由IANA互联网数字分配机构管理分配;

使用最多2字节长度的AS号码,即1-65535。其中1-64511为公有AS,64512-65534为私有AS;2009.1后,增加至4字节长度,即:65536 -4294967295。

1621000100_609e7fa4b6d44f9abf8ad.png!small?1621000101329

选路原则:

1621009253_609ea365870357ffecb0e.png!small?1621009254535

策略路由

策略路由的功能是控制报文转发,其优先级高于路由表,数据转发先匹配策略路由,当匹配不上再去匹配路由表!

1621000130_609e7fc29740061450e9e.png!small?1621000147841

路由策略

1621000245_609e80351215c7ee81a3d.png!small?1621000252600

策略路由与路由策略区别

1621000141_609e7fcd13cbfe1e32bd4.png!small

FIB表–转发表

当路由表中存在多个路由项可以匹配目的IP地址时,路由查找进程会选择其中掩码最长的路由项用于转发。那么路由表中路由项数量越多,所需查找及匹配的次数也就越多,其转发效率也就越低。

为了做到控制平面和转发平面的分离,系统构建了另一张FIB表,也称为转发表,专注于数据报文的转发,其中FIB的表项来源于路由表项。

在计算路由信息的时候,不同路由协议所计算出来的路径可能会不同。在这种情况下,路由器会选择优先级较高的路由协议发现的路由作为最优路由,并置为Active状态;而其他路由作为备份路由,置为Inactive状态。此时Active状态的路由表项会由系统导入FIB表中,作为系统转发的依据。另外,在某些系统中,FIB表项也可能来源于ARP解析,即系统将通过ARP解析而得到的本地网段内的主机路由也添加到FIB表中。

FIB表与路由表是同步更新的,系统的控制平面发现新的路由信息,根据路由信息更新自己的路由表,生成新的Active状态的路由表项,然后更新FIB表;如果原路由表中处于Active状态的路由表项失效,系统也会删除相关FIB表项。

二层网络设备传输原理

1621000290_609e806206820e32b7f79.png!small?1621000291569

三层网络设备传输原理

1620821380_609bc584c06fd0a15614b.png!small?1620821381450

VLAN–虚拟局域网

1621000309_609e80758bce7a3af62ea.png!small?1621000311400

1621000315_609e807be4123ab452f46.png!small?1621000319190

VLAN–实现原理

1621000326_609e8086ad561c8bd25e9.png!small?1621000328166

1621000333_609e808db150e5c94c9b8.png!small?1621000335793

进入交换机打vlan标签,出交换机去掉vlan标签

VLAN–VLAN间路由

1621000340_609e8094f300fe7a6466b.png!small?1621000342890

1621000346_609e809af33e497bdfb3a.png!small?1621000349084

VLAN–三层交换机

1620821813_609bc735e7bb8ba1b4f0d.png!small?1620821827291

端口聚合

交换机的端口聚合方式:手工方式、LACP静态方式、LACP动态方式

服务器的端口聚合方式有7种bond模式

1621000385_609e80c13369e83b02aa5.png!small?1621000396682

1621000391_609e80c7c9eee3c5f52a3.png!small?1621000396682

LLDP

LLDP(Link Layer Discovery Protocol,链路层发现协议)是802.1ab中定义的链路层协议,它将本地设备的信息组织成TLV(Type/Length/Value,类型/长度/值)封装在LLDPDU(Link Layer Discovery Protocol Data Unit,链路层发现协议数据单元)中发送给直连的邻居,同时也把从邻居接收的LLDPDU 以标准MIB(Management Information Base,管理信息库)的形式保存起来。通过LLDP,设备可以保存和管理自己以及直连邻居设备的信息,供网络管理系统查询和判断链路的通信状况。LLDP不会配置也不会控制网络元素或流量,它只是报告第二层的配置。

1621000407_609e80d72d5fd865b5157.png!small?1621000418389

1621000409_609e80d9ea3d5bd523e52.png!small?1621000418388

BFD与NQA

BFD双向转发检测,在两台网络设备上建立会话,用来检测网络设备间的双向转发路径,为上层应用服务。BFD本身并没有邻居发现机制,而是靠被服务的上层应用通知其邻居信息以建立会话。会话建立后会周期性地快速发送BFD报文,如果在检测时间内没有收到BFD报文则认为该双向转发路径发生了故障,通知被服务的上层应用进行相应的处理。BFD可与静态路由、OSPF路由、BGP路由、VRRP协议联动。

1621000423_609e80e7aa970a4d7472d.png!small?1621000425152

NQA(Network Quality Analyzer)网络质量分析 是一种实时的网络性能探测和统计技术,可以对响应时间、网络抖动、丢包率等网络信息进行统计。NQA还提供了与Track和应用模块联动的功能,实时监控网络状态的变化。 NQA通过发送测试报文,对网络性能或服务质量进行分析,为用户提供网络性能参数,如时延抖动、HTTP的总时延、通过DHCP获取IP地址的时延、TCP连接时延、FTP连接时延和文件传输速率等。。NQA可与静态路由、OSPF路由、BGP路由、VRRP协议联动。NQA是一种单向检测机制。

1621000430_609e80ee0b893ddd4cf1f.png!small?1621000431726

syslog

syslog是一种日志记录的标准协议。在UNIX系统,路由器、交换机等网络设备中,系统日志(System Log)记录系统中任何时间发生的大小事件。管理者可以通过查看系统记录,随时掌握系统状况。UNIX的系统日志是通过syslogd这个进程记录系统有关事件记录,也可以记录应用程序运作事件。通过适当的配置,我们还可以实现运行syslog协议的机器间通信,通过分析这些网络行为日志,藉以追踪掌握与设备和网络有关的状况。

1621000440_609e80f8676e91da75b34.png!small?1621000454753

端口镜像

SPAN技术主要是用来监控交换机上的数据流,大体分为两种类型,本地SPAN和远程SPAN。

Local Switched Port Analyzer (SPAN) and Remote SPAN (RSPAN),实现方法上稍有不同。 利用SPAN技术我们可以把交换机上某些想要被监控端口(以下简称受控端口)的数据流COPY或MIRROR一 份,发送给连接在监控端口上的流量分析仪。

本地端口镜像

1621000447_609e80ff42ce411f0c320.png!small?1621000454754

远程端口镜像

1621000463_609e810fcc3d38ce88326.png!small?1621000473150

SNMP

SNMP 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。 SNMP 使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过 SNMP 接收随机消息(及事件报告)网络管理系统获知网络出现问题。

1621000468_609e811434b3586732b33.png!small?1621000479122

1621000475_609e811b2f6e9e4292c66.png!small?1621000479123

Flow分析技术

Flow分析技术是以数据流(将协议五元组相同的数据包归为一条流)为基本研究对象,由于不同的应用类型体现在会话连接或数据流上的状态各有不同,可以通过获取一系列流的行为特征,建立流量特征模型,通过分析会话连接流的包长、连接速率、传输字节量、包与包之间的间隔等信息来与流量模型对比,从而实现鉴别应用类型和攻击行为的目的。Flow分析技术主要分为三部分:流特征选择、流特征提取、分类器。 Flow分析技术的前提是flow流报文的获取,一般可以通过:netflow、netstream、sflow等协议从网络设备中直接获取,也可以通过镜像数据包从特定工具(如nprobe)转化成flow流报文(UDP报文)。

1621000485_609e8125591ba7c92d126.png!small?1621000504463

网络组网

1621000492_609e812cd91dd2f4252d2.png!small?1621000504463

来源:freebuf.com 2021-05-15 00:27:30 by: chenhh

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论