JP2010287962A - Information processor, method of processing information, and program - Google Patents

Information processor, method of processing information, and program Download PDF

Info

Publication number
JP2010287962A
JP2010287962A JP2009138572A JP2009138572A JP2010287962A JP 2010287962 A JP2010287962 A JP 2010287962A JP 2009138572 A JP2009138572 A JP 2009138572A JP 2009138572 A JP2009138572 A JP 2009138572A JP 2010287962 A JP2010287962 A JP 2010287962A
Authority
JP
Japan
Prior art keywords
data
parameter
decoding
received
data length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2009138572A
Other languages
Japanese (ja)
Inventor
Ayako Kirimura
綾子 桐村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2009138572A priority Critical patent/JP2010287962A/en
Publication of JP2010287962A publication Critical patent/JP2010287962A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an information processor for decoding reception data, where start positions of parameters are undecided. <P>SOLUTION: A decoding determination section 106 determines whether reception data received by a communication section 108 are data, with which the start position of a parameter to be extracted coincides with a position defined by a prescribed rule and index decoding following the definition is possible, or data, with which the start position of the parameter differs from the defined position and the index decoding is not possible. When the index decoding is possible, a decoding section 105 performs decoding from the defined start position of the parameter to extract the parameter. When the index decoding is not possible, a detailed decoding section 102 determines the length of a data length identifier by a value of the start bit of the data length identifier disposed directly before the parameter, derives the start position of the parameter, and performs decoding from the derived start position to extract the parameter. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、符号化されたデータの復号化技術に関する。   The present invention relates to a technique for decoding encoded data.

UHF帯リーダライタのコマンドインタフェースはISO15961で定義されている。
ISO15961ではデータ符号化方式としてASN.1を使用している。
ASN.1は「データ型・データ長・データ」(データ内はさらに階層的構造)というデータ構造になっており、データ長とデータは可変長である。
The command interface of the UHF band reader / writer is defined by ISO15961.
In ISO 15961, ASN. 1 is used.
ASN. Reference numeral 1 denotes a data structure of “data type / data length / data” (further hierarchical structure in the data), and the data length and data are variable length.

一方、組込機器を遠隔から管理できるJava(登録商標)ベースのサービスプラットフォームとしてOSGiがある。
RFID(Radio Frequency IDentification)タグのようなデバイスをOSGiに準拠したソフトウェアから使用するには、OSGiで定められた仕様で制御するソフトウェアが必要になる。
OSGi仕様を実装するためのランタイムとツールを提供するEclipseプラグインとしてEquinoxがある。
Equinoxでは、リーダが送信した符号化データの復号化にはインデックスを用いた手法がとられている。
これは、あらかじめ受信データに対するパラメータ定義を行い、復号化モジュールはデータ受信時にパラメータ定義に沿って復号化を行うというものである(以降、パラメータ定義に基づく復号化をインデックス復号化とよぶ)。
パラメータ定義は、取り出すパラメータデータの受信データ先頭からの位置(インデックス)、取り出す長さ、パラメータの型で定義される。
On the other hand, there is OSGi as a Java (registered trademark) -based service platform capable of remotely managing embedded devices.
In order to use a device such as an RFID (Radio Frequency IDentification) tag from software compliant with OSGi, software that is controlled by specifications defined by OSGi is required.
Equinox is an Eclipse plug-in that provides a runtime and tools for implementing the OSGi specification.
In Equinox, an index is used for decoding encoded data transmitted by a reader.
This is a parameter definition for received data in advance, and the decoding module performs decoding according to the parameter definition when data is received (hereinafter, decoding based on the parameter definition is referred to as index decoding).
The parameter definition is defined by the position (index) from the beginning of the received data of the parameter data to be extracted, the length to be extracted, and the parameter type.

図3に文字列型の受信データの例を示す。
”ID=”より後ろにあるデータがパラメータデータ(以下、パラメータともいう)となるとする。
この場合のパラメータ定義は、受信データの先頭から4文字目、文字列型、不定長のパラメータ、という定義となり、受信データ先頭から4文字目以降のデータを復号してパラメータを取り出すというインデックス復号化が行われる。
FIG. 3 shows an example of character string type received data.
It is assumed that data after “ID =” is parameter data (hereinafter also referred to as a parameter).
The parameter definition in this case is the definition of the fourth character from the beginning of the received data, the character string type, and an indefinite length parameter. Index decoding that decodes the data after the fourth character from the beginning of the received data and extracts the parameters. Is done.

Equinoxを用いてISO15961準拠のリーダライタ用の制御ソフトウェアを実現しようとすると、ASN.1で符号化されたデータをインデックスによる復号化を行う必要がある。   When implementing control software for a reader / writer conforming to ISO 15961 using Equinox, ASN. It is necessary to decode the data encoded by 1 using an index.

図2は、ASN.1符号化方式を採用するRFIDリーダにおけるタグIDの読み取りコマンドの実行結果を表すデータの例である。
データにタグ枚数とタグリストの二つのパラメータがあり、タグ枚数99、タグリストデータの長さが357である(タグリストデータの長さ:357は、index=8〜10の部分の下位2バイト「0165」の十進数表記)。
パラメータとして取得すべきなのは、タグ枚数部分のindex=6とタグIDリストのindex=10の部分のみである。
ここで、図2の各要素は、以下のとおりである。
index=0:データ全体を現す「型」識別子
index=1:データ全体の「データ長」識別子
index=4:タグ枚数パラメータの「型」識別子
index=5:タグ枚数パラメータの「データ長」識別子
index=6:タグ枚数パラメータの「データ」(パラメータデータ)
index=7:タグIDリストパラメータの「型」識別子
index=8:タグIDリストパラメータの「データ長」識別子
index=10:タグIDリストパラメータの「データ」(パラメータデータ)
「型」識別子は1バイト固定、「データ長」識別子及び「データ」は可変長である。
FIG. It is an example of the data showing the execution result of the read command of tag ID in the RFID reader which employ | adopts 1 encoding system.
The data has two parameters, the number of tags and the tag list. The number of tags is 99 and the length of the tag list data is 357 (the length of the tag list data: 357 is the lower 2 bytes of the index = 8-10 portion) "0165" in decimal notation).
Only the index = 6 of the tag number portion and the index = 10 portion of the tag ID list should be acquired as parameters.
Here, each element of FIG. 2 is as follows.
index = 0: “type” identifier representing the entire data index = 1: “data length” identifier of the entire data index = 4: “type” identifier of the tag number parameter index = 5: “data length” identifier of the tag number parameter index = 6: “Data” (parameter data) of the tag number parameter
index = 7: “Type” identifier of the tag ID list parameter index = 8: “Data length” identifier of the tag ID list parameter index = 10: “Data” (parameter data) of the tag ID list parameter
The “type” identifier is fixed to 1 byte, the “data length” identifier and the “data” are variable length.

また、複数のパラメータがある場合、そのリストもデータとして定義される(index=0がリストの型、index=1がリストデータの長さ、index=4以降の全体がパラメータ)。   If there are a plurality of parameters, the list is also defined as data (index = 0 is the type of the list, index = 1 is the length of the list data, and the whole after index = 4 is the parameter).

図2に示すデータに対しインデックス復号化を適用しようとするならば、タグ枚数パラメータとしてindex=6から1バイトを数値型とし、index=10からデータ末尾までを文字列型として復号化パラメータを定義する。
ただし、この例のように、リストに含まれるデータ長が大きくなる可能性がある場合、リストのデータ長を表す「データ長」識別子(index=8〜10)やその上位のデータ全体のデータ長を表す部分(index=1〜4)が可変長になるため、目的とするパラメータのデータの開始位置が定まらず、インデックスによる復号化が行えないため、タグ枚数が多い場合などに対応できないという課題がある。
If the index decoding is to be applied to the data shown in FIG. 2, the decoding parameter is defined as a tag number parameter from index = 6 to 1 byte as a numerical type, and from index = 10 to the end of the data as a character string type. To do.
However, as in this example, when there is a possibility that the data length included in the list becomes large, the “data length” identifier (index = 8 to 10) indicating the data length of the list or the data length of the entire data above it Since the part (index = 1 to 4) representing the variable has a variable length, the start position of the target parameter data cannot be determined, and decoding using the index cannot be performed. There is.

この点、RFIDリーダライタの通信プロトコルの違いの吸収を目的とする従来技術として特許文献1がある。
特許文献1では、リーダごとに異なる通信プロトコルをアプリケーションシステムから利用可能な共通プロトコルへの変換するという技術が開示されている。
しかしながら、特許文献1では、具体的なプロトコル処理方法には触れられていない。
In this regard, Patent Document 1 is known as a conventional technique for absorbing differences in communication protocols of RFID reader / writers.
Patent Document 1 discloses a technique of converting a different communication protocol for each reader into a common protocol that can be used from an application system.
However, Patent Document 1 does not mention a specific protocol processing method.

特表2008−524742号公報Special table 2008-524742

本発明は、以上のような課題に鑑みたものであり、可変長のデータ要素を含むため、パラメータデータの開始位置が不定であるため、インデックス復号化ができない受信データの復号化を可能にする復号化技術を実現することを主な目的とする。   The present invention has been made in view of the above-described problems, and includes variable-length data elements. Therefore, since the starting position of parameter data is indefinite, it is possible to decode received data that cannot be index-decoded. The main purpose is to realize a decoding technique.

