网络云:云技术是网络世界的真假美猴王Ya

西游记里有这么一回,真假美猴王,虚拟机和这个东西差不多,在物理机上安装虚拟软件,主要会模拟 CPU、内存、网络、硬盘,使得虚拟机感觉自己在使用独立的设备,但是真正使用的时候,当然还是使用物理的设备。虚拟机就是一个骗子,真真假假、傻傻分不清楚。

虚拟机多了,在这基础上出现了云计算技术。

虚拟网技术是Zen么实现的?

1、虚拟机要有一张网卡。对于 qemu-kvm 来说,这是通过 Linux 上的一种 TUN/TAP 技术来实现的。

2、虚拟机是物理机上跑着的一个软件。这个软件可以像其他应用打开文件一样,打开一个称为TUN/TAP 的 Char Dev(字符设备文件)。打开了这个字符设备文件之后,在物理机上就能看到一张虚拟 TAP 网卡。

3、虚拟机里面虚拟出一张网卡,让虚拟机里面的应用觉得它们真有一张网卡。于是,所有的网络包都往这里发。

4、当然,网络包会到虚拟化软件这里。它会将网络包转换成为文件流,写入字符设备,就像写一个文件一样。内核中 TUN/TAP 字符设备驱动会收到这个写入的文件流,交给 TUN/TAP 的虚拟网卡驱动。这个驱动将文件流再次转成网络包,交给 TCP/IP 协议栈,最终从虚拟 TAP 网卡发出来,成为标准的网络包。

桥接和NAT(共享与互通问题)

之前有一段时间,跟着慕课网的视频在家使用虚拟机,基本功能都实现了,但对于网络的理解,也不是很到位,所以这次下决心写计算机网络的这个专题里认真的写写,方便你我他。

虚拟机自己对自己的通信原理 可以创建虚拟的网桥,创建出来以后,将两个虚拟机的虚拟网卡,都连接到虚拟网桥 brctl addifbr0 tap0 上,这样将两个虚拟机配置相同的子网网段,两台虚拟机就能够相互通信了。

brctl addbr br0

所谓网桥,网桥的原理就是把虚拟机和物理机放在了一个局域网的网段去通信。这个就像老北京的四合院,有叔叔、姑姑、伯伯,他们都属于一个辈分,都在同一个大院里。网桥一般适用于小规模的网络。

所谓NAT, 就像是德云社的相声演员,郭德纲的徒弟太多,所以分了云鹤九霄、龙腾四海八科,每一科属于一个网段,岳云鹏和张鹤伦科不同,有点像NAT的网络结构。

使用NAT方式,你登录到虚拟机里面查看 IP 地址,会发现虚拟机的网络是虚拟机的,物理机的网络是物理机的,两个不相同。虚拟机要想访问物理机的时候,需要将地址 NAT 成为物理机的地址。

它还会在你的笔记本电脑里内置一个 DHCP 服务器,为笔记本电脑上的虚拟机动态分配 IP 地址。因为虚拟机的网络自成体系,需要进行 IP 管理。我之前搭建的虚拟机,不管三七二十一,总之就是各种设置,NAT的IP还老是换,用的是非常不爽,当时咱也不知道咋整,咱也不敢问。

隔离

有一个命令vconfig,可以基于物理网卡 eth0 创建带 VLAN 的虚拟网卡,所有从这个虚拟网卡出去的包,都带这个 VLAN,如果这样,跨物理机的互通和隔离就可以通过这个网卡来实现。

不同的用户由于网桥不通,不能相互通信,一旦出了网桥,由于 VLAN 不同,也不会将包转发到另一个网桥上。另外,出了物理机,也是带着 VLANID 的。只要物理交换机也是支持 VLAN 的,到达另一台物理机的时候,VLAN ID 依然在,它只会将包转发给相同 VLAN 的网卡和网桥,所以跨物理机,不同的 VLAN 也不会相互通信。

VLAN ID只有 4096 个,还有很大的改进空间。

ACL和安全组策略

二战时,太平洋战场为什么美帝打日本显得游刃有余,借助于得利的海空优势,日本人把陆地守的牢牢的,无奈美军的战斗机让日本兵防不胜防,打得是落花流水。

那么网络云怎么保证安全?

仅仅开放需要的端口,而将其他的端口一概关闭。这个时候,你只要通过安全措施守护好这个唯一的入口就可以了。采用的方式常常是用 ACL(Access Control List,访问控制列表)来控制 IP 和端口。

设置好了这些规则,只有指定的 IP 段能够访问指定的开放接口,就算有个有漏洞的后台进程在那里,也会被屏蔽,黑客进不来。在云平台上,这些规则的集合常称为安全组。

此处是重点:当一个网络包进入一台机器的时候,都会做什么事情?

首先拿下 MAC 头看看,是不是我的。如果是,则拿下 IP 头来。得到目标 IP 之后呢,就开始进行路由判断。在路由判断之前,这个节点我们称为PREROUTING。如果发现 IP 是我的,包就应该是我的,就发给上面的传输层,这个节点叫作INPUT。如果发现 IP 不是我的,就需要转发出去,这个节点称为FORWARD。如果是我的,上层处理完毕完毕后,一般会返回一个处理结果,这个处理结果会发出去,这个节点称为OUTPUT,无论是 FORWARD 还是 OUTPUT,都
是路由判断之后发生的,最后一个节点是POSTROUTING。

网络云的红绿灯

城市交通得以顺利通行,主要是有红绿灯来保障人流和车流,云中的网络 QoS(Quality of Service),从而保障大多数用户的服务质量。

  • 无类别排队规则,这是一种不把网络包分类的技术。

会建立很多的 FIFO 的队列,TCP Session 会计算 hash 值,通过 hash 值分配到某个队列。在队列的另一端,网络包会通过轮询策略从各个队列中取出发送。这样不会有一个 Session 占据所有的流量。

当然如果两个 Session 的 hash 是一样的,会共享一个队列,也有可能互相影响。hash 函数会经常改变,从而 session 不会总是相互影响。

  • 令牌桶规则,所有的网络包排成队列进行发送,但不是到了队头就能发送,而是需要拿到令牌才能发送。

写在结尾,复习了好几天,但是虚拟机这部分不那么容易理解,有些内容等有机会在更新续集吧,欢迎你的到来,有梦想的人是少年。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

stark张宇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值