Please use this identifier to cite or link to this item: http://hdl.handle.net/11455/96841
標題: OpenFlow交換器的Packet-In緩衝區外掛實作
An Implementation of Packet-In Buffer Plugin for OpenFlow Switches
作者: 莊定軒
Ding-Syuan Jhuang
關鍵字: 軟體定義網路
控制器
緩衝區
OpenFlow
SDN
Controller
Packet-In
Buffer
摘要: 多媒體應用在計算機網絡中急劇增長,增加的流量可能導致新開發的軟體定義網路的管理複雜性。在軟體定義網路中,當OpenFlow交換器接收到封包時,它會在交換器內的Flow table中搜尋匹配的規則欄位。一旦封包匹配,它將轉發封包到下一個目的地。如果封包在交換器中無法匹配,則交換器將會產生packet-in訊息,將整個封包直接傳送至軟體定義網路中的控制器。 當有大量的packet-in訊息在控制器時,新進來的packet-in訊息在處理之前可能會遇到長時間的延遲。在控制器封包緩衝區已經滿的情況下,封包可能直接被丟棄。為了加快packet-in訊息的處理時間,我們在OpenFlow交換器和控制器之間提出一個Packet-In緩衝區外掛插件作為中間盒,不是發送不匹配的完整的封包到控制器,而是僅提取packet-in訊息內包含的封包標頭將其傳送到控制器。 此外掛緩衝區包含三個模組:packet-in訊息捕捉模組、packet-out訊息捕捉模組、封包緩衝儲存區模組。Packet-in訊息捕捉模組將packet-in訊息分離成標頭和數據,並將數據和緩衝區唯一標識符號(BUID)存儲到封包緩衝儲存區模組中。之後將標頭包裝成新的packet-in訊息傳入控制器中。Packet-out訊息捕捉模組利用控制器傳回來的packet-out訊息內的BUID從封包緩衝儲存區模組中取得原始封包,並合併成新的packet-out訊息傳送給OpenFlow交換器。我們的實驗結果顯示,通過將縮小packet-in訊息大小到92位元組,可以有效的改善控制器的吞吐量,透過緩衝區外掛的設計,一個軟體定義網路中的控制器得以管理更多的交換器,網路的規模可以很容易的擴展。
The drastically multimedia applications increased traffic may cause management complexity in the newly developed Software-Defined Networking (SDN). With SDN, when an OpenFlow switch receives a packet, it searches the flow table for a flow match, and forwards the packet to the next hop once the flow is matched in the table. However, a mismatch may result in the packet to be directed to the controller as a packet-in message. When the number of packet-in messages increases, a newly arrived packet may suffer from long latency before it is processed. The packet could be even dropped in case of the packet-in buffer being full. To speed up the processing time of packet-in messages, instead of sending mismatched packets to the controller, we propose a packet-in buffer plugin between OpenFlow switches and the controller as a middle box. Only the header of the mismatched packet is extracted and directed to the controller for the purpose of forwarding determination. The plugin structure includes three modules: packet-in module, packet-out module and packet-buffer storage module. The packet-in module detaches the header and data from the mismatched packet and forwards the new packet containing header and buffer unique identifier (BUID) to the controller as well as stores the data and BUID into the packet-buffer storage. The packet-out module combines the packet-out message, as corresponding to the BUID, with the original data from packet-buffer storage and sends to the destined OpenFlow switch. Our experimental results show that by cutting the size of a packet-in message to 92bytes, we can successfully reduce the congestion occasions at the controller and improve the throughput of the controller. As a result, a single controller is able to manage more switches, and the network can be easily scaled out. However, if the scale of the network is not large enough, then the cost of going through an intermediate buffering device may result in increased latency.
URI: http://hdl.handle.net/11455/96841
文章公開時間: 10000-01-01
Appears in Collections:資訊科學與工程學系所

文件中的檔案:

取得全文請前往華藝線上圖書館



Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.