欢迎来到天天文库
浏览记录
ID:40555825
大小:78.00 KB
页数:9页
时间:2019-08-04
《IP参数远程配置实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Ip参数远程配置IP参数远程配置实现2002年11月28日9Ip参数远程配置IP参数远程配置实现一、原理任何一个EMU接收到从应用层发来的命令后,根据接收到的IP远程配置参数,按照规定的协议要求重新组建一个新的帧,通过所有的端口(目前仅使用了一个以太网口和32个DCC口)将该帧转发出去。任何一个NE节点收到这样的帧后,首先读取自己的拨号开关,然后将自己的拨号开关值与收到的帧中的各个拨号开关值进行比较,根据比较的结果有两种可能:(1)如果有匹配的,则将对应的配置信息读出来,并将其写进FLASH。然后再将收到的帧通过收到帧的端口以外的所有端口
2、转发出去。转发后该EMU盘自动复位,复位后的两分钟内,不再相应类似的事件。(2)如果没有匹配的拨号开关号,该NE不做任何事情,只是将收到的帧通过收到帧的端口以外的所有端口转发出去。转发后两分钟内,不再相应类似的事件。二、定义的数据结构,全局变量和宏(1)数据结构typedefenum{true=1,false=0}bool_ip_remote_cfg;/*判断真假*/typedefstructip_remote_cfg_frame_dcc_header{unsignedlongheader_sig_front;unsignedlonghe
3、ader_sig_behind;unsignedshortheader_chk;unsignedshortlen;unsignedshortheader_ttl;unsignedshortheader_nenum;}IPREMOTE_CFG_FRAME_DCC_HEADER;/*新组建的帧的帧头的结构*/(2)全局变量9Ip参数远程配置intformed_ip_remote_cfgframe_size_dcc=0;/*新组建的通过DCC口发送的帧的长度*/intformed_ip_remote_cfgframe_size_ether=0;
4、;/*新组建的通过以太网口发送的帧的长度*/unsignedlonglast_ticks_since_start_ipremotecfg=0;/*记录上一次处理IP参数远程配置时EMU盘的上电时间*/unsignedlongticks_since_start_ipremotecfg;;/*记录EMU盘的上电时间*/(1)宏定义TICKS_PER_SECOND_IPREMOTECFG20/*记录EMU盘时钟的ticks/second*/IPREMOTE_CFG_INTERVAL2/*IP参数远程配置的保护时间*/ether_port_num
5、0/*目前使用的以太网发送函数用到的以太网端口号*/ip_remote_cfgframe_header_length16/*新组建的帧的帧头的长度*/ether_block_header14/*通过以太网口发送新组建的帧时,需要附加的帧头的长度*/(2)外部变量externunsignedlongticks_since_start_ipremotecfg;/*记录EMU盘的上电时间,在init_protocols.c中定义,初始化为0*/externlogio_hw_addr_thwaddr;/*记录EMU盘MAC地址的数据结构*/ext
6、ernETH860_CLASShdlc_class;;/*DCC发送函数用到的数据结构*/(3)外部函数externintMcfReadSet(unsignedchar*buffer,int*config_length)/*读FLASH的函数*/externintMcfWriteSet(unsignedchar*buffer,int*config_length)/*写FLASH的函数*/二、需要用到的函数(1)协议层提供给应用层的接口函数voidsend_ip_remote_cfgframe_ws_emu(unsignedchar*ws_
7、to_ne_buffer,unsignedshort*length)9Ip参数远程配置参数1)unsignedchar*ws_to_ne_buffer:应用层传递给协议层的与配置信息相关的数据,其具体内容如下,其中蓝色部分为网元配置信息。配置网元个数m,TTL,(第一个网元)地址开关1,地址开关2,配置长度1,配置长度2,配置类型,基本配置(N字节,详细内容另行描述),扩展配置(M字节,详细内容另行描述),(第二个网元)地址开关1,地址开关2,配置长度1,配置长度2,配置类型,基本配置(N字节,详细内容另行描述),扩展配置(M字节,详细内
8、容另行描述),……(第m个网元)地址开关1,地址开关2,配置长度1,配置长度2,配置类型,基本配置(N字节,详细内容另行描述),扩展配置(M字节,详细内容另行描述)参数2)unsignedsh
此文档下载收益归作者所有