本発明に係る情報処理装置は、
符号化されているパラメータデータと前記パラメータデータのデータ長が示される符号化されているデータ長識別子とが含まれ、前記データ長識別子に続いて前記パラメータデータが配置され、前記パラメータデータの開始位置が不定であり、前記データ長識別子の先頭ビットの値により前記データ長識別子のデータ長が判別可能な不定受信データを受信するデータ受信部と、
前記不定受信データにおいて前記データ長識別子の先頭ビットを抽出し、前記データ長識別子の先頭ビットの値に基づいて前記データ長識別子のデータ長を判断して前記パラメータデータの開始位置を判定し、判定した前記パラメータデータの開始位置から前記データ長識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出する不定受信データ復号化部とを有することを特徴とする。
An information processing apparatus according to the present invention includes:
The encoded parameter data and an encoded data length identifier indicating the data length of the parameter data are included, the parameter data is arranged following the data length identifier, and the start position of the parameter data A data receiving unit for receiving indefinite received data in which the data length of the data length identifier can be determined by the value of the first bit of the data length identifier;
Extracting the first bit of the data length identifier in the indefinite received data, determining the data length of the data length identifier based on the value of the first bit of the data length identifier, determining the start position of the parameter data, and determining And an indefinite received data decoding unit that decodes a bit string corresponding to the data length obtained by decoding the data length identifier from the start position of the parameter data, and extracts the parameter data after decoding.

本発明によれば、可変長のデータ要素を含むため、パラメータデータの開始位置が不定である受信データに対しても、データ長識別子の先頭ビットの値からパラメータデータの開始位置を特定することができ、パラメータデータを正しく復号化できる。   According to the present invention, since the variable length data element is included, it is possible to specify the start position of the parameter data from the value of the first bit of the data length identifier even for the reception data in which the start position of the parameter data is indefinite. And parameter data can be correctly decoded.

実施の形態1に係るシステム構成例を示す図。FIG. 3 is a diagram illustrating an example of a system configuration according to the first embodiment. 実施の形態1に係る受信データの例を示す図。FIG. 4 is a diagram showing an example of received data according to the first embodiment. 文字列型の受信データの例を示す図。The figure which shows the example of receiving data of a character string type. 実施の形態1に係るサーバ100の動作例を示すフローチャート図。FIG. 3 is a flowchart showing an operation example of the server 100 according to the first embodiment. 実施の形態1に係るデータ制御部の動作例を示すフローチャート図。FIG. 3 is a flowchart showing an operation example of a data control unit according to the first embodiment. 実施の形態3に係る復号化判定パターンの例を示す図。FIG. 11 shows an example of a decoding determination pattern according to the third embodiment. 実施の形態1に係る復号化パラメータリスト(パラメータ復号化済み)の例を示す図。FIG. 6 is a diagram showing an example of a decoding parameter list (parameter decoding completed) according to the first embodiment. 実施の形態1に係る復号化パラメータリスト(パラメータ未復号化)の例を示す図。The figure which shows the example of the decoding parameter list | wrist (parameter undecoding) based on Embodiment 1. FIG. 実施の形態1に係る詳細復号化後の制御パラメータリストの例を示す図。FIG. 6 is a diagram showing an example of a control parameter list after detailed decoding according to the first embodiment. 実施の形態5に係るシステム構成例を示す図。FIG. 10 is a diagram showing a system configuration example according to a fifth embodiment. 実施の形態5に係る入力ファイルの例を示す図。FIG. 20 is a diagram showing an example of an input file according to the fifth embodiment. 実施の形態6に係るシステム構成例を示す図。FIG. 10 is a diagram illustrating an example of a system configuration according to a sixth embodiment. 実施の形態6に係るログ出力の例を示す図。FIG. 20 is a diagram illustrating an example of log output according to the sixth embodiment. 実施の形態1〜6に係るサーバ100のハードウェア構成例を示す図。The figure which shows the hardware structural example of the server 100 which concerns on Embodiment 1-6.

実施の形態1.
本実施の形態では、可変長のデータ要素を含むため、パラメータデータ(以下、パラメータともいう)の開始位置が不定であり、インデックス復号化ができない受信データに対しても正しく復号化を行う装置を説明する。
より具体的には、インデックス符号化方式を採用するデバイス制御ソフトウェアにおいて、ASN.1符号化方式を採用するRFIDリーダとの通信をサポートするとともに、高速な復号化方式を適用できるデータのパターンを判定し、復号化方式を切り替えることによってデータの復号化処理を高速化する装置を説明する。
なお、以下では、可変長のデータ要素を含むため、パラメータデータの開始位置が不定であり、インデックス復号化ができない受信データを不定受信データともいう。
一方、可変長のデータ要素を含まず、パラメータデータの開始位置が所定の規則(ASN.1等)で定義されている位置(基準位置)に一致し、インデックス復号化が可能な受信データを定義受信データともいう。
Embodiment 1 FIG.
In this embodiment, since a variable-length data element is included, the start position of parameter data (hereinafter also referred to as a parameter) is indefinite, and an apparatus that correctly decodes received data that cannot be index-decoded is provided. explain.
More specifically, in device control software that employs an index coding scheme, ASN. An apparatus that supports communication with an RFID reader that employs one encoding method, determines a data pattern to which a high-speed decoding method can be applied, and switches the decoding method to speed up data decoding processing. explain.
In the following, since variable length data elements are included, the start position of the parameter data is indefinite, and reception data that cannot be index decoded is also referred to as indefinite reception data.
On the other hand, it does not include variable-length data elements, and the start position of the parameter data matches the position (reference position) defined by a predetermined rule (ASN.1, etc.), and defines received data that can be index decoded Also called received data.

ここで、本実施の形態に係る装置が、可変長のデータ要素を含むためパラメータデータの開始位置が不定である不定受信データにおいてパラメータデータの開始位置を判定できる原理を説明する。   Here, the principle that the apparatus according to the present embodiment can determine the start position of the parameter data in the indefinite reception data in which the start position of the parameter data is indefinite because it includes a variable-length data element.

図2は、本実施の形態において用いる受信データの例であり、前述のとおり、ASN.1符号化方式を採用するRFIDリーダにおけるタグIDの読み取りコマンドの実行結果を表すデータの例である。   FIG. 2 is an example of received data used in the present embodiment. As described above, ASN. It is an example of the data showing the execution result of the read command of tag ID in the RFID reader which employ | adopts 1 encoding system.

図2において、「データ長」識別子(index=5、index=8等)は、第1バイトの先頭ビットが「0」か「1」かで、「データ長」識別子が何バイトで構成されているかが分かるように符号化されている。
図2の例では、先頭1ビットの値が「0」の場合は「データ長」識別子の長さが1バイトであり、先頭1ビットの値が「1」の場合は「データ長」識別子の長さが3バイトであることが予め定義されており、index=5(タグ枚数パラメータの「データ長」識別子)の第1バイトの先頭ビットは「0」であり、index=5(タグ枚数パラメータの「データ長」識別子)の復号時には、先頭1ビットの値が「0」であることを検出して、タグ枚数パラメータの「データ長」識別子は1バイトであると判断できる。
また、index=8(タグIDリストパラメータの「データ長」識別子の第1バイト)の先頭ビットは「1」であり、このため、タグIDリストパラメータの「データ長」識別子は3バイトであると判断できる。
このため、パラメータデータの開始位置が不定であっても、「データ長」識別子の先頭ビットの値を検出することによって「データ長」識別子のデータ長を判断することができ、この結果、不定受信データにおけるパラメータデータの開始位置を判定することができる。
また、「データ長」識別子の先頭ビットの値に基づいて「データ長」識別子のデータ長を判断して「データ長」識別子を復号し、復号結果からパラメータデータのデータ長を得ることができ、判定したパラメータデータの開始位置から「データ長」識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出することができる。
In FIG. 2, the “data length” identifier (index = 5, index = 8, etc.) is composed of the first bit of the first byte being “0” or “1”, and the “data length” identifier is composed of how many bytes. It is encoded so that it can be seen.
In the example of FIG. 2, when the value of the first 1 bit is “0”, the length of the “data length” identifier is 1 byte, and when the value of the first 1 bit is “1”, the “data length” identifier It is predefined that the length is 3 bytes, the first bit of the first byte of index = 5 (“data length” identifier of the tag number parameter) is “0”, and index = 5 (tag number parameter) At the time of decoding, it can be determined that the value of the first 1 bit is “0” and the “data length” identifier of the tag number parameter is 1 byte.
Further, the first bit of index = 8 (the first byte of the “data length” identifier of the tag ID list parameter) is “1”, and therefore the “data length” identifier of the tag ID list parameter is 3 bytes. I can judge.
For this reason, even if the starting position of the parameter data is indefinite, the data length of the “data length” identifier can be determined by detecting the value of the first bit of the “data length” identifier. The starting position of the parameter data in the data can be determined.
Further, based on the value of the first bit of the “data length” identifier, the data length of the “data length” identifier is determined to decode the “data length” identifier, and the data length of the parameter data can be obtained from the decoding result, The bit string corresponding to the data length obtained by decoding the “data length” identifier from the determined starting position of the parameter data can be decoded, and the decoded parameter data can be extracted.

図1は、本実施の形態に係るシステム構成例を示す。   FIG. 1 shows a system configuration example according to the present embodiment.

本実施の形態では、サーバ装置100(以下、単にサーバという)が、ネットワーク500を介してアプリケーションサーバ200に接続され、また、ネットワーク600を介してRFIDリーダ300に接続されている。
なお、図1では、ネットワーク500及びネットワーク600を示しているが、ネットワークに限らず、シリアルケーブルなどの直接接続であってもよい。
なお、サーバ100は、情報処理装置の例である。
In the present embodiment, server apparatus 100 (hereinafter simply referred to as a server) is connected to application server 200 via network 500 and is also connected to RFID reader 300 via network 600.
1 shows the network 500 and the network 600, the present invention is not limited to the network, and may be a direct connection such as a serial cable.
The server 100 is an example of an information processing apparatus.

