前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IT全栈-网络03-网络进阶篇

IT全栈-网络03-网络进阶篇

作者头像
大话IT架构
发布2021-03-09 16:55:31
8450
发布2021-03-09 16:55:31
举报
文章被收录于专栏:大话IT架构大话IT架构

01

PART

开篇点题

网络第一篇文章:IT全栈-网络01-其实网络“很简单”,通过对比现实世界中案例“发快递”和网络世界中案例“文件传输”,为读者建立了基本的“网络体系”。

网络第二篇文章:IT全栈-网络02-网络基础知识,在网络第一篇文章的基础上进一步介绍网络基础知识(网络分层模型、MAC和IP基础知识、ARP|MAC|路由表知识、HUB|交换机|路由器工作原理、常见网络设备和传输介质、数据传输中解封包过程),让读者具备“初级网络工程师”相关知识。

本文是网络第三篇文章,重点介绍网络进阶知识,让读者具备“中级网络工程师”相关知识。

02

PART

网络二|三层重点理解

A

现实世界中二|三层现象

情况介绍

  1. 员工A1-A3和员工AGW属于营业部A;员工AGW是营业部A中的领导
  2. 员工B1-B3和员工BGW属于营业部B;员工BGW是营业部B中的领导
  3. 营业部AB分别是两个不同的部门

本部门沟通(二层)

  1. 假设现在有部门内部员工沟通需求(即营业部A中员工A1和A2沟通)
  2. A1直接去找A2;A2知道A1是本部门兄弟,热情接待积极响应,还留下来一起吃饭探讨人生

跨部门沟通(三层)

  1. 假设现在有跨部门沟通需求(即营业部A和营业部B相互沟通合作)
  2. 营业部A的员工A1直接去找营业部B的员工B1,会发生什么情况呢?(a.B1脾气不好,不搭理你 b.B1脾气好,告诉A1“这事我决定不了,建议你去找我领导BGW问问”;如果A1真的直接去找BGW大概率是不搭理你,BGW会想:你谁啊?你领导AGW干嘛去了?)
  3. 跨部门沟通正确姿势:A1和他领导AGW沟通好,由AGW转给BGW;BGW收到后再和B1沟通后再答复

B

网络世界二|三层现象

情况介绍

  1. 营业部A中:3主机+1交换机+1路由器
  2. 营业部B中:3主机+1交换机+1路由器
  3. 营业部AB分别是两个不同的部门

本部门沟通(二层)

  1. A1找A2沟通,本部门兄弟直接走二层
  2. A1如何确定A2是本部门兄弟呢?(a.A1的IP:192.168.1.1 掩码:255.255.255.0,通过IP和掩码能判断出本部门兄弟的IP范围为:192.168.1.0-255,掐头去尾后为192.168.1.1-254,192.168.1.0为本部门网络地址,192.168.1.255为本部门广播地址 b.A1的IP:192.168.1.2,在本部门兄弟IP范围192.168.1.1-254内 c.A1确认A2是本部门兄弟)

跨部门沟通(三层)

  1. A1找B1沟通,跨部门需要走三层
  2. A1如何确定B1是外部门兄弟呢?(a.A1的IP:192.168.1.1 掩码:255.255.255.0,通过IP和掩码能判断出本部门兄弟的IP范围为:192.168.1.0-255,掐头去尾后为192.168.1.1-254,192.168.1.0为本部门网络地址,192.168.1.255为本部门广播地址 b.B1的IP:192.168.2.1,不在本部门兄弟IP范围192.168.1.1-254内 c.A1确认B1是外部门兄弟)
  3. A1找B2b168.com要走三层,那怎么走呢?(a.A1找本部门领导(路由器A接口地址192.168.1.254;A!怎么知道谁是他领导呢?通过网关来确认,网关就是他领导) b.路由A查路由表发现找B1要先找路由器B(路由器B接口地址192.168.3.2) c.路由器B收到请求后查询路由表通过192.168.2.254接口再找到B1)

备注:以上知识在网络第二篇文章:IT全栈-网络01-网络基础知识中有详细介绍,鉴于此知识非常重要故本文再回顾一遍。

C

现实|网络世界二|三层总结

  1. 二层:任意两个人或者主机可以直接相互沟通且无需领导介入,则属于二层沟通
  2. 三层:任意两个人或者主机有相互沟通需求且必须领导介入,则属于三层沟通
  3. 现实世界中领导容易理解,网络世界中主机的领导即网关。
  4. 广播域:同一个部门属于一个广播域,领导隔离广播域(同一个部门内部畅所欲言,跨部门你不能对人家说三道四;现实实现世界中领导会叮嘱你别乱说,网络世界中路由器直接把你畅所欲言的广播包丢弃)

