当前位置:首页 » 手机网络 » 画出无线移动网络知识图谱
扩展阅读
好的舞蹈网站有哪个 2024-10-28 14:23:47

画出无线移动网络知识图谱

发布时间: 2024-10-28 10:58:56

计算机网络-k8s网络

K8S网络模型设计:扁平的可连通的网络

K8S的网络是一个极其复杂的网络,如果想要用两个简单的词来描述K8S网络,那么我觉得扁平和可连通是K8S网络最大的特点(不懂隔离性)。

何为连通呢?

二层网络的连通:如果能够直接通过MAC帧直接通信的网络便是二层连通的网络,LAN就是这种网络

比如无限WIFI网络,比如以太网

三层网络的连通:如果能够通过IP报直接通信的网络便是三层连通的网络,便是三层连通

三层网络的连通分为两个部分,第一个部分是三层网络中的每一个LAN都是二层连通的,其次需要存在能够连通的路由来保证;这里可以简单回顾下三层网络通信的流程

通过路由表确定目标ip是否在链路上

如果在链路上,通过arp协议获取对应主机的mac地址,发送mac帧到链路上;

如果不在同一个链路上,通过本地路由表发送mac帧给下一跳,然后下一跳解析mac帧,分析ip报,继续路由直到最终跳到目标网络再次通过mac帧发送到目标主机或者到达ttl消失。

假如其中任何一个步骤不满足或者出问题,三层网络就无法连通

何为扁平呢?

就是希望可以在pod内直接通过IP进行互相通信而不需要在pod内部使用vpn之类的东西来连接其他pod(基础架构化),具体的可以看下k8s对网络的设计与要求。

k8s在设计其网络时,就希望网络对运行在其中的pod是透明的,因此提出了以下的一些要求与原则

k8s组网要求

所有的Pods之间可以在不使用 NAT网络地址转换 的情况下相互通信

所有的Nodes之间可以在不使用NAT网络地址转换的情况下相互通信

每个Pod自己看到的自己的ip和其他Pod看到的一致

k8s网络模型设计原则

每个Pod都拥有一个独立的 IP地址,而且 假定所有 Pod 都在一个可以直接连通的、扁平的网络空间中 。

不管它们是否运行在同 一 个 Node (宿主机)中,都要求它们可以直接通过对方的 IP 进行访问。

设计这个原则的原因 是,用户不需要额外考虑如何建立 Pod 之间的连接,也不需要考虑将容器端口映射到主机端口等问题。

而要想深入了解K8S的网络,就不得不去了解Linux操作系统中的网络以及计算机网络协议栈和一些网络技术

其中关于计算机网络协议栈道部分上次分享已经分享过了,所以本次的主题更多是Linux操作系统的网络以及一些网络技术

Linux操作系统中的网络

首先,我们来看下基本的linux网络,如下图所示

一个APP生成socket数据,然后经过网络协议栈包装IP报文,然后封装成MAC帧,在经过网络协议栈的过程中,会存在netfilters对数据进行一定的处理,同时也会存在路由的过程,

如果在同一个物理链路内,将直接通过ARP协议获取目标IP地址的MAC地址最终发送出去;

如果不在同一个物理链路则通过路由表确定下一跳的MAC地址,封装成MAC帧发送到目标地址。

在这个过程中,会根据路由表选择对应的端口,如果是lo端口,则会将帧原封不动的返回计算机网络协议栈,然后回到监听对应端口的SOCKET里。

如果是以太网端口则走以太网端口,如果是蓝牙或者无线网端口同理。

iptables与netfilters

iptables是一个用户空间的应用程序,通过该程序可以修改一些配置文件,这些文件定义了防火墙的一些行为,netfilters是操作系统内核的一部分,netfilters里有5个回调钩子会触发iptables里的规则;iptables只是Linux防火墙的管理工具而已,位于/sbin/iptables。真正实现防火墙功能的是

netfilter,它是Linux内核中实现包过滤的内部结构。

这里不具体讲述其实现的原理,仅仅列出netfilters的一些功能:

1)filter表——三个链:INPUT、FORWARD、OUTPUT

