JP5859833B2 - Information processing apparatus, information processing system, server apparatus, and program - Google Patents

Information processing apparatus, information processing system, server apparatus, and program Download PDF

Info

Publication number
JP5859833B2
JP5859833B2 JP2011265303A JP2011265303A JP5859833B2 JP 5859833 B2 JP5859833 B2 JP 5859833B2 JP 2011265303 A JP2011265303 A JP 2011265303A JP 2011265303 A JP2011265303 A JP 2011265303A JP 5859833 B2 JP5859833 B2 JP 5859833B2
Authority
JP
Japan
Prior art keywords
data
information processing
server
processing apparatus
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.)
Active
Application number
JP2011265303A
Other languages
Japanese (ja)
Other versions
JP2013117883A (en
Inventor
彰宏 中尾
彰宏 中尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Tokyo NUC
Original Assignee
University of Tokyo NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Tokyo NUC filed Critical University of Tokyo NUC
Priority to JP2011265303A priority Critical patent/JP5859833B2/en
Priority to PCT/JP2012/081200 priority patent/WO2013081149A1/en
Publication of JP2013117883A publication Critical patent/JP2013117883A/en
Application granted granted Critical
Publication of JP5859833B2 publication Critical patent/JP5859833B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network 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)

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. Patent Document 1 discloses a technique for transmitting to a server serving as a transmission destination.

特開2005−056096号公報JP 2005-056096 A

一方、公衆無線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.

本発明の実施の形態に係る情報処理システムの構成例を表すブロック図である。It is a block diagram showing the example of a structure of the information processing system which concerns on embodiment of this invention. 本発明の実施の形態に係る情報処理装置の動作例を表すフローチャート図である。It is a flowchart figure showing the operation example of the information processing apparatus which concerns on embodiment of this invention. 本発明の実施の形態に係る情報処理装置が保持するタイミング情報の例を表す説明図である。It is explanatory drawing showing the example of the timing information which the information processing apparatus which concerns on embodiment of this invention hold | maintains. 本発明の実施の形態に係る情報処理装置及びサーバ装置の動作例を表す流れ図である。It is a flowchart showing the operation example of the information processing apparatus and server apparatus which concern on embodiment of this invention. 本発明の実施の形態に係る情報処理装置のもう一つの動作例を表すフローチャート図である。It is a flowchart figure showing another example of operation | movement of the information processing apparatus which concerns on embodiment of this invention. 本発明の実施の形態に係る情報処理装置の例を表す機能ブロック図である。It is a functional block diagram showing the example of the information processing apparatus which concerns on embodiment of this invention. 本発明の実施の形態に係る情報処理システムによる情報送信の実験例を表す説明図である。It is explanatory drawing showing the experiment example of the information transmission by the information processing system which concerns on embodiment of this invention.

本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る情報処理システムは、図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 information processing device 1, a terminal 2, and a server device 3. In this information processing system, at least one information processing apparatus 1 is included. In FIG. 1, only one server device 3 is illustrated, but a plurality of server devices 3 may be provided.

情報処理装置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 information processing apparatus 1 is an apparatus that operates as a wireless LAN access point, for example, and includes a control unit 11, a storage unit 12, a wireless communication unit 13, and a wired communication unit 14. The server device 3 includes a control unit 31, a storage unit 32, and a wired communication unit 34. The control unit 11 of the information processing apparatus 1 is a program control device such as a CPU, and operates according to a program stored in the storage unit 12. The control unit 11 according to the present embodiment receives data to be transmitted from the terminal 2 to any one of the server devices 3 via the wireless communication unit 13. Then, the control unit 11 holds the received data in the cache area secured in the storage unit 12. The control unit 11 holds the data and waits until a predetermined timing. When the timing arrives, the control unit 11 transmits the held data to the server device 3 designated as the destination by wired communication. Control to transmit via the unit 14. That is, the control unit 11 of the present embodiment functions as a reception unit and a transmission control unit. Specific operations of these information processing apparatuses 1 will be described later.

記憶部12は、メモリデバイスやディスクデバイスを含む。この記憶部12は、制御部11によって実行されるプログラムを格納している。このプログラムは、DVD−ROM(Digital Versatile Disc Read Only Memory)等のコンピュータ可読な記録媒体に格納されて提供され、この記憶部12に複写されたものであってよい。また本実施の形態では、この記憶部12が、送信の対象となるデータを保持する保持手段として機能する。さらに記憶部12は、制御部11のワークメモリとしても動作する。   The storage unit 12 includes a memory device and a disk device. The storage unit 12 stores a program executed by the control unit 11. This program may be provided by being stored in a computer-readable recording medium such as a DVD-ROM (Digital Versatile Disc Read Only Memory) and copied to the storage unit 12. In the present embodiment, the storage unit 12 functions as a holding unit that holds data to be transmitted. Furthermore, the storage unit 12 also operates as a work memory for the control unit 11.

無線通信部13は、無線LANインタフェースであり、802.11nなどの予め定めたプロトコルにて、端末2との間で種々のデータを授受する。この無線通信部13は、制御部11から入力される指示に従って、端末2に対して制御部11が指示するデータを送信する。また、この無線通信部13は、端末2を介して受信したデータを制御部11に対して出力する。有線通信部14は、有線LANインタフェースであり、インターネット等の情報通信回線を介してサーバ装置3と通信可能に接続されている。この有線通信部14は、制御部11から入力される指示に従って、宛先となったインターネット上の送信先に対して制御部11が指示するデータを送信する。また、この有線通信部14は、インターネットを介して受信したデータを制御部11に対して出力する。   The wireless communication unit 13 is a wireless LAN interface, and exchanges various data with the terminal 2 using a predetermined protocol such as 802.11n. The wireless communication unit 13 transmits data instructed by the control unit 11 to the terminal 2 in accordance with an instruction input from the control unit 11. The wireless communication unit 13 outputs data received via the terminal 2 to the control unit 11. The wired communication unit 14 is a wired LAN interface, and is communicably connected to the server device 3 via an information communication line such as the Internet. In accordance with an instruction input from the control unit 11, the wired communication unit 14 transmits data instructed by the control unit 11 to a destination on the Internet that is a destination. Further, the wired communication unit 14 outputs data received via the Internet to the control unit 11.

端末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 information processing apparatus 1 wirelessly. In the present embodiment, data is exchanged via the wireless LAN interface included in the information processing apparatus 1. However, the present embodiment is not limited to this, and for example, information processing that operates as a base station of a mobile phone communication network. Data may be transmitted to the device 1 using a mobile communication protocol such as IMT2000. Alternatively, data may be exchanged via a wireless WAN.

サーバ装置3の制御部31は、CPU等のプログラム制御デバイスであり、記憶部32に格納されたプログラムに従って動作する。この制御部31は、情報処理装置1から有線通信部34を介してデータを受信し、記憶部32に格納する。また、有線通信部34を介して、記憶部32に格納されているデータの提供要求を受信する。制御部31は、当該提供要求に応答して、要求されたデータを記憶部32から読み出し、当該読出したデータを要求元宛に送出する。さらにこの制御部31は、有線通信部31から受信する指示に従い、記憶部32に格納したデータを検索し、検索の結果を指示元へ送信する処理を行ってもよい。   The control unit 31 of the server device 3 is a program control device such as a CPU, and operates according to a program stored in the storage unit 32. The control unit 31 receives data from the information processing apparatus 1 via the wired communication unit 34 and stores the data in the storage unit 32. In addition, a provision request for data stored in the storage unit 32 is received via the wired communication unit 34. In response to the provision request, the control unit 31 reads the requested data from the storage unit 32 and sends the read data to the request source. Further, the control unit 31 may search for data stored in the storage unit 32 in accordance with an instruction received from the wired communication unit 31 and transmit the search result to the instruction source.

