关于网络学科的几点思考

如果从 ENIAC 诞生(1946 年 2 月)算起,人类进入信息社会已经过去了 70 余年。

前三十年(1946 ~ 1976),计算机自身从电子管进化到晶体管再到集成电路,为后来计算机网络的出现奠定了物质基础。

后三十年(1976 ~ 2006),计算机网络的出现,特别是 Internet 的出现,将多个主机联系起来,形成大规模的分布式集群,为整个信息时代构建了不可或缺的基础设施。

最近的十年里(2008 ~ 2018),以软件定义网络(Software Defined Network,SDN)为代表的新一代网络技术,试图为现有的网络互联系统提供更好的可管理性和智能化支持,以适应包括数据中心、物联网、甚至更复杂场景下的需求。

计算机网络的核心诉求是传输数据。而随着数据规模的指数级增长,以及人工智能为代表的数据技术的发展,网络学科正迎来新的一波创新机遇和挑战。

前阵参与了一个内部研讨会,对网络学科的发展产生了几点思考,记录总结于此。

未来的核心挑战在于管理

往后的十年内,网络管理仍是核心诉求。所管理的网络规模更大、状态更多、动态性更强、场景更复杂。

实际上,给管理带来挑战的核心在于变更,包括用户、应用、配置、服务质量等的变更都会带来管理的难度。

要想解决管理问题,核心上还是要想办法解决变更的问题。一方面是实现对变更的可把控;另一方面是实现对变更的可验证。

深度结合控制论是必然

多年前,笔者曾困惑为何传统计算机系统中并没有深度的应用控制论的相关成果,毕竟计算机系统是一个设计上很精细,电路级别来看算是超大规模的系统。

后来终于琢磨清楚这个问题,计算机系统之所以不需要控制论,是因为:

  • 规模 != 复杂,而对控制的需求其实来自系统的复杂性,而非规模性。
  • 计算机系统大部分时候的行为都是可以预测的。这种情况下采用简单开环控制即可。行为不可预测的系统,才需要更复杂的反馈控制。

而网络系统在这两点上恰好跟计算机系统相反。一方面,网络具备规模性和复杂性;另外一方面,网络的行为很难预测。例如,在发送网包之前,无法预知信道的服务质量、网包何时抵达、沿着哪条路径抵达。

实际上,软件定义网络之所以能提高网络的可管理型,在于简化了底层架构上的行为和协议,将复杂控制提升到控制器层;控制器层同时掌控了全局的信息,提升了网络的可预测性。

与人工智能技术的融合

现在人工智能很热门,有很多不错的应用场景,包括图像、语音识别,自动驾驶等。

客观来看,有很多的场景其实并不适合人工智能技术。正如笔者之前在《机器学习随笔》中提到,人工智能的核心过程是通过算法训练得到一个数学模型,得到这个模型的目的是解决某个特定的问题(如判断图像中是否有猫)。

但模型本身并不理解问题,也不能保证训练得到的模型就是最优化的方案。某些时候,所得到的模型甚至只是碰巧解决了很特定的情况,跟正确答案所去甚远,这也是为何现在急于深度学习的算法很容易被攻击。只需要添加一点刻意的噪声,就能诱导模型到完全错误的结论。

因此,适合人工智能技术的场景中,所解决的问题目前并没有找到足够好的理论模型,或者说从数学上还无法得到答案。很多时候大家的想法是,反正这个问题没办法解决,拿人工智能的算法来蒙一把试试,说不定结果还不错。

因此,适合人工智能技术的场景中,所解决的问题目前并没有找到足够好的理论模型,或者说从数学上还无法得到答案。

而计算机网络中,很多问题看似复杂,其实是严格按照约定的协议执行的,如果进行足够分析,可以得到最优化的解决方案,只是这个推导过程会十分的冗长。反过来,使用人工智能训练的办法,可以得到近似优化的模型,可以作为解决问题很有意的一个参考和指导手段。

===== 关于 TechFirst 公众号 =====

专注金融科技、人工智能、云计算、大数据相关领域的热门技术与前瞻方向。

发送关键词(如区块链、云计算、大数据、容器),获取热门点评与技术干货。

欢迎投稿!

如果你喜欢公众号内容,欢迎鼓励一杯 coffee~


猜你喜欢

转载自blog.csdn.net/yeasy/article/details/78993664
今日推荐