サーバ100は、デバイス制御部101、コマンドパラメータ作成部103、通信制御部107、通信部108の4階層からなる。
デバイス制御部101は、例えば、デバイス制御ソフトウェアにより実現される。アプリケーションはネットワーク上のアプリケーションサーバ200、もしくはデバイス制御ソフトウェアが動作するサーバ100上で動作する。
デバイス制御部101の制御対象となるデバイスとしてRFIDリーダ300がある。
また、デバイス制御部101はRFIDリーダ300に対するコマンドの発行の開始・停止、受信したコマンド実行結果のアプリケーションへの通知などを行うことで、サーバ100全体の動作を制御する。
また、デバイス制御部101には、デバイス制御を行う部分の他に詳細復号化部102がある。
デバイス制御は、デバイスの起動、コマンドの発行、コマンド実行結果のアプリケーションへの通知など、サーバ100全体の動作を制御することである。
なお、詳細復号化部102の詳細は後述する。詳細復号化部102は、不定受信データ復号化部の例である。
The server 100 includes four layers: a device control unit 101, a command parameter creation unit 103, a communication control unit 107, and a communication unit 108.
The device control unit 101 is realized by, for example, device control software. The application operates on the application server 200 on the network or the server 100 on which the device control software operates.
An RFID reader 300 is a device to be controlled by the device control unit 101.
The device control unit 101 controls the overall operation of the server 100 by starting / stopping issue of commands to the RFID reader 300 and notifying the received command execution result to the application.
Further, the device control unit 101 includes a detailed decoding unit 102 in addition to a part that performs device control.
Device control is to control the overall operation of the server 100, such as device activation, command issuance, and command execution result notification to an application.
Details of the detailed decoding unit 102 will be described later. The detailed decoding unit 102 is an example of an indefinite received data decoding unit.

コマンドパラメータ作成部103は、パラメータの符号化部104、復号化部105、復号化判定部106からなる。
符号化部104は、デバイス制御部101で指定されたコマンドパラメータをRFIDリーダ300のコマンドインタフェースに従ったデータ列に変換する。
復号化部105は、RFIDリーダ300から受信したコマンド実行結果に対しインデックスによる制御パラメータへの復号化を行い、パラメータ化してデバイス制御部101に渡す。なお、制御パラメータとの称呼は復号化後のパラメータを示す。
インデックスによる制御パラメータへの復号化は、あらかじめ用いるコマンドの実行結果のデータをパターンデータとして定義しておき、その定義に従って受信データからパラメータを抽出し、パラメータリストを作成すると共に、詳細復号化が必要かどうかをフラグとしてリストに追加した復号化データを作成する。
復号化部105では、詳細復号化が必要かどうかで復号化に用いるパターンデータを変えることで動作を変える。
復号化判定部106は、受信データが復号化部105によるインデックス復号化が可能な定義受信データであるか、詳細復号化部102による詳細復号化が必要な不定受信データであるかを判定する。
このように、復号化部105は定義受信データに対してインデックス復号化を行う手段であり、詳細復号化部102は不定受信データに対してインデックス復号化以外の手法により復号化を行う手段である。
なお、復号化部105は定義受信データ復号化部の例であり、復号化判定部106は受信データ判別部の例である。
The command parameter creation unit 103 includes a parameter encoding unit 104, a decoding unit 105, and a decoding determination unit 106.
The encoding unit 104 converts the command parameter specified by the device control unit 101 into a data string according to the command interface of the RFID reader 300.
The decryption unit 105 decrypts the command execution result received from the RFID reader 300 into a control parameter by using an index, converts the parameter into a parameter, and passes the parameter to the device control unit 101. The name “control parameter” indicates a parameter after decoding.
Decoding of control parameters using indexes defines the command execution result data used in advance as pattern data, extracts parameters from the received data according to the definition, creates a parameter list, and requires detailed decoding Decrypted data added to the list as a flag is created.
The decoding unit 105 changes operation by changing pattern data used for decoding depending on whether detailed decoding is necessary.
The decoding determination unit 106 determines whether the received data is definition reception data that can be index-decoded by the decoding unit 105 or indefinite received data that requires detailed decoding by the detailed decoding unit 102.
As described above, the decoding unit 105 is a unit that performs index decoding on the definition reception data, and the detailed decoding unit 102 is a unit that performs decoding on the indefinite reception data by a method other than index decoding. .
The decoding unit 105 is an example of a definition reception data decoding unit, and the decoding determination unit 106 is an example of a reception data determination unit.

通信制御部107は、RFIDリーダ300の通信仕様にあわせたデータの送受信を行う。
通信部108は、通信形態にあわせて通信路の確保、開放などを行う。
通信部108はデータ受信部の例である。
The communication control unit 107 transmits / receives data in accordance with the communication specification of the RFID reader 300.
The communication unit 108 secures or opens a communication path according to the communication form.
The communication unit 108 is an example of a data receiving unit.

ここで、詳細復号化部102について説明する。
詳細復号化部102は、コマンドパラメータ作成部103の復号化部105で得られた復号化結果をもとに、詳細復号化が必要なデータを、ASN.1符号化データとして復号化し、得られたパラメータをリスト化する。
より具体的には、復号化判定部106により受信データが不定受信データであり詳細復号化が必要と判定された場合に、不定受信データにおいて「データ長」識別子の先頭ビットを抽出し、「データ長」識別子の先頭ビットの値に基づいて「データ長」識別子のデータ長を判断してパラメータデータの開始位置を判定し、判定したパラメータデータの開始位置から「データ長」識別子を復号して得られるデータ長分のビット列をASN.1に基づいて復号し、復号後のパラメータデータを抽出する。
Here, the detailed decoding unit 102 will be described.
Based on the decoding result obtained by the decoding unit 105 of the command parameter creation unit 103, the detailed decoding unit 102 converts the data that requires detailed decoding into ASN. Decoding is performed as one encoded data, and the obtained parameters are listed.
More specifically, when it is determined by the decoding determination unit 106 that the received data is indefinite received data and detailed decoding is necessary, the first bit of the “data length” identifier is extracted from the indefinite received data, and “data Based on the value of the first bit of the “length” identifier, the data length of the “data length” identifier is determined to determine the start position of the parameter data, and the “data length” identifier is decoded from the determined start position of the parameter data. A bit string corresponding to the data length to be ASN. Decoding is performed based on 1, and parameter data after decoding is extracted.

次に、図4のフローチャートを用いて、サーバ100におけるデータ受信時の動作について説明する。   Next, the operation at the time of data reception in the server 100 will be described using the flowchart of FIG.

先ず、デバイス制御部101がコマンドパラメータ作成部103を用いてRFIDリーダ300に対するコマンドを生成し、生成したコマンドを通信制御部107及び通信部108を介してRFIDリーダ300に送信すると、RFIDリーダ300は何らかのコマンド実行結果をデータ列としてサーバ100に送信する。
送信されたデータは通信部108が受信する(データ受信ステップ)。
ステップ1では、通信制御部107が受信データを1コマンドに対するコマンド実行結果として切り分ける。
図2に示す受信データは、ステップ1において切り分けられた後のデータである。
First, when the device control unit 101 generates a command for the RFID reader 300 using the command parameter creation unit 103 and transmits the generated command to the RFID reader 300 via the communication control unit 107 and the communication unit 108, the RFID reader 300 Some command execution result is transmitted to the server 100 as a data string.
The transmitted data is received by the communication unit 108 (data reception step).
In step 1, the communication control unit 107 cuts the received data as a command execution result for one command.
The received data shown in FIG. 2 is data after being separated in step 1.

次に、コマンドの実行結果データはコマンドパラメータ作成部103にわたる。
そして、ステップ2において、コマンドパラメータ作成部103が送信コマンドと受信データが対応しているかどうかを、受信データに含まれるコマンドIDデータ列があらかじめ定義されたコマンドIDデータ列と一致していることを確認して判定する。
図2では、コマンドIDデータ列は図示を省略しているが、コマンドIDデータ列は、図2の受信データの先頭(図2のindex=0の前)に配置されている。
Next, command execution result data passes to the command parameter creation unit 103.
In step 2, the command parameter creation unit 103 confirms whether the command ID data string included in the received data matches the command ID data string defined in advance. Confirm and judge.
In FIG. 2, the command ID data string is not shown, but the command ID data string is arranged at the head of the received data in FIG. 2 (before index = 0 in FIG. 2).

次に、ステップ3において、復号化判定部106が詳細復号化が必要かどうかを判定する。
この判定は受信データから受信データ全体のデータ長を表す部分を復号化して判定する。
受信データ全体のデータ長を表す部分は、図2で表すデータの例であると、データ先頭から2文字目以降(index=1〜4に配置されている「全体データ長」識別子)にあたる。
これをASN.1符号化データのデータ長として復号化する。
より具体的には、図2の“82016A”の先頭バイトは“82”であり先頭ビットは“1”なので、「全体データ長」は3バイトであることがわかり、残り2バイトである“016A”の復号化により、図2の受信データの全体データ長は、362(バイト)であることが分かる。
復号化して得られたデータ長が、あらかじめ定義された復号化用コマンド実行結果データパターンのデータ長より長い場合、詳細復号化が必要と判断し、同じか短い場合はインデックスによる復号化が可能と判断する。
Next, in step 3, the decoding determination unit 106 determines whether detailed decoding is necessary.
This determination is performed by decoding a portion representing the data length of the entire received data from the received data.
In the example of the data shown in FIG. 2, the part representing the data length of the entire received data corresponds to the second and subsequent characters from the top of the data (“total data length” identifier arranged at index = 1 to 4).
This is called ASN. Decoding is performed as the data length of one encoded data.
More specifically, since the first byte of “82016A” in FIG. 2 is “82” and the first bit is “1”, it can be seen that the “total data length” is 3 bytes, and the remaining 2 bytes are “016A”. 2 indicates that the total data length of the received data in FIG. 2 is 362 (bytes).
If the data length obtained by decryption is longer than the data length of the decryption command execution result data pattern defined in advance, it is determined that detailed decryption is necessary. to decide.