記憶部32は、メモリデバイスやディスクデバイス等を含み、制御部31によって実行されるプログラムを保持している。このプログラムも、DVD−ROM等のコンピュータ可読な記録媒体に格納されて提供され、この記憶部32に複写されたものであってよい。   The storage unit 32 includes a memory device, a disk device, and the like, and holds a program executed by the control unit 31. This program may also be provided by being stored in a computer-readable recording medium such as a DVD-ROM and copied to the storage unit 32.

有線通信部34は、有線LANインタフェースであり、インターネット等の情報通信回線を介して情報処理装置1と通信可能に接続されている。この有線通信部34は、制御部31から入力される指示に従って、宛先となったインターネット上の送信先に対して制御部31が指示するデータを送信する。また、この有線通信部34は、インターネットを介して受信したデータを制御部31に対して出力する。   The wired communication unit 34 is a wired LAN interface, and is communicably connected to the information processing apparatus 1 via an information communication line such as the Internet. In accordance with an instruction input from the control unit 31, the wired communication unit 34 transmits data instructed by the control unit 31 to a destination on the Internet that is a destination. The wired communication unit 34 outputs data received via the Internet to the control unit 31.

ここで本実施の形態の制御部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 control unit 11 of the present embodiment will be described. The control unit 11 according to the present embodiment operates a multitask operating system (OS) such as Linux (registered trademark). Then, under the management of the OS, the following processes are executed. That is, the control unit 11 receives data addressed to the server device 3 from the terminal 2. Here, the data from the terminal 2 is transmitted by TCP / IP (Transmission Control Protocol / Internet Protocol) communication, and is divided into packets and received. In addition, for example, if it is moving image data, the control unit 11 of the present embodiment receives the entire moving image data (an integral data unit to be held by the server device 3) from the terminal 2.

つまり、端末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 information processing apparatus 1, and the information processing apparatus 1 responds with an ACK (acknowledgement). Then, the terminal 2 uploads data to the information processing apparatus 1 side using, for example, an HTTP POST method. When the entire data is uploaded and the information processing apparatus 1 has received the information normally (such as HTTP 200 (OK)) to the terminal 2 side, the terminal 2 transmits a TCP-FIN (communication end) signal, and the information The processing device 1 also returns a TCP-FIN (communication end) signal. Up to this point, the information processing apparatus 1 does not start communication with the server apparatus 3.

ここで端末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 information processing apparatus 1 as data addressed to the URL (Uniform Resource Locator) of the server apparatus 3. The control unit 11 of the information processing apparatus 1 performs processing for storing the received data in the storage unit 12 in association with information (which may be the URL of the server apparatus 3) that identifies the server apparatus 3 that is the destination. doing. In parallel with this, the control unit 11 executes the processing illustrated in FIG. In the process illustrated in FIG. 2, it is first checked whether or not a predetermined timing has arrived (S1).

ここでタイミングは、例えば時間帯を定めたものであってもよい。一例として地方時で深夜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 control unit 11 refers to information on the time (referred to as the current time) that is timed by a calendar IC (not shown) or the like, and determines whether or not it is the time zone, thereby determining a predetermined timing. It will be checked whether or not.

そして処理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 control unit 11 reads the data held in the storage unit 12 (S2) and reads it via the wired communication unit 34. The data is transmitted to the server device 3 specified by the information recorded in association with the data (S3). In this transmission process, data held in the storage unit 12 is gradually transmitted, for example, in units of packets according to the throughput of the network. Specifically, as shown by a loop in FIG. Is repeated until there is no more data to be transmitted.

ここでも情報処理装置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 information processing apparatus 1 and the server apparatus 3. That is, the information processing apparatus 1 sends a TCP-SYN (communication start) signal to the server apparatus 3 when the above timing arrives. When the server apparatus 3 responds with an ACK (acknowledgement), the information processing apparatus 1 uploads data to the server apparatus 3 side using, for example, an HTTP POST method. When the entire data is uploaded and the server apparatus 3 notifies the information processing apparatus 1 that it has been normally received (such as HTTP 200 (OK)), the information processing apparatus 1 transmits a TCP-FIN (communication end) signal. The server device 3 also returns a TCP-FIN (communication end) signal. Thereby, the upload to the server device 3 is completed.

なお、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 information processing apparatus 1 may start a session with the server apparatus 3 in advance when data upload from the terminal 2 is accepted. In this case, the information processing apparatus 1 sends TCP-SYN to the server apparatus 3, and when an ACK is returned from the server apparatus 3, an arbitrary information (upload target) is performed by the POST method of HTTP. Data shorter than the data) is transmitted to the server apparatus 3. Accordingly, the server device 3 returns, for example, data of HTTP 202 (ACCEPTED). At this time, the returned data includes session identification information (session ID). The information processing apparatus 1 stores this session identification information, and once transmits TCP-FIN to the server apparatus 3 to end communication. Thereafter, when uploading data to be transmitted, a request including the session ID may be transmitted when an HTTP POST method is transmitted.

具体的にタイミングを時間帯で定める場合、制御部11が、現在時刻が当該予め定められた時間帯に含まれると判断すると、端末2から受信して保持していたデータの送信を開始することとなる。また処理S1において、予め定められたタイミングが到来していないと判断すると(Noであると)、制御部11は処理S1を繰返し実行する。   Specifically, when the timing is determined in the time zone, when the control unit 11 determines that the current time is included in the predetermined time zone, the transmission of the data received and held from the terminal 2 is started. It becomes. If it is determined in the process S1 that the predetermined timing has not arrived (No), the control unit 11 repeatedly executes the process S1.

なお、ここではタイミングが単に時間帯によって定められる例について述べたが、本実施の形態はこれに限られない。例えば、このタイミングは、図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 storage unit 12 as setting table data. Also, it may be determined not by time but by the actual throughput of the network.

サーバ装置3ごとに個別に時間帯が定められる場合は、制御部11は、現在時刻の属する時間帯が設定テーブルデータに記録されているか否かを調べることになる。そして、現在時刻の属する時間帯が設定テーブルデータに記録されていれば、制御部11は、当該時間帯の情報に関連付けられた情報で特定されるサーバ装置3宛のデータを選択的に記憶部12から読み出して、当該読出したデータを、宛先となったサーバ装置3に対して送信する。なお、このサーバ装置3ごとの時間帯の情報は、サーバ装置3が送信し、制御部11がサーバ装置3から受信して記憶部12の設定テーブルデータに記録したものであってもよい。   When the time zone is individually determined for each server device 3, the control unit 11 checks whether or not the time zone to which the current time belongs is recorded in the setting table data. If the time zone to which the current time belongs is recorded in the setting table data, the control unit 11 selectively stores the data addressed to the server device 3 specified by the information associated with the information of the time zone. 12 and the read data is transmitted to the destination server apparatus 3. The time zone information for each server device 3 may be information transmitted from the server device 3, received from the server device 3 by the control unit 11, and recorded in the setting table data in the storage unit 12.