作用:过滤数据包 内核模块:iptables_filter.

2)Nat表——三个链:PREROUTING、POSTROUTING、OUTPUT

作用:用于网络地址转换(IP、端口) 内核模块:iptable_nat

3)Mangle表——五个链:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD

作用:修改数据包的服务类型、TTL、并且可以配置路由实现QOS内核模块:iptable_mangle(别看这个表这么麻烦,咱们设置策略时几乎都不会用到它)

4)Raw表——两个链:OUTPUT、PREROUTING

作用:决定数据包是否被状态跟踪机制处理 内核模块:iptable_raw

虚拟网络设备 tap/tun

TUN 和 TAP 设备是 Linux 内核虚拟网络设备,纯软件实现。TUN(TUNnel)设备模拟网络层设备,处理三层报文如 IP

报文。TAP 设备模拟链路层设备,处理二层报文,比如以太网帧。TUN 用于路由,而 TAP 用于创建网桥。OS 向连接到 TUN/TAP

设备的用户空间程序发送报文;用户空间程序可像往物理口发送报文那样向 TUN/TAP 口发送报文,在这种情况下,TUN/TAP

设备发送(或注入)报文到 OS 协议栈,就像报文是从物理口收到一样。

虚拟网络设备 veth-pairs

虚拟以太网电缆。使用双向有名管道实现。常用于不同 namespace 之间的通信,即 namespace 数据穿越或容器数据穿越。

虚拟网络设备 bridge

bridge是linux自带的虚拟交换机(网桥),其可以连接多个以太网设备,拥有智能处理MAC帧的能力,流向交换机的MAC帧将智能的被传输到相应的二层链路

网络命名空间

在 Linux 中,网络名字空间可以被认为是隔离的拥有单独网络栈(网卡、路由转发表、iptables)的环境。网络名字空间经常用来隔离网络设备和服务,只有拥有同样网络名字空间的设备,才能看到彼此。

从逻辑上说,网络命名空间是网络栈的副本,有自己的网络设备、路由选择表、邻接表、Netfilter表、网络套接字、网络procfs条目、网络sysfs条目和其他网络资源。

从系统的角度来看,当通过clone()系统调用创建新进程时,传递标志CLONE_NEWNET将在新进程中创建一个全新的网络命名空间。

从用户的角度来看,我们只需使用工具ip(package is iproute2)来创建一个新的持久网络命名空间。

从系统实现来说,就是原本一个数据结构是static公共的,后来变成进程私有的,在PCB里存在一个命名空间的结构,命名空间里有着网络命名空间,网络命名空间拥有着所有跟网络相关的配置数据

默认空的网络命名空间可能只有一个未启动的lo回环网卡。

两个网络命名空间可以通过以太网揽直接连着两个网络命名空间的网卡,也可以通过以太网网桥连接。

通过以太网网桥或者以太网揽连接的两个网络命名空间只能说是在二层连通的,如果希望在三层连通,还需要给每个网络命名空间配置相应的路由表规则以及分配IP地址。

如何使用虚拟网络设备联通网络命名空间

SingleHost容器网络

none模式

本质上就是创建一个网络命名空间,里面没有路由表,也没有通过veths-pair连接任何链路,外部无法访问这个容器,容器也无法访问外部

host模式

本质上就是使用宿主机的默认网络命名空间

container模式

本质上就是将当前容器部署在另一个容器所在的网络命名空间,这样发给本地的报文最终通过回环网卡回到了本机,这是同一个网络命名空间可以互通的原因

bridge模式

桥接模式就是在这些网络命名空间通过veth-pairs连接到同一个虚拟交换机上(二层连通),同时在对应的命名空间配置对应的路由表规则,但是从图片中可以看到交换机另一端连的上网络协议栈。

也就是那些MAC帧都会被宿主机接收,但是宿主机接收并不一定会处理,比如并没有开启ip转发功能(工作于路由器模式还是主机模式),那么不是本地ip的报文都会被丢弃;或者说netfilters拒绝处理

这些奇怪的报文。

