38 | 从单排到团战:详解操作系统的宏观网络架构
LMOS
该思维导图由 AI 生成,仅供参考
你好,我是 LMOS。
上节课我们学习了单机状态下网络数据在内核中流转的全过程,并且带你一起梳理了网络栈移植的关键步骤。
这节课我会带你看看,现实世界中网络请求是如何穿过重重网络设备,实现大规模组网的。同时,我还会给你讲解网络架构的过去、现在,并展望一下将来的发展趋势。最后我会带你动手搭建一个现代互联网实验环境,通过实际的组网实践加深对网络架构的理解。
从传统网络架构聊起
你是否好奇过,我们目前用的互联网是如何做到互联互通的呢?
让我们先来看看传统的三层网络架构,著名的通信设备厂商思科把这种架构叫做分级的互联网络模型(Hierarchical Inter-networking Model)。这种架构的优点是,可以把复杂的网络设计问题抽象为几个层面来解决,每个层面又聚焦于某些特定的功能。这样就能把复杂而庞大的网络问题拆解成比较好解决的子问题。
如下图所示,三层网络架构设计主要包括核心层、汇聚层、接入层这三个层。下面我分别给你说一说。
三层网络架构示意图
首先是核心层。交换层的核心交换机为进出数据中心的数据包提供高速转发的功能,为多个汇聚层提供连通性,同时也为整个网络提供灵活的 L3 路由网络。
然后是汇聚层。汇聚交换机与接入交换机相连,提供防火墙、SSL 卸载、入侵检测、网络分析等其他服务。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了操作系统的宏观网络架构的演进过程,从传统网络架构到现代网络架构的发展。文章详细介绍了MPLS技术的优化与迭代,以及对传统网络架构带来的挑战。随后,文章提到了CLOS架构和胖树网络架构的应用,以及Spine-Leaf网络架构的提出。最后,文章以Google B4网络为例,介绍了其核心架构和实现的目标。整体来看,本文从传统网络架构到现代网络架构的演进,以及各种优化技术和新型网络架构的应用进行了详细介绍,对读者了解操作系统的宏观网络架构具有很高的参考价值。文章还介绍了SDN的基本特征和优势,以及开源网络操作系统ONOS的组网实践,为读者提供了实践操作的参考。文章内容丰富,涵盖了网络架构的演进、SDN的特点和优势,以及实践操作的具体步骤,为读者提供了全面的技术知识和实践经验。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《操作系统实战 45 讲》,新⼈⾸单¥68
《操作系统实战 45 讲》,新⼈⾸单¥68
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(10)
- 最新
- 精选
- neohope置顶1、下载mininet虚拟机: http://mininet.org/download/#option-1-mininet-vm-installation-easy-recommended 2、导入并运行虚拟机 用户名 / 密码:mininet/mininet 3、安装docker sudo apt-get update sudo apt install curl ssh curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 4、拉取ones镜像 sudo docker pull onosproject/onos 5、运行ones容器 #运行 sudo docker run -t -d -p 8181:8181 --name onos1 onosproject/onos #查看容器运行情况 sudo docker ps 6、连接容器,启用服务 #查看ip地址 sudo docker inspect --format '{{ .NetworkSettings.IPAddress }}' onos1 #ssh连接到容器 ssh -p 8101 karaf@172.17.0.2 #启用OpenFlow Provider Suite app activate org.onosproject.openflow #启用 Reactive Forwarding app activate org.onosproject.fwd #退出 ctrl+d 7、创建网络 #创建临时网络 sudo mn --topo tree,2 --controller remote,ip=172.17.0.2 --switch=ovsk,protocols=OpenFlow13 *** Creating network *** Adding controller Connecting to remote controller at 172.17.0.2:6653 *** Adding hosts: h1 h2 h3 h4 *** Adding switches: s1 s2 s3 *** Adding links: (s1, s2) (s1, s3) (s2, h1) (s2, h2) (s3, h3) (s3, h4) *** Configuring hosts h1 h2 h3 h4 *** Starting controller c0 *** Starting 3 switches s1 s2 s3 ... *** Starting CLI: mininet> nodes available nodes are: c0 h1 h2 h3 h4 s1 s2 s3 mininet> links s1-eth1<->s2-eth3 (OK OK) s1-eth2<->s3-eth3 (OK OK) s2-eth1<->h1-eth0 (OK OK) s2-eth2<->h2-eth0 (OK OK) s3-eth1<->h3-eth0 (OK OK) s3-eth2<->h4-eth0 (OK OK) mininet> net h1 h1-eth0:s2-eth1 h2 h2-eth0:s2-eth2 h3 h3-eth0:s3-eth1 h4 h4-eth0:s3-eth2 s1 lo: s1-eth1:s2-eth3 s1-eth2:s3-eth3 s2 lo: s2-eth1:h1-eth0 s2-eth2:h2-eth0 s2-eth3:s1-eth1 s3 lo: s3-eth1:h3-eth0 s3-eth2:h4-eth0 s3-eth3:s1-eth2 c0 mininet> h1 ping h2 PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=43.2 ms mininet> pingall *** Ping: testing ping reachability h1 -> h2 h3 h4 h2 -> h1 h3 h4 h3 -> h1 h2 h4 h4 -> h1 h2 h3 *** Results: 0% dropped (12/12 received) #退出 ctrl+d 8、网络访问 http://172.17.0.2:8181/onos/ui/login.html 账号/密码:karaf/karaf 然后就可以看到拓扑图了
作者回复: 嘿嘿 老铁又总结了
2021-08-095 - pedro涨知识,一个操作系统专栏讲网络竟然碾压网络专栏! 互联网架构属于去中心化架构,即使有的区域挂了,但其它区域仍然可以工作。奈何本人菜,对网络这块的知识只限于使用,实在是无法预测发展趋势啊。 但有一点可以肯定,互联网会越来越开放。
作者回复: 66666
2021-08-046 - 青玉白露现在是中心化架构,未来按我个人看法应该会去中心化的,类似于区块链这种。 话说45节课这么快就要结束了啊,期待彭老师以后的课程!吹爆!
作者回复: 哈哈 好的
2021-08-042 - Fan厉害了,网络课程安排走起。😂
作者回复: 加油
2021-08-041 - ileruza结合chartGPT,理清了SDN和google b4之间的关系。SDN是一种网络架构方式,分为数据平面和控制平面,平面之间用openflow协议沟通,数据平面主要由OSI的网络层和数据链路层的设备组成,控制平面不用多说,主要是对数据平面进行控制,比如ONOS那种面板。google b4可以看作是google对SDN的一种实现,本节课的ONOS+mininet也是对SDN的一种实现。 顺便脑暴一下,虽然都叫控制面和数据面,但是和istio的概念不一样,SDN的控制面+数据面主要是网络底层,解决的是你想让你的各个交换机、路由器之间怎么沟通的问题。而istio的控制面+数据面主要是是网络上层,解决的是你想让你的各个微服务之间怎么沟通的问题
编辑回复: 为分享精神点赞~
2023-06-11归属地:广东 - 刘佐钦wifi连接出现卡顿有什么办法
作者回复: 可以减少wifi链接数量
2022-10-20归属地:湖北 - 艾恩凝本节课就当拓展听听了
作者回复: 不喜欢网络?
2022-05-162 - Mike_Han领读的老师,应该是网络方面的专家,读这篇文章的时候,很是娴熟!!
作者回复: 哈哈
2021-10-20 - springXu3. 集中控制:集中的控制平面可以获取网络资源的全局信息,并根据业务需求进行全局分配和优化。 从这里来看,SDN不还是中心化的思路。 这又是一道阅读理解题了?
作者回复: 嘿嘿
2021-08-05 - 无凉当前的互联网架构既有中心化的部分,也有去中心化的部分。互联网的基础架构,如网络设备、域名系统和互联网路由等,大部分是中心化的,由少数的大型企业和机构控制和管理。 然而,随着区块链技术的兴起,一些新型的去中心化应用程序和平台正在出现,这些应用程序和平台的运行不依赖于单一实体的控制,而是由多个节点和参与者共同维护和管理。这种去中心化的应用程序和平台的典型例子包括比特币、以太坊和其他一些区块链应用程序。 因此,可以说当前的互联网架构是一个混合型架构,既有中心化的部分,也有去中心化的部分,未来随着技术的发展,可能会趋向于更去中心化的方向。 -----from chatgpt2023-04-21归属地:上海
收起评论