詳細復号化が必要でない場合は、ステップ4にて、復号化部105がインデックスによる復号化を行い、パラメータリストを作成する。
そして、復号化部105は、ステップ5において、コマンド実行結果データパターンで定義されているインデックスリストから、ひとつのパラメータの定義に従い受信データからパラメータを抽出する。
また、復号化部105は、ステップ6において、詳細復号化が不要であることを示すフラグをリストに追加する。具体的には、リスト中のパラメータ[0]の欄にfalseを記入する。
If detailed decoding is not necessary, in step 4, the decoding unit 105 performs decoding using an index to create a parameter list.
Then, in step 5, the decoding unit 105 extracts parameters from the received data according to the definition of one parameter from the index list defined by the command execution result data pattern.
In step 6, the decoding unit 105 adds a flag indicating that detailed decoding is not necessary to the list. Specifically, “false” is entered in the parameter [0] column of the list.

図7は、ステップ4〜ステップ6の処理を経た後の復号化パラメータリストの例を示す。
図7では、パラメータ[0]の値がfalseであり、詳細復号化が不要であることを示している。また、図7では、1、00000001という2つのパラメータデータがインデックス復号化により抽出されたことが示されている。
FIG. 7 shows an example of the decoding parameter list after the processing of step 4 to step 6.
In FIG. 7, the value of the parameter [0] is false, indicating that detailed decoding is not necessary. Further, FIG. 7 shows that two parameter data of 1,000,0001 are extracted by index decoding.

一方、詳細復号化が必要と判断された場合はコマンドパラメータ作成部103の復号化部105ではパラメータの詳細復号化は行わず、ステップ7において、受信データ全体の「データ型・データ長・データ」の全てをバイト列パラメータとし、ひとつのパラメータとして復号化し、パラメータリストを作成する。
つまり、図2のデータ例では、データの先頭から終端までの受信データ全体を1つのパラメータとしてパラメータリストを作成する。
On the other hand, if it is determined that detailed decoding is necessary, the decoding unit 105 of the command parameter creation unit 103 does not perform detailed decoding of parameters, and in step 7, “data type / data length / data” of the entire received data. Are all converted into byte parameters and decoded as one parameter to create a parameter list.
That is, in the data example of FIG. 2, a parameter list is created with the entire received data from the beginning to the end of the data as one parameter.

次に、復号化部105は、ステップ8において、詳細復号化が必要であることを示すフラグをリストに追加する。
具体的には、リスト中のパラメータ[0]の欄にTrueを記入する。
Next, in step 8, the decoding unit 105 adds a flag indicating that detailed decoding is necessary to the list.
Specifically, True is entered in the parameter [0] field in the list.

図8は、図2のデータに対してステップ7及びステップ8を行って得られる復号化パラメータリストの例を示す。
図8では、パラメータ[0]の値がtrueであり、詳細復号化が必要であることを示している。
また、パラメータ[1]の値が、図2のデータ全体(3082016A・・・)であり、図2のデータ全体をパラメータとしていることを示している。
FIG. 8 shows an example of a decoding parameter list obtained by performing Step 7 and Step 8 on the data of FIG.
In FIG. 8, the value of the parameter [0] is true, indicating that detailed decoding is necessary.
Further, the value of the parameter [1] is the entire data (3082016A...) Of FIG. 2, and the entire data of FIG.

1度目の復号化(復号化部105によるステップ5又はステップ7)を施したデータはデバイス制御部101にわたる。
デバイス制御部101における動作内容は、図5のフローチャートに従って説明する。
The data subjected to the first decoding (step 5 or step 7 by the decoding unit 105) is transmitted to the device control unit 101.
The operation contents in the device control unit 101 will be described with reference to the flowchart of FIG.

デバイス制御部101では、まず詳細復号化部102に復号化パラメータリスト(図8)を渡す。
次に、詳細復号化部102は、ステップ9において、復号化パラメータリストのパラメータ[0]から、詳細復号化が必要かを示すフラグのデータを取り出し、詳細復号化が必要かを判定する。
The device control unit 101 first passes the decoding parameter list (FIG. 8) to the detailed decoding unit 102.
Next, in step 9, the detailed decoding unit 102 extracts flag data indicating whether detailed decoding is necessary from the parameter [0] in the decoding parameter list, and determines whether detailed decoding is necessary.

詳細復号化が必要でなければ、ステップ10において、詳細復号化部102は、詳細復号化が必要かを示すフラグのデータ(パラメータ[0])以外のデータを復号化パラメータリストから取り出し、それを制御パラメータリストとする。   If detailed decoding is not necessary, in step 10, the detailed decoding unit 102 extracts data other than flag data (parameter [0]) indicating whether detailed decoding is necessary from the decoding parameter list, and extracts it. It is a control parameter list.

一方、詳細復号化が必要であれば、ステップ11において、詳細復号化部102は、復号化パラメータリストのパラメータ[1]のバイトデータ列を未復号化データとし、ステップ12〜ステップ16に示すように、パラメータ[1]のバイトデータ列を、データ先頭から再帰的な復号化処理を行い、詳細復号化を行っていく(不定受信データ復号化ステップ)。   On the other hand, if detailed decoding is necessary, in step 11, the detailed decoding unit 102 sets the byte data string of the parameter [1] in the decoding parameter list as undecoded data, as shown in steps 12 to 16. Then, the byte data string of the parameter [1] is recursively decoded from the top of the data to perform detailed decoding (indefinite received data decoding step).

ステップ12では、詳細復号化部102は、未復号化データに対し、ASN1.符号化データとしてデータ先頭から「データ型・データ長・データ」として復号化する。   In step 12, the detailed decoding unit 102 applies ASN1. The encoded data is decoded as “data type / data length / data” from the top of the data.

ステップ13では、詳細復号化部102は、復号化して得られた「データ型」が、単純型(文字列や数値)ではなく、再帰型のデータ型(入れ子構造データ)かどうか判定する。
例えば、図2のデータのindex=0に示される「データ型」:30は、再帰型であり、index=4に示される「データ型」:02やindex=7に示される「データ型」:04は単純型である。
In step 13, the detailed decryption unit 102 determines whether the “data type” obtained by decryption is not a simple type (character string or numeric value) but a recursive data type (nested structure data).
For example, “data type”: 30 shown in index = 0 of the data in FIG. 2 is a recursive type, “data type” shown in index = 4: “data type” shown in 02 or index = 7: 04 is a simple type.

再帰型のデータ型(入れ子構造データ)の場合、詳細復号化部102は、ステップ14において、復号化して得られた「データ」を未復号化データとする。
図2のデータでは、index=4以降のデータ全体を未復号化データとする。
In the case of a recursive data type (nested structure data), the detailed decoding unit 102 sets “data” obtained by decoding as undecoded data in step 14.
In the data of FIG. 2, the entire data after index = 4 is set as undecoded data.

一方、単純型(文字列や数値)のデータ型の場合、詳細復号化部102は、ステップ15において、復号化して得られた「データ」を制御パラメータリストに追加する。
前述したように、「データ長」識別子は、第1バイトの先頭ビットが0か1かで、「データ長」識別子が何バイトで構成されているかが分かるように符号化されている。
詳細復号化部102は、「データ長」識別子の先頭ビットの値に基づいて「データ長」識別子のデータ長を判断して「データ長」識別子を復号し、復号結果からパラメータデータのデータ長を得ることができ、判定したパラメータデータの開始位置から「データ長」識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出し、抽出したパラメータデータを制御パラメータリストに追加する。
On the other hand, in the case of a simple data type (character string or numerical value), the detailed decoding unit 102 adds “data” obtained by decoding to the control parameter list in step 15.
As described above, the “data length” identifier is encoded so that the first bit of the first byte is 0 or 1 and it is understood how many bytes the “data length” identifier is composed of.
The detailed decoding unit 102 determines the data length of the “data length” identifier based on the value of the first bit of the “data length” identifier, decodes the “data length” identifier, and determines the data length of the parameter data from the decoding result. A bit string for the data length obtained by decoding the “data length” identifier from the start position of the determined parameter data can be obtained, the parameter data after the decoding is extracted, and the extracted parameter data is the control parameter list Add to

また、詳細復号化部102は、ステップ15の復号化の後、ステップ16において、復号化データの後に復号化されていないデータが残っているかどうかを判断し、未復号化データが残っている場合は、ステップ12に戻り、さらに未復号化データの復号化を実施する。   Further, after the decoding in step 15, the detailed decoding unit 102 determines in step 16 whether or not undecoded data remains after the decoded data, and if undecoded data remains Returns to step 12 and further decrypts the undecoded data.

詳細復号化部102は、ステップ12〜ステップ16の処理を繰り返して、パラメータデータを抽出し、制御パラメータリストを作成する。
図9は、詳細復号化部102により詳細復号化がなされて作成された制御パラメータリストの例を示す。
図9は、図2のデータに対して詳細復号化を行った結果を示しており、図2のパラメータデータである「99」及び「00000001」等が示されている。
The detailed decoding unit 102 repeats the processing of step 12 to step 16 to extract parameter data and create a control parameter list.
FIG. 9 shows an example of a control parameter list created by the detailed decoding performed by the detailed decoding unit 102.
FIG. 9 shows the result of performing detailed decoding on the data of FIG. 2, and “99”, “00000001”, etc., which are the parameter data of FIG. 2, are shown.

このように、本実施の形態によれば、パラメータデータの開始位置が不定である不定受信データに対しても、データ長識別子の先頭ビットの値からパラメータデータの開始位置を特定することができ、パラメータデータを正しく復号化できる。   Thus, according to the present embodiment, the start position of the parameter data can be identified from the value of the first bit of the data length identifier even for indefinite received data in which the start position of the parameter data is indefinite, Parameter data can be correctly decoded.