03

PART

网络二层进阶

A

网络场景1---最基础的网络

上图网络特点:

  1. 设备单点(路由器A故障影响互联网访问;交换机A故障影响内网访问)
  2. 链路单点(a.交换机A与路由器A之间链路故障影响互联网访问 b.主机与交换机A之间链路故障影响主机网络接入)
  3. 接入主机数量有限(取决于交换机A网口,一般一个交换机端口为16-48口)
  4. 一个广播域(192.168.1.0/24)

小问题:如何解决交换机A端口不足问题?

B

网络场景2---引入交换机级联

上图网络特点:

  1. 解决了交换机A端口不足问题(交换机ABC级联扩展端口数量)
  2. 设备单点(路由器A故障影响外网访问;交换机ABC故障影响内网访问)
  3. 链路单点(a.交换机A与路由器A之间链路故障影响互联网访问 b.主机与交换机ABC之间链路故障影响主机网络接入 c.交换机ABC之间链路故障影响主机网络接入)
  4. 链路带宽不足(交换机AB|AC|BC之间流量大于他们之间的带宽时,会引发链路拥塞)
  5. 一个广播域(192.168.1.0/24)

小问题:

  1. 如何解决交换机ABC之间链路单点问题?
  2. 如何解决交换机链路带宽不足问题?

C

网络场景3---引入xstp

上图网络特点:

  1. 解决了交换机ABC之间链路单点问题(3种选择:a.下策:平时红色线缆两头都断开,交换机ABC之间链路任一点故障后两头都人工接入 b.中策:平时红色线缆一头接入一头断开,交换机ABC之间链路任一点故障后断开端人工接入 c.上策:平时红色线缆两头都接入,交换机ABC之间链路任一点故障后交换机自动恢复---此时ABC交换机形成了二层环路,需要引入xstp破环)
  2. 设备单点(路由器A故障影响外网访问;交换机ABC故障影响内网访问)
  3. 链路单点(a.交换机A与路由器A之间链路故障影响互联网访问 b.主机与交换机ABC之间链路故障影响主机网络接入)
  4. 链路带宽不足(交换机AB|AC|BC之间流量大于他们之间的带宽时,会引发链路拥塞)
  5. 一个广播域(192.168.1.0/24)

网络二层不能有环路,如果有环路必须要想办法破环:

  1. 二层环路危害:形成广播风暴,交换机CPU被打爆
  2. 二层破环思路:物理设计无环和运行破环协议xstp

D

网络场景4---引入链路捆绑

上图网络特点:

  1. 解决了交换机ABC之间链路带宽不足问题(ABC交换机之间连接多条物理线路,多条物理线路逻辑上捆绑为一条;即解决了链路单点也解决了链路带宽不足)
  2. 设备单点(路由器A故障影响外网访问;交换机ABC故障影响内网访问)
  3. 链路单点(a.交换机A与路由器A之间链路故障影响互联网访问)
  4. 一个广播域(192.168.1.0/24)

小问题:如何解决交换机单点和主机链路问题?

E

网络场景5---引入交换机虚拟化(堆叠|M-LAG)

上图网络特点:

  1. 解决了交换机端口不足|交换机ABC之间链路带宽不足问题|链路单点问题|交换机设备单点问题,并从设计上避免环路
  2. 设备单点(路由器A故障影响外网访问)
  3. 引入的技术包括:交换机堆叠|M-LAG|端口聚合|Linux-bond|xstp(尽管无环,但是xstp仍建议开启)
  4. 一个广播域(192.168.1.0/24)

小问题:主机接入越来越多,网络会出现什么问题呢?

F

网络场景6---引入交换机虚拟化(VLAN)

在网络场景5中,接入主机越来越多会遇到什么问题呢?

  1. 广播风暴问题(把网络掩码由24变为16也可以增大主机接入数量,但是会导致广播域太大引入广播风暴问题)
  2. 主机接入数量正确的解法是:新增新网段(每一个网段都是独立的一个广播域,可以限制广播域太大导致广播风暴问题)

小问题:如果没有VLAN技术,那怎么办呢?

如果没有VLAN技术,那么新增网段只能采用上图连接拓扑。上图特点如下

  1. 物理交换机与网段死绑定(主机移动位置受限),不灵活
  2. 路由器接口消耗多(每个网段都需要1-2个路由器接口;如果网段很多,则路由器成本高昂)

上图为大量主机采用VLAN技术的解决方案

  1. 物理交换机与网段灵活绑定(主机移动位置不受限)
  2. 路由器接口消耗少(多个网段可以共用1-2个路由器接口)

G

网络设备之:管理平面|控制平面|数据平面

