演示案例
简介
软件定义网络技术的各种特色之中,有一个为中央集中式的网络控制方式。在传统网络中,网络控制的能力是分散在每一台网络交换器上面,透过交换器之间的互相沟通来达成网络连通的目的,也就是说,它采用了分布式的网络控制方式。在软件定义网络中,则是将网络控制能力集中到一台控制器上面,控制器透过控制平面网络联机到所有的网络交换器。由于它可以实时地掌握所有交换器的设定、状态与统计数据,因此它能以全网络的视角来进行分析与决策,然后再快速地控制所有交换器来执行它的决策。
在这个范例中,我们布署了一个具有 25 台软件定义网络交换器的网络,此 25 台交换器透过控制平面网络连接到控制器并透过 OpenFlow 通讯协议来接受控制器的控制,控制器上启用了媒体访问控制地址 (MAC Address) 学习的能力以及避免网络形成循环的能力。在数据平面网络上,我们安排了左上角的计算机做为网络讯息传送者,而右下角的计算机则为网络讯息的接收者。在模拟过程中,交换器与控制器之间会有频繁的互动,这些互动是透过 OpenFlow 通讯协议讯息来进行,用以实现中央集中式的全网络快速监控与控制,让两台计算机之间建立起一条可进行通讯的网络信道。
演示视频
适用版本: ( ) 免费试用版本 ( ) 书籍注册码版本 (v) 购买版本
下载
1. 点击 此处 下载这个演示案例的配置文件。
简介
一条有线网络的网络线或无线网络的频道所能提供的网络带宽是有限的。当一条网络连线经过一条网络线或是频道时,它会占用部分或是全部的带宽。通常,网络管理者不会特意去管理不同网络连线的带宽使用量,原因之一是,若经常用人工的方式去改变网络设备的设定,会很容易遭遇因人为操作错误而导致网络运作出问题的情况,另一个原因是,人工操作很耗费时间,对于多数突然发生的需求,不容易及时完成网络设备上修改设定的动作。因为没有特别去管理带宽的使用,当有多条网络连线经过一条网络线或频道时,若全部网络连线所需求的总带宽大于网络线或频道所能提供的有限带宽时,就会因带宽不足而在进入这条网络线或频道的网络设备上形成带宽瓶颈。
在下面的范例影片中,来自互联网的八台服务器分别传送数据给位于局域网络的八位网络用户 (服务器 11 送给使用者 1、服务器 12 送给使用者 2、……)。因为来自互联网端的网络线总带宽为 80 Mbps (10 Mbps * 8条网络线) 且局域网络中的网络线带宽为 1000 Mbps,在由互联网进入局域网络的设备 (路由器) 上并不会有带宽瓶颈的情况。然而,因为在局域网络中的无线频道所能提供的带宽只有 25 Mbps,小于来自互联网的总带宽 80 Mbps,于是在进入无线频道的网络设备 (无线存取节点/无线路由器) 上会形成带宽瓶颈。因为此瓶颈的存在,使得发送于互联网中八台服务器的网络封包会在进入无线频道的网络设备上被随机地丢掉,这现象会导致八位网络用户由互联网所取得的数据量随着时间呈现不稳定的情况,而此不稳定的情况可能会使这八位使用者遭遇到不好的网络应用体验,例如观看实时在线影音节目或教学影片时会有停顿或是画面破碎等现象,或是参加网络视频会议时会有听不到对方发言的情况。
演示视频
为了要避免用户有不好的网络应用体验,有一种解决方式就是去管理每一条网络连线的带宽使用量。在支持 OpenFlow 技术的网络交换器设备上,有两种方式可以用来控制每一条网络连线的带宽使用量,其一是使用 Meter Table 的限流功能,其二是利用每个端口中拥有不同送出速度的缓存器。
在下面的范例影片中,我们所展示的仿真网络与上一个影片中的网络几乎是一样的,唯一不同的地方是,我们将区域网络中的传统交换器换成支持 OpenFlow 技术的交换器,藉此来引入软件定义网络 (SDN) 的功能,我们可以看到有一台软件定义网络控制器 (SDN Controller) 连接到 OpenFlow 交换器来对它进行控制。为了将网络服务的质量区分成不同等级,我们将所有的网络用户分成三类,第一类为保证带宽群组,第二类为共享带宽群组,第三类为竞争带宽群组。此外,我们将有限的无线频道带宽共 25 Mbps 做了分配,第一类分配 10 Mbps,第二类分配 12 Mbps,而第三类分配 3 Mbps。
针对归类于第一类保证带宽群组的使用者,我们会为他们预留固定的带宽使用量,在这个范例中,我们就预留了 6 Mbps 给使用者 1,而剩下的 4 Mbps 就预留给使用者 2。针对归类于第二类分享带宽群组的使用者,他们会一起共享划分给此群组的总带宽量,在这个范例中,用户 3, 4, 5 与 6 共享总共 12 Mbps 的带宽,因此,每个人可以分到 3 Mbps (12/4) 的带宽使用量。而针对归类于第三类竞争带宽群组的使用者,我们不会预留任何带宽使用量给他们,换句话说,他们仍然要去竞争划分给这个群组的总带宽量 3 Mbps。
在模拟开始时,我们会执行 Ryu 这一套软件定义网络控制器软件来控制 OpenFlow 交换器,这套控制器软件的的北向接口 (NBI) 将会被打开来让我们输入控制交换器的指令,我们将所有指令写在一个可执行的描述档 (Script File) 中并在模拟开始时执行。为了达到上述所提到的提供不同质量等级的网络服务,我们利用 OpenFlow 交换器上的一张流表 (Flow Table) 与位于输出端口上的七个不同输出速度的缓存器。由模拟结果来看,我们可以看到所有被预留带宽使用量的使用者,其接收到的数据量都符合预期且随着时间是稳定的,而看看需要竞争有限带宽的使用者 7 与 8,他们所收到的资料量仍然互相竞争且不稳定的。
如同文章一开始所说,因为容易出错且不能及时提供服务的问题,网络管理者不会特意去管理不同网络连线的带宽使用量。这些问题可以透过开发一个智能型的软件定义网络控制器应用程序来解决。网络管理者只要在此智能型应用程序中事先将用户做好分类且设定好带宽使用量,这个应用程序就会代替人工来自动地侦测符合条件的网络连线并自动地设定 OpenFlow 交换器来保障目标网络连线所能使用的带宽。
虽然在此仿真范例中我们没有使用这样的应用程序来做展示,但在思锐科技的企业级软件定义网络解决方案中,是有提供这种功能的产品的,若想对此产品有更多的了解,可透以下连结来参观相关的网页。
演示视频
适用版本: ( ) 免费试用版本 ( ) 书籍注册码版本 (v) 购买版本