また、本実施の形態では、データパターンによって復号化処理を切り替えることによって、タグ枚数が多い場合などの、可変長データの復号化を可能にすると共に、単純なパターンのデータだった場合は高速な復号化方法を適用することで、より高速な復号化処理を実現することができる。   Further, in this embodiment, by switching the decoding process depending on the data pattern, it is possible to decode variable-length data such as when the number of tags is large, and at the same time, if the data is a simple pattern, it is fast. By applying the decoding method, a higher-speed decoding process can be realized.

以上、本実施の形態では、デバイス制御部とコマンドパラメータ作成部と通信制御部と通信部を備え、
コマンドパラメータ作成部には復号化判定部と復号化部を、デバイス制御部に詳細復号化部とを備えたデバイス制御装置であり、
前記通信部はRFIDリーダとの通信路を確立し、
前記通信制御部はRFIDリーダに対しRFIDリーダのコマンドインタフェースに従ったデータを送信し、RFIDリーダがコマンドに対して送信したコマンド実行結果を受信し、
前記コマンドパラメータ作成部の復号化判定部は、受信データからデータ全体のデータ長を表す部分を復号化して得たデータ長とコマンド実行結果の最短パターンでの長さを比較することで、可変長階層構造データとして2段階復号化する必要があるかを判定し、
前記コマンドパラメータ作成部の復号化部は、デバイスから受信したデータをバイト列中の位置、長さ、データ型を指定してバイト列型パラメータとして単一パラメータとしてデータを復号化するが、その際に、可変長階層構造データとして復号化する必要がなければ、固定長データとしてバイト列中の位置、長さ、データ型を指定してひとつ以上の制御パラメータとして復号化し、可変長階層構造データとして復号化する必要があれば、バイト列中の位置、長さ、データ型を指定してバイト列型パラメータとして単一パラメータとしてデータを復号化し、
前記デバイス制御部は、前記復号化部の復号化結果をもとに制御パラメータとして復号化済みであるかを判断し、
制御パラメータとして復号化済みであれば、詳細復号化部を通さずに復号化パラメータを得、
制御パラメータとして復号がされていなければ、コマンドパラメータ作成部の復号化部で復号化したバイト列パラメータを可変長階層構造データとして復号化を行うことでひとつ以上の制御パラメータとして復号化し、
前記デバイス制御部は得られた制御パラメータを用いてデバイス制御を行うとともに上位アプリケーションにコマンド実行結果を通知する
デバイス制御装置を説明した。
As described above, in the present embodiment, the device control unit, the command parameter creation unit, the communication control unit, and the communication unit are provided.
The command parameter creation unit is a device control apparatus including a decoding determination unit and a decoding unit, and a device control unit including a detailed decoding unit,
The communication unit establishes a communication path with the RFID reader,
The communication control unit transmits data according to the command interface of the RFID reader to the RFID reader, receives the command execution result transmitted by the RFID reader in response to the command,
The decoding determination unit of the command parameter creating unit compares the data length obtained by decoding the portion representing the data length of the entire data from the received data with the length of the command execution result in the shortest pattern, thereby making the variable length Determine whether it is necessary to perform two-stage decoding as hierarchical data,
The decoding unit of the command parameter creation unit specifies the position, length, and data type in the byte string of the data received from the device and decodes the data as a single parameter as a byte string type parameter. If it is not necessary to decode as variable-length hierarchical structure data, specify the position, length, and data type in the byte string as fixed-length data and decode it as one or more control parameters to obtain variable-length hierarchical structure data. If you need to decrypt, specify the position, length, and data type in the byte sequence, decrypt the data as a single parameter as a byte sequence type parameter,
The device control unit determines whether or not it has been decoded as a control parameter based on the decoding result of the decoding unit,
If it has been decoded as a control parameter, the decoding parameter is obtained without going through the detailed decoding unit,
If it is not decoded as a control parameter, it is decoded as one or more control parameters by decoding the byte string parameter decoded by the decoding unit of the command parameter creation unit as variable length hierarchical structure data,
The device control unit has been described with respect to a device control apparatus that performs device control using the obtained control parameters and notifies a command execution result to a higher-level application.

実施の形態2.
復号化判定部106の判定方法として、受信データの長さ自体を用いて詳細復号化が必要かどうかを判定する形態が考えられる。
Embodiment 2. FIG.
As a determination method of the decoding determination unit 106, a form in which it is determined whether detailed decoding is necessary using the length of received data itself.

実施の形態1では、図4のステップ3において、受信データからコマンドインタフェースに従って受信データの「全体データ長」識別子(index=1〜4)を復号化し、復号化用コマンド実行結果データパターンと比較することで詳細復号化が必要かどうかを判定した。
これに対し、本実施の形態では、受信データそのものの長さをこの判定に用い、復号化用コマンド実行結果データパターンの長さと比較し、長い場合、詳細復号化が必要と判断し、同じか短い場合はインデックスによる復号化が可能と判断する。
つまり、本実施の形態では、復号化判定部106は、図4のステップ3に代えて、受信データ全体のデータ長を測定し、測定した受信データ全体のデータ長が所定のデータ長(復号化用コマンド実行結果データパターンのデータ長)以下の場合に受信データを定義受信データと判定し詳細復号化が不要と判定し、測定した受信データ全体のデータ長が所定のデータ長(復号化用コマンド実行結果データパターンのデータ長)を超える場合に受信データを不定受信データと判定し詳細復号化が必要と判定する。
In the first embodiment, in step 3 of FIG. 4, the “total data length” identifier (index = 1 to 4) of the received data is decoded from the received data according to the command interface, and compared with the command execution result data pattern for decoding. Thus, it was determined whether or not detailed decryption is necessary.
On the other hand, in the present embodiment, the length of the received data itself is used for this determination, and compared with the length of the command execution result data pattern for decoding. If it is short, it is determined that decoding by an index is possible.
That is, in the present embodiment, instead of step 3 in FIG. 4, the decoding determination unit 106 measures the data length of the entire received data, and the measured data length of the entire received data is a predetermined data length (decoding Data length of the command execution result data pattern) or less, the received data is determined to be defined received data and detailed decoding is determined to be unnecessary, and the measured data length of the entire received data is a predetermined data length (decoding command). If it exceeds the data length of the execution result data pattern, the received data is determined as indefinite received data, and it is determined that detailed decoding is necessary.

この方法では、受信データに本来含まれるべきでない冗長なデータなどが含まれていた場合やコマンドインタフェースに従っていなかった場合は、正しい判定ができないが、データ長の復号化を行う必要がなくなるため高速に判定処理を行うことができる。   In this method, if the received data contains redundant data that should not be included originally or if the command interface is not followed, correct determination cannot be made, but it is not necessary to perform decoding of the data length. Judgment processing can be performed.

以上、本実施の形態では、復号化判定部が、受信データの長さとコマンド実行結果の最短パターンの長さを比較することで、可変長階層構造データとして2段階復号化する必要があるかを判定することを説明した。   As described above, in the present embodiment, the decoding determination unit compares the length of the received data with the length of the shortest pattern of the command execution result to determine whether it is necessary to perform two-stage decoding as variable-length hierarchical structure data. Explained to judge.

実施の形態3.
また、復号化判定部106の判定方法として、復号化判定パターンを用いて詳細復号化が必要かどうかを判定する形態が考えられる。
Embodiment 3 FIG.
Further, as a determination method of the decoding determination unit 106, a form in which it is determined whether or not detailed decoding is necessary using a decoding determination pattern.

図6に、本実施の形態に係る復号化判定の例を示す。
上段は受信したデータであり、中段は復号化判定パターンである。
復号化判定パターンは、コマンド実行結果として最短になるように作成されたデータ列であり、ASN.1符号化ではデータ長はその先頭ビットが1のとき1バイトより長くなるように符号化されるため、データ長に当たるバイトは先頭ビットを1とする。
入力データと符号化判定パターンをAND演算した結果が図6の下段である。
演算結果が全て0であれば詳細復号化の必要は無いと判断できる。
図6の例では、下段のAND演算結果に「8」が含まれるので、詳細復号化が必要である。
なお、図6の例では、受信データ全体に対して復号化判定パターンを適用して、受信データ全体に対するAND演算結果を求めているが、受信データの「全体データ長」識別子(index=1〜4)のビット値に対してのみ復号化判定パターンを適用し、「全体データ長」識別子に対するAND演算結果が全て0であれば詳細復号化の必要は無いと判断するようにしてもよい。
FIG. 6 shows an example of decoding determination according to the present embodiment.
The upper row is the received data, and the middle row is the decoding determination pattern.
The decryption determination pattern is a data string created so as to have the shortest command execution result. In 1 encoding, the data length is encoded to be longer than 1 byte when the first bit is 1, and therefore the byte corresponding to the data length is set to 1.
The result of ANDing the input data and the coding determination pattern is the lower part of FIG.
If the calculation results are all 0, it can be determined that there is no need for detailed decoding.
In the example of FIG. 6, since “8” is included in the AND operation result in the lower stage, detailed decoding is necessary.
In the example of FIG. 6, the decoding judgment pattern is applied to the entire received data to obtain an AND operation result for the entire received data. However, the “total data length” identifier (index = 1 to 1) of the received data is obtained. The decoding determination pattern may be applied only to the bit value of 4), and it may be determined that detailed decoding is not necessary if the AND operation result for the “total data length” identifier is all zero.

このように、本実施の形態によれば、ビット演算処理による比較的高速な処理により復号化判定ができるという効果がある。   As described above, according to the present embodiment, there is an effect that the decoding determination can be performed by a relatively high speed processing by the bit operation processing.

