王文強(qiáng),任 凱,李曙軍,杜冠男
(1.國(guó)網(wǎng)河北省電力有限公司,河北石家莊 050000;2.國(guó)網(wǎng)河北省電力有限公司培訓(xùn)中心,河北石家莊 050000)
令牌桶算法是實(shí)現(xiàn)速率限制與網(wǎng)絡(luò)流量整形的常用處理政策,可用來(lái)控制主機(jī)發(fā)送到網(wǎng)絡(luò)上的傳輸信息數(shù)量級(jí)水平,一般情況下,可允許突發(fā)數(shù)據(jù)發(fā)送行為的同時(shí)存在[1]。在流量網(wǎng)絡(luò)中傳輸數(shù)據(jù)時(shí),為防止信息擁塞行為的出現(xiàn),需要對(duì)流出網(wǎng)絡(luò)的流量數(shù)據(jù)進(jìn)行限流處理,從而使傳輸信息可以通過(guò)勻速方式向外發(fā)送。令牌桶可自行以恒定速率值源源不斷地產(chǎn)生令牌信息,且在令牌不被消耗的情況下,數(shù)據(jù)被消耗的速度始終小于產(chǎn)生的速度,因此令牌會(huì)不斷地增多,直至將桶完全裝滿[2-3]。
公眾號(hào)小程序是一種新近流行的傳輸型網(wǎng)絡(luò)數(shù)據(jù)信息,在既定時(shí)間階段內(nèi),能夠占據(jù)極高的訪問(wèn)流量。隨著信息傳輸流量值的增大,訪問(wèn)主機(jī)對(duì)于數(shù)據(jù)信號(hào)的精確化協(xié)調(diào)能力會(huì)出現(xiàn)明顯下降的變化趨勢(shì)。為避免上述情況的發(fā)生,TCP 串行流量控制算法在滑動(dòng)窗口的作用下,確定發(fā)送端主機(jī)中的信息收發(fā)效率,再通過(guò)流量整形的方式,降低網(wǎng)絡(luò)環(huán)境中的流量輸出水平。但此方法在單位時(shí)間內(nèi)可傳輸?shù)脑L問(wèn)流量數(shù)值相對(duì)較小,很難實(shí)現(xiàn)對(duì)訪問(wèn)流量傳輸行為的有效控制。為解決此問(wèn)題,設(shè)計(jì)基于令牌桶算法的公眾號(hào)小程序訪問(wèn)流量控制模型,借助Web 服務(wù)框架,實(shí)現(xiàn)對(duì)訪問(wèn)流量的應(yīng)急性管理,再聯(lián)合控制協(xié)議連接特征,定義流量報(bào)文段的應(yīng)用格式。
基于令牌桶算法的流量需求分析包含存儲(chǔ)中間件連接、Web 服務(wù)框架搭建、公眾號(hào)小程序訪問(wèn)流量應(yīng)急管理3 個(gè)操作環(huán)節(jié),具體研究方法如下。
存儲(chǔ)中間件存在于公眾號(hào)小程序訪問(wèn)網(wǎng)絡(luò)中,是一種非關(guān)系型的數(shù)據(jù)庫(kù)結(jié)構(gòu)體,一般可用作對(duì)流量信息進(jìn)行分布式緩存處理。在多個(gè)Client 主機(jī)的作用下,流量交換機(jī)可調(diào)取與公眾號(hào)小程序相關(guān)的訪問(wèn)流量信息,并可借助已成型的令牌桶結(jié)構(gòu)體,將信息參量反饋至下級(jí)關(guān)聯(lián)主機(jī)之中。Master執(zhí)行器、Slave 執(zhí)行器同時(shí)隸屬于存儲(chǔ)中間件的輔助控制單元,可在接收公眾號(hào)小程序訪問(wèn)流量信息的同時(shí),更改令牌桶結(jié)構(gòu)體的現(xiàn)有連接形式[4-5]。Data Server 主機(jī)存在于存儲(chǔ)中間件的底層應(yīng)用單元之中,能夠感知令牌桶結(jié)構(gòu)體中公眾號(hào)小程序訪問(wèn)流量信息的實(shí)際傳輸狀態(tài)。存儲(chǔ)中間件連接形式如圖1 所示。
圖1 存儲(chǔ)中間件連接形式
Web 服務(wù)框架作為存儲(chǔ)中間件的下級(jí)連接結(jié)構(gòu),可準(zhǔn)確獲取公眾號(hào)訪問(wèn)網(wǎng)絡(luò)中的流量傳輸需求,并可借助控制主機(jī),將這些應(yīng)用信號(hào)反饋至其他令牌桶結(jié)構(gòu)體應(yīng)用設(shè)備中。訪問(wèn)流量控制主機(jī)可與行為應(yīng)用主機(jī)、行為控制芯片與流量記錄設(shè)備相連,能夠在控制公眾號(hào)小程序訪問(wèn)流量擴(kuò)散行為的同時(shí),確定現(xiàn)有連接形式能夠滿足數(shù)據(jù)信息的實(shí)際傳輸需求,并對(duì)令牌桶結(jié)構(gòu)體中暫存的數(shù)據(jù)信號(hào)進(jìn)行整合處理[6-7]。當(dāng)令牌結(jié)構(gòu)體達(dá)到額定存儲(chǔ)條件時(shí),Web服務(wù)框架才會(huì)進(jìn)入連續(xù)性穩(wěn)定的工作狀態(tài)中。Web服務(wù)框架結(jié)構(gòu)如圖2 所示。
圖2 Web服務(wù)框架結(jié)構(gòu)圖
公眾號(hào)小程序訪問(wèn)流量應(yīng)急管理的后端運(yùn)行代碼始終遵循MVC 編譯風(fēng)格,可在Domin、Dao、Service、Controller 4 個(gè)模塊之間分層連接關(guān)系的作用下,實(shí)現(xiàn)對(duì)令牌桶存儲(chǔ)流量的增、刪、改、查。該級(jí)執(zhí)行原則可借助DispatcherServlet、Controller 兩種類型的前端主機(jī),實(shí)現(xiàn)令牌桶存儲(chǔ)流量與View 控制模塊間的信息共通[8-9]。一般情況下,訪問(wèn)流量應(yīng)急管理行為能夠直接干預(yù)與公眾號(hào)小程序相關(guān)的項(xiàng)目操作信息,并可在感知Web 服務(wù)程序標(biāo)準(zhǔn)的同時(shí),實(shí)現(xiàn)對(duì)邏輯依賴型連接訪問(wèn)信息的有效控制。完整的公眾號(hào)小程序訪問(wèn)流量應(yīng)急管理程序開發(fā)環(huán)境如表1 所示。
表1 開發(fā)環(huán)境
在令牌桶算法流量需求的支持下,按照控制協(xié)議連接特征分析、連接行為復(fù)位、流量報(bào)文段格式定義的處理流程,完成公眾號(hào)小程序訪問(wèn)流量控制模型的搭建。
在令牌桶算法的支持下,控制協(xié)議連接特征可解釋為當(dāng)客戶機(jī)接收到公眾號(hào)小程序訪問(wèn)流量后,由服務(wù)端主機(jī)輸出的具有控制能力的行為性執(zhí)行指令,可用于區(qū)分流量數(shù)據(jù)實(shí)體與流量應(yīng)用信息之間的應(yīng)有差異性,從而判定一個(gè)數(shù)據(jù)進(jìn)程是否具備可繼續(xù)執(zhí)行的能力[10]。若判定結(jié)果為是,則服務(wù)端主機(jī)可直接返回一個(gè)設(shè)置型控制應(yīng)答,以用來(lái)拒絕與令牌桶結(jié)構(gòu)體相關(guān)的訪問(wèn)流量連接請(qǐng)求;若判定結(jié)果為否,則服務(wù)端主機(jī)可遞交一個(gè)應(yīng)答服務(wù)標(biāo)準(zhǔn),再借助流量傳輸信道,實(shí)現(xiàn)對(duì)令牌桶應(yīng)答行為的有效控制[11-12]。設(shè)ε1、ε2分別代表兩個(gè)不同的流量主機(jī)訪問(wèn)連接控制系數(shù),I0代表最小的令牌桶連接行為訪問(wèn)次數(shù),I代表最大的令牌桶連接行為訪問(wèn)次數(shù),聯(lián)立上述物理量,可將控制協(xié)議的連接特征表示為:
其中,代表公眾號(hào)小程序訪問(wèn)流量輸出均值,i代表令牌桶連接行為訪問(wèn)次數(shù),代表與訪問(wèn)流量相關(guān)的數(shù)據(jù)傳輸應(yīng)用量。
公眾號(hào)小程序訪問(wèn)流量可以直接請(qǐng)求對(duì)一條數(shù)據(jù)連接指令進(jìn)行復(fù)位處理,訪問(wèn)流量頭結(jié)點(diǎn)處的控制協(xié)議連接特征可與客戶端主機(jī)直接相連。連接行為復(fù)位能夠表示當(dāng)前的訪問(wèn)流量連接已經(jīng)被破壞,需要撤銷后續(xù)的所有數(shù)據(jù)連接[13]。以下幾種情況下均會(huì)發(fā)生連續(xù)性的連接復(fù)位行為:
1)位于令牌桶結(jié)構(gòu)體某一端的訪問(wèn)流量請(qǐng)求很難連接到并不明確存在的數(shù)據(jù)端口,而另一端的公眾號(hào)小程序信息則可在原有令牌桶算法的支持下,實(shí)現(xiàn)對(duì)復(fù)位報(bào)文段的發(fā)送處理,在此情況下,可將訪問(wèn)流量比特值設(shè)置為“1”,以方便后續(xù)控制請(qǐng)求的執(zhí)行與復(fù)位處理。
2)若令牌桶結(jié)構(gòu)體某一端的訪問(wèn)流量請(qǐng)求出現(xiàn)了異常連接的情況,希望將這種控制行為終止,則可將未復(fù)位的報(bào)文段發(fā)送回原始客戶端主機(jī)中,并可將已復(fù)位的流量比特值再次更改為“1”,再借助數(shù)據(jù)傳輸信道,實(shí)現(xiàn)對(duì)數(shù)據(jù)請(qǐng)求傳輸行為的有效控制[14]。
3)若某一端的令牌桶結(jié)構(gòu)體發(fā)現(xiàn)另一端的公眾號(hào)小程序訪問(wèn)流程已經(jīng)空閑了極長(zhǎng)的一段時(shí)間,則可在復(fù)位報(bào)文段組織的作用下,將所有訪問(wèn)流量比特值均改寫為“1”,進(jìn)而滿足令牌桶存儲(chǔ)中間件的實(shí)際數(shù)據(jù)撤銷連接請(qǐng)求。
流量報(bào)文段格式定義是公眾號(hào)小程序訪問(wèn)流量控制模型搭建的末尾處理環(huán)節(jié),可在令牌桶算法的作用下,更改已存儲(chǔ)的數(shù)據(jù)信息連接行為,從而使流量傳輸主機(jī)的實(shí)際信息應(yīng)用需求得到滿足[15-16]。一般情況下,已存儲(chǔ)的公眾號(hào)小程序訪問(wèn)流量報(bào)文數(shù)值量越大,最終定義信息格式所需的控制節(jié)點(diǎn)實(shí)用量也就越多,反之則越少。設(shè)α1代表原始情況下與公眾號(hào)小程序訪問(wèn)流量相關(guān)的連接行為復(fù)位條件,αn代表傳輸系數(shù)為n時(shí)與公眾號(hào)小程序訪問(wèn)流量相關(guān)的連接行為復(fù)位條件,聯(lián)立式(1),可將流量報(bào)文段的格式定義標(biāo)準(zhǔn)表示為:
式(2)中,f代表既定的訪問(wèn)流量復(fù)位處理系數(shù),代表公眾號(hào)小程序訪問(wèn)流量在單位時(shí)間內(nèi)的傳輸均值量。至此,完成各項(xiàng)系數(shù)指標(biāo)的計(jì)算與處理,在令牌桶算法的支持下,實(shí)現(xiàn)公眾號(hào)小程序訪問(wèn)流量控制模型的順利應(yīng)用。
為驗(yàn)證基于令牌桶算法公眾號(hào)小程序訪問(wèn)流量控制模型的實(shí)際應(yīng)用價(jià)值,設(shè)計(jì)如下對(duì)比實(shí)驗(yàn)。在圖3 所示公眾號(hào)小程序訪問(wèn)網(wǎng)絡(luò)中設(shè)置兩個(gè)內(nèi)網(wǎng)用戶主機(jī),其中一個(gè)作為實(shí)驗(yàn)組監(jiān)測(cè)設(shè)備,搭載基于令牌桶算法公眾號(hào)小程序訪問(wèn)流量控制模型,另一個(gè)作為對(duì)照組監(jiān)測(cè)設(shè)備,搭載TCP 串行流量控制算法。在相同實(shí)驗(yàn)環(huán)境下,記錄實(shí)驗(yàn)組、對(duì)照組實(shí)驗(yàn)指標(biāo)的具體變化情況。
圖3 公眾號(hào)小程序訪問(wèn)網(wǎng)絡(luò)架構(gòu)
已知單位時(shí)間內(nèi)的信息傳輸值、UDC 轉(zhuǎn)存指標(biāo)均能用來(lái)描述公眾號(hào)小程序訪問(wèn)流量的精準(zhǔn)化傳輸能力,一般情況下,單位時(shí)間內(nèi)的信息傳輸值越大,UDC 轉(zhuǎn)存指標(biāo)水平越高,公眾號(hào)小程序訪問(wèn)流量的精準(zhǔn)化傳輸能力也就越強(qiáng),反之則越弱。
以15 min 作為一個(gè)單位時(shí)長(zhǎng),表2 記錄了4 個(gè)單位時(shí)長(zhǎng)內(nèi),實(shí)驗(yàn)組、對(duì)照組公眾號(hào)小程序訪問(wèn)流量信息傳輸值的實(shí)際變化情況。
表2 單位時(shí)間內(nèi)的信息傳輸值對(duì)比表
分析表2 可知,實(shí)驗(yàn)組公眾號(hào)小程序訪問(wèn)流量信息傳輸值在前3 個(gè)單位時(shí)長(zhǎng)內(nèi),始終保持不斷上升的變化趨勢(shì),從第4個(gè)單位時(shí)長(zhǎng)開始,流量信息傳輸值開始逐漸趨于穩(wěn)定,全局最大值達(dá)到了7.8×1013T,且能夠維持較長(zhǎng)一段時(shí)間的數(shù)值穩(wěn)定狀態(tài)。對(duì)照組公眾號(hào)小程序訪問(wèn)流量信息傳輸值在前2 個(gè)單位時(shí)長(zhǎng)內(nèi),一直不斷上升,從第3 個(gè)單位時(shí)長(zhǎng)開始,逐漸趨于穩(wěn)定,從第4 個(gè)單位時(shí)長(zhǎng)起,又開始快速下降,全局最大值僅能達(dá)到5.6×1013T,與實(shí)驗(yàn)組極大值相比,下降了2.2×1013T。綜上可知,應(yīng)用基于令牌桶算法公眾號(hào)小程序訪問(wèn)流量控制模型后,單位時(shí)間內(nèi)的信息傳輸值呈現(xiàn)不斷增大的變化趨勢(shì),可實(shí)現(xiàn)對(duì)公眾號(hào)小程序訪問(wèn)流量的精準(zhǔn)化傳輸。
表3 記錄了實(shí)驗(yàn)組、對(duì)照組UDC 轉(zhuǎn)存指標(biāo)的實(shí)際數(shù)值變化情況。
表3 UDC轉(zhuǎn)存指標(biāo)對(duì)比表
分析表3 可知,隨著實(shí)驗(yàn)時(shí)間的延長(zhǎng),實(shí)驗(yàn)組UDC 轉(zhuǎn)存指標(biāo)始終保持相對(duì)穩(wěn)定的波動(dòng)性變化狀態(tài),全局最大值達(dá)到了86.53%。對(duì)照組UDC 轉(zhuǎn)存指標(biāo)則一直呈現(xiàn)階梯狀上升的變化狀態(tài),全局最大值僅能達(dá)到68.73%,與實(shí)驗(yàn)組極大值相比,下降了17.80%。綜上可知,應(yīng)用基于令牌桶算法公眾號(hào)小程序訪問(wèn)流量控制模型后,既定訪問(wèn)節(jié)點(diǎn)處的UDC轉(zhuǎn)存指標(biāo)數(shù)值水平也開始不斷增大,可實(shí)現(xiàn)對(duì)公眾號(hào)小程序訪問(wèn)流量傳輸行為的有效控制。
在令牌桶算法的作用下,公眾號(hào)小程序訪問(wèn)流量控制模型可借助存儲(chǔ)中間件與Web 服務(wù)框架,完成對(duì)流量報(bào)文段格式的精準(zhǔn)定義,且隨著既定訪問(wèn)節(jié)點(diǎn)處UDC 轉(zhuǎn)存指標(biāo)數(shù)值的增大,單位時(shí)間內(nèi)的信息傳輸值水平也在不斷提升,可在控制公眾號(hào)小程序訪問(wèn)流量傳輸行為的同時(shí),完成對(duì)流量數(shù)據(jù)信息的精確化協(xié)調(diào)與處理。