APP下载

采集终端在线动态修改IP地址研究与应用

2018-05-16

单片机与嵌入式系统应用 2018年5期
关键词:端口号主站网卡

(淮阴工学院 计算机与软件工程学院,淮安 223001)

引 言

采集终端在线动态修改IP地址是当今智能化时代的需求,它不仅衡量着产品的性能,还关联着节约人力资源、减少人为操作失误、方便主站管理等优点[1],因此在采集终端设计的过程中添加“在线动态修改IP地址”功能是必不可少的。

本文设计了基于LPC1788嵌入式微控制器、K9F1G08U0A片外NandFlash和DP83848网络接口作为核心模块组成的采集终端在线动态修改IP系统,完成了短时间内快速动态修改IP,主站重新以新的目标IP地址连接采集终端的实验,有效地减少了人为断电上电或复位的操作量和响应时间。

1 系统组成结构

采集终端在线动态修改IP系统的结构如图1所示, 主站和采集终端之间用以太网连接,DP83848以太网模块[10-11]用于接收主站发送的报文,K9F1G08U0A片外NandFlash用于存储重要信息(如终端版本信息、终端IP地址等),LPC1788用于控制寄存器和相关模块,JTAG仿真调试接口用于下载程序调试仿真。

图1 系统结构图

2 动态修改IP实现原理

动态修改IP流程如图2所示,主站和采集终端采用TCP/IP协议通信,主站作为客户端,采集终端作为服务器,在主站的通信方式里输入采集终端默认设置的IP地址(192.168.1.5)和端口号(5000);请求进行连接,连接成功后,发送新IP地址的报文给采集终端,采集终端通过网络模块接收到内容后,根据Q/GDW-376.1协议从报文中提取出有效帧,校验帧的合法性以及是否需要修改IP地址,如果帧合法且需要修改IP地址,则把新的IP地址存放在NandFlash中[8-9],然后禁用默认网卡“netif_set_down(netif_default)”,读取NandFlash中的IP地址,写入默认网卡“netif_

set_addr(netif_default, &ipaddr, &netmask, &gw)”,延时1 s,再次使能网卡“netif_set_up( netif_default)”。此时终端会重新创建socket,绑定新的终端IP地址(如192.168.1.10)和端口号(8080),并对端口号进行监听,等待主站的请求连接。此时主站会自动断开连接,重新在通信方式中输入新的IP地址(192.168.1.10)和端口号(8080),可以建立新的连接,如果没有内容需要发送,可以根据需要发送断开报文帧给终端,请求断开连接[2-7]。

图2 动态修改IP地址流程

3 系统测试与结果分析

测试结果如图3所示,主站先以IP :192.168.1.5,端口号:5000 与终端连接,并发送了修改IP地址的报文。根据Q/GDW-376.1协议,如图4所示,报文的 DAT链路用户数据部分,第一个字节为应用层功能码AFN=04,帧序列号SEQ=72,数据单元标识Pn=0000、Fn=4000,数据单元:C0 A8 01 0A FF FF FF 00 C0 A8 01 01(16进制),对应为十进制是192 168 1 10 (新IP地址)、255 255 255 0(子网掩码)、192 168 1 1(网关)。终端接收后处理报文,创建新的socket绑定新的IP地址192.168.1.10,端口号为8080,并对端口号进行监听,主站以新的IP地址和端口号能够迅速与终端进行连接。

图3 测试结果

图4 链路用户数据层格式

4 实际应用案列

本设计应用在如图5所示的油井智能终端中,能够根据主站修改IP命令,实时修改IP地址,性能满足实时性、便捷性要求。

图5 油井智能终端

结 语

参考文献

[1] 吕京建.嵌入式因特网技术的兴起与前景[J].今日电子,2000(S1):4-5.

[2] Ju H,Choi M,Hong J W.An efficient and lightweight embedded Web server for Web‐based network element management[J].International Journal of Network Management,2015,10(5):261-275.

[3] 陈利锋,刘博勤,涂时亮,等.嵌入式系统网络互连技术的设计与实现[J].计算机科学,2001,28(10):100-103.

[4] 苏勇辉.基于ARM微处理器TCP/IP协议栈LwIP实现[J].国外电子测量技术,2009,28(10):76-78.

[5] 王慧青,张小国,丁晗.一种基于移动终端动态IP地址的数据实时传输方法:中国,CN105610997A[P].2016.

[6] 李庆江.基于LwIP协议栈的嵌入式Web服务器的设计及实现[J].齐鲁工业大学学报,2008,22(4):97-100.

[7] 石广治,刘波,姜秀杰,等.基于ARM的嵌入式系统以太网通讯设计[J].微计算机信息,2010,26(32):80-82.

[8] Gou H L,Liang G Z,Xie H Q.Application of K9F1G08U0A in MSP430 sigle chip system[J].Hebei Journal of Industrial Science&Technology,2009.

[9] 李晴.高速大容量NAND FLASH存储系统的设计与实现[D].北京:北京理工大学,2015.

[10] 陈冬发,朱宁西.基于ARM-LPC2368的网络接口的设计与实现[J].微计算机信息,2008,24(14):119-120.

[11] 于春雪.基于STM32F107的高速以太网接口设计与应用[J].电声技术,2011,35(9):63-67.

猜你喜欢

端口号主站网卡
在Docker容器中安装应用程序
Server 2016网卡组合模式
浅谈以java为基础的Socket通信简介及实现
EtherCAT主站与主站通信协议的研究与实现*
多表远程集抄主站系统
挑战Killer网卡Realtek网游专用Dragon网卡
Winsock编程在《计算机网络基础》教学中的应用
基于Android系统的互动展示APP的研究与设计
基于改进经济压差算法的主站AVC的研究
关口电能计量故障监测报警装置及主站研究