以上、本実施の形態では、復号化判定部が、あらかじめ設定されたコマンド毎の復号化判定マスクパターンと受信データを比較することで、可変長階層構造データとして2段階復号化する必要があるかを判定することを説明した。   As described above, in this embodiment, whether the decoding determination unit needs to perform two-stage decoding as variable-length hierarchical structure data by comparing the reception determination data with the decoding determination mask pattern for each command set in advance. Explained to determine.

実施の形態4.
以上の実施の形態1〜3と異なり、本実施の形態では、復号化判定部106が無い構成を説明する。
Embodiment 4 FIG.
Unlike the first to third embodiments described above, this embodiment describes a configuration without the decoding determination unit 106.

復号化判定部106が無い場合は、通信制御部107から直接コマンドパラメータ作成部103の復号化部105に受信データがわたるため、図4のフローチャートのステップ3に当たる処理が無く、全てのデータはステップ7の対象となる。
復号化判定は行われないため、ステップ8の判定結果データの付与も行われず、ステップ9の判定は無く、全ての受信データはステップ11の対象となる。
つまり、本実施の形態では、通信部108により受信された受信データが定義受信データ及び不定受信データのいずれであっても詳細復号化の対象とし、「データ長」識別子の先頭ビットの値から「データ長」識別子のデータ長を導出して、パラメータデータの開始位置を導出してパラメータデータの復号化を行う。
If there is no decryption determination unit 106, the received data is passed directly from the communication control unit 107 to the decryption unit 105 of the command parameter creation unit 103, so there is no processing corresponding to step 3 in the flowchart of FIG. 7 targets.
Since the decryption determination is not performed, the determination result data in step 8 is not added, the determination in step 9 is not performed, and all received data is the target of step 11.
That is, in the present embodiment, whether the reception data received by the communication unit 108 is defined reception data or indefinite reception data is subject to detailed decoding, and the value of the first bit of the “data length” identifier is “ The data length of the “data length” identifier is derived, the starting position of the parameter data is derived, and the parameter data is decoded.

以上、本実施の形態では、復号化判定部が無く、全ての受信データを可変長階層構造データとして2段階復号化することを説明した。   As described above, in the present embodiment, there has been described that there is no decoding determination unit, and all received data is decoded in two steps as variable-length hierarchical structure data.

実施の形態5.
インデックスによる復号化を行う際には、コマンド毎にリーダが送信するデータのコマンドインタフェースにあわせたデータパターンとパラメータ定義が必要である。
本実施の形態では、この定義をファイル入力する例について説明する。
Embodiment 5 FIG.
When decoding using an index, it is necessary to define a data pattern and parameters in accordance with the command interface of data transmitted by the reader for each command.
In the present embodiment, an example of inputting this definition as a file will be described.

図10に本実施の形態に係るシステム構成例を示す。
本実施の形態では、復号化のデータパターン及びパラメータ定義は、定義情報として、復号化判定部106と復号化部105に入力される。
入力の形式は、ファイルなどに記載したものを実行時に読み込むか、コード生成ツールなどを用いて定義を実行形式に変換し、受信データの判定用データやパラメータリストの定義を作成する。
そして、復号化判定部106は、定義情報に記述されている復号化用コマンド実行結果データパターンのデータ長と受信データの「全体データ長」識別子から得られる受信データの全体データ長とを比較して、詳細復号化が必要か否かを判断する。
また、復号化部105では、定義情報に記述されているパラメータデータの開始位置の基準位置から、定義受信データにおけるパラメータデータの開始位置を導出し、パラメータデータの復号化を行う。
FIG. 10 shows a system configuration example according to the present embodiment.
In the present embodiment, the decoding data pattern and parameter definition are input to the decoding determination unit 106 and the decoding unit 105 as definition information.
As for the input format, what is described in a file or the like is read at the time of execution, or the definition is converted into an execution format using a code generation tool or the like, and the determination data of received data and the definition of the parameter list are created.
The decoding determination unit 106 compares the data length of the decoding command execution result data pattern described in the definition information with the entire data length of the received data obtained from the “total data length” identifier of the received data. Thus, it is determined whether or not detailed decoding is necessary.
Further, the decoding unit 105 derives the parameter data start position in the definition reception data from the reference position of the parameter data start position described in the definition information, and decodes the parameter data.

図11に入力ファイル(定義情報)の記載例を示す。
1行目はコマンド実行結果のデータ定義であることを示す。この例はInventoryTagsコマンド用の定義である。
2行目は、インデックスによる復号化可能な実行結果パターン定義であることを示す。
3行目から5行目は、復号用コマンド実行結果データパターンの最短パターンを示す。
6行目から16行目は、復号化パラメータ定義を示す。
7行目から11行目は、第1パラメータであるタグ枚数パラメータの定義である。インデックス17番目から1バイトをパラメータとして抽出している。
12行目から15行目は、第2パラメータであるタグIDパラメータの定義である。インデックス20番目からデータ末尾までをパラメータとして抽出している。
17行目から21行目は、この実行結果パターン定義を用いるかどうかを決めるためのフィルターの定義である。
ここまではインデックスによる符号化を行うための定義である。
23行目は、インデックスによる復号化が不可能な場合の実行結果パターン定義であることを示す。
27行目から29行目にパラメータの定義があるが、インデックス8以降のデータを一括してパラメータ化するよう定義している。
このような定義を、デバイス制御に必要なコマンド毎に記載する。
FIG. 11 shows a description example of the input file (definition information).
The first line indicates the data definition of the command execution result. This example is a definition for the InventoryTags command.
The second line indicates that the execution result pattern definition can be decoded by the index.
The third to fifth lines indicate the shortest pattern of the decryption command execution result data pattern.
The 6th to 16th lines show the decoding parameter definition.
The seventh to eleventh lines define the tag number parameter that is the first parameter. One byte from the 17th index is extracted as a parameter.
The 12th to 15th lines are definitions of the tag ID parameter that is the second parameter. The parameters from the 20th index to the end of the data are extracted as parameters.
The 17th to 21st lines are filter definitions for determining whether to use this execution result pattern definition.
Up to this point, the definition is for encoding by index.
The 23rd line indicates an execution result pattern definition when decoding by index is impossible.
The parameters are defined in the 27th to 29th lines, but the data after the index 8 are defined to be parameterized collectively.
Such a definition is described for each command necessary for device control.

本実施の形態による方法では、リーダのコマンドインタフェースにあわせた定義ができると共に、コマンドインタフェースの変更への対応や、コードの流用性を高めることができる。   In the method according to the present embodiment, the definition can be made in accordance with the command interface of the reader, the response to the change of the command interface, and the applicability of the code can be improved.

以上、本実施の形態では、コマンドパラメータ作成部の復号化判定部、復号化部が、コマンド毎の受信データパターンを設定ファイルとして入力することを説明した。   As described above, in the present embodiment, the decoding determination unit and the decoding unit of the command parameter creation unit input the received data pattern for each command as the setting file.

実施の形態6.
本実施の形態では、サーバ100がログを出力する機能を有する構成について説明する。
Embodiment 6 FIG.
In the present embodiment, a configuration in which the server 100 has a function of outputting a log will be described.

図12に本実施の形態に係るシステム構成例を示す。
図12に示す構成例では、サーバ100の動作を記録するためのログ出力を行うため、ログ制御部109を各階層とは別に設ける。
ログの設定は、ログ出力の有無、出力レベル、出力先ファイル名、ファイル形式などについて、ファイルに記載して読み込ませるか、起動時のパラメータとして与えることによりログ制御部109の動作を設定する。
FIG. 12 shows a system configuration example according to the present embodiment.
In the configuration example illustrated in FIG. 12, the log control unit 109 is provided separately from each layer in order to output a log for recording the operation of the server 100.
For log setting, the operation of the log control unit 109 is set by writing in a file and reading the log output status, output level, output destination file name, file format, etc., or giving them as parameters at startup.

サーバ100は、ログ制御部109を通じてログを出力する。
ログ出力例を図13に示す。
図13のように、データの送受信や復号化結果(パラメータデータ)、アプリケーションへの通知状況などを、ログレベル、日時などのヘッダ情報を付加して出力する。
The server 100 outputs a log through the log control unit 109.
An example of log output is shown in FIG.
As shown in FIG. 13, the data transmission / reception, the decoding result (parameter data), the notification status to the application, and the like are added with the header information such as the log level and the date and time.

以上、本実施の形態では、デバイス制御装置の各部の挙動をログファイルとして出力することを説明した。   As described above, in the present embodiment, the behavior of each part of the device control apparatus is output as a log file.

最後に、実施の形態1〜6に示したサーバ100のハードウェア構成例について説明する。
図14は、実施の形態1〜6に示すサーバ100のハードウェア資源の一例を示す図である。
なお、図14の構成は、あくまでもサーバ100のハードウェア構成の一例を示すものであり、サーバ100のハードウェア構成は図14に記載の構成に限らず、他の構成であってもよい。
Finally, a hardware configuration example of the server 100 shown in the first to sixth embodiments will be described.
FIG. 14 is a diagram illustrating an example of hardware resources of the server 100 illustrated in the first to sixth embodiments.
Note that the configuration in FIG. 14 is merely an example of the hardware configuration of the server 100, and the hardware configuration of the server 100 is not limited to the configuration described in FIG. 14, but may be other configurations.

