TWI657683B - 移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統 - Google Patents
移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統 Download PDFInfo
- Publication number
- TWI657683B TWI657683B TW106140292A TW106140292A TWI657683B TW I657683 B TWI657683 B TW I657683B TW 106140292 A TW106140292 A TW 106140292A TW 106140292 A TW106140292 A TW 106140292A TW I657683 B TWI657683 B TW I657683B
- Authority
- TW
- Taiwan
- Prior art keywords
- switch
- fin
- packet
- message
- ack
- Prior art date
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本發明揭露一種移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統,其包括:控制器係連接交換器且控制該交換器;該交換器接收封包,以由該交換器之FIN-ACK偵測模組解析該封包之類別;以及若該FIN-ACK偵測模組判斷該封包是FIN-ACK封包,則由該交換器之FIN_Detect表傳送訊息至該控制器,其中,該控制器接受該FIN_Detect表之該訊息後下達指令,從該交換器的流表中移除該訊息所屬的訊息流的流程條目,而若該FIN-ACK偵測模組判斷該封包不是FIN-ACK封包,則由該交換器之轉傳表執行後續處理。
Description
本發明係為一種交換器以及其方法,為一種根據ACK回應封包,直接偵測封包流是否已結束,以讓所屬流程條目在流表中的等待時間為零的交換器及其方法。
既有技術通常設定流(flow)的等待時間,以節省流表(flow table)的空間。如果是針對不同封包間隔(packet interval)的流,則給予流程條目設定不同長度的等待時間。然而,此方法仍然無法根本性地解決如何給予交換器之流程條目適合的等待時間。
如2014年6月25日公開之中國專利第CN103888313 A「一種預測流表項的最優超時時間的方法」。該專利根據OpenFlow交換器的使用率以及使用該交換器的數據流的吞吐量,以不斷地計算出該OpenFlow交換器的流程條目的優化等待時間,而增加交換器的可用性。其與本發明可直接偵測該流是否已結束,以讓該流的流程條目在交換器流
表中的等待時間為零的方法並不相同。
如2015年10月1日公開之美國專利第US 20150281127 A1號「DATA PACKET PROCESSING IN SDN」,該專利方法包括:接收由網路中SDN交換器轉發的數據封包;獲得對應於該數據封包所屬數據流的規則;根據接收到的數據封包,決定該數據封包所屬數據流的數據流特性;根據該數據流特性和超時信息之間的預定對應關係來決定規則的超時信息,該超時信息表示該規則被保持在該SDN交換器流表中的時間;以及發送該規則和規則之超時信息到SDN交換器,由SDN交換器根據該規則處理數據封包。其不同於本發明利用TCP連線在結束時會傳送FIN-ACK的封包的特性,當偵測到FIN-ACK的封包時,即知道該流即將結束,因此可以從交換器的流表中將該流的流程條目移除掉,以這種方式控制流程條目在該流結束之後,在流表中的等待時間為零,即可以有效的節省交換器流表的空間。
又如2013年11月21日公開之中華民國發明專利第I416908號「整體交換器資源管理器及其管理方法」,其包括:多個資源;記憶體,用於儲存資料流表;資料流表管理器,用於根據該資料流表中的條目來決定至少一個資料流的性能需求是否可被接受,並當至少一個資料流的性能需求是可接受的時,將至少一個資料流的性能需求作為條目儲存在資料流表中;以及資源編程器,用於根據資料流表來對資源進行編程。其不同於本發明直接偵測該流是否已結束,以讓該流的流程條目在流表中的等待時間為零的
交換器。
本案發明人鑑於上述習用方式所衍生的缺點,乃亟思加以改良創新,並經多年苦心孤詣潛心研究後,終於成功研發完成一種可以讓流程條目零超時的交換器。
達成上述發明之目的,本發明即在提出一種根據ACK回應封包,即可讓流程條目零等待時間的方法及交換器系統。在傳輸控制協定(Transmission Control Protocol,TCP)的連線中,接收端會在收到封包後回傳ACK的訊息。本發明利用此項TCP連線的特性,可以在偵測到FIN-ACK的封包,表示連線即將結束,亦表示該流的封包即將傳送完成,因此可以將該流的流程條目從交換器流表中移除掉,而不必讓該條流程條目一直存在於交換器流表中直到期滿。本發明所提出的移除流程條目的方法,可以讓交換器流程條目在流表中零等待時間,以達到可以有效的節省交換器流表儲存流程條目的儲存空間。
本發明提供一種移除交換器之已完成流程條目的方法,其包括:令控制器連接交換器且控制該交換器;令該交換器接收封包,以由該交換器之FIN-ACK偵測模組解析該封包之類別;以及若該FIN-ACK偵測模組判斷該封包是FIN-ACK封包,則由該交換器之FIN_Detect表傳送訊息至該控制器,其中,該控制器接受該FIN_Detect表之該訊息後下達指令,從該交換器的流表中移除該訊息所屬的訊息流的流程條目,而若該FIN-ACK偵測模組判斷該封包不是
FIN-ACK封包,則由該交換器之轉傳表執行後續處理。
在前述之移除交換器之已完成流程條目的方法中,該轉傳表執行後續處理為執行繞徑動作。
在前述之移除交換器之已完成流程條目的方法中,該FIN-ACK偵測模組解析該封包之類別是解析該封包之標頭以判斷該封包之該類別。
在前述之移除交換器之已完成流程條目的方法中,該FIN_Detect表傳送該訊息至該控制器為傳送Packet-In訊息至該控制器。
在前述之移除交換器之已完成流程條目的方法中,該交換器為P4(Programming Protocol-Independent Packet Processors)交換器。
在前述之移除交換器之已完成流程條目的方法中,該控制器為開源SDN控制器。
本發明另提供一種用於移除已完成流程條目的交換器系統,其包括:接收封包的交換器,該交換器包括FIN-ACK偵測模組、FIN_Detect表及轉傳表,其中,該FIN-ACK偵測模組解析該封包之類別;以及連接交換器且控制該交換器的控制器;其中,若該FIN-ACK偵測模組判斷該封包是FIN-ACK封包,則由該交換器之該FIN_Detect表傳送訊息至該控制器,其中,該控制器接受該FIN_Detect表之該訊息後下達指令,從該交換器的流表中移除該訊息所屬的訊息流的流程條目,而若該FIN-ACK偵測模組判斷該封包不是FIN-ACK封包,則由該交換器之該轉傳表執行
後續處理。
在前述之用於移除已完成流程條目的交換器系統中,該後續處理為繞徑動作。
在前述之用於移除已完成流程條目的交換器系統中,該FIN-ACK解析該封包之標頭進行判斷該封包之該類別。
在前述之用於移除已完成流程條目的交換器系統中,該FIN_Detect表是藉由傳送Packet-In訊息至該控制器以移除該訊息所屬的該訊息流的該流程條目。
在前述之用於移除已完成流程條目的交換器系統中,該交換器為P4(Programming Protocol-Independent Packet Processors)交換器。
在前述之用於移除已完成流程條目的交換器系統中,該控制器為開源SDN控制器。
藉由前述之發明,基於TCP連線會回傳ACK訊息的特點,本發明之移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統,利用偵測TCP連線的FIN-ACK封包,來判斷該流是否結束,若偵測到FIN-ACK的封包,則可將交換器流表中該流的流程條目移除掉,其可以讓流程條目零等待時間,與現有技術相比,具備下列優勢:
1.與傳統的設定hard timeout以及idle timeout,等待timeout時間到時,將流程條目移除掉的方法相比,本發明的方法可以讓已經結束的流的流程條目不會繼續在流
表中存在一段時間,而佔據流表的空間,造成空間的浪費,可以減少流程條目在交換器流表中的等待時間。
2.本發明在訊息流完成後,即從交換器流表中移除掉該流的流程條目,可以避免流表空間不足的情形。
3.與現有根據不同的封包間隔(packet interval)類型,給予不同的等待時間方法相比,本發明對於所有類型的封包間隔都可以零等待時間。
110‧‧‧SDN控制器
120‧‧‧P4交換器
121‧‧‧FIN-ACK偵測模組
122‧‧‧轉傳表
123‧‧‧FIN_Detect表
124‧‧‧正常繞徑動作
125‧‧‧FIN_route動作
130‧‧‧伺服器
S1201~S1205‧‧‧步驟
第1圖為本發明之系統架構示意圖。
第2圖為本發明之交換器之模組示意圖。
第3圖為本發明之移除交換器之已完成流程條目的方法之步驟流程圖。
為利 貴審查委員了解本發明之技術特徵、內容與優點及其所能達到之功效,茲將本發明配合附圖,並以實施例之表達形式詳細說明如下,而其中所使用之圖式,其主旨僅為示意及輔助說明書之用,未必為本發明實施後之真實比例與精準配置,故不應就所附之圖式的比例與配置關係解讀、侷限本發明於實際實施上的權利範圍,合先敘明。
第1圖為本發明之移除交換器之用於移除已完成流程條目之交換器系統之系統架構示意圖,參照第1圖所示,其包含開源SDN控制器110、P4(Programming Protocol-Independent Packet Processors)交換器120、以及伺服器130。P4交換器120接收訊息,並且解析該訊息,以
選擇適當的處理方式。本發明利用TCP連線在結束時會傳送FIN-ACK的封包的特性,當P4交換器120偵測到訊息封包為FIN-ACK封包時,會產生”Packet-In”訊息送往SDN控制器110。SDN控制器110收到訊息後,SDN控制器110會下達指令在P4交換器120移除掉該訊息所屬的訊息流的流程條目。讓流程條目在訊息流結束之後即可從交換器的流表中被移除掉,以避免流表中儲存許多已經完成的流的流程條目,而造成儲存空間的浪費。
如第2圖所示,P4交換器120包括FIN-ACK偵測模組121、FIN_Detect表123以及轉傳表122,並由FIN_route動作125以及正常繞徑動作124來處理訊息封包,其中:該FIN-ACK偵測模組121負責偵測通過P4交換器120的封包類別;該FIN_Detect表123負責處理偵測到FIN-ACK訊息後的工作;該轉傳表122負責處理其他一般的訊息;該FIN_route動作125進行移除流程條目的行為;該正常繞徑動作124進行普通封包的繞徑行為;藉由利用FIN-ACK訊息來做為讓流程條目在流表中零等待時間的功能。該FIN-ACK偵測模組121之步驟包含:訊息通過P4交換器120時,會解析該訊息,並且檢查該訊息是否為FIN-ACK的封包;該FIN_Detect表123在偵測到訊息為FIN-ACK的訊息後,會發出訊息到SDN控制器110;該轉傳表122在偵測訊息為一般訊息封包後,則進行一般的訊息封包轉傳行為;該FIN_route動作125發出Packet-In訊息到SDN控制器110去,請求SDN控制器110將該流所屬的流程條目
移除掉;該正常繞徑動作124即按照一般正常的繞徑方式去做封包繞徑行為,藉由利用P4交換器以TCP連線回傳ACK訊息的特性為基礎,偵測FIN-ACK的訊息封包,以判斷該流是否已經結束,並從交換器的流表中將該流的流程條目移除掉,避免訊息流已結束但流程條目仍存在於流表中,以達到節省交換器流表的儲存空間的目的。
第2圖為本發明流程條目零等待時間交換器之模組示意圖,其中,P4交換器120以及開源SDN控制器110利用交換器中的FIN-ACK偵測模組121以及轉傳表122和FIN_Detect表123來做相對應的處理。FIN-ACK偵測模組121檢查訊息是否為FIN-ACK訊息,以判斷該流是否要結束。如果是FIN-ACK訊息的話,則交給FIN_Detect表123,然後由FIN_route動作125來處理;否則則交給轉傳表122,進行正常繞徑動作124來處理。
第3圖為本發明之移除交換器之已完成流程條目的方法之步驟流程圖。當P4交換器120收到訊息封包後,解析該封包的類別(S1201),並且由FIN-ACK偵測模組121判斷是否為FIN-ACK訊息(S1202);若為是,則由FIN_Detect表123進行進行FIN_route動作125產生Packet-In的訊息至SDN控制器110(S1203),請求控制器傳達指令至P4交換器120以移除P4交換器120上該訊息所屬的流的流程條目(S1204);若為非,則由轉傳表122用一般的正常繞徑動作124進行處理(S1205)。
在一實施例中,P4交換器編譯原始碼後產生API以及
對交換器的資料層進行設定。編譯完成後,P4交換器即可進行封包之交換。當封包進入P4交換器後,解析器所執行之FIN-ACK偵測模組121,會先去解析封包之類別,然後根據解析出來的標頭,判斷是否為FIN-ACK封包。如果不是的話,會交由轉傳表122處理,進行正常繞徑動作124;如果是的話,則是交由FIN_Detect表123進行FIN_route動作125。
上列詳細說明係針對本發明之一可行實施例之具體說明,惟該實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為之等效實施或變更,均應包含於本案之專利範圍中。
綜上所述,本案不僅於技術思想上確屬創新,並具備習用之傳統方法所不及之上述多項功效,已充分符合新穎性及進步性之法定發明專利要件,爰依法提出申請,懇請 貴局核准本件發明專利申請案,以勵發明,至感德便。
Claims (10)
- 一種移除交換器之已完成流程條目的方法,其包括:令控制器連接交換器且控制該交換器;令該交換器接收封包,以由該交換器之FIN-ACK偵測模組解析該封包之類別;以及若該FIN-ACK偵測模組判斷該封包是FIN-ACK封包,則由該交換器之FIN_Detect表傳送訊息至該控制器,其中,該控制器接受該FIN_Detect表之該訊息後下達指令,從該交換器的流表中移除該訊息所屬的訊息流的流程條目,而若該FIN-ACK偵測模組判斷該封包不是FIN-ACK封包,則由該交換器之轉傳表執行後續處理。
- 如申請專利範圍第1項所述之移除交換器之已完成流程條目的方法,其中,該轉傳表執行後續處理為執行繞徑動作。
- 如申請專利範圍第1項所述之移除交換器之已完成流程條目的方法,其中,該FIN-ACK偵測模組解析該封包之類別是解析該封包之標頭以判斷該封包之該類別。
- 如申請專利範圍第1項所述之移除交換器之已完成流程條目的方法,其中,該FIN_Detect表傳送該訊息至該控制器為傳送Packet-In訊息至該控制器。
- 一種用於移除已完成流程條目的交換器系統,其包括:接收封包的交換器,該交換器包括FIN-ACK偵測模組、FIN_Detect表及轉傳表,其中,該FIN-ACK偵 測模組解析該封包之類別;以及連接交換器且控制該交換器的控制器;其中,若該FIN-ACK偵測模組判斷該封包是FIN-ACK封包,則由該交換器之該FIN_Detect表傳送訊息至該控制器,其中,該控制器接受該FIN_Detect表之該訊息後下達指令,從該交換器的流表中移除該訊息所屬的訊息流的流程條目,而若該FIN-ACK偵測模組判斷該封包不是FIN-ACK封包,則由該交換器之該轉傳表執行後續處理。
- 如申請專利範圍第5項所述之用於移除已完成流程條目的交換器系統,其中,該後續處理為繞徑動作。
- 如申請專利範圍第5項所述之用於移除已完成流程條目的交換器系統,其中,該FIN-ACK解析該封包之標頭進行判斷該封包之該類別。
- 如申請專利範圍第5項所述之用於移除已完成流程條目的交換器系統,其中,該FIN_Detect表是藉由傳送Packet-In訊息至該控制器以移除該訊息所屬的該訊息流的該流程條目。
- 如申請專利範圍第5項所述之用於移除已完成流程條目的交換器系統,其中,該交換器為P4(Programming Protocol-Independent Packet Processors)交換器。
- 如申請專利範圍第5項所述之用於移除已完成流程條目的交換器系統,其中,該控制器為開源SDN控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106140292A TWI657683B (zh) | 2017-11-21 | 2017-11-21 | 移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106140292A TWI657683B (zh) | 2017-11-21 | 2017-11-21 | 移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI657683B true TWI657683B (zh) | 2019-04-21 |
TW201926960A TW201926960A (zh) | 2019-07-01 |
Family
ID=66995994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106140292A TWI657683B (zh) | 2017-11-21 | 2017-11-21 | 移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI657683B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104660506A (zh) * | 2013-11-22 | 2015-05-27 | 华为技术有限公司 | 一种数据包转发的方法、装置及*** |
US20150188949A1 (en) * | 2013-12-31 | 2015-07-02 | Lookout, Inc. | Cloud-based network security |
TW201728126A (zh) * | 2015-11-11 | 2017-08-01 | 英特爾股份有限公司 | 用於軟體定義無線電存取網路的行動管理 |
CN107360135A (zh) * | 2017-06-09 | 2017-11-17 | 中国人民解放军信息工程大学 | 拟态化网络操作***、构建装置及方法 |
-
2017
- 2017-11-21 TW TW106140292A patent/TWI657683B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104660506A (zh) * | 2013-11-22 | 2015-05-27 | 华为技术有限公司 | 一种数据包转发的方法、装置及*** |
US20150188949A1 (en) * | 2013-12-31 | 2015-07-02 | Lookout, Inc. | Cloud-based network security |
TW201728126A (zh) * | 2015-11-11 | 2017-08-01 | 英特爾股份有限公司 | 用於軟體定義無線電存取網路的行動管理 |
CN107360135A (zh) * | 2017-06-09 | 2017-11-17 | 中国人民解放军信息工程大学 | 拟态化网络操作***、构建装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201926960A (zh) | 2019-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019233179A1 (zh) | 一种数据报文的检测方法、设备及*** | |
WO2022028456A1 (zh) | 拥塞控制方法和装置、网络节点设备,及计算机可读存储介质 | |
JP5207198B2 (ja) | パケットを送受信する装置、プログラムおよびその方法 | |
WO2022089175A1 (zh) | 网络拥塞控制方法及装置 | |
WO2020100581A1 (ja) | 評価装置、評価方法および評価プログラム | |
JP3214454B2 (ja) | プログラム内蔵方式パケット処理装置 | |
CN112261142B (zh) | 一种rdma网络的数据重传方法、装置及fpga | |
US20150201436A1 (en) | Method of mobile terminal internal communications | |
JP2009218743A (ja) | Ipプロトコル処理装置及びその処理方法 | |
WO2021244262A1 (zh) | 一种报文处理方法、设备及*** | |
TWI657683B (zh) | 移除交換器之已完成流程條目的方法及用於移除已完成流程條目的交換器系統 | |
CN108512820B (zh) | 一种通信***中服务器响应请求消息的方法及设备 | |
EP4030810A1 (en) | Method and device for confirming in-situ flow information telemetry capability | |
WO2015180560A1 (zh) | 一种对业务路由报文进行处理的方法和业务节点 | |
US8842547B2 (en) | Communication control apparatus and control method | |
US8098687B2 (en) | Method and apparatus for forwarding packets | |
CN101527682A (zh) | 一种保障网络存储服务质量的方法和*** | |
EP3136251B1 (en) | Flit transmission method and device of network on chip | |
CN110677479B (zh) | 一种局域网的设备管理方法、***及存储介质 | |
CN114268670A (zh) | 基于时间触发的以太网异步消息处理***及方法 | |
JP2005217491A (ja) | 受信処理方法/プログラム/プログラム記録媒体、情報処理装置 | |
US10367725B2 (en) | Network programming | |
CN109842465A (zh) | 数据传输方法、数据端设备 | |
JP2006295265A (ja) | ネットワークシステム、ルータ装置及びそれに用いる最短経路計算方法 | |
WO2021217460A1 (zh) | 通信方法、装置及*** |