TWI520527B - 開關系統、開關控制方法以及記憶媒體 - Google Patents

開關系統、開關控制方法以及記憶媒體 Download PDF

Info

Publication number
TWI520527B
TWI520527B TW100126737A TW100126737A TWI520527B TW I520527 B TWI520527 B TW I520527B TW 100126737 A TW100126737 A TW 100126737A TW 100126737 A TW100126737 A TW 100126737A TW I520527 B TWI520527 B TW I520527B
Authority
TW
Taiwan
Prior art keywords
packet
open flow
search
function unit
rule
Prior art date
Application number
TW100126737A
Other languages
English (en)
Other versions
TW201215037A (en
Inventor
鈴木洋司
高島正德
久保田一志
伊澤徹
林將志
Original Assignee
日本電氣股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電氣股份有限公司 filed Critical 日本電氣股份有限公司
Publication of TW201215037A publication Critical patent/TW201215037A/zh
Application granted granted Critical
Publication of TWI520527B publication Critical patent/TWI520527B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/34Signalling channels for network management communication
    • H04L41/342Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/252Store and forward routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

開關系統、開關控制方法以及記憶媒體
本發明係關於開關系統,尤其係關於各個開關具有複數表格的開關系統。
關於網路系統中的通訊路徑的控制,近年來研究出一種使用屬於通訊機器之控制通訊協定的開放流(OpenFlow)技術的路徑控制方式。將藉由開放流技術來進行路徑控制的網路稱為開放流網路。
在開放流網路中,OFC(OpenFlow Controller)等控制器藉由操作OFS(OpenFlow Switch)等開關的開放流表格(OpenFlow Table)來控制開關的行動。控制器與開關之間係藉由供控制器使用依據開放流通訊協定的控制訊息來控制開關之用的安全通道(Secure Channel)來進行連接。
開放流網路中的開關係指形成開放流網路,在控制器的控制下的邊緣開關及核心開關。將開放流網路中從在輸入側邊緣開關的封包接收、至在輸出側邊緣開關的傳送為止的封包的一連串流程稱為流道(Flow)。
開放流表格係指登錄有將對適合於預定匹配條件(規則)的封包(通訊資料)所應進行的預定處理內容(行為(action))進行定義的流道項目(Flow entry)的表格。
流道項目的規則(rule)係藉由使用封包的各通訊協定階層的標頭區域所包含的目的地位址(Destination Address)、送訊源位址(Source Address)、目的地埠(Destination Port)、送訊源埠(Source Port)的任一者或全部的各種組合來進行定義,可作區別。其中,在上述位址係設為包含MAC位址(Media Access Control Address)或IP位址(Internet Protocol Address)者。此外,除了上述以外,入口埠(Ingress Port)的資訊亦可作為流道項目的規則來加以使用。
流道項目的行為係表示「輸出至特定的埠」、「廢除」、「改寫標頭」等動作。例如,開關若在流道項目的行為顯示輸出埠的識別資訊(輸出埠編號等),則對相當於此的埠輸出封包,若未顯示出輸出埠的識別資訊,則廢除封包。或者,開關若在流道項目的行為顯示標頭資訊,則根據該標頭資訊來改寫封包的標頭。
開放流網路中的開關係對適合於流道項目的規則的封包群(封包系列)執行流道項目的行為。
關於開放流開關的詳細內容,記載於非專利文獻1、2。
在控制網路上的大量流道時,必須要有大容量的開放流表格。在現況中,開放流表格所使用的TCAM(Ternary Content Addressable Memory)並非為太大容量,因此無法謂為可確保充分所需的容量。此外,不易增加開放流表格所使用的開關的表格(主要為TCAM)的容量本身。
以上述課題之解決方法之一而言,有一種使用外部TCAM的方法,但是其耗費成本。此外,在如10G多埠(具有與資料傳送速度10G位元/秒相對應的複數個埠的網路機器)般的高速轉送機器中,會有不可進行外部TCAM的使用本身的狀況。至少在現況中,可以10G base的開關來進行動作的外部TCAM並不存在。
(先前技術文獻) (非專利文獻)
(非專利文獻1)“The OpenFlow Switch Consortium”<http://www.openflowswitch.org/>
(非專利文獻2)“OpenFlow Switch SpecificationVersion 0.9.0(Wire Protocol 0x98)July 20,2009 Current Maintainer:Brandon Heller([email protected])”<http://www.openflowswitch.org/documents/openflow-spec-v0.9.0.pdf>
本發明之目的在使用屬於既有資源的開關的各表格,來實現開放流表格的項目(entry)數擴充。
本發明之開關系統係包括:開放流功能部,將對預定封包的處理加以定義的複數表格,按照各表格所定義的條件及處理內容作邏輯性的統合而建構開放流表格,參照前述開放流表格,決定對收訊封包的處理內容;及行為功能部,按照所決定的處理內容,執行對收訊封包的處理。
本發明之開關控制方法係在開放流開關中所被實施之開關控制方法,其特徵為包含:將對預定封包的處理加以定義的複數表格,按照各表格所定義的條件及處理內容作邏輯性的統合而建構開放流表格,參照開放流表格,來決定對收訊封包的處理內容;及按照所被決定的處理內容,執行對收訊封包的處理。
本發明之程式係用以使作為開關所使用的計算機執行上述開關控制方法中的處理的程式。其中,本發明之程式係可儲存在記憶裝置或記憶媒體。
藉此,可由控制器將開關內部的複數表格作為1個大容量的開放流表格加以使用。
<第1實施形態>
以下參照所附圖示,說明本發明之第1實施形態。
[系統構成]
如第1圖所示,本發明之開關系統係包含控制器101、及開關102。
控制器101係以依據開放流通訊協定的處理來控制開關102。
[開關之構成]
開關102係包括:通訊協定控制部103、輸入埠104、開放流功能部105、舊有(Legacy)功能部108、行為(Action)功能部111、及輸出埠T12。
通訊協定控制部103係在進行供控制器101以依據開放流通訊協定的處理來控制開關102之用的通訊時,在控制器101與開關102之間進行通訊協定控制。通訊協定控制部103並非侷限於開關102的內部,亦可為開關102的前段。
輸入埠104係封包輸入用界面。輸入埠104係具有開放流有效埠、及開放流無效埠。開放流有效埠係指與開放流通訊協定相對應的輸入埠,開放流無效埠係指與開放流通訊協定未對應的輸入埠。
開放流功能部105係處理由開放流有效埠所輸入的封包。
開放流功能部105係包括開放流表格管理部106、及開放流處理解決部(OpenFlow Action Resolver)107。
開放流表格管理部106係保持開關102所使用的開放流表格。在開放流表格係定義出對依據開放流通訊協定的封包的行為(開放流處理的行為)。
開放流處理解決部107係根據開放流表格管理部106的檢索(Lookup)結果,來決定開放流處理的行為。
舊有功能部108係處理由開放流無效埠所輸入的封包。
舊有功能部108係包括:舊有表格(Legacy Table)管理部109、及舊有處理解決部(Legacy Action Resolver)110。
舊有表格管理部109係開關102所使用的舊有表格。舊有表格管理部109係定義出對未依據開放流通訊協定的封包(一般的封包等)的行為(舊有處理的行為)。
舊有處理解決部110係根據舊有表格管理部109的檢索結果,來決定適合的舊有處理的行為。關於舊有處理,係使用一般的開關功能。
在行為功能部111中係執行由開放流功能部105、或舊有功能部108所決定的行為。
輸出埠112係封包輸出用界面。
[開放流處理與舊有處理的不同]
在開放流處理中,係以外部的控制器經由來進行封包的路徑控制。控制器係觀看網路全體來選擇最適路徑。另一方面,在舊有處理中係以自律分散進行路徑控制,俾以由一般的開關或路由器來進行。一般的開關或路由器係由關於自身附近的資訊來判斷網路狀況而選擇最適路徑。
在開放流處理中,係可以最大12種的資訊組合來進行封包識別。另一方面,在舊有處理中,如若為L2網路即稱為目的地MAC位址、若為L3網路即稱為目的地IP位址般,可使用在封包識別的資訊較少。因此,不易進行詳細的流道控制。例如,在舊有處理中,即使為相同的目的地IP位址,若送訊源TCP埠編號不同,即判斷為其他流道而選擇其他路徑。
[開關系統的全體動作]
以下說明第1圖之開關系統的全體動作。
[封包輸入]
在開關102流入新封包時,開關102係在輸入埠104接收該封包。
開關102係確認已接收到封包的輸入埠104是否為開放流有效埠。例如,開關102係參照開關102本身或輸入埠104的設定資訊(config)等,來確認輸入埠104是否為開放流有效埠。
[由封包輸入移至開放流處理]
開關102係當輸入埠為開放流有效埠時,將封包由輸入埠104交付給開放流功能部105。
[開放流處理]
開放流功能部105係針對所被交付的封包,在保持開關102的複數表格的開放流表格管理部106中進行檢索處理。
接著,開放流功能部105係在開放流處理解決部107中,由檢索結果、及各表格的優先順序(Priority)來決定封包的行為。其中,優先順序亦可改讀為優先度。
[由開放流處理移至行為執行]
開放流功能部105係當所決定的行為為「Packet-IN」(對控制器的適當封包的行為詢問)時(例如,未存在適當的流道項目而無法決定行為時)係透過通訊協定控制部103來對控制器101進行詢問(適當封包的轉送等)。最初亦可將成為舊有處理對象的封包以外的所有封包的行為,以無條件作為「Packet-IN」。開放流功能部105係接收「Packet-OUT」(來自控制器的行為詢問結果)作為對詢問的響應,將該內容決定為適當封包的行為,且登錄在開放流表格管理部106所保持的表格。以下,開放流功能部105係在開放流處理解決部107中,對相當於與該封包為相同規則的封包,決定該行為。開放流功能部105係根據所被決定的行為,將適當封包交付給行為功能部111。亦即,適當封包的處理主體由開放流功能部105移至行為功能部111。[由開放流處理移至舊有處理]開放流功能部105係當所被決定的行為為「NORMAL」(使用舊有功能部108的封包處理)時,將適當封包交付給舊有功能部108。亦即,適當封包的處理主體由開放流功能部105移至舊有功能部108。
[由封包輸入移至舊有處理]此外,開關102係當輸入埠104為開放流無效埠時,或對該封包在之前(以前)由開放流功能部105所決定的行為為「NORMAL」時,將封包由輸入埠104交付給舊有功能部108。亦即,適當封包的處理主體由輸入埠104移至舊有功能部108。
[舊有處理]舊有功能部108係關於所被交付的封包,在由開關102的複數表格所構成的舊有表格管理部109中進行檢索處理。
[由舊有處理移至行為執行]接著,舊有功能部108係在舊有處理解決部110中,由檢索結果、及各表格的優先順序(Priority)來決定封包的行為。亦即,適當封包的處理主體由舊有功能部108移至行為功能部111。其中,關於舊有功能部108~舊有處理解決部110中的舊有處理,由於使用一般的開關功能,因此在本發明中並未詳細揭示。[行為執行]行為功能部111係對適當封包執行由開放流功能部105或舊有功能部108所決定的行為。以在開放流功能部105所被決定的行為之例而言,考慮有標頭(Header)資訊的改寫、來自所被指定的輸出埠的封包輸出、封包廢除等。以由舊有功能部108所被決定的行為之例而言,考慮藉由路由(routing)等所為之封包轉送等。但是,實際上並非限定於該等之例。最後,行為功能部111係當在所被執行的行為中包含有「封包輸出」時,按照該內容,由適宜的輸出埠112輸出適當封包。
[藉由控制器所為之開放流表格的控制]其中,控制器101係可透過通訊協定控制部103來進行開關102的開放流表格管理部106的控制。在此,「開放流表格管理部106的控制」係指對開放流表格的流道項目的登錄/變更/刪除/總括刪除等。由開放流表格管理部106保持作為開放流表格的開關102的各表格並不一定與由開放流規格(OpenFlow Spec)所規定的所有操作相對應。
因此,控制器101係必須根據可由由開放流表格管理部106保持作為開放流表格的各表格來實現的功能(可設定的行為)來進行控制。[開放流功能部的詳細內容]第2圖係用以說明本發明之開放流功能部105的詳細內容的圖。開放流功能部105、開放流表格管理部106、開放流處理解決部107、行為功能部111係與第1圖所示機構/功能為相同者。
開放流功能部105係包括開放流表格管理部106、及開放流處理解決部107。開放流表格管理部106係包括表格群113、及檢索(Lookup)功能部114。表格群113係構成開放流表格的表格群。檢索功能部114係使用表格群113來進行輸入封包的檢索。
檢索功能部114係包括L2/L3/其他表格(OF)檢索功能部115、及TCAM(OF)檢索功能部116。其中,「OF」係「OpenFlow」的簡稱。L2/L3/其他表格(OF)檢索功能部115係關於輸入封包,參照L2表格(OF)、L3表格(OF)、及其他表格(OF),來檢索是否有適當的項目。以其他表格(OF)之一例而言,列舉有群播路由(Multicast Routing)表格等。亦即,L2/L3/其他表格(OF)檢索功能部115係關於輸入封包,以通訊協定單位執行表格的檢索。TCAM(OF)檢索功能部116係關於輸入封包,參照TCAM(OF),來檢索是否有適當的項目。亦即,TCAM(OF)檢索功能部116係關於輸入封包執行TCAM的檢索。[開放流功能部的動作]以下說明第2圖之開放流功能部105的動作。輸入埠104係將由開放流有效埠所被輸入的封包交付給開放流功能部105。開放流功能部105係關於所被交付的封包,在由開關102的複數表格所構成的開放流表格管理部106中進行檢索處理。
此時,開放流表格管理部106的檢索功能部114係根據被登錄在構成開放流表格的表格群113的項目資訊來進行檢索。具體而言,在檢索功能部114中,首先L2/L3/其他表格(OF)檢索功能部115進行檢索,接著,TCAM(OF)檢索功能部116進行檢索。檢索功能部114係將該檢索結果交付給開放流處理解決部107。開放流處理解決部107係由檢索結果、及各表格的優先順序(Priority)來決定封包的行為。[硬體之例示]以下說明用以實現本發明之開關系統之硬體的具體例。
以控制器101之例而言,假想有PC(個人電腦)、工作站、電腦主機(main frame)、超級電腦等計算機。此外,控制器101亦可為裝載在計算機的擴充板、或建構在物理機器上的虛擬機器(VM:Virtual Machine)。以開關102之例而言,假想有L3開關(layer 3 switch)、L4開關(layer 4 switch)、L7開關/應用程式開關(layer 7 switch)、或者多層開關(multi-layer switch)等網路開關(network switch)。其他亦考慮有路由器(router)、代理伺服器(proxy)、閘道(gateway)、防火牆(firewall)、負載平衡器(load balancer:負載分散裝置)、頻寬控制裝置/安全監視控制裝置(gatekeeper)、基地台(base station)、存取點(AP:Access Point)、通訊衛星(CS:Communication Satellite)、或者具有複數通訊埠的計算機等,來作為開關102之例。
通訊協定控制部103、開放流功能部105、開放流表格管理部106、開放流處理解決部107、舊有功能部108、舊有表格管理部109、舊有處理解決部110、及行為功能部111係藉由根據程式進行驅動來執行預定處理的處理器、及記憶該程式或各種資料的記憶體來實現。以上述處理器之例而言,考慮有CPU(Central Processing Unit)、網路處理器(NP:Network Processor)、微處理器(microprocessor)、微控制器、或者具有專用功能的半導體積體電路(IC:Integrated Circuit)等。
以上述記憶體之例而言,考慮有RAM(Random Access Memory)、ROM(Read Only Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)或快閃記憶體等半導體記憶裝置、HDD(Hard Disk Drive)或SSD(Solid State Drive)等輔助記憶裝置、或DVD(Digital Versatile Disk)等可移式磁碟、或SD記憶卡(Secure Digital memory card)等記憶媒體(media)等。此外,亦可為緩衝器(buffer)或暫存器(register)。或者,亦可為使用DAS(Direct Attached Storage)、FC-SAN(Fibre Channel-Storage Area Network)、NAS(Network Attached Storage)、IP-SAN(IP-Storage Area Network)等的存儲裝置。
此外,上述處理器及上述記憶體亦可一體化。例如,近年來,微電腦等的1晶片化不斷在進步。因此,考慮被裝載在電子機器等的1晶片微電腦包括處理器及記憶體的事例。
或者,通訊協定控制部103、開放流功能部105、開放流表格管理部106、開放流處理解決部107、舊有功能部108、舊有表格管理部109、舊有處理解決部110、及行為功能部111亦可為被裝載在計算機的擴充板、或被建構在物理機器上的虛擬機器(VM)。
以輸入埠104及輸出埠112之例而言,考慮有與網路通訊相對應的基板(主機板或I/O板)等半導體積體電路、NIC(Network Interface Card)等網路轉接器或同樣的擴充卡、天線等通訊裝置、連接口(連接器)等通訊埠等。
此外,以輸入埠104及輸出埠112所利用的網路之例而言,考慮有:網際網路、LAN(Local Area Network)、無線LAN(Wireless LAN)、WAN(Wide Area Network)、架構(Backbone)、有線電視(CATV)線路、固定電話網、行動電話網、WiMAX(IEEE 802‧16a)、3G(3rd Generation)、專用線(lease line)、IrDA(Infrared Data Association)、Bluetooth(註冊商標)、串聯通訊線路、資料匯流排等。
其中,通訊協定控制部103、開放流功能部105、開放流表格管理部106、開放流處理解決部107、舊有功能部108、舊有表格管理部109、舊有處理解決部110、及行為功能部111的各個亦可為模組(module)、元件(component)、或專用裝置、或該等的起動(呼出)程式。
但是,實際上並非限定於該等之例。
[開放流處理解決部的詳細內容]
第3圖係用以說明本發明之開放流處理解決部107之詳細內容的圖。
開放流處理解決部107、TCAM(OF)檢索功能部116係與第2圖所示機構/功能為相同者。
開放流處理解決部107係藉由調整TCAM(OF)的項目映射,作為TCAM(OF)檢索功能部116的一部分予以實現。
因此,實質上開放流處理解決部107、TCAM(OF)檢索功能部116係成為1個功能方塊(TCAM(OF)Lookup & OpenFlow Action Resolver)。該功能方塊係具有表格間優先順序117、及TCAM(OF)內部的項目118。
表格間優先順序117係顯示所期待的行為優先順序(Priority)。TCAM(OF)內部的項目118係顯示與優先順序(Priority)相對應的TCAM(OF)內的項目映射。
TCAM(OF)內部的項目118係包含:TCAM(OF)檢索用項目群119、L2表格(OF)檢索結果參照用項目120、L3表格(OF)檢索結果參照用項目121、其他表格(OF)檢索結果參照用項目122、及Miss-hit用項目123。
TCAM(OF)檢索用項目群119係用以實現TCAM(OF)檢索功能部116中的TCAM(OF)檢索的項目集合。L2表格(OF)檢索結果參照用項目120係用以參照L2表格(OF)的檢索結果的項目。L3表格(OF)檢索結果參照用項目121係用以參照L3表格(OF)的檢索結果的項目。其他表格(OF)檢索結果參照用項目122係用以參照其他表格(OF)的檢索結果的項目。Miss-hit用項目123係用以將均未點閱命中(hit)任何項目的封包作為「Miss-hit(未點閱命中)」來處理的項目。亦即,該等係定義出上述各個行為的項目。
[開放流處理解決部的動作]
以下說明第3圖之開放流處理解決部107的動作。
以開放流表格內的檢索順序而言,最後由TCAM(OF)檢索功能部116進行檢索。其中,在TCAM(OF)檢索功能部116進行檢索時,可參照L2/L3/其他表格的檢索結果的開關中,係可藉由調整TCAM(OF)的項目映射,來實現開放流處理解決部107。
例如,可將如表格間優先順序117般所期待之按每個表格的行為優先順序(Priority),藉由如TCAM(OF)內部的項目118般進行映射來作對應。
若為第3圖之例,行為優先順序(Priority)117係由優先順序(Priority)由高而低的順序,成為「全部對應(相當TCAM(OF))」→「L2對應(相當L2表格(OF))」→「L3對應(相當L3表格(OF))」→「其他對應(相當其他表格)」。
開放流處理解決部107若將其作為TCAM(OF)內的項目映射,由TCAM(OF)的檢索優先順序(Priority)由高而低的順序,按照「TCAM(OF)檢索功能實現用項目群119」→「L2表格(OF)檢索結果參照用項目120」→「L3表格(OF)檢索結果參照用項目121」→「其他表格(OF)檢索結果參照用項目122」→「Miss-hit用項目123」的順序排列即可。
[TCAM(OF)檢索功能實現用項目群]
TCAM(OF)檢索功能實現用項目群119係用以實現檢索功能的TCAM(OF)檢索功能部116的項目群。開放流處理解決部107係若輸入封包點閱命中TCAM(OF)檢索功能實現用項目群119的任一者時,選擇該項目的行為作為對該封包的行為。
[L2表格(OF)檢索結果參照用項目]
L2表格(OF)檢索結果參照用項目120係依據事前進行的L2表格(OF)的檢索結果,與輸入封包相對應的項目存在於L2表格(OF)上時所點閱命中(hit)的項目。
例如,在L2表格(OF)檢索時有與輸入封包相對應的項目時,係成為某旗標「X=1」,在TCAM(OF)上的L2表格(OF)檢索結果參照用項目120中,在該旗標「X=1」的情形下,該項目即點閱命中。
開放流處理解決部107係若L2表格(OF)檢索結果參照用項目120點閱命中時,選擇L2表格(OF)的適當項目的行為作為對該封包的行為。
[L3表格(OF)檢索結果參照用項目]
L3表格(OF)檢索結果參照用項目121係根據事前進行的L3表格(OF)的檢索結果,與輸入封包相對應的項目存在於L3表格(OF)上時所點閱命中的項目。
例如,在L3表格(OF)檢索時有與輸入封包相對應的項目時,係成為某旗標「Y=1」,在TCAM(OF)上的L3表格(OF)檢索結果參照用項目121中,在該旗標「Y=1」的情形下,該項目即點閱命中。
開放流處理解決部107係當L3表格(OF)檢索結果參照用項目121點閱命中時,選擇L3表格(OF)的適當項目的行為作為對該封包的行為。
[其他表格(OF)檢索結果參照用項目]
其他表格(OF)檢索結果參照用項目122係依據事前進行的其他表格(OF)的檢索結果,與輸入封包相對應的項目存在於其他表格(OF)上時所點閱命中的項目。
例如,在其他表格(OF)檢索時有與輸入封包相對應的項目時,係成為某旗標「Z=1」,在TCAM(OF)上的其他表格(OF)檢索結果參照用項目122中,若為該旗標「Z=1」的情形,則該項目即點閱命中。
開放流處理解決部107係當其他表格(OF)檢索結果參照用項目122點閱命中時,選擇其他表格(OF)的適當項目的行為作為對該封包的行為。
[Miss-hit用項目]
Miss-hit用項目123係當輸入封包均未點閱命中TCAM(OF)的任何項目時所點閱命中的項目。
在此,Miss-hit用項目123係所有型式的封包所點閱命中的項目。開放流處理解決部107係在輸入封包均未點閱命中TCAM(OF)的任何項目,而僅點閱命中Miss-hit用項目123時,按照開放流的設定,選擇「Packet-IN」(對控制器的適當封包的行為詢問)、或「NORMAL」(使用舊有功能部的封包處理)作為對該封包的行為。
其中,若欲改變各表格的行為優先順序(Priority)時,更換TCAM(OF)內的適當項目的順序即可。
[開放流表格控制的概要]
第4圖係本發明中來自控制器的開放流表格控制的概要圖。控制器101、開關102、通訊協定控制部103、表格群113係與第1圖、第2圖所示機構/功能為相同者。
開關102係包含:TCAM124、L2表格125、L3表格126、及其他表格127。
TCAM124係包含TCAM(OF)、及TCAM(Legacy)。L2表格125係包含L2表格(OF)、及L2表格(Legacy)。L3表格126係包含L3表格(OF)、及L3表格(Legacy)。其他表格127係包含其他表格(OF)、及其他表格(Legacy)。
TCAM(OF)、L2表格(OF)、L3表格(OF)、其他表格(OF)係構成開放流表格。
TCAM(Legacy)、L2表格(Legacy)、L3表格(Legacy)、其他表格(Legacy)係構成舊有表格。
開關102上的TCAM124、L2表格125、L3表格126、及其他表格127在一般情形下在物理上為1個表格。
在本發明中的開關102中,具有在物理上將1個表格(TCAM124、L2表格125、L3表格126、及其他表格127)在邏輯上區分為構成開放流表格的表格群113、及構成舊有表格的表格群128的功能。亦即,開關102係在物理上將1個表格(TCAM124、L2表格125、L3表格126、及其他表格127)按照各表格所定義的條件及處理內容作邏輯性統合而建構開放流表格(表格群113)與舊有表格(表格群128)。
構成開放流表格的表格群113係包含TCAM(OF)、L2表格(OF)、L3表格(OF)、其他表格(OF)。
構成舊有表格的表格群128係包含TCAM(Legacy)、L2表格(Legacy)、L3表格(Legacy)、其他表格(Legacy)。
[開放流表格控制的概要]
以下說明來自第4圖之控制器之開放流表格控制的概要。
控制器101係可透過通訊協定控制部103來進行開關102的開放流表格的控制。
開關上的TCAM124、L2表格125、L3表格126、其他表格127在一般情形下在物理上分別為1個表格。
在本發明中的開關中,將該等表格的資源的一部分切出為開放流用來加以使用,具有以邏輯性建構構成開放流表格的表格群113與構成舊有表格的表格群128的功能。亦即,開關102係根據TCAM124、L2表格125、L3表格126、及其他表格127來建構邏輯性的開放流表格(表格群113)與舊有表格(表格群128)。
構成開放流表格的各表格係分別可實現的開放流功能為不同。
因此,控制器101係必須根據「1:在各表格可實現的開放流功能係什麼樣的功能」、「2:所控制的項目係構成開放流表格的哪一個表格的項目」來進行開放流表格控制。
關於「1」,係有「控制器側:預先輸入(Input)在各表格可實現的功能,欲進行除此以外的控制時,使其具有送回錯誤的機構」、「開關側:關於來自控制器的控制命令,作為對象的表格未具有與控制相對應的功能時,使其具有送回錯誤的機構」的對應。
關於「2」,係有「將每個開放流表格中的優先順序(Priority)(0-64k)的一定範圍在各表格中進行分配,當由控制器進行控制時,係根據該優先順序(Priority)的範圍,判別所使用的表格」、「使構成開放流表格的各表格具有ID,當由控制器進行控制時,根據該ID來判別所使用的表格」的對應。
[開放流表格控制的詳細內容(1)]
第5圖係用以說明本發明中來自控制器之開放流表格控制之第1方式之例的詳細內容的圖。在此,說明在優先順序(Priority)範圍作表格指定的情形。
控制器101、開關102、開放流表格管理部106、表格群113係與第1圖、第2圖所示機構/功能為相同者。
開放流功能部105的開放流表格管理部106係在構成開放流表格的表格群113的各個表格分配優先順序(Priority)範圍。
以優先順序(Priority)範圍作表格指定時,各個表格的優先順序(Priority)範圍不可重複。此外,優先順序(Priority)範圍的合計不可超過以開放流所規定的優先順序(Priority)範圍。
控制器101係以各表格所分配的優先順序(Priority)範圍內的值來指定表格。
開放流功能部105的開放流表格管理部106係根據由控制器101所指定的優先順序(Priority)範圍內的值,來判別所使用的表格。
[開放流表格控制的詳細內容(2)]
第6圖係用以說明本發明中來自控制器之開放流表格控制之第2方式之例的詳細內容的圖。在此,說明以表格ID作表格指定的情形。
控制器101、開關102、開放流表格管理部106、表格群113係與第1圖、第2圖所示機構/功能為相同者。
開放流功能部105的開放流表格管理部106係在構成開放流表格的表格群113分配各個表格ID129。
以表格ID作表格指定時,各個表格ID不可重複。另一方面,以各表格所規定的優先順序(Priority)範圍即使重複,亦不成問題。各表格係藉由表格ID129而被識別為其他表格,各個表格的優先順序(Priority)係藉由開放流處理解決部107來決定之故。
控制器101係由各表格所分配的表格ID129來指定表格。
開放流功能部105的開放流表格管理部106係根據由控制器101所被指定的表格ID129來判別所使用的表格。
[封包流入時的處理動作例(1)]
第7A圖、第7B圖係本發明中封包流入時的開關系統的第1動作例。為簡單起見,僅記載有與動作相關連的功能方塊。步驟S101~步驟S107係表示由封包流入以來的一連串動作流程。
(1)步驟S101
控制器101係預先對開關102進行{Match條件:目的地IP=AA、Action:Drop}的TCAM(OF)項目(1)的登錄。開關102係對表格群113的TCAM(OF)進行TCAM(OF)項目(1)的登錄。
其中,「Match條件」係藉由至L1~L4的任意標頭資訊的組合予以定義。此外,「Action」係定義出對適合於Match條件的封包的中繼/廢除、標頭資訊的改寫等行為者。
(2)步驟S102
控制器101係預先對開關102進行{Match條件:目的地IP=AA、Action:由Port1輸出}的L3表格(OF)項目(1)、與{Match條件:目的地IP=BB、Action:由Port2輸出}的L3表格(OF)項目(2)的登錄。開關102係在表格群113的L3表格(OF)登錄L3表格(OF)項目(1)及L3表格(OF)項目(2)。
(3)步驟S103
輸入埠104係在封包流入時,目的地IP=AA的封包流入至開放流有效埠時,傳送至開放流功能部105。
(4)步驟S104
開放流功能部105係若目的地IP=AA的封包流入至開放流有效埠,即處理該封包。
(5)步驟S105
首先,在開放流功能部105中,L2/L3/其他表格(OF)檢索功能部115係針對所流入的封包,進行在L2/L3/其他表格(OF)的檢索。在該檢索中,該封包係點閱命中L3表格(OF)項目(1)。
(6)步驟S106
L2/L3/其他表格(OF)檢索功能部115係對開放流處理解決部107通知該檢索結果。在第7B圖中,開放流處理解決部107與TCAM(OF)檢索功能部116係顯示為1個功能方塊(TCAM(OF)Lookup & OpenFlow Action Resolver)。
(7)步驟S107
TCAM(OF)檢索功能部116係針對所流入的封包,進行在TCAM(OF)的檢索。在該檢索中,該封包係由TCAM(OF)項目(1)在最初點閱命中。在該時點,TCAM(OF)的檢索處置即結束。TCAM(OF)檢索功能部116係對開放流處理解決部107通知該檢索結果。
(8)步驟S108
開放流處理解決部107係由L2/L3/其他表格(OF)檢索功能部115與TCAM(OF)檢索功能部116的各個接收檢索結果,按照表格間的優先順序,決定對所流入的封包的行為。在此,TCAM(OF)的優先順序為最高。因此,開放流處理解決部107係決定TCAM(OF)項目(1)的行為(Drop)作為對所流入的封包的行為,且對行為功能部111通知所決定的行為(Drop)。
(9)步驟S109
行為功能部111係執行在開放流處理解決部107所被決定的行為(Drop)。在此,行為功能部111由於行為為「Drop」,因此未進行封包的輸出。行為功能部111係廢除所流入的封包及屬於與此為相同流道之以後的封包。
[封包流入時的處理的動作例(2)]
第8A圖、第8B圖係本發明中封包流入時之開關系統的第2動作例。為簡單起見,僅記載與動作相關連的功能方塊。步驟S201~步驟S210係表示由封包流入以來的一連串動作流程。
(1)步驟S201
控制器101係預先對開關102進行{Match條件:目的地IP=AA、Action:Drop}的TCAM(OF)項目(1)的登錄。開關102係在表格群113的TCAM(OF)進行TCAM(OF)項目(1)的登錄。
(2)步驟S202
控制器101係預先對開關102進行{Match條件:目的地IP=AA、Action:由Port1輸出}的L3表格(OF)項目(1)、與{Match條件:目的地IP=BB、Action:由Port2輸出}的L3表格(OF)項目(2)的登錄。開關102係在表格群113的L3表格(OF)登錄L3表格(OF)項目(1)及L3表格(OF)項目(2)。
(3)步驟S203
輸入埠104係在封包流入時,若目的地IP=BB的封包流入至開放流有效埠,則傳送至開放流功能部105。
(4)步驟S204
開放流功能部105係若目的地IP=BB的封包流入至開放流有效埠時,即處理該封包。
(5)步驟S205
首先,在開放流功能部105中,L2/L3/其他表格(OF)檢索功能部115係針對該封包,進行在L2/L3/其他表格(OF)的檢索。在該檢索中,該封包點閱命中L3表格(OF)項目(2)。
(6)步驟S206
L2/L3/其他表格(OF)檢索功能部115係對開放流處理解決部107通知該檢索結果。在第8B圖中,開放流處理解決部107與TCAM(OF)檢索功能部116係顯示為1個功能方塊(TCAM(OF)Lookup & OpenFlow Action Resolver)。
(7)步驟S207
TCAM(OF)檢索功能部116係針對所流入的封包,進行在TCAM(OF)的檢索。但是,所流入的封包為目的地IP=BB的封包,因此在TCAM(OF)並沒有所點閱命中的項目。在該時點,TCAM(OF)的檢索處置即結束。TCAM(OF)檢索功能部116係對開放流處理解決部107通知該檢索結果。在該時點,TCAM(OF)的檢索處置即結束。TCAM(OF)檢索功能部116係對開放流處理解決部107通知該檢索結果。
(8)步驟S208
開放流處理解決部107係由L2/L3/其他表格(OF)檢索功能部115與TCAM(OF)檢索功能部116的各個接收檢索結果,按照表格間的優先順序,決定對所流入的封包的行為。在此,作為對象的項目僅存在L3表格(OF)項目(2)。因此,開放流處理解決部107係決定L3表格(OF)項目(2)的行為(由Port2輸出)作為對所流入的封包的行為,對行為功能部111通知所決定的行為(由Port2輸出)。
(9)步驟S209
行為功能部111係執行在開放流處理解決部107所被決定的行為(由Port2輸出)。
(10)步驟S210
行為功能部111係將所流入的封包及屬於與其為相同流道之以後的封包輸出至具有Port2的輸出埠112。
(11)步驟S211
輸出埠112係將由行為功能部111所被輸出的封包由Port2輸出。
(12)步驟S212
由Port2所被輸出的封包係流出至網路上而朝向目的地IP=BB被傳送。
其中,在第8A圖、第8B圖中,L2/L3/其他表格(OF)檢索功能部115係針對所流入的封包,若有點閱命中複數表格的項目時,將點閱命中的所有項目作為檢索結果且通知開放流處理解決部107。開放流處理解決部107係當未存在點閱命中優先順序為最高的TCAM(OF)的項目時,採用點閱命中L2/L3/其他表格(OF)檢索功能部115的檢索結果之中優先順序為最高的表格的項目。
此外,在第8A圖、第8B圖中,L2/L3/其他表格(OF)檢索功能部115係針對所流入的封包,若有點閱命中複數表格的項目時,亦可按照表格間優先順序117,將點閱命中該等的表格之中優先順序為最高的表格的項目作為檢索結果且通知開放流處理解決部107。
[開放流表格控制例(1)]
第9圖係以優先順序(Priority)範圍作表格指定時來自控制器之開放流表格控制之第1方式之例。
登錄資訊132係由控制器101對開關102的開放流表格管理部106的登錄資訊。登錄結果133係對構成開放流表格的表格群113的登錄結果。
將構成開放流表格的表格群113鑑定為1個表格時,開關102係藉由優先順序(Priority)來進行對所期待的表格的控制。
(1)步驟S301
控制器101係對開關102進行{優先順序(Priority):50001、Match條件:XXXX、Action:YYYY}的項目的登錄。
(2)步驟S302
開關102係當由控制器101被登錄項目時,選擇適當於該項目的優先順序(Priority)的表格亦即L2表格(OF),且在該L2表格(OF)登錄適當項目。
[開放流表格控制例(2)]
第10圖係以表格ID作表格指定時來自控制器之開放流表格控制之第2方式之例。
登錄資訊134係由控制器對開放流表格的登錄資訊。登錄結果135係對構成開放流表格的表格群的登錄結果。
構成開放流表格的表格群的各表格分別鑑定其他開放流表格時,開關102係藉由表格ID來進行對所期待的表格的控制。
(1)步驟S401
控制器101係對開關102,進行(表格ID:#2、優先順序(Priority):1、Match條件:XXXX、Action:YYYY)的項目的登錄。
(2)步驟S402
開關102係當由控制器101被登錄項目時,選擇適當於該項目的表格ID的表格亦即L2表格(OF),且在該L2表格(OF)登錄適當項目。
[第1實施形態的特徵]
藉由本實施形態,可藉由開放流處理解決部來統合複數表格間的資源,而且將各表格的優先順序(Priority)作比較來進行行為(Action)解決。
因此,可使用開關的複數表格的資源來建構大容量的開放流表格。藉此,可藉由開關來控制大量流道。
此外,藉由本實施形態,可使用將開放流表格作為1個大容量的開放流表格加以使用時的「優先順序(Priority)範圍」、或將構成開放流表格的表格群的各表格作為複數不同的開放流表格加以使用時的「表格ID」,來識別構成開放流表格的各表格。
因此,可將由開關的複數表格所構成的開放流表格作為1個大容量的開放流表格、或複數不同的開放流表格加以使用。藉此,可靈活地控制由複數表格所構成的開放流表格。
<第2實施形態>
以下參照所附圖示,說明本發明之第2實施形態。
第2實施形態係在TCAM(OF)檢索功能部未包含開放流處理解決部時的開放流處理解決部的實施例。
[實施例1]
第11圖係用以說明依照「TCAM(OF)檢索功能部116」→「L2/L3其他表格(OF)檢索功能部115」的順序實施檢索時的開放流功能部105的詳細內容的圖。
開放流功能部105、開放流表格管理部106、開放流處理解決部107、行為功能部111、表格群113、檢索功能部114、L2/L3/其他表格(OF)檢索功能部115、TCAM(OF)檢索功能部116係與第2圖所示機構/功能為相同者。
參照第11圖,說明依照「TCAM(OF)檢索功能部116」→「L2/L3其他表格(OF)檢索功能部115」的順序實施檢索時的開放流功能部105的動作。
第11圖係在開放流表格管理部106的檢索功能部114中,TCAM(OF)檢索功能部116在最後未進行檢索的事例。
在第11圖中係依照「TCAM(OF)檢索功能部116」→「L2/L3其他表格(OF)檢索功能部115」的順序實施檢索,因此在TCAM(OF)檢索功能部116無法包含開放流處理解決部107。
[實施例2]
第12圖係用以說明L2/L3其他表格(OF)檢索功能部115與TCAM(OF)檢索功能部116的檢索同時被實施時的開放流功能部105的詳細內容的圖。
開放流功能部105、開放流表格管理部106、開放流處理解決部107、行為功能部111、表格群113、檢索功能部114、L2/L3/其他表格(OF)檢索功能部115、TCAM(OF)檢索功能部116係與第2圖所示機構/功能為相同者。
參照第12圖,說明L2/L3其他表格(OF)檢索功能部115與TCAM(OF)檢索功能部116的檢索同時被實施時的開放流功能部105的動作。
第12圖係在開放流表格管理部106的檢索功能部114中,TCAM(OF)檢索功能部116在最後未進行的事例。
L2/L3其他表格(OF)檢索功能部115與TCAM(OF)檢索功能部116的檢索同時被實施,因此在TCAM(OF)檢索功能部116無法包含開放流處理解決部107。
[實施例3]
第13圖係在TCAM(OF)檢索功能部116未包含開放流處理解決部107時的開放流處理解決部107的實施例。
開放流處理解決部107、行為功能部111係與第2圖所示機構/功能為相同者。
開放流處理解決部107係包括:檢索收訊部(Lookup Receiver)130、及處理解決部(Action Resolver)131。
檢索收訊部(Lookup Receiver)130係接收各表格的檢索結果。處理解決部(Action Resolver)131係根據各表格的檢索結果來決定開放流處理。
參照第13圖,說明在TCAM(OF)檢索功能部116未包含開放流處理解決部107時的開放流處理解決部107的動作。
若在TCAM(OF)檢索功能部116無法包含開放流處理解決部107時,在開關102裝載如第13圖中所示之開放流處理解決部107。
在開放流處理解決部107中,檢索收訊部(Lookup Receiver)130係接收各表格的檢索結果。處理解決部(Action Resolver)131係藉由各表格的檢索結果、及預先設定的表格優先順序(Priority)來決定開放流的行為,且將所決定的行為通知行為功能部111。
[其他實施例]
其中,在上述之各實施形態中,開關102係作為開放流開關來加以說明,但是開放流開關僅為例示。實際上,並非為限定於開放流開關者,對於具有與開放流開關為相同的機構/功能的開關,亦可適用本發明。
<本發明之特徵>
本發明係關於藉由複數表格的匯整所為之開放流表格的擴充方法。
本發明係關於以開關的單一表格(主要為TCAM)所實現的開放流表格,使用開關的複數表格來建構開放流表格,藉此實現開放流表格流道項目數的擴充者。
其中,在開放流中,係將被安裝在至此為止為相同的NW機器(路由器/開關等)的轉送功能、控制功能作分離,轉送功能留在NW機器,控制功能則委託在外的控制器。控制器係由遠距使用開放流通訊協定來操作NW機器的開放流表格,藉此控制NW裝置的舉動。開放流表格係由包含{Match條件、Action、統計資訊}的3種資訊的流道項目群所構成。在開放流中,可由該適合(Match)條件來定義作為控制對象的流道,將該流道作為單位來進行行為(Action)或統計資訊的取得。
開放流的{Match條件、Action、統計資訊}的概要如以下所示。
[Match條件]
「Ingress port(輸入埠)」/「Src MAC(送訊源MAC位址)」/「Dst MAC(目的地MAC位址)」/「Ether type(類型欄位)」/「VLAN ID(虛擬LAN識別資訊)」/「VLAN Priority(虛擬LAN優先順序)」/「Src IP(送訊源IP位址)」/「Dst IP(目的地IP位址)」/「IP protocol(IP通訊協定編號)」/「IP ToS(upper 6bit)」/「Src Port(送訊源埠編號)」/「Dst Port(目的地埠編號)」
[Action]
「Forward(由某物理埠輸出)」/「All(由輸入埠以外全部進行輸出)」/「Controller(朝向控制器輸出)」/「Local(輸出至本身裝置的本機堆疊)」/「表格(按照開放流表格的內容進行輸出)」/「In_port(由輸入埠輸出)」/「Normal(使用舊有表格的內容進行輸出)」/「Flood(由輸入埠、及Spanning Tree的方塊埠以外全部進行輸出)」/「Drop(廢除封包)」/「Modify-Field(改寫封包的標頭資訊)」
例如,「Modify-Field」的情形下係可改寫「VLAN ID」、「Vlan優先順序(Priority)」、「Src MAC」、「Dst MAC」、「SrcIP」、「Dst IP」、「IP ToS」、「Src Port」、「Dst Port」。
[統計資訊]
「表格單位」、「流道單位」、「物理埠單位」、「佇列(Queue)單位」中的各種統計資訊。
本發明並非增加開關的表格(主要為TCAM)的容量本身,而是藉由使用開關的複數表格來建構開放流表格,來實現作為裝置的開放流表格合計流道項目數的擴充者。亦即,在開關內部使用複數表格,可由控制器將其作為大容量開放流表格加以使用。
具體而言,吸收各表格的功能(Match條件/Action)差分來實現作為開放流表格的統合。其中,開關的複數表格係分別具有原本的用途(例如若為L2表格,為L2中繼,若為L3表格,為L3中繼),因此並非使用所有資源,而是以將其一部分切出來的形式來使用。
如以上所示,本發明之特徵為「吸收複數表格的Match條件/Action差分,作為開放流表格加以統合」、及「提供此時的具體行為決定方法」。
在本發明中,將開關的複數表格資源的一部分作為開放流表格加以使用。
此外,在本發明中,將開關的各表格按照可實現的功能(Match條件/Action),作為「附功能限制的開放流表格資源」加以處理。
此外,在本發明中,藉由開放流處理解決部,吸收各表格資源的功能差分(Match條件/Action),且作為開放流表格資源加以統合。
此外,在本發明中,在開放流處理解決部中,藉由包含TCAM的表格間的優先順序(Priority)來實現行為決定。
其中,在TCAM(OF)檢索在最後被進行的開關中,係以將開放流處理解決部包含在TCAM(OF)檢索功能部的形式予以實現。
此外,在本發明中,將由複數表格所構成的開放流表格由控制器靈活控制。
此外,在本發明中,若將複數表格作為1個開放流表格加以使用時,實現在優先順序(Priority)的範圍內的表格識別。
此外,在本發明中,若將複數表格作為個別的開放流表格加以使用時,實現以表格ID的表格識別。
以上詳述本發明之實施形態,惟實際上並非侷限於上述實施形態,即使有未脫離本發明之要旨的範圍變更,亦包含在本發明中。
此外,本申請案係根據日本申請案號2010-200690而主張優先權者,日本申請案號2010-200690的揭示內容係藉由引用而援用在本申請案中。
101...控制器
102...開關
103...通訊協定控制部
104...輸入埠
105...開放流功能部
106...開放流表格管理部
107...開放流處理解決部
108...舊有功能部
109...舊有表格管理部
110...舊有處理解決部
111...行為功能部
112...輸出埠
113...表格群
114...檢索功能部
115...L2/L3/其他表格(OF)檢索功能部
116...TCAM(OF)檢索功能部
117...表格間優先順序
118...TCAM(OF)內部的項目
119...TCAM(OF)檢索用項目群
120...L2表格(OF)檢索結果參照用項目
121...L3表格(OF)檢索結果參照用項目
122...其他表格(OF)檢索結果參照用項目
123...Miss-hit用項目
124...TCAM
125...L2表格
126...L3表格
127...其他表格
128...表格群
129...表格ID
130...檢索收訊部(Lookup Receiver)
131...處理解決部(Action Resolver)
第1圖係顯示本發明之開關系統之構成例的概念圖。
第2圖係顯示本發明之第1實施形態之開放流功能部之詳細內容的概念圖。
第3圖係顯示本發明之第1實施形態之開放流處理解決部之詳細內容的概念圖。
第4圖係顯示開放流表格控制之概要圖。
第5圖係顯示開放流表格控制之第1方式之例之詳細內容的圖。
第6圖係顯示開放流表格控制之第2方式之例之詳細內容的圖。
第7A圖係顯示封包流入時之開關系統之第1動作例的圖。
第7B圖係顯示封包流入時之開關系統之第1動作例的圖。
第8A圖係顯示封包流入時之開關系統之第2動作例的圖。
第8B圖係顯示封包流入時之開關系統之第2動作例的圖。
第9圖係用以說明開放流表格控制之第1方式之具體例圖。
第10圖係用以說明開放流表格控制之第2方式之具體例圖。
第11圖係顯示本發明之第2實施形態之開關系統之實施例1之詳細內容的概念圖。
第12圖係顯示本發明之第2實施形態之開關系統之實施例2之詳細內容的概念圖。
第13圖係顯示本發明之第2實施形態之開關系統之實施例3之詳細內容的概念圖。
101...控制器
102...開關
103...通訊協定控制部
104...輸入埠
105...開放流功能部
106...開放流表格管理部
107...開放流處理解決部
108...舊有功能部
109...舊有表格管理部
110...舊有處理解決部
111...行為功能部
112...輸出埠

Claims (17)

  1. 一種開關系統,包括:開放流功能部,將對預定封包的處理加以定義的複數表格,按照各表格所定義的條件及處理內容作邏輯性的統合而建構開放流表格,參照前述開放流表格,決定對收訊封包的處理內容;及行為功能部,按照前述所被決定的處理內容,執行對前述收訊封包的處理;其中,前述開放流功能部係包括:L2/L3/其他表格檢索功能部,關於前述收訊封包,在前述複數表格之中檢索L2表格、L3表格、及其他表格,將適當的項目作為檢索結果進行輸出;TCAM檢索功能部,關於前述收訊封包,在前述複數表格之中檢索TCAM(Ternary Content Addressable Memory),將適當的項目作為檢索結果進行輸出;及開放流處理解決部,定義TCAM、L2表格、L3表格、及其他表格之間的優先順序,由L2/L3/其他表格檢索功能部及TCAM檢索功能部接收檢索結果,按照前述優先順序,決定所採用的項目,決定對前述收訊封包的處理內容。
  2. 如申請專利範圍第1項之開關系統,其中,前述開放流功能部係包括:將各個前述開放流表格中的優先順序的一定範圍在各表格中作分配的手段;及當由控制器進行前述開放流表格的控制時,根據由前 述控制器所被指定的優先順序的範圍內的值,判別所使用的表格的手段。
  3. 如申請專利範圍第1項之開關系統,其中,前述開放流功能部係包括:在構成前述開放流表格的各表格設定表格ID的手段;及當由控制器進行前述開放流表格的控制時,根據由前述控制器所被指定的表格ID,判別所使用的表格的手段。
  4. 一種開關控制方法,實施在開放流開關中,其特徵為包含:將對預定封包的處理加以定義的複數表格,按照各表格所定義的條件及處理內容作邏輯性的統合而建構開放流表格,參照前述開放流表格,來決定對收訊封包的處理內容;及按照前述所被決定的處理內容,執行對前述收訊封包的處理;其中,另外包含有:針對前述收訊封包,在前述複數表格之中檢索L2表格、L3表格、及其他表格,將適當的項目作為檢索結果;針對前述收訊封包,在前述複數表格之中檢索TCAM(Ternary Content Addressable Memory),將適當的項目作為檢索結果;及將TCAM、L2表格、L3表格、及其他表格之間的優先順序加以定義,按照前述優先順序,決定由各表格的檢索結果之中所採用的項目,且決定對前述收訊封包的處理內 容。
  5. 如申請專利範圍第4項之開關控制方法,其中,另外包含有:將各個前述開放流表格中的優先順序的一定範圍在各表格作分配;及當由控制器進行前述開放流表格的控制時,根據由前述控制器所被指定的優先順序的範圍內的值,判別所使用的表格。
  6. 如申請專利範圍第4項之開關控制方法,其中,另外包含有:在構成前述開放流表格的各表格設定表格ID;及當由控制器進行前述開放流表格的控制時,根據由前述控制器所被指定的表格ID,判別所使用的表格。
  7. 一種記憶媒體,儲存有用以使作為開關所使用的計算機執行以下步驟的程式:將對預定封包的處理加以定義的複數表格,按照各表格所定義的條件及處理內容作邏輯性的統合而建構開放流表格,參照前述開放流表格,決定對收訊封包的處理內容的步驟;及按照前述所被決定的處理內容,執行對前述收訊封包的處理的步驟;其中,另外包含有:針對前述收訊封包,在前述複數表格之中檢索L2表格、L3表格、及其他表格,將適當的項目作為檢索結果; 針對前述收訊封包,在前述複數表格之中檢索TCAM(Ternary Content Addressable Memory),將適當的項目作為檢索結果;及將TCAM、L2表格、L3表格、及其他表格之間的優先順序加以定義,按照前述優先順序,決定由各表格的檢索結果之中所採用的項目,且決定對前述收訊封包的處理內容。
  8. 一種通訊裝置,用以轉送封包,包括:控制裝置,可以將封包轉送所用的第一轉送規則傳送至複數個前述通訊裝置;通訊協定控制手段,依據預定的通訊協定進行通訊;表格,分割成用以儲存前述第一轉送規則之第一區域、以及用以儲存第二轉送規則之第二區域,前述第二轉送規則由前述通訊裝置設定。
  9. 如申請專利範圍第8項之通訊裝置,其中,前述通訊協定控制手段從前述控制裝置接收前述第一轉送規則,前述第一轉送規則包括用以識別封包之識別規則以及對應於該當識別規則之封包處理規則。
  10. 一種通訊裝置,用以轉送封包,包括:控制裝置,可以將封包轉送所用的第一轉送規則傳送至複數個前述通訊裝置;第一手段,依據預定的通訊協定進行通訊;以及第二手段,依據前述封包的輸入埠,決定以參照儲存前述第一轉送規則的第一區域處來處理前述封包、或參照 儲存由前述通訊裝置設定的第二轉送規則的第二區域來處理前述封包。
  11. 如申請專利範圍第10項之通訊裝置,其中,前述第一手段,從前述控制裝置接收前述第一轉送規則;前述第一轉送規則包括:依據前述封包內的複數種類資訊而識別前述封包的識別規則,以及對應於該當識別規則之封包處理規則。
  12. 如申請專利範圍第10或11項之通訊裝置,其中,前述第二手段,依據前述封包的輸入埠是否對應於前述通訊協定以決定參照第一區域或第二區域來處理前述封包;前述第一區域儲存前述第一轉送規則,前述第二區域儲存基於前述通訊裝置的路徑控制而設定的第二轉送規則。
  13. 一種通訊裝置,用以轉送封包,包括:控制裝置,可以將封包轉送所用的第一轉送規則傳送至複數個前述通訊裝置;第一手段,依據預定的通訊協定進行通訊;以及第二手段,在儲存前述第一轉送規則的第一區域內,當用以轉送前述封包的規則是未設定的情形下,參照第二區域對前述封包進行轉送;前述第二區域儲存由前述通訊裝置設定的第二轉送規則。
  14. 如申請專利範圍第13項之通訊裝置,其中,前述第一手段,從前述控制裝置接收前述第一轉送規則;前述第一轉送規則包括:依據前述封包內的複數種類資訊而識 別前述封包的識別規則,以及對應於該當識別規則之封包處理規則。
  15. 一種通訊方法,包括:依據預定的通訊協定和控制裝置進行通訊,前述控制裝置可將轉送封包所用的第一轉送規則傳送至複數通訊裝置;在用以儲存轉送前述封包的規則之表格之第一區域,儲存前述第一轉送規則;以及在前述表格的第二區域儲存由前述通訊裝置所設定的第二轉送規則。
  16. 一種通訊方法,包括:依據預定的通訊協定和控制裝置進行通訊,前述控制裝置可將轉送封包所用的第一轉送規則傳送至複數通訊裝置;依據前述封包的輸入埠,決定參照儲存前述第一轉送規則的第一區域處來處理前述封包、或參照儲存由前述通訊裝置設定的第二轉送規則的第二區域來處理前述封包。
  17. 一種通訊方法,包括:依據預定的通訊協定和控制裝置進行通訊,前述控制裝置可將轉送封包所用的第一轉送規則傳送至複數通訊裝置;在儲存前述第一轉送規則的第一區域內,當用以轉送前述封包的規則是未設定的情形下,參照第二區域對前述封包進行轉送;前述第二區域儲存由前述通訊裝置設定的 第二轉送規則。
TW100126737A 2010-09-08 2011-07-28 開關系統、開關控制方法以及記憶媒體 TWI520527B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010200690 2010-09-08

Publications (2)

Publication Number Publication Date
TW201215037A TW201215037A (en) 2012-04-01
TWI520527B true TWI520527B (zh) 2016-02-01

Family

ID=45810468

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100126737A TWI520527B (zh) 2010-09-08 2011-07-28 開關系統、開關控制方法以及記憶媒體

Country Status (10)

Country Link
US (2) US9577931B2 (zh)
EP (1) EP2615781B1 (zh)
JP (3) JP5561366B2 (zh)
KR (2) KR101538560B1 (zh)
CN (2) CN104580026B (zh)
CA (1) CA2810486A1 (zh)
ES (1) ES2639638T3 (zh)
RU (1) RU2595918C2 (zh)
TW (1) TWI520527B (zh)
WO (1) WO2012032864A1 (zh)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9117337B2 (en) 2011-10-26 2015-08-25 Lamar Wilkinson Performing an automatic fold-out command and assigning player entries in an online card game
US9144739B2 (en) 2011-10-26 2015-09-29 Lamar Wilkinson Computer-aided online card games using multiple online player preferences
RU2595888C2 (ru) * 2012-03-19 2016-08-27 Нек Корпорейшн Узел связи, способ обработки пакетов и программа
US9225635B2 (en) 2012-04-10 2015-12-29 International Business Machines Corporation Switch routing table utilizing software defined network (SDN) controller programmed route segregation and prioritization
WO2013180207A1 (ja) * 2012-05-31 2013-12-05 日本電気株式会社 制御装置、通信システム、スイッチ制御方法及びプログラム
US10104004B2 (en) * 2012-11-08 2018-10-16 Texas Instruments Incorporated Openflow match and action pipeline structure
CN103023782B (zh) * 2012-11-22 2016-05-04 北京星网锐捷网络技术有限公司 一种访问三态内容寻址存储器的方法及装置
US9923831B2 (en) * 2012-11-29 2018-03-20 Futurewei Technologies, Inc. Packet prioritization in a software-defined network implementing OpenFlow
FI20126275L (fi) 2012-12-07 2014-06-08 Tellabs Oy Menetelmä ja laitteisto ohjelmallisesti määriteltävän verkon konfiguroimiseksi
CN104871501A (zh) * 2012-12-19 2015-08-26 日本电气株式会社 分组处理装置、流表项配置方法和程序
US9559897B2 (en) 2012-12-21 2017-01-31 Brocade Communications Systems, Inc. Device ID assignment in a system of devices
CN103888386B (zh) * 2012-12-24 2017-10-17 华为技术有限公司 可扩展虚拟局域网报文的传输方法及装置、***
CA2902618A1 (en) * 2013-02-27 2014-09-04 Nec Corporation Control apparatus, communication system, switch control method and program
TWI586124B (zh) 2013-04-26 2017-06-01 Nec Corp Communication node, communication system, packet processing method and program
US9853889B2 (en) 2013-05-20 2017-12-26 Brocade Communications Systems, Inc. Broadcast and multicast traffic reduction in stacking systems
US9313102B2 (en) 2013-05-20 2016-04-12 Brocade Communications Systems, Inc. Configuration validation in a mixed node topology
CN103347013B (zh) * 2013-06-21 2016-02-10 北京邮电大学 一种增强可编程能力的OpenFlow网络***和方法
US9712431B2 (en) 2013-07-17 2017-07-18 Kt Corporation Methods for managing transaction in software defined network
CN103428094B (zh) 2013-08-12 2016-08-17 杭州华三通信技术有限公司 开放流OpenFlow***中的报文转发方法及装置
US10284499B2 (en) 2013-08-22 2019-05-07 Arris Enterprises Llc Dedicated control path architecture for systems of devices
CN104580027B (zh) * 2013-10-25 2018-03-20 新华三技术有限公司 一种OpenFlow报文转发方法及设备
US9225641B2 (en) * 2013-10-30 2015-12-29 Globalfoundries Inc. Communication between hetrogenous networks
US10212083B2 (en) 2013-10-30 2019-02-19 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Openflow data channel and control channel separation
US9185049B2 (en) 2013-10-31 2015-11-10 Brocade Communications Systems, Inc. Techniques for simplifying stacking trunk creation and management
US9577924B2 (en) * 2013-11-14 2017-02-21 Electronics And Telecommunications Research Institute SDN-based network device with extended function and method of processing packet in the same device
KR102193371B1 (ko) * 2013-11-14 2020-12-21 한국전자통신연구원 확장된 기능을 구비한 sdn-기반 네트워크 장치 및 상기 장치에서의 패킷 처리 방법
CN105052087B (zh) * 2013-11-19 2018-10-09 华为技术有限公司 一种基于流表的表项寻址方法、交换机及控制器
KR101527786B1 (ko) * 2013-12-31 2015-06-09 쿨클라우드(주) 하이브리드 sdn 네트워크 관리 방법
US9577932B2 (en) * 2014-02-12 2017-02-21 Brocade Communications Systems, Inc. Techniques for managing ternary content-addressable memory (TCAM) resources in heterogeneous systems
CN104869062B (zh) * 2014-02-21 2018-11-09 华为技术有限公司 一种数据包转发方法及设备
EP2919423B1 (en) 2014-03-12 2018-11-14 Xieon Networks S.à.r.l. A network element of a software-defined network
US9692695B2 (en) 2014-03-27 2017-06-27 Brocade Communications Systems, Inc. Techniques for aggregating hardware routing resources in a multi-packet processor networking system
US9692652B2 (en) 2014-04-03 2017-06-27 Brocade Communications Systems, Inc. Framework for reliably communicating port information in a system of devices
US10257091B2 (en) 2014-04-08 2019-04-09 Hewlett Packard Enterprise Development Lp Pipeline table identification
US10142220B2 (en) 2014-04-29 2018-11-27 Hewlett Packard Enterprise Development Lp Efficient routing in software defined networks
US20170118066A1 (en) * 2014-04-30 2017-04-27 Hewlett-Packard Development Company, L.P. Data plane to forward traffic based on communications from a software defined (sdn) controller during a control plane failure
WO2015180040A1 (zh) 2014-05-27 2015-12-03 华为技术有限公司 流表管理方法及相关设备和***
JP6490205B2 (ja) 2014-06-30 2019-03-27 華為技術有限公司Huawei Technologies Co.,Ltd. フローエントリ構成の方法、装置及びシステム
JP6206594B2 (ja) * 2014-08-01 2017-10-04 日本電気株式会社 制御装置および制御方法
US10091059B2 (en) 2014-12-16 2018-10-02 Arris Enterprises Llc Handling connections between network devices that support multiple port communication modes
KR101669518B1 (ko) * 2014-12-30 2016-10-27 주식회사 시큐아이 Sdn 기반의 네트워크 모듈 관리 장치 및 방법
CN104683333A (zh) * 2015-02-10 2015-06-03 国都兴业信息审计***技术(北京)有限公司 基于sdn的实现异常流量拦截的方法
WO2017018989A1 (en) * 2015-07-24 2017-02-02 Hewlett Packard Enterprise Development Lp Simultaneous processing of flow tables
CN106302265B (zh) * 2016-07-21 2019-08-06 新华三技术有限公司 报文转发方法及装置
US10439932B2 (en) * 2016-10-05 2019-10-08 Avago Technologies International Sales Pte. Limited System and method for flow rule management in software-defined networks
KR101870146B1 (ko) * 2016-10-12 2018-06-25 아토리서치(주) 리프-스파인 구조의 소프트웨어 정의 네트워킹에서 목적지 기반 패킷 전송 제어 방법 및 장치
CN106789706B (zh) * 2016-11-11 2020-08-07 天津光电通信技术有限公司 一种基于tcam的网络分流***
TWI626837B (zh) 2016-12-01 2018-06-11 財團法人工業技術研究院 封包傳遞方法、封包傳遞裝置及非暫態電腦可讀取媒體
US10404594B2 (en) * 2016-12-13 2019-09-03 Oracle International Corporation System and method for providing partitions of classification resources in a network device
RU178460U1 (ru) * 2017-03-15 2018-04-04 Общество с ограниченной ответственностью "БУЛАТ" Управляемый Ethernet коммутатор
KR101877004B1 (ko) * 2017-09-29 2018-07-10 주식회사 쏠리드 오픈플로우 기반의 분산 안테나 시스템
CN109995659B (zh) * 2017-12-29 2022-03-01 阿里巴巴集团控股有限公司 一种网络通信方法及装置
RU183526U1 (ru) * 2018-03-07 2018-09-25 Общество с ограниченной ответственностью "БУЛАТ" Ethernet коммутатор
RU186859U1 (ru) * 2018-11-21 2019-02-06 Общество с ограниченной ответственностью "БУЛАТ" Мультисервисный маршрутизатор
KR102211282B1 (ko) * 2019-11-20 2021-02-03 (주)파이브텍 데이터 라우팅 방법 및 이를 지원하는 스위치

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100333250B1 (ko) * 1998-10-05 2002-05-17 가나이 쓰토무 패킷 중계 장치
JP2002185513A (ja) * 2000-12-18 2002-06-28 Hitachi Ltd パケット通信ネットワークおよびパケット転送制御方法
JP3936883B2 (ja) * 2002-04-08 2007-06-27 株式会社日立製作所 フロー検出装置およびフロー検出機能を備えたパケット転送装置
JP2003304293A (ja) * 2002-04-10 2003-10-24 Hitachi Ltd パケット中継装置
NO318843B1 (no) * 2002-11-13 2005-05-09 Telenor Asa AHN-nettverk
FR2849975B1 (fr) 2003-01-14 2005-09-23 Cit Alcatel Procede de configuration d'un chemin de routage dans un routeur ip et reseau
US7308505B2 (en) 2003-12-17 2007-12-11 International Business Machines Corporation Method, system and program product for facilitating forwarding of data packets through a node of a data transfer network using multiple types of forwarding tables
JP4487237B2 (ja) * 2003-12-25 2010-06-23 エルピーダメモリ株式会社 半導体装置
JP2005252954A (ja) * 2004-03-08 2005-09-15 Fujitsu Ltd テーブル検索装置
JP2005277731A (ja) 2004-03-24 2005-10-06 Seiko Epson Corp ネットワークシステム、ネットワーク機器、及び、これらの制御方法
JP4336625B2 (ja) * 2004-06-17 2009-09-30 株式会社日立製作所 パケット転送装置
JP2006101343A (ja) * 2004-09-30 2006-04-13 Oki Techno Creation:Kk パケット処理装置、パケット処理方法およびパケット処理プログラム
JP2006133520A (ja) * 2004-11-05 2006-05-25 Fuji Xerox Co Ltd 画像形成装置、画像形成装置における表示画面カスタマイズ方法、表示画面カスタマイズプログラム
JP2006174350A (ja) * 2004-12-20 2006-06-29 Fujitsu Ltd 通信装置
US7281085B1 (en) * 2005-01-31 2007-10-09 Netlogic Microsystems, Inc. Method and device for virtualization of multiple data sets on same associative memory
TWI325705B (en) * 2006-06-01 2010-06-01 Via Tech Inc Method and apparatus for packet switching
CN101247337B (zh) 2008-02-18 2012-11-21 华为技术有限公司 一种报文转发的方法和设备
JP5050978B2 (ja) * 2008-04-21 2012-10-17 富士通株式会社 伝送情報転送装置及び方法
CN101753544A (zh) * 2008-12-05 2010-06-23 华为技术有限公司 包过滤规则处理方法及***、媒体网关和媒体网关控制器
JP5561173B2 (ja) 2009-02-03 2014-07-30 日本電気株式会社 アプリケーションスイッチシステム、及びアプリケーションスイッチ方法
JP2010200690A (ja) 2009-03-04 2010-09-16 Kyushu Univ 新規スフィンゴ脂質及びその製造方法
US8289977B2 (en) * 2009-06-10 2012-10-16 International Business Machines Corporation Two-layer switch apparatus avoiding first layer inter-switch traffic in steering packets through the apparatus
US8677030B2 (en) * 2009-12-09 2014-03-18 Oracle America, Inc. Apparatus and method for managing packet classification tables
US8817629B2 (en) * 2010-03-16 2014-08-26 Deutsche Telekom Ag Method for routing-assisted traffic monitoring

Also Published As

Publication number Publication date
KR20150039877A (ko) 2015-04-13
WO2012032864A1 (ja) 2012-03-15
JP5773020B2 (ja) 2015-09-02
CN103098427A (zh) 2013-05-08
JP5561366B2 (ja) 2014-07-30
KR101627475B1 (ko) 2016-06-03
TW201215037A (en) 2012-04-01
JP2014161083A (ja) 2014-09-04
JPWO2012032864A1 (ja) 2014-01-20
US9577931B2 (en) 2017-02-21
US20130170495A1 (en) 2013-07-04
JP5962808B2 (ja) 2016-08-03
JP2015156697A (ja) 2015-08-27
CN104580026B (zh) 2019-02-15
EP2615781A4 (en) 2014-03-12
CA2810486A1 (en) 2012-03-15
KR101538560B1 (ko) 2015-07-21
EP2615781A1 (en) 2013-07-17
EP2615781B1 (en) 2017-06-14
US20150312147A1 (en) 2015-10-29
ES2639638T3 (es) 2017-10-27
CN104580026A (zh) 2015-04-29
RU2595918C2 (ru) 2016-08-27
CN103098427B (zh) 2015-10-21
RU2013110063A (ru) 2014-10-20
KR20130050356A (ko) 2013-05-15

Similar Documents

Publication Publication Date Title
TWI520527B (zh) 開關系統、開關控制方法以及記憶媒體
US11411770B2 (en) Virtual port channel bounce in overlay network
US8358661B2 (en) Remote adapter configuration
EP2926513B1 (en) Packet prioritization in a software-defined network implementing openflow
US9608908B2 (en) Network system and VLAN tag data acquiring method
JP5557066B2 (ja) スイッチシステム、モニタリング集中管理方法
US9215175B2 (en) Computer system including controller and plurality of switches and communication method in computer system
US9112794B2 (en) Dynamic multipath forwarding in software defined data center networks
US8489763B2 (en) Distributed virtual bridge management
US20140153443A1 (en) Per-Address Spanning Tree Networks
US20150188731A1 (en) Programmable Distributed Networking
JP6574054B2 (ja) パケット転送
WO2019161758A1 (en) Service function chaining congestion tracking
US20120170581A1 (en) Policy homomorphic network extension
US10972402B1 (en) Dynamic management of inline entries in hardware across protocols in a scaled environment