図14において、サーバ100は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
In FIG. 14, the server 100 includes a CPU 911 (also referred to as a central processing unit, a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, and a processor) that executes a program.
The CPU 911 is connected to, for example, a ROM (Read Only Memory) 913, a RAM (Random Access Memory) 914, a communication board 915, a display device 901, a keyboard 902, a mouse 903, and a magnetic disk device 920 via a bus 912. Control hardware devices.
Further, the CPU 911 may be connected to an FDD 904 (Flexible Disk Drive), a compact disk device 905 (CDD), a printer device 906, and a scanner device 907. Further, instead of the magnetic disk device 920, a storage device such as an optical disk device or a memory card (registered trademark) read / write device may be used.
The RAM 914 is an example of a volatile memory. The storage media of the ROM 913, the FDD 904, the CDD 905, and the magnetic disk device 920 are an example of a nonvolatile memory. These are examples of the storage device.
A communication board 915, a keyboard 902, a mouse 903, a scanner device 907, an FDD 904, and the like are examples of input devices.
The communication board 915, the display device 901, the printer device 906, and the like are examples of output devices.

通信ボード915は、図1に示すように、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。   As shown in FIG. 1, the communication board 915 is connected to a network. For example, the communication board 915 may be connected to a LAN (local area network), the Internet, a WAN (wide area network), a SAN (storage area network), or the like.

磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The magnetic disk device 920 stores an operating system 921 (OS), a window system 922, a program group 923, and a file group 924.
The programs in the program group 923 are executed by the CPU 911 using the operating system 921 and the window system 922.

また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The RAM 914 temporarily stores at least part of the operating system 921 program and application programs to be executed by the CPU 911.
The RAM 914 stores various data necessary for processing by the CPU 911.

また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
サーバ100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The ROM 913 stores a BIOS (Basic Input Output System) program, and the magnetic disk device 920 stores a boot program.
When the server 100 is started, the BIOS program in the ROM 913 and the boot program for the magnetic disk device 920 are executed, and the operating system 921 is started by the BIOS program and the boot program.

上記プログラム群923には、実施の形態1〜6の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。   The program group 923 stores a program for executing the function described as “˜unit” in the description of the first to sixth embodiments. The program is read and executed by the CPU 911.

ファイル群924には、実施の形態1〜6の説明において、「〜の判断」、「〜の判定」、「〜の符号化」、「〜の復号化」、「〜の計算」、「〜の比較」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜6で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the file group 924, in the description of the first to sixth embodiments, “determination of”, “determination of”, “encoding of”, “decoding of”, “calculation of”, “ Information, data, signal values, variable values, and parameters indicating the results of the processing described as "Comparison of", "Updating", "Setting of", "Registering", "Selecting", etc. , “˜file” and “˜database”.
The “˜file” and “˜database” are stored in a recording medium such as a disk or a memory. Information, data, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the CPU 911 via a read / write circuit, and extracted, searched, referenced, compared, and calculated. Used for CPU operations such as calculation, processing, editing, output, printing, and display.
Information, data, signal values, variable values, and parameters are stored in the main memory, registers, cache memory, and buffers during the CPU operations of extraction, search, reference, comparison, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
The arrows in the flowcharts described in the first to sixth embodiments mainly indicate input / output of data and signals. The data and signal values are the RAM 914 memory, the FDD 904 flexible disk, the CDD 905 compact disk, and the magnetic field. Recording is performed on a recording medium such as a magnetic disk of the disk device 920, other optical disks, mini disks, DVDs, and the like. Data and signals are transmitted online via a bus 912, signal lines, cables, or other transmission media.

また、実施の形態1〜6の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜6の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜6の「〜部」の手順や方法をコンピュータに実行させるものである。   In addition, what is described as “˜unit” in the description of the first to sixth embodiments may be “˜circuit”, “˜device”, “˜device”, and “˜step”, It may be “˜procedure” or “˜processing”. That is, what is described as “˜unit” may be realized by firmware stored in the ROM 913. Alternatively, it may be implemented only by software, or only by hardware such as elements, devices, substrates, and wirings, by a combination of software and hardware, or by a combination of firmware. Firmware and software are stored as programs in a recording medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, and a DVD. The program is read by the CPU 911 and executed by the CPU 911. That is, the program causes the computer to function as “to part” in the first to sixth embodiments. Alternatively, the computer executes the procedure and method of “to unit” in the first to sixth embodiments.

このように、実施の形態1〜6に示すサーバ100は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。   As described above, the server 100 shown in the first to sixth embodiments includes a CPU that is a processing device, a memory that is a storage device, a magnetic disk, a keyboard that is an input device, a mouse, a communication board, and a display device that is an output device, a communication board, and the like. As described above, the function indicated as “to part” is realized by using these processing device, storage device, input device, and output device.

100 サーバ、101 デバイス制御部、102 詳細復号化部、103 コマンドパラメータ作成部、104 符号化部、105 復号化部、106 復号化判定部、107 通信制御部、108 通信部、109 ログ制御部、200 アプリケーションサーバ、300 RFIDリーダ、400 タグ、500 ネットワーク、600 ネットワーク。   100 server, 101 device control unit, 102 detailed decoding unit, 103 command parameter creation unit, 104 encoding unit, 105 decoding unit, 106 decoding determination unit, 107 communication control unit, 108 communication unit, 109 log control unit, 200 application server, 300 RFID reader, 400 tag, 500 network, 600 network.

Claims (11)