またスループットによって定められる場合、制御部11は、記憶部12に保持した各データのそれぞれの宛先となっているサーバ装置3に対して、例えばpingパケットなどを送出し、その結果として得られるラウンドトリップタイム(RTT)の情報等を参照し、RTTが予め定めた値を下回る場合に、当該pingパケットの送出先となったサーバ装置3に対してのデータの送信のタイミングが到来したと判断し、当該サーバ装置3宛のデータを選択的に記憶部12から読み出して、当該読出したデータを、宛先となったサーバ装置3に対して送信するようにしてもよい。   In addition, when determined by the throughput, the control unit 11 sends, for example, a ping packet to the server device 3 that is the destination of each data held in the storage unit 12, and the round trip obtained as a result With reference to time (RTT) information and the like, if the RTT falls below a predetermined value, it is determined that the timing of data transmission to the server device 3 that is the destination of the ping packet has arrived, The data addressed to the server device 3 may be selectively read from the storage unit 12 and the read data may be transmitted to the server device 3 that is the destination.

さらに別のタイミングの例については後述するが、本実施の形態の一例に係る情報処理システムは、このような構成を備えてなり、次のように動作する。   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 information processing device 1 wirelessly. The network depends on the setting, but generally unequal cost load distribution is performed. In unequal cost load distribution, the communication bandwidth is determined in inverse proportion to the distance (cost) of the route on the network. That is, as the distance increases, the bandwidth decreases and the communication speed decreases.

ここで端末2と情報処理装置1とは無線LAN通信回線を介して直接的に通信を行っているので、経路のコストは小さく、サーバ装置3への通信よりも比較的高速な通信を行うことが可能となっている。つまり、端末2はサーバ装置3宛に直接データを送信するよりも短時間で、情報処理装置1へのデータ送信を完了できる。   Here, since the terminal 2 and the information processing apparatus 1 communicate directly via the wireless LAN communication line, the cost of the route is small and the communication is relatively faster than the communication to the server apparatus 3. Is possible. That is, the terminal 2 can complete data transmission to the information processing apparatus 1 in a shorter time than transmitting data directly to the server apparatus 3.

情報処理装置1は、端末2から受信したデータを、その宛先であるサーバ装置3を特定する情報に関連付けて保持する。例えば受信したデータが動画データであれば、情報処理装置1は、当該動画データの全体を受信する。そして予め定めたタイミングが到来したか否かを調べる。ここでは上述のように、タイミングが時間帯によって定められているものとすると、情報処理装置1は、現在時刻(図示しないカレンダーIC(内蔵)によって計時しているものとする)が、当該定められた時間帯に含まれるか否かを判断する。そして、現在時刻が定められた時間帯に含まれない場合は、データの送信を行わないよう制御する。   The information processing apparatus 1 holds the data received from the terminal 2 in association with information specifying the server apparatus 3 that is the destination. For example, if the received data is moving image data, the information processing apparatus 1 receives the entire moving image data. Then, it is checked whether or not a predetermined timing has come. Here, as described above, assuming that the timing is determined by the time zone, the information processing apparatus 1 determines the current time (assuming that the time is measured by a calendar IC (built-in) not shown). It is determined whether it is included in the time zone. When the current time is not included in the determined time zone, control is performed so that data transmission is not performed.

なお、このようにデータがサーバ装置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 information processing device 1 stores the requested data. It is good also as reading from the part 12 and transmitting to the terminal 2 of a request origin.

やがて、現在時刻が定められた時間帯に含まれることとなると、端末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 information processing device 1 because the transmission is performed via a route having a higher cost than that between the terminal 2 and the information processing device 1. .

サーバ装置3は、情報処理装置1からデータを受信して、当該データを蓄積して保持する。以後、ネットワークを介して、当該蓄積して保持したデータの提供要求を受けたサーバ装置3は、当該要求されたデータを要求元へ送信することとなる。   The server device 3 receives data from the information processing device 1 and accumulates and holds the data. Thereafter, the server device 3 that has received a request to provide the stored and stored data via the network transmits the requested data to the request source.

ここで、送信のタイミングの別の例について説明する。この例では、情報処理装置1の制御部11は、端末2から受信したデータを、宛先となるサーバ装置3を特定する情報に関連付けて保持させた後、当該データの宛先となるサーバ装置3に対し、送信対象となるデータがある旨を表す通知を送信する。制御部11はまた、当該サーバ装置3からデータを送信するべきタイミングの指示を受け入れる。この指示は、例えば「X秒後」、「X時以降」等といった相対的な情報(現在時刻からの差の情報)ないし絶対的な情報(時刻を特定する情報)によって行われる。   Here, another example of transmission timing will be described. In this example, the control unit 11 of the information processing apparatus 1 stores the data received from the terminal 2 in association with the information specifying the server apparatus 3 that is the destination, and then stores the data in the server apparatus 3 that is the destination of the data. On the other hand, a notification indicating that there is data to be transmitted is transmitted. The control unit 11 also accepts an instruction of timing for transmitting data from the server device 3. This instruction is given by relative information (information on the difference from the current time) or absolute information (information specifying time) such as “after X seconds”, “after X hour”, and the like.

制御部11は、この指示されたタイミングが到来するまで待機し、当該タイミングが到来すると、記憶部12に保持しているデータを、サーバ装置3へ送信するよう制御する。   The control unit 11 waits until the instructed timing arrives, and controls the data stored in the storage unit 12 to be transmitted to the server device 3 when the instructed timing arrives.

この例では、サーバ装置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 control unit 31 of the server device 3 functions as a notification receiving unit that receives a notification from the information processing device 1 that there is data to be transmitted. Further, when the control unit 31 accepts the notification, the control unit 31 estimates the timing for performing the data reception process, and notifies the information processing apparatus 1 of the estimated timing as the timing for transmitting the data. Also works.

次にこの例による情報処理システムの動作について説明する。この例では図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 information processing apparatus 1 receives data addressed to the server apparatus 3 from the terminal 2 in units of the data (that is, the entire data) (S11), the information processing apparatus 1 The stored data is stored in the storage unit 12 in association with information (which may be the URL of the server device 3) that identifies the server device 3 that is the destination (S12).

情報処理装置1は、当該データの宛先となるサーバ装置3に対し、送信対象となるデータがある旨を表す通知を送信する(S13)。サーバ装置3は、この通知を受け入れると、データの受け入れ処理を行うべきタイミングを推定する(S14)。   The information processing apparatus 1 transmits a notification indicating that there is data to be transmitted to the server apparatus 3 that is the destination of the data (S13). When the server device 3 accepts this notification, the server device 3 estimates the timing at which data acceptance processing should be performed (S14).

この推定は、例えば次のようにして行う。具体的な例としてサーバ装置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 information processing apparatus 1 calculates the timing information to be transmitted by adding the current time (measured by a calendar IC (not shown)) to the received timing information (information “after X seconds”). Get. Then, the information processing apparatus 1 records the calculated timing information in association with the data held in the process S12 (S16).

また、情報処理装置1は、この処理と並行して、次の図5に例示する処理を実行している。すなわち情報処理装置1は、記憶部12に保持されている、各データに関連付けられているタイミングの情報のうち、到来しているタイミングがあるか否かを調べる(S21)。   Further, the information processing apparatus 1 executes the process illustrated in FIG. 5 in parallel with this process. That is, the information processing apparatus 1 checks whether there is an incoming timing among timing information associated with each data held in the storage unit 12 (S21).

