System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及網絡,尤其涉及一種報文處理方法、裝置、設備、網卡及計算機程序產品。
技術介紹
1、當網絡中存在待處理報文時,網卡可以從網絡中接收報文,并通知核心處理器(central?processing?unit,簡稱cpu)有新的報文到達,而后cpu可以從網卡的緩沖區域獲取到待處理報文,對待處理報文進行處理,并將處理后報文轉發至網卡,以使網卡進行相對應的轉發操作。
2、由于網卡可以具有不同的工作狀態,當網卡工作在異常壓力場景時,可能會使得發送方向的報文出現異常丟包的情況,此時,發送方向報文所對應的保序隊列中的保序信息會一直等待超時彈出,從而導致保序隊列的頭阻塞,影響后續的報文轉發時延。
技術實現思路
1、本專利技術實施例提供了一種報文處理方法、裝置、設備、網卡及計算機程序產品,能夠避免保序隊列出現頭阻塞的情況,從而保證后續的報文轉發時延。
2、第一方面,本專利技術實施例提供一種報文處理方法,應用于現場可編程門陣列fpga模塊,所述fpga模塊通信連接有驅動模塊,所述驅動模塊用于驅動所述fpga模塊與主機內存之間進行數據傳輸;所述方法包括:
3、所述fpga模塊通過所述驅動模塊獲取待處理的當前報文;
4、在所述當前報文為需丟棄報文的情況下,所述fpga模塊確定用于實現報文處理操作的保序隊列,其中,所述保序隊列中至少包括:需要進行保序操作的各個報文的保序信息;
5、所述fpga模塊將所述當前報文丟棄,并釋放所述保序隊列中所述
6、第二方面,本專利技術實施例提供了一種報文處理裝置,應用于現場可編程門陣列fpga模塊,所述fpga模塊通信連接有驅動模塊,所述驅動模塊用于驅動所述fpga模塊與主機內存之間進行數據傳輸;所述裝置包括:
7、第一獲取模塊,用于獲取通過所述驅動模塊待處理的當前報文;
8、第一確定模塊,用于在所述當前報文為需丟棄報文的情況下,確定用于實現報文處理操作的保序隊列,其中,所述保序隊列中至少包括:需要進行保序操作的各個報文的保序信息;
9、第一處理模塊,用于將所述當前報文丟棄,并釋放所述保序隊列中所述當前報文的保序信息。
10、第三方面,本專利技術實施例提供了一種電子設備,包括:存儲器、處理器;其中,所述存儲器用于存儲一條或多條計算機指令,其中,所述一條或多條計算機指令被所述處理器執行時實現上述第一方面中的報文處理方法。
11、第四方面,本專利技術實施例提供了一種計算機存儲介質,用于儲存計算機程序,所述計算機程序使計算機執行時實現上述第一方面中的報文處理方法。
12、第五方面,本專利技術實施例提供了一種計算機程序產品,包括:存儲有計算機指令的計算機可讀存儲介質,當所述計算機指令被一個或多個處理器執行時,致使所述一個或多個處理器執行上述第一方面所示的報文處理方法中的步驟。
13、第六方面,本專利技術實施例提供一種報文處理方法,應用于驅動模塊,所述驅動模塊用于驅動現場可編程門陣列fpga模塊與主機內存之間進行數據傳輸;所述方法包括:
14、獲取用于實現報文處理操作的空閑報文描述符;
15、當所述驅動模塊檢測存在丟包的情況下,基于所述空閑報文描述符,確定未丟棄報文以及位于所述未丟棄報文之后的需進行保序操作的丟棄報文數量;
16、將所述丟棄報文數量添加在所述未丟棄報文的尾部字段。
17、第七方面,本專利技術實施例提供一種報文處理裝置,應用于驅動模塊,所述驅動模塊用于驅動現場可編程門陣列fpga模塊與主機內存之間進行數據傳輸;所述裝置包括:
18、第二獲取模塊,用于獲取用于實現報文處理操作的空閑報文描述符;
19、第二確定模塊,用于當所述驅動模塊檢測存在丟包的情況下,基于所述空閑報文描述符,確定未丟棄報文以及位于所述未丟棄報文之后的需進行保序操作的丟棄報文數量;
20、第二處理模塊,用于將所述丟棄報文數量添加在所述未丟棄報文的尾部字段。
21、第八方面,本專利技術實施例提供了一種電子設備,包括:存儲器、處理器;其中,所述存儲器用于存儲一條或多條計算機指令,其中,所述一條或多條計算機指令被所述處理器執行時實現上述第六方面中的報文處理方法。
22、第九方面,本專利技術實施例提供了一種計算機存儲介質,用于儲存計算機程序,所述計算機程序使計算機執行時實現上述第六方面中的報文處理方法。
23、第十方面,本專利技術實施例提供了一種計算機程序產品,包括:存儲有計算機指令的計算機可讀存儲介質,當所述計算機指令被一個或多個處理器執行時,致使所述一個或多個處理器執行上述第六方面所示的報文處理方法中的步驟。
24、第十一方面,本專利技術實施例提供了一種網卡,包括:現場可編程門陣列fpga模塊和與所述fpga模塊通信連接的驅動模塊,所述驅動模塊用于驅動所述fpga模塊與主機內存之間進行數據傳輸;
25、所述驅動模塊,用于獲取用于實現報文處理操作的空閑報文描述符;當所述驅動模塊檢測存在丟包的情況下,基于所述空閑報文描述符,確定未丟棄報文以及位于所述未丟棄報文之后的需進行保序操作的丟棄報文數量;將所述丟棄報文數量添加在所述未丟棄報文的尾部字段;
26、所述fpga模塊,用于通過所述驅動模塊獲取待處理的當前報文;在所述當前報文為需丟棄報文的情況下,確定用于實現報文處理操作的保序隊列,其中,所述保序隊列中至少包括:需要進行保序操作的各個報文的保序信息;將所述當前報文丟棄,并釋放所述保序隊列中所述當前報文的保序信息。
27、本專利技術實施例提供的報文處理方法、裝置、設備、網卡及計算機程序產品,通過所述驅動模塊獲取待處理的當前報文,在所述當前報文為需丟棄報文的情況下,確定用于實現報文處理操作的保序隊列,而后可以將所述當前報文丟棄,并釋放所述保序隊列中所述當前報文的保序信息,這樣可以避免因軟件異常丟包操作而導致保序隊列中出現頭阻塞的情況,同時能夠保證報文轉發的時延和性能,而后可以利用釋放了保序信息的保序隊列對其他的待處理報文進行分析處理操作,從而有利于提高報文處理操作的質量和效率,進一步保證了該方法的實用性。
本文檔來自技高網...【技術保護點】
1.一種報文處理方法,其特征在于,應用于現場可編程門陣列FPGA模塊,所述FPGA模塊通信連接有驅動模塊,所述驅動模塊用于驅動所述FPGA模塊與主機內存之間進行數據傳輸;所述方法包括:
2.根據權利要求1所述的方法,其特征在于,在獲取待處理的當前報文之后,所述方法還包括:
3.根據權利要求2所述的方法,其特征在于,基于所述丟棄報文數量,識別所述當前報文是否為需丟棄報文,包括:
4.根據權利要求2所述的方法,其特征在于,確定位于所述前一處理報文之后的需要進行丟棄操作的丟棄報文數量,包括:
5.根據權利要求4所述的方法,其特征在于,在獲取預設信息隊列之前,所述方法還包括:
6.一種報文處理方法,其特征在于,應用于驅動模塊,所述驅動模塊用于驅動現場可編程門陣列FPGA模塊與主機內存之間進行數據傳輸;所述方法包括:
7.根據權利要求6所述的方法,其特征在于,在獲取用于實現報文處理操作的空閑報文描述符之后,所述方法還包括:
8.根據權利要求6所述的方法,其特征在于,基于所述空閑報文描述符,確定未丟棄報文以及
9.根據權利要求8所述的方法,其特征在于,在所述待處理報文集合中,確定位于所述未丟棄報文之后的多個需保序報文,包括:
10.根據權利要求9所述的方法,其特征在于,確定各個待處理報文的報文類型,包括:
11.根據權利要求9所述的方法,其特征在于,基于各個待處理報文的報文類型,確定所述多個需保序報文,包括:
12.根據權利要求9所述的方法,其特征在于,在獲取待處理報文集合之后,所述方法還包括:
13.一種報文處理裝置,其特征在于,應用于現場可編程門陣列FPGA模塊,所述FPGA模塊通信連接有驅動模塊,所述驅動模塊用于驅動所述FPGA模塊與主機內存之間進行數據傳輸;所述裝置包括:
14.一種報文處理裝置,其特征在于,應用于驅動模塊,所述驅動模塊用于驅動現場可編程門陣列FPGA模塊與主機內存之間進行數據傳輸;所述裝置包括:
15.一種網卡,其特征在于,包括:現場可編程門陣列FPGA模塊和與所述FPGA模塊通信連接的驅動模塊,所述驅動模塊用于驅動所述FPGA模塊與主機內存之間進行數據傳輸;
16.一種電子設備,其特征在于,包括:存儲器、處理器;其中,所述存儲器用于存儲一條或多條計算機指令,其中,所述一條或多條計算機指令被所述處理器執行時實現上述權利要求1-12中任意一項的方法。
17.一種計算機存儲介質,其特征在于,用于儲存計算機程序,所述計算機程序使計算機執行時實現上述權利要求1-12中任意一項的方法。
18.一種計算機程序產品,其特征在于,包括:計算機程序,當所述計算機程序被電子設備的處理器執行時,使所述處理器執行上述權利要求1-12中任意一項的方法中的步驟。
...【技術特征摘要】
1.一種報文處理方法,其特征在于,應用于現場可編程門陣列fpga模塊,所述fpga模塊通信連接有驅動模塊,所述驅動模塊用于驅動所述fpga模塊與主機內存之間進行數據傳輸;所述方法包括:
2.根據權利要求1所述的方法,其特征在于,在獲取待處理的當前報文之后,所述方法還包括:
3.根據權利要求2所述的方法,其特征在于,基于所述丟棄報文數量,識別所述當前報文是否為需丟棄報文,包括:
4.根據權利要求2所述的方法,其特征在于,確定位于所述前一處理報文之后的需要進行丟棄操作的丟棄報文數量,包括:
5.根據權利要求4所述的方法,其特征在于,在獲取預設信息隊列之前,所述方法還包括:
6.一種報文處理方法,其特征在于,應用于驅動模塊,所述驅動模塊用于驅動現場可編程門陣列fpga模塊與主機內存之間進行數據傳輸;所述方法包括:
7.根據權利要求6所述的方法,其特征在于,在獲取用于實現報文處理操作的空閑報文描述符之后,所述方法還包括:
8.根據權利要求6所述的方法,其特征在于,基于所述空閑報文描述符,確定未丟棄報文以及位于所述未丟棄報文之后的需進行保序操作的丟棄報文數量,包括:
9.根據權利要求8所述的方法,其特征在于,在所述待處理報文集合中,確定位于所述未丟棄報文之后的多個需保序報文,包括:
10.根據權利要求9所述的方法,其特征在于,確定各個待處理報文的報文類型,包括...
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。