JP2010287962A - Information processor, method of processing information, and program - Google Patents
Information processor, method of processing information, and program Download PDFInfo
- 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
Links
Images
Abstract
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.
一方、組込機器を遠隔から管理できる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,
However,
本発明は、以上のような課題に鑑みたものであり、可変長のデータ要素を含むため、パラメータデータの開始位置が不定であるため、インデックス復号化ができない受信データの復号化を可能にする復号化技術を実現することを主な目的とする。 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.
本実施の形態では、可変長のデータ要素を含むため、パラメータデータ(以下、パラメータともいう)の開始位置が不定であり、インデックス復号化ができない受信データに対しても正しく復号化を行う装置を説明する。
より具体的には、インデックス符号化方式を採用するデバイス制御ソフトウェアにおいて、ASN.1符号化方式を採用するRFIDリーダとの通信をサポートするとともに、高速な復号化方式を適用できるデータのパターンを判定し、復号化方式を切り替えることによってデータの復号化処理を高速化する装置を説明する。
なお、以下では、可変長のデータ要素を含むため、パラメータデータの開始位置が不定であり、インデックス復号化ができない受信データを不定受信データともいう。
一方、可変長のデータ要素を含まず、パラメータデータの開始位置が所定の規則(ASN.1等)で定義されている位置(基準位置)に一致し、インデックス復号化が可能な受信データを定義受信データともいう。
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
1 shows the
The
サーバ100は、デバイス制御部101、コマンドパラメータ作成部103、通信制御部107、通信部108の4階層からなる。
デバイス制御部101は、例えば、デバイス制御ソフトウェアにより実現される。アプリケーションはネットワーク上のアプリケーションサーバ200、もしくはデバイス制御ソフトウェアが動作するサーバ100上で動作する。
デバイス制御部101の制御対象となるデバイスとしてRFIDリーダ300がある。
また、デバイス制御部101はRFIDリーダ300に対するコマンドの発行の開始・停止、受信したコマンド実行結果のアプリケーションへの通知などを行うことで、サーバ100全体の動作を制御する。
また、デバイス制御部101には、デバイス制御を行う部分の他に詳細復号化部102がある。
デバイス制御は、デバイスの起動、コマンドの発行、コマンド実行結果のアプリケーションへの通知など、サーバ100全体の動作を制御することである。
なお、詳細復号化部102の詳細は後述する。詳細復号化部102は、不定受信データ復号化部の例である。
The
The
An
The
Further, the
Device control is to control the overall operation of the
Details of the
コマンドパラメータ作成部103は、パラメータの符号化部104、復号化部105、復号化判定部106からなる。
符号化部104は、デバイス制御部101で指定されたコマンドパラメータをRFIDリーダ300のコマンドインタフェースに従ったデータ列に変換する。
復号化部105は、RFIDリーダ300から受信したコマンド実行結果に対しインデックスによる制御パラメータへの復号化を行い、パラメータ化してデバイス制御部101に渡す。なお、制御パラメータとの称呼は復号化後のパラメータを示す。
インデックスによる制御パラメータへの復号化は、あらかじめ用いるコマンドの実行結果のデータをパターンデータとして定義しておき、その定義に従って受信データからパラメータを抽出し、パラメータリストを作成すると共に、詳細復号化が必要かどうかをフラグとしてリストに追加した復号化データを作成する。
復号化部105では、詳細復号化が必要かどうかで復号化に用いるパターンデータを変えることで動作を変える。
復号化判定部106は、受信データが復号化部105によるインデックス復号化が可能な定義受信データであるか、詳細復号化部102による詳細復号化が必要な不定受信データであるかを判定する。
このように、復号化部105は定義受信データに対してインデックス復号化を行う手段であり、詳細復号化部102は不定受信データに対してインデックス復号化以外の手法により復号化を行う手段である。
なお、復号化部105は定義受信データ復号化部の例であり、復号化判定部106は受信データ判別部の例である。
The command
The
The
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
The
As described above, the
The
通信制御部107は、RFIDリーダ300の通信仕様にあわせたデータの送受信を行う。
通信部108は、通信形態にあわせて通信路の確保、開放などを行う。
通信部108はデータ受信部の例である。
The
The
The
ここで、詳細復号化部102について説明する。
詳細復号化部102は、コマンドパラメータ作成部103の復号化部105で得られた復号化結果をもとに、詳細復号化が必要なデータを、ASN.1符号化データとして復号化し、得られたパラメータをリスト化する。
より具体的には、復号化判定部106により受信データが不定受信データであり詳細復号化が必要と判定された場合に、不定受信データにおいて「データ長」識別子の先頭ビットを抽出し、「データ長」識別子の先頭ビットの値に基づいて「データ長」識別子のデータ長を判断してパラメータデータの開始位置を判定し、判定したパラメータデータの開始位置から「データ長」識別子を復号して得られるデータ長分のビット列をASN.1に基づいて復号し、復号後のパラメータデータを抽出する。
Here, the
Based on the decoding result obtained by the
More specifically, when it is determined by the
次に、図4のフローチャートを用いて、サーバ100におけるデータ受信時の動作について説明する。
Next, the operation at the time of data reception in the
先ず、デバイス制御部101がコマンドパラメータ作成部103を用いてRFIDリーダ300に対するコマンドを生成し、生成したコマンドを通信制御部107及び通信部108を介してRFIDリーダ300に送信すると、RFIDリーダ300は何らかのコマンド実行結果をデータ列としてサーバ100に送信する。
送信されたデータは通信部108が受信する(データ受信ステップ)。
ステップ1では、通信制御部107が受信データを1コマンドに対するコマンド実行結果として切り分ける。
図2に示す受信データは、ステップ1において切り分けられた後のデータである。
First, when the
The transmitted data is received by the communication unit 108 (data reception step).
In
The received data shown in FIG. 2 is data after being separated in
次に、コマンドの実行結果データはコマンドパラメータ作成部103にわたる。
そして、ステップ2において、コマンドパラメータ作成部103が送信コマンドと受信データが対応しているかどうかを、受信データに含まれるコマンドIDデータ列があらかじめ定義されたコマンドIDデータ列と一致していることを確認して判定する。
図2では、コマンドIDデータ列は図示を省略しているが、コマンドIDデータ列は、図2の受信データの先頭(図2のindex=0の前)に配置されている。
Next, command execution result data passes to the command
In
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
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
Then, in
In
図7は、ステップ4〜ステップ6の処理を経た後の復号化パラメータリストの例を示す。
図7では、パラメータ[0]の値がfalseであり、詳細復号化が不要であることを示している。また、図7では、1、00000001という2つのパラメータデータがインデックス復号化により抽出されたことが示されている。
FIG. 7 shows an example of the decoding parameter list after the processing of
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
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
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
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 (
The operation contents in the
デバイス制御部101では、まず詳細復号化部102に復号化パラメータリスト(図8)を渡す。
次に、詳細復号化部102は、ステップ9において、復号化パラメータリストのパラメータ[0]から、詳細復号化が必要かを示すフラグのデータを取り出し、詳細復号化が必要かを判定する。
The
Next, in
詳細復号化が必要でなければ、ステップ10において、詳細復号化部102は、詳細復号化が必要かを示すフラグのデータ(パラメータ[0])以外のデータを復号化パラメータリストから取り出し、それを制御パラメータリストとする。
If detailed decoding is not necessary, in
一方、詳細復号化が必要であれば、ステップ11において、詳細復号化部102は、復号化パラメータリストのパラメータ[1]のバイトデータ列を未復号化データとし、ステップ12〜ステップ16に示すように、パラメータ[1]のバイトデータ列を、データ先頭から再帰的な復号化処理を行い、詳細復号化を行っていく(不定受信データ復号化ステップ)。
On the other hand, if detailed decoding is necessary, in
ステップ12では、詳細復号化部102は、未復号化データに対し、ASN1.符号化データとしてデータ先頭から「データ型・データ長・データ」として復号化する。
In
ステップ13では、詳細復号化部102は、復号化して得られた「データ型」が、単純型(文字列や数値)ではなく、再帰型のデータ型(入れ子構造データ)かどうか判定する。
例えば、図2のデータのindex=0に示される「データ型」:30は、再帰型であり、index=4に示される「データ型」:02やindex=7に示される「データ型」:04は単純型である。
In
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
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
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
また、詳細復号化部102は、ステップ15の復号化の後、ステップ16において、復号化データの後に復号化されていないデータが残っているかどうかを判断し、未復号化データが残っている場合は、ステップ12に戻り、さらに未復号化データの復号化を実施する。
Further, after the decoding in
詳細復号化部102は、ステップ12〜ステップ16の処理を繰り返して、パラメータデータを抽出し、制御パラメータリストを作成する。
図9は、詳細復号化部102により詳細復号化がなされて作成された制御パラメータリストの例を示す。
図9は、図2のデータに対して詳細復号化を行った結果を示しており、図2のパラメータデータである「99」及び「00000001」等が示されている。
The
FIG. 9 shows an example of a control parameter list created by the detailed decoding performed by the
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の判定方法として、受信データの長さ自体を用いて詳細復号化が必要かどうかを判定する形態が考えられる。
As a determination method of the
実施の形態1では、図4のステップ3において、受信データからコマンドインタフェースに従って受信データの「全体データ長」識別子(index=1〜4)を復号化し、復号化用コマンド実行結果データパターンと比較することで詳細復号化が必要かどうかを判定した。
これに対し、本実施の形態では、受信データそのものの長さをこの判定に用い、復号化用コマンド実行結果データパターンの長さと比較し、長い場合、詳細復号化が必要と判断し、同じか短い場合はインデックスによる復号化が可能と判断する。
つまり、本実施の形態では、復号化判定部106は、図4のステップ3に代えて、受信データ全体のデータ長を測定し、測定した受信データ全体のデータ長が所定のデータ長(復号化用コマンド実行結果データパターンのデータ長)以下の場合に受信データを定義受信データと判定し詳細復号化が不要と判定し、測定した受信データ全体のデータ長が所定のデータ長(復号化用コマンド実行結果データパターンのデータ長)を超える場合に受信データを不定受信データと判定し詳細復号化が必要と判定する。
In the first embodiment, in
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
この方法では、受信データに本来含まれるべきでない冗長なデータなどが含まれていた場合やコマンドインタフェースに従っていなかった場合は、正しい判定ができないが、データ長の復号化を行う必要がなくなるため高速に判定処理を行うことができる。 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の判定方法として、復号化判定パターンを用いて詳細復号化が必要かどうかを判定する形態が考えられる。
Further, as a determination method of the
図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が無い構成を説明する。
Unlike the first to third embodiments described above, this embodiment describes a configuration without the
復号化判定部106が無い場合は、通信制御部107から直接コマンドパラメータ作成部103の復号化部105に受信データがわたるため、図4のフローチャートのステップ3に当たる処理が無く、全てのデータはステップ7の対象となる。
復号化判定は行われないため、ステップ8の判定結果データの付与も行われず、ステップ9の判定は無く、全ての受信データはステップ11の対象となる。
つまり、本実施の形態では、通信部108により受信された受信データが定義受信データ及び不定受信データのいずれであっても詳細復号化の対象とし、「データ長」識別子の先頭ビットの値から「データ長」識別子のデータ長を導出して、パラメータデータの開始位置を導出してパラメータデータの復号化を行う。
If there is no
Since the decryption determination is not performed, the determination result data in
That is, in the present embodiment, whether the reception data received by the
以上、本実施の形態では、復号化判定部が無く、全ての受信データを可変長階層構造データとして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.
インデックスによる復号化を行う際には、コマンド毎にリーダが送信するデータのコマンドインタフェースにあわせたデータパターンとパラメータ定義が必要である。
本実施の形態では、この定義をファイル入力する例について説明する。
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
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
Further, the
図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
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がログを出力する機能を有する構成について説明する。
In the present embodiment, a configuration in which the
図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
For log setting, the operation of the
サーバ100は、ログ制御部109を通じてログを出力する。
ログ出力例を図13に示す。
図13のように、データの送受信や復号化結果(パラメータデータ)、アプリケーションへの通知状況などを、ログレベル、日時などのヘッダ情報を付加して出力する。
The
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
FIG. 14 is a diagram illustrating an example of hardware resources of the
Note that the configuration in FIG. 14 is merely an example of the hardware configuration of the
図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
The
Further, the
The
A
The
通信ボード915は、図1に示すように、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
As shown in FIG. 1, the
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The
The programs in the
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The
The
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
サーバ100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The
When the
上記プログラム群923には、実施の形態1〜6の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
The
ファイル群924には、実施の形態1〜6の説明において、「〜の判断」、「〜の判定」、「〜の符号化」、「〜の復号化」、「〜の計算」、「〜の比較」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜6で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the
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
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
また、実施の形態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
このように、実施の形態1〜6に示すサーバ100は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
As described above, the
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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11210093B2 (en) * | 2019-04-08 | 2021-12-28 | Micron Technology, Inc. | Large data read techniques |
-
2009
- 2009-06-09 JP JP2009138572A patent/JP2010287962A/en active Pending
Cited By (4)
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 |