关于前端:讲给前端的网络安全2-互联网的构成

5次阅读

共计 2614 个字符,预计需要花费 7 分钟才能阅读完成。

上次讲到了浏览器在网络层面上产生的事,这次对互联网的构造做一些介绍。

  • 讲给前端的网络安全(1):浏览器与网络的那些事

网络资源调配

在解互联网之前,要先理解网络资源是怎么调配的。

依据 APNIC 的这张图能够看到,调配网络资源的最高机构是 IANA(Internet Assigned Numbers Authority),是总管网络资源的机构,IANA 会下放资源给绝对应的 RIR(区域互联网注册管理机构),世界上共有五个 RIR,别离是:

  • AfriNIC
  • ARIN
  • APNIC
  • LACNIC
  • RIPE

这样单位会再下放给 NIR(National Internet Registry),比方中国大陆的 CNNIC,NIR 再下放给 ISP,也就是你的网络服务供应商,比方挪动、联通等,ISP 最终调配给终端用户。很容易看出,整个网络资源调配是一个树状的构造

互联网(Internet)

先看一下这张图,看不懂没关系,稍后会用这张图解说一些互联网的基本概念

自治零碎,ASN(自治零碎号)

自治零碎的英文简写为 AS(Autonomous System),是组成一个网络的根底单位,基本上是一个组织或一种特定用处会成立一个自治零碎。每一组零碎会都有本人的编号,须要向网络管理组织申请(RIR,LIR,NIR)。

在下面那张图中,一个色彩的云就是属于一个自治零碎,而同一个自治零碎内会蕴含许多设施。用蓝色线与橙色线连起来的货色就是路由器,它们可能是家用路由器,也可能是更高规格的边界路由器。

路由表 (Routing Table)

如果 AS1 最左上角的那台电脑的 IP 是 1.1.1.1,AS5 最左下角的电脑 IP 是 2.2.2.2,当 1.1.1.1 想与 2.2.2.2 通信时,1.1.1.1 这台电脑首先会把数据包发往与他连贯的一台路由器,而这台路由器上有一张神奇的表通知数据包应该怎么往 2.2.2.2 走。

而这张表就叫路由表,路由器会依据这张表来转送数据包,而路由表有多种生成形式,等下会介绍一些生成形式。

数据包在同一个 AS 内一路转发后,将会达到 AS1 的边界路由器,在这里将数据包转交给 AS5 的边界路由器,AS5 的路由器也会依据它们本人的路由表进行转发。最终将数据包包送到 IP 为 2.2.2.2 的这台电脑。

EGP(内部网关协定)

EGP 是不同的 AS 之间所传递的路由的协定,而传递的路由信息​​最终会被汇聚在路由器中,造成一张最佳的路由表。目前宽泛应用的 EGP 协定为 BGP,AS 之间就是用这个协定来传递彼此的路由。当前我会专门写一篇文章来介绍 BGP 这个协定。

IGP(外部网关协定)

IGP 指的是同一个 AS 中的替换路由的路由协定,目前常见的有 OSPF,EIGRP 等,同样也是替换路由表用的。

AS 角色关系

AS 依据他们与其余 AS 的关系,可能会有多个称呼,咱们就用这以下这张图来解释

假如这里有六个 AS,而咱们为 AS 2,咱们接管了 AS 3,AS 4,AS 1 的路由,并把 AS 3 与 AS 4 连同本人的(AS 2)的路由一起输入给 AS 1,AS 3 与 AS 4 须要通过 AS 2 能力连上 AS 1、AS 5、AS 6 内的电脑,这时就有好几种 AS 角色关系呈现:

  • Customer AS
    AS 2 为 AS 1 的 Customer AS,因为 AS 2 必须通过 AS 1 将他的路由信息转发给给其余 AS,且流量必须通过 AS 1 能力连到其余 AS,这个动作被称作 Transit,咱们能够说 AS 1 给 AS 2 提供 Transit 服务。同理,AS 3 与 AS 4 也是 AS 2 的 Customer AS;AS 5 与 AS 6 也是 AS 1 的 Customer AS。
  • Upstream AS
    Upstream AS 与 Customer AS 是相同的概念,只是对待角色关系的方向不一样而已,Upstream 顾名思义就是上游。当一个 AS 可能提供的连贯越多,也就有更多的机会成为他人的上游。比方 AS 2 就是 AS 3 与 AS 4 的上游 AS
  • Peering
    Peering 简略来说就是两个 AS 之间相互连结,让对方能够连到你底下的网络资源。假如 AS 3 与 AS 4 之间的连贯不想通过 AS 2 帮他们 Transit,那么 AS 3 能够与 AS 4 退出一条链接,相互 Peering 彼此,让对方能够间接连到本人底下的资源

这几种角色关系能够同时存在

AS 分类

依据下面介绍的 AS 角色关系,基本上能够将现有的 AS 分为三类,这三类的定义非常简单:

  1. Multi-homed AS:指连贯了其余多个 AS 的 AS
  2. Stub AS:又叫 Single-homed AS,依据下面介绍的 Multi-homed AS,不难看出是只连贯一个 AS 的 AS
  3. Transit AS:使其余 AS 连到另一个 AS 的 AS,听起来有点拗口,上图中 AS 3 要连到 AS 4 须要通过 AS 2,而 AS 2 在这里就是一个 Transit AS

AS 分级

基本上咱们将 AS 分为三个等级,也就是 Tier 1~3。互联网从整体来说大抵体现为一个树状构造。

  • Tier 1:T1 等级的 AS 与其余 Tier 1 出现 Full Mesh 的连贯状况。
  • Tier 2:T2 等级提供 Transit 服务给其余 AS,同时也会向 Tier 1 AS 寻求并应用 Transit 的服务。
  • Tier 3:AS 的最底层,单纯应用他人提供的 Transit 服务。

网络根底建设

Internet Exchange 简称 IX,AS 能够在这里不便的连贯其余 AS,能够到 PeeringDB 这个网站去查看,目前中国大陆在下面注销的 IX 有这些:

基本上整个中国的网络都会在这几个中央连接起来。

小结

从整体而言,组成互联网的最小单位是自治零碎,而互联网路由器的性能次要为以下两点:

  1. 替换路由信息
  2. 依据路由表转发数据包


本文首发微信公众号:前端先锋

欢送扫描二维码关注公众号,每天都给你推送陈腐的前端技术文章


欢送持续浏览本专栏其它高赞文章:

  • 深刻了解 Shadow DOM v1
  • 一步步教你用 WebVR 实现虚拟现实游戏
  • 13 个帮你进步开发效率的古代 CSS 框架
  • 疾速上手 BootstrapVue
  • JavaScript 引擎是如何工作的?从调用栈到 Promise 你须要晓得的所有
  • WebSocket 实战:在 Node 和 React 之间进行实时通信
  • 对于 Git 的 20 个面试题
  • 深刻解析 Node.js 的 console.log
  • Node.js 到底是什么?
  • 30 分钟用 Node.js 构建一个 API 服务器
  • Javascript 的对象拷贝
  • 程序员 30 岁前月薪达不到 30K,该何去何从
  • 14 个最好的 JavaScript 数据可视化库
  • 8 个给前端的顶级 VS Code 扩大插件
  • Node.js 多线程齐全指南
  • 把 HTML 转成 PDF 的 4 个计划及实现

  • 更多文章 …
正文完
 0