1.一种基于SDN的雾网络任务卸载方法,其特征在于:该方法根据所提网络场景的特性,联合优化任务卸载时延和卸载能耗来最小化卸载总开销,具体包括以下步骤:S1:建立卸载服务志愿节点集;
S2:优化任务传输时网络资源分配;
S3:结合队列和任务卸载代价,优化卸载决策,最大化网络性能;
VN集合建立过程如下:
201、用户k发送卸载请求至SDN控制器,SDN控制器向FN发送节点τi上报请求;
202、FN更新历史平均能耗 更新节点剩余计算能力:其中,参数ω为小于1的遗忘因子,Ei(t)为FNi在t时刻处理卸载任务的能量消耗;
反映FNi在t‑1时刻能量水平;
Ei(t)=li(t)ηiθiθi是FNi一个CPU周期的能耗值,ηi是FNi处理1bit数据需要的CPU周期数,处理结果的传输能耗本模型忽略不计;历史能耗值反映FNi在t时刻的能量水平;
203、若FNi历史能耗低于阈值 FNi会上报剩余处理能力比τi;
如果 低于阈值,则τi为正,表明FN有意愿贡献自己剩余处理能力卸载用户任务,即为VN;小于1的正值参数κi是上报剩余处理能力比调节因子;
204、SDN控制器收集到所有FN上报的剩余处理能力比,建立VN集合,并根据VN集合信息进行VN筛选,作出卸载决策;
最小化系统总卸载时延和任务传输能耗,任务总卸载时延为传输时延 队列时延和任务处理时延 的总和,表示为:其中, μi为FNi的任务服务率;
γi和βi是无线链路路径损耗和阴影因素;Ii和n0分别为干扰功率和噪声功率谱密度;
设VN节点下行链路队列长度为Qi(t),VN数据包队列长度表示为:t+1时刻的队列长度=t时刻队列长度‑t时刻链路的发包数+t时刻数据包的到达数,则VNi的下行链路队列更新过程表示为:Qi(t+1)=max{Qi(t)‑Di(t),0}+Ai(t)其中,Qi(0)=0,Ai(t)为VNi在t时刻的数据包到达数,其服从泊松分布;Di(t)为VNi在t时刻已卸载任务包数,每个数据包的大小为L,单位为bit,得:αk.i∈{0,1}表示用户k与VNi之间的连接指示变量,αk,i=1表示用户k与VNi连接,反之αk,i=0;
为最小化系统总卸载时延和任务传输能耗,优化问题表示为:C2:0≤pi≤pmax,
约束条件C1在最小化任务卸载总代价的同时保证每个VNi队列稳定的需求;约束条件C2为单个用户的传输功率约束;约束条件C3为卸载任务的VNi最大传输功率约束;约束条件C4为卸载决策变量;αk,i=1表示用户k与VNi连接,反之αk,i=0,约束条件C5表示剩余处理能耗比和调节因子约束;
基于Lyapunov优化建模,步骤如下:
1)定义系统的Lyapunov函数:L(Q(t))表示系统中队列的积压情况度量,取值越大表明系统中任务卸载请求的积压越多;
2)定义Lyapunov转移函数:ΔQ(t)=E{L(Q(t+1))‑L(Q(t))|Q(t)}得:
根据队列的状态更新方程得:
2 2
Qi(t+1) ≤(Qi(t)‑Di(t)+Ai(t))
3)定义Lyapunov惩罚项:
4)系统优化问题转化:
s.t.C2~C5
根据Lyapunov优化理论,将最小化任务卸载总时延和能耗转化为每个时隙内最小化偏移函数加惩罚项,在保证系统队列稳定性前提下,最小化任务卸载代价;在Lyapunov转移函数里加上Lyapunov惩罚项,即任务卸载到VN代价,表示为:其中,控制参数V>0是用于平衡对列稳定性和目标函数的权重因子;得Lyapunov一阶转移惩罚项为:
据此,根据系统优化目标,得到如下优化方程:s.t.C1:0≤pi≤pmax,解决两个子问题:1)最优功率分配2)最优任务卸载决策;为降低问题的求解复杂度,通过拉格朗日对偶原理及次梯度更新方法进行求解求得方案;采用拉格朗日对偶法求得最优功率分配,拉格朗日函数如下:其中,αk和βm分别是约束条件C1和C2所对应的拉格朗日乘子,且对 m均满足αk≥0和βm≥0;设存在最优解 使得上式目标函数最优,且满足所有约束条件;根据KKT条件,通过拉格朗日函数L(p,αk,βm)对 求导方程求解最优功率分配。