ここでのタイミングは、既に述べたように時刻を表す情報となっているので、情報処理装置1は、現在時刻より前となっている時刻の情報に関連付けられたデータを記憶部12に保持したデータのうちから検索することになる。   Since the timing here is information representing the time as described above, the information processing apparatus 1 holds the data associated with the information on the time before the current time in the storage unit 12. Search from the data.

そして情報処理装置1は、処理S21において、送信するべきタイミングが到来しているデータがあると判断すると(Yesであると)、記憶部12に保持している当該データを読み出して(S22)、有線通信部34を介して、読出したデータに関連付けて記録されている情報で特定される、サーバ装置3宛に送信する(S23)。この送信処理は、記憶部12に保持されているデータを、例えばパケット単位で、ネットワークのスループットにより徐々に送信するものである。つまり、図5にてループで示す通り、処理S22とS23とを繰返し、送信するべきデータがなくなるまで実行することによって行われる。また処理S21において、送信するべきタイミングが到来しているデータがないと(Noであると)、情報処理装置1は、処理S21を繰返し実行する。   When the information processing apparatus 1 determines in step S21 that there is data that has arrived at the timing to be transmitted (Yes), the information processing apparatus 1 reads the data held in the storage unit 12 (S22). The data is transmitted to the server device 3 specified by the information recorded in association with the read data via the wired communication unit 34 (S23). In this transmission process, data held in the storage unit 12 is gradually transmitted according to the throughput of the network, for example, in units of packets. That is, as shown by a loop in FIG. 5, the processes S22 and S23 are repeated until there is no more data to be transmitted. Further, in the process S21, if there is no data that has arrived at the timing to be transmitted (No), the information processing apparatus 1 repeatedly executes the process S21.

この例によると、データの送信元が予め定めた数より少ない場合は、サーバ装置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 information processing apparatus 1. When the number of data transmission sources is larger than a predetermined number, the server device 3 estimates a time point at which transmission from one of the transmission sources ends, and requests the information processing device 1 to start transmission after that time point. It will be.

さらにここまでの例に限らず、本実施の形態の情報処理装置1は、端末2の利用者によって、または送信の対象となるデータによって、あるいはこれらの組み合せによって、上述の処理を行うか否かを異ならせてもよい。例えば情報処理装置1は、無線通信部13を介して通信可能に接続されている各端末2の利用者を認証する。この認証は予め設定された利用者名とパスワードとの組が入力されたか否かによって行うなど、広く知られた方法を利用できる。   Further, not limited to the above examples, the information processing apparatus 1 according to the present embodiment performs the above-described processing by the user of the terminal 2, the data to be transmitted, or a combination thereof. May be different. For example, the information processing apparatus 1 authenticates the user of each terminal 2 that is communicably connected via the wireless communication unit 13. This authentication can be performed by using a widely known method, such as performing authentication based on whether or not a set of a preset user name and password has been input.

そして情報処理装置1の制御部11は、認証に成功した利用者の端末2からサーバ装置3宛のデータ(データ全体)が受信されると、ここまでに説明した処理を実行し、受信したデータを記憶部12に保持して、定められたタイミングが到来するまで待機し、定められたタイミングが到来すると、当該保持したデータを宛先となるサーバ装置3へ送信する。また、認証を経ていない、または認証に失敗した利用者の端末2からサーバ装置3宛のデータが受信されると、制御部11は、当該端末2からデータを例えばパケットごとに受信し、当該受信したデータをそのまま有線通信部14を介してサーバ装置3へ送信する。サーバ装置3では、情報処理装置1から受信されるデータを受け入れて、蓄積して保持する。   When the control unit 11 of the information processing device 1 receives the data (the entire data) addressed to the server device 3 from the terminal 2 of the user who has been successfully authenticated, the control unit 11 executes the processing described so far, and receives the received data. Is stored in the storage unit 12 and waits until a predetermined timing arrives. When the predetermined timing arrives, the stored data is transmitted to the server device 3 that is the destination. When data addressed to the server device 3 is received from the terminal 2 of the user who has not been authenticated or failed in authentication, the control unit 11 receives the data from the terminal 2 for each packet, for example, The transmitted data is transmitted as it is to the server device 3 via the wired communication unit 14. The server device 3 accepts data received from the information processing device 1, accumulates and holds it.

この例によると、認証された利用者は、その端末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 information processing device 1 once holds the entire data in units of data and later transmits it to the server device 3. Therefore, as described above, the communication of the terminal 2 is completed in a relatively short time. On the other hand, for an unauthenticated user, the information processing apparatus 1 functions only as a device that relays (bridges) to the server device 3. For this reason, data is transmitted to the server device 3 in packet units, and is affected by the communication speed (relatively low speed) between the information processing device 1 and the server device 3, and the communication of the terminal 2 is completed. It will take a relatively long time.

また本実施の形態の別の例では、利用者ではなく、例えばデータの種類に応じて処理を異ならせてもよい。一例として情報処理装置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 information processing apparatus 1 may change processing depending on the size of data to be transmitted. For example, when the size of the data received from the terminal 2 exceeds a predetermined data size threshold, the control unit 11 of the information processing device 1 holds the data (the entire data) received from the terminal 2 in the storage unit 12. Then, the process waits until a predetermined timing arrives, and when the predetermined timing arrives, a process (referred to as timely upload process) for transmitting the stored data to the server device 3 as a destination is executed. On the other hand, when the size of the data received from the terminal 2 does not exceed the predetermined data size threshold, the control unit 11 receives the data from the terminal 2 for each packet, for example, and wire the received data as it is. The data is transmitted to the server device 3 via the communication unit 14.

