突发流量是导致网络拥塞和丢包的重要原因之一.减少网络拥塞的一种方法是在多条可达路径间均衡网络流量,如等价多路径(Equal-Cost Multi-Path,ECMP)路由.然而,大多数等价多路径路由或者静态地将不同的流/数据包哈希到不同的路径,或者依赖于局部的/过时的路径状态信息.OpenFlow技术利用集中式控制器控制网络行为,为控制器根据全局网络状态信息进行动态的数据流优化提供了可能.然而,采用基于轮询的网络状态探测机制在处理突发流量问题上面临诸多困难.文中提出一种用于OpenFlow网络的快速流调度策略,称为Nimble.Nimble架构扩展了OpenFlow协议的packet-in消息,由网络设备自主监测设备状态,并在网络出现拥塞时通过扩展的packet-in消息主动向控制器通告拥塞信息.模拟结果显示Nimble策略能够以近于零的时延检测网络链路拥塞,从而有效提高网络性能.
Bursty traffic is one of the most important reasons that cause network congestion and packet loss. One way to red/ace network congestion is to load balance traffic among multiple paths, such as ECMP (Equal-Cost Multi-Path) routing. However, most of ECMP routing algo- rithms either statically hash different flows/packets to separate paths, or depend on local/stale path load information. OpenFlow provides a new possibility to dynamically schedule flows according to global network status using centralized controllers. However, the poll-based mechanism to sense network status makes it hard to handle bursty traffic. In this paper, we propose a fast flow scheduling strategy for OpenFlow networks, namely the Nimble. The Nimble detects congestion by switches themselves, and exploits the extended packet-in message to notify the controllers as soon as congestion occurs. Simulation results show that the Nimble strategy could detect link congestion at nearly zero delay and could significantly improve network performance.