一种ns3并行模拟仿真系统的制作方法_2

文档序号:9727559阅读:来源:国知局
8]tar -zxvf rsync-3.0.9.tar.gz
[0039]cd rsync-3.0.9
[0040]./configure —prefix=/usr/local/rsync
[0041]make
[0042]make install
[0043]cd..
[0044]tar -zxvf inotify-tools-3.14.tar.gz
[0045]cd inotify-tools-3.14
[0046]./configure —pref ix = /usr/local/inotify
[0047]make
[0048]make install
[0049](2)创建密码认证文件:
[0050]echo"123456">/etc/rsyncd.secrets (123456为自己设置的密码)[0051 ]chmod 600/etc/rsyncd.secrets
[0052](3)创建Rsync复制脚本:
[0053]本脚本主要是将机器A的目录?/workspace/ns3/NS3_dev/data里的内容,通过Inotify监控,当文件夹中文件内容进行了任何添加、删除和修改时,通过Rsync实时的同步给机器B的相同目录里。
[0054]vim/opt/rsync.sh
[0055]#!/bin/bash
[0056]SRC =/home/cc/workspace/ns3/NS3-dev/data/
[0057]DST = root@192.168.1.3::ftpdata
[0058]/usr/local/inotify/bin/inotifywait-mrq—timefmt ’ %d/%m/%y%H: %M,一format ’ %T%w%f%e’_e modify ,delete ,create ,attrib$SRC| while read files
[0059]do/usr/bin/rsync-vzrtopg—delete—password-f iIe = /etc/rsyncd.secrets$SRC$DST>/dev/null
[0060]Done
[0061]:Wq!
[0062](4)修改权限并加入开机启动:
[0063]chmodu+x/opt/rsync.sh
[0064]echo"/opt/rsync.sh">>/etc/rc.local
[0065]机器B配置:(在sudo su进入root后进行操作)
[0066](I)下载安装软件同机器A;
[0067](2)创建密码认证文件(与A不同,需要用户名)
[0068]echo"root:123456">/etc/rsyncd.secrets
[0069]chmod600/etc/rsyncd.secrets
[0070](3)建立机器B的Rsync配置文件[0071 ]vim/etc/rsyncd.conf
[0072]uid = root
[0073]gid = root
[0074]port = 873
[0075]use chroot = yes
[0076]read only = yes
[0077]hosts allow= 192.168.1.0/255.255.255.0
[0078]hosts deny = *
[0079]max connect1ns = 5
[0080]log f ile = /var/log/rsyncd.log[0081 ]pid file = /var/run/rsyncd.pid
[0082]lock file = /var/run/rsyncd.lock
[0083]log format = %%b
[0084]syslog facility = local3
[0085]timeout = 300
[0086][ftpdata]
[0087 ]path = /home/cc/workspace/ns3/NS3_dev/data
[0088]list = no
[0089]read only = no
[0090]ignore errors
[0091]auth users = root
[0092]secrets file =/etc/rsyncd.secrets
[0093]: wq
[0094](4)启动Rsync服务并将Rsync服务加入启动项
[0095]/usr/local/rsync/bin/rsync—daemon—config=/etc/rsyncd.conf
[0096]ps -efIgrep rsync
[0097]echo〃/usr/local/rsync/bin/rsync—daemon—config=/etc/rsyncd.conf〃>>/etc/rc.local
[0098]在配置完机器A和机器B后,重启两台电脑A和B即可。此外,亦可手动进行同步,命令如下:(在机器A上运行)
[0099]/usr/bin/rsync-vzrtopg—delete—password-f iIe =/etc/rsyncd.secrets/home/cc/work space/ns3/NS3-dev/data/root@192.168.1.3::ftpdata
[0100]以上是两台电脑分发的实现具体步骤。针对三台以上电脑,除电脑A有所不同,其他电脑配置与电脑B相同。对于电脑A的修改只需对Rsync脚本进行修改:
[0101 ]#!/bin/sh
[0102]SRC =/home/cc/workspace/ns3/NS3-dev/data/
[0103]DES = f tpdata
[0104]WEB2 = 192.168.1.**
[0105]WEB3 = 192.168.1.#
[0106]WEB4 = 192.168.1.**
[0107]USER = root
[0108]/usr/local/bin/inotifywait -mrq _e create,move,delete,modify$SRC
[0109]while read files
[0110]do
[0111]/usr/bin/rsync -ahqzt —password-fiIe = /etc/rsyncd.secrets —delete
[0112]$SRC $USERi$ffEB2::$DES
[0113]/usr/bin/rsync -ahqzt —password-fiIe = /etc/rsyncd.secrets —delete
[0114]$SRC$USERi$ffEB3::$DES
[0115]/usr/bin/rsync -ahqzt —password-fiIe = /etc/rsyncd.secrets —delete
[0116]$SRC$USERi$ffEB4::$DES
[0117]done
[0118]通过以上的相关配置,便可实现不同计算节点上的文件同步。这样在用户配置完仿真系统的网络拓扑和网络仿真流量任务后,共享文件分发模块会自动向不同的计算节点分发所需文件,各个计算节点即执行相应的任务。
【主权项】
1.一种NS3并行模拟仿真系统,其特征在于,包括: 网络分割模块,作用是对需要仿真的网络拓扑进行网络划分,具体为利用网络分割算法在一个计算节点上将原始完整的网络拓扑按照自己定义的网络划分数目划分成不同的网络分割区域; 共享文件分发模块,作用是进行网络分割结果和网络仿真流量任务分发,任务分发具体为,计算节点通过集群系统的交换矩阵设备通信,负责网络分割的计算节点将网络分割结果告知其它所有计算节点,同时将用户配置好的网络仿真流量任务分发到相应计算节点;仿真过程当中各个计算节点各自负责分发到的流量任务,并生成相应的trace文件和PCAP文件,仿真结束后将各个计算节点上的trace文件合并获得完整仿真结果; 并行模拟仿真模块,作用是利用NS3仿真系统提供的MPI接口搭建NS3并行模拟仿真环境,使底层在仿真时使用并行调度算法,执行并行仿真。2.根据权利要求1所述的NS3并行模拟仿真系统,其特征在于,所述的网络分割算法包括均等分割算法和非均等分割算法;所述的均等分割算法为,当网络划分数目N为偶数个时,将网络拓扑直接利用KL算法进行分割,具体为将网络拓扑分割到A和B两个网络分割区域,A和B内的网络节点数量相等或者多一个,然后不断互换A和B间的网络节点,使得A和B间的链路数量最少,互换后得A’和B’,再将A’和B’分别分割为然后不断互换八! ’和六2 ’间、Bi ’和出’间的网络节点,使六! ’和六2 ’、Bi ’和出’间的链路数量最少,以此类推直至网络拓扑被分割到N个网络分割区域。3.根据权利要求2所述的NS3并行模拟仿真系统,其特征在于,所述的非均等分割算法为,当网络划分数目N为奇数个时,将网络拓扑分割到a和b两个网络分割区域,b内的网络节点数量为Z-Z/N,剩余为a内的网络节点数量,Z为网络节点的总量,b为单独的一个网络分割区域,此时不断交换a和b间的网络节点,直至a和b之间的链路最少,之后再将a中的网络节点按均等分割算法进行多次划分,最后获得分割结果。4.根据权利要求3所述的NS3并行模拟仿真系统,其特征在于:利用网络分割算法迭代运算200次以上,对比分割结果,所分割的网络分割区域间链路数量最少的分割结果接近最优分割结果。5.根据权利要求4所述的NS3并行模拟仿真系统,其特征在于:对网络拓扑中,具有很大流量任务的网络节点赋予较大权重值,网络拓扑被分割成多个部分后,当权重值较大的网络节点被划分到同一个网络分割区域中时,将权重较大的网络节点与其他网络分割区域中的普通的网络节点进行交换,直至权重较大的网络节点均匀分布到不同的网络分割区域中,以此实现权重值较大的网络节点均匀分配到不同的网络分割区域当中。6.根据权利要求5所述的NS3并行模拟仿真系统,其特征在于:所述的并行模拟仿真模块的工作方法为,在执行仿真前,用户基于openmpi进行文件配置,通过mpihosts的添加修改,使NS3并行模拟仿真系统知道网络划分数目、各计算节点的IP地址和可用的CPU内核数,使用openmpi和Iinux系统调度自行调度CPU资源进行计算,使用全局同步算法同步各个CPU计算调度,再经网络分割和任务分发使各计算节点明晰自己所要仿真的拓扑及任务,之后设定仿真起止时间开始进行并行仿真。
【专利摘要】本发明公开了一种NS3并行模拟仿真系统。包括:网络分割模块,作用是进行网络分割;共享文件分发模块,作用是进行任务分发和成果共享;并行模拟仿真模块,作用是利用NS3仿真系统提供的MPI接口搭建NS3并行模拟仿真环境,使底层在仿真时使用并行调度算法,执行并行仿真。本发明具有,仿真时间短和仿真效率高的特点。
【IPC分类】G06F17/50
【公开号】CN105488288
【申请号】CN201510891435
【发明人】任阳阳, 袁进, 李源, 陆飙, 陈利民, 王玮, 陈奎任, 杨耀, 张猛, 撒兴杰, 熊铖, 李由, 郑元伟, 龙诺亚, 张菡, 李伯森, 刘毅, 黎皓, 张祥忠, 刘晓波, 于富财
【申请人】贵州电网公司信息通信分公司, 电子科技大学
【公开日】2016年4月13日
【申请日】2015年12月7日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1