[發明專利]一種基于多核心CPU的信令采集方法有效
| 申請號: | 201710533717.6 | 申請日: | 2017-07-03 |
| 公開(公告)號: | CN107479966B | 公開(公告)日: | 2020-11-03 |
| 發明(設計)人: | 張劍華;宋青;王國升;張建軍;李振華 | 申請(專利權)人: | 珠海高凌信息科技股份有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;H04L12/26 |
| 代理公司: | 廣州嘉權專利商標事務所有限公司 44205 | 代理人: | 俞梁清 |
| 地址: | 519060 廣東省*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 多核 cpu 采集 方法 | ||
1.一種基于多核心CPU的信令采集方法,其特征在于,所述方法包括如下步驟:
主線程獲取當前CPU的核心數;
主線程創建Master線程,用于偵聽來自網絡的TCP連接;
主線程根據當前CPU核心數的數量創建多個Worker線程,并對每個Worker線程進行編號獲得不同的Worker ID,所述Worker線程用于接收并處理信令數據,對每個Worker線程進行編號的方式為:按照創建的先后,從0開始遞增,為Worker線程進行編號;
Master線程對偵聽到的新連接進行分析,并根據新連接的類型將需要處理的信令數據發送給相應Worker ID的Worker線程進行處理,所述Master線程對偵聽到的新連接進行分析包括:判斷該新連接是來自信令采集設備還是Worker線程,并根據判斷的結果將新連接分為兩個不同的類型;
若Master線程判斷偵聽到的新連接是來自信令采集設備,則執行如下步驟:
分配出下一個處理信令數據的Worker ID;
通過上述Worker ID找到對應的Worker TCP連接;
接受由新連接發送來的接口,并將接口值通過Worker TCP連接發送給Worker線程;
Master線程繼續偵聽來自網絡的TCP連接;
若Master線程判斷偵聽到的新連接是來自Worker線程,則執行如下步驟:
接受由新連接發送來的接口,并且當前Worker線程將自己的Worker ID發送給Master線程;
Master線程收到Worker線程的Worker ID后,將Worker ID與TCP連接建立對應關系;
Master線程繼續偵聽來自網絡的TCP連接。
2.根據權利要求1所述的一種基于多核心CPU的信令采集方法,其特征在于,所述主線程創建Worker線程的數量為CPU核心數數量的兩倍。
3.根據權利要求1所述的一種基于多核心CPU的信令采集方法,其特征在于,Worker線程處理信令數據包括如下步驟:
創建多路復用IO接口;
創建連向Master線程的TCP Client連接;
向Master線程發送自己的Worker ID;
將連向Master線程的TCP Client連接的接口在多路復用IO接口中進行注冊;
等待接收信令數據,并對接收到的信令數據的類型進行判斷,根據信令數據的類型對信令數據進行分類處理。
4.根據權利要求3所述的一種基于多核心CPU的信令采集方法,其特征在于,若Worker線程判斷接收到的信令數據的類型是來自信令采集設備,則從信令采集設備的連接中讀取信令數據并進行處理,之后繼續等待接收信令數據。
5.根據權利要求3所述的一種基于多核心CPU的信令采集方法,其特征在于,若Worker線程判斷接收到的信令數據的類型是來自Master線程,則執行如下步驟:
從Master線程的連接中讀取數據,該數據為信令采集設備的連接的接口值;
將新接收到的接口值在多路復用IO接口中進行注冊;
繼續等待接收信令數據。
6.根據權利要求3至5任一項所述的一種基于多核心CPU的信令采集方法,其特征在于,所述多路復用IO接口為epoll。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于珠海高凌信息科技股份有限公司,未經珠海高凌信息科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710533717.6/1.html,轉載請聲明來源鉆瓜專利網。





