网络技术就是电脑技术么?CPU和操作系统已经牢牢占有了PC,服务器的领地,每个PC,服务器上都会有一个或者多个CPU,都会跑一个OS,甚至如今的手持设备也被灌入了PC的影子,实则一个缩小版的PC,当年的类似单片机的射频终端彻底败阵。手持设备向电脑技术投降是有道理的,因此电脑和手持设备都是无穷无尽的应用来推动的,但是如果有一天物联网深入我们的生活,我害怕肉眼看不到的电子灰尘里面也会跑一个精简版的Linux。
       那么网络技术呢?实际上它早就是电脑了,它是在PC的影子下长大的,网络出生和成长的那段时间,正是PC的巅峰时期。很多人搞不清楚是网络为PC注入了活力还是PC使网络得以诞生,人们不能想象买一个三轮车那么大的设备回家去联网。这个关系正和父子关系一样,父亲给了孩子孩子生命,孩子就必然带有父亲的影子,然而到了一定年龄,孩子就一定会单飞。
       如今带有电脑影子的网络基本长大了,很多问题也暴露了,是需要作出一些规划的时候了。

1.问题一:IP网络的QoS以及拥塞问题

局部突发流量是分组交换网络QoS难以保障的根源,而这又是分组交换网络得以胜出的基础,其背后有排队论作为其理论支撑,突发加排队,丢包是必然的,可别小看了这个丢包,丢包在现行的IP网络中是一件很重要的事。IP分组交换网络没有全局的交通视图,难以做到拥塞分流等缓解拥堵措施。看一下城市快速路或者高速公路,如果远方有一处发生拥塞,该信息会反馈在距离很远的地方,显示于公告屏幕上。IP网络无连接无法进行有效的源抑制(ICMP某种程度上简单地支持),端到端的TCP正是通过丢包这个事实来判断发生了拥塞。由于TCP仅仅实现于终端,中间结点并不缓存TCP数据,所以局部的丢包这个事实经过TCP之后,其重传流量会放大到全局范围,注意,丢掉的包是带内的,它不仅仅指示某处拥塞了,还意味着要重传丢掉的数据包,而这可能会使本已拥塞的网络环境更加恶化。
       由此看来,端到端的传输控制和IP分组交换在其本质上就不能做到很好的QoS保证。局部的突发流量一旦发出,难以避免地会造成在其它局部排队,最终造成丢包,支持突发这个分组交换的优势在流量不均衡的时候会被局部排队丢包这个事实抵消掉!一旦丢包,TCP这种端到端的控制协议就会在全局范围发出重传包,而不仅仅将丢包的影响限制在局部范围内。
解决:
SDN将控制平面整个分离出来,这样就可以实现集中化的控制,它以“流交换”替代“包交换”,而流是可以自定义的,非典型情形下,它可以退化到包交换,另一种极端是,SDN的流交换可以退化(or 进化/回归)到电路交换,具体以什么方式实现转发,就看你怎么定义流了。SDN的特征表明已经有能力在IP传输逻辑之外构建一个或者多个控制中心节点,这些控制中心节点的任务就是提前配置转发节点的转发表,这样就无需等到真正数据到来时动态现场查表了,这是SDN的核心思想。

从此衍生出来的另一个特性就是全局的信息反馈,由于SDN存在控制中心,那么它有能力放眼全局,在大范围内监控流量,将拥塞信息或者事故信息提前反馈给上游转发节点,具体表现在更新上游节点的转发表!

2.问题二:IP网络的传输效率问题

TCP/IP网络在统计意义上工作的很好,其统计复用逻辑架构十分好,但是注意,不能用它来指示实际的传输,它只是用来实现端到端控制和寻址的。实际上目 前的大多数公共核心网还真不是跑在IP上,而是跑在链路层上,比如ATM,SONET/SDH之类的,IP只是部署在这些链路层大网的边缘负责跨区域寻 址。
       数据传输网不应该触动修改数据包,也不应该通过解析数据包的方式得到转发决策,它所做的就是传输,转发决策应该是事先制订好的,因此IP并不适合做传输网。转发要尽可能地简单化,类似光网络中将流映射到波长,然后根据光波的耦合物理特性实现转发,而不是查表这种所谓的“智能”的方式。虽然诸如ATM,MPLS之类的传输网技术都是真正的传输网络,但是实现转发还是需要查表,将数据包通过内部矩阵放到出口队列等智能操作,虽然这种智能操作相比查路由表,改IP头这种智能操作已经大大简化了。
