haowll
这个作者很懒,什么都没留下…
展开
-
结束语-放弃完美主义,执行力就是限时限量认真完成
放弃完美主义,执行力就是限时限量认真完成原创 2022-12-24 09:35:09 · 735 阅读 · 0 评论 -
网络协议知识串讲-第40讲-搭建一个网络实验环境:授人以鱼不如授人以渔
搭建一个网络实验环境:授人以鱼不如授人以渔原创 2022-12-24 09:24:40 · 617 阅读 · 0 评论 -
网络协议知识串讲-第39讲-用双十一的故事串起碎片的网络协议(下)
到此,我带着你用下单过程把网络协议的知识都复习了一遍。授人以鱼不如授人以渔。下一节,我将会带你来搭建一个网络实验环境,配合实验来说明理论。原创 2022-12-24 09:23:44 · 190 阅读 · 0 评论 -
网络协议知识串讲-第38讲-用双十一的故事串起碎片的网络协议(中)
真不容易啊,本来以为上篇就发送下单包了,结果到中篇这个包还没发送出去,只是封装了一个如此长的网络包。别着急,你可以自己先预想一下,接下来该做什么了?原创 2022-12-24 09:21:59 · 538 阅读 · 0 评论 -
网络协议知识串讲-第37讲-用双十一的故事串起碎片的网络协议(上)
对于手机App来说,可以绕过刚才的传统DNS解析机制,直接只要HTTPDNS服务,通过直接调用HTTPDNS服务器,得到这三个SLB的公网IP地址。原创 2022-12-24 09:20:44 · 188 阅读 · 0 评论 -
热门技术中的应用:微服务相关协议-第36讲-跨语言类RPC协议:交流之前,双方先来个专业术语表
- GRPC是一种二进制,性能好,跨语言,还灵活,同时可以进行服务治理的多快好省的RPC框架,唯一不足就是还是要写协议文件。- GRPC序列化使用Protocol Buffers,网络传输使用HTTP 2.0,服务治理可以使用基于Envoy的Service Mesh。原创 2022-12-21 00:46:52 · 386 阅读 · 0 评论 -
热门技术中的应用:微服务相关协议-第35讲-二进制类RPC协议:还是叫NBA吧,总说全称多费劲
- RESTful API对于接入层和Controller层之外的调用,已基本形成事实标准,但是随着内部服务之间的调用越来越多,性能也越来越重要,于是Dubbo的RPC框架有了用武之地。- Dubbo通过注册中心解决服务发现问题,通过Hessian2序列化解决协议约定的问题,通过Netty解决网络传输的问题。- 在更加复杂的微服务场景下,Spring Cloud的RESTful方式在内部调用也会被考虑,主要是JAR包的依赖和管理问题。原创 2022-12-21 00:46:13 · 433 阅读 · 0 评论 -
热门技术中的应用:微服务相关协议-第34讲-基于JSON的RESTful接口协议:我不关心过程,请给我结果
- SOAP过于复杂,而且设计是面向动作的,因而往往因为架构问题导致并发量上不去。- RESTful不仅仅是一个API,而且是一种架构模式,主要面向资源,提供无状态服务,有利于横向扩展应对高并发。原创 2022-12-21 00:45:57 · 413 阅读 · 0 评论 -
热门技术中的应用:微服务相关协议-第33讲-基于XML的SOAP协议:不要说NBA,请说美国职业篮球联赛
- 原来的二进制RPC有很多缺点,格式要求严格,修改过于复杂,不面向对象,于是产生了基于文本的调用方式——基于XML的SOAP。- SOAP有三大要素:协议约定用WSDL、传输协议用HTTP、服务发现用UDDL。原创 2022-12-20 00:23:53 · 137 阅读 · 0 评论 -
热门技术中的应用:微服务相关协议-第32讲-RPC协议综述:远在天边,近在眼前
- 远程调用看起来用Socket编程就可以了,其实是很复杂的,要解决协议约定问题、传输问题和服务发现问题。- 大牛Bruce Jay Nelson的论文、早期ONC RPC框架,以及NFS的实现,给出了解决这三大问题的示范性实现,也即协议约定要公用协议描述文件,并通过这个文件生成Stub程序;RPC的传输一般需要一个状态机,需要另外一个进程专门做服务发现。原创 2022-12-20 00:23:42 · 245 阅读 · 0 评论 -
热门技术中的应用:容器技术中的网络-第31讲-容器网络之Calico:为高效说出善意的谎言
- Calico推荐使用物理机作为路由器的模式,这种模式没有虚拟化开销,性能比较高。- Calico的主要组件包括路由、iptables的配置组件Felix、路由广播组件BGP Speaker,以及大规模场景下的BGP Route Reflector。- 为解决跨网段的问题,Calico还有一种IPIP模式,也即通过打隧道的方式,从隧道端点来看,将本来不是邻居的两台机器,变成相邻的机器。原创 2022-12-20 00:19:54 · 389 阅读 · 0 评论 -
热门技术中的应用:容器技术中的网络-第30讲-容器网络之Flannel:每人一亩三分地
- 基于NAT的容器网络模型在微服务架构下有两个问题,一个是IP重叠,一个是端口冲突,需要通过Overlay网络的机制保持跨节点的连通性。- Flannel是跨节点容器网络方案之一,它提供的Overlay方案主要有两种方式,一种是UDP在用户态封装,一种是VXLAN在内核态封装,而VXLAN的性能更好一些。原创 2022-12-20 00:18:04 · 426 阅读 · 0 评论 -
热门技术中的应用:容器技术中的网络-第29讲-容器网络:来去自由的日子,不买公寓去合租
- 容器是一种比虚拟机更加轻量级的隔离方式,主要通过namespace和cgroup技术进行资源的隔离,namespace用于负责看起来隔离,cgroup用于负责用起来隔离。- 容器网络连接到物理网络的方式和虚拟机很像,通过桥接的方式实现一台物理机上的容器进行相互访问,如果要访问外网,最简单的方式还是通过NAT。原创 2022-12-20 00:17:20 · 391 阅读 · 0 评论 -
热门技术中的应用:云计算中的网络-第28讲-云中网络的隔离GRE、VXLAN:虽然住一个小区,也要保护隐私
- 要对不同用户的网络进行隔离,解决VLAN数目有限的问题,需要通过Overlay的方式,常用的有GRE和VXLAN。- GRE是一种点对点的隧道模式,VXLAN支持组播的隧道模式,它们都要在某个Tunnel Endpoint进行封装和解封装,来实现跨物理机的互通。- OpenvSwitch可以作为Tunnel Endpoint,通过设置流表的规则,将虚拟机网络和物理机网络进行隔离、转换。原创 2022-12-20 00:13:07 · 163 阅读 · 0 评论 -
热门技术中的应用:云计算中的网络-第27讲-云中的网络QoS:邻居疯狂下电影,我该怎么办?
- 云中的流量控制主要通过队列进行的,队列分为两大类:无类别队列规则和基于类别的队列规则。- 在云中网络Openvswitch中,主要使用的是分层令牌桶规则(HTB),将总的带宽在一棵树上按照配置的比例进行分配,并且在一个分支不用的时候,可以借给另外的分支,从而增强带宽利用率。原创 2022-12-20 00:12:58 · 253 阅读 · 0 评论 -
热门技术中的应用:云计算中的网络-第26讲-云中的网络安全:虽然不是土豪,也需要基本安全和保障
- 云中的安全策略的常用方式是,使用iptables的规则,请记住它的五个阶段,PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING。- iptables分为四种表,raw、mangle、nat、filter。其中安全策略主要在filter表中实现,而虚拟网络和物理网络地址的转换主要在nat表中实现。原创 2022-12-20 00:12:42 · 139 阅读 · 0 评论 -
热门技术中的应用:云计算中的网络-第25讲-软件定义网络:共享基础设施的小区物业管理办法
- 用SDN控制整个云里面的网络,就像小区保安从总控室管理整个物业是一样的,将控制面和数据面进行了分离;- 一种开源的虚拟交换机的实现OpenvSwitch,它能对经过自己的包做任意修改,从而使得云对网络的控制十分灵活;- 将OpenvSwitch引入了云之后,可以使得配置简单而灵活,并且可以解耦物理网络和虚拟网络。原创 2022-12-20 00:12:29 · 263 阅读 · 0 评论 -
热门技术中的应用:云计算中的网络-第24讲-云中网络:自己拿地成本高,购买公寓更灵活
- 云计算的关键技术是虚拟化,这里我们重点关注的是,虚拟网卡通过打开TUN/TAP字符设备的方式,将虚拟机内外连接起来;- 云中的网络重点关注四个方面,共享、隔离、互通、灵活。其中共享和互通有两种常用的方式,分别是桥接和NAT,隔离可以通过VLAN的方式。原创 2022-12-20 00:12:20 · 204 阅读 · 0 评论 -
底层网络知识详解:陌生的数据中心-第23讲-移动网络:去巴塞罗那,手机也上不了脸书
- 移动网络的发展历程从2G到3G,再到4G,逐渐从打电话的功能为主,向上网的功能为主转变;- 请记住4G网络的结构,有eNodeB、MME、SGW、PGW等,分控制面协议和数据面协议,你可以对照着结构,试着说出手机上网的流程;- 即便你在国外的运营商下上网,也是要通过国内运营商控制的,因而也上不了脸书。原创 2022-12-19 00:39:18 · 203 阅读 · 0 评论 -
底层网络知识详解:陌生的数据中心-第21讲-数据中心:我是开发商,自己拿地盖别墅
- 数据中心分为三层。服务器连接到接入层,然后是汇聚层,再然后是核心层,最外面是边界路由器和安全设备。- 数据中心的所有链路都需要高可用性。服务器需要绑定网卡,交换机需要堆叠,三层设备可以通过等价路由,二层设备可以通过TRILL协议。- 随着云和大数据的发展,东西流量相对于南北流量越来越重要,因而演化为叶脊网络结构。原创 2022-12-19 00:32:55 · 268 阅读 · 0 评论 -
底层网络知识详解:陌生的数据中心-第20讲-CDN:你去小卖部取过快递么?
- CDN和电商系统的分布式仓储系统一样,分为中心节点、区域节点、边缘节点,而数据缓存在离用户最近的位置。- CDN最擅长的是缓存静态数据,除此之外还可以缓存流媒体数据,这时候要注意使用防盗链。它也支持动态数据的缓存,一种是边缘计算的生鲜超市模式,另一种是链路优化的冷链运输模式。原创 2022-12-19 00:31:22 · 305 阅读 · 0 评论 -
底层网络知识详解:陌生的数据中心-第19讲-HttpDNS:网络世界的地址簿也会指错路
- 传统的DNS有很多问题,例如解析慢、更新不及时。因为缓存、转发、NAT问题导致客户端误会自己所在的位置和运营商,从而影响流量的调度。- HttpDNS通过客户端SDK和服务端,通过HTTP直接调用解析DNS的方式,绕过了传统DNS的这些缺点,实现了智能的调度。原创 2022-12-19 00:30:15 · 272 阅读 · 0 评论 -
底层网络知识详解:陌生的数据中心-第18讲-DNS协议:网络世界的地址簿
1. 全局负载均衡为什么要分地址和运营商呢?2. 全局负载均衡使用过程中,常常遇到失灵的情况,你知道具体有哪些情况吗?对应应该怎么来解决呢?原创 2022-12-19 00:27:55 · 357 阅读 · 1 评论 -
底层网络知识详解:最常用的应用层-第17讲-P2P协议:我下小电影,99%急死你
1. 除了这种去中心化分布式哈希的算法,你还能想到其他的应用场景吗?1. 在前面所有的章节中,要下载一个文件,都需要使用域名。但是网络通信是使用IP的,那你知道怎么实现两者的映射机制吗?原创 2022-12-19 00:22:23 · 229 阅读 · 0 评论 -
底层网络知识详解:最常用的应用层-第16讲-流媒体协议:如何在直播里看到美女帅哥?
- 视频名词比较多,编码两大流派达成了一致,都是通过时间、空间的各种算法来压缩数据;- 压缩好的数据,为了传输组成一系列NALU,按照帧和片依次排列;- 排列好的NALU,在网络传输的时候,要按照RTMP包的格式进行包装,RTMP的包会拆分成Chunk进行传输;- 推送到流媒体集群的视频流经过转码和分发,可以被客户端通过RTMP协议拉取,然后组合为NALU,解码成视频格式进行播放。原创 2022-12-19 00:22:08 · 326 阅读 · 0 评论 -
底层网络知识详解:最常用的应用层-第15讲-HTTPS协议:点外卖的过程原来这么复杂
- 加密分对称加密和非对称加密。对称加密效率高,但是解决不了密钥传输问题;非对称加密可以解决这个问题,但是效率不高。- 非对称加密需要通过证书和权威机构来验证公钥的合法性。- HTTPS是综合了对称加密和非对称加密算法的HTTP协议。既保证传输安全,也保证传输效率。原创 2022-12-19 00:21:19 · 118 阅读 · 0 评论 -
底层网络知识详解:最常用的应用层-第14讲-HTTP协议:看个新闻原来这么麻烦
- HTTP协议虽然很常用,也很复杂,重点记住GET、POST、 PUT、DELETE这几个方法,以及重要的首部字段;- HTTP 2.0通过头压缩、分帧、二进制编码、多路复用等技术提升性能;- QUIC协议通过基于UDP自定义的类似TCP的连接、重试、多路复用、流量控制技术,进一步提升性能。原创 2022-12-18 01:45:19 · 404 阅读 · 0 评论 -
底层网络知识详解:最重要的传输层-第13讲-套接字Socket:Talkischeap,showmethecode
1. epoll是Linux上的函数,那你知道Windows上对应的机制是什么吗?如果想实现一个跨平台的程序,你知道应该怎么办吗?1. 自己写Socket还是挺复杂的,写个HTTP的应用可能简单一些。那你知道HTTP的工作机制吗?原创 2022-12-18 01:38:39 · 508 阅读 · 0 评论 -
底层网络知识详解:最重要的传输层-第12讲-TCP协议(下):西行必定多妖孽,恒心智慧消磨难
1. TCP的BBR听起来很牛,你知道他是如何达到这个最优点的嘛?1. 学会了UDP和TCP,你知道如何基于这两种协议写程序吗?这样的程序会有什么坑呢?原创 2022-12-18 01:35:26 · 357 阅读 · 0 评论 -
底层网络知识详解:最重要的传输层-第11讲-TCP协议(上):因性恶而复杂,先恶后善反轻松
- TCP包头很复杂,但是主要关注五个问题,顺序问题,丢包问题,连接维护,流量控制,拥塞控制;- 连接的建立是经过三次握手,断开的时候四次挥手,一定要掌握的我画的那个状态图。原创 2022-12-18 01:34:04 · 388 阅读 · 0 评论 -
底层网络知识详解:最重要的传输层-第10讲-UDP协议:因性善而简单,难免碰到“城会玩”
1. 都说TCP是面向连接的,在计算机看来,怎么样才算一个连接呢?1. 你知道TCP的连接是如何建立,又是如何关闭的吗?原创 2022-12-18 01:31:26 · 410 阅读 · 1 评论 -
底层网络知识详解:从二层到三层-第9讲-路由协议:西出网关无故人,敢问路在何方
1. 路由协议要在路由器之间交换信息,这些信息的交换还需要走路由吗?不是死锁了吗?2. 路由器之间信息的交换使用什么协议呢?报文格式是什么样呢?原创 2022-12-18 01:16:02 · 412 阅读 · 0 评论 -
底层网络知识详解:从二层到三层-第8讲-世界这么大,我想出网关:欧洲十国游与玄奘西行
1. 当在你家里要访问163网站的时候,你的包需要NAT成为公网IP,返回的包又要NAT成你的私有IP,返回包怎么知道这是你的请求呢?它怎么就这么智能的NAT成了你的IP而非别人的IP呢?2. 对于路由规则,这一节讲述了静态路由,需要手动配置,如果要自动配置,你觉得应该怎么办呢?原创 2022-12-18 01:12:36 · 110 阅读 · 0 评论 -
底层网络知识详解:从二层到三层-第7讲-ICMP与ping:投石问路的侦察兵
- ICMP相当于网络世界的侦察兵。我讲了两种类型的ICMP报文,一种是主动探查的查询报文,一种异常报告的差错报文;- ping使用查询报文,Traceroute使用差错报文。原创 2022-12-18 01:07:32 · 169 阅读 · 0 评论 -
底层网络知识详解:从二层到三层-第6讲-交换机与VLAN:办公室太复杂,我要回学校
- 当交换机的数目越来越多的时候,会遭遇环路问题,让网络包迷路,这就需要使用STP协议,通过华山论剑比武的方式,将有环路的图变成没有环路的树,从而解决环路问题。- 交换机数目多会面临隔离问题,可以通过VLAN形成虚拟局域网,从而解决广播问题和安全问题。原创 2022-12-18 01:02:45 · 422 阅读 · 0 评论 -
底层网络知识详解:从二层到三层-第5讲-从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?
第一,MAC层是用来解决多路访问的堵车问题的;第二,ARP是通过吼的方式来寻找目标MAC地址的,吼完之后记住一段时间,这个叫作缓存;第三,交换机是有MAC地址学习能力的,学完了它就知道谁在哪儿了,不用广播了。原创 2022-12-18 00:54:11 · 135 阅读 · 0 评论 -
通信协议综述-第4讲 | DHCP与PXE:IP是怎么来的,又是怎么没的?
1. DHCP 协议主要是用来给客户租用 IP 地址,和房产中介很像,要商谈、签约、续租,广播还不能“抢单”; 2. DHCP协议能给客户推荐“装修队”PXE,能够安装操作系统,这个在云计算领域大有用处。原创 2022-12-15 00:24:40 · 114 阅读 · 0 评论 -
通信协议综述-第3讲 | ifconfig:最熟悉又陌生的命令行
IP 是地址,有定位功能;MAC 是身份证,无定位功能;CIDR 可以用来判断是不是本地人;IP 分公有的 IP 和私有的 IP。后面的章节中我会谈到“出国门”,就与这个有关。原创 2022-12-16 00:12:46 · 220 阅读 · 0 评论 -
通信协议综述-第2讲 | 网络分层的真实含义是什么?
理解网络协议的工作模式,有两个小窍门:始终想象自己是一个处理网络包的程序:如何拿到网络包,如何根据规则进行处理,如何发出去;始终牢记一个原则:只要是在网络上跑的包,都是完整的。可以有下层没上层,绝对不可能有上层没下层。原创 2022-12-14 01:56:56 · 304 阅读 · 0 评论 -
通信协议综述-第1讲 | 为什么要学习网络协议?
一个简简单单的下单过程,中间牵扯到这么多的协议。而管理一大片机器,更是一件特别有技术含量的事情。除此之外,像最近比较火的云计算、容器、微服务等技术,也都需要借助各种协议,来达成大规模机器之间的合作。原创 2022-12-14 01:40:17 · 174 阅读 · 0 评论