一种网守系统设计方法
【专利摘要】本发明涉及一种网守系统设计方法,该网守系统设计方法首先是客户端的约定,每客户端都有自己的ID号,每个客户端的ID号都不同,每个客户的UDP的本地端口号固定其唯一表达式为7000+ID,端口号与ID号共同为用户识别特征。客户端在进行网络应用时首先应向网守发送自己的ID以便网守更新IP数据库用以方便其他客户端获得自己的IP地址使被叫通讯得以进行。想获得ID为n的客户端的IP就发n到网守,网守找到对应的IP就回复IP,没有就回复0。本网守程序使用的是UDP协议,只要客户端能用UDP协议收发数据,能修改UDP端口号,就可以利用网守与其它与网守有联系的客户端。
【专利说明】一种网守系统设计方法
【技术领域】
[0001]本发明网络通讯【技术领域】,特别是涉及一种网守系统设计方法。
【背景技术】
[0002]目前,TCP/IP是当今应用最广泛的互联网协议,而IP地址是TCP/IP通信协议用来辨识每一系统的网络地址,Internet网络上的每一台主机都分配有一个这样的在全世界范围是唯一的32bit的标识符,就像每一个家有不同地址、每一个手机有不同的号码一样,这样才能知道传输的信号要传输给谁。
[0003]在实际通讯中,往往由于不知道对方的IP地址而“联系不上”。网守不失为解决这一难题的较为理想的方案,但是适合单片机通讯的网守暂时还没有。目前市面上开发的相关软件有很有多像“腾讯QQ”,微软MSN”,“网易泡泡”等即时通讯工具,应用的非常广范。而且更新迅速,功能强大,产品日益成熟…但是,它们都要有自己的客户端,还要登陆指定的服务器。而在连接不到服务器的地方(如局域网)也就一无是处。最重要的是客户端必须是PC机,同时还要有Windows,Unix等操作系统的支持,对一些能够用TCP/IP协议通讯的非PC终端(如单片机)来说就毫无价值。
【发明内容】
[0004]本发明的目的在于提供一种网守系统设计方法,旨在解决单片机通能过计算机网络传递数据时不知道IP地址而无法实现信号传输的问题。
[0005]本发明是这样实现的,一种网守系统设计方法,首先是客户端的约定,每客户端都有自己的ID号,每个客户端的ID号都不同(0〈ID〈最大总人数),每个客户的UDP的本地端口号固定其唯一表达式为7000+ID,端口号与ID号共同为用户识别特征。客户端在进行网络应用时首先应向网守发送自己的ID以便网守更新IP数据库用以方便其他客户端获得自己的IP地址使被叫通讯得以进行。想获得ID为n的客户端的IP就发n到网守,网守找到对应的IP就回复IP,没有就回复O。网守端初始化好后进入被动状态,当收到客户端所发的ID后,判断ID用户是不是该用户的ID (ID等于Remote Port)。如果是则更新IP数据库;如果不是,则在检索IP数据库中搜索该ID所对应的IP。找到就把该IP回复给客户端;找不到就回复0 ;然后再次进入被动状态直到受到下一个客户端所发的ID。
[0006]具体软件设计步骤如下:
[0007]步骤一,用Microsoft Office Access创建Access数据库并命名为dbl.MOD在该数据库中用表向导生成IP data表。并在表中加入ID,IP两个字段并把ID字段设为主键字段。把ID字段的数据类型设定为数字,字段大小设定为5,必添字段属性设为“是”,索引属性设为“有”(无重复);把IP字段的数据类型设定为“文本”,字段大小设定为“20”,必添字段属性设为“是”,索引属性设为“无”(可以重复)。
[0008]步骤二,进入Visual Basic6.0后激活菜单“文件/新建工程”在对话框中选择“创建普通应用程序控制(企业版)”由于要使用数据访问对象DA0(Data Access Object)访问和操作数据库所以要在Visual Basic的工程里面引入DA03.60bject Library。其具体操作为激活菜单“工程/引用”在对话框中找到Microsoft DA03.60bject Library,选中后点确定。
[0009]步骤三,激活菜单“工程/添加模块”,在对话框中选取“新建”系统会自动命名为Modulel双击它进入Code窗口加入以下代码:
[0010]Option Explicit
[0011]Public db As Database
[0012]Public rs2As RecordSet
[0013]代码说明:0ption Expkicit为强制Visual Basic变量定义。即关闭VB的变量不经定义也能使用的功能。在模块中定义的变量相当于c语言里的全局变量,在主程序的所有子过程,函数中都可用。
[0014]步骤四,在form窗体上添加一个Winsock控件系统会自动命名为Winsockl.在form的Code窗口中写入以下代码
[0015]
【权利要求】
1.一种网守系统设计方法,其特征在于,所述的网守系统设计方法,首先是客户端的约定,每客户端都有自己的ID号,每个客户端的ID号都不同,每个客户的UDP的本地端口号固定其唯一表达式为7000+ID,端口号与ID号共同为用户识别特征;客户端在进行网络应用时首先应向网守发送自己的ID以便网守更新IP数据库用以方便其他客户端获得自己的IP地址使被叫通讯得以进行;想获得ID为η的客户端的IP就发η到网守,网守找到对应的IP就回复ΙΡ,没有就回复O ;网守端初始化好后进入被动状态,当收到客户端所发的ID后,判断ID用户是不是该用户的ID (ID等于Remote Port);如果是则更新IP数据库;如果不是,则在检索IP数据库中搜索该ID所对应的IP ;找到就把该IP回复给客户端;找不到就回复O ;然后再次进入被动状态直到受到下一个客户端所发的ID。
2.如权利要求1所述的网守系统设计方法,其特征在于,具体步骤如下: 步骤一,用Microsoft Office Access创建Access数据库并命名为dbl.MOD在该数据库中用表向导生成IP data表,并在表中加入ID,IP两个字段并把ID字段设为主键字段,把ID字段的数据类型设定为数字,字段大小设定为5,必添字段属性设为“是”,索引属性设为“有”;把IP字段的数据类型设定为“文本”,字段大小设定为“20”,必添字段属性设为“是”,索引属性设为“无”; 步骤二,进入Visual Basic6.0后激活菜单“文件/新建工程”在对话框中选择“创建普通应用程序控制”由于要使用数据访问对象DAO访问和操作数据库所以要在Visual Basic的工程里面引入DA03.60bject Library ;其具体操作为激活菜单“工程/引用”在对话框中找到 Microsoft DA03.60bject Library,选中后点确定; 步骤三,激活菜单“工程/添加模块”,在对话框中选取“新建”系统会自动命名为Modulel双击它进入Code窗口加入以下代码:`
Option Explicit
Public db As Database
Public rs2As RecordSet 代码说明:0ption Expkicit为强制Visual Basic变量定义,即关闭VB的变量不经定义也能使用的功能,在模块中定义的变量相当于c语言里的全局变量,在主程序的所有子过程,函数中都可用; 步骤四,在form窗体上添加一个Winsock控件系统会自动命名为Winsockl.在form的Code窗口中写入以下代码
【文档编号】H04L12/66GK103780479SQ201410033463
【公开日】2014年5月7日 申请日期:2014年1月24日 优先权日:2014年1月24日
【发明者】江明华 申请人:重庆电子工程职业学院