可以把交换机路由器理解为交通的十字路口(底层基础设施)

  1. 管理平面:负责设备的管理和监控,即网管相关功能(关注交换机路由器整体和端口状态及健康情况)
  2. 控制平面:制定各种转发规则并下发给数据平面(规则可以理解为交规)
  3. 数据平面:依据控制平面下发的规则进行数据转发(可以把数据平面理解为十字路口执勤的交警;交规不是交警制定的,交警只是机械的执行交规而已)

上图为冯诺依曼计算机体系结构;任何电子设备,其底层本质上都无法脱离上图本质(智能手机|智能电视|网络设备等)。这个是IT人最基本的认知观念和要透彻理解的基础。前面文章讲解过此知识点,由于太重要,本文再次强调一下。

H

交换机级联

交换机级联说明:

  1. 用途:解决单个交换机端口不足(如上图,单个交换机48口;如果接入主机大于48级联可以解决)
  2. 级联场景下,交换机的管理平面|控制平面|数据平面各自相互独立(可以简单理解为:多个物理交换机逻辑上合并为一个大交换机,但是交换机之间的地位是平等的)

I

交换机端口聚合

交换机端口聚合说明:

  1. 用途:解决设备之间带宽不足(如上图,假设单链路带宽1G,如果主机与交换机|交换机与交换机之间流量大于1G会导致流量拥塞)
  2. 端口聚合场景下,交换机的管理平面|控制平面|数据平面各自相互独立(交换机之间的地位是平等的)
  3. 端口聚合分为两种情况:手工聚合|LACP
  4. 手工聚合情况下,交换机两侧端口参数完全由手工配置和保证正确,聚合后带宽为链路数量*单链路带宽
  5. LACP聚合由交换机两边相互协商端口参数,LACP链路模式为M:N(M条活动链路+N条备份链路),带宽为M*单链路带宽;活动链路故障后,备份链路自动顶上
  6. 负载分担策略为:源目MAC|IP等

备注:上图中主机侧要配置网口绑定(linux下网卡绑定用bond,windows也有自己的网口绑定方法}

J

交换机堆叠|M-LAG

交换机堆叠|M-LAG说明:

  1. 用途:交换机堆叠|M-LAG解决交换机单点故障(如上图,任意一个交换机故障不会影响主机接入;级联和链路聚合无法解决交换机单点故障问题)
  2. 交换机级联|堆叠|M-LAG对比,见下图

数据中心后续M-LAG逐步替换堆叠,原因如下

  1. 交换机堆叠|M-LAG都可以解决交换机单点故障
  2. 交换机堆叠缺点:升级困难(如交换机OS升级,操作过程复杂且容易出问题)+故障处理复杂(虽然厂家宣称主交换机故障后会切换到从交换机,有时候会有各种问题)
  3. M-LAG完美的规避了交换机堆叠的确定:升级容易+故障处理简单(两个交换机还是各自独立)
  4. 交换机堆叠有点像集权制(多个交换机合并为一个逻辑交换机,所有交换机听从主交换机指挥,主交换机故障后会偶发切换不成功);M-LAG有点像协商机制(多个交换机地位平等,相互协商保证数据平面一致)

K

交换机xstp

物理链路成环的优缺点分析:

  1. 上图交换机ABC物理链路连接成环
  2. 优点:链路冗余(假设上图中无红色链路,那么交换机AB之间链路故障,则交换机A失去连接;交换机BC之间链路故障,则交换机C失去连接;现在交换机ABC物理链路成环,则支持交换机AB|交换机BC|交换机AC任意一条链路故障,交换机ABC仍可以访问网络)
  3. 缺点:广播风暴导致交换机CPU被打爆和网络瘫痪(如交换机A7发送一个ARP广播包导致从交换机A红色和蓝色链路分别发出,然后又从交换机A红色和蓝色链路分别收到然后继续发出;一个数据包最终变成百上千万数据包)
  4. 既想利用物理链路成环的优点又要规避缺点,怎么办呢?此时xstp协议就是来解决这个问题的。

如上图,交换机ABC物理链路成环且有2个VLAN(分别为VLAN1和VLAN2)

  1. 运行stp|rstp情况下,VLAN1和VLAN2只能走AB和AC物理链路;BC链路浪费(此处假设BC链路阻塞)
  2. 运行mstp情况下,VLAN1走AB和AC物理链路,VLAN2走AB和BC链路
  3. mstp相比stp|rstp没有浪费BC链路
  4. 其实mstp相比stp|rstp也很简单(stp|rstp所有VLAN不区分,全部走固定链路;mstp把VLAN进行了区分,不同的VLAN集合走不同的链路)