理论上,这些容器发送给其他容器的mac报文是会被虚拟交换机智能转发到对应的容器的,这是同一主机不同容器互相连通的原因

假如宿主机配备了相应的路由规则和防火墙规则,那么容器的报文说能够通过路由最终转发出去的,这也是容器访问互联网的原理

但是这种模式是没法运用在多主机的情况下,因为宿主机不知道其他宿主机里的虚拟网络的路由,当相关ip报到达宿主机时,这些ip报将会被宿主机交给默认路由(下一跳:路由器)

最终路由器会把相关的ip报丢失或者到达ttl最终丢失

MultiHost容器网络

路由方案

回顾docker的单机网络模型,我们发现多主机不能通行的原因就在于你只能给当前主机配置路由规则和防火墙规则,而其他主机并不知道这些ip在你的虚拟网络中,假如能够将这些路由信息同步到其他

宿主机,那么网络便会打通。比较直接的想法就是给每台宿主机配置路由规则。而路由规则要求下一跳必须在当前网络,所以假如宿主机是二层互联的,那么通过给这些宿主机同步这些路由规则便能够

实现一个扁平的连通的网络。

其中布置在每一台宿主机可以通过k8s的daemonSet实现,而这种数据的管理可以交给etcd来实现。

这类方案便是基于路由,基于这个方案的实现有基于静态路由的flannel的host-gateway,以及基于动态路由的calico(使用边际路由协议以及一堆深奥的名词的实现)。

下面来看看Flannel的host-gateway原理(每一台宿主机都相当于本机容器网络的路由器):

通过路由方案构建的网络,宿主机也能访问这些虚拟网络里的Pod

询问基德大佬得知国际化sit环境的k8s网络接口实现就是Flannel的Host-gateway,而我们的办公网络和集群网络之间的路由是搭建好的,所以我们应该可以直接通过podId访问pod里的服务

下面是sit环境的两个服务

跟踪路由发现符合猜想

其中10.1.9.56和10.1.1.24就是宿主机的ip,这些宿主机在一个LAN里,这些宿主机相当于虚拟网络中的路由器;

猜测我们办公网和qunhe集群在一个VLAN里(二层可达)

隧道方案

隧道方案比较典型的就是UDP和XVLAN,两者都是使用Overlay网络(覆盖网络,所谓的大二层技术);其实用隧道技术最多的是VPN应用

其中UDP是XVLAN的替代品(早期Linux没有支持XVLAN协议,通过tun/tap技术将流量引到用户空间然后解包生成包再发,因为发生在用户空间而且多次导致性能较差,所以一般不推荐,除非你的linux版本比较低没法用xvlan)

下面就简单介绍下XVLAN技术的大概原理,下图是XVLAN的报文格式,可以发现就是在高层协议的报文里塞了二层报文

其中XVLAN头里有一个关键的字段,VNID这是个24位的字段,每个虚拟的网络主机都有一个自身的VNID作为标识,理论上支持2的24次方个虚拟网络。

在docker的桥接网络里,是使用docker0网桥,在Flannel的xvlan方案里则是使用cni0作为网桥(和docker0没啥区别),主要的不同是cni网桥后面连接的是flannel.1这个网络设备,应该是一个虚拟网卡

这个网卡将原始报文包装成XVLAN报文(linux高版本支持xvlan报文)

这时需要的信息有 源nodeId,目标nodeId,源vnid,源macId,目标macId,源podId,目标podId

其中目标nodeId,目标macId这两个信息是不存在的;因此需要有个方式根据目标podId获取目标nodeId以及目标macId

因此需要记录如何根据目标podId获取目标macId以及目标nodeId即可

这些数据是可以托管在某个地方的,Flannel就是将这些信息记录在etcd上

在每个node上的flannel.1网络设备通过etcd来通过对方的podId获取nodeId和macId

这样最终报文就变成了一个源ip是源nodeIp,目标ip是目标nodeIp的IP报文了(两台宿主机三层可达)

原本经过虚拟网桥是直接连接网络协议栈,但在xvlan模式下,则改为连接一个flannel1,在flannel1中将对原始报文封装成overlay报文转发

