几个常识
- SDN:软件定义网络(Software Defined Network)。
- 标准制定:ONF(开放网络委员会,由Microsoft,Google等互联网公司主导)。并非SDN巨头思科等公司。
- 核心协议:OpenFlow。
- 核心技术:Controller。
实验工具
- Mininet:第一个SDN服务器,支持OpenFlow控制器。
- ODL:OpenDaylight,思科主导开发的开源SDN控制器。
- ONOS:SDN控制器。
推荐书籍
- 《软件定义网络 SDN与OpenFlow解析》
- 《深度解析SDN 利益 战略 战术 实践》
传统网络的发展
起初计算机网络还没有出现的时候,各台主机之间都是单机运行,只能靠光盘、软盘、磁带等物理介质传递信息。
- 无网卡
- 无网线
- 无协议栈
PC—PC:网线的出现
为了解决上述问题,出现了网线把两台主机相连。随之出现的就是网卡和协议栈。
- 网卡:数据处理,将比特流转换为数据,将磁盘上的数据/字节 转换为 网线上的比特/电流。将比特流转换为数据,将磁盘上的数据/字节 转换为 网线上的比特/电流。
- 网线:供物理介质,承载比特流/电信号(数字信号)。
- 协议栈:沟通语言,实现通信过程中的数据解析,地址寻址,数据流控制。
- 网卡 、 网线 、 协议栈 组成最小单元网络。
- 缺点:这种点到点网络无法实现远距离通信。
网线不够长?—中继器Repeater
主机之间距离太远超过普通物理网络传输上限,数据开始丢失。
- 中继器:Repeater,物理层产品,对信息进行中继和放大,实现了远程物理传输。
- 缺点:只有两个接口Left和Right,不能实现多台主机通信。
接口不够怎么办?—集线器Hub
- 集线器:Hub,多口中继器,任意接口收到消息都会发往所有的Port。
- 缺点:Hub把消息乱发,多台主机位于同一冲突域,安全问题。带宽利用率低。
怕骚扰怎么办?—网桥Bridge
- 网桥:Bridge,链路层产品,有一张 MAC表(CAM表)像地图一样,信息能够送给具体的主机。进行冲突域与的隔离。
- 缺点:只有两个Port,还是有两个主机处于同一个冲突域的状态。隔离不彻底。
解决网桥的缺陷—交换机Switch
交换机在网桥的基础上改进。交换机是当代计算机网络中比较重要的产品和技术,每一台连接到Switch的主机都处于一个独立的冲突域内。同时利用MAC通信表进行转发数据流。
- 优点
- 它是一种局域网产品
- 接口数量更加密集,每一台主机在独立的冲突域,带宽利用率大大增强。
- 利用ASIC硬件芯片进行高速的转发。
- 能够进行VLAN虚拟局域网的隔离:不仅仅能够隔离冲突域,还能通过VLAN隔离广播域。
- 缺点:Switch一般用于本地网络,局域网之间无法通信。
不够远怎么办?—路由器Router
- 路由器是网络层产品,基于IP寻址,采用路由表来进行数据转发。
- 路由器实现了不同局域网之间的通信连接,可以是不同的介质,比如以太网和令牌环网可以互通,实现广播域隔离,实现远程通信。
- 第一台Router由思科创始人织造。
从这个图可以看出,三个不同IP前缀的局域网可以通过路由器互联。Router实现了网络的大融合。
布线麻烦怎么办?—无线AC/AP
- 无线AC/AP Access point:可以看成带有无线功能的交换机/路由器。随着移动办公的趋势,网络中无线产品越来越多。
- 根据部署方法分类:
- 胖AP:无线AP具有独立的操作系统,可以独立调试网络热点中的所有配置。eg. TP-LINK
- 瘦AP:无线AP只具备无线信号发射的功能,所有的命令调试全部集中在后台的AC/无线控制器上面。(联想一下SDN)
- 小型无线网络,比如家庭网络,使用胖AP即可解决;大型无线网络,比如无线城市,则需要使用瘦AP方案解决。
不够安全怎么办?—防火墙Firewall
- 防火墙:Firewall,主机能主动访问Internet,但是Internet主动访问主机要被防火墙限制。
- 防火墙可以看作带有安全功能的Router。
- 是否有了防火墙就可以不用路由器了呢:理论上可以,但是在实际的部署中,路由器一般和防火墙同时存在,防火墙负责安全隔离,路由器负责路由选路。
网络拥挤怎么办?—流控
- 流控:与传统Router相比,流控具有以下feature:
- 负载均衡
- 深度数据包识别(视频、音乐、邮件等)
- 行为管理
- 链路优化
由以上产品所构成的各式各样的网络
- 家庭SOHO网络
- 小型创业公司网络
- 园区网
- 政务网
- 数据中心网
- 电信/互联网
那么网络到底要多大才能满足以上种种?
要满足 端到端的主机通信,远程网络的主机通信,不同局域网络之间的通信,处理泛洪问题,解决安全问题,解决流量控制问题 等等一系列十分复杂 实现困难的问题,可想而知,配置网络是一件多么庞大,多么困难的事情了。
在网络速度迅猛发展的今天,网络流量越来越多,网络拥塞也日益见长。在解决以上问题的同时,解决 网络安全控制,网络拥塞控制,保证网络效率,解决网络配置难,管理网络难,更新服务难 等一系列困扰以久的问题也迫在眉睫。传统网络越来越为人诟病,原有架构在解决这些问题的路径上举步维艰,难以维系。
总结:需求 驱动 技术
传统网络行业的发展,是一种按需发展的思路:出现什么问题就解决什么问题催生出什么产品。”这句话是根据传统网络的发展历程得出的结论:从刚刚开始的中继器到现在如此庞杂的互联网络,每一次革命性的网络设备的发明,都是源于需求。
但是,这样的发展速度是十分缓慢的:大部分网络产品是硬件产品,更新迭代远不如软件快。
最致命的一点:“底层是对用户封闭的,客户的意见只能反映到厂商,由厂商来解决他们的需求,周期长,效率低。”
因此,我们的思考,就从这些问题入手:我们能不能做出一个架构,让网络像软件一样,更新快,用户体验好,可管理性强,用户如果有需求可以直接对它进行相关操作。
SDN 用户的需求中诞生!