この例によると、例えば次のような動作が行われることとなる。すなわち、ユーチューブ等に対するデータのアップロードは、一般に次のような手順で行われる。
(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 information processing apparatus 1 changes processing depending on the size of data to be transmitted, when the information processing apparatus 1 receives an upload request from the terminal 2, the request is received as is ( Without waiting for a predetermined timing). Then, the information processing apparatus 1 receives HTML data or the like describing an interface screen as a response to the request from the server apparatus 3, and transmits this data to the terminal 2.

端末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 information processing apparatus 1. Since this data is also relatively small in size, the information processing apparatus 1 assumes that the data is below the data size threshold and transmits the data to the server apparatus 3 as it is (without waiting for a predetermined timing).

サーバ装置3では、書誌的事項のデータを受け入れてこれを記憶し、動画像データのアップロードを求める。情報処理装置1は、当該動画像データ等、主たるデータのアップロードの求めを端末2へ送信する。そして端末2がこの求めに応じて、動画像データ等主たるデータのアップロードを開始する。   The server device 3 accepts bibliographic data and stores it, and requests uploading of moving image data. The information processing apparatus 1 transmits a request for uploading main data such as the moving image data to the terminal 2. In response to this request, the terminal 2 starts uploading main data such as moving image data.

この主たるデータがデータサイズしきい値を超えると、情報処理装置1は、主たるデータの全体を端末2から受信し、記憶部12に保持する。そして情報処理装置1は、定められたタイミングが到来するまで待機し、定められたタイミングが到来すると、サーバ装置3に対して、当該保持している主たるデータを送信する。   When the main data exceeds the data size threshold, the information processing apparatus 1 receives the entire main data from the terminal 2 and stores it in the storage unit 12. The information processing apparatus 1 waits until a predetermined timing arrives. When the predetermined timing arrives, the information processing apparatus 1 transmits the held main data to the server apparatus 3.

なお、この主たるデータの送信では情報処理装置1とサーバ装置3は次のように動作してもよい。すなわち情報処理装置1は、主たるデータの全体を端末2から受信して、記憶部12に保持すると、当該データの宛先となるサーバ装置3に対し、送信対象となるデータがある旨を表す通知を送信する。   In the main data transmission, the information processing apparatus 1 and the server apparatus 3 may operate as follows. That is, when the information processing apparatus 1 receives the entire main data from the terminal 2 and stores it in the storage unit 12, the information processing apparatus 1 notifies the server apparatus 3 that is the destination of the data that there is data to be transmitted. Send.

サーバ装置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 information processing device 1, and when the upload is completed, the main data Is generated and transmitted to the information processing apparatus 1. Specifically, in the case of YouTube, this URL information corresponds to the URL of the stored moving image data browsing screen.

情報処理装置1では、受信したタイミングの情報と、URLの情報とを受け入れる。そして情報処理装置1は、受信したタイミングの情報に現在時刻(図示しないカレンダーIC等で計時しておく)を加算して、送信するべきタイミングの情報を算出して得る。情報処理装置1は、この算出したタイミングの情報と、受信したURLの情報とを、保持させたデータに関連付けて記録する。   The information processing apparatus 1 accepts the received timing information and URL information. The information processing apparatus 1 adds the current time (measured with a calendar IC (not shown) or the like) to the received timing information and calculates the timing information to be transmitted. The information processing apparatus 1 records the calculated timing information and the received URL information in association with the held data.

また情報処理装置1は、この処理と並行して、図5に例示する処理を実行する。さらに情報処理装置1は、端末2からURLを指定したデータのアクセス要求を受け入れると、指定されたURLが記憶部12に保持されたデータに関連付けて記録されたURLのうちにあるかを検索する。ここで情報処理装置1は、記憶部12に保持されたデータに関連付けて記録されたURLのうちに、指定されたURLがあることを見出すと、当該記録されたURLに関連付けられたデータを端末2へ送信する。また、情報処理装置1は、記憶部12に保持されたデータに関連付けて記録されたURLのうちに、指定されたURLがなければ、当該URLへのアクセス要求を、有線通信部14を介して、インターネット側へ送出する。   In addition, the information processing apparatus 1 executes the process illustrated in FIG. 5 in parallel with this process. Furthermore, when the information processing apparatus 1 accepts an access request for data specifying a URL from the terminal 2, the information processing apparatus 1 searches whether the specified URL is among the URLs recorded in association with the data held in the storage unit 12. . When the information processing apparatus 1 finds that there is a designated URL among the URLs recorded in association with the data held in the storage unit 12, the information processing apparatus 1 transmits the data associated with the recorded URL to the terminal. 2 to send. Further, if there is no designated URL among the URLs recorded in association with the data held in the storage unit 12, the information processing apparatus 1 sends an access request to the URL via the wired communication unit 14. , Send to the Internet side.

この例によると、例えばエバーノート(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 information processing apparatus 1 in a relatively short time, and can be transmitted later from the information processing apparatus 1 to the server apparatus 3 at an appropriate timing. In addition, the transmitted data can be received from the information processing apparatus 1 even when it is not transmitted to the server apparatus 3 within a range where communication with the information processing apparatus 1 is possible. When the data transmission is completed, the data transmitted from the server device 3 can be received.

また認証した利用者であって、かつ、予め定めたデータサイズしきい値を超えるデータについて、情報処理装置1が、上記の適時アップロード処理を行うこととしてもよい。さらに、適時アップロード処理を行うか否かを利用者が端末2からの指示により設定できるようにしてもよい。例えば利用者による適時アップロード処理を行うべき旨の設定がされた場合にはデータのヘッダにその旨の情報を含め、情報処理装置1が、データのヘッダに適時アップロード処理を行うべき旨の設定がされた旨の情報があるときに限り、適時アップロード処理を行うこととしてもよい。   The information processing apparatus 1 may perform the timely upload process for data that is an authenticated user and exceeds a predetermined data size threshold. Furthermore, the user may be able to set whether or not to perform timely upload processing by an instruction from the terminal 2. For example, when the user has set to perform timely upload processing, information indicating that is included in the data header, and the information processing apparatus 1 has the setting to perform timely upload processing in the data header. The upload process may be performed in a timely manner only when there is information to the effect.

また別の例では情報処理装置1が、データごとに、その宛先となるサーバ装置3によって、適時アップロード処理を行うか否かを決定してもよい。例えば適時アップロード処理を行うサーバ装置3のリストを記憶部12に保持しておき、端末2からデータを受信するごとに、情報処理装置1の制御部11が、上記リストを参照して、受信したデータの宛先がリストにある場合に適時アップロード処理を行い、リストにない場合は、従来通り、パケットごとに受信してはサーバ装置3へ送信するといった処理を行うこととしてもよい。   In another example, the information processing apparatus 1 may determine whether or not to perform timely upload processing for each data by the server apparatus 3 that is the destination. For example, a list of server devices 3 that perform timely upload processing is stored in the storage unit 12, and each time data is received from the terminal 2, the control unit 11 of the information processing device 1 receives the data by referring to the list. If the data destination is in the list, the upload process may be performed in a timely manner. If the data destination is not in the list, a process of receiving each packet and transmitting to the server apparatus 3 may be performed as in the past.

さらに本実施の形態の情報処理システムでは、情報処理装置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 information processing apparatuses 1. In this case, the control unit 11 of the information processing device 1 may determine a predetermined timing at which data should be transmitted to the server device 3 as follows. That is, in an example of the present embodiment, order information is set in each information processing apparatus 1 by a predetermined method so that each of the plurality of information processing apparatuses 1 transmits data in a rotation number. Keep it. This order information can be set, for example, by recording in each information processing apparatus 1 information indicating which information processing apparatus 1 should transmit next after completing transmission of data. This setting is set cyclically so that transmission with a ring number is possible. That is, in the last information processing apparatus 1, the first information processing apparatus 1 is set as the information processing apparatus 1 to be transmitted next.

具体的に制御部11は、他の情報処理装置1から順番が到来したことを表す通知を、有線通信部14を介して受けると、予め定められたタイミングが到来したものとして、端末2から受け入れて記憶部12に保持しているデータのそれぞれを、それぞれに関連付けられた情報で特定されるサーバ装置3宛に送信する。そして保持しているデータの送信が完了すると、設定された、次の情報処理装置1を特定する情報(例えば情報処理装置1のネットワークアドレス(IPアドレスなど)でよい)を取り出す。そして当該情報で特定される他の情報処理装置1に対して順番が到来したことを表す通知を有線通信部14を介して送信する。   Specifically, when the control unit 11 receives a notification indicating that the order has arrived from another information processing apparatus 1 via the wired communication unit 14, the control unit 11 accepts from the terminal 2 that a predetermined timing has arrived. Then, each of the data held in the storage unit 12 is transmitted to the server device 3 specified by the information associated with the data. When the transmission of the stored data is completed, the set information for specifying the next information processing device 1 (for example, the network address (IP address or the like of the information processing device 1) may be extracted). Then, a notification indicating that the order has arrived is transmitted to the other information processing apparatus 1 specified by the information via the wired communication unit 14.

さらに情報処理装置1の制御部11における、サーバ装置3に対してデータを送信するべき、タイミングを定める方法は、次のようなものでもよい。本実施の形態のまた別のある例では、複数の情報処理装置1の各々が、あるサーバ装置3を注目サーバとして、この注目サーバに対する送信の対象として、記憶部12に保持しているデータ量の情報を送受し、データ量の大きい順に注目サーバへの送信を行うようにしてもよい。   Furthermore, the method for determining the timing at which the control unit 11 of the information processing apparatus 1 should transmit data to the server apparatus 3 may be as follows. In yet another example of the present embodiment, each of the plurality of information processing devices 1 uses a certain server device 3 as a target server, and the amount of data held in the storage unit 12 as a transmission target for the target server. May be transmitted to the server of interest in descending order of the amount of data.

具体的に制御部11は、あるサーバ装置3(注目サーバとする)への送信を行おうとするにあたり、他の情報処理装置1に対して、注目サーバへデータを送信中であるか否かを問い合せる。各情報処理装置1の制御部11は、注目サーバへデータを送信中であればその旨を返答し、そうでなければ記憶部12に格納されているデータのうち、注目サーバへ送信するべきデータの量を表す情報を生成して返答する。   Specifically, the control unit 11 determines whether or not data is being transmitted to the server of interest to another information processing device 1 when attempting to transmit to a certain server device 3 (assuming the server of interest). Ask. The control unit 11 of each information processing apparatus 1 replies to that effect if data is being transmitted to the server of interest, and data to be transmitted to the server of interest among the data stored in the storage unit 12 otherwise. Generate information that represents the amount of replies.

制御部11は、この返答を受けて、注目サーバへデータを送信中である情報処理装置1の数が予め定めた数を超えない場合には、各情報処理装置1の返答に含まれるデータ量と自己が記憶部12に保持している、注目サーバ宛のデータの量とを比較する。そしてデータ量が最も大きい場合に、制御部11は、注目サーバに対して、当該注目サーバ宛のデータを記憶部12から読み出して送信する。   When the control unit 11 receives this response and the number of information processing devices 1 that are transmitting data to the server of interest does not exceed a predetermined number, the amount of data included in the response of each information processing device 1 And the amount of data addressed to the server of interest held in the storage unit 12. When the amount of data is the largest, the control unit 11 reads out the data addressed to the server of interest from the storage unit 12 and transmits it to the server of interest.

また、制御部11は、注目サーバへデータを送信中である旨の返答を行った情報処理装置1の数が、予め定めた数を超える場合は、記憶部12に格納されたデータに関連付けられた情報で特定される他のサーバ装置3があれば、当該他のサーバ装置3の一つを注目サーバとして選択して、他の情報処理装置1への問い合せの処理から処理を繰返す。   In addition, when the number of information processing apparatuses 1 that have made a response indicating that data is being transmitted to the server of interest exceeds a predetermined number, the control unit 11 is associated with the data stored in the storage unit 12. If there is another server device 3 specified by the information, one of the other server devices 3 is selected as the server of interest, and the processing is repeated from the inquiry processing to the other information processing device 1.

このように、本実施の形態の情報処理装置1は、相互に通信を行って、各サーバ装置3に対して通信する情報処理装置1が、予め定めた台数を超えないように制御することとしてもよい。   As described above, the information processing apparatus 1 according to the present embodiment performs communication so that the information processing apparatuses 1 communicating with each server apparatus 3 do not exceed a predetermined number. Also good.

なお、ここまでの説明において情報処理装置1の制御部11は、記憶部12に保持しているデータのうち、宛先となったサーバ装置3への送信が完了したものについては、記憶部12から削除するようにしてもよい。   In the description so far, the control unit 11 of the information processing device 1 stores data stored in the storage unit 12 from the storage unit 12 that has been transmitted to the destination server device 3. It may be deleted.

また、ここまでの例では、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 information processing apparatus 1 may have the following configuration. That is, in an aspect of the embodiment, the control unit 11 executes processing of a host operating system (host OS) capable of operating a plurality of program execution environments in parallel. Conceptually, the control unit 11 in this example divides and allocates its own CPU resources, storage resources such as buffers, network bandwidth resources, and the like into the plurality of programs. In each program execution environment, an operating system (guest OS) may further operate, and a plurality of tasks may be executed in time division or in parallel on the guest OS.

このような例の一つでは、制御部11は、ホストOS及びゲストOSとしてLinuxを動作させており、ホストOS上で複数の仮想的なプログラム実行環境を形成する方法として、リソースコンテナ(resource containers)の一種である、Linux Containersを用いる。またこの例では無線通信部13は、例えば、一つないし複数の無線LANチップを備えるネットワークカードである。この無線通信部13は、制御部11の制御により、時分割多重により複数の通信チャネルを多重化する。この時分割多重は例えば、multiple SSID機能として広く知られている機能と同じようにして実現可能であるので、ここでの詳しい説明は省略する。   In one such example, the control unit 11 operates Linux as a host OS and a guest OS, and a resource container (resource containers) is used as a method for forming a plurality of virtual program execution environments on the host OS. ) Linux Containers is used. In this example, the wireless communication unit 13 is, for example, a network card including one or more wireless LAN chips. The wireless communication unit 13 multiplexes a plurality of communication channels by time division multiplexing under the control of the control unit 11. This time division multiplexing can be realized, for example, in the same way as a function widely known as a multiple SSID function, and thus detailed description thereof is omitted here.

そしてこの無線通信部13は、802.11nなどの予め定めたプロトコルにて、各通信チャネルを介して、それぞれの通信チャネルで接続された端末2との間で、無線通信を行う。具体的に通信チャネルには互いに異なるssidが設定され、端末2の利用者は、どの通信チャネルで接続するかをssidを選択することで変更できる。   The wireless communication unit 13 performs wireless communication with each terminal 2 connected through each communication channel using a predetermined protocol such as 802.11n. Specifically, different ssids are set for the communication channels, and the user of the terminal 2 can change which communication channel is used for connection by selecting the ssid.

制御部11は、機能的には図6に例示するように、ホストOS40と、各通信チャネルに対応して形成される複数のプログラム実行環境50とを含む。また、ホストOS40には、デバイスドライバ41を含む。プログラム実行環境50の各々の上では、ゲストOS51が実行され、当該ゲストOS51上で動作するユーザプログラムとして、データ処理モジュール55と通信制御モジュール56とが実行される。プログラム実行環境を形成する方法としてLinux Containersを用いる場合、各プログラム実行環境50は、ホストOS40上で、それぞれ独立したLXC(Linux Containers) Guest環境として実現される。   The control unit 11 functionally includes a host OS 40 and a plurality of program execution environments 50 formed corresponding to each communication channel, as illustrated in FIG. The host OS 40 includes a device driver 41. On each of the program execution environments 50, a guest OS 51 is executed, and a data processing module 55 and a communication control module 56 are executed as user programs that operate on the guest OS 51. When using Linux Containers as a method for forming a program execution environment, each program execution environment 50 is realized as an independent LXC (Linux Containers) Guest environment on the host OS 40.

ゲスト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 host OS 40 to open a new communication channel when starting up. When a corresponding communication channel is established, processing for securing a physical communication path and contention control processing in the corresponding communication channel are executed. The guest OS 51 also exchanges data to be transmitted / received with the data processing module 55, which is a user program, via a corresponding communication channel. Furthermore, the guest OS 51 sets communication parameters (described later) in the corresponding communication channel in accordance with an instruction input from the communication control module 56.

一例として、このゲスト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 device driver 41 of the host OS 40 controls the wireless communication unit 13. In response to a communication channel establishment request from the guest OS 51, the device driver 41 forms a buffer 45 corresponding to a newly set communication channel, and causes the wireless communication unit 13 to establish a new communication channel. . At this time, if the wireless communication unit 13 has already performed communication via at least one communication channel, the device driver 41 additionally starts communication on the communication channel by time division multiplexing.

ここでこの例における制御部11の詳しい処理の例について述べる。制御部11が実行しているホストOS40は、各プログラム実行環境50上のゲストOS51に対して、それぞれ互いに異なるネットワーク名前空間(network namespace)を設定する。つまり、各プログラム実行環境50での仮想的無線通信デバイスインタフェースごとに、互いに異なるIPアドレスや、ルーティングテーブル等を設定する。そしてホストOS40では、有線通信部14を介して受信するデータの宛先を参照し、当該宛先となったノードに対応するネットワーク名前空間が設定されたプログラム実行環境50がある場合、そのプログラム実行環境50上で動作するゲストOS51に対して受信したデータを受け渡す。   Here, an example of detailed processing of the control unit 11 in this example will be described. The host OS 40 executed by the control unit 11 sets different network namespaces for the guest OS 51 on each program execution environment 50. That is, different IP addresses, routing tables, and the like are set for each virtual wireless communication device interface in each program execution environment 50. The host OS 40 refers to the destination of the data received via the wired communication unit 14, and when there is a program execution environment 50 in which the network name space corresponding to the node that is the destination is set, the program execution environment 50 The received data is transferred to the guest OS 51 operating above.

またいずれかのプログラム実行環境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 communication unit 14, the host OS 40 receives the program execution environment 50 that is the data transfer source. The data is transmitted via the wired communication unit 14 in accordance with the setting of the routing table or the like corresponding to.

制御部11が実行するデータ処理モジュール55は、ゲストOS51を介して、ホストOS40のデバイスドライバ41内に形成された複数のバッファ45のうち、対応する通信チャネルに関わるバッファ45に対してアクセスする。   The data processing module 55 executed by the control unit 11 accesses the buffer 45 related to the corresponding communication channel among the plurality of buffers 45 formed in the device driver 41 of the host OS 40 via the guest OS 51.

制御部11は、ホストOS40としての動作において、ゲストOS51からのバッファ45へのアクセス要求に応答し、要求元のゲストOS51が実行されているプログラム実行環境50に対応するバッファ45にアクセスし、要求されたデータの書き込みまたはデータの取り出しを行う。ここでホストOS40が取り出したデータは要求元のゲストOS51に受け渡される。このようにして、プログラム実行環境50のそれぞれが、複数のバッファ45のうち、プログラム実行環境50に対応した通信チャネルに係るバッファ45(以下、アクセスの対象となったバッファ45と呼ぶ)に対して排他的にアクセスすることが可能となる。すなわち、これにより、プログラム実行環境ごとに、それぞれの上で実行されるプログラムに対してのみ、それぞれのプログラム実行環境が提供する仮想的無線通信デバイスインタフェースを介しての通信を行わせることとなり、IPアドレスやルーティングテーブル等をそれぞれ独立して設定できる。   In the operation as the host OS 40, the control unit 11 responds to the access request to the buffer 45 from the guest OS 51, accesses the buffer 45 corresponding to the program execution environment 50 in which the requesting guest OS 51 is executed, and requests The written data is written or the data is taken out. Here, the data taken out by the host OS 40 is delivered to the requesting guest OS 51. In this way, each of the program execution environments 50 is associated with a buffer 45 related to a communication channel corresponding to the program execution environment 50 among the plurality of buffers 45 (hereinafter referred to as an access target buffer 45). It becomes possible to access exclusively. That is, for each program execution environment, only the programs executed on the respective programs are made to communicate via the virtual wireless communication device interface provided by each program execution environment. Address, routing table, etc. can be set independently.

データ処理モジュール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 communication unit 14. At this time, the data processing module 55 accepts the data received via the wired communication unit 14 and requests the guest OS 51 to send the data via the corresponding communication channel (write to wlan0 or the like).

ゲストOS51では、通信チャネルを介して送出するべきデータをユーザプログラムから受け入れて、アクセスの対象となったバッファ45に格納するようホストOS40に要求する。   The guest OS 51 accepts data to be sent through the communication channel from the user program and requests the host OS 40 to store it in the buffer 45 to be accessed.

このように構成された制御部11を利用する場合、複数のプログラム実行環境50a,50b…を起動し、それぞれのプログラム実行環境50において、それぞれゲストOS51a,51b…を動作させる。さらにこれらのプログラム実行環境50a,b…のそれぞれにおいて、ユーザプログラムであるデータ処理モジュール55a,b…及び通信制御モジュール56a,b…を動作させることができる。   When the control unit 11 configured as described above is used, a plurality of program execution environments 50a, 50b,... Are activated, and the guest OSs 51a, 51b,. Further, in each of these program execution environments 50a, b,..., Data processing modules 55a, b,... And communication control modules 56a, b,.

ここでデータ処理モジュール55aが従来通り、アクセスの対象となったバッファ45に格納されているデータを、ゲストOS51aが提供するインタフェース(wlan0)を介してパケット単位で受け取り、当該受け取ったパケット単位で受取ったデータを、有線通信部14を介して、その宛先となったサーバ装置3へ送信するものとする。またデータ処理モジュール55bは、適時アップロード処理を実行し、端末2から受信され、バッファ45に格納されているデータ(データ全体)をゲストOS51bが提供するインタフェース(wlan1)を介してデータ単位で(つまりデータ全体を)受け取り、当該受け取ったデータを記憶部12に保持するものとする。そしてデータ処理モジュール55bは、定められたタイミングが到来するまで待機し、定められたタイミングが到来したときに、記憶部12に保持したデータを、宛先となるサーバ装置3へ送信するものとする。   Here, the data processing module 55a receives the data stored in the buffer 45 to be accessed in a packet unit via the interface (wlan0) provided by the guest OS 51a and receives the received data in the packet unit as usual. The data is transmitted to the server device 3 that is the destination via the wired communication unit 14. In addition, the data processing module 55b executes upload processing in a timely manner, and the data (the entire data) received from the terminal 2 and stored in the buffer 45 is in units of data via the interface (wlan1) provided by the guest OS 51b (that is, the data). Assume that the entire data is received and the received data is stored in the storage unit 12. Then, the data processing module 55b waits until a predetermined timing arrives, and transmits the data held in the storage unit 12 to the destination server device 3 when the predetermined timing arrives.

このようにすると、利用する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 information processing apparatus 1 completes the reception of the entire data, and the time until the terminal 2 completes the transmission when the timely upload process is not performed (that is, the server apparatus 3 stores the data). The time until the reception of the whole is completed) is compared on the vertical axis.