符号化されているパラメータデータと前記パラメータデータのデータ長が示される符号化されているデータ長識別子とが含まれ、前記データ長識別子に続いて前記パラメータデータが配置され、前記パラメータデータの開始位置が不定であり、前記データ長識別子の先頭ビットの値により前記データ長識別子のデータ長が判別可能な不定受信データを受信するデータ受信部と、
前記不定受信データにおいて前記データ長識別子の先頭ビットを抽出し、前記データ長識別子の先頭ビットの値に基づいて前記データ長識別子のデータ長を判断して前記パラメータデータの開始位置を判定し、判定した前記パラメータデータの開始位置から前記データ長識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出する不定受信データ復号化部とを有することを特徴とする情報処理装置。
The encoded parameter data and an encoded data length identifier indicating the data length of the parameter data are included, the parameter data is arranged following the data length identifier, and the start position of the parameter data A data receiving unit for receiving indefinite received data in which the data length of the data length identifier can be determined by the value of the first bit of the data length identifier;
Extracting the first bit of the data length identifier in the indefinite received data, determining the data length of the data length identifier based on the value of the first bit of the data length identifier, determining the start position of the parameter data, and determining An indefinite received data decoding unit that decodes a bit string corresponding to the data length obtained by decoding the data length identifier from the start position of the parameter data and extracts the parameter data after decoding. Processing equipment.
前記不定受信データ復号化部は、
前記不定受信データに含まれる前記データ長識別子の先頭ビットの値に基づいて前記データ長識別子のデータ長を判断して前記データ長識別子を復号し、復号結果から前記パラメータデータのデータ長を得ることを特徴とする請求項1に記載の情報処理装置。
The indefinite received data decoding unit
Determining the data length of the data length identifier based on the value of the first bit of the data length identifier included in the indefinite received data, decoding the data length identifier, and obtaining the data length of the parameter data from the decoding result The information processing apparatus according to claim 1.
前記データ受信部は、
パラメータデータの開始位置が所定の規則で定義されている基準位置に一致する定義受信データを受信する場合があり、
前記情報処理装置は、更に、
前記データ受信部により受信された受信データが定義受信データ及び不定受信データのいずれであるかを判別する受信データ判別部と、
前記受信データ判別部により受信データが定義受信データと判定された場合に、前記定義受信データにおいて前記基準位置から前記規則で定義されているデータ長分のビット列を復号し、復号後のパラメータデータを抽出する定義受信データ復号化部とを有し、
前記不定受信データ復号化部は、
前記受信データ判別部により受信データが不定受信データと判定された場合に、前記不定受信データにおいて前記データ長識別子の先頭ビットを抽出し、前記データ長識別子の先頭ビットの値に基づいて前記データ長識別子のデータ長を判断して前記パラメータデータの開始位置を判定し、判定した前記パラメータデータの開始位置から前記データ長識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出することを特徴とする請求項1又は2に記載の情報処理装置。
The data receiver is
There is a case where the definition reception data in which the start position of the parameter data matches the reference position defined by a predetermined rule may be received.
The information processing apparatus further includes:
A reception data determination unit for determining whether the reception data received by the data reception unit is defined reception data or indefinite reception data;
When the reception data is determined to be definition reception data by the reception data determination unit, the bit string for the data length defined by the rule is decoded from the reference position in the definition reception data, and the decoded parameter data is A definition reception data decoding unit to extract,
The indefinite received data decoding unit
When the received data determining unit determines that the received data is indefinite received data, the first bit of the data length identifier is extracted from the indefinite received data, and the data length is based on the value of the first bit of the data length identifier. Determining the data length of the identifier to determine the start position of the parameter data, decoding the bit string for the data length obtained by decoding the data length identifier from the determined start position of the parameter data, and decoding the parameter The information processing apparatus according to claim 1, wherein data is extracted.
前記データ受信部は、
受信データ全体のデータ長が示される符号化されている全体データ長識別子が含まれている定義受信データと不定受信データとを受信し、
前記データ受信部により受信された受信データに含まれている全体データ長識別子を復号して得られる受信データ全体のデータ長が所定のデータ長以下の場合に受信データを定義受信データと判定し、全体データ長識別子を復号して得られる受信データ全体のデータ長が前記所定のデータ長を超える場合に受信データを不定受信データと判定することを特徴とする請求項3に記載の情報処理装置。
The data receiver is
Receiving definition reception data and indefinite reception data including an encoded overall data length identifier indicating the data length of the entire reception data;
When the data length of the entire received data obtained by decoding the entire data length identifier included in the received data received by the data receiving unit is equal to or less than a predetermined data length, the received data is determined as defined received data, 4. The information processing apparatus according to claim 3, wherein the received data is determined as indefinite received data when the data length of the entire received data obtained by decoding the entire data length identifier exceeds the predetermined data length.
前記受信データ判別部は、
前記データ受信部により受信された受信データ全体のデータ長を測定し、測定した受信データ全体のデータ長が所定のデータ長以下の場合に受信データを定義受信データと判定し、測定した受信データ全体のデータ長が前記所定のデータ長を超える場合に受信データを不定受信データと判定することを特徴とする請求項3又は4に記載の情報処理装置。
The received data discrimination unit
The data length of the entire received data received by the data receiving unit is measured, and when the measured data length of the entire received data is equal to or less than a predetermined data length, the received data is determined to be defined received data, and the entire received data measured 5. The information processing apparatus according to claim 3, wherein the received data is determined as indefinite received data when the data length exceeds the predetermined data length. 6.
前記データ受信部は、
受信データ全体のデータ長が示される符号化されている全体データ長識別子が含まれている定義受信データと不定受信データとを受信し、
前記受信データ判別部は、
前記データ受信部により受信された受信データに含まれている全体データ長識別子のビット値に基づいて、受信データが定義受信データ及び不定受信データのいずれであるかを判別することを特徴とする請求項3〜5のいずれかに記載の情報処理装置。
The data receiver is
Receiving definition reception data and indefinite reception data including an encoded overall data length identifier indicating the data length of the entire reception data;
The received data discrimination unit
The data receiving unit determines whether the received data is defined received data or indefinite received data based on a bit value of an overall data length identifier included in the received data received by the data receiving unit. Item 6. The information processing device according to any one of Items 3 to 5.
前記定義受信データ復号化部は、
前記データ受信部により受信される定義受信データにおけるパラメータデータの開始位置の基準位置が示されている定義情報を入力し、
入力した定義情報に示されている基準位置から前記データ受信部により受信された定義受信データのパラメータデータの復号を行い、復号後のパラメータデータを抽出することを特徴とする請求項3〜6のいずれかに記載の情報処理装置。
The definition reception data decoding unit includes:
Input definition information indicating the reference position of the start position of the parameter data in the definition reception data received by the data reception unit,
7. The parameter data of the definition reception data received by the data receiving unit from the reference position indicated in the input definition information is decoded, and the parameter data after decoding is extracted. The information processing apparatus according to any one of the above.
前記データ受信部は、
データ長識別子に続いてパラメータデータが配置され、前記パラメータデータの開始位置が所定の規則で定義されている基準位置に一致し、前記データ長識別子の先頭ビットの値により前記データ長識別子のデータ長が判別可能な定義受信データを受信する場合があり、
前記不定受信データ復号化部は、
前記データ受信部により受信された受信データが前記定義受信データ及び前記不定受信データのいずれであっても、受信データにおいて前記データ長識別子の先頭ビットを抽出し、前記データ長識別子の先頭ビットの値に基づいて前記データ長識別子のデータ長を判断して前記パラメータデータの開始位置を判定し、判定した前記パラメータデータの開始位置から前記データ長識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出することを特徴とする請求項1〜7のいずれかに記載の情報処理装置。
The data receiver is
Parameter data is arranged following the data length identifier, the start position of the parameter data matches a reference position defined by a predetermined rule, and the data length of the data length identifier is determined by the value of the first bit of the data length identifier May receive definition receive data that can be determined,
The indefinite received data decoding unit
Regardless of whether the received data received by the data receiving unit is the definition received data or the indefinite received data, the first bit of the data length identifier is extracted from the received data, and the value of the first bit of the data length identifier The data length of the data length identifier is determined on the basis of the parameter data to determine the start position of the parameter data, and the bit string corresponding to the data length obtained by decoding the data length identifier from the determined start position of the parameter data is decoded. The information processing apparatus according to claim 1, wherein the parameter data after decoding is extracted.
前記情報処理装置は、更に、
前記データ受信部による受信データの受信時刻、前記不定受信データ復号化部により抽出されたパラメータデータの少なくともいずれかが示されるログデータを生成し、生成したログデータを出力するログ制御部を有することを特徴とする請求項1〜8のいずれかに記載の情報処理装置。
The information processing apparatus further includes:
A log control unit that generates log data indicating at least one of reception time of reception data by the data reception unit and parameter data extracted by the indefinite reception data decoding unit, and outputs the generated log data; The information processing apparatus according to any one of claims 1 to 8.
符号化されているパラメータデータと前記パラメータデータのデータ長が示される符号化されているデータ長識別子とが含まれ、前記データ長識別子に続いて前記パラメータデータが配置され、前記パラメータデータの開始位置が不定であり、前記データ長識別子の先頭ビットの値により前記データ長識別子のデータ長が判別可能な不定受信データをコンピュータが受信するデータ受信ステップと、
前記コンピュータが、前記不定受信データにおいて前記データ長識別子の先頭ビットを抽出し、前記データ長識別子の先頭ビットの値に基づいて前記データ長識別子のデータ長を判断して前記パラメータデータの開始位置を判定し、判定した前記パラメータデータの開始位置から前記データ長識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出する不定受信データ復号化ステップとを有することを特徴とする情報処理方法。
The encoded parameter data and an encoded data length identifier indicating the data length of the parameter data are included, the parameter data is arranged following the data length identifier, and the start position of the parameter data A data receiving step in which the computer receives indefinite received data in which the data length of the data length identifier can be determined by the value of the first bit of the data length identifier;
The computer extracts the first bit of the data length identifier in the indefinite received data, determines the data length of the data length identifier based on the value of the first bit of the data length identifier, and determines the start position of the parameter data An indefinite received data decoding step for determining, decoding a bit string corresponding to the data length obtained by decoding the data length identifier from the determined starting position of the parameter data, and extracting the decoded parameter data A characteristic information processing method.
符号化されているパラメータデータと前記パラメータデータのデータ長が示される符号化されているデータ長識別子とが含まれ、前記データ長識別子に続いて前記パラメータデータが配置され、前記パラメータデータの開始位置が不定であり、前記データ長識別子の先頭ビットの値により前記データ長識別子のデータ長が判別可能な不定受信データを受信するデータ受信処理と、
前記不定受信データにおいて前記データ長識別子の先頭ビットを抽出し、前記データ長識別子の先頭ビットの値に基づいて前記データ長識別子のデータ長を判断して前記パラメータデータの開始位置を判定し、判定した前記パラメータデータの開始位置から前記データ長識別子を復号して得られるデータ長分のビット列を復号し、復号後のパラメータデータを抽出する不定受信データ復号化処理とをコンピュータに実行させることを特徴とするプログラム。
The encoded parameter data and an encoded data length identifier indicating the data length of the parameter data are included, the parameter data is arranged following the data length identifier, and the start position of the parameter data A data reception process for receiving indefinite received data in which the data length of the data length identifier can be determined by the value of the first bit of the data length identifier;
Extracting the first bit of the data length identifier in the indefinite received data, determining the data length of the data length identifier based on the value of the first bit of the data length identifier, determining the start position of the parameter data, and determining A decoding unit that decodes a bit string corresponding to the data length obtained by decoding the data length identifier from the start position of the parameter data, and causes the computer to execute indefinite received data decoding processing for extracting the parameter data after decoding. Program.
JP2009138572A 2009-06-09 2009-06-09 Information processor, method of processing information, and program Pending JP2010287962A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009138572A JP2010287962A (en) 2009-06-09 2009-06-09 Information processor, method of processing information, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009138572A JP2010287962A (en) 2009-06-09 2009-06-09 Information processor, method of processing information, and program

Publications (1)

Publication Number Publication Date
JP2010287962A true JP2010287962A (en) 2010-12-24

Family

ID=43543367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009138572A Pending JP2010287962A (en) 2009-06-09 2009-06-09 Information processor, method of processing information, and program

Country Status (1)

Country Link
JP (1) JP2010287962A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11210093B2 (en) * 2019-04-08 2021-12-28 Micron Technology, Inc. Large data read techniques

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11210093B2 (en) * 2019-04-08 2021-12-28 Micron Technology, Inc. Large data read techniques
US11231928B2 (en) 2019-04-08 2022-01-25 Micron Technology, Inc. Large data read techniques
US11720359B2 (en) 2019-04-08 2023-08-08 Micron Technology, Inc. Large data read techniques
US11989557B2 (en) 2019-04-08 2024-05-21 Lodestar Licensing Group, Llc Large data read techniques

Similar Documents

Publication Publication Date Title
WO2015165412A1 (en) Method for modifying webpage and apparatus for modifying webpage
US8849726B2 (en) Information processing apparatus and control method for the same
US8819854B2 (en) Information processing apparatus, system management method, and recording medium
KR102618483B1 (en) Device and method to filter text
JP7314243B2 (en) How to Generate Malicious Behavior Feature Information for Malware
US9984065B2 (en) Optimizing generation of a regular expression
US20140309984A1 (en) Generating a regular expression for entity extraction
CN106354746A (en) Searching method, and searching device
JP2010287962A (en) Information processor, method of processing information, and program
CN103390128A (en) Page labeling method and device and terminal equipment
JP6805720B2 (en) Data search program, data search device and data search method
CN109656704B (en) Information processing method and information processing device
JP3496965B2 (en) Character code converter
CN104239514A (en) Webpage rendering method, device and mobile terminal
CN109218284B (en) XSS vulnerability detection method and device, computer equipment and readable medium
JP5207886B2 (en) Document encoding apparatus and document encoding method
US9075737B2 (en) Verification device, verification method and computer program product
JP6818568B2 (en) Communication device, communication specification difference extraction method and communication specification difference extraction program
JP6221869B2 (en) Screen transition control method, screen transition control program, and screen transition control device
JP2007317093A (en) Ic card issuing device, ic card issuing method, and computer program
TWI608713B (en) Active security protection system
JP2007279795A (en) System for deciding whether or not screen to be displayed by program satisfy specification
JP5103338B2 (en) Electronic file analysis technology
CN112559478B (en) Log generation method and device, terminal equipment and storage medium
JP5970255B2 (en) Operation data output device, operation data output method and program