解决:
SDN既然控制逻辑(寻址,流控 etc)已经分离了出去,那么留下的转发逻辑就好像甩开了一个大的包袱,彻底获得了自由!以前那些参照电脑设计的网络节点,比如路由器,交换机之类的彻底可以减负了!光网络的波长路由与交换就是一个减负成功的例子,虽然到目前为止,这个例子还没有成为现实!

3.问题三:IP网络的路由问题

围绕着IP,越来越多的协议被设计出来了,这些协议越来越复杂,学习与管理的门槛越来越高,然而统一地想一下后发现,这些协议无非就是为了一个寻址问题,包括各式各样的动态路由协议,包括Policy routing的配置等等。按照OSI的分层模型,IP处于网络层,在TCP/IP(我一向将TCP/IP作为OSI模型的实例看待)模型下所有的流量都需要经过IP,这也难怪IP这么累了,最终这种累传递到了网管身上。
       这是不容更改的,我们不能破坏IP模型!混乱的根源在于策略的配置都是分布式的,你不可能一次性配置所有的路由器!这是唯一的问题!实际上,动态路由协议就是为了针对这个问题而被设计出来的,每一台路由器会学习到一张全网的拓扑(非距离矢量算法),然后根据这张地图来计算到达每一个目标的下一跳,如果哪里出了问题,网络会重新收敛到一张新的图,这一切看样子都很不错,是的!但是配置动态路由协议成了一个问题,即使你成功配置了它,如何在一个地点监控这张图也是一个问题,你只能完全信赖你配置的动态路由协议,相信它总能收敛到一个稳定的状态。
解决
SDN的集中化控制使这个问题不再是个问题。SDN的控制节点操作的一张整图而不仅仅是一个节点和周边的局部,各个路由器(不再被叫做路由器,仅仅是一个转发节点)不再需要自己运行动态路由协议计算一张图,它只需要将自己的链路信息或者链路变化信息通过带外信道告诉SDN控制器即可,SDN控制器会计算出一张图,完全没有收敛的过程,并且整个计算,重新计算仅仅发生在SDN控制器,效率大大提高。SDN控制器会通过自己的计算结果来配置各个转发节点(以前叫做路由器或者交换机的东西)的转发表,并且可以随意加入任意的策略来实现Policy routing。

4.问题四:网络虚拟化问题

以往,如果我们需要规划多个IP网段又没有足够的设备时,不得不将所有这些网段都承载在一个以太网上,虽然协议是分层的,并且下层可以作为上层的复用点,但是实际上,由于以太网是一个广播网(其它的链路层也有它们自己的问题),对广播是不隔离的,诸多的IP网段还是没有实现完全的隔离。当然VLAN的引入解决了这个问题,然而你知道,这是靠增加一种新的技术来解决的,并且它也不是很简单,虽然符合加一个层解决问题的套路,但是要知道,网络的最终归宿是传输数据,在数据平面上层越少越好,增加一个层只能增加在控制平面上!如果使用VLAN,不可避免地需要改动原始数据包的格式。既然触动了数据包,就会影响到转发。
解决:
SDN对网络进行了横向的分割,在纵向的协议栈之外又添加了一个维度,在SDN定义的网络中,每一个网络都有一个ID,不同ID的网络在整个协议栈上都互不影响,SDN控制其发出的每个控制信令都携带一个ID,只针对属于该ID的网络进行定义和控制。如此一来,就可以将一个物理的网络隔离成多个虚拟的网络,要求每个设备都支持这种分割。如果看一下SDN的历史,就会发现,SDN正是学术上为了在现有网络上支持实验网络而不进行额外的投资而被提出的。
       最终这个横向分割是超级有意义的,至此,网络的定义更加合理了。纵向的协议栈负责数据转发平面,而横向的虚拟化支持负责控制平面,二者是正交的,不会互相依赖,控制平面和数据平面开放给对方的仅仅是查询等只读接口,不能修改对方的数据!

