JP2013117883A - Information processing apparatus, information processing system, server device, and program - Google Patents
Information processing apparatus, information processing system, server device, and program Download PDFInfo
- Publication number
- JP2013117883A JP2013117883A JP2011265303A JP2011265303A JP2013117883A JP 2013117883 A JP2013117883 A JP 2013117883A JP 2011265303 A JP2011265303 A JP 2011265303A JP 2011265303 A JP2011265303 A JP 2011265303A JP 2013117883 A JP2013117883 A JP 2013117883A
- Authority
- JP
- Japan
- Prior art keywords
- data
- information processing
- processing apparatus
- server
- timing
- 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.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 176
- 238000012545 processing Methods 0.000 claims abstract description 57
- 238000004891 communication Methods 0.000 claims description 140
- 230000005540 biological transmission Effects 0.000 claims description 57
- 238000000034 method Methods 0.000 claims description 45
- 230000004044 response Effects 0.000 claims description 9
- 239000000872 buffer Substances 0.000 description 14
- 230000006870 function Effects 0.000 description 7
- 230000007423 decrease Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は、無線LAN(Local Area Network)や無線WAN(Wide Area Network)等、無線通信網を用いた情報処理装置、情報処理システム、サーバ装置、及びプログラムに関する。 The present invention relates to an information processing apparatus, an information processing system, a server apparatus, and a program using a wireless communication network such as a wireless LAN (Local Area Network) and a wireless WAN (Wide Area Network).
近年、携帯電話機やスマートフォン等の性能が著しく向上し、大容量のデータを処理することが可能となっている。これに伴い、例えば動画撮影などが可能となっている。利用者は、また、例えば動画撮影した動画データを、パーソナルコンピュータに取込んで、ユーチューブ(http://www.youtube.com)等の共有サイトで共有するなどといった利用に供している。 In recent years, the performance of mobile phones and smartphones has been remarkably improved, and large volumes of data can be processed. Along with this, it is possible to shoot moving images, for example. For example, the user has taken moving image data taken by a personal computer and shared it on a sharing site such as YouTube (http://www.youtube.com).
しかしながら、携帯電話回線網や公衆無線LAN等を介して動画データなどの比較的大容量のデータをユーチューブ等のサーバにアップロードする場合、TCP(Transfer Control Protocol)通信では、送信先までの距離に反比例して通信帯域が制限されるため、実際に利用可能な通信帯域が十分大きく確保されない場合や、ユーチューブ等のサーバ側にデータ受け入れ要求が集中している場合もあることから、一般的にアップロード時間が長くなってしまっているのが現状である。 However, when uploading a relatively large amount of data such as video data to a server such as YouTube via a mobile phone network or public wireless LAN, TCP (Transfer Control Protocol) communication is inversely proportional to the distance to the destination. Because the communication bandwidth is limited, the actual available communication bandwidth may not be secured sufficiently, and there may be data acceptance requests concentrated on the server side such as YouTube. Is currently becoming longer.
なお、データ容量が大きいために、一度に送信可能なデータ量を超えている場合に、一度に送信可能なデータ量以下のデータに分割したデータをネットワークを介して受付け、これを連結して本来の送信先となるサーバへ送信する技術が、特許文献1に開示されている。
If the amount of data that can be transmitted at once is exceeded due to the large amount of data, data divided into data that is less than or equal to the amount of data that can be transmitted at one time is received via a network and connected to the original data.
一方、公衆無線LAN等の無線通信網は、通信可能範囲が限られることから、アップロードが完了するまでは当該通信可能範囲に留まらなければならない。また、携帯電話回線網も、移動とともに通信状態が変化するので、アップロードが完了するまでに移動してしまうと、途中でエラーが生じてしまう等の問題が生じることもある。 On the other hand, since a wireless communication network such as a public wireless LAN has a limited communicable range, it must remain within the communicable range until uploading is completed. In addition, since the communication state of the mobile phone network also changes as it moves, there may be a problem that if the mobile phone network is moved before the upload is completed, an error occurs on the way.
本発明は上記実情に鑑みて為されたもので、データアップロード時の利用者の負担を軽減でき、また、併せてアップロード先となるサーバ側の処理負荷の平滑化も可能にできる情報処理装置、情報処理システム、サーバ装置、及びプログラムを提供することを、その目的の一つとする。 The present invention has been made in view of the above circumstances, and can reduce the burden on the user at the time of data upload, and can also smooth the processing load on the server side as an upload destination, It is an object to provide an information processing system, a server device, and a program.
上記従来例の問題点を解決するための本発明は、情報処理装置であって、端末に対して、無線通信回線を介して通信可能に接続されるとともに、当該無線通信回線とは異なる通信回線を介してサーバとの間で通信可能に接続される情報処理装置であって、前記端末側から前記サーバに送信するべきデータを受信する受信手段と、当該受信したデータを保持する保持手段と、前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、を含むこととしたものである。 The present invention for solving the problems of the above-described conventional example is an information processing apparatus, which is communicably connected to a terminal via a wireless communication line and is a communication line different from the wireless communication line An information processing apparatus that is communicably connected to a server via a receiving unit that receives data to be transmitted from the terminal side to the server, a holding unit that holds the received data, Transmission control means for controlling the data held in the holding means to be transmitted to the server when the holding means waits until a predetermined timing after the data is held and the timing comes. And so on.
ここで前記送信制御手段は、前記保持手段が、端末側から受信したデータを保持すると、当該データの送信先である前記サーバに対して送信対象となるデータがある旨を表す通知を送信し、前記サーバから当該データを送信するべきタイミングの指示を受けて、当該指示されたタイミングを前記予め定められたタイミングとして、当該タイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御することとしてもよい。 Here, when the holding unit holds the data received from the terminal side, the transmission control unit transmits a notification indicating that there is data to be transmitted to the server that is the transmission destination of the data, In response to an instruction on the timing for transmitting the data from the server, the instructed timing is set as the predetermined timing to wait until the timing, and the timing is held in the holding means when the timing comes. It is good also as controlling to transmit the data which have been sent to the said server.
また前記端末側から前記サーバ内に蓄積されているべき、前記受信したデータの要求を受け入れ、前記保持手段に当該データが保持されているときには、当該保持手段に保持したデータを、前記端末側へ送信することとしてもよい。 In addition, when the received data request that should be stored in the server from the terminal side is accepted and the data is held in the holding means, the data held in the holding means is transferred to the terminal side. It is good also as transmitting.
さらに、前記端末の利用者を認証する手段をさらに含み、前記利用者が認証されなかった場合は、当該利用者の端末側から前記サーバに送信するべきデータを逐次的に受信すると、前記送信制御手段が、当該逐次的に受信したデータをそのまま前記サーバへ送信するよう制御してもよい。 Further, it further includes means for authenticating a user of the terminal, and when the user is not authenticated, the transmission control is performed when data to be transmitted to the server is sequentially received from the user terminal side. The means may be controlled to transmit the sequentially received data as it is to the server.
また本発明の一態様に係る情報処理システムは、複数の情報処理装置を含み、当該情報処理装置は、端末に対して、無線通信回線を介して通信可能に接続されるとともに、当該無線通信回線とは異なる通信回線を介してサーバとの間で通信可能に接続され、前記端末側から前記サーバに送信するべきデータを受信する受信手段と、当該受信したデータを保持する保持手段と、前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、を有し、前記情報処理装置の各々は、予め定めた方法により定められた順に、データを輪番で送信し、各情報処理装置の前記送信制御手段は、前記予め定められたタイミングとして、前記定められた順により、送信する順となったタイミングとすることとしたものである。 An information processing system according to an aspect of the present invention includes a plurality of information processing apparatuses, and the information processing apparatus is connected to a terminal through a wireless communication line so as to be communicable with the wireless communication line. A communication unit that is communicably connected to a server via a different communication line, receiving means for receiving data to be transmitted from the terminal side to the server, holding means for holding the received data, and the holding A transmission control means for controlling the data held in the holding means to be transmitted to the server when the means waits for a predetermined timing after the data is held, and the timing comes; Each of the information processing devices transmits data in a rotation order in the order determined by a predetermined method, and the transmission control means of each information processing device As timing, by the a defined order in which it was decided to timing of that order to be transmitted.
さらに本発明の別の態様は、送信の対象となるデータを保持し、当該データ保持してから予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持しているデータを送信する情報処理装置に接続されるサーバ装置であって、前記情報処理装置から送信の対象となるデータがある旨の通知を受信する通知受信手段と、データの受け入れ処理を行うべきタイミングを推定する推定手段と、前記推定したタイミングを、データを送信するべきタイミングとして前記情報処理装置に通知する手段と、を含むこととしたものである。 Furthermore, another aspect of the present invention holds data to be transmitted, waits for a predetermined timing after holding the data, and transmits the held data when the timing arrives A server apparatus connected to the information processing apparatus, a notification receiving means for receiving a notification that there is data to be transmitted from the information processing apparatus, and an estimation for estimating a timing at which the data acceptance process is to be performed Means, and means for notifying the information processing apparatus of the estimated timing as a timing to transmit data.
さらに本発明の一態様は、プログラムであって、端末に対して、無線通信回線を介して通信可能に接続されるとともに、当該無線通信回線とは異なる通信回線を介してサーバとの間で通信可能に接続される情報処理装置を、前記端末側から前記サーバに送信するべきデータを受信する受信手段と、当該受信したデータを保持する保持手段と、前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、として機能させることとしたものである。 One embodiment of the present invention is a program that is communicably connected to a terminal via a wireless communication line and communicates with a server via a communication line that is different from the wireless communication line. An information processing apparatus that can be connected to the information processing apparatus includes a receiving unit that receives data to be transmitted from the terminal side to the server, a holding unit that holds the received data, and the holding unit holds the data, It waits until a predetermined timing, and when that timing arrives, it is made to function as a transmission control unit that controls to transmit the data held in the holding unit to the server. .
また、さらに本発明の一態様は、プログラムであって、送信の対象となるデータを保持し、当該データ保持してから予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持しているデータを送信する情報処理装置に接続されるサーバ装置を、前記情報処理装置から送信の対象となるデータがある旨の通知を受信する通知受信手段と、データの受け入れ処理を行うべきタイミングを推定する推定手段と、前記推定したタイミングを、データを送信するべきタイミングとして前記情報処理装置に通知する手段と、として機能させることとしたものである。 Further, one embodiment of the present invention is a program that holds data to be transmitted, waits for a predetermined timing after holding the data, and holds the data when the timing arrives The server device connected to the information processing device that transmits the data being processed, the notification receiving means for receiving notification that there is data to be transmitted from the information processing device, and the timing at which the data acceptance processing should be performed And the means for notifying the information processing apparatus of the estimated timing as the timing to transmit data.
本発明によると、情報処理装置がアップロードの対象となるデータを保持し、これを情報処理装置がサーバへ送信することにより、データアップロード時の利用者の負担を軽減できる。 According to the present invention, the information processing apparatus holds the data to be uploaded, and the information processing apparatus transmits the data to the server, thereby reducing the burden on the user when uploading the data.
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る情報処理システムは、図1に例示するように、情報処理装置1と、端末2と、サーバ装置3とを含んで構成されている。この情報処理システムにおいては少なくとも一つの情報処理装置1が含まれる。また図1ではサーバ装置3は一つだけ図示しているが、サーバ装置3は複数あってもよい。
Embodiments of the present invention will be described with reference to the drawings. As illustrated in FIG. 1, the information processing system according to the embodiment of the present invention includes an
情報処理装置1は、例えば無線LANのアクセスポイントとして動作する装置であり、制御部11、記憶部12、無線通信部13、有線通信部14を含んで構成される。またサーバ装置3は、制御部31、記憶部32、有線通信部34を含んで構成される。情報処理装置1の制御部11は、CPU等のプログラム制御デバイスであり、記憶部12に格納されたプログラムに従って動作する。本実施の形態の制御部11は、端末2からいずれかのサーバ装置3宛に送信するべきデータを、無線通信部13を介して受信する。そして制御部11は当該受信したデータを記憶部12に確保したキャッシュ用の領域に保持する。制御部11は、データを保持させてから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、保持されているデータを、宛先として指定されているサーバ装置3宛に、有線通信部14を介して送信するよう制御する。すなわち、本実施の形態の制御部11は、受信手段及び送信制御手段として機能する。これらの情報処理装置1の具体的動作については、後に述べる。
The
記憶部12は、メモリデバイスやディスクデバイスを含む。この記憶部12は、制御部11によって実行されるプログラムを格納している。このプログラムは、DVD−ROM(Digital Versatile Disc Read Only Memory)等のコンピュータ可読な記録媒体に格納されて提供され、この記憶部12に複写されたものであってよい。また本実施の形態では、この記憶部12が、送信の対象となるデータを保持する保持手段として機能する。さらに記憶部12は、制御部11のワークメモリとしても動作する。
The
無線通信部13は、無線LANインタフェースであり、802.11nなどの予め定めたプロトコルにて、端末2との間で種々のデータを授受する。この無線通信部13は、制御部11から入力される指示に従って、端末2に対して制御部11が指示するデータを送信する。また、この無線通信部13は、端末2を介して受信したデータを制御部11に対して出力する。有線通信部14は、有線LANインタフェースであり、インターネット等の情報通信回線を介してサーバ装置3と通信可能に接続されている。この有線通信部14は、制御部11から入力される指示に従って、宛先となったインターネット上の送信先に対して制御部11が指示するデータを送信する。また、この有線通信部14は、インターネットを介して受信したデータを制御部11に対して出力する。
The
端末2は、例えば携帯電話機やスマートフォン等の情報通信端末であり、情報処理装置1との間で無線にてデータを授受する。本実施の形態では、情報処理装置1が備える無線LANインタフェースを介してデータを授受するものとするが、本実施の形態はこれに限らず、例えば携帯電話通信網の基地局として動作する情報処理装置1に対し、IMT2000等の移動体通信プロトコルを利用してデータを送信するものであってもよい。また、無線WANを介してデータを授受するものであってもよい。
The terminal 2 is an information communication terminal such as a mobile phone or a smartphone, and exchanges data with the
サーバ装置3の制御部31は、CPU等のプログラム制御デバイスであり、記憶部32に格納されたプログラムに従って動作する。この制御部31は、情報処理装置1から有線通信部34を介してデータを受信し、記憶部32に格納する。また、有線通信部34を介して、記憶部32に格納されているデータの提供要求を受信する。制御部31は、当該提供要求に応答して、要求されたデータを記憶部32から読み出し、当該読出したデータを要求元宛に送出する。さらにこの制御部31は、有線通信部31から受信する指示に従い、記憶部32に格納したデータを検索し、検索の結果を指示元へ送信する処理を行ってもよい。
The
記憶部32は、メモリデバイスやディスクデバイス等を含み、制御部31によって実行されるプログラムを保持している。このプログラムも、DVD−ROM等のコンピュータ可読な記録媒体に格納されて提供され、この記憶部32に複写されたものであってよい。
The
有線通信部34は、有線LANインタフェースであり、インターネット等の情報通信回線を介して情報処理装置1と通信可能に接続されている。この有線通信部34は、制御部31から入力される指示に従って、宛先となったインターネット上の送信先に対して制御部31が指示するデータを送信する。また、この有線通信部34は、インターネットを介して受信したデータを制御部31に対して出力する。
The
ここで本実施の形態の制御部11の動作例について説明する。本実施の形態の制御部11は、Linux(登録商標)等のマルチタスク・オペレーティングシステム(OS)を動作させている。そしてこのOSの管理下において、次の各処理を実行している。すなわち制御部11は、端末2からサーバ装置3宛のデータを受信する。ここで端末2からのデータは、TCP/IP(Transmission Control Protocol/Internet Protocol)通信によって送出され、パケットに分割されて受信される。また本実施の形態の制御部11は、例えば動画データであれば、当該動画データの全体(サーバ装置3にて保持されるべき一体のデータ単位)を端末2から受信する。
Here, an operation example of the
つまり、端末2は情報処理装置1に対してTCP−SYN(通信開始)の信号を送出し、情報処理装置1がこれに対してACK(了解)を返答する。すると端末2が例えばHTTPのPOSTメソッド等によってデータを情報処理装置1側へアップロードする。データの全体がアップロードされ、情報処理装置1が正常に受信したこと(HTTP 200(OK)など)を端末2側に通知すると、端末2はTCP−FIN(通信終了)の信号を送信し、情報処理装置1もまた、TCP−FIN(通信終了)の信号を返信する。ここまでの間に情報処理装置1はサーバ装置3への通信を開始しない。
That is, the terminal 2 sends a TCP-SYN (communication start) signal to the
ここで端末2からアップロードされたデータは、サーバ装置3のURL(Uniform Resource Locator)宛のデータとして情報処理装置1によって受信される。情報処理装置1の制御部11は、この受信したデータを、その宛先となったサーバ装置3を特定する情報(サーバ装置3のURLでよい)に関連付けて、記憶部12に保持させる処理を実行している。また制御部11は、これとは並行して図2に例示する処理を実行している。この図2に例示する処理では、まず予め定められたタイミングが到来したか否かを調べる(S1)。
Here, the data uploaded from the terminal 2 is received by the
ここでタイミングは、例えば時間帯を定めたものであってもよい。一例として地方時で深夜2時から5時が定められていてもよい。この場合、制御部11は、図示しないカレンダーIC等で計時している時刻(現在時刻と呼ぶ)の情報を参照し、当該時間帯であるか否かを判断することによって、予め定められたタイミングが到来したか否かを調べることとなる。
Here, the timing may be determined by, for example, a time zone. As an example, the local time may be set from 2:00 to 5:00. In this case, the
そして処理S1において、当該タイミングが到来したと判断すると(Yesであると)、制御部11は、記憶部12に保持しているデータを読み出して(S2)、有線通信部34を介して、読出したデータに関連付けて記録されている情報で特定される、サーバ装置3宛に送信する(S3)。この送信処理は、記憶部12に保持されているデータを例えばパケット単位で、ネットワークのスループットにより徐々に送信するものであり、具体的には図2にてループで示す通り、処理S2とS3とを繰返し、送信するべきデータがなくなるまで実行することによって行われる。
If it is determined in the process S1 that the timing has arrived (Yes), the
ここでも情報処理装置1とサーバ装置3との間はTCP/IP通信が行われる。つまり、情報処理装置1は上記タイミングが到来すると、サーバ装置3に対してTCP−SYN(通信開始)の信号を送出する。サーバ装置3がこれに対してACK(了解)を返答すると、情報処理装置1は、例えばHTTPのPOSTメソッド等によってデータをサーバ装置3側へアップロードする。データの全体がアップロードされ、サーバ装置3が正常に受信したこと(HTTP 200(OK)など)を情報処理装置1側に通知すると、情報処理装置1はTCP−FIN(通信終了)の信号を送信し、サーバ装置3もまた、TCP−FIN(通信終了)の信号を返信する。これによりサーバ装置3へのアップロードが完了する。
Again, TCP / IP communication is performed between the
なお、HTTPによってアップロードを行う場合、情報処理装置1は、端末2からデータのアップロードを受け入れたときに、予めサーバ装置3との間でセッションを開始しておいてもよい。この場合、情報処理装置1はTCP−SYNをサーバ装置3へ送出し、これに対してサーバ装置3からACKが返答されたときに、HTTPのPOSTメソッドにより、任意の情報(アップロードの対象となるデータより短いデータ)をサーバ装置3宛に送信する。サーバ装置3は、これにより例えばHTTP 202(ACCEPTED)のデータを返信する。このとき、この返信されたデータにはセッション識別情報(セッションID)が含まれている。情報処理装置1は、このセッション識別情報を記憶しておき、一旦、TCP−FINをサーバ装置3に送信して、通信を終了しておく。その後、送信の対象となるデータをアップロードする際には、HTTPのPOSTメソッドを送出する際に、このセッションIDを含めてリクエストを送信することとしてもよい。
When uploading by HTTP, the
具体的にタイミングを時間帯で定める場合、制御部11が、現在時刻が当該予め定められた時間帯に含まれると判断すると、端末2から受信して保持していたデータの送信を開始することとなる。また処理S1において、予め定められたタイミングが到来していないと判断すると(Noであると)、制御部11は処理S1を繰返し実行する。
Specifically, when the timing is determined in the time zone, when the
なお、ここではタイミングが単に時間帯によって定められる例について述べたが、本実施の形態はこれに限られない。例えば、このタイミングは、図3に例示するように、サーバ装置3ごとにそれぞれ個別に時間帯が設定されて、サーバ装置3を特定する情報と、当該サーバ装置3へデータを送信するタイミングを表す時間帯の情報とが互いに関連付けられて設定テーブルデータとして記憶部12に格納されたものであってもよい。また時間ではなく、ネットワークの実績のスループットによって定められてもよい。
Although an example in which the timing is simply determined by the time zone has been described here, the present embodiment is not limited to this. For example, as illustrated in FIG. 3, this timing represents information for specifying a server device 3 and a timing for transmitting data to the server device 3 by setting a time zone individually for each server device 3. The time zone information may be associated with each other and stored in the
サーバ装置3ごとに個別に時間帯が定められる場合は、制御部11は、現在時刻の属する時間帯が設定テーブルデータに記録されているか否かを調べることになる。そして、現在時刻の属する時間帯が設定テーブルデータに記録されていれば、制御部11は、当該時間帯の情報に関連付けられた情報で特定されるサーバ装置3宛のデータを選択的に記憶部12から読み出して、当該読出したデータを、宛先となったサーバ装置3に対して送信する。なお、このサーバ装置3ごとの時間帯の情報は、サーバ装置3が送信し、制御部11がサーバ装置3から受信して記憶部12の設定テーブルデータに記録したものであってもよい。
When the time zone is individually determined for each server device 3, the
またスループットによって定められる場合、制御部11は、記憶部12に保持した各データのそれぞれの宛先となっているサーバ装置3に対して、例えばpingパケットなどを送出し、その結果として得られるラウンドトリップタイム(RTT)の情報等を参照し、RTTが予め定めた値を下回る場合に、当該pingパケットの送出先となったサーバ装置3に対してのデータの送信のタイミングが到来したと判断し、当該サーバ装置3宛のデータを選択的に記憶部12から読み出して、当該読出したデータを、宛先となったサーバ装置3に対して送信するようにしてもよい。
In addition, when determined by the throughput, the
さらに別のタイミングの例については後述するが、本実施の形態の一例に係る情報処理システムは、このような構成を備えてなり、次のように動作する。 Although another example of timing will be described later, the information processing system according to an example of the present embodiment has such a configuration and operates as follows.
端末2がサーバ装置3宛のデータ(動画データ等)を、無線にて情報処理装置1へ送信する。ネットワークは、その設定にも依存するが、一般的には不等コスト負荷分散が行われている。不等コスト負荷分散では、ネットワーク上の経路の距離(コスト)に反比例して、通信の帯域幅が決定される。すなわち距離が増大するほど帯域幅は狭くなり、通信速度は低下する。
The terminal 2 transmits data addressed to the server device 3 (moving image data or the like) to the
ここで端末2と情報処理装置1とは無線LAN通信回線を介して直接的に通信を行っているので、経路のコストは小さく、サーバ装置3への通信よりも比較的高速な通信を行うことが可能となっている。つまり、端末2はサーバ装置3宛に直接データを送信するよりも短時間で、情報処理装置1へのデータ送信を完了できる。
Here, since the terminal 2 and the
情報処理装置1は、端末2から受信したデータを、その宛先であるサーバ装置3を特定する情報に関連付けて保持する。例えば受信したデータが動画データであれば、情報処理装置1は、当該動画データの全体を受信する。そして予め定めたタイミングが到来したか否かを調べる。ここでは上述のように、タイミングが時間帯によって定められているものとすると、情報処理装置1は、現在時刻(図示しないカレンダーIC(内蔵)によって計時しているものとする)が、当該定められた時間帯に含まれるか否かを判断する。そして、現在時刻が定められた時間帯に含まれない場合は、データの送信を行わないよう制御する。
The
なお、このようにデータがサーバ装置3に送信されていない段階で、端末2の利用者から、サーバ装置3に送信したデータの要求を受けると、情報処理装置1は、要求されたデータを記憶部12から読み出して、要求元の端末2へ送信することとしてもよい。
In addition, when the request for the data transmitted to the server device 3 is received from the user of the terminal 2 at the stage where the data is not transmitted to the server device 3 in this way, the
やがて、現在時刻が定められた時間帯に含まれることとなると、端末2から受信して保持しているデータを読み出す。そして、当該読出したデータに関連付けられている情報で特定されるサーバ装置3宛に、当該読出したデータを送信するよう制御する。このサーバ装置3宛の送信は、端末2と情報処理装置1との間よりもコストの大きい経路を経由するので、端末2と情報処理装置1との間の通信よりも一般に遅い速度で行われる。
Eventually, when the current time is included in the determined time zone, the data received and held from the terminal 2 is read. Then, control is performed to transmit the read data to the server device 3 specified by the information associated with the read data. The transmission addressed to the server device 3 is performed at a slower speed than the communication between the terminal 2 and the
サーバ装置3は、情報処理装置1からデータを受信して、当該データを蓄積して保持する。以後、ネットワークを介して、当該蓄積して保持したデータの提供要求を受けたサーバ装置3は、当該要求されたデータを要求元へ送信することとなる。
The server device 3 receives data from the
ここで、送信のタイミングの別の例について説明する。この例では、情報処理装置1の制御部11は、端末2から受信したデータを、宛先となるサーバ装置3を特定する情報に関連付けて保持させた後、当該データの宛先となるサーバ装置3に対し、送信対象となるデータがある旨を表す通知を送信する。制御部11はまた、当該サーバ装置3からデータを送信するべきタイミングの指示を受け入れる。この指示は、例えば「X秒後」、「X時以降」等といった相対的な情報(現在時刻からの差の情報)ないし絶対的な情報(時刻を特定する情報)によって行われる。
Here, another example of transmission timing will be described. In this example, the
制御部11は、この指示されたタイミングが到来するまで待機し、当該タイミングが到来すると、記憶部12に保持しているデータを、サーバ装置3へ送信するよう制御する。
The
この例では、サーバ装置3がデータを受け入れるタイミングを主体的に決定できる。つまり、サーバ装置3の制御部31は、情報処理装置1から送信の対象となるデータがある旨の通知を受信する通知受信手段として機能する。また制御部31は、当該通知を受け入れると、データの受け入れ処理を行うべきタイミングを推定する推定手段、並びに、当該推定したタイミングを、データを送信するべきタイミングとして情報処理装置1に通知する手段としても機能する。
In this example, the timing at which the server apparatus 3 accepts data can be determined independently. That is, the
次にこの例による情報処理システムの動作について説明する。この例では図4に例示するように、情報処理装置1が端末2からサーバ装置3宛のデータを当該データ単位で(つまりデータ全体を)受信すると(S11)、情報処理装置1は、この受信したデータを、その宛先となったサーバ装置3を特定する情報(サーバ装置3のURLでよい)に関連付けて、記憶部12に保持させる(S12)。
Next, the operation of the information processing system according to this example will be described. In this example, as illustrated in FIG. 4, when the
情報処理装置1は、当該データの宛先となるサーバ装置3に対し、送信対象となるデータがある旨を表す通知を送信する(S13)。サーバ装置3は、この通知を受け入れると、データの受け入れ処理を行うべきタイミングを推定する(S14)。
The
この推定は、例えば次のようにして行う。具体的な例としてサーバ装置3が、処理負荷がいつでも略一定となるよう制御する(平滑化する)ことを考える。すなわちサーバ装置3は、複数の送信元から時分割的にデータを受信している。このときサーバ装置3は、処理の時点で受信しているデータの送信元の数を調べ、この数が予め定めたしきい値を超えているか否かを調べる。そしてしきい値を超えていなければ、データの受け入れ処理を直ちに行うことができると判断して、データの受け入れ処理を行うべきタイミングを、「現在(0秒後)」と推定する。 This estimation is performed as follows, for example. As a specific example, let us consider that the server apparatus 3 performs control (smoothing) so that the processing load is substantially constant at any time. That is, the server apparatus 3 receives data from a plurality of transmission sources in a time division manner. At this time, the server device 3 checks the number of transmission sources of data received at the time of processing, and checks whether this number exceeds a predetermined threshold value. If the threshold value is not exceeded, it is determined that the data acceptance process can be performed immediately, and the timing at which the data acceptance process is to be performed is estimated as “current (after 0 seconds)”.
また、しきい値を超えている場合は、サーバ装置3は、処理の時点での各送信元から受信しているデータについて、それぞれの受信されるデータのサイズの情報A(送信元から受け入れておく)と、この推定の処理の時点までに既に受信しているデータのサイズの情報Dと、単位時間Δtあたりのデータ受信量(スループット)の情報vとから、各送信元からのデータの送信完了時刻を、現在時刻よりT=(v/(A−D))×Δtだけ後と推定する。そこで本実施の形態のある例では、サーバ装置3は、処理の時点で受信しているデータの送信元のそれぞれについて、データの送信完了時刻を上記の方法で推定する。そして各送信元のうち、もっとも早い送信完了時刻の情報(「T秒後」とする情報)を、データの受け入れ処理を行うべきタイミングとして推定する。 If the threshold value is exceeded, the server device 3 accepts the data A received from each transmission source for the data received from each transmission source at the time of processing (accepted from the transmission source). Data transmission from each transmission source based on the information D on the size of the data already received up to the time of the estimation process and the information v on the data reception amount (throughput) per unit time Δt. The completion time is estimated to be T = (v / (A−D)) × Δt after the current time. Therefore, in an example of the present embodiment, the server device 3 estimates the data transmission completion time for each of the data transmission sources received at the time of processing by the above method. Then, the information of the earliest transmission completion time (information to be “after T seconds”) among the transmission sources is estimated as the timing at which the data reception process is to be performed.
サーバ装置3は、ここで推定したタイミングの情報を、情報処理装置1へ送信する(S15)。情報処理装置1は、受信したタイミングの情報(「X秒後」との情報)に現在時刻(図示しないカレンダーIC等で計時しておく)を加算して、送信するべきタイミングの情報を算出して得る。そして情報処理装置1は、この算出したタイミングの情報を、処理S12で保持させたデータに関連付けて記録する(S16)。
The server apparatus 3 transmits the timing information estimated here to the information processing apparatus 1 (S15). The
また、情報処理装置1は、この処理と並行して、次の図5に例示する処理を実行している。すなわち情報処理装置1は、記憶部12に保持されている、各データに関連付けられているタイミングの情報のうち、到来しているタイミングがあるか否かを調べる(S21)。
Further, the
ここでのタイミングは、既に述べたように時刻を表す情報となっているので、情報処理装置1は、現在時刻より前となっている時刻の情報に関連付けられたデータを記憶部12に保持したデータのうちから検索することになる。
Since the timing here is information representing the time as described above, the
そして情報処理装置1は、処理S21において、送信するべきタイミングが到来しているデータがあると判断すると(Yesであると)、記憶部12に保持している当該データを読み出して(S22)、有線通信部34を介して、読出したデータに関連付けて記録されている情報で特定される、サーバ装置3宛に送信する(S23)。この送信処理は、記憶部12に保持されているデータを、例えばパケット単位で、ネットワークのスループットにより徐々に送信するものである。つまり、図5にてループで示す通り、処理S22とS23とを繰返し、送信するべきデータがなくなるまで実行することによって行われる。また処理S21において、送信するべきタイミングが到来しているデータがないと(Noであると)、情報処理装置1は、処理S21を繰返し実行する。
When the
この例によると、データの送信元が予め定めた数より少ない場合は、サーバ装置3は直ちに情報処理装置1からのデータの送信を受け入れることとなる。またデータの送信元が予め定めた数より多い場合、サーバ装置3は、送信元の一つからの送信が終る時点を推定し、その時点以降に送信を開始するよう、情報処理装置1に求めることとなる。
According to this example, when the number of data transmission sources is less than a predetermined number, the server apparatus 3 immediately accepts data transmission from the
さらにここまでの例に限らず、本実施の形態の情報処理装置1は、端末2の利用者によって、または送信の対象となるデータによって、あるいはこれらの組み合せによって、上述の処理を行うか否かを異ならせてもよい。例えば情報処理装置1は、無線通信部13を介して通信可能に接続されている各端末2の利用者を認証する。この認証は予め設定された利用者名とパスワードとの組が入力されたか否かによって行うなど、広く知られた方法を利用できる。
Further, not limited to the above examples, the
そして情報処理装置1の制御部11は、認証に成功した利用者の端末2からサーバ装置3宛のデータ(データ全体)が受信されると、ここまでに説明した処理を実行し、受信したデータを記憶部12に保持して、定められたタイミングが到来するまで待機し、定められたタイミングが到来すると、当該保持したデータを宛先となるサーバ装置3へ送信する。また、認証を経ていない、または認証に失敗した利用者の端末2からサーバ装置3宛のデータが受信されると、制御部11は、当該端末2からデータを例えばパケットごとに受信し、当該受信したデータをそのまま有線通信部14を介してサーバ装置3へ送信する。サーバ装置3では、情報処理装置1から受信されるデータを受け入れて、蓄積して保持する。
When the
この例によると、認証された利用者は、その端末2からサーバ装置3宛のデータを送信すると、情報処理装置1がそのデータの全体をデータ単位で一旦保持し、後にサーバ装置3へ送信することとなるので、既に述べたように端末2の通信は比較的短時間に完了する。一方、認証されていない利用者に対しては、情報処理装置1は単にサーバ装置3への中継(ブリッジ)を行う装置としてしか機能しない。このためデータがパケット単位でサーバ装置3に伝送されていくこととなって、情報処理装置1とサーバ装置3との間の通信速度(比較的低速)に影響され、端末2の通信は、完了までに比較的長時間を要することとなる。
According to this example, when an authenticated user transmits data addressed to the server device 3 from the terminal 2, the
また本実施の形態の別の例では、利用者ではなく、例えばデータの種類に応じて処理を異ならせてもよい。一例として情報処理装置1は、送信の対象となるデータのサイズによって処理を異ならせてもよい。例えば端末2から受信したデータのサイズが予め定めたデータサイズしきい値を超える場合には、情報処理装置1の制御部11は、端末2から受信したデータ(データ全体)を記憶部12に保持して、定められたタイミングが到来するまで待機し、定められたタイミングが到来すると、当該保持したデータを、宛先となるサーバ装置3へ送信する処理(適時アップロード処理と呼ぶ)を実行する。一方、端末2から受信したデータのサイズが予め定めたデータサイズしきい値を超えない場合は、制御部11は、当該端末2からデータを例えばパケットごとに受信し、当該受信したデータをそのまま有線通信部14を介してサーバ装置3へ送信する。
In another example of the present embodiment, the processing may be different depending on, for example, the type of data, not the user. As an example, the
この例によると、例えば次のような動作が行われることとなる。すなわち、ユーチューブ等に対するデータのアップロードは、一般に次のような手順で行われる。
(1)端末2からのアップロードの要求
(2)サーバ装置3が当該要求に応答して、タイトル等書誌的事項の入力を求めるインタフェース画面を提示
(3)端末2は当該画面を表示して利用者からデータを受け入れ、受け入れたデータをサーバ装置3へ送信
(4)サーバ装置3が動画データ等、主となるデータ(一般にデータサイズの比較的大きいデータ)のアップロードを求める
(5)サーバ装置3がアップロードされた主となるデータへアクセスするためのURLを提供
According to this example, for example, the following operation is performed. That is, uploading data to YouTube or the like is generally performed in the following procedure.
(1) Request for upload from terminal 2 (2) Server device 3 responds to the request and presents an interface screen for requesting input of bibliographic items such as a title (3) Terminal 2 displays and uses the screen (4) Server device 3 requests upload of main data (generally data having a relatively large data size) such as moving image data (5) Server device 3 Provides URL to access the main data uploaded by
ここで端末2からサーバ装置3へ送信されるデータのうち、(1)での要求と、(3)での書誌的事項に係るデータは、比較的サイズの小さいものである。従って上述のように、情報処理装置1が送信の対象となるデータのサイズによって処理を異ならせる場合、情報処理装置1は、端末2からのアップロードの要求を受信すると、この要求については、そのまま(予め定めたタイミングを待つことなく)サーバ装置3へ送信する。そして情報処理装置1は、サーバ装置3から当該要求への応答としてのインタフェース画面を記述するHTMLデータ等を受信して、このデータを端末2へ送信する。
Here, among the data transmitted from the terminal 2 to the server device 3, the request in (1) and the data related to the bibliographic items in (3) are relatively small in size. Therefore, as described above, when the
端末2の利用者がこのインタフェース画面を利用して書誌的なデータを入力し、送信を指示すると、端末2が当該入力されたデータを情報処理装置1へ送信する。このデータも比較的サイズが小さいので、情報処理装置1ではデータサイズしきい値を下回るデータであるとして、そのまま(予め定めたタイミングを待つことなく)サーバ装置3へ当該データを送信する。
When the user of the terminal 2 inputs bibliographic data using this interface screen and instructs transmission, the terminal 2 transmits the input data to the
サーバ装置3では、書誌的事項のデータを受け入れてこれを記憶し、動画像データのアップロードを求める。情報処理装置1は、当該動画像データ等、主たるデータのアップロードの求めを端末2へ送信する。そして端末2がこの求めに応じて、動画像データ等主たるデータのアップロードを開始する。
The server device 3 accepts bibliographic data and stores it, and requests uploading of moving image data. The
この主たるデータがデータサイズしきい値を超えると、情報処理装置1は、主たるデータの全体を端末2から受信し、記憶部12に保持する。そして情報処理装置1は、定められたタイミングが到来するまで待機し、定められたタイミングが到来すると、サーバ装置3に対して、当該保持している主たるデータを送信する。
When the main data exceeds the data size threshold, the
なお、この主たるデータの送信では情報処理装置1とサーバ装置3は次のように動作してもよい。すなわち情報処理装置1は、主たるデータの全体を端末2から受信して、記憶部12に保持すると、当該データの宛先となるサーバ装置3に対し、送信対象となるデータがある旨を表す通知を送信する。
In the main data transmission, the
サーバ装置3は、この通知を受け入れて、データの受け入れ処理を行うべきタイミングを推定し、当該推定したタイミングの情報を、情報処理装置1へ送信するとともに、アップロードが完了したときに、当該主たるデータに対してアクセスをするためのURLの情報を生成して情報処理装置1へ送信する。このURLの情報は、具体的にユーチューブの場合、蓄積した動画データの閲覧画面のURLに相当する。
The server device 3 accepts this notification, estimates the timing at which data acceptance processing should be performed, transmits information on the estimated timing to the
情報処理装置1では、受信したタイミングの情報と、URLの情報とを受け入れる。そして情報処理装置1は、受信したタイミングの情報に現在時刻(図示しないカレンダーIC等で計時しておく)を加算して、送信するべきタイミングの情報を算出して得る。情報処理装置1は、この算出したタイミングの情報と、受信したURLの情報とを、保持させたデータに関連付けて記録する。
The
また情報処理装置1は、この処理と並行して、図5に例示する処理を実行する。さらに情報処理装置1は、端末2からURLを指定したデータのアクセス要求を受け入れると、指定されたURLが記憶部12に保持されたデータに関連付けて記録されたURLのうちにあるかを検索する。ここで情報処理装置1は、記憶部12に保持されたデータに関連付けて記録されたURLのうちに、指定されたURLがあることを見出すと、当該記録されたURLに関連付けられたデータを端末2へ送信する。また、情報処理装置1は、記憶部12に保持されたデータに関連付けて記録されたURLのうちに、指定されたURLがなければ、当該URLへのアクセス要求を、有線通信部14を介して、インターネット側へ送出する。
In addition, the
この例によると、例えばエバーノート(Evernote)などのように、利用者のデータを受け入れて蓄積し、要求に応じて提供するサービスを利用するにあたり、端末2の利用者は、アップロードの対象となったデータを比較的短時間に情報処理装置1へ送信完了でき、情報処理装置1からサーバ装置3側へは適宜のタイミングで後から送信させることができる。また送信したデータは、情報処理装置1との通信が可能な範囲では、サーバ装置3への送信がなされていない段階でも、情報処理装置1から配信を受けることができ、その後サーバ装置3へのデータの送信が完了すれば、サーバ装置3から送信したデータの配信を受けることができるようになる。
According to this example, the user of the terminal 2 becomes a target of uploading in order to use a service that accepts and accumulates user data, such as Evernote, and provides it upon request. The data can be transmitted to the
また認証した利用者であって、かつ、予め定めたデータサイズしきい値を超えるデータについて、情報処理装置1が、上記の適時アップロード処理を行うこととしてもよい。さらに、適時アップロード処理を行うか否かを利用者が端末2からの指示により設定できるようにしてもよい。例えば利用者による適時アップロード処理を行うべき旨の設定がされた場合にはデータのヘッダにその旨の情報を含め、情報処理装置1が、データのヘッダに適時アップロード処理を行うべき旨の設定がされた旨の情報があるときに限り、適時アップロード処理を行うこととしてもよい。
The
また別の例では情報処理装置1が、データごとに、その宛先となるサーバ装置3によって、適時アップロード処理を行うか否かを決定してもよい。例えば適時アップロード処理を行うサーバ装置3のリストを記憶部12に保持しておき、端末2からデータを受信するごとに、情報処理装置1の制御部11が、上記リストを参照して、受信したデータの宛先がリストにある場合に適時アップロード処理を行い、リストにない場合は、従来通り、パケットごとに受信してはサーバ装置3へ送信するといった処理を行うこととしてもよい。
In another example, the
さらに本実施の形態の情報処理システムでは、情報処理装置1は、複数あってもよい。この場合、情報処理装置1の制御部11は、サーバ装置3に対してデータを送信するべき、予め定めたタイミングを次のように定めてもよい。すなわち本実施の形態のある例では、複数の情報処理装置1の各々がデータを輪番で送信することとなるよう、予め定めた方法により、情報処理装置1の各々に、順序の情報を設定しておく。この順序の情報は例えば、自分がデータの送信を完了した後に次にどの情報処理装置1が送信を行うべきかを表す情報を、各情報処理装置1に記録しておくことで設定できる。この設定は、輪番での送信が可能となるよう、循環的に設定する。つまり最後の情報処理装置1には、次に送信を行う情報処理装置1として最初の情報処理装置1を設定しておく。
Furthermore, in the information processing system of the present embodiment, there may be a plurality of
具体的に制御部11は、他の情報処理装置1から順番が到来したことを表す通知を、有線通信部14を介して受けると、予め定められたタイミングが到来したものとして、端末2から受け入れて記憶部12に保持しているデータのそれぞれを、それぞれに関連付けられた情報で特定されるサーバ装置3宛に送信する。そして保持しているデータの送信が完了すると、設定された、次の情報処理装置1を特定する情報(例えば情報処理装置1のネットワークアドレス(IPアドレスなど)でよい)を取り出す。そして当該情報で特定される他の情報処理装置1に対して順番が到来したことを表す通知を有線通信部14を介して送信する。
Specifically, when the
さらに情報処理装置1の制御部11における、サーバ装置3に対してデータを送信するべき、タイミングを定める方法は、次のようなものでもよい。本実施の形態のまた別のある例では、複数の情報処理装置1の各々が、あるサーバ装置3を注目サーバとして、この注目サーバに対する送信の対象として、記憶部12に保持しているデータ量の情報を送受し、データ量の大きい順に注目サーバへの送信を行うようにしてもよい。
Furthermore, the method for determining the timing at which the
具体的に制御部11は、あるサーバ装置3(注目サーバとする)への送信を行おうとするにあたり、他の情報処理装置1に対して、注目サーバへデータを送信中であるか否かを問い合せる。各情報処理装置1の制御部11は、注目サーバへデータを送信中であればその旨を返答し、そうでなければ記憶部12に格納されているデータのうち、注目サーバへ送信するべきデータの量を表す情報を生成して返答する。
Specifically, the
制御部11は、この返答を受けて、注目サーバへデータを送信中である情報処理装置1の数が予め定めた数を超えない場合には、各情報処理装置1の返答に含まれるデータ量と自己が記憶部12に保持している、注目サーバ宛のデータの量とを比較する。そしてデータ量が最も大きい場合に、制御部11は、注目サーバに対して、当該注目サーバ宛のデータを記憶部12から読み出して送信する。
When the
また、制御部11は、注目サーバへデータを送信中である旨の返答を行った情報処理装置1の数が、予め定めた数を超える場合は、記憶部12に格納されたデータに関連付けられた情報で特定される他のサーバ装置3があれば、当該他のサーバ装置3の一つを注目サーバとして選択して、他の情報処理装置1への問い合せの処理から処理を繰返す。
In addition, when the number of
このように、本実施の形態の情報処理装置1は、相互に通信を行って、各サーバ装置3に対して通信する情報処理装置1が、予め定めた台数を超えないように制御することとしてもよい。
As described above, the
なお、ここまでの説明において情報処理装置1の制御部11は、記憶部12に保持しているデータのうち、宛先となったサーバ装置3への送信が完了したものについては、記憶部12から削除するようにしてもよい。
In the description so far, the
また、ここまでの例では、TCP/IP、並びにHTTPを利用する例について述べたが、例えばTCPではなくUDP(User Datagram Protocol)を用いるなど、他のプロトコルを利用する場合も同様の処理を適用できる。 In the examples described so far, the example using TCP / IP and HTTP has been described. However, the same processing is applied when using other protocols such as UDP (User Datagram Protocol) instead of TCP. it can.
また本実施の形態の別の例では、情報処理装置1が、次のような構成を備えてもよい。すなわち実施の形態のある側面(aspect)では、この制御部11は、複数のプログラム実行環境を並列的に動作させることのできるホストオペレーティングシステム(ホストOS)の処理を実行している。この例の制御部11は、概念的には、自分自身のCPU資源や、バッファ等のストレージ資源、あるいはネットワークの帯域の資源等を、これら複数のプログラムに分割して割り当てる。また、各プログラム実行環境では、さらにオペレーティングシステム(ゲストOS)が動作してもよく、当該ゲストOS上で、複数のタスクが時分割的ないし並列的に実行されてもよい。
Further, in another example of the present embodiment, the
このような例の一つでは、制御部11は、ホストOS及びゲストOSとしてLinuxを動作させており、ホストOS上で複数の仮想的なプログラム実行環境を形成する方法として、リソースコンテナ(resource containers)の一種である、Linux Containersを用いる。またこの例では無線通信部13は、例えば、一つないし複数の無線LANチップを備えるネットワークカードである。この無線通信部13は、制御部11の制御により、時分割多重により複数の通信チャネルを多重化する。この時分割多重は例えば、multiple SSID機能として広く知られている機能と同じようにして実現可能であるので、ここでの詳しい説明は省略する。
In one such example, the
そしてこの無線通信部13は、802.11nなどの予め定めたプロトコルにて、各通信チャネルを介して、それぞれの通信チャネルで接続された端末2との間で、無線通信を行う。具体的に通信チャネルには互いに異なるssidが設定され、端末2の利用者は、どの通信チャネルで接続するかをssidを選択することで変更できる。
The
制御部11は、機能的には図6に例示するように、ホストOS40と、各通信チャネルに対応して形成される複数のプログラム実行環境50とを含む。また、ホストOS40には、デバイスドライバ41を含む。プログラム実行環境50の各々の上では、ゲストOS51が実行され、当該ゲストOS51上で動作するユーザプログラムとして、データ処理モジュール55と通信制御モジュール56とが実行される。プログラム実行環境を形成する方法としてLinux Containersを用いる場合、各プログラム実行環境50は、ホストOS40上で、それぞれ独立したLXC(Linux Containers) Guest環境として実現される。
The
ゲストOS51は、一般的な無線通信のためのプロトコルスタックを備える。ここでゲストOS51のプロトコルスタックには、OSI参照モデルにおける上位側の層の処理を行うモジュールからより下位の、データリンク層の処理を行うモジュールまで(MAC(Media Access Control)副層に対応するモジュール)が少なくとも含まれる。一例として、Linuxであれば、nl80211、mac80211、ath9k等を含む。 The guest OS 51 includes a protocol stack for general wireless communication. Here, the protocol stack of the guest OS 51 includes a module corresponding to the MAC (Media Access Control) sublayer from a module that performs processing of the upper layer in the OSI reference model to a module that performs processing of the lower data link layer. ) At least. As an example, Linux includes nl80211, mac80211, ath9k, and the like.
このゲストOS51は、起動時に新たな通信チャネルの開設(open)をホストOS40に要求する。そして対応する通信チャネルが開設されると、当該対応する通信チャネルにおける物理的な通信路の確保の処理や、競合制御の処理を実行する。またゲストOS51は、ユーザプログラムであるデータ処理モジュール55との間で、対応する通信チャネルを介して送受信するデータを授受する。さらにゲストOS51は、通信制御モジュール56から入力される指示に従い、対応する通信チャネルにおける通信のパラメータ(後述)を設定する。
The guest OS 51 requests the
一例として、このゲストOS51は、対応する通信チャネルの仮想的な無線通信デバイスのインタフェースを、ユーザプログラム側に提供する。具体的にLinuxでは、無線通信デバイスのインタフェースは、wlanp及びmon.wlanp(これらにおいて末尾のpは0から始まる数値)で識別されるデバイスとして仮想化される。そこで、このゲストOS51は、通信チャネルに対する仮想的無線通信デバイスインタフェース(wlan0及びmon.wlan0等)としてユーザプログラム側に提供する。 As an example, the guest OS 51 provides the user program side with an interface of a virtual wireless communication device of a corresponding communication channel. Specifically, in Linux, the interface of a wireless communication device is virtualized as a device identified by wlanp and mon.wlanp (where p is a numerical value starting from 0). Therefore, this guest OS 51 is provided to the user program side as a virtual wireless communication device interface (such as wlan0 and mon.wlan0) for the communication channel.
データ処理モジュール55は、それが実行されているプログラム実行環境50に対応する通信チャネルを介して送受される情報を、予めプログラムされた指示に従って処理する。この処理の内容はプログラム実行環境50ごとに異なるものとしてもよい。具体的に、このデータ処理モジュール55がLinux上で動作するものであれば、データ処理モジュール55は、通信データを処理する一般的なプログラムと同様に、wlan0へアクセスする。ここではゲストOS51により、wlan0への書き込みは、対応する通信チャネルを介して送信するデータとして、また、wlan0からの読み出しは、対応する通信チャネルを介して受信したデータの読み出しとして扱われる。 The data processing module 55 processes information transmitted / received via a communication channel corresponding to the program execution environment 50 in which it is executed according to a preprogrammed instruction. The content of this processing may be different for each program execution environment 50. Specifically, if the data processing module 55 operates on Linux, the data processing module 55 accesses wlan0 in the same manner as a general program for processing communication data. Here, writing to wlan0 by the guest OS 51 is handled as data transmitted via the corresponding communication channel, and reading from wlan0 is handled as reading data received via the corresponding communication channel.
通信制御モジュール56は、対応する通信チャネル(対応通信チャネル)を介した通信において、通信のパラメータを設定する。ここで通信のパラメータには、識別情報(対応通信チャネルがアクセスポイントとして動作する場合のssid等)や、ブロードキャストのためのキー長さ、暗号化処理の有無、暗号化のパラメータ(暗号処理の種類等)が含まれる。この通信制御モジュール56は、例えばLinux等におけるhostapdをそのまま利用できる。この例のようにhostapdである場合、通信制御モジュール56としてのhostapdは、ゲストOS51が提供するインタフェースmon.wlan0を介して通信のパラメータの設定等を行う。 The communication control module 56 sets communication parameters in communication via a corresponding communication channel (corresponding communication channel). Here, the communication parameters include identification information (such as ssid when the corresponding communication channel operates as an access point), key length for broadcasting, presence / absence of encryption processing, encryption parameters (type of encryption processing) Etc.). The communication control module 56 can use hostapd in Linux or the like as it is. In the case of hostapd as in this example, hostapd as the communication control module 56 sets communication parameters via the interface mon.wlan0 provided by the guest OS 51.
ホストOS40のデバイスドライバ41は、無線通信部13を制御する。このデバイスドライバ41は、ゲストOS51からの通信チャネルの開設の要求に応答して、新たに設定する通信チャネルに対応するバッファ45を形成し、無線通信部13に新たな通信チャネルの開設を行わせる。このとき、既に無線通信部13が少なくとも一つの通信チャネルを介した通信を行っているならば、デバイスドライバ41は、時分割多重により当該通信チャネルでの通信を追加的に開始させる。
The
ここでこの例における制御部11の詳しい処理の例について述べる。制御部11が実行しているホストOS40は、各プログラム実行環境50上のゲストOS51に対して、それぞれ互いに異なるネットワーク名前空間(network namespace)を設定する。つまり、各プログラム実行環境50での仮想的無線通信デバイスインタフェースごとに、互いに異なるIPアドレスや、ルーティングテーブル等を設定する。そしてホストOS40では、有線通信部14を介して受信するデータの宛先を参照し、当該宛先となったノードに対応するネットワーク名前空間が設定されたプログラム実行環境50がある場合、そのプログラム実行環境50上で動作するゲストOS51に対して受信したデータを受け渡す。
Here, an example of detailed processing of the
またいずれかのプログラム実行環境50上で動作するデータ処理モジュール55から、有線通信部14を介して送出するべきデータが受け渡されると、ホストOS40は、当該データの受け渡し元であるプログラム実行環境50に対応するルーティングテーブル等の設定に従い、有線通信部14を介して当該データを送出する。
When data to be transmitted is transferred from the data processing module 55 operating on any program execution environment 50 via the wired
制御部11が実行するデータ処理モジュール55は、ゲストOS51を介して、ホストOS40のデバイスドライバ41内に形成された複数のバッファ45のうち、対応する通信チャネルに関わるバッファ45に対してアクセスする。
The data processing module 55 executed by the
制御部11は、ホストOS40としての動作において、ゲストOS51からのバッファ45へのアクセス要求に応答し、要求元のゲストOS51が実行されているプログラム実行環境50に対応するバッファ45にアクセスし、要求されたデータの書き込みまたはデータの取り出しを行う。ここでホストOS40が取り出したデータは要求元のゲストOS51に受け渡される。このようにして、プログラム実行環境50のそれぞれが、複数のバッファ45のうち、プログラム実行環境50に対応した通信チャネルに係るバッファ45(以下、アクセスの対象となったバッファ45と呼ぶ)に対して排他的にアクセスすることが可能となる。すなわち、これにより、プログラム実行環境ごとに、それぞれの上で実行されるプログラムに対してのみ、それぞれのプログラム実行環境が提供する仮想的無線通信デバイスインタフェースを介しての通信を行わせることとなり、IPアドレスやルーティングテーブル等をそれぞれ独立して設定できる。
In the operation as the
データ処理モジュール55は、アクセスの対象となったバッファ45に格納されているデータを、ゲストOS51が提供するインタフェース(wlan0等)を介して受け取る。そしてデータ処理モジュール55は、当該受け取ったデータに対して予め定められた処理を行う。本実施の形態では、データ処理モジュール55は、基本的には、受け取ったデータを、有線通信部14を介して送出するよう、ゲストOS51に対して要求する。またこのとき、データ処理モジュール55は有線通信部14を介して受信したデータを受け入れて、これを対応する通信チャネルを介して送出するようゲストOS51に対して要求する(wlan0等へ書き込む)。
The data processing module 55 receives the data stored in the access target buffer 45 via an interface (such as wlan0) provided by the guest OS 51. Then, the data processing module 55 performs a predetermined process on the received data. In the present embodiment, the data processing module 55 basically requests the guest OS 51 to send the received data via the wired
ゲストOS51では、通信チャネルを介して送出するべきデータをユーザプログラムから受け入れて、アクセスの対象となったバッファ45に格納するようホストOS40に要求する。
The guest OS 51 accepts data to be sent through the communication channel from the user program and requests the
このように構成された制御部11を利用する場合、複数のプログラム実行環境50a,50b…を起動し、それぞれのプログラム実行環境50において、それぞれゲストOS51a,51b…を動作させる。さらにこれらのプログラム実行環境50a,b…のそれぞれにおいて、ユーザプログラムであるデータ処理モジュール55a,b…及び通信制御モジュール56a,b…を動作させることができる。
When the
ここでデータ処理モジュール55aが従来通り、アクセスの対象となったバッファ45に格納されているデータを、ゲストOS51aが提供するインタフェース(wlan0)を介してパケット単位で受け取り、当該受け取ったパケット単位で受取ったデータを、有線通信部14を介して、その宛先となったサーバ装置3へ送信するものとする。またデータ処理モジュール55bは、適時アップロード処理を実行し、端末2から受信され、バッファ45に格納されているデータ(データ全体)をゲストOS51bが提供するインタフェース(wlan1)を介してデータ単位で(つまりデータ全体を)受け取り、当該受け取ったデータを記憶部12に保持するものとする。そしてデータ処理モジュール55bは、定められたタイミングが到来するまで待機し、定められたタイミングが到来したときに、記憶部12に保持したデータを、宛先となるサーバ装置3へ送信するものとする。
Here, the
このようにすると、利用するssidを異ならせることで、適時アップロード処理を利用可能な端末利用者とそうでない利用者とを区別させることが可能となる。 In this way, by using different ssids, it is possible to distinguish between terminal users who can use timely upload processing and users who are not.
図7は、約2.8メガバイト、約6メガバイト、約11.6メガバイト、約23.6メガバイト、約45メガバイトの5種類の動画データを、適時アップロード処理を行う場合に端末2が送信を完了するまでの時間(つまり情報処理装置1がデータ全体を受信完了するまでの時間)と、適時アップロード処理を行わない場合に端末2が送信を完了するまでの時間(つまり、サーバ装置3がデータの全体を受信完了するまでの時間)とを縦軸に表して比較したものである。
Fig. 7 shows that terminal 2 completes transmission when five types of video data of about 2.8 megabytes, about 6 megabytes, about 11.6 megabytes, about 23.6 megabytes, and about 45 megabytes are uploaded in a timely manner. The time until the
ここでは複数回のアップロードを試し、その平均と誤差とを図示している。図7から理解されるように、適時アップロード処理を行う場合、全体的に端末2が送信を完了するまでの時間は短縮された。また、誤差を表すバーから理解されるように、適時アップロード処理を行わない場合に比べ、適時アップロード処理を行う場合は、端末2が送信を完了するまでの時間のばらつきが少なく、比較的安定した通信を行うことができた。 Here, a plurality of uploads are tried, and the average and error are illustrated. As understood from FIG. 7, when the timely upload process is performed, the time until the terminal 2 completes the transmission is shortened as a whole. In addition, as can be seen from the error bar, when timely upload processing is performed compared to when timely upload processing is not performed, the time required for terminal 2 to complete transmission is relatively small and relatively stable. Communication was possible.
1 情報処理装置、2 端末、3 サーバ装置、11,31 制御部、12,32 記憶部、13 無線通信部、14,34 有線通信部、40 ホストOS、41 デバイスドライバ、45 バッファ、50 プログラム実行環境、51 ゲストOS、55 データ処理モジュール、56 通信制御モジュール。 1 Information processing device, 2 terminal, 3 server device, 11, 31 control unit, 12, 32 storage unit, 13 wireless communication unit, 14, 34 wired communication unit, 40 host OS, 41 device driver, 45 buffer, 50 program execution Environment, 51 guest OS, 55 data processing module, 56 communication control module.
Claims (8)
前記端末側から前記サーバに送信するべきデータを受信する受信手段と、
当該受信したデータを保持する保持手段と、
前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、
を含む情報処理装置。 An information processing apparatus that is communicably connected to a terminal via a wireless communication line and that is communicably connected to a server via a communication line different from the wireless communication line,
Receiving means for receiving data to be transmitted from the terminal side to the server;
Holding means for holding the received data;
Transmission control means for controlling the data held in the holding means to be transmitted to the server when the holding means waits until a predetermined timing after the data is held and the timing comes. When,
An information processing apparatus including:
前記送信制御手段は、前記保持手段が、端末側から受信したデータを保持すると、当該データの送信先である前記サーバに対して送信対象となるデータがある旨を表す通知を送信し、前記サーバから当該データを送信するべきタイミングの指示を受けて、当該指示されたタイミングを前記予め定められたタイミングとして、当該タイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する情報処理装置。 The information processing apparatus according to claim 1,
When the holding unit holds the data received from the terminal side, the transmission control unit transmits a notification indicating that there is data to be transmitted to the server that is the transmission destination of the data, and the server In response to an instruction on the timing at which the data should be transmitted, the designated timing is set as the predetermined timing, the process waits until the timing, and is held in the holding means when the timing arrives. An information processing apparatus that controls to transmit data to the server.
前記端末側から前記サーバ内に蓄積されているべき、前記受信したデータの要求を受け入れ、前記保持手段に当該データが保持されているときには、当該保持手段に保持したデータを、前記端末側へ送信する情報処理装置。 The information processing apparatus according to claim 1, wherein
Accepts the request for the received data that should be stored in the server from the terminal side, and transmits the data held in the holding unit to the terminal side when the holding unit holds the data Information processing apparatus.
前記端末の利用者を認証する手段をさらに含み、
前記利用者が認証されなかった場合は、当該利用者の端末側から前記サーバに送信するべきデータを逐次的に受信すると、前記送信制御手段が、当該逐次的に受信したデータをそのまま前記サーバへ送信するよう制御する情報処理装置。 An information processing apparatus according to any one of claims 1 to 3,
Further comprising means for authenticating a user of the terminal;
When the user is not authenticated, when the data to be transmitted to the server is sequentially received from the terminal side of the user, the transmission control unit directly transmits the sequentially received data to the server. An information processing apparatus that controls transmission.
前記情報処理装置は、
端末に対して、無線通信回線を介して通信可能に接続されるとともに、当該無線通信回線とは異なる通信回線を介してサーバとの間で通信可能に接続され、
前記端末側から前記サーバに送信するべきデータを受信する受信手段と、
当該受信したデータを保持する保持手段と、
前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、
を有し、
前記情報処理装置の各々は、予め定めた方法により定められた順に、データを輪番で送信し、
各情報処理装置の前記送信制御手段は、前記予め定められたタイミングとして、前記定められた順により、送信する順となったタイミングとする情報処理システム。 An information processing system including a plurality of information processing devices,
The information processing apparatus includes:
The terminal is connected to be communicable via a wireless communication line, and is connected to be communicable with a server via a communication line different from the wireless communication line.
Receiving means for receiving data to be transmitted from the terminal side to the server;
Holding means for holding the received data;
Transmission control means for controlling the data held in the holding means to be transmitted to the server when the holding means waits until a predetermined timing after the data is held and the timing comes. When,
Have
Each of the information processing devices transmits data in a rotation number in an order determined by a predetermined method,
The information processing system in which the transmission control unit of each information processing apparatus sets the timing determined in the transmission order as the predetermined timing according to the predetermined order.
前記情報処理装置から送信の対象となるデータがある旨の通知を受信する通知受信手段と、
データの受け入れ処理を行うべきタイミングを推定する推定手段と、
前記推定したタイミングを、データを送信するべきタイミングとして前記情報処理装置に通知する手段と、
を含むサーバ装置。 A server that holds data to be transmitted, waits for a predetermined timing after holding the data, and is connected to an information processing apparatus that transmits the held data when the timing arrives A device,
Notification receiving means for receiving notification from the information processing apparatus that there is data to be transmitted;
An estimation means for estimating a timing at which data reception processing should be performed;
Means for notifying the information processing apparatus of the estimated timing as a timing to transmit data;
Server device including
前記端末側から前記サーバに送信するべきデータを受信する受信手段と、
当該受信したデータを保持する保持手段と、
前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、
として機能させるプログラム。 An information processing apparatus that is communicably connected to a terminal via a wireless communication line and that is communicably connected to a server via a communication line different from the wireless communication line.
Receiving means for receiving data to be transmitted from the terminal side to the server;
Holding means for holding the received data;
Transmission control means for controlling the data held in the holding means to be transmitted to the server when the holding means waits until a predetermined timing after the data is held and the timing comes. When,
Program to function as.
前記情報処理装置から送信の対象となるデータがある旨の通知を受信する通知受信手段と、
データの受け入れ処理を行うべきタイミングを推定する推定手段と、
前記推定したタイミングを、データを送信するべきタイミングとして前記情報処理装置に通知する手段と、
として機能させるプログラム。 A server that holds data to be transmitted, waits for a predetermined timing after holding the data, and is connected to an information processing apparatus that transmits the held data when the timing arrives Equipment
Notification receiving means for receiving notification from the information processing apparatus that there is data to be transmitted;
An estimation means for estimating a timing at which data reception processing should be performed;
Means for notifying the information processing apparatus of the estimated timing as a timing to transmit data;
Program to function as.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011265303A JP5859833B2 (en) | 2011-12-02 | 2011-12-02 | Information processing apparatus, information processing system, server apparatus, and program |
PCT/JP2012/081200 WO2013081149A1 (en) | 2011-12-02 | 2012-11-30 | Information processing device, information processing system, and server device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011265303A JP5859833B2 (en) | 2011-12-02 | 2011-12-02 | Information processing apparatus, information processing system, server apparatus, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013117883A true JP2013117883A (en) | 2013-06-13 |
JP5859833B2 JP5859833B2 (en) | 2016-02-16 |
Family
ID=48535596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011265303A Expired - Fee Related JP5859833B2 (en) | 2011-12-02 | 2011-12-02 | Information processing apparatus, information processing system, server apparatus, and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5859833B2 (en) |
WO (1) | WO2013081149A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019128847A (en) * | 2018-01-25 | 2019-08-01 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Communication device, communication system, and communication method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002196969A (en) * | 2000-12-27 | 2002-07-12 | Victor Co Of Japan Ltd | Cache server |
JP2006127003A (en) * | 2004-10-27 | 2006-05-18 | Casio Comput Co Ltd | Image processor, backup server device, and program |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004078352A (en) * | 2002-08-12 | 2004-03-11 | Fujitsu Ltd | Web page display screen sharing system, proxy web server for the same and proxy web server program for the same |
US7165015B2 (en) * | 2005-03-29 | 2007-01-16 | Cryovac, Inc. | Handheld device for retrieving and analyzing data from an electronic monitoring device |
-
2011
- 2011-12-02 JP JP2011265303A patent/JP5859833B2/en not_active Expired - Fee Related
-
2012
- 2012-11-30 WO PCT/JP2012/081200 patent/WO2013081149A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002196969A (en) * | 2000-12-27 | 2002-07-12 | Victor Co Of Japan Ltd | Cache server |
JP2006127003A (en) * | 2004-10-27 | 2006-05-18 | Casio Comput Co Ltd | Image processor, backup server device, and program |
Non-Patent Citations (1)
Title |
---|
JPN6015016464; 佐野香: 'Starting&Closing Standby Pages方式によるオンライン定期試験' 情報処理学会研究報告 第2003巻,第103号, 20031017, p.43-49, 社団法人情報処理学会 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019128847A (en) * | 2018-01-25 | 2019-08-01 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Communication device, communication system, and communication method |
JP7084149B2 (en) | 2018-01-25 | 2022-06-14 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Communication equipment, communication system and communication method |
Also Published As
Publication number | Publication date |
---|---|
WO2013081149A1 (en) | 2013-06-06 |
JP5859833B2 (en) | 2016-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6508591B2 (en) | Method and apparatus for reestablishing a tunnel direct link setup (TDLS) session between devices in a wireless network | |
US10027781B2 (en) | TCP link configuration method, apparatus, and device | |
KR101723453B1 (en) | Apparatus and method for providing universal plug and play based on wi-fi direct connection in portable terminal | |
EP2738995A1 (en) | Method and multi-homed equipment for establishing a multipath connection | |
US20130254264A1 (en) | Tethering method, computing devices, system and software | |
US20130198266A1 (en) | Facilitating communication between web-enabled devices | |
KR101722628B1 (en) | Method and device for router-based networking control,router,program and recording medium | |
JP2016517647A (en) | Virtual channel bonding | |
JP5923376B2 (en) | TCP relay device | |
JP2016170630A5 (en) | ||
JP7135206B2 (en) | access authentication | |
EP3665921B1 (en) | Virtual profile for bluetooth | |
KR101692654B1 (en) | Content delivery method | |
Moon et al. | Practicalizing delay-tolerant mobile apps with cedos | |
US8504655B1 (en) | Proxy delegation for content delivery | |
JP5859833B2 (en) | Information processing apparatus, information processing system, server apparatus, and program | |
CN102571963A (en) | Content delivery method, device and access network equipment | |
WO2015042859A1 (en) | Method and device for asynchronous communication | |
WO2022014561A1 (en) | Device, method and program for data processing | |
CN114846774B (en) | Communication method and device | |
JP6976199B2 (en) | Information processing server and information processing method | |
Mondal et al. | A reliable, multi-path, connection oriented and independent transport protocol for iot networks | |
JP6595962B2 (en) | Edge server, session sharing system, method and program | |
JP2011250241A (en) | Communication device and operation method thereof | |
JPWO2015145953A1 (en) | Communication terminal, communication method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150428 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150625 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20151201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5859833 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |