ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> .NET技术
路由模拟——类设计的声明部分
一, 全局名空间

路由模拟系统中所有全局变量与函数皆实现在一个名空间中。





名空间:NetSource

名空间内变量:

#define NULL 0

//网络设备类型表

enum NetElementType{FIBER=1,CENTRALROUT};

//路由IP地址长度

const int IP_ADDRESS_LENGTH=32;

//路由表最大长度

const int MAX_ROUT_TABLE_SIZE=100;

//路由器端口最大数据包容量

const int MAX_DATA_QUEUE_LENGTH=20;

名空间内函数:

//判断两个IP地址是否相等

bool AddrEqual(const unsigned int * addr1,const unsigned int * addr2);



二,类设计

路由模拟系统的类根据前文档类图设计。所有类的构造函数与析构函数接口说明略。



1, 网络元素

类名: NetElement

类的性质: 纯虚基类

父类: 无

类的主要属性:

// 网络设备的类型

< protected > NetElementType netElementType;

类的主要接口:

// 获得网络设备的类型

< public > virtual NetElementType GetType(void) = 0;



2, 网络线路

类名: AbsLine

类的性质: 纯虚基类

父类: 公有继承NetElement

类的主要属性:

继承属性略;



// 网络线路的长度

< protected > int length;

类的主要接口:

< public > virtual void SetLength(int _length) = 0;

< public > virtual int GetLength(void) = 0;



3, 光纤

类名: Fiber

类的性质: 可实例化子类

父类: 公有继承AbsLine

类的主要属性:

继承属性略;

类的主要接口:

// 获得网络设备的类型

< public > NetElementType GetType(void);

// 设置线路物理长度

< public > virtual void SetLength(int _length);

// 获得线路物理长度

< public > virtual int GetLength(void);



4, 路由器

类名: AbsRout

类的性质: 纯虚基类

父类: 公有继承NetElement

类的主要属性:

继承属性略;

// 路由器自身地址

< protected > int selfAddress[IP_ADDRESS_LENGTH];

// 路由表

< protected > Table routTable;

//当前IP数据包

< protected > NetData currTPData;

//数据端口

< protected > std::list <NetData> dataInList;

< protected > std::list <NetData> dataOutList;

< protected > std::list <NetData>::iterator dataIter;

//当前数据端口数据量

< protected > int dataListLength;

类的主要接口:

// 路由器发送数据至端口

< protected > virtual void SendData(void) = 0;

// 路由器从端口接收数据

< protected > virtual void ReceiveData(void) = 0;

// 网络向路由器端口写数据

< public > virtual bool NetWriteData(NetData & _netData) = 0;

// 网络从路由器端口接收数据

< public > virtual NetData * NetReadData() = 0;

// 设置路由表

< public > virtual void SetRoutTable(void);

//路由计算:函数指针

< protected > void (*RoutCompute)(int **_netArray,int **_valArray,

int **&result,int routNum,int index);

// 对当前数据包进行路由计算

< protected > void DataRoutCompute(void);

//设置路由计算方法

< public > void SetComputeMethods(void _routCompute(int **,int **,

int **&,int,int));

// 设置自身地址

< public > virtual void SetSelfAddress(

unsigned int addr[IP_ADDRESS_LENGTH]);

// 获得自身地址

< public > virtual unsigned int * GetSelfAddress(void);

// 空

< public > virtual void SetNetInfor(int ** _netArray, int ** valArray,

int _routNum);

// 产生数据

< public > void MakeData(NetData & netData);

5, 中心路由器

类名: CentralRout

类的性质: 可实例化子类

父类: 公有继承AbsRout

类的主要属性:

继承属性略;

//网络信息

< private > int **netArray,**valArray;

//发送数据包跟踪器

< private > double id;

类的主要接口:

// 获得设备类型

< public > virtual NetElementType GetType(void);

//网络向端口发送数据

 
 
本站关键词:
|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀|东莞国内域名注册|网页开发|域名注册|空间租用|东莞网站开发|东莞企业网站建设|国际内域名注册|石龙 虎门 中堂|望牛墩 麻涌镇 石碣镇|高埗镇 洪梅镇 道滘镇|厚街镇 沙田镇 长安镇| 寮步镇 大岭山 大朗諀
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有