结论:网络技术应该从电脑技术中独立

如果参加过Cisco的培训,就会知道,如果想丢弃一个数据包,尽量在inbond处,说是这样比较节省设备的计算资源,还有许多类似的这种技巧,为什么会有这种技巧,就是因为IP是局部化的,所有设备的配置大家各自为政!到了SDN时代,事情起了变化!所有的这些增加复杂性的小技巧都不需要了...SDN的特点就是集中化控制,分离的控制可定制!在这个核心思想的基础上,带来的巨大效益是:网络管理简单化,网络监控简单化,网络可快速扩展延伸,网络安全策略实施同质化!由此,网络在云时代真的就成了一个带有控制和自定义功能的简单的仅提供透明比特管道的基础设施,将更多的资金和人力资源留给应用和业务。SDN时代的网络再也不是电脑的衍生和延伸,它获得了独立!
       其实,George Gilder这位电信泡沫后被误解的人早就预示了SDN时代的到来,只是当时人们不知道叫SDN而已,网络技术从电脑技术中独立是迟早的事,George Gilder在20世纪90年代初感知了PC革命,接下来的10年网络仅仅处在发展期,处在巅峰的PC技术深刻影响着网络技术,于是各种路由器,交换机都做得和PC一样,按照PC/服务器的操作方式,UI来设计网络设备,加上Linux这个诞生于网络的PC/网络融合主推手,人们一度认为网络就是电脑,很多人觉得网络高手就是玩转Linux,玩转Cisco的人(事实上也真的是那样),人们会认为每一个路由器,交换机在硬件上都绘有一个CPU,在软件上都会有一个操作系统,而且很多都是要么从UNIX,要么从Linux衍生出来的,不幸的是,人们已经掉进了电脑的圈子。PC当年在美国嬉皮士文化中脱颖而出,彻底和大型机分道扬镳,历时20载,如今网络技术正在重演当年的大戏,不幸的是,George Gilder老大对此的预知过于早熟了,仅仅在他对PC的产业价值作出肯定的评价10年后,也就是2000年左右,George Gilder就出版了《Telecosm: How Infinite Bandwidth will Revolutionize Our Worl 》一书,该书像当年的《论法的精神》,《社会契约论》一样,马上让华尔街那帮跟风者蠢蠢欲动,终于酿成了悲剧。正如1789年的人们不会理解拿破仑的行为一样,过于早熟的理论在无知者面前,大家能做的就是蠢动和跟风。然而现在,这个时期过去了吗?网络技术可以独立了么?
《Telecosm: How Infinite Bandwidth will Revolutionize Our Worl 》这本书,我在淘宝上找到了,仅此一本,我买了就下架了,马上就到货了。

