91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

差額加權(quán)輪詢算法Matlab仿真,輸出包含數(shù)據(jù)包到達(dá)速度、隊列發(fā)送速度、數(shù)據(jù)包平均時延。

資源截圖

代碼片段和文件信息

clc;
clear?all;

%初始化各隊列模型
lambda?=[2.4?2.4?2.4?2.4?];?%泊松流參數(shù)
queue_num?=?4;?%隊列個數(shù)
Bandwidth?=?5000;?%帶寬
packet_size?=?256;
for?i?=?1:queue_num
????ari_mean(i)?=?1/lambda(i);
????ari_num?=?100000;?%到達(dá)數(shù)據(jù)包個數(shù)
????ari_interval?=?[];
????ari_interval(i:)?=?exprnd(ari_mean(i)1ari_num);?%平均間隔時間
????ari_time(i:)?=?cumsum(ari_interval(i:));????%每個數(shù)據(jù)包到達(dá)時間
end

%根據(jù)優(yōu)先級分配初始Dc
pri?=?[7?5?4?2];
for?i?=?1:queue_num
????Dc_pri(i)?=?(pri(i)/sum(pri))*Bandwidth;
end

polltimes?=?5000;?%輪詢次數(shù)
sys_time_DWRR?=?zeros(polltimes+1queue_num);?%系統(tǒng)時間
sys_time_DWRR(11)?=?1;
packet_ari_DWRR?=?zeros(polltimesqueue_num);?%數(shù)據(jù)包到達(dá)個數(shù)
packet_wait_DWRR?=?zeros(polltimesqueue_num);?%數(shù)據(jù)包排隊個數(shù)
packet_send_DWRR?=?zeros(polltimesqueue_num);?%數(shù)據(jù)包發(fā)送個數(shù)
packet_send_DWRR(1:)?=?0;
packet_time_DWRR?=?zeros(ari_numqueue_num);?%數(shù)據(jù)包發(fā)送時間
send_num_DWRR?=?zeros(polltimesqueue_num);
Dc_DWRR?=?zeros(polltimes+1queue_num);?
time_interval?=?0.5;
for?i?=?1:polltimes
????for?j?=?1:queue_num
????????Dc_DWRR(1j)?=?Dc_pri(j);
????????if?j==1
????????????packet_ari_DWRR(ij)?=?sum(ari_time(j:)?????????elseif?j>1
????????????packet_ari_DWRR(ij)?=?sum(ari_time(j:)?????????end
????????if?i==1
????????????packet_wait_DWRR(ij)?=?packet_ari_DWRR(ij);
????????else
?????????????packet_wait_DWRR(ij)?=?packet_wait_DWRR(i-1j)+packet_ari_DWRR(ij)-packet_ari_DWRR(i-1j)-send_num_DWRR(i-1j);
????????end????
??????????
????????if?packet_wait_DWRR(ij)>0?&&?Dc_DWRR(ij)>=packet_size?%有數(shù)據(jù)包等待發(fā)送且Dc夠用
????????????if?Dc_DWRR(ij)????????????????send_len(ij)?=?floor(Dc_DWRR(ij)/packet_size)?*?packet_size;?%單次輪詢發(fā)送的數(shù)據(jù)包大小
????????????else
????????????????send_len(ij)?=?packet_wait_DWRR(ij)*packet_size;
????????????end
????????????send_num_DWRR(ij)?=?send_len(ij)/packet_size;?%發(fā)送數(shù)據(jù)包個數(shù)
????????????packet_send_DWRR(ij)?=?sum(send_num_DWRR(:j));
????????????send_time(ij)?=?send_len(ij)/Bandwidth;?%數(shù)據(jù)包發(fā)送時間
????????????if?i==1?&&?j==1
????????????????sys_time_DWRR(ij)?=?sys_time_DWRR(1)+send_time(ij);
????????????elseif?i>1?&&?j==1
????????????????sys_time_DWRR(ij)?=?sys_time_DWRR(ij)+send_time(ij);
????????????elseif?j>1?&&?j????????????????sys_time_DWRR(ij)?=?sys_time_DWRR(ij-1)+send_time(ij);
????????????elseif?j==queue_num
????????????????sys_time_DWRR(ij)?=?sys_time_DWRR(ij-1)+send_time(ij);
????????????????sys_time_DWRR(i+11)?=?sys_time_DWRR(ij);
????????????end
????????????n?=?sum(packet_time_DWRR(:j)~=0);
????????????for?k?=?n+1?:?n+send_num_DWRR(ij)
????????????????packet_time_DWRR(kj)?=?sys_time_DWRR(ij)-(packet_size/Bandwidth)*(n+send_num_DWRR(ij)-k);?%計算每個數(shù)據(jù)包發(fā)送的時間
????????????end
????????????Dc_DWRR(i+1j)?=?Dc_DWRR(ij)-send_len(ij);?%Dc減去已發(fā)送的數(shù)據(jù)長度

評論

共有 條評論