ここでは複数回のアップロードを試し、その平均と誤差とを図示している。図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 (7)

端末に対して、それぞれ互いに異なるssidが設定された複数の通信チャネルを介して、無線にて通信可能に接続されるとともに、当該通信チャネルとは異なる通信回線を介してサーバとの間で通信可能に接続される、アクセスポイントとして機能する情報処理装置であって、
前記端末側から前記ssidのいずれかが設定された、いずれかの通信チャネルを介して前記サーバに送信するべきデータを受信する受信手段と、
所定のssidが設定された通信チャネルを介して受信したデータを保持する保持手段と、
前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、
を含む情報処理装置。
The terminal can be connected wirelessly through a plurality of communication channels each having a different ssid, and can communicate with a server via a communication line different from the communication channel. An information processing device functioning as an access point connected to
Receiving means for receiving data to be transmitted to the server via any communication channel in which any of the ssids is set from the terminal side;
Holding means for holding data received via a communication channel in which a predetermined ssid is set ;
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:
請求項1記載の情報処理装置であって、The information processing apparatus according to claim 1,
前記送信制御手段は、前記保持手段が、端末側から受信したデータを保持すると、当該データの送信先である前記サーバに対して通信開始の信号を送出し、当該サーバから了解の返答があったときに、前記保持したデータよりも短いデータを当該サーバ宛に送信し、当該サーバからセッション識別情報を受信して、当該セッション識別情報を記憶しておき、前記タイミングが到来したときに、前記保持手段に保持されているデータのアップロード要求を、前記記憶しているセッション識別情報を含めて前記サーバへ送信するよう制御する情報処理装置。When the holding means holds the data received from the terminal side, the transmission control means sends a communication start signal to the server that is the transmission destination of the data, and there is a reply from the server Sometimes, data shorter than the held data is transmitted to the server, the session identification information is received from the server, the session identification information is stored, and the holding is performed when the timing has arrived. An information processing apparatus that controls to transmit an upload request for data held in the means to the server including the stored session identification information.
請求項1または2記載の情報処理装置であって、
前記送信制御手段は、前記保持手段が、端末側から受信したデータを保持すると、当該データの送信先である前記サーバに対して送信対象となるデータがある旨を表す通知を送信し、前記サーバから当該データを送信するべきタイミングの指示を受けて、当該指示されたタイミングを前記予め定められたタイミングとして、当該タイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する情報処理装置。
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.
請求項1から3のいずれか一項に記載の情報処理装置であって、
前記端末側から前記サーバ内に蓄積されているべき、前記受信したデータの要求を受け入れ、前記保持手段に当該データが保持されているときには、当該保持手段に保持したデータを、前記端末側へ送信する情報処理装置。
An information processing apparatus according to any one of claims 1 to 3 ,
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.
請求項1からのいずれか一項に記載の情報処理装置であって、
前記端末の利用者を認証する手段をさらに含み、
前記利用者が認証されなかった場合は、当該利用者の端末側から前記サーバに送信するべきデータを逐次的に受信すると、前記送信制御手段が、当該逐次的に受信したデータをそのまま前記サーバへ送信するよう制御する情報処理装置。
An information processing apparatus according to any one of claims 1 to 4 ,
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.
複数の情報処理装置を含む情報処理システムであって、
前記情報処理装置は、
端末に対して、それぞれ互いに異なるssidが設定された複数の通信チャネルを介して、無線にて通信可能に接続されるとともに、当該通信チャネルとは異なる通信回線を介してサーバとの間で通信可能に接続される、アクセスポイントとして機能し、
前記端末側から前記ssidのいずれかが設定された、いずれかの通信チャネルを介して前記サーバに送信するべきデータを受信する受信手段と、
所定のssidが設定された通信チャネルを介して受信したデータを保持する保持手段と、
前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、
を有し、
前記情報処理装置の各々は、予め定めた方法により定められた順に、データを輪番で送信し、
各情報処理装置の前記送信制御手段は、前記予め定められたタイミングとして、前記定められた順により、送信する順となったタイミングとする情報処理システム。
An information processing system including a plurality of information processing devices,
The information processing apparatus includes:
The terminal can be connected wirelessly through a plurality of communication channels each having a different ssid, and can communicate with a server via a communication line different from the communication channel. Function as an access point connected to
Receiving means for receiving data to be transmitted to the server via any communication channel in which any of the ssids is set from the terminal side;
Holding means for holding data received via a communication channel in which a predetermined ssid is set ;
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.
端末に対して、それぞれ互いに異なるssidが設定された複数の通信チャネルを介して、無線にて通信可能に接続されるとともに、当該通信チャネルとは異なる通信回線を介してサーバとの間で通信可能に接続される、アクセスポイントとして機能する情報処理装置を、
前記端末側から前記ssidのいずれかが設定された、いずれかの通信チャネルを介して前記サーバに送信するべきデータを受信する受信手段と、
所定のssidが設定された通信チャネルを介して受信したデータを保持する保持手段と、
前記保持手段がデータを保持してから、予め定められたタイミングまで待機し、当該タイミングが到来したときに、前記保持手段に保持されているデータを、前記サーバへ送信するよう制御する送信制御手段と、
として機能させるプログラム。
The terminal can be connected wirelessly through a plurality of communication channels each having a different ssid, and can communicate with a server via a communication line different from the communication channel. An information processing device that functions as an access point connected to
Receiving means for receiving data to be transmitted to the server via any communication channel in which any of the ssids is set from the terminal side;
Holding means for holding data received via a communication channel in which a predetermined ssid is set ;
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.
JP2011265303A 2011-12-02 2011-12-02 Information processing apparatus, information processing system, server apparatus, and program Active JP5859833B2 (en)

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 JP2013117883A (en) 2013-06-13
JP5859833B2 true JP5859833B2 (en) 2016-02-16