udp模式类似,只是udp转发报文说通过tap连通到用户空间,用户空间对报文进行处理然后发送(因为多次内核态用户态切换且数据问题,性能较差,仅在不支持xvlan的低版本linux中使用)

当然xvlan是一个技术,上面只是简单介绍最简单的形式

参考:

开发内功修炼之网络篇: https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MjM5Njg5NDgwNA==&action=getalbum&album_id=1532487451997454337&scene=173&from_msgid=2247485270&from_itemidx=1&count=3&nolastread=1#wechat_redirect

K8S知识图谱: https://zhaohuabing.com/post/2020-02-22-k8s-mindmap/

VXLAN协议原理简介: https://cizixs.com/2017/09/25/vxlan-protocol-introction/

② 外呼系统怎么用我也是做电销的,打电话打多了就会被封号

现在封号已经施行近一年了,这个状态会一直持续下去。
封号怎么办?首先我们要弄明白为什么会被封号。相关部门打击电信诈骗和骚扰,利用大数据智能筛查来屏蔽频繁拨打的电话,不管你有没有骚扰和诈骗,首当其冲被拦截封号的是高频呼出,高频不光是指拨打多少个,也包含平均通话时长过短、频繁被拒接等,所以你办的卡不管怎么打,打多少都会被封,尤其是新办的卡号很快就封了。
想不被封号,只有加入线路,单位可以选择办理双呼系统进行避免频繁呼出来解决。双呼是指系统转换通话,把客服打电话变成接电话,绕开高频记录,这样一个客服一天打500+个也没问题。
只要是正规公司正规业务都可以申请使用(不是诈骗不违法乱纪),准备营业执照和话术等材料提交审核后就能用,通话高清,不用戴耳机买设备高投入,彻底解决总被封的问题,非常适合有电话需求的企业。希望我的回答能帮到你。

③ 数字化时代,生活是是更简单了还是更复杂了

一张保单只需要3分钟就可以在线完成理赔了;

一个智能医生在诊断的准度、精度、速度上均超过三甲医院专科医生;

一份300多页的财报,涉及数十家公司仅仅用34天就能完成……


这些都不是想象,而是发生在平安的真实案例。这些案例的背后,正是数字化对于一家公司经营管理和业务服务带来的颠覆性改变。


今年是 “十四五”的开局之年。年初公布的“十四五”规划纲要,首次将建设数字中国单列篇章,“数字化”一词出现25次,成为高频词汇。


而在中国平安,数年前就已将全面数字化战略及经营作为至关重要的工程之一,并提出未来10年,要成为全球数字化战略及发展的领导者之一。数字化将给我们的生活带来哪些变化?平安在不同领域的数字化探索,已经让我们感受到了数字化浪潮带来的新变革。


在数字化成为一个国之战略之时,我们该如何理解数字化?平安所尝试的数字化还将会给我们带来哪些服务?数字化对于企业意味着什么,又将对人类对人类社会发展带来哪些新的探索?这些疑问,也许我们能从近日平安董事长马明哲发表《数字化之我见》的文章中找到答案。




01

数字化让极致产品服务变成现实

数字化是21世纪推动人类社会进步、提升生产力的基础工程,是人类跨越式提升认识水平和能力的革命性的进步。

——马明哲


作为国民经济和社会发展的重要风向标,“十四五”规划对数字化的发展作出了重要部署,将其推向了一个新的高度。在规划中,“数字化”一词出现了25次,第五篇更是集中描述了数字化的发展目标:迎接数字时代,激活数据要素潜能,推进网络强国建设,加快建设数字经济、数字社会、数字政府,以数字化转型整体驱动生产方式、生活方式和治理方式变革。


数字化会带来哪些变化?在金融和科技领域,企业数字化带来的最大变化在于让极致的产品服务变成现实。


因为数字化,我们看到,平安寿险代理人的工作方式有了极大的改变,他们被称为“AI+代理人”,因为每个代理人身边都有个贴身助手“Askbob”,凡是不懂的问题随时随地获得AI的支持。


