我遇到了一个术语SDN(软件定义网络)。我已经浏览了一些相关的网页,并了解它基本上与网络虚拟化有关。我想从应用程序开发人员/程序员的角度理解SDN。例如,如果我创建了一组网站和Web服务(在.Net中),那么在开发和部署方面,SDN与传统网络有什么不同。
如果有人能用一个例子来解释这一点,我将不胜感激。
非常感谢。
答案 0 :(得分:0)
在我说什么之前我应该提到我在这里说的所有内容将来可能会改变。原因是该领域仍处于研究领域,未来可能会面临一些变化。甚至一些用例也可能被删除或添加。
我应该补充的一点是,SDN不仅仅是网络可视化。它可能不止于此。我认为最好说SDN的应用/用途之一是网络可视化。
让我们考虑onos: ONOS正在实施一个控制器,互联网服务提供商将使用该控制器来终止路径和链接。 ISP只是指定两个端点,然后ONOS将流发送到不同的交换机,以便在它们之间建立路径。 ONOS将其称为“意图”,即在两点之间创建意图。
想象数据中心(DC)A想要在明天凌晨3点备份它的数据。使用SDN,他们可以在明天凌晨3点呼叫他们的ISP并要求“路径”,带宽为50Gb / s。两个DC可以具有网络的完整视图或仅视图的子集。 (即可视化视图)ISP的SDN控制器将使用OF命令对所需的开关进行编程,以便为两个DC创建该路径。 SDN主要用于编程网络。例如:
另一种可能的用法如下:假设您有自己的网站,用户/客户想要连接到您的网站并浏览它。可以说,用户需要使用他们的ISP创建从客户端到服务器的路径。但是,我认为这可能是由浏览器为您服务的。我怀疑这是可行的,但我也听说过这种用法。
总的来说,我认为SDN不会在网页浏览和网络服务器方面做出重大改变。通常,网页浏览只是短连接和数据包。我认为SDN对于长时间连接更有意义,比如备份整个DC或流视频。原因是配置从客户端到主机的路径有点昂贵且耗时(至少使用当前技术)因此对于长时间的连接是值得的。
我希望它有所帮助。