• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>
    當前位置: 首頁 > 專利查詢>東南大學專利>正文

    基于HeavyKeeper算法的TOPN熱點域名實時監測方法技術

    技術編號:36690675 閱讀:26 留言:0更新日期:2023-02-27 19:57
    本發明專利技術涉及一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法,該方法對DNS實時接收到的請求域名進行周期性處理,具體包括:計算當前請求域名的哈希值Hdomain,查詢紅黑樹RB Tree中是否存在對應Hdomain的節點,其中RB Tree包含與MinHeap相同的N個節點;查詢存在時,更新RB Tree和MinHeap中相應節點的值Dnum,Dnum為請求域名訪問次數的近似值,當前周期結束時,輸出TOP N的熱點域名。本發明專利技術與現有技術相比,其顯著優點是:采用可配置定量內存,僅記錄可能是熱點域名的訪問次數,對訪問次數少的域名淘汰且不存儲,避免浪費內存資源,監測到多個域名哈希存儲沖突時,使用概率衰減來踢除訪問次數少的域名,提高了TOP N熱點域名實時監測的準確率。點域名實時監測的準確率。點域名實時監測的準確率。

    【技術實現步驟摘要】
    基于HeavyKeeper算法的TOP N熱點域名實時監測方法


    [0001]本專利技術涉及網絡數據監測
    ,特別是一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法。

    技術介紹

    [0002]在DNS(Domain Name Server)服務器使用過程中,實時報告最近X分鐘內出現的TOP N的熱點域名,是一種較為普遍的需求。如何在高并發的場景下,使用較低的計算與內存資源,準確而實時地監測出現的前N個熱點域名(即TOP N),一直難度較大。
    [0003]現有針對這種需求的通用實現方法可分為兩種:第一種是在DNS服務器軟件內部實現,將請求的域名以紅黑樹節點的形式存放,并對其出現次數進行計數。到第X時刻的時候,輸出計數最多的前N個域名。這種方法在地并發、計算與內存資源充足時,可以及時、準確地輸出結果。第二種是通過實時分析DNS服務器產生的日志,引入額外的設備對X分鐘內的訪問次數進行統計并排序輸出。該方法不消耗DNS服務器的本身資源,也能及時、準確輸出數據,其缺陷在于需要額外投入硬件設備。
    [0004]兩種方法檢測TOP N熱點域名的步驟可大致描述如下:
    [0005]1、提取出請求的域名Domain,使用Hash函數H計算其Hash值為Hdomain,該值會作為該域名所在紅黑樹節點的Key,是該節點的唯一標識。
    [0006]2、查詢已有紅黑樹是否已經插入過該域名,即是否存在某個樹節點Key=Hdomain,如不存在,則進入下一步,否則進入第4步。
    [0007]3、為當前域名分配新的樹節點,設置樹節點Key=Hdomain,并將該節點插入紅黑樹。此處有時為了控制總內存占用量,會只保留M個樹節點,如10萬個。超過該數量后,直接開始丟棄域名數據,或者淘汰部分計數為1的數據,釋放部分內存空間。若當前域名被丟棄,則直接結束流程。否則進入下一步
    [0008]4、將該域名所在的節點域名出現次數計數器加1。
    [0009]5、在時間間隔到達X的時候,如每5分鐘。開始遍歷紅黑樹,根據訪問次數進行排序,輸出前N項,即為結果。同時清空紅黑樹,為下一次統計做準備。
    [0010]現有的方案為了實時監測TOP N熱點域名,必須要維持一個節點數量相當多的紅黑樹來統計域名的訪問次數。其缺點一是為了提高統計的準確性,在控制內存占用量的情況下,若節點數量M越小,則丟棄數據越多。因此為了提高準確性,往往該M值很大,從而消耗了較多的計算與內存資源;其缺點二是在第X時刻,為了獲取前N項數值,必須遍歷整個紅黑樹,取出訪問次數最大的N個熱點域名。在輸出結束后,需要清空樹。當并發量很高時,該操作有概率會引起系統抖動,業務出現丟包的情況。所以,現有方法在高并發場景下,一般不適用。方法二適用于高并發場景,但是需要額外的設備投入。
    [0011]從實現步驟可以看出完成以上任務,這兩種方法都有缺陷。在不控制內存占用量的情況下,結果準確但消耗資源過多。在控制內存使用總量的場景下,因為丟棄了一部分數據,會出現監測結果不準確的情況。
    [0012]文獻1:中國授權專利技術專利CN201710736503.9公開了一種DNS訪問數據歸類和內網訪問占比提高方法,其主要作用是于對DNS的訪問數據的內網外網屬性進行歸類,實現同時分段地對分類數據、外網域名訪問量統計分析;其中,該方法對過期后的數據也進行了數據庫實時保存,由此需要較大的內存支撐,依然存在無法解決內存資源消耗過多的問題。

    技術實現思路

    [0013]本專利技術的目的在于提供一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法,采用雙流程數據結構,對數組中少量出現的域名進行衰減淘汰,只保留訪問次數多的域名,實現對TOP N熱點域名準確度的有效監測。
    [0014]實現本專利技術目的的技術解決方案為:
    [0015]一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法,該方法對DNS實時接收到的請求域名進行周期性處理,任一個周期的處理步驟具體如下:
    [0016]計算當前請求域名的哈希值Hdomain,查詢RB Tree中是否存在對應請求域名的哈希值Hdomain的節點,其中RB Tree包含與MinHeap相同的N個節點;
    [0017]當RB Tree中存在對應Hdomain的節點時,請求域名在MinHeap中,同時更新RB Tree和MinHeap中相應的節點值為Dnum,Dnum為當前請求域名的訪問次數值;
    [0018]當RB Tree中不存在對應Hdomain的節點時,若MinHeap中節點數量超過N且其根節點的計數Nmin滿足Dnum
    ?
    Nmin=1,則請求域名同時插入RBTree與MinHeap替換最小節點;反之MinHeap中節點數量不超過N項且其根節點的計數Nmin滿足Dnum
    ?
    Nmin=1,則請求域名同時插入MinHeap和RB Tree中進行訪問累計;
    [0019]當前周期結束時,輸出TOP N的熱點域名。
    [0020]進一步的,RB Tree中不存在對應Hdomain的節點時,若MinHeap根節點的計數Nmin不滿足Dnum
    ?
    Nmin=1,則請求域名被淘汰。
    [0021]進一步的,DNS實時接收到的請求域名存入內存池Pool,在輸出TOP N的熱點域名后,清空所述內存池Pool。
    [0022]進一步的,Dnum的計算流程如下:
    [0023]初始化r行w列的數組A,數組A中每個元素包括兩個字段,分別存放請求域名的哈希值和訪問次數;
    [0024]其中,每個請求域名記錄有唯一指紋標識FP,FP采用哈希函數計算,用于表示每個請求域名在數組A中的占用位置bucket;
    [0025]對數組A進行行遍歷;
    [0026]步驟1:令i=0,開始獲取請求域名;
    [0027]步驟2:計算每個請求域名對應的FP,獲取每個請求域名在數組A的第i行第[Hi(D)%w]列元素,即A[i][Hi(D)%w],式中Hi(D)表示域名D使用第i行所使用的哈希函數Hi(
    ·
    )計算出的哈希值,%為求余符號;
    [0028]步驟3:判斷每個請求域名在數組A中存放的訪問次數,若訪問次數C=0,則將C置為1;若訪問次數C>0且FP=Hdomain,則將C置為C+1;若訪問次數C>0且FP≠Hdomain,則以1.1
    ?
    c
    的概率衰減將C置為C
    ?
    1;
    [0029]步驟4:置Max C=MAX(Max C,C);
    [0030]步驟5:若i<r則返回步驟3,否則Dnum=Max C。
    [0031]進一步的,步驟3中若訪問次數C>0且FP≠Hdomain,則以1.1
    ?
    c
    的概率衰減將C置為C
    ?
    1,當同一個bucket存在多個請求域名占用沖突時,當前bucket占用的第一請求域名被本文檔來自技高網
    ...

    【技術保護點】

    【技術特征摘要】
    1.一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法,其特征在于:該方法對DNS實時接收到的請求域名進行周期性處理,任一個周期的處理步驟具體如下:計算當前請求域名的哈希值Hdomain,查詢RB Tree中是否存在對應所述請求域名的哈希值Hdomain的節點,其中所述RB Tree包含與所述MinHeap相同的N個節點;當所述RB Tree中存在對應所述Hdomain的節點時,所述請求域名在所述MinHeap中,同時更新所述RB Tree和所述MinHeap中相應的節點值Dnum,所述Dnum為當前所述請求域名的訪問次數值;當所述RB Tree中不存在對應所述Hdomain的節點時,若所述MinHeap中節點數量超過N且其根節點的計數Nmin滿足Dnum
    ?
    Nmin=1,則所述請求域名同時插入所述RBTree與所述MinHeap替換最小節點;反之所述MinHeap中節點數量不超過N項且其根節點的計數Nmin滿足Dnum
    ?
    Nmin=1,則所述請求域名同時插入所述MinHeap和所述RB Tree中進行訪問累計;當前周期結束時,輸出TOP N的熱點域名。2.根據權利要求1所述一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法,其特征在于:當所述RB Tree中不存在對應所述Hdomain的節點時,若所述MinHeap根節點的計數Nmin不滿足Dnum
    ?
    Nmin=1,則所述請求域名被淘汰。3.根據權利要求2所述一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法,其特征在于:DNS實時接收到的請求域名存入內存池Pool,在輸出TOP N的熱點域名后,清空所述內存池Pool。4.根據權利要求3所述一種基于HeavyKeeper算法的TOP N熱點域名實時監測方法,其特征在于:所述Dnum的計算流程如下:初始化r行w列的數組A,所述數組A中每個元素包括兩個字段,分別存放所述請求域名的哈希值和訪問次數;其中,每個所述請求...

    【專利技術屬性】
    技術研發人員:戴云偉黃韜
    申請(專利權)人:東南大學,
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 亚洲色av性色在线观无码| 久久亚洲AV成人无码| 无码任你躁久久久久久久| 国产亚洲?V无码?V男人的天堂| 久久精品亚洲中文字幕无码麻豆| 无码任你躁久久久久久| 亚洲AV日韩AV永久无码久久| 无码成人AAAAA毛片| 中文字幕人成无码免费视频| 中文字幕丰满乱子伦无码专区 | 无码毛片视频一区二区本码| 亚洲日韩精品无码专区加勒比| 一本大道东京热无码一区| 久久亚洲精品成人无码| 亚洲成av人片不卡无码| 国产精品无码A∨精品影院| 少妇无码AV无码专区线| 97久久精品无码一区二区 | 精品韩国亚洲av无码不卡区| 欧洲人妻丰满av无码久久不卡| 国产精品一级毛片无码视频| 国产AV无码专区亚洲AV麻豆丫| 无码人妻久久久一区二区三区| 在线精品无码字幕无码AV| 乱人伦人妻中文字幕无码久久网| 亚洲Av无码国产一区二区| 亚洲综合一区无码精品| 亚洲成A∨人片在线观看无码| 无码人妻一区二区三区在线视频| 亚洲成a人片在线观看无码专区| 亚洲人成无码网站久久99热国产| 国产精品无码久久久久久久久久 | 99无码人妻一区二区三区免费| 久久午夜夜伦鲁鲁片免费无码| 一区二区三区无码视频免费福利| 亚洲精品无码专区久久久| 伊人久久综合无码成人网| 少妇人妻无码精品视频| 精品少妇人妻av无码久久| 97精品人妻系列无码人妻| 麻豆精品无码国产在线果冻|