可以思考一下:mstp情况下,5个LVAN怎么走?

L

交换机VLAN

假设一个公司有:财务|技术|销售三个部门,无VLAN情况下

  1. 财务|技术|销售三个部门在同一个二层广播域(存在广播域太大问题)
  2. 接入主机数量不能太多

假设一个公司有:财务|技术|销售三个部门,有VLAN情况下

  1. 财务|技术|销售三个部门各在一个二层广播域(相当于把一个大的广播域隔离为三个小的广播域)
  2. 可以接入很多的主机数量

VLAN补充小知识:

  1. VLAN相当于把一个物理交换机逻辑上划分为多个交换机
  2. 交换机端口模式分为:access和trunk接口

备注:其实除了access和trunk之外,还有hybird口(华为特有)。

M

二|三层交换机

二|三层交换机的区别:

  1. 交换机通过MAC表进行数据帧转发(工作在二层,称为二层交换机)
  2. 路由器通过路由表进行数据包转发(工作在三层)
  3. 当把三层路由器的一部分功能(动态路由协议|路由转发等)下放到二层交换机,则此时称为三层交换机

备注:可以简单理解为:三层交换机=二层交换机功能+路由器功能,此描述只是便于大家理解,严格意义上来说并不严谨。

04

PART

网络三层进阶

A

三层要解决的问题

现实世界中,从A地到B地怎么办?

  1. 查导航(需要提供出发地+目的地)
  2. 路上开车遇到岔路口要看路标

那网络世界中,从A地到B地怎么办呢?其实和现实世界非常类似

现实世界和网络世界对比

  1. 现实世界中的"导航地图"等同于网络世界中"网络拓扑图"
  2. 现实世界中的"路标"等同于网络世界中的"路由表"

那网络世界中,从A地到B地怎么办呢?其实和现实世界非常类似

B

"地图"和"路标"怎么形成的呢?

现实世界中的地图和路标是由“专业测绘公司“提供底层基础数据绘制形成的;那么网络世界中的地图和路标是如何形成的呢?

链路状态路由协议的两个特点

  1. 生成地图(网络拓扑图)
  2. 生成路标信息(路由表)

备注:RIP和BGP不生成网络拓扑信息,只生成和传递路标信息(RIP为第一代网络路由协议,目前已基本上淘汰)

C

AS概念

AS概念:

  1. AS中文翻译过来是“自治系统”
  2. AS是一个路由器|三层交换机集合
  3. 同一AS由同一机构或者组织管理
  4. 同一AS执行相同的路由管理策略
  5. 不同AS之间互相不信任,但是还要相互有条件的联通

备注:可以把AS100理解为:美国,AS200理解为中国

D

AS内部路由协议:ISIS&OSPF

AS内部两大主流路由协议ISIS和OSPF概述

  1. 生成网络拓扑图
  2. 生成路标信息(路由表)

E

AS之间路由协议:BGP

AS内部运行路由协议统称为IGP(ISIS|OSPF),AS之间运行路由协议统称为EGP(BGP)

  1. AS内部路由协议之间传递:系统拓扑+路由表
  2. AS之间路由协议之间传递:路由表

备注:其实这个可以理解,同一AS内部相互信任(当然要能看到网络拓扑),不同AS之间相互不信任(只告诉你的信息够用即可,太多细节没必要告诉你)

F

路由协议分类

OSI和TCP/IP是两个不同的组织。网络发展初期,百家争鸣百花齐放,每家组织都想主导和把控网络的发展。OSI提出了OSI七层模型,TCP/IP提出了TCP/IP四层模型。最终的发展是TCP/IP胜出,但是OSI的七层模型也非常有借鉴和学习意义。后期大家学习ISIS路由协议,对此理解会更加深入。

05

PART

二|三层设备简介

A

二层常见设备:交换机

B

三层常见设备:路由器

特别说明:交换机端口类型比较单一(绝大部分都是以太网),路由器接口类型比较丰富(以太网|串口等)

C

设备分类:盒式|框式

上图为:盒式交换机

上图为:框式交换机

盒式|框式对比:

  1. 盒式:扩展困难+硬件单点(如引擎),通常用于接入
  2. 框式:扩展便捷+硬件冗余(如引擎),通常用于汇聚或核心

06

PART

数据中心网络进化史

A

第一代:xstp+vrrp

B

第二代:堆叠(istack|css)

C

第三代:m-lag|vpc和vxlan

给读者留三个问题:

  1. 数据中心三代网络之间的差异和优缺点?
  2. 数据中心南北|东西向流量相关知识?
  3. 额外扩展一点:虚拟机迁移限制有哪些?

以上问题,后续系列文章解答

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-03-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大话IT架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档