[發(fā)明專利]基于無服務(wù)器霧計(jì)算系統(tǒng)架構(gòu)的復(fù)雜任務(wù)分配方法有效
| 申請(qǐng)?zhí)枺?/td> | 202010311403.3 | 申請(qǐng)日: | 2020-04-20 |
| 公開(公告)號(hào): | CN111541760B | 公開(公告)日: | 2022-05-13 |
| 發(fā)明(設(shè)計(jì))人: | 鄧曉衡;吳亞青;陳歡 | 申請(qǐng)(專利權(quán))人: | 中南大學(xué) |
| 主分類號(hào): | H04L67/61 | 分類號(hào): | H04L67/61;H04L67/63;H04L67/56;H04L67/1008;H04L67/1097;H04L67/12;H04L9/40;G06F9/50 |
| 代理公司: | 長沙軒榮專利代理有限公司 43235 | 代理人: | 張勇 |
| 地址: | 410000 湖南*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 服務(wù)器 計(jì)算 系統(tǒng) 架構(gòu) 復(fù)雜 任務(wù) 分配 方法 | ||
1.一種基于無服務(wù)器霧計(jì)算系統(tǒng)架構(gòu)的復(fù)雜任務(wù)分配方法,其特征在于,包括:
步驟1,終端設(shè)備向霧節(jié)點(diǎn)發(fā)送任務(wù)請(qǐng)求,霧節(jié)點(diǎn)接受任務(wù)請(qǐng)求傳輸?shù)綉?yīng)用層開始服務(wù);
步驟2,應(yīng)用層的訪問控制模塊對(duì)任務(wù)請(qǐng)求進(jìn)行訪問控制;
步驟3,訪問控制模塊將允許訪問的任務(wù)請(qǐng)求傳輸?shù)綉?yīng)用層的請(qǐng)求轉(zhuǎn)發(fā)模塊進(jìn)行任務(wù)請(qǐng)求的優(yōu)先級(jí)排序;
步驟4,請(qǐng)求轉(zhuǎn)發(fā)模塊將排序后的任務(wù)請(qǐng)求傳輸?shù)綉?yīng)用層的服務(wù)管理器,服務(wù)管理器對(duì)任務(wù)請(qǐng)求進(jìn)行難度判斷和分配;
步驟5,服務(wù)管理器將任務(wù)請(qǐng)求傳輸?shù)絺鬏斂刂茖拥腇aaS模塊、私有云代理模塊和協(xié)同管理器進(jìn)行處理;
步驟6,將FaaS模塊、私有云代理模塊和協(xié)同管理器處理后的任務(wù)請(qǐng)求的結(jié)果返回終端設(shè)備;
還包括:
應(yīng)用開發(fā)者通過傳輸控制層的應(yīng)用轉(zhuǎn)發(fā)模塊將應(yīng)用程序上傳到FaaS模塊中進(jìn)行處理;
所述步驟2具體包括:
應(yīng)用層的訪問控制模塊通過權(quán)限驗(yàn)證單元對(duì)任務(wù)請(qǐng)求進(jìn)行權(quán)限驗(yàn)證,通過權(quán)限驗(yàn)證的任務(wù)請(qǐng)求傳輸?shù)秸?qǐng)求轉(zhuǎn)發(fā)模塊,未通過權(quán)限驗(yàn)證的任務(wù)請(qǐng)求拒絕訪問;
所述步驟3具體包括:
將通過權(quán)限驗(yàn)證的任務(wù)請(qǐng)求添加到請(qǐng)求轉(zhuǎn)發(fā)模塊的請(qǐng)求隊(duì)列單元中進(jìn)行任務(wù)請(qǐng)求的優(yōu)先級(jí)排序;
所述步驟4具體包括:
服務(wù)管理器從請(qǐng)求隊(duì)列單元中依次取出任務(wù)請(qǐng)求進(jìn)行難度判斷和分配,服務(wù)管理器將簡單任務(wù)請(qǐng)求分配到傳輸控制層的FaaS模塊進(jìn)行處理,將復(fù)雜任務(wù)請(qǐng)求分配到基礎(chǔ)設(shè)施層的協(xié)調(diào)管理器進(jìn)行處理,將困難任務(wù)請(qǐng)求分配到傳輸控制層的私有云代理模塊進(jìn)行處理;
所述步驟5具體包括:
FaaS模塊通過觸發(fā)簡單任務(wù)請(qǐng)求對(duì)應(yīng)的特定事件函數(shù)來對(duì)簡單任務(wù)請(qǐng)求進(jìn)行處理,F(xiàn)aaS模塊通過基礎(chǔ)設(shè)施層中的Docker容器的容器API單元?jiǎng)?chuàng)建容器供簡單任務(wù)請(qǐng)求使用,通過容器來進(jìn)行FaaS模塊的函數(shù)實(shí)例化運(yùn)行,簡單任務(wù)請(qǐng)求完成后將結(jié)果返回終端設(shè)備;
所述步驟5還包括:
協(xié)同服務(wù)管理器將復(fù)雜任務(wù)請(qǐng)求分解成多個(gè)子任務(wù)請(qǐng)求,通過分配單元將多個(gè)子任務(wù)請(qǐng)求按需分配給其他霧節(jié)點(diǎn)進(jìn)行處理,并將未分配的子任務(wù)請(qǐng)求進(jìn)行多輪次的按需分配,直到其他霧節(jié)點(diǎn)全部完成子任務(wù)請(qǐng)求,協(xié)同服務(wù)管理器將所有子任務(wù)請(qǐng)求的處理結(jié)果進(jìn)行合并處理后返回終端設(shè)備;
所述步驟5還包括:
協(xié)同服務(wù)管理器采用指數(shù)移動(dòng)平均方法預(yù)測(cè)霧節(jié)點(diǎn)的性能,霧計(jì)算i的前輪的性能數(shù)據(jù)可表示為{θ1,θ2,...,θk},則k+1的預(yù)期性能為θk+1,根據(jù)指數(shù)移動(dòng)平均公式計(jì)算得:
其中,α表示平滑指數(shù),可根據(jù)實(shí)際需要調(diào)整,表示前k輪的平均值,初始為0;
霧計(jì)算系統(tǒng)架構(gòu)包括應(yīng)用層、傳輸控制層和基礎(chǔ)設(shè)施層,應(yīng)用層、傳輸控制層和基礎(chǔ)設(shè)施層均運(yùn)行在霧節(jié)點(diǎn)之上,應(yīng)用層為霧計(jì)算系統(tǒng)架構(gòu)的最頂層,應(yīng)用層用于管理和處理終端用戶的服務(wù)請(qǐng)求,應(yīng)用層包括訪問控制模塊、請(qǐng)求轉(zhuǎn)發(fā)模塊和服務(wù)管理器,訪問控制模塊包括權(quán)限驗(yàn)證單元,請(qǐng)求轉(zhuǎn)發(fā)模塊中包括請(qǐng)求隊(duì)列單元,服務(wù)管理器用于收集任務(wù)請(qǐng)求的相關(guān)信息,其中,任務(wù)請(qǐng)求的相關(guān)信息包括服務(wù)時(shí)間、數(shù)據(jù)量、任務(wù)類型、設(shè)備類型和緊急程度,通過訪問控制模塊對(duì)租用霧節(jié)點(diǎn)的用戶進(jìn)行管理,其中,服務(wù)請(qǐng)求由UID、待處理數(shù)據(jù)、容器編號(hào)和請(qǐng)求事件組成;請(qǐng)求隊(duì)列單元主要負(fù)責(zé)對(duì)不同的任務(wù)請(qǐng)求做調(diào)度,緊急事件的任務(wù)請(qǐng)求優(yōu)先級(jí)高于非緊急事件的任務(wù)請(qǐng)求優(yōu)先級(jí),請(qǐng)求隊(duì)列單元中設(shè)置的優(yōu)先級(jí)調(diào)度算法根據(jù)任務(wù)請(qǐng)求的等待時(shí)長,增高任務(wù)請(qǐng)求優(yōu)先級(jí),服務(wù)管理器用于驗(yàn)證用戶信息和計(jì)算服務(wù)資費(fèi),根據(jù)任務(wù)請(qǐng)求的不同,將計(jì)算量特別巨大的任務(wù)請(qǐng)求直接轉(zhuǎn)發(fā)給私有云代理模塊處理,根據(jù)任務(wù)請(qǐng)求的不同與BaaS模塊和FaaS模塊間傳遞服務(wù),當(dāng)請(qǐng)求隊(duì)列單元負(fù)載過高時(shí),服務(wù)管理器將服務(wù)進(jìn)行服務(wù)遷移;傳輸控制層為霧計(jì)算系統(tǒng)架構(gòu)的關(guān)鍵層,傳輸控制層主要采用Serverless的FaaS服務(wù)為函數(shù)處理服務(wù),傳輸控制層包括FaaS模塊、應(yīng)用轉(zhuǎn)發(fā)模塊和私有云代理模塊,F(xiàn)aaS模塊根據(jù)供應(yīng)商定義的事件類型觸發(fā)函數(shù),其中,定義的事件類型包括文件更新、時(shí)間和加入總線的消息;基礎(chǔ)設(shè)施層為霧計(jì)算系統(tǒng)架構(gòu)的最底層,主要管理對(duì)象為容器,基礎(chǔ)設(shè)施層包括BaaS模塊、物理硬件、Docker容器和內(nèi)核管理器,BaaS模塊包括協(xié)同服務(wù)管理器和DB數(shù)據(jù)庫,F(xiàn)aaS模塊根據(jù)Docker容器提供的容器API單元的接口使用容器服務(wù);
運(yùn)行過程:終端設(shè)備請(qǐng)求啟動(dòng)應(yīng)用程序,霧節(jié)點(diǎn)開始處理,霧節(jié)點(diǎn)與終端設(shè)備之間使用Wifi或4G或5G移動(dòng)通信進(jìn)行連接,首先訪問的是應(yīng)用層,訪問控制模塊對(duì)終端設(shè)備請(qǐng)求進(jìn)行訪問控制,每個(gè)用戶一個(gè)單獨(dú)的UID,未授權(quán)的用戶一律拒絕,通過權(quán)限驗(yàn)證之后,任務(wù)請(qǐng)求加入到請(qǐng)求轉(zhuǎn)發(fā)模塊的請(qǐng)求隊(duì)列單元中,請(qǐng)求隊(duì)列單元采用優(yōu)先級(jí)對(duì)隊(duì)列中的任務(wù)請(qǐng)求進(jìn)行排序,優(yōu)先級(jí)高的任務(wù)請(qǐng)求先服務(wù),服務(wù)管理器從請(qǐng)求隊(duì)列單元中依次取出任務(wù)請(qǐng)求進(jìn)行分析,首先收集終端設(shè)備已有的信息并對(duì)任務(wù)請(qǐng)求進(jìn)行判斷,如果任務(wù)請(qǐng)求簡單,則直接由傳輸控制層進(jìn)行處理,傳輸控制層接收到任務(wù)請(qǐng)求會(huì)在Serverless的FaaS模塊中處理,F(xiàn)aaS模塊通過任務(wù)請(qǐng)求觸發(fā)特定事件函數(shù),F(xiàn)aaS模塊通過基礎(chǔ)設(shè)施層中的容器API單元?jiǎng)?chuàng)建容器供任務(wù)請(qǐng)求使用,F(xiàn)aaS模塊的函數(shù)實(shí)例化運(yùn)行在容器中,當(dāng)任務(wù)請(qǐng)求完成后將結(jié)果返回終端設(shè)備,回收容器;如果任務(wù)請(qǐng)求復(fù)雜,則轉(zhuǎn)發(fā)到BaaS模塊中的協(xié)同服務(wù)管理器進(jìn)行處理,協(xié)同服務(wù)管理器包括分配單元,預(yù)測(cè)單元和計(jì)算單元,協(xié)同服務(wù)管理器將復(fù)雜任務(wù)請(qǐng)求分解成多個(gè)子任務(wù)請(qǐng)求并通過分配單元將子任務(wù)請(qǐng)求分配給附近可用的其他霧節(jié)點(diǎn)進(jìn)行處理,預(yù)測(cè)單元負(fù)責(zé)獲取其他霧節(jié)點(diǎn)相關(guān)信息,對(duì)后續(xù)分配任務(wù)請(qǐng)求做分析預(yù)測(cè),當(dāng)經(jīng)過多輪循環(huán)分配之后,全部霧節(jié)點(diǎn)完成任務(wù),協(xié)同服務(wù)管理器將結(jié)果合并處理后返回給終端設(shè)備,每輪協(xié)同服務(wù)管理器中循環(huán)分配至附近可用的其他霧節(jié)點(diǎn)的子任務(wù)請(qǐng)求大小均不同,根據(jù)霧節(jié)點(diǎn)系統(tǒng)資源進(jìn)行分配;如果任務(wù)請(qǐng)求困難,則直接轉(zhuǎn)發(fā)到云端進(jìn)行處理,如果任務(wù)請(qǐng)求中有隱私數(shù)據(jù)則使用私有云單元處理,否則使用公有云單元處理,當(dāng)一輪任務(wù)請(qǐng)求完成后,終端設(shè)備繼續(xù)任務(wù)請(qǐng)求,則重復(fù)上述運(yùn)行過程;
當(dāng)一個(gè)終端用戶租用服務(wù),假設(shè)終端用戶為非惡意攻擊的正常使用者,終端用戶發(fā)送服務(wù)請(qǐng)求,霧節(jié)點(diǎn)收到請(qǐng)求之后由應(yīng)用層驗(yàn)證用戶身份,獲得請(qǐng)求許可之后獲得服務(wù)權(quán)限并開始收費(fèi)計(jì)時(shí),終端用戶發(fā)送的任務(wù)請(qǐng)求加入到請(qǐng)求隊(duì)列中,服務(wù)管理器根據(jù)服務(wù)類型的不同解析服務(wù)命令進(jìn)行轉(zhuǎn)發(fā),傳輸控制層接收到服務(wù)命令之后,對(duì)一系列命令進(jìn)行任務(wù)分配,通過內(nèi)核管理器對(duì)分配的任務(wù)分別調(diào)用基礎(chǔ)設(shè)施層的容器API單元?jiǎng)?chuàng)建用戶任務(wù)請(qǐng)求的單獨(dú)容器,當(dāng)容器創(chuàng)建完成之后用戶的計(jì)算服務(wù)命令和存儲(chǔ)服務(wù)命令均由無服務(wù)工具庫進(jìn)行服務(wù);
協(xié)同服務(wù)管理器處理任務(wù)請(qǐng)求的步驟:
第一步,每輪對(duì)任務(wù)請(qǐng)求進(jìn)行判斷,如果超過當(dāng)前節(jié)點(diǎn)的處理能力,則將任務(wù)請(qǐng)求分解成多個(gè)子任務(wù)請(qǐng)求分配給其他霧節(jié)點(diǎn);
第二步,依次尋找合適的霧節(jié)點(diǎn),并判斷霧節(jié)點(diǎn)是否處于空閑狀態(tài),如果霧節(jié)點(diǎn)處于空閑狀態(tài)則根據(jù)公式(1)預(yù)測(cè)霧節(jié)點(diǎn)的性能,根據(jù)霧節(jié)點(diǎn)的性能分配對(duì)應(yīng)的任務(wù)請(qǐng)求量到霧節(jié)點(diǎn)上;
第三步,循環(huán)重復(fù)第二步,直到所有子任務(wù)請(qǐng)求全部完成,將所有子任務(wù)請(qǐng)求的結(jié)果返回到初始霧節(jié)點(diǎn)上;
第四步,初始霧節(jié)點(diǎn)對(duì)所有子任務(wù)請(qǐng)求的結(jié)果合并處理后將結(jié)果返回給終端設(shè)備,本輪任務(wù)請(qǐng)求結(jié)束。
2.根據(jù)權(quán)利要求1所述的基于無服務(wù)器霧計(jì)算系統(tǒng)架構(gòu)的復(fù)雜任務(wù)分配方法,其特征在于,所述步驟5還包括:
困難任務(wù)請(qǐng)求通過傳輸控制層的私有代理模塊進(jìn)行處理,困難任務(wù)請(qǐng)求中有隱私數(shù)據(jù)使用私有云單元進(jìn)行處理,困難任務(wù)請(qǐng)求中沒有隱私數(shù)據(jù)使用公有云單元進(jìn)行處理。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中南大學(xué),未經(jīng)中南大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010311403.3/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種基于UDP分布式小文件存儲(chǔ)系統(tǒng)及其數(shù)據(jù)處理方法
- 一種新型云計(jì)算管理系統(tǒng)
- 一種云計(jì)算管理裝置
- 一種節(jié)能數(shù)據(jù)服務(wù)器架構(gòu)系統(tǒng)
- 一種基于云計(jì)算的客戶信息管理裝置
- 一種基于即時(shí)通訊技術(shù)的通訊系統(tǒng)
- 服務(wù)器系統(tǒng)及分配服務(wù)器的方法
- 一種MMORPG游戲服務(wù)器端
- 一種訪問請(qǐng)求的處理方法、服務(wù)器及存儲(chǔ)介質(zhì)
- 基于Spark技術(shù)的大數(shù)據(jù)脫敏管理系統(tǒng)