因为数字化,我们都享受到了平安车险极速理赔服务的高效——客户只需要使用平安好车主APP拍照上传受损照片,3分钟即可自助完成理赔。过去一年,平安产险家用车客户平均每天有近2万线上自助理赔案件,83%的车险报案不再需要查勘员现场查勘。


因为数字化,平安的服务能力正在极大地提升,让平安的服务触角更广泛——如今平安已经拥有2.2亿个人客户、6.11亿互联网用户。


比如在平安,客户可以享受到“一个账户、多种产品”的一站式服务,用户只要一个账户入口,就像打开“任意门”能享受多元化产品和服务。


数字化帮平安架起了一条条高速公路。这些路开始修建要追溯到2009年。当时平安推出了一账通功能,通过一个账户打通不同业务场景。经过近十年的发展,这也成为了平安综合金融服务客户最坚实的“基础设施”。


数字化带来的极致用户体验,还体现在平安润物细无声的各个业务板块和服务的方方面面。比如,人还在医院“智能预赔”提前拿到赔付款。再比如,平安好医生的“云问诊”为客户提供在线咨询、转诊、挂号、在线购药服务等等。


数字化到底正在给我们的生活带来哪些改变,我们在马明哲文章中能够找到答案。


在他看来,数字化具有三大颠覆性特征,即“颠覆性的计算能力、颠覆性的认识方法、颠覆性的数据基础”。他认为,数字化的颠覆性不仅在计算能力,而且在于颠覆人类认知,能帮助人类解决更为复杂的难题,认知也更深入、更全面。


对于数字化的理解,马明哲更是超出金融、经济领域,在他看来,数字化有着更高的社会价值。数字化不仅能够察觉客观世界与人类活动的发展规律,而且能够提升认识对实践的指导作用。


因此,平安的数字化实践早已走出金融业,持续拓展到医疗医疗、汽车、房产和智慧城市等领域,贡献了更大的社会价值。今年初,平安更是提出了要打造“有温度的金融”,就是要运用数字化能力更好地为客户提供服务。


比如,我们刚刚提到的平安的AskBob智能医生。马明哲说,未来,将推广到偏远国家和地区,有望提升当地居民健康水平,提升人类的平均寿命。


再比如,在疫情期间,平安好医生率先推出抗疫24小时线上义诊,疫情高峰期累计访问量达11.1亿次;平安医保科技派遣移动CT影像车驰援武汉,通过远程线上阅片辅助诊断,并成为第一批入选新冠病毒核酸检测的定点机构。


这些都验证了马明哲认为数字化有着更高的社会价值的判断,“数字化将把人类认识客观世界、把握发展规律的能力提升到新的水平”。



02

平安何以领跑数字化?

未来10年,要成为全球数字化战略及发展的领导者之一。

——马明哲


在最新发表的文章中,马明哲更是指出全面数字化的紧迫性——数字化时代的市场竞争将更加激烈,赢家通吃。他对中国平安的全体员工发出号令——全面数字化必将成为平安可持续发展的“压舱石”与“领头雁”。


事实上,在数字化跑道上,平安是最早的先行者之一——早在2018年,平安就将原Logo中的“保险、银行、投资”六个字,改为“金融、科技”,all in 的决心由此可见。平安的数字化实践,犹如钉子一般,将集团业务发展的“四梁八柱”铆实。


一个有意思的转变是,平安发展的头20年,马明哲一直将汇丰、花旗等国际金融机构作为对标和参照,近几年,这一参照和对标对象则换成了亚马逊、谷歌等互联网公司。


平安和马明哲对数字化有如此深入的认识,与这家一直以来紧跟时代的创新基因密不可分。


在上世纪八十年代,电脑刚刚开始在中国大地开始普及,彼时马明哲就曾给公司每个人都配备一台电脑。当时,一台电脑、一台复印机和一台传真机成为平安的每家分公司开业的标配。甚至在纸质保单盛行的年代,平安的第一张保单就是用电脑出的单。


广为流传的几则故事见证了马明哲对于科技的重视:2004年,马明哲宁可漫游也要让高管使用黑莓手机办公;2009年他在保监会参加会议就已经用IPAD拍照当记录等等。


