实验十——卫星网络系统仿真实验

卫星网络系统仿真实验

实验要求与目的

理解Iridium和Teledesic卫星网络的基本原理
利用NS2仿真实现Iridium和Teledesic卫星系统

Iridium仿真实验

在进行实验之前先进入此文件夹将Delay.awk文件复制到Iridium
实验十——卫星网络系统仿真实验
实验十——卫星网络系统仿真实验

进入Iridium文件夹
实验十——卫星网络系统仿真实验
执行sat-Iridium.tcl文件

ns sat-Iridium.tcl
 

然后将delay.awk脚本跑出的数据定向输出到delay.txt

awk -f Delay.awk sat-Iridium.tr > delay.txt
 

最后执行plot

plot “delay.txt”
 

实验十——卫星网络系统仿真实验

Teledesic仿真实验

在进行实验之前先进入此文件夹将Delay.awk文件复制到Iridium
实验十——卫星网络系统仿真实验
实验十——卫星网络系统仿真实验

进入Teledesic文件夹
实验十——卫星网络系统仿真实验
执行sat-teledesic.tcl文件

ns sat-teledesic.tcl
 

然后将delay.awk脚本跑出的数据定向输出到delay.txt

awk -f Delay.awk sat-Iridium.tr > delay.txt
 

最后执行plot

plot “delay.txt”
 

实验十——卫星网络系统仿真实验

脚本文件

delay.awk

BEGIN{
	highest_packet_id=0;
}
{
	action=$1;
	time=$2;
	from=$3;
	to=$4;
	type=$5;
	size=$6;
	flow_id=$8;
	src=$9;
	dst=$10;
	seq_no=$11;
	packet_id=$12;
	if(packet_id>highest_packet_id)
		highest_packet_id=packet_id;
	if(start_time[packet_id]==0)
		start_time[packet_id]=time;
		if(flow_id==0&&action!="d"){
			if(action=="r"&&to=="67"){
				end_time[packet_id]=time;
			}else{
				end_time[packet_id]=-1
		}
	}
}
END{
	for(packet_id=0;packet_id<=highest_packet_id;packet_id++){
		start=start_time[packet_id];
		end=end_time[packet_id];
		delay=end-start;
		if(start<end)
			printf("%f %f\n",start,delay);
	}
}
 
上一篇:使用SQL语句查询某表中所有的主键、唯一索引以及这些主键、索引所包含的字段(转)


下一篇:音视频解码流程