m Simulation and analysis of elastic network performance based on MATLAB, including spectrum utilization rate and service blocking rate

Directory

1. Algorithm simulation effect

2. Algorithms involve an overview of theoretical knowledge

3. MATLAB core program

4. Complete algorithm code file


1. Algorithm simulation effect

The matlab2022a simulation results are as follows:

2. Summary of theoretical knowledge involved in algorithms

An elastic network is a highly flexible network architecture that can dynamically adjust network resources according to network traffic and business needs. Compared with traditional networks, elastic networks can better adapt to changing service requirements and network topology, thereby improving network performance and reliability. In an elastic network, spectrum utilization rate and service blocking rate are two important performance indicators. This article will introduce their definitions, calculation methods, and influencing factors in detail.

1. Spectrum utilization

Spectrum utilization refers to the ratio of the spectrum resources used by the network to the total available spectrum resources within a certain period of time. In a wireless communication system, spectrum resources are limited, so an increase in spectrum utilization can improve network capacity and efficiency, and reduce network congestion and service congestion.

Wherein, the used spectrum resources refer to the spectrum resources occupied by all the signals in the network within a certain period of time, and the total available spectrum resources refer to all the frequency resources available for communication in the frequency band. Usually, the unit of spectrum utilization is percentage. In practical applications, the calculation of spectrum utilization can be adjusted according to different network types and technologies.

For mobile communication networks, spectrum utilization is a very important performance index, which directly affects the capacity and quality of the network. In a mobile communication network, spectrum resources are very limited, so it is necessary to plan and manage spectrum resources reasonably to improve spectrum utilization and network capacity. Usually, spectrum resources in a mobile communication network are divided according to frequency bands, and each frequency band includes multiple channels, and each channel can support a certain data transmission rate. In order to improve spectrum utilization, mobile communication networks usually take the following measures:

Dynamic allocation and sharing of spectrum resources: In mobile communication networks, different users and services require different spectrum resources, so spectrum utilization can be improved by dynamically allocating and sharing spectrum resources. For example, a mobile communication network can dynamically allocate and share spectrum resources according to user demands and current network load conditions, so as to avoid waste and idleness of spectrum resources.

Reuse of spectrum resources: In mobile communication networks, the reuse of spectrum resources can improve spectrum utilization. For example, a mobile communication network can allocate spectrum resources in the same frequency band to different users and services by using technologies such as frequency hopping and spread spectrum, thereby improving the utilization efficiency of spectrum resources.

Optimal allocation of spectrum resources: Mobile communication networks can improve spectrum utilization through reasonable allocation and optimization of spectrum resources. For example, technologies such as frequency sharing among multiple cells and frequency overlapping between cells may be used to reduce waste of frequency resources and improve utilization efficiency of frequency resources.

2. Business blocking rate

The service blocking rate refers to the proportion of user requests that cannot be satisfied due to insufficient network resources within a certain period of time. In a network, the service blocking rate is a very important performance indicator, which directly affects user experience and network reliability. When the network load is too high or the network resources are insufficient, the service blocking rate will increase, resulting in users being unable to use network services normally. Therefore, reducing the service blocking rate is an important means to improve network performance and user experience.

Among them, the business volume that fails to meet the user’s request refers to the business volume that cannot satisfy the user’s request due to insufficient network resources within a certain period of time. The service blocking rate is usually expressed as a percentage, and the smaller the value, the better the network performance.

There are many factors that affect the service blocking rate, including network topology, network resource configuration, and network load. The influence of these factors on the service blocking rate will be introduced respectively below.

3.MATLAB core program

................................................ ...................
        
        %data transmission
        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
            % Determine the request index of the arriving request
            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) & amp; & amp; 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 = [];
            
            % This module does not add reconstruction, then assume that the number of effective frequencies due to spectrum clutter is:
            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);
                % available spectrum slots
                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);
                %Update successful request numbers and blocked requests
                if sum_linkr==0
                    Num_good=Num_good + 1;% the amount used
                    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;% the number of blocking
                    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;% business blocking rate
    Y2(jk,mk)= 100*SC/Max_Nslot;
    
    end
end
12_074_m

4. Complete algorithm code file

V