60]超時(shí)520表示在從流表格去除流條目之前、流條目可保留在流表格中的保留時(shí)間。超時(shí)520由SDN控制器確定,其不僅可確定超時(shí)520的長度而且可確定其類型。例如,可確定硬超時(shí)或閑超時(shí),其中硬超時(shí)表示流條目可保留在流表格中的絕對(duì)時(shí)間,而閑超時(shí)表示在不再使用流條目的情況下、流條目可保留在流表格中的時(shí)間。
[0061]圖6是圖示了根據(jù)示范實(shí)施例的使用流條目的空閑超時(shí)的流表格管理機(jī)制的圖表。
[0062]參考圖6,一旦首先接收到分組,SDN開關(guān)就參考流表格以檢索與接收的分組匹配的流條目。如果不存在與接收的分組匹配的流條目,則SDN開關(guān)20向SDN控制器22傳送接收的分組。然后,SDN控制器22生成新流條目以處理接收的分組,并命令SDN開關(guān)20添加生成的流條目。在流表格的預(yù)定插入點(diǎn)插入新流條目。
[0063]隨后,在檢查流表格的占用級(jí)別的同時(shí),如果流表格的占用級(jí)別改變,則SDN開關(guān)向SDN控制器通知占用級(jí)別的改變。例如,如圖6中圖示的,根據(jù)流表格的占用級(jí)別,流表格具有具有0%下閾限值和30%上閾限值的第一區(qū)域、具有30%下閾限值和50%上閾限值的第二區(qū)域、以及具有65%下閾限值和100%上閾限值的第三區(qū)域。在該情況下,SDN控制器對(duì)于0%到30%占用級(jí)別的第一區(qū)域中的新生成的流條目將閑超時(shí)設(shè)置為5秒,如圖6中圖示的那樣。然后,如果占用級(jí)別達(dá)到30%級(jí)別,并且在第二區(qū)域中從30%限值到65%,則SDN控制器對(duì)于新生成的流條目從預(yù)定閑超時(shí)扣除1.5秒的空閑時(shí)間。然后,如果占用級(jí)別達(dá)到65%級(jí)別,并且在第三區(qū)域中從65%到100%,則SDN控制器與增加的占用級(jí)別成比例地降低空閑時(shí)間,或者驅(qū)趕新生成的流條目。即,超時(shí)可逐漸降低到0,或者可立刻去除。上面參考圖6描述的示例僅是幫助本公開的理解的示意性示例,并且可根據(jù)對(duì)于每一區(qū)域設(shè)置的閾值以及區(qū)域的改變,來進(jìn)行流表格管理機(jī)制的各種修改。
[0064]圖7是圖示了根據(jù)示范實(shí)施例的向其應(yīng)用使用頻率的流條目結(jié)構(gòu)的示例的流程圖。
[0065]參考圖7,流條目包括規(guī)則700、動(dòng)作710和頻率720的字段。
[0066]如開放流中定義的,規(guī)則700包括流標(biāo)識(shí)符,諸如分組的每一協(xié)議層的報(bào)頭字段中包括的目的地址(DA)、源地址(SA)、目的端口(Dst Port)、源端口(Src Port)等。動(dòng)作710指示如何處理分組,例如,命令將分組轉(zhuǎn)發(fā)到端口 X,如圖7中圖示的。
[0067]頻率720表示流條目的使用頻率。頻率720可在每次匹配流條目時(shí)增加。如果閑超時(shí)過去,則頻率720可被降低或初始化?;陬l率720,流條目可被劃分為活動(dòng)流條目和可替換流條目。例如,如果超出預(yù)定活動(dòng)值,則流條目可被分類為活動(dòng)流條目,并且如果沒有超出預(yù)定活動(dòng)值,則流條目可被分類為可替換流條目。基于劃分的流條目的類型,SDN控制器通過例如在驅(qū)趕或重寫可替換流條目的同時(shí)保護(hù)活動(dòng)流條目,來不同地管理流條目。
[0068]圖8是圖示了根據(jù)示范實(shí)施例的使用流條目的使用頻率的流表格管理機(jī)制的圖表。
[0069]參考圖8,一旦首先接收到分組,SDN開關(guān)就參考流表格以檢索與接收的分組匹配的流條目。如果不存在與接收的分組匹配的流條目,則SDN開關(guān)20向SDN控制器22傳送接收的分組。然后,SDN控制器22生成新流條目以處理接收的分組,并命令SDN開關(guān)20添加生成的流條目。在流表格的預(yù)定插入點(diǎn)處插入新流條目。
[0070]在示范實(shí)施例中,不在可替換流條目810的底部的尾部插入新流條目,而是在可替換流條目810和活動(dòng)流條目800之間的插入點(diǎn)820處插入新流條目,如圖8中圖示的那樣。如果在可替換流條目810的尾部插入新流條目,則甚至活動(dòng)流條目800可被驅(qū)趕,因?yàn)樾铝鳁l目不斷進(jìn)入。所以,為了防止這樣的事情,在除了可替換流條目810的尾部之外的插入點(diǎn)820處插入新流條目。
[0071]在示范實(shí)施例中,每當(dāng)使用特定流條目時(shí),頻率增加。此外,按照特定間隔,例如,每隔5秒,頻率可被初始化或降低。隨著特定流條目的頻率的增加或減小,流條目可被分類為活動(dòng)流條目800和可替換流條目810。
[0072]—旦流表格的占用級(jí)別增加而達(dá)到預(yù)定閾值,SDN控制器就保護(hù)活動(dòng)流條目,并驅(qū)趕可替換流條目或利用新流條目重寫可替換流條目。
[0073]圖9是圖示了根據(jù)示范實(shí)施例的向其應(yīng)用使用年限的流條目結(jié)構(gòu)的圖。
[0074]參考圖9,流條目包括規(guī)則900、動(dòng)作910和超時(shí)920的字段。
[0075]如開放流中定義的,規(guī)則900包括流標(biāo)識(shí)符,諸如分組的每一協(xié)議層的報(bào)頭字段中包括的目的地址(DA)、源地址(SA)、目的端口(Dst Port)、源端口(Src Port)等。動(dòng)作910指示如何處理分組,例如,命令將分組轉(zhuǎn)發(fā)到端口 X,如圖9中圖示的。
[0076]超時(shí)920表示流條目可在流表格中保留的保留時(shí)間。例如,如果超時(shí)920是50秒而保留時(shí)間是5秒,則這指示至少每隔5秒接收分組,并且在流表格中保留延伸時(shí)間段的流條目在某些情況下可以是確定其是否是有效流的重要因素。
[0077]其后,將描述根據(jù)流條目的超時(shí)920的流表格管理機(jī)制。
[0078]首先,一旦首先接收到分組,就通過參考流表格來檢索與接收的分組匹配的流條目。如果不存在與接收的分組匹配的流條目,則SDN開關(guān)20向SDN控制器22傳送接收的分組。然后,SDN控制器22生成新流條目以處理接收的分組,并命令SDN開關(guān)20添加生成的流條目。
[0079]隨后,在檢查流表格的占用級(jí)別的同時(shí),如果流表格的占用級(jí)別改變,則SDN開關(guān)向SDN控制器通知占用級(jí)別的改變。例如,SDN開關(guān)在30%、65%和100%的占用級(jí)別處通知占用級(jí)別的改變。當(dāng)在30%的占用級(jí)別處通知占用級(jí)別的改變時(shí),SDN控制器不應(yīng)用特定機(jī)制。此外,當(dāng)在65%的占用級(jí)別處通知占用級(jí)別的改變時(shí),SDN控制器不應(yīng)用特定機(jī)制。然而,當(dāng)在100%的占用級(jí)別處通知占用級(jí)別的改變時(shí),SDN開關(guān)根據(jù)SDN控制器的指令來檢查每一流條目的超時(shí)920。SDN開關(guān)驅(qū)趕其超時(shí)低于預(yù)定時(shí)間(例如,10秒)的每一流條目,并保護(hù)其超時(shí)高于預(yù)定時(shí)間的流條目。按照該方式,在保護(hù)在異常情況(諸如洪水攻擊等)下保留延伸時(shí)間段的有效流條目的同時(shí),可確保流表格的存儲(chǔ)容量。以上示例僅是示意性以幫助本公開的理解,并且可進(jìn)行流表格管理機(jī)制的各種修改。
[0080]可通過上面參考圖5到9描述的流表格管理機(jī)制的組合來管理流表格。例如,在其中SDN傳送消息通知流條目的占用級(jí)別超出30%的情況下,SDN控制器向SDN開關(guān)應(yīng)用將流條目的保留時(shí)間降低2秒的機(jī)制。然后,在其中SDN傳送消息通知占用級(jí)別超出65%的情況下,SDN控制器向SDN開關(guān)應(yīng)用降低保留時(shí)間并驅(qū)趕其頻率低于預(yù)定級(jí)別的可替換流條目的機(jī)制。此外,在其中SDN傳送消息通知流條目的占用級(jí)別超出100%的情況下,SDN控制器向SDN開關(guān)應(yīng)用降低保留時(shí)間并驅(qū)趕可替換流條目的機(jī)制、以及驅(qū)趕其超時(shí)低于10秒的流條目的機(jī)制。以上示例僅是示意性以幫助本公開的理解,并且可進(jìn)行流表格管理機(jī)制的各種修改。
[0081]圖10是圖示了根據(jù)示范實(shí)施例的網(wǎng)絡(luò)裝置的圖。
[0082]網(wǎng)絡(luò)裝置10是SDN開關(guān),并且控制SDN開關(guān)的控制器可以是SDN控制器。參考圖10,網(wǎng)絡(luò)裝置10包括通信器100、表格管理器110和分組處理器120。
[0083]通信器100向控制器通知流表格的狀態(tài)改變,并從控制器接收其中反映流表格的改變狀態(tài)的流表格管理指令。表格管理器110根據(jù)通過通信器100接收的流表格管理指令來管理流表格。
[0084]分組處理器120通過使用流表格來處理接收的分組。例如,一旦接收到分組,分組處理器120就通過參考流表格來檢索與接收的分組匹配的流條目。如果不存在與接收的分組匹配的流條目,分組處理器120就通過通信器100向SDN控制器22傳送接收的分組。相反,如果存在與接收的分組匹配的流條目,分組處理器20就通過參考流條目來處理接收的分組。