Family

ID=48535596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011265303A Active 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7084149B2 (en) * 2018-01-25 2022-06-14 エヌ・ティ・ティ・コミュニケーションズ株式会社 Communication equipment, communication system and communication method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002196969A (en) * 2000-12-27 2002-07-12 Victor Co Of Japan Ltd Cache server
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
JP4635558B2 (en) * 2004-10-27 2011-02-23 カシオ計算機株式会社 Backup server device and program
US7165015B2 (en) * 2005-03-29 2007-01-16 Cryovac, Inc. Handheld device for retrieving and analyzing data from an electronic monitoring device

Also Published As

Publication number Publication date
WO2013081149A1 (en) 2013-06-06
JP2013117883A (en) 2013-06-13

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
US9100242B2 (en) System and method for maintaining captive portal user authentication
EP2739001B1 (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
KR20150139515A (en) Virtual channel joining
WO2015039559A1 (en) Page redirection method, routing device, terminal device and system
JP5923376B2 (en) TCP relay device
JP2016170630A5 (en)
CN102195882A (en) Method and device for selecting route according to data stream application type
EP3665921B1 (en) Virtual profile for bluetooth
JP7135206B2 (en) access authentication
Moon et al. Practicalizing delay-tolerant mobile apps with cedos
KR20150070305A (en) Content delivery method
JP5859833B2 (en) Information processing apparatus, information processing system, server apparatus, and program
WO2017005118A1 (en) Method, device, terminal and server for maintaining communication connection
JP2015111330A (en) Terminal device, communication system, and communication program
JP6976199B2 (en) Information processing server and information processing method
US11172053B2 (en) Transfer apparatus, transfer method, and program for transporting data from a single source to sinks with different communication requirements
JP6595962B2 (en) Edge server, session sharing system, method and program
JP2016034116A (en) Path setting device, path setting method, path setting program, and communication system
RU2016129281A (en) METHOD OF OPTIMIZATION OF THE ROUTE, ROUTER AND OBJECT-ADMINISTRATOR OF LOCATIONS
JP6770943B2 (en) Base station equipment and programs

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