网络技术独立的导火索-SDN和三个问题相关推荐

  1. 网络技术独立的×××-SDN和三个问题

    网络技术就是电脑技术么?CPU和操作系统已经牢牢占有了PC,服务器的领地,每个PC,服务器上都会有一个或者多个CPU,都会跑一个OS,甚至如今的手持设备也被灌入了PC的影子,实则一个缩小版的PC,当年 ...

  2. 计算机网络产生的历史背景,网络技术背景及sdn概述.pdf

    网络技术背景及sdn概述 软件定义网络 黄韬 北京邮电大学北京邮电大学 第1章:背景与概述 个人简介个人简介 • 黄韬 – 信息与通信工程学院 – 博士,副教授 – 科研方向科研方向::未来网络未来网 ...

  3. 【LC3开源峰会网络技术系列之三】基于JStorm的网络分析平台

    国际知名开源社区Linux基金会主办的开源大会LinuxCon + ContainerCon + CloudOpen China 2018(LC3)于6月25日在北京开幕.今年阿里云作为白金合作伙伴亮 ...

  4. 【LC3开源峰会网络技术系列之三】基于JStorm的网络分析平台 1

    摘要: 国际知名开源社区Linux基金会主办的开源大会LinuxCon + ContainerCon + CloudOpen China 2018(LC3)于6月25日在北京开幕.今年阿里云作为白金合 ...

  5. SDN/NFV 网络技术系列文章

    目录 文章目录 目录 计算机网络基础 互联网技术 局域网技术 L1 L2 广域网技术 L3 网络应用技术 L4 L5-L7 DPI 数据中心网络架构 云网融合与算力网络 SDN 隧道技术 VPN IP ...

  6. 计算机国三网络技术,计算机国三网络技术.doc

    计算机国三网络技术计算机国三网络技术 第一章 计算机基础 1.1 计算机系统的组成 <1>年份事件: 1946 ENIAC 第一台计算机诞生 1969 ARPNET产生 互联网的诞生 19 ...

  7. 技术沙龙 | TeaTalk 带你深度探索 SDN 网络技术再创新

    越来越多的企业.行业和政府机关顺应企业数字化转型.云服务和国家政策等趋势将业务迁移上云.随着移动云的快速发展,对网络提供差异化的服务能力也提出了很多新的考验.大规模数据中心.虚拟化 SDN 网络技术及 ...

  8. SDN 网络技术创新探索 | 移动云 TeaTalk 线上直播 倒计时启动中

    在企业数字化转型.云服务和国家政策等多种因素驱动下,越来越多的企业.行业和政府机关将业务迁移到云上,随着移动云的快速发展,在"多系统.多场景.多业务"需求下,对网络提供差异化的服务 ...

  9. 数据中心网络架构 — 云数据中心网络 — SDN 网络技术

    目录 文章目录 目录 SDN 网络技术 Overlay Controller Underlay Network 如何大一统的全域 SDN 管控? SDN 网络技术 通过 SDN 网络技术,可以将数据中 ...

最新文章

  1. s3 aws_您需要了解的有关AWS S3的所有信息
  2. LNK1146: 没有用选项“/LIBPATH:”指定的参数
  3. java_IO_File(3)_遍历、递归
  4. 全球与中国血管重建装置市场投资现状及发展规划建议报告2022-2028年
  5. Elasticsearch数据备份与恢复(基于HDFS)
  6. 黄聪:wordpress如何开启文章格式post format
  7. Google的YSlow——Page Speed(附插件下载)
  8. delphi switch语句例子_「GCTT 出品」Go 系列教程——10. switch 语句
  9. java创新_Java没有创新了吗?Java 13提供可提高生产率和效率的功能
  10. 软测人员周报怎么写?(模板)
  11. Android Studio 下载ndk
  12. 产品思维训练 | 经典产品面试题
  13. 8086 CPU的寄存器结构
  14. 电脑复制,电脑复制粘贴,详细教您电脑不能复制粘贴怎么办
  15. Windows7安装mysql步骤_win7系统安装MySQL软件的详细步骤
  16. 水果店水果保鲜期延长方法,水果店经营保鲜方法
  17. python设置win10壁纸
  18. [MATLAB] 主成分分析法 求矩阵的权重
  19. vue日程安排_vue 时间安排表
  20. c#中:aspx与aspx.cs取url参数

热门文章

  1. Java输出数组最小值的几种方法
  2. 完整的神经网络模型验证套路
  3. 神秘农场新背包java_Mystery Ranch神秘农场2018年户外背包系列产品一览
  4. Hive常用优化方法总结
  5. 飞宇计算机专业,廉飞宇
  6. Java 对象锁和类锁 死锁(多线程synchronized关键字)
  7. Java向下转型的意义详解
  8. jQuery实现钟表
  9. LInux 服务器状态查询
  10. 【ClickHouse】从Mysql迁移到ClickHouse大全