制造网格服务中心与资源节点的通信方法

文档序号:7705423阅读:221来源:国知局

专利名称::制造网格服务中心与资源节点的通信方法
技术领域
:本发明涉及制造网格
技术领域
,具体为一种制造网格的服务中心与资源节点的通信方法。(;)
背景技术
:网络技术和信息技术的快速发展,给制造业带来了深入而广泛的影响。基于网络的制造模式是现代制造业的重要特征,对促进制造能力的提高、制造水平的发展、提高企业竞争力等方面都起到了积极的推动作用。但是,在网络化制造的应用与推广中,由于其自身理论架构的不足,存在着如缺乏统一的标准、开放性不足、可扩展性差等问题。制造网格在充分利用网格标准的基础上,克服了现有网络化制造中的缺失,无疑为当前网络化制造提供了新的发展方向。制造网格是网络化制造的发展,是在网络化制造的技术和方法的基础上,充分利用网格技术所提供的开放的体系框架,通用的标准和规范,统一的开发平台和工具建立的一种通用的、标准的和规范的网络化制造模式。制造网格平台以服务为核心,以分布各地的可提供网格服务的设备、软件系统、数据库、人力等为资源节点,通过对各节点服务的描述与封装,屏蔽资源细节,达到制造网格上的资源共享、协同工作、降低制造成本、提高资源利用率、加快产品上市时间的目的,同时又具有极大的柔性和开放性。制造网格将分布的资源组合起来,形成一个屏蔽资源细节的协同环境,以实现协同制造。制造网格表现给用户的是一个集成化的资源,提供了支持制造网格节点上各类资源实现有效共享的集成机制,支持用户将制造过程分散到分布的制造网格的各资源节点上。.对于制造网格中大量的、多种类型的资源节点,目前,各节点的资源本地自治者——服务提供者根据自己的资源类型,完全独立、自由的定义服务接口。用户在使用资源时,服务中心需要先获得对应资源节点的接口形式,再将用户的需求转化为对应的格式才能与资源节点进行通信。同时,在协同制造过程中还存在着制造、设计、监控等大量的交互信息,由此,造成以下几个问题(1)由于制造网格的各资源节点的技术人员虽具有较丰富的制造行业相关技术,但通常较缺乏计算机编程能力,特别是网络编程能力,因此,在开发服务时,定义服务接口、封装资源都会花费大量的时间、物力和财力,造成开发意愿倦怠,制约了制造网格的发展;(2)由于各节点服务接口的任意性,服务中心需要解析并传递大量的、多种类型的制造、交互、监控等信息,加重了服务中心的负担,尤其在资源数量较大的时候,通信量会急剧膨胀,极大的影响系统的性能;'(3)在资源节点进行增加、变更、减少、删除等服务变更时,都需要重新部署、并与服务中心进行变更通信,工作量较大,同时还产生大量的通信流量。总之,制造网格中的各类任务调度服务,登录服务,资源管理服务,状态监控服务等各类服务均需要服务中心直接为资源节点的远程计算机提供接口才能完成,工作量极大,限制了制造网格的运行与发展。
发明内容本发明的目的是设计一种制造网格服务中心与资源节点的通信方法,采用统一的标准形式的数据包进行各种服务的调用和服务应答,资源节点只提供本地接口,无需远程接口,简化服务部署和调用。本发明所设计的制造网格服务中心和资源节点之间的通信方法为在制造网格平台上有服务中心及与服务中心连接的多个资源节点,服务中心和资源节点分别向对方发送标准格式的服务调用数据包,接收方回送统一标准格式的服务应答数据包并执行服务,双方以通信的方式实现服务调用。所述标准格式的服务调用数据包包括命令头和命令体。命令头包括顺序排列的命令起始标志、命令代码及序列号、源节点地址、目的节点地址;命令体包括顺序排列的相关参数1至参数n、校验码、结束标志;各项之间有间隔符,参数之间有与上述间隔符不同的参数间隔符。,服务应答数据包与服务调用数据包相似,包括应答命令头和应答命令体。命令头包括顺序排列的应答起始标志、命令代码及序列号、命令字、源节点地址、目的节点地址;应答命令体包括顺序排列的相关的参数1至参数m、6校验码、保留位、结束标志;各项之间有间隔符相隔,参数之间用与上述间隔符不同的参数间隔符相隔。命令头主要确定该数据包的通信主体,即服务请求方、接收方及命令字,命令体则为具体的参数。命令起始标志和应答起始标志的字节长度相同,为48个字节,但二者内容不同,以此判断该数据包是服务调用数据包还是服务应答数据包。两种数据包的各项内容之间的间隔符可以相同,参数之间的参数间隔符可以相同,结束标志也可相同。所述节点的地址为长度为8个字节的字符串,其范围为00Q00000-99999999,规定服务中心的节点地址为00000000,各资源节点的地址从00000001开始依次累加。节点在服务中心注册时,服务中心为其分配唯一的节点地址,在同一网格平台中各资源节点对应唯一的节点地址,便于服务中心返回相对应的数据以及对每个节点的数据统计。命令代码为ru个字节,在编写命令字时同时给出命令代码,每个命令字对应唯一的命令代码,m为24个字节,代码后有其序列号12字节,初始值为0;当数据包发送超时或接收失败,均视为服务调用错误,重新发送服务调用数据包,第二次重新发送同一命令时,原命令代码不变,其序列号加l,当第i次发送同一命令时,序列号加i。命令字是根据制造网格的主要服务内容、由双方定义的服务调用主题的字符串。如任务预约、任务签约及完成情况,资源设置,资源属性提交、修改,设备情况通告,提供服务的网格用户的信息提交、修改等,定义相应的字符串作为命令字,每一种命令字对应唯一的服务调用功能,各个命令字的字节长度相同,为1220个字节,不足者用空格补齐。为了方便提取命令字和对命令字进行校验,每个命令字还对应唯一的命令代码。校验码根据常规的校验和算法计算得到,为13个字节。整个数据包中每个字符的ASCII码值累加,累加值模256,得到校验码。ASCII码(AmericanStandardCodeforInformationInterchange)是美国标准信息交换码,为目前全球计算机中用得最广泛的字符集及其编码,由美国国家标准局(ANSI)制定。所述参数是有关命令字的服务执行时的具体参数。例如监控命令中的生产进度,废品率,预计完成时间,设备故障,预计修复时间等参数。各命令字对应的多项参数具体代表值和排列顺序,在制定命令字时确定,接收方可按顺序确定各项参数的含义。命令字无对应的参数时,此项为空,即o字节。命令体中还有保留位,保留位为预留的通信位,为ri2个字节,即410个字节,不足的用空格补齐,制造网格平台采用本通信方法时,可按实际需要设定该保留位。接收方收到对方发送的数据包后,根据顺序排列的各项,接收方即可解析得到各项具体内容。本通信方法还规定了服务中心和资源节点之间的通信方式,包括主动通信和/或定时通信。主动通信当服务中心或某个资源节点作为发送端需要调用某项服务时,激活相应的服务调用数据包,并发送一次。相应的资源节点或服务中心作为接收方接收后对服务调用数据包进行解析,按照命令字执行相应的服务,并根据服务执行情况返回相应的服务应答数据包。定时通信按照服务中心指定的周期,各资源节点和服务中心发送预先设定的服务调用数据包,包括询问是否有新信息、新的订阅请求、汇报本节点设备变化情况、任务进度等。双方对接收的数据包进行解析,得到相应信息,从而达到消息交互的目的。服务中心由网格中各资源节点定时发送的数据包确定各节点是否在线,网格资源节点的定时査询可及时得到服务中心的订阅通知,并可及时接收有关网格资源客户任务的命令信息。'本通信方法规定的通信检错方法为常用的校验和方法,接收方将收到的整个数据包中各个字符的ASCII码值进行累加,累加值模256,计算结果与其中的校验码进行比较,如果相等,视为正确,接收方返回针对所接收数据包的服务应答数据包,服务请求方由此确认本次服务调用成功;若计算结果与命令数据包中的校验码不同,则视为发送失败,即服务调用失败,此时接收方发送通知服务调用失败的服务应答数据包,要求对方重新发送。重新发送的数据包命令头中的命令代码的序列号加1。服务请求方的服务调用数据包发送后超过t秒未收到应答,视为超时,也视作服务调用失败,重新发送原服务调用数据包,重新发送的服务调用数据包命令头中的命令代码的序列号加l。t为l10。8本发明的制造网格的服务中心与资源节点的通信方法优点为1、规定了双方的通信方法和标准数据格式,简化了资源节点和服务中心之间数据传递的方式,避免了因服务接口的任意性,造成的数量庞大的重复通信。因此有效的维护了系统的性能,并且便于作为资源节点的一般企业接受服务中心下达的客户任务和与服务中心的信息的交互;2、资源节点只需要提供本地接口,无需远程接口,即所有的服务调用通过通信的方式实现,所以在资源节点进行增加、变更、减少、删除等服务变更时,无需重新部署。3、实现了透明通信,服务中心和资源节点只要按本法的规定发送统一标准格式的数据包即可进行服务调用,无需考虑传输内容的其它格式及编码;4、因通信采用标准的数据包,且有检错方法,保证了通信的有效和准确;5、采用本法服务中心可随时掌握各资源节点的服务状态、任务进度等情况,便于制造网格平台的运行(四)图1为本制造网格的服务中心和资源节点的通信方法实施例资源节点与服务中心某次通信的流程图。(五)具体实施例方式制造网格服务中心和资源节点的通信方法实施例。本制造网格的服务中心和资源节点之间的通信方法实施例某个资源节点与服务中心的一次主动通信过程如图1所示。I、本制造网格的节点地址为00000032的资源节点在执行任务代号为1的任务时主动向服务中心发送监控信息,服务调用数据包如下-Gxmgsp1151001monitor10000003210000000011,1000,85%,0.087%1871nul11end以下对上述服务调用数据包中各项内容具体说明"Gxmgsp"为本例制造网格规定的命令起始标志,为6个字节;"i"为各项之间的间隔符,当参数中包括有"I"时,规定"&"作为转义符,即用"&|&"作为"I",以免与间隔符混淆。当参数中含有时,同样在数据前后加入"&"即变为"&&|&",解析时去掉i两边的&。总之,当|两边为&时,其不作为分隔符。"monitor"为命令字,根据制造网格中服务的主要内容定义相应的字符串作为命令字。每一种命令字对应唯一的服务调用功能,本例规定命令字由15个字节组成,不足者用空格补齐。"15100"为命令代码及序列号,每个命令字对应唯一的命令代码。命令代码为3位,其后2位序列号初始值为00。本例的制造网格主要涉及电子行业,规定的部分命令字及命令字代码如表1所示。表1某电子行业制造网格规定的部分命令字及命令字代码<table>tableseeoriginaldocumentpage10</column></row><table><table>tableseeoriginaldocumentpage11</column></row><table><table>tableseeoriginaldocumentpage12</column></row><table>控参数和排列顺序,在制定监控命令字"m。nit。r"时确定。"87"为校验码,如前所述由校验和计算得到。"mill"为保留位,4个字节,因尚未使用,暂用null;"end"为结束标志,3个字节。.11、服务中心接收该服务调用数据包,解析并检错,检错是将收到的整个数据包中每个字符的ASCII码值进行累加,累加值模256,得出结果与其中的校验码87进行比较,若结果为87视为正确,否则视为错误;III、当判断发送失败后,服务中心对节点地址为00000032的资源节点发送要求重发的应答数据包,如下Gxmgadl15100|monitor1000000001000000321error,112381null|end服务应答数据包与服务调用数据包相似,"Gxmgad"为应答标志,"monitor"为命令字;"15100"为命令代码及序列号;"error"表示数据包传送错误,其后的"1"为传送错误的错误代码,表示错误的类型。本例中规定的错误代码如表2所示。表2错误代码与错误类型对照表错误代码错误类型0硬件故障1软件故障2超时3服务器无响应4其它表2中硬件软件故障根据实际经验判断;当服务调用方发送数据包后t秒,本例t5,没有得到接收方的服务应答数据包,判断为服务调用超时;当接收方接收到服务调用数据包后,根据命令字寻找相应的服务,但却无法执行,接收方发送服务应答数据包,其中的错误类型为"服务器无响应"无法归入以上三项的发送或接收错误,以"4"表示。13IV、当服务中心成功接收了上述服务调用数据包,按命令监控(monitor)记录地址为00000032的资源节点执行的任务代码1的各类监控信息,并根据任务l的提交客户的要求对监控数据进行处理,因为客户提交的任务可能分配给不同的资源节点,所以需要对数据进行汇总处理,再按与客户签订的合同定时向客户汇报。同时服务中心返回针对该服务调用数据包相应的成功接收的服务应答数据包,如下-Gxmgad|15100|monitor|00000000|000000321success11401null|endV、节点地址为00000032的资源节点接收服务中心的服务应答数据包,解析数据包,检错;VI、如果检错通过,节点地址为00000032的资源节点成功接收服务中心的服务应答数据包,确认其服务调用数据包成功送达服务中心,本次通信结束,服务调用成功。如果检错发现接收失败,重新发送的服务调用数据包,与步骤I的服务调用数据包基本相同,只是命令序列号加1,接收方由序列号可明确此服务调用数据包为重发的命令。,如下Gxmgsp115101imonitor10000003210000000011,1000,85%,0.087%1881null|endVII、节点地址为00000032的资源节点在第I步发送服务调用数据包后5秒若没有收到服务中心返回的服务应答数据包,判断为服务调用超时,重新发送服务调用数据包,与步骤I的服务调用数据包基本相同,其命令序列号加l,接收方由序列号明确此服务调用数据包为重发的命令。Gxmgsp|15101|monitor10000003210000000011,1000,85%,0.087%1881nulllend定时通信按照服务中心指定周期,本例为60秒,各资源节点发送预先设定的服务调用数据包。服务中心由网格上各资源节点的定时发送的数据包确定各节点是否在线,网格资源节点定时查询可及时得到服务中心的信息并可及时接收有关网格资源客户任务的命令信息。资源节点定时发送的数据包包括询问是否有新信息,本节点的资源设备状态,任务进度等。地址为00000032资源节点每60秒发送一次询问是否有新信息迫服务调用数据包,如下14Gxmgspi201001news10000003210000000011361nul11end当资源节点正常在线时该数据包周期性发送,服务中心根据是否接收到资源节点的该命令数据包判断其是否在线。命令字news无对应的参数,参数项为0字节。服务中心返回的包括新信息的服务应答数据包如下Gxmgad|20100|news|00000000|00000032|2,-2,456,2009-9-321:26:12,system,manager,0,457,2009-9-321:28:50,消息,user,011681nullIend其中参数代表值顺序如下共有2条消息,未读的消息2条,消息的代号456,发送时间,消息主题为系统消息,消息发送者为管理者,0表示消息为未读状态,消息的代号457,发送时间,消息主题为消息,消息发送者为user,消息为未读状态。其它执行过程和上述主动发送的过程相似。不再重复。上述实施例,仅为对本发明的目的、技术方案和有益效果进一步详细说明的具体个例,本发明并非限定于此。凡在本发明的公开的范围之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。权利要求1、制造网格服务中心和资源节点之间的通信方法,在制造网格平台上有服务中心及与服务中心连接的多个资源节点,其特征在于服务中心和资源节点分别向对方发送标准格式的服务调用数据包,接收方回送标准格式的服务应答数据包,实现双方的通信;所述标准格式的服务调用数据包包括命令头和命令体。命令头包括顺序排列的命令起始标志、命令代码及序列号、命令字、源节点地址、目的节点地址;命令体包括顺序排列的相关的参数1至参数n、校验码、结束标志,各项之间有间隔符,参数之间有与上述间隔符不同的数据间隔符;服务应答数据包与服务调用数据包相似,包括应答命令头和应答命令体。命令头包括顺序排列的应答起始标志、命令代码及序列号、命令字、源节点地址、目的节点地址;应答命令体包括顺序排列的相关的参数1至参数m、校验码、保留位、结束标志,各项之间有间隔符,参数之间有与上述间隔符不同的参数间隔符;所述命令起始标志和应答起始标志字节长度相同,为4~8个字节;所述命令字是双方定义的通信主题的字符串,每一种命令字对应唯一的命令功能,每个命令字的字节数相同,为12~20个字节,不足者用空格补齐;命令代码为n1个字节,在编写命令字时同时给出命令代码,每个命令字对应唯一的命令代码,n1为2~4个字节,代码后有其序列号1~2位,初始值均为0;当数据包发送有错误时,第二次重新发送同一命令时,原命令代码不变其序列号加1,当第i次发送同一命令时,序列号加i;所述的节点地址为长度为8个字节的字符串,其范围为00000000-99999999,服务中心的节点地址为00000000,各资源节点的地址从00000001开始依次累加,注册时由服务中心分配资源节点地址;在同一网格平台中各资源节点对应唯一的节点地址;所述参数是有关命令字的服务执行的具体参数;校验码根据校验和算法计算得到,为1~3个字节,整个数据包中每个字符的ASCII码值累加,累加值模256,得到校验码。2、根据权利要求1所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于所述服务调用数据包和服务应答数据包的各项内容之间的间隔符相同,参数之间的参数间隔符相同,结束标志相同。3、根据权利要求1所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于所述命令体中还有保留位,为ri2个字节,&为410,不足的用空格补齐。4、根据权利要求1所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于-所述命令字对应的多项参数具体代表值和排列顺序,在制定命令字时确定,接收方按顺序确定各项参数的含义。5、根据权利要求4所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于所述命令字无对应的参数时,参数项为0字节。6、根据权利要求1至5中任一项所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于服务中心和资源节点之间的通信为主动通信,当服务中心或某个资源节点作为发送端需要调用某项服务时,激活相应的服务调用数据包并发送;和/或服务中心和资源节点之间为定时通信,按照服务中心指定周期资源节点和服务中心发送预先设定的服务调用数据包。7、根据权利要求1至5中任一项所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于本通信方法规定的通信中的检错方法为,接收方将收到的整个数据包中每个字符的ASCII码值累加,累加值模256,计算结果与数据包中的校验码进行比较,如果相等,视为正确,接收方返回针对所接收数据包的服务应答数据包,发送方由此确认本次服务调用成功;若计算结果与数据包中的校验码不相等视为发送失败,即服务调用失败,接收方发送通知发送失败的服务应答数据包,要求对方重新发送。8、根据权利要求1至5中任一项所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于-发送方的数据包发送后超过t秒未收到应答,视为超时,服务调用失败;t为110。9、根据权利要求8所述的制造网格的服务中心和资源节点之间的通信方法,其特征在于服务调用失败重新发送的服务调用数据包中命令代码的序列号加1,其它项与原数据包相同。全文摘要本发明为制造网格服务中心与资源节点的通信方法,服务中心和资源节点相互发送或回送标准格式的服务调用或应答数据包,实现双方的通信。标准数据包命令头包括命令起始标志、命令字、命令代码及序列号、源节点地址、目的节点地址;命令体包括顺序排列的相关参数、校验码、结束标志;各项间有间隔符,参数间有参数间隔符。服务中心分配各资源节点唯一的节点地址。服务中心和资源节点以通信的方式实现服务调用,并规定了主动/定时2种通信方式。接收方按数据包顺序排列的各项解析得到相应内容,以校验和检错,按照命令字搜寻相应的服务并执行。本方法简化了资源节点和服务中心之间数据传递的方式,保证了通信的有效和准确;便于制造网格平台的运行。文档编号H04L29/06GK101668014SQ20091011443公开日2010年3月10日申请日期2009年9月24日优先权日2009年9月24日发明者尚玉玲,李春泉,杨宝业,王彦伟,覃匡宇申请人:桂林电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1