m基于MATLAB的弹性网络性能仿真与分析,包括频谱利用率和业务阻塞率

简介: m基于MATLAB的弹性网络性能仿真与分析,包括频谱利用率和业务阻塞率

1.算法仿真效果
matlab2022a仿真结果如下:

02bd77eb62e16b0538c65b93bc161389_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
e48840b37a1ab2d2dbd65abb8db521a6_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

2.算法涉及理论知识概要
弹性网络是一种高度灵活的网络架构,可以根据网络流量和业务需求动态调整网络资源。相比传统网络,弹性网络能够更好地适应不断变化的业务需求和网络拓扑,从而提高网络的性能和可靠性。在弹性网络中,频谱利用率和业务阻塞率是两个重要的性能指标,本文将详细介绍它们的定义、计算方法以及影响因素。

一、频谱利用率

  频谱利用率是指在一定时间内,网络所使用的频谱资源占总可用频谱资源的比例。在无线通信系统中,频谱资源是有限的,因此频谱利用率的提高可以提高网络的容量和效率,减少网络拥塞和业务阻塞。

 其中,已使用的频谱资源指在一定时间内,网络中所有的信号所占用的频谱资源,总可用的频谱资源是指该频段内所有可用于通信的频率资源。通常情况下,频谱利用率的单位是百分比。在实际应用中,频谱利用率的计算可以根据不同的网络类型和技术进行调整。

  对于移动通信网络,频谱利用率是一个非常重要的性能指标,它直接影响到网络的容量和质量。在移动通信网络中,频谱资源是非常有限的,因此需要合理规划和管理频谱资源,以提高频谱利用率和网络的容量。通常情况下,移动通信网络中的频谱资源是按照频段进行划分的,每个频段内包含多个信道,每个信道可以支持一定的数据传输速率。为了提高频谱利用率,移动通信网络通常采取以下措施:

 频谱资源的动态分配和共享:在移动通信网络中,不同的用户和业务需要的频谱资源是不同的,因此可以通过动态分配和共享频谱资源来提高频谱利用率。例如,移动通信网络可以根据用户的需求和当前网络负载情况,动态地分配和共享频谱资源,以避免频谱资源的浪费和闲置。

 频谱资源的重复利用:在移动通信网络中,频谱资源的重复利用可以提高频谱利用率。例如,移动通信网络可以通过使用跳频和扩频等技术,将同一频段内的频谱资源分配给不同的用户和业务,从而提高频谱资源的利用效率。

 频谱资源的优化配置:移动通信网络可以通过合理的频谱资源配置和优化,提高频谱利用率。例如,可以采用多小区共享频率、小区间频率重叠等技术,以减少频率资源的浪费和提高频率资源的利用效率。

二、业务阻塞率

  业务阻塞率是指在一定时间内,由于网络资源不足而无法满足用户请求的比例。在网络中,业务阻塞率是一个非常重要的性能指标,它直接影响到用户体验和网络的可靠性。当网络负载过高或网络资源不足时,业务阻塞率会增加,导致用户无法正常使用网络服务。因此,业务阻塞率的降低是提高网络性能和用户体验的重要手段。

 其中,未能满足用户请求的业务量指在一定时间内,由于网络资源不足而无法满足用户请求的业务量,用户总请求业务量指在同一时间内,所有用户的请求业务量总和。业务阻塞率通常以百分比表示,其值越小说明网络性能越好。

  业务阻塞率的影响因素非常多,包括网络拓扑结构、网络资源配置、网络负载等多个方面。下面将分别介绍这些因素对业务阻塞率的影响。