事实上,早在90年代末、21世纪初,平安就在全国金融机构中首次试水网销、电销平台,如PA18、壹钱包、万里通等项目。比如壹钱包曾经有个功能就是发红包,从时间上来看可能还早于微信红包。虽然首次试水过于超前,和当时的网速、用户习惯不匹配,但为平安的数字化实践积累了宝贵的经验。


如今的平安,已拥有25个科技研发实验室和六大科技创新研究院、24000多名研发人员,核心科技专利数已超3.2万。


在雄厚的科技实力加持下,平安已经将人脸识别、微表情识别、声纹识别、语音分析、自然语言处理、知识图谱、机器学习等技术渗透到大量业务场景,实现了多项业务的自动化和线上化,并为员工提供数字化业务辅助能力。


值得一提的是,在刚刚公布的“2021年凯度BrandZ™最具价值全球品牌排行榜”中,平安再次位列全球前50。而在该品牌价值的认定中,科技含量和数字化能力成为最重要的评判因素之一。




03

平安的数字化未来


21世纪,数字化浪潮来袭,将进一步在各行各业引发颠覆式革命,改变人类生存、发展的方式。

——马明哲


未来,数字化浪潮将会怎么改变我们的生活,给我们带来怎样的想象空间?


马明哲在文章中得出数字化对企业的5点价值与意义。


  • 其一是聪明经营,通过大数据分析,总结行业发展规律,识别市场机遇与挑战,从而在纷繁复杂的环境中看清本质,提前做出正确决策。

  • 其二是提升管理,通过数字化精简优化流程。

  • 其三是防范风险,通过对风险数据分析的前移,从财务数据、业务数据,再到行为数据,凭借人工智能的精准监测与分析,从行为源头上预防风险。

  • 其四是优化服务,金融业无需通过实物进行客户服务,更适合用数字化提升服务,优化客户体验。

  • 其五是降低成本,将简单重复的劳动力密集型工作,用人工智能替代。降低人力成本。

  • 在平安,我们看到了平安的数字化战略和实践已经开始赋能生态,在医疗健康等五大生态圈开花结果。

    那么未来,数字化领跑者平安又将去向何方?

    得到创始人罗振宇有个观点,笔者很认同。在数字化的未来社会中,人分成两类——一部分人在数字化系统的指挥下奔忙,不断产生新的数据反哺给数字化系统。而另一部分人,不断地构想未来、形成判断、画出蓝图、确定边界,来驱使数字化系统为人类服务。

    平安和马明哲注定将成为“另一部分人”。

    《新数字化之我见》这么指出:数字化不仅仅是一种技术革命,更是一种认知革命,是人类思维方式与行为模式的革命,通过科技的赋能,认识可以从表面到本质,从独立到联系,从感性到理性,从经验到科学,数字化将把人类认识客观世界、把握发展规律的能力提升到新的水平。

    身处数字化的时代,不论你从事怎样的岗位、身处怎样的行业,我们都被卷入其中。有人甚至说,所有的企业都将因为数字化重做一遍。

    显然,数字化已经不是一道选择题,而是一道必答题了。答错了、答慢了,一家企业可能就要错过了一个时代。

    而数字化带来的改变也绝不是简单地引入新技术、新设备。而是一种全新的理念更新。

    当下,数字化、数字经济成为社会、经济领域的热词。然而,我们不得不承认,除了少数少数企业主动拥抱并全力推进外,不少一些企业把数字化简单看作是一种互联网新技术的应用,停留在生产与营销过程控制的信息化上;一些企业则把数字化简单等同于将线下部分搬到线上,建立线上渠道、搞电子商务,网上买货。

    企业家与高层对数字化转型的意义和战略缺乏共识,更多的企业还只是追求管理时尚,炒数字化概念,喊数字化口号,但在操作层面上鲜有行动和建树。

    凡事,理解的深度将决定我们到达的位置;理解的角度将影响我们出发的方向。这是为何在数字化风口正劲时,早已启航的平安,其掌舵者马明哲会再次以撰文方式为数字化进行一次全面的解读,并发出新的动员号令