专利名称:应用层的数据处理方法
技术领域:
本发明涉及一种数据处理方法。特别是涉及一种使用生活网络的控制协议的应用层中的数据处理方法。
背景技术:
家庭网络是指无论在家庭内部或者在外边都可以既方便又安全的使用家用电器的连接了各种数字家电的网络。随着数字信号处理技术的发展,一直以来被称之为白色家电的冰箱或者洗衣机等逐渐变成了数字产品,而且家电用运用体系技术和高速多媒体通信技术的急速发展,使数字家电变成了信息家电,从而推动了家庭网络的发展。
这种家庭网络如下表所示,根据所提供的服务的类型可以分为数据网络,娱乐网络以及生活网络。
表1
在这里,数据网络是指为了PC和周围设备之间进行数据交换或者提供因特网服务而构筑的网络,娱乐网络是具备音频和视频处理功能的家电设备之间构筑的网络。而生活网络是为了控制家电和家庭自动化以及远程监测而构筑的网络。
这种家庭网络中包括控制其他家电的运转或者监视其状态的主控制设备;利用电器设备的特性或者是其他的功能,具备了响应主控制设备的功能和通知自身状态变化的信息的功能的电器设备自动控制装置构成。本说明书中提出的家用电器不仅包括上述的洗衣机,冰箱等的生活网络服务用家用电器,而且还包括用于数据网络服务以及娱乐网络服务的所有家用电器,并且还包括燃气阀门控制装置,自动门装置,电灯等的产品。
在上述的现有技术中的对于家庭网络系统内的家用电器的监视命令,控制命令,没有提供通用的通信规则。
发明内容
本发明所要解决的技术问题是,提供一种对于家庭网络系统内的家用电器的监视命令和控制命令,使用通用的通信规格的控制协议的应用层的数据处理方法。
本发明所要解决的另一技术问题是,提供一种其采用生活网络控制协议(living network control protocolLnCP)作为通信规格的应用层的数据处理方法。
本发明所要解决的另一技术问题是,提供在LnCP的数据传送的统一的若干个基元的数据处理方法。
本发明所要解决的另一技术问题是,提供一种应用层其在包含用于主控制设备的应用层的上层中生成,传送以及处理信息的数据处理方法。
本发明所要解决的另一技术问题是,提供一种应用层,其是根据信息的特性进行处理的数据处理方法。
本发明所采用的技术方案是一种应用层的数据处理方法,在至少包括下层以及应用层的协议中,包括从下层接收包含应用层协议数据单位(APDU)的信息接收基元(MagRcv)的阶段;判断对于APDU处理与否的第1判断阶段;根据第1判断阶段的结果,从APDU取出信息的阶段;判断是否有对应的服务明细的第2判断阶段;根据第2判断阶段的结果生成规定的基元的阶段;将所生成的基元传递给上层应用软件中的阶段构成。
所述的第1判断阶段应根据APDU应用层选项(ALO)字段是否包括规定的值而进行。
所述的信息取出阶段应利用APDU的APDU标题长度(AHL)字段的值进行信息取出。
经过第2阶段检索到信息接收基元中包含的对应通信循环识别代码(CycleID)对应的服务明细时,所述的信息接收应包括响应信息。
所述的处理方法在基元的生成阶段生成响应使用者基元。
所述的服务明细的通信循环次数的值大于‘1’,并且信息接收基元包括NAK响应信息时,处理方法还包括将通信循环次数设定为‘0’的阶段。
所述的处理方法在基元生成阶段中生成应用层完了基元。
经过第2阶段没有检测到包含在信息接收基元中的通信识别者对应的服务明细时,信息接收基元中包含事件信息。
所述处理方法在基元的生成阶段生成事件使用者基元。
所述的协议是生活网络控制协议。
如上构成的本发明,具有提供使用了提供家庭网络系统内的电器设备控制以及监视等功能的规范的通信规格的控制协议的家庭网络系统。
而且,本发明提供采用了规定的生活网络控制协议的家庭网络系统。而且,本发明提供在LnCP上传送数据的统一的若干个基元。
本发明中,在包含主控制设备的应用层的上层中,生成、传送以及处理信息。而且,本发明可以根据信息的特性进行处理。
图1是本发明的家庭网络系统的组成图,图2是本发明的生活网络控制协议堆栈的组成图,图3a、图3b是图2的层之间的界面的组成图,图4a至图4f是图3a以及图3b的界面的详细的组成图,图5a以及图5b是包含用于各个层之间交换数据基元的组成图,图6a至图6c是请求信息结构的实施例,图7a至7c表示响应信息结构的实施例,图8是事件信息的结构,图9是本发明设计的应用层中的数据处理方法。
其中1家庭网络系统 2因特网3LnCP服务器 4客户设备10网关20~23网络管理器30、31LnCP路由器 40~49电器设备
具体实施例方式
下面,结合附图详细的说明本发明的应用层的数据处理方法。
本发明中,结合了本发明的实施例以及附图详细的说明了家庭网络系统。但是,本发明的范围并不局限在下面说明的实施例以及附图中,而是限制在本发明的权利要求范围之内。
图1是本发明的家庭网络系统的组成图。
如图1所示,家庭网络系统1通过网络2连接LnCP服务器3,而客户端设备4通过因特网连接LnCP服务器3。即,家庭网络系统1可以与LnCP服务器3以及/或者客户端设备4进行通信。
包括因特网2在内的家庭网络系统1外部的网络根据客户端设备4的种类追加配备其他的配件。即,因特网2在客户端设备4是电脑时,具备网络服务器(图中没有表示),而当客户端设备4是网络电话时,具备无线应用协议服务器(图中没有表示)。
LnCP服务器3按照规定的登录程序分别与家庭网络系统1以及客户端设备4连接,从客户端设备接收监视以及控制命令,将其转换为规定格式的通过因特网2信息传送给家庭网络系统1。而且,LnCP服务器3从家庭网络系统1中接收具有规定格式的信息,进行保存或者将其传送给客户端设备4中。而且,LnCP服务器3将自身保存或者生成的信息传送给家庭网络系统1。即,家庭网络系统1连接LnCP服务器3中,下载所提供的内容。
这种家庭网络系统1中包括用于连接因特网的家庭网关10;对于电器设备40~49进行环境设定并执行管理功能的网络管理器20~23;连接传送介质的LnCP路由器30、31和LnCP适配器(adapter)35、36;若干个家用电器40~49构成。
家庭网络系统1内的网络是连接电器设备40~49以及这些设备共用的传送介质组成。这种传送介质利用像RS-485或者低输出RF等的数据连接层非标准化的传送介质(non-standardized transmission medium),或者利用电力线或者IEEE802.11等的标准化的传送介质(standardizedtransmission medium)。
这种家庭网络系统1内的网络由与因特网2相互分离的网络构成,即构成利用有线或者无线传送媒体连接的独立型网络。所述独立性网络包括物理上连接,但是逻辑上分离的网络。
这种网络系统1包括控制其他电器设备40~49的运转或者进行监视的主控制设备和具有响应主控制设备的请求的功能和通知自身状态变化信息的从属设备。这种主控制设备包括网络管理器20~23,从属设备包括电器设备40~49。只是,网络管理器20~23包含所要控制的电器设备40~49的信息以及控制代码,由此利用程序化的方式进行控制或者接收LnCP服务器3以及/或者客户端设备4输入,进行控制。而且,如图所示,连接若干个网络管理器20~23之后,所述网络管理器20~23为了与其他的网络管理器20~23进行信息交换或者信息共享以及为了进行控制,在起到主控制设备的同时起到从属设备的作用,即需要在物理上是一个设备,但是在逻辑上,同时执行主控制设备和从属设备的功能的装置(即,混合设备)。
网络管理器20~23以及电器设备40~49可以直接连接网络(图示的电力线网络,RS-485网络,RF网络),还可以通过LnCP路由器30、31以及/或者LnCP适配器35、36连接。
而且,电器设备40~49以及/或者LnCP路由器30、31以及/或者LnCP适配器(adapter)35、36登录到网络管理器20~23上,每个制品被赋予了唯一的逻辑地址(例如,0x00,0x01),而这个逻辑地址与产品代码(例如,空调器为‘0x02’,洗衣机为‘0x01’)组合成节点地址(Node Address)使用。例如,利用0x0200(空调器1),0x0201(空调器2)等的节点地址区分电器设备40~49以及/或者LnCP路由器30、31以及LnCP适配器35、36。而且,可以使用根据某种规定(相同的产品全部,产品的设置场所,使用者)可以一次性的区分一个以上的电器设备40~49以及/或者LnCP路由器30、31以及LnCP适配器35、36的群体地址。在群体地址中,明示的群体地址将地址选项值(下面称之为特征位)设定为1时,是指定若干个设备的集群,默认的群体地址将逻辑地址以及/或者制品代码的所有比特值变成‘1’,由此可以指定若干个设备。特别是,明示的群体地址成为集群代码。
图2是本发明的生活网络控制协议堆栈的组成图。家庭网络系统1根据图2中的生活网络控制协议(LnCP)使网络管理器20~23和LnCP路由器30、31以及LnCP适配器35、36,电器设备40~49之间进行通信。由此,网络管理器20~23和LnCP路由器30、31以及LnCP适配器35、36,电器设备40~49根据LnCP进行网络通信。
如图2所示,LnCP执行网络管理器20~23和LnCP路由器30、31以及LnCP适配器35、36,电器设备40~49的固有的功能,包括为了在网络上进行远程操作以及监视,提供与应用层60之间的界面功能的应用软件50;给使用者提供服务,将使用者提供的信息或者命令转换为信息,传达给下层的功能的应用层60;提供可靠较高的网络管理器20~23和LnCP路由器30、31以及LnCP适配器35、36,电器设备40~49的网络连接的网络层70;提供连接共用传送介质的接近介质控制功能的数据连接层80;提供网络管理器20~23和LnCP路由器30、31以及LnCP适配器35、36,电器设备40~49之间的物理界面和对于所要传送的比特的规则的物理层90以及设定物理层90以及各个层中使用的节点参数(node parameter),并进行管理的参数管理层100构成。
详细的说,应用软件50还包括网络管理附属层51。网络管理附属层51具有管理节点参数,及管理连接在网络上的网络管理器20~23,LnCP路由器30、31,LnCP网络适配器35,36及电器设备40~49的功能。即,该网络管理附属层51具有一种功能,可以通过参数管理层100,设定参数数值对参数进行管理。适用于LnCP的设备为主控制设备时,该网络管理附属层51还具有履行构成网络或管理网络的功能。
网络层70还包括家庭代码控制附属层71。网络连接有网络管理器20~23、LnCP路由器30、31,LnCP网络适配器35,36及电器设备40~49。当利用电力线或IEEE802.11、无线等非独立形传送介质(例如LnCP包括电力线通信(PLC)协议/或无线(wireless)协议时)构成网络时,为了在逻辑上划分各网络,家庭代码控制附属层71发挥设定家庭网络代码及管理家庭网络代码的功能。通过像RS-485等独立形传送介质,从物理意义上分离个别网络时,该家庭代码控制附属层71不包括在LnCP中。该家庭网络代码以4字节组成,设定为随机值或使用者设定值。
图3a、图3b是图2的层之间的界面的组成图。
图3a表示当物理层90连接在非独立型传送介质上时的层之间的界面,图3b表示物理层90连接独立型传送介质上时的层之间的界面。
家庭网络系统1在从上层中接收到的协议信息单位(Protocol DataUnitPDU)中加上各个层要求的标题(head)和结尾(trailer)信息传送给下层。
如图所示,APDU(Application layer PDU)是在应用层60和网络层70之间传递的数据,NPDU(Network Layer PDU)是网络层70和数据连接层80或者家庭代码附属层71之间传递的数据,HCNPDU(Home Code Control SublayerPDU)是网络层70(更准确是家庭代码附属层71)和数据连接层80之间传递的数据。数据连接层80和物理层90之间以数据帧为单位形成界面。
图4a至图4f是图3a以及图3b的界面的详细的组成图。
图4a是应用层中的APDU的结构。
AL(APDU Length)字段是表示APDU长度(从AL到信息字段的长度)的字段,最小值是4最大值是77。
AHL(APDU Header Length)字段是表示APDU标题长度(从AL到ALO的长度)的字段(field),在不扩展时为3字节,可以扩展到7字节。在LnCP协议中,为了信息的保密化和应用协议的变更等,可以将APDU标题扩展到7字节。
ALO(Application Layer Option)字段是表示信息包扩展的字段,例如设定为‘0’时,在含有其他值的情况下忽略信息处理。
信息字段是处理使用者的控制信息或事件信息的字段,根据ALO字段包含的值,其组成有所不同。
图4b是网络层70中的NPDU的结构,图4c是NPDU中的NLC的详细结构。
SLP(Start of LnCP Packet)是表示信息包开始的字段,具有0x02值。
DA(Destination Address)及SA(Source Address)字段是所要传送的信息包的接收者和发送者的逻辑地址,分别由16字节构成。在这里,最上层的1字节是表示群体地址的集群(flag),其次的7字节表示产品的种类(产品代码),最后的8字节是区分若干个相同的网络管理器20~23和电器设备40~49的逻辑地址。
PL(Packet Length)字段是表示所要传送的NPDU的整个长度的字段,最小值是12字节,最大可达到100字节。
SP(Service Priority)字段是给所要传送的信息上赋予传送顺序的字段,由3字节构成,而各种信息的优先顺序表如下表2。
从属设备根据主控制设备的邀请进行响应时,依照从主控制设备接收的请求信息的优先顺序。
表2
NHL(NPDU Header Length)字段是用于NPDU标题(从SLP到NLC字段)的扩展的字段,在不进行扩展时为9字节,最大可以扩展到16字节。
PV(ProtocolVersion)字段是表示采用的版本的1字节字段,上层4比特是版本(version)字段,下位的4比特是副版本(sub-version)字段。版本和副版本分别用16进制表示。
NPT(Network layer Packet Type)字段是在网络层中区分信息包的种类的4比特字段,LnCP包括请求信息包(Request Packet),响应信息包(Response Packet),通知信息包(Notification Packet),主控制设备的NPL字段需要设定为申请信息包或者是通知信息包,而从属设备的NPL字段需要设定为响应信息包或者是通知信息包。
TC(Transmission Counter)字段是在网络层中发生通信故障,因此没有成功发送请求信息包或者响应信息包时,为了重发请求信息包或者为了提高通知信息包的传送效率而反复发送的2比特字段。接收者利用TC字段值检测重复信息。
PN(Packet Number)字段是由2比特构成,在从属设备中与TC一起用于检测重复信息包,在主控制设备中用于处理若干个通信循环。
APDU字段是应用层60和网络层70之间所传递的应用层的协议数据单位。APDU的最小值是0字节,最大值是88字节。
CRC(Cyclic Redundancy Check)字段是从接收到的信息包(从SLP到APDU)中的错误的16比特的字段。
ELP(End of LnCP Packet)字段是表示信息包的末尾的字段,具有0x03值。如果,接收到了信心包的长度字段的长度的数据而没有检测出ELP字段时,视为信息包错误。
图4d是家庭代码附属层71中的HCNPDU结构。
如图所示,在NPDU上层部分上还包括HC(Home Code)字段。
家庭代码由4字节组成,而在可以传递信息包的线路上具备唯一的值。
图4e是数据连接层80的帧结构。
LnCP的数据层帧的标题以及结尾根据传送介质有所不同。在数据连接层使用非标准的传送介质时,帧的标题以及结尾需要具备空字段(NullField)。如果,使用标准的传送介质时,依据协议规定。NPDU字段是上层网络层70传送的数据单位,HCNPDU是物理层90使用电力线或IEEE 802.111等非独立转送介质时使用的4字节家庭代码追加在NPDU前面部分的数据单位。数据连接层80不区分处理NPDU和HCNPDU。
图4f是物理层90中的帧结构。
在LnCP的物理层90中,具有给传送介质收发物理信号的功能。LnCP协议的物理层90可以使用RS-485或低输出RF等的数据连接层80非标准化的传送介质。在适用LnCP网络的家庭网络1中,为了使网络管理器20~23以及电器设备40~49与RS-485或者LnCP路由器30、31以及LnCP适配器35、36形成界面,利用UART(Universal Asynchronous Receiver and Transmitter)帧结构和RS-232的信号水平。UART在设备之间利用序列母线进行连接时,在通信线路中控制比特信号的流动。LnCP中,将上层发出的信息包如图4所示,变成10比特大小的UART帧单位通过传送介质传送。UART帧由1比特的起始位(Start Bit),8比特的数据以及1比特的停止位(Stop Bit)构成,但不使用效验位(Parity Bit)。UART帧从起始位开始传递,最后传递停止位。在使用LnCP的家庭网络系统1中,在利用UART时,不使用附加的帧标题和帧结尾。
下面对于上述层中使用的节点参数进行说明。
下面说明中的节点变数的数据类型相当于表3中的某一个数据类型。
表3
首先,应用层60利用使用者通过应用软件50传递的信息和命令生成信息(Message)和APDU并将其传给下位的网络层,并解释从下位网络层接收到的APDU传给应用软件。
应用层60中使用的节点变量(Node Parameter)如表4所示。
表4
然后,网络层70执行下述的功能。
首先,具有地址管理功能,保存自身的地址以及目的地网络管理器20~23或者电器设备40~49的地址。这时,可以使用地址中包含的网络管理器20~23或者电器设备40~49的信息以及位置信息指定集群地址,支持多点传送以及广播通信。
其次,具有控制流量的功能,管理通信循环,控制信息包的流动。
其次,具有故障控制功能,在规定的时间内没有接收响应信息时发送数据。重发的次数最大为3次。
其次,具有处理控制功能(Transaction Control),检测出重复信息,防止了信息的重复,控制同时多路通信循环。
最后,具有路由控制功能,为了在两个独立的传送介质之间传递信息包,并防止LnCP路由器30、及31及LnCP适配器35、36之间的无限循环,控制信息包的流动。
这种网络层70以通信循环单位提供服务。通信循环有{1-Request,1-Response},{1-Request,Multi-Responses},{1-Notification},{Repeated-Notification}等4种。
{1-Request,1-Response}通信循环是一个主控制设备给一个从属设备发送一个请求信息(Request Packet),从属设备针对上述的请求发送一个响应信息包(Response Packet)的通信循环。
{1-Request,Multi-Responses}通信循环是一个主控制设备向若干个从属设备发出一个请求信息,而各个从属设备一次发出针对请求信息的响应信息包。
{1-Notification}通信循环是设备(主控制或者从属)给一个或者若干个设备(主控制或者从属)发送一个通信信息包后,结束通信的循环。
{Repeated-Notification}通信是在{1-Notification}循环通信之中,为了确保传送可靠性而反复发送相同的信息包,并停止通信的循环。
所述的通信循环和信息包类型以及传送服务(或者是网络层服务)(NLservice)之间的关系如表5所示。
表5
对于剩下的网络层70,数据连接层80及物理层90的参数这里不再说明。
图5a、图5b是包含各个层之间发送数据的基元的组成图。
图5a表示出了主控制设备的层之间的基元(primitive)的传递。
首先,应用软件50和应用层60之间的基元如图所示,使用UserReq,UserDLReq,UserULReq,ALCompleted,ResUser,EventUser。
使用者请求基元(UserReq)是从主控制设备的应用软件50传递的单一的通信循环构成服务请求基元,用于控制或者监视。使用者请求基元包括下表6a中的组成成分。
表6a
使用者下载请求(UserDLReq)基元是从主控制设备的应用软件50传递的下载服务请求基元包括下表6b中的组成成分。
表6b
使用者上载请求(UserULReq)基元是从主控制设备的应用软件50传递的下载服务请求基元,包括图6c中的组成成分。
表6C
响应使用者(ResUser)基元是将主控制设备的服务执行结果传给应用软件50的基元,包括图6d中的组成成分。
表6d
事件使用者(EventUser)基元是传递给主控制设备的应用软件60的事件服务基元,包括表6e中的组成成分。
表6e
应用层完了基元是将主控制设备的应用层60的执行结果发送给应用软件50的基元,包含图6f中的组成成分。
表6f
其次,应用层60和网络层70之间的基元如图所示,包括ReqMsgSend,NLCompleted以及MsgRev。
请求信息发送基元是从主控制设备的应用层60向网络层70传递信息的基元,包含下表7a中的组成成分。
表7a
通信识别者(CycleID)是应用服务代码(ALSvcCode)和接收地址(RevAddress)组合而成。
信息接收(MsgRcv)基元是在主控制设备的网络层70中向应用层60传递信息包的基元,包括下表7b中的组成成分。
表7b
使用者通信循环识别代码(CycleID)的组成如下所述。
网络层完了(NLCompleted)基元是网络层70通知应用层60信息包处理状态的基元,包括下表7c中的组成成分。
表7c
对于其他层的基元不再进行说明。
图5b中表示出了从属设备的层之间的基元(primitive)的传递。
首先,应用软件50a和应用层60a之间的基元如图所示包括FuncCall,FuncReturn以及InformStates。
函数呼叫基元是为了呼叫属于应用软件60a的副例行程序的基元,包括表8a中的组成成分。
表8a
函数返还基元是在应用软件50a中返还副例行程序呼叫结果的基元,包括表8b中的组成成分。
表8b
状态通知基元是包括应用软件50a传递的状态变量值的基元,包括表8c中的组成成分。
表8c
然后,应用层60a和网络层70a之间的基元包括ReqMsgRcv,ResMsgSend,EventMsgSend以及NLCompleted。
请求信息接收(ReqMsgRcv)基元是网络层70a给应用层60a发送所接收的信息的基元,包括表9a中的组成成分。
表9a
响应信息发送(ResMsgSend)基元是应用层60a给网络层70a发送应答信息的基元,包括表9b中的组成成分。
表9b
事件信息发送(EventMsgSend)基元是从应用层60a给网络层70a传送事件信息的基元,包括表9c中的组成成分。
表9c
网络层完了基元是网络层70a通知应用层60a信息包处理状态的基元,包含表9d中的组成成分。
表9d
其他层之间的基元这里不再进行说明。
信息中的字节(或者比特)数据分布中,上层字节(或是比特)位于信息的左侧,下位字节(或者比特)位于信息的右侧。应用层中的信息种类如下。
*请求信息(Request Message)为了从属设备执行命令,从主控制设备的应用层60传给网络层70或者从从属设备的网络层70a传给应用层60a的信息。从属设备的应用层60a根据网络层70a传递的传送模式用响应信息(Response Message)应答。
*响应信息(Response Message)从属设备为了传递命令执行的结果,从主控制设备的网络层70传递到应用层60或者从从属设备的应用层60a传递给网络层70a的信息,是对于请求信息的响应。
*事件信息(Event Message)当事件信息设备的状态变更时,对于发送设备,从应用层传递给网络层,对于接收设备,从网络层传递给应用层的信息,接收设备不响应。
图6a至图6c是请求信息结构的实例。
图6a中使出了基本的请求信息,这种请求信息由命令代码(CommandCodeCC)和必要时执行命令代码的相关因子(因子1、2…)构成,用于设备的控制和状态确认以及设备信息的确认中。
图6b是请求信息中分割数据后发送给设备上的输入因子(InputArguments),是包括‘全部页(TotalPage)’和‘当前页(CurrentPage)’的下载请求信息(Downloading Request Message),图6c是包含‘页码(PageNo)’‘数据大小(DataNo)’的上传请求信息(Uploading RequestMessage)。
具体说,下载请求信息是主控制设备保存有一定的数据,并将要此数据发送给从属设备以及/或者其他主控制设备的信息,所述的数据按照一定的数据大小分割,而所分割的数据的数量成为全部页,全部页中的包含在当前的请求信息中的成为当前页。
上传请求信息是从属设备以及/或者其他的主控制设备保存有一定的数据,主控制设备要将此数据上传的信息,主控制设备请求在整个数据中的相当于数据大小的一部分数据,而这个一部分数据在整个的数据中是对应页码对应顺序上的分割数据。
图7a至图7c是响应信息结构的实例。
响应信息区分为在正常的执行主控制设备发送的请求信息时,生成的ACK-响应信息(ACK-Response Message)和在没有正常执行主控制设备发出的请求信息时生成的NAK-响应信息(NAK-Response Message)。
图7a是ACK-响应信息,ACK-响应信息包括命令代码和ACK(比如0x06)以及表示执行结果的因子(因子1、2…)构成,在从属设备成功的执行了主控制设备发送的请求信息时发送。
图7b表示NAK-响应信息,包括命令代码和NAK(比如0x15)以及1字节的NAK_code构成,当从属设备没有成功地执行主控制设备的请求信息时发送。NAK_code是主控制设备和从属设备之间的通信过程中,由于错误的命令代码以及因子,从属设备没有正确的执行请求信息的理由分类的代码值,区分于产品运转时的故障。
图7c是包含错误代码(Error_code)的NAK响应信息,Error_code是与产品的运转有关的错误,由于这种错误的发生,从属设备没有成功执行请求信息时NAK_code固定为一个值,比如‘0x63’,在NAK_code的后面跟着Error_code值。
图8是事件信息的结构。
如图8所示,事件信息是设备的状态变化时生成的信息,由命令代码(例如,0x11)和事件代码(Event Code)(2字节)以及状态值(State Variable)(4字节)构成。事件代码中,上层1字节与产品代码(Product Code)相同,下位1字节表示状态变量。
图9是本发明的在应用层的数据处理方法。处理方法是有关主控制设备的应用层60从网络层70接收请求信息接收(ReqMsgRcv)基元,并取出信息传递给应用软件50a的一系列过程。
在阶段S141中,主控制设备的应用层60从网络层70接收信息接收(MsgRcv)基元。
在阶段S142中,当主控制设备的应用层60接收的信息接收(MsgRcv)基元中包含的APDU的ALO字段值不是规定值(例如‘0’),则进行第S143,忽略接收APDU,而当APDU的ALO字段值是规定值时执行S144阶段。
在阶段S144中,主控制设备的应用层60利用AHL字段值从APDU取出信息。所接收的APDU中,没有定义的字段追加到了标题上时,利用标题识别AHL字段指定的字节数,取出信息。
在阶段S145中,主控制设备的应用层60确认与接收的信息接收MsgRcv基元对应的服务明细。如果存在与信息接收(MsgRcv)基元中包含的通信循环识别代码相同值的服务明细,则进行S147阶段,如果不存在,则进行S146阶段。阶段S145中还可以包含判断信息接收(MsgRcv)基元中包含的信息是否为请求信息后,忽略这时接收的信息接收(MsgRcv)基元的阶段。所述的服务明细如下。
表10
应用层服务代码(ALSvcCode)是利用基元上的应用层服务代码(ALSvcCode)设定的,而通信循环识别代码(CycleID)是利用使用者番号(RevAddress)和应用层服务代码(ALSvcCode)设定的。
在阶段S146中,所接收的基元中包含的信息是事件或者通知信息,主控制设备的应用层60生成包含事件信息的事件使用者(EventUser)基元发送给应用软件50。
在阶段S147中,所接收的基元中包含的信息是响应信息,这时判断通信循环次数(CycleNo)的值是否大于1,如果大于1则进行阶段S149,否则响应信息执行单一的通信循环,因此执行148阶段。
在阶段S148中,主控制设备的应用层60生成包含响应信息的响应使用者(ResUser)基元,传送给应用软件50。
在阶段S149中,取出的响应信息是使用者下载请求(UserDLReq)或者是使用者上载请求基元(UserULReq)的响应,这时判断响应信息是否为NAK-响应信息。如果是,则进行第S150阶段,否则进行S148阶段。
在阶段S150中,主控制设备的应用层50将相关服务明细的通信循环次数值(CycleNo)设定为‘0’。这是为了若干通信循环构成的服务中,接收NAK-响应信息时,结束服务。这种传送服务的结束时是由整个数据形成整体的数据,因此分割数据,即损失了整个数据中的一部分数据时,因为无法使用整个数据,因此中断服务。
在阶段S151中,主控制设备的应用层60生成包含下载或者上载服务的结果和失败原因的应用层完了(ALCompleted)基元,传送给规定的软件50。
权利要求
1.一种应用层的数据处理方法,其特征在于,在至少包括下层以及应用层的协议中,包括从下层接收包含应用层协议数据单位(APDU)的信息接收基元的阶段;判断对于APDU处理与否的第1判断阶段;根据第1判断阶段的结果,从APDU取出信息的阶段;判断是否有对应的服务明细的第2判断阶段;根据第2判断阶段的结果生成规定的基元的阶段;将所生成的基元传递给上层应用软件中的阶段构成。
2.根据权利要求1所述的应用层的数据处理方法,其特征在于,所述的第1判断阶段应根据APDU应用层选项(ALO)字段是否包括规定的值而进行。
3.根据权利要求1或2所述的应用层的数据处理方法,其特征在于,所述的信息取出阶段应利用APDU的APDU标题长度(AHL)字段的值进行信息取出。
4.根据权利要求1所述的应用层的数据处理方法,其特征在于,经过第2阶段检索到信息接收基元中包含的对应通信循环识别代码对应的服务明细时,所述的信息接收应包括响应信息。
5.根据权利要求4所述的应用层的数据处理方法,其特征在于,所述的处理方法在基元的生成阶段生成响应使用者基元。
6.根据权利要求5所述的应用层的数据处理方法,其特征在于,所述的服务明细的通信循环次数的值大于‘1’,并且信息接收基元包括NAK响应信息时,处理方法还包括将通信循环次数设定为‘0’的阶段。
7.根据权利要求5所述的应用层的数据处理方法,其特征在于,所述的处理方法在基元生成阶段中生成应用层完了基元。
8.根据权利要求1所述的应用层的数据处理方法,其特征在于,经过第2阶段没有检测到包含在信息接收基元中的通信识别者对应的服务明细时,信息接收基元中包含事件信息。
9.根据权利要求8所述的应用层的数据处理方法,其特征在于,所述处理方法在基元的生成阶段生成事件使用者基元。
10.根据权利要求1所述的应用层的数据处理方法,其特征在于,所述的协议是生活网络控制协议。
全文摘要
本发明公开一种应用层的数据处理方法,在至少包括下层以及应用层的协议中包括从下层接收包含应用层协议数据单位的信息接收基元的阶段;判断对于APDU处理与否的第1判断阶段;根据第1判断阶段的结果,从APDU取出信息的阶段;判断是否有对应的服务明细的第2判断阶段;根据第2判断阶段的结果生成规定的基元的阶段;将所生成的基元传递给上层应用软件中的阶段构成。本发明,具有提供使用了提供家庭网络系统内的电器设备控制以及监视等功能的规定的生活网络控制协议、并在LnCP上传送数据的统一的若干个基元的家庭网络系统。而且在包含主控制设备的应用层的上层中,生成、传送以及处理信息。还可以根据信息的特性进行处理。
文档编号H04L29/08GK1767542SQ20041007243
公开日2006年5月3日 申请日期2004年10月27日 优先权日2004年10月27日
发明者李军锡, 白承冕, 金勇泰 申请人:乐金电子(天津)电器有限公司