3.MATLAB核心程序

        K_path = [];
        for kr=1:K_Nslot             
            KL=size(Pathset{kr});
            for kc=1:KL(2)
                K_path(kr,kc) = Pathset{kr}(kc);
            end
        end

        Path_cL = size(K_path);
        for kr=1:Path_cL(1)
            for kr2=1:Path_cL(2)-1
                if K_path(kr,kr2+1)~=0
                   Path_cL0                    = ONET_idx(K_path(kr,kr2),K_path(kr,kr2+1));
                   Arrreq_infor(kr,Path_cL0+8) = 1;     
                end
            end
        end    


        for ks=1:K_Nslot         
            Req_L = size(Req_infor);
            for r1=1:Req_L(1)
                if Arrreq_infor(ks,3) >= Req_infor(r1,5)&&Req_infor(r1,1)~=0
                    for r2=10:LinksN+9
                        if Req_infor(r1,r2)==1
                            for r3=Req_infor(r1,9):Req_infor(r1,9)+Req_infor(r1,8)-1
                                link_infor(r2-9,r3) = 0;
                            end
                        end
                    end
                    for r2=1:Req_L(2)
                        Req_infor(r1,r2)=0;
                    end
                end
            end            
            %确定到达请求的请求索引
            for r1=1:Req_L(1)
                Ej=0;
                if Req_infor(r1,1)==0
                   Req_infor(r1,:)= [Req_idx,Arrreq_infor(ks,:)];
                   Ej             = 1;
                   Arrreq_idxx    = r1;
                   break
                end
                if r1==Req_L(1)&&Ej==0
                    Req_infor(r1+1,:) = [Req_idx,Arrreq_infor(ks,:)];
                    Arrreq_idxx       = r1+1;
                end
            end

            Path_lens2 = Req_infor(Arrreq_idxx,7);
            Bws        = Req_infor(Arrreq_idxx,6);
            islong=0;        
            if Path_lens2<=Max_dist
                Slots_number=Bws/12.5;     
                Req_infor(Arrreq_idxx,8)=ceil(Slots_number);
            else
                Num_bad=Num_bad+1;
                for Req_infor_row=1:LinksN+9
                    Req_infor(Arrreq_idxx,Req_infor_row)=0;
                end
                islong=1;
                break
            end
            Linkij2 = [];

            %这个模块不加入重构,那么假设由于频谱杂乱导致有效频率数量为:
            F = (1/Min_bw-1/Max_bw)*[1+sum(Req_infor(:,8))]/Max_Nslot;
            Max_Nslot2 = Max_Nslot*(1-F);
            if islong==0          
                Linkij=1;
                for r2=10:LinksN+9
                    if Req_infor(Arrreq_idxx,r2)==1
                        Linkij2(Linkij,:) = link_infor(r2-9,:);
                        Linkij            = Linkij + 1;
                    end
                end
                Link_cL2=size(Linkij2);
                %可用的频谱时隙
                SC = 0;
                for ijkl=1:Max_Nslot
                    sum_linkr=0;
                    for Linkij=1:Link_cL2(1)
                        if ijkl+Req_infor(Arrreq_idxx,8)+2*CP_Nslot<=Max_Nslot2
                            SC = SC+1;
                            for ip=ijkl:ijkl+Req_infor(Arrreq_idxx,8)+2*CP_Nslot
                                sum_linkr = sum_linkr + Linkij2(Linkij,ip);
                            end
                        else
                            sum_linkr=1;
                            break
                        end
                    end
                    if sum_linkr==0            
                        for Linkij=1:Link_cL2(1)    
                            for ip=1:Req_infor(Arrreq_idxx,8)
                                link_infor(Linkij2(Linkij,Max_Nslot+1),ijkl+ip+CP_Nslot-1)=1;
                            end
                            Req_infor(Arrreq_idxx,9)=ijkl+CP_Nslot;      
                        end                        
                        break
                    end
                end
                SC=SC/Link_cL2(1);
                %更新成功的请求号和被阻止的请求
                if sum_linkr==0
                    Num_good=Num_good+1;%利用的数量
                    break          
                else
                    for Req_infor_column=1:LinksN+9
                        Req_infor(Arrreq_idxx,Req_infor_column)=0;
                    end
                    if ks==K_Nslot    
                        Num_bad=Num_bad+1;%阻塞的数量
                    end
                end
            end
        end
        Req_idx=Req_idx+1;
    end

    X1(jk,mk)= Lamda(jk,1)*Timehold;
    Y1(jk,mk)= 100*Num_bad/Max_Nreq/MTKL;%业务阻塞率
    Y2(jk,mk)= 100*SC/Max_Nslot;

    end
end
相关文章
|
17小时前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于有序抖动块截断编码的水印嵌入和提取算法matlab仿真
这是一个关于数字图像水印嵌入的算法介绍。使用MATLAB2022a,该算法基于DOTC,结合抖动和量化误差隐藏,确保水印的鲁棒性和隐蔽性。图像被分为N*N块,根据水印信号进行二值化处理,通过调整重建电平的奇偶性嵌入水印。水印提取是嵌入过程的逆操作,通过重建电平恢复隐藏的水印比特。提供的代码片段展示了从块处理、水印嵌入到噪声攻击模拟及水印提取的过程,还包括PSNR和NC的计算,用于评估水印在不同噪声水平下的性能。
|
19小时前
参与辅助服务的用户侧储能优化配置及经济分析(matlab代码)
参与辅助服务的用户侧储能优化配置及经济分析(matlab代码)
|
19小时前
|
数据挖掘
考虑时空相关性的风电功率预测误差建模与分析(matlab程序)
考虑时空相关性的风电功率预测误差建模与分析(matlab程序)
|
1天前
|
算法 计算机视觉
基于表面法线法的二维人脸图构建三维人脸模型matlab仿真
该内容概述了一个使用MATLAB2022a的二维人脸图像三维重建算法。首先,通过人脸检测和对齐,然后运用深度信息估计技术(如Shape from Shading)获取表面法线。接着,结合预训练的三维人脸模型库和二维关键点,通过迭代优化和全局优化构建三维模型。核心程序涉及图像处理、光源方向转换、反射率和表面法线计算,最终重构高度图并显示结果。该方法依赖多视角图像,单幅图像重建可能存在挑战。
|
1天前
|
机器学习/深度学习 算法
m基于Q-Learning强化学习的迷宫路线规划策略matlab仿真
MATLAB 2022a仿真实现了Q-Learning算法在迷宫路线规划中的应用,展示多幅模拟结果图。Q-Learning是无模型强化学习算法,通过迭代更新动作价值函数寻找最优策略。在迷宫问题中,代理通过ε-greedy策略平衡探索与利用。MATLAB核心程序遍历状态空间,更新Q表,直至找到终点。
5 0
|
2天前
|
安全 网络安全 数据库
01-Web 网络安全纵观与前景分析
01-Web 网络安全纵观与前景分析
|
2天前
|
机器学习/深度学习 自然语言处理 运维
随机森林填充缺失值、BP神经网络在亚马逊评论、学生成绩分析研究2案例合集2
随机森林填充缺失值、BP神经网络在亚马逊评论、学生成绩分析研究2案例合集
|
2天前
|
机器学习/深度学习 存储 数据采集
随机森林填充缺失值、BP神经网络在亚马逊评论、学生成绩分析研究2案例合集1
随机森林填充缺失值、BP神经网络在亚马逊评论、学生成绩分析研究2案例合集
|
2天前
|
机器学习/深度学习 监控 数据可视化
R语言SOM神经网络聚类、多层感知机MLP、PCA主成分分析可视化银行客户信用数据实例2
R语言SOM神经网络聚类、多层感知机MLP、PCA主成分分析可视化银行客户信用数据实例
|
1天前
|
网络协议 Java Linux
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
7 0