(1)增加包头部hdr_ldp。hdr_mpls hdr_ldp定义了各种LDP(Label Distribution Protoco1)消息的包头部:
struct hdr_ldp {
int msgtype;
int msgid; // 请求消息id(由请求消息触发的映射消息)
msgid // 大于一l,说明由请求消息触发,否则不是
int fec; // 转发等价类
int label; // 标记
int reqmsgid; // 请求消息id
int status; // 用于通告
char* pathvec; // 路径向量
char* er; // 显式路由
int lspid; // 标记交换路径id
int rc:
int tr_ msgtype;
char tr[100]; //流参数:频率,权值,PDR,PBS,CDR,CBS,EBS int pmt_msgtype;
char pmt[10]; // 优先级
int relabel; // 用于再路由机制
int reiface; // 用于再路由机制
}
Hdr_mpls // 定义了标记数据包的包头部:
Struct shim _header //shim结构
{
int label_ ; //标记
int bflag_ ; // 标志位,1表示是栈底
int ttl_ ; //生存期字段
int exp_ ; //实验字段
}
stmct hdr_ mpls
{
struct shim_header sh[MPLS—MaxShimHdrNB]}; //标记栈
(2)建立部分转发表Pvr(Partial Forwarding Table):用于入口节点转发IP包。
(3)显示路由表ERB(Explicit Route information Base):包含已建立的显式LSP(1abel Switch Path)的信息。
(4)标记信息表LIB(Label Information Base):包含已建立LSP的信息,用于标记数据包的转发。(图4.10)显示了扩展后的MPLS节点结构MPLS仿真器建立起来后,按如下过程进行MPLS仿真:
① 每个节点建立一个LDPAgent对等实体列表,每个条目对应一个邻接点,建立LDP会话;
② 触发标记分发过程,建立标记转发表;
③ 当节点接收到一个数据包时,MPLSClassifier首先检查它是否能够进行标记转发, 如果可以就换成新的标记转发出去,否则交由AddrClassifier进行三层转发;
④ 如果标记分发方式是控制驱动的话,当网络拓扑发生变化时,就要重新发起标记分发过程。
图4.11 MPLS结构图
4.5 QoS仿真试验
通过QoS仿真试验证明:在不同QoS请求的流同时通过MPLS网络时,流的带宽分配情况不同,MPLS仿真器可以实现区分服务。
网络拓扑如(图4.12)所示,节点0和节点5是IP节点,节点1,2,3,4是MPLS节点。该例中有四种负载:简单的数据流SBT;高优先级的数据流HBT;两种实时流RT1和RT2 。拓扑中,除了节点0和节点1之间的链路带宽是2M外,其余都是1M。SBT和HBT的速率为25Ot/s,RTl和RT2的速率分别是350Kbit/s和45OIKbit/s。这样,所有流量的速率总和将大于MPLS网络的单条链路的带宽。
仿真开始后,在0.1秒时先创建三条显式LSP,使得数据流SBT,HBT,RTl通过节点1-2-4这条路径到达目的地址节点5;在1秒时,三个数据源开始发送数据,这时链路带宽可以满足三个数据流的带宽要求。接着在10秒时刻建立第四条显式LSP,使得RT2也要通过节点l-2-4。在第11秒时,RT2开始发送数据, 这时链路带宽不能满足全部4条数据流的带宽要求。
图4.12 QOS仿真实验拓扑图
如图(4.12)所示,在11秒和30秒之间的总占用带宽几乎等于链路总带宽,这时的链路利用率是最高的。并且,RT1和RT2总能得到需要的带宽,SBT和HBT利用剩余带宽,其中HBT可以得到更好的服务。
结果证明MPLS仿真器可以实现区分服务,在带宽不足时,尽量满足高优先级数据流的带宽需求。
5 总结
5.1 心得体会
通过本次毕业设计,让我对NS2有了比较深刻的理解。NS2是一个多协议的模拟仿真工具,目的在与建立一个虚拟的网络平台,来得到人们所在现实生活中无法得出的结论,它有着OPNET等其它软件所没有的独特的优势。现实生活中,仿真技术在建立网络新技术的开发和测试环境中扮演了很重要的角色,NS2消费低,但是却能实现的复杂的网络系统测试。所以不可避免的成为了实现复杂网络系统的测试平台且得到广泛的使用。以前人们为了解决网络中的某些问题,已经建立了许多专用的网络系统测试平台。现在以NS作为仿真引擎,NAM作为可视化工具的VINT通用互联网络协议测试平台,它组合式的组织结构,多层次的抽象建模方法,实验全过程的可视化演示,同真实网络系统的无缝接口,以及包含丰富的拓扑模型或负载模型的模型库,为人们开发、测试网络协议和算法,分析网络性能提供了一种方便的虚拟实验工具,使得人们可以灵活快速地建立各种规模的网络实验模型。
在社会生活中,建立网络仿真模型需要编写tcl脚本程序,NS使用自己定义的地址格式,同因特网中使用的地址有区别,跟踪层次多,格式也各不相同。但是NS有它独特的优势,它凭借其先进的设计思想成为了一种非常有用的网络模拟器。NS使用的是分裂对象模型,能够同时满足模拟性能和灵活性能两方面。 转贴于 酷文网-论文下载中心 http://www.coolwen.net
共9页: 上一页 [1] [2] [3] [4] [5] [6] [7] 8 [9] 下一页
网摘收藏: