JP2006019802A - Http communication device - Google Patents
Http communication device Download PDFInfo
- Publication number
- JP2006019802A JP2006019802A JP2004192899A JP2004192899A JP2006019802A JP 2006019802 A JP2006019802 A JP 2006019802A JP 2004192899 A JP2004192899 A JP 2004192899A JP 2004192899 A JP2004192899 A JP 2004192899A JP 2006019802 A JP2006019802 A JP 2006019802A
- Authority
- JP
- Japan
- Prior art keywords
- data
- http
- size
- server
- communication
- 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.)
- Withdrawn
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、HTTPデータ通信における大量データの通信方法に関するものである。 The present invention relates to a mass data communication method in HTTP data communication.
HTTPプロトコルをトランスポートとして用いてデータ転送を行う方法は、現在、さまざまな用途に用いられ、一般的になってきている。このような環境下では、たとえば画像データや、印刷データなど、サイズの大きいデータをHTTPを用いて、通信を行うことも可能である。また、HTTPを用いてデータ転送を行うメリットとして、プロキシを超えて、通信を行うこともできるといったメリットを持つ。
しかしながら、近年、セキュリティについての関心が高まる中、プロキシの設定により、一回のHTTPのデータ転送サイズの上限を設けるような設定が可能になってきている。たとえば、オフィス内からプロキシを介して、インターネット上のサーバにデータを転送する場合、HTTPプロトコルのPOST処理を用いてデータ転送がなされるが、オフィス内の情報漏洩を防ぐため、プロキシを介したHTTPのPOST処理には、1回のPOST処理に対して、最大転送サイズ40Mバイトといった制限をかけ、オフィス内からインターネット上に大量のデータを転送させないような設定が行われる場合がある。 However, in recent years, with increasing interest in security, it has become possible to set an upper limit of the HTTP data transfer size once by setting the proxy. For example, when data is transferred from the office to a server on the Internet through a proxy, the data is transferred using the POST processing of the HTTP protocol. In order to prevent information leakage in the office, HTTP through the proxy is used. In the POST process, there is a case in which a maximum transfer size of 40 Mbytes is limited to one POST process, and settings are made so that a large amount of data is not transferred from the office to the Internet.
一方、オフィス内の電子ドキュメントや、電子画像データをインターネット上のストレージサービスに登録するサービスも行われており、こうしたサイズ制限のかかったプロキシ環境化では、ユーザが転送サイズの上限を意識して、上限を超える場合には、送信データを2つ以上のファイルに分けたりしなければならないという問題点があった。 On the other hand, there is also a service that registers electronic documents and electronic image data in the office with a storage service on the Internet. In a proxy environment with such size restrictions, the user is aware of the upper limit of the transfer size, When the upper limit is exceeded, there is a problem that transmission data must be divided into two or more files.
本発明は上記課題に鑑みてなされたものであり、ユーザがプロキシの最大転送サイズを装置に設定することによって、その装置がデータを最大転送サイズ内に分割して、サーバに転送すると共に、サーバ側では、分割受信したデータを一つのファイルに集約する処理を行うことによって、プロキシに転送サイズ制限がかかった環境下でも容易にHTTPを使ったデータ転送が行える環境を提供することを目的とする。 The present invention has been made in view of the above problems. When the user sets the maximum transfer size of the proxy in the device, the device divides the data into the maximum transfer size and transfers it to the server. The purpose is to provide an environment in which data transfer using HTTP can be easily performed even in an environment in which the proxy is limited in transfer size by performing a process of consolidating the received data into one file. .
そのために、本発明では以下のような特徴をもつ。 Therefore, the present invention has the following features.
データをHTTPプロトコルを用いて転送する機能を持つ通信装置において、送信データの分割サイズを決定する決定手段と、送信データを複数のHTTPパケットに上記分割サイズで分割する手段と、分割したデータにデータ番号を付加し、送信する手段とを有し、サーバに対して、データを送信する場合に、データを分割して送信することを特徴とするHTTPデータ送信手段をもつ通信クライアント。 In a communication apparatus having a function of transferring data using the HTTP protocol, a determination unit that determines a division size of transmission data, a unit that divides transmission data into a plurality of HTTP packets at the division size, and data in the divided data A communication client having an HTTP data transmission means, wherein the data is divided and transmitted when data is transmitted to a server.
また、データをHTTPプロトコルを用いて、転送する機能を持つ通信装置において、複数のHTTPパケットに分割されたデータを受信する手段と、分割受信したデータをまとめたデータとして取り扱う手段とを具備する通信サーバ。 In addition, in a communication device having a function of transferring data using the HTTP protocol, a communication device having means for receiving data divided into a plurality of HTTP packets and means for handling the divided data as combined data server.
請求項1の分割サイズを決定する手段は、通信装置がもつユーザインターフェースからサイズを入力する。 The means for determining the division size according to claim 1 inputs the size from the user interface of the communication apparatus.
請求項1の分割サイズを決定する手段は、通信装置が接続するサーバから指定する。
The means for determining the division size according to
請求項1の分割サイズを決定する手段は、通信装置が接続するサーバからサイズを取得できなかった場合には、通信装置が持つユーザインターフェースからサイズを取得する
請求項1で記載されている通信クライアントと請求項2で記載されている通信サーバからなる。
The communication client according to
装置がデータを最大転送サイズ内に分割して、サーバに転送すると共に、サーバ側では、分割受信したデータを一つのファイルに集約する処理を行うことによって、プロキシに転送サイズ制限がかかった環境下でも容易にHTTPを使ったデータ転送が行うことができる。 The device divides the data within the maximum transfer size and transfers it to the server. At the same time, the server performs processing to consolidate the divided received data into one file. However, data transfer using HTTP can be easily performed.
以下、添付の図面を参照して本発明の実施例を詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
図1は、本実施例のHTTPクライアント装置、およびHTTPサーバ装置として、ネットワーク接続機能を持つマルチファンクションデバイスがLANに接続している概略図である。 FIG. 1 is a schematic diagram in which a multifunction device having a network connection function is connected to a LAN as an HTTP client device and an HTTP server device according to the present embodiment.
101はHTTP通信が可能なマルチファンクションデバイス装置で、本実施例ではスキャンした画像をHTTP通信で転送するデバイスである。102はファイアーウォールである。101のマルチファンクションデバイスは102のファイアーウォールで守られているオフィス内にある。103はインターネット上にあるマルチファンクションデバイスで、プリント機能を持つ。
本実施例では、デバイス101からファイアーウォール102を介して、インターネット上に接続されているデバイス103に対して、デバイス101で読み込んだスキャナデータをデバイス103にプリントアウトするものである。
In this embodiment, the scanner data read by the
図2は、本実施例における101,103のマルチファンクションデバイス装置の概略を表すブロック図である。
FIG. 2 is a block diagram showing an outline of the
201はスキャナエンジン213を制御するスキャナエンジン制御部、202はCP、,203はプログラムが可能されているブートロム、204はRAM、205はパネルから設定された値を保持しておくための不揮発性のRAM(NVRAM)、206はプリンタエンジン212を制御するエンジン制御部、207はHDD、208はタイマ、209はパネルやボタンランプといったユーザインターフェース部分214を制御するI/O制御部、210はネットワーク制御部で、それぞれがバス211に接続している。
201 is a scanner engine control unit that controls the
図3は本実施例でデバイス101,103が所有するユーザインターフェース部分である。
FIG. 3 shows a user interface portion owned by the
301は大型タッチパネルで、ユーザはタッチパネルを操作することで、各種設定を行うことが可能である。図の画面はコピーの待機画面である。302はテンキーボタンで、1から0の数字を入力するのに使う。Sのボタンはサービスボタンで、このボタンを押下することにより、タッチパネル上に各種サービス画面が出現し、コピー以外のサービスを行うことができる。Rのボタンは設定ボタンで、このボタンを押下することによって、タッチパネル上に、各種設定画面が出現し、パラメータの設定を行うことができる。303はスピーカで、音声やブザー等をここから出力する。304はランプで、印刷やコピーがジャムした場合には、ランプが点滅する。
図4は、101のデバイスのネットワーク周りの制御を行うモジュール構成のブロック図を示したものである。 FIG. 4 is a block diagram of a module configuration for performing control around the network of 101 devices.
401はEtherDriverでオフィスLANに接続して、Ethernet(登録商標)のパケットの送受信を行うためのドライバモジュールである。402はTCP/IPプロトコルスタックである。本発明のデバイスはマルチプロトコルをサポートし、NetWareやAppleTalkといったプロトコルでも通信が可能であるが、ここでは記述を省略している。403はソケットレイヤーである。TCP/IPプロトコルを用いるためのAPIが定義されている。TCP/IPを用いて通信を行うプログラムはすべてソケットレイヤーが提供するAPIを用いて、その通信を行う。404はHTTPClientモジュールで、HTTP処理機能をもち、HTTPプロトコルを用いて、相手先と通信を行う。405はSOAPモジュール、406はスキャナサービスモジュールでSOAP/XMLを使ったスキャンToプリントサービスを実現するためのモジュールである。デバイス101ではスキャンサービス406がパネルからの入力指示によって、スキャナエンジン213からスキャンした画像をSOAPモジュール405、HTTPクライアントモジュール404を用いて、プリントデバイス101に転送するものである。
図5は、103のデバイスのネットワーク周りの制御を行うモジュール構成のブロック図を示したものである。 FIG. 5 shows a block diagram of a module configuration for performing control around the network of 103 devices.
501はEtherDriverでインターネットに接続して、Ethernet(登録商標)のパケットの送受信を行うためのドライバモジュールである。502はTCP/IPプロトコルスタックである。本発明のデバイスはマルチプロトコルをサポートし、NetWareやAppleTalkといったプロトコルでも通信が可能であるが、ここでは記述を省略している。503はソケットレイヤーである。TCP/IPプロトコルを用いるためのAPIが定義されている。TCP/IPを用いて通信を行うプログラムはすべてソケットレイヤーが提供するAPIを用いて、その通信を行う。504はHTTPServerモジュールで、HTTP処理機能をもち、HTTPプロトコルを用いて、相手先と通信を行う。505はSOAPモジュール、506はプリントサービスモジュールでSOAP/XMLを使ったスキャンToプリントサービスを実現するためのモジュールである。デバイス103ではスキャナデバイス101から受信したSOAP/XMLを用いたHTTPデータからプリントデータを抽出して、エンジン制御206を介してプリンタエンジン212に送られ、印刷されることになる。
図6は、本実施例におけるHTTP上のSOAPプリントサービスのプロトコルで、クライアントから印刷装置に送信されるCreateJobと称されるパケットデータの一例である。このデータはXML形式で記述されている。CreateJobパケットは、印刷装置に対し、ジョブ(印刷)の開始を指示するコマンドであり、要求元のユーザ名(<requesting−user−name>タグ)やジョブの処理に関する指示(<job−instruction>タグ)等の情報が記述されている。<job−instruction>タグには印刷部数を設定する<copies>タグ、両面印刷を設定する<sides>タグ、印刷の仕上げを設定する<finishing>タグなどが含まれ、印刷装置はこれらのタグに設定された値に基づき、ジョブの処理を行う。さらに、<job−instruction>タグにはオプションとして<notification−instruction>タグを含めることも可能である。この<notification−instruction>タグにはジョブに関する通知情報が記述される。図6の例においては通知情報として、通知先を設定する<notification−recipient>タグおよび通知条件を設定する<event>タグが記述されている。印刷装置はこれらのタグに設定された値に基づいてイベント送信処理を行う。本実施例では、job−completedおよび、job−canceledが指定されているため、ジョブ印刷終了、および、ジョブキャンセル時にイベントを通知することになる。 FIG. 6 is an example of packet data called “CreateJob” transmitted from the client to the printing apparatus in the SOAP print service protocol on HTTP in the present embodiment. This data is described in the XML format. The CreateJob packet is a command for instructing the printing apparatus to start a job (printing), and includes a request source user name (<requesting-user-name> tag) and an instruction relating to job processing (<job-instruction> tag). ) Etc. are described. The <job-instruction> tag includes a <copy> tag for setting the number of copies to be printed, a <sides> tag for setting double-sided printing, a <finishing> tag for setting print finishing, and the like. The job is processed based on the set value. Further, the <job-instruction> tag can optionally include a <notification-instruction> tag. In this <notification-instruction> tag, notification information about the job is described. In the example of FIG. 6, a <notification-recipient> tag for setting a notification destination and an <event> tag for setting a notification condition are described as notification information. The printing apparatus performs event transmission processing based on the values set in these tags. In this embodiment, since job-completed and job- canceled are specified, an event is notified when job printing ends and when the job is canceled.
図7は、図6のCreateJobパケットに対する応答パケットデータの一例である。 FIG. 7 is an example of response packet data for the CreateJob packet in FIG.
本データも図6と同様にXML形式で記述され、本実施例においてはHTTP上のSOAPを用いて送受信される。CreateJob応答パケットには、CreateJobコマンド対する結果コード(<result−code>タグ)や生成されたジョブの識別子(<job−id>タグ)、印刷用ポートのURI(<data−sink−uri>タグ)等の情報が含まれている。図7の701で示した部分が印刷用ポートのURIを示す部分であり、図7の例では「http://192.168.1.4/job001」というURIが示されている。
This data is also described in the XML format as in FIG. 6, and is transmitted and received using SOAP on HTTP in this embodiment. The CreateJob response packet includes a result code (<result-code> tag) for the CreateJob command, an identifier of the generated job (<job-id> tag), and a URI for the print port (<data-sink-uri> tag). Etc. are included. A portion indicated by
図8は、スキャンデバイス101からプリントデバイス103にデータ転送を行う場合における本実施例の印刷装置の動作を示すフローチャートである。
FIG. 8 is a flowchart illustrating the operation of the printing apparatus according to the present exemplary embodiment when data is transferred from the
以下、図8を用いて、本実施例のプリントデバイス103の動作を説明する。
Hereinafter, the operation of the
スキャナデバイス101から図6に示したようなCreateJobパケットが印刷装置に送信されると、印刷装置はS801において、CreateJobに記述されたXMLデータを解析し、S802に進み解析結果にエラーがないか判定する。エラーがなければ、S803において印刷データ受信用の印刷ポートを生成する。S803の処理が終わるとS804へ進み、CreateJobパケットに対するレスポンスのXMLデータの生成を行なう。このときに印刷データ受信用に生成したポートのURIを<data−sink−uri>タグの値として設定する。701のようなURIがXMLデータに埋め込まれる。CreateJobレスポンスデータの生成が終了するとS806へ進み、そのデータをSOAPを用いてスキャナデバイス101に送信する。スキャナデバイス101は、その後、<data−sink−uri>タグで指定されたURIに対してHTTPのPOSTメソッドを用いて印刷データを送信する。図9はHTTP POSTメソッドによる印刷データ転送パケットの一例である。印刷装置はS807において印刷ポートに到着したデータを受信し、適切な処理をしながらプリンタに印刷する。S807において、印刷データの受信が正常に終了すると印刷装置はS808において図10に示した例のようなHTTPレスポンスパケットをスキャナデバイス101に送信し、印刷用ポートを削除(クローズ)して印刷動作を終了する。一方、S802においてCreateJobに記述されたXMLデータにエラーがあると判定された場合はS804へ進み、エラーレスポンスデータを生成する。図11はエラーレスポンスの例である。次にS806においてエラーレスポンスをスキャナデバイス101に送信すると、スキャナデバイス101は印刷データを送信することはせず、処理を終了する。
When the CreateJob packet as shown in FIG. 6 is transmitted from the
図12は図8で示した、POST処理の詳細である。 FIG. 12 shows details of the POST processing shown in FIG.
通常、図8で示したようにデータはHTTPのPOST処理1回で他方に相手に転送され、印刷装置側はそれを受信して応答を返す。 Normally, as shown in FIG. 8, data is transferred to the other party in one HTTP POST process, and the printing apparatus receives it and returns a response.
本発明においては、図12のようにこのHTTPのPOST処理を複数回行うことによる。そのため、901に示したようにHTTPのヘッダ部分にx−Sequence−Numberとしてシーケンス番号を登録し、複数回のHTTPのPOST処理を行うようにする。POST処理の一番最後にはx−Sequence−Number:lastとして、そのPOST処理が最後のPOST処理であることを示す。 In the present invention, the HTTP POST process is performed a plurality of times as shown in FIG. Therefore, as shown in 901, a sequence number is registered as an x-Sequence-Number in the HTTP header portion, and a plurality of HTTP POST processes are performed. At the very end of the POST process, x-Sequence-Number: last indicates that the POST process is the last POST process.
図13はデバイス101のローカルインターフェース上に表示されるHTTPの最大転送サイズの画面である。
FIG. 13 is a screen showing the maximum transfer size of HTTP displayed on the local interface of the
ユーザは転送最大サイズをテンキー302を用いて入力することが可能である。
The user can input the maximum transfer size using the
この最大転送サイズはHTTPクライアントモジュール404によって参照され、そのサイズに収まるようにHTTPのPOST処理を分割することになる。
This maximum transfer size is referred to by the
図14は、スキャナデバイス101がプロキシ102にアクセスするときにプロキシ102からプロキシ情報を取得するシーケンスの一例である。
FIG. 14 is an example of a sequence for acquiring proxy information from the
スキャナデバイスは接続先のIPアドレスによって、そのIPへの接続がプロキシを介して接続する必要があるか、直接接続するかを判断する。プロキシを介して、接続する場合に、まず、プロキシから最大転送サイズ情報を取得する。プロキシが応答した最大転送サイズをHTTPクライアントモジュール404は参照し、そのサイズ内に収まるようにHTTPのPOST処理を分割することになる。
Based on the IP address of the connection destination, the scanner device determines whether the connection to the IP needs to be connected through a proxy or is connected directly. When connecting via a proxy, first, the maximum transfer size information is acquired from the proxy. The
図15は、プロキシ接続時にプロキシサーバから転送サイズ情報を取得する処理の流れを示すフローチャートである。 FIG. 15 is a flowchart showing a flow of processing for acquiring transfer size information from the proxy server at the time of proxy connection.
図16は、HTTPクライアントモジュールのデータ送信時の処理の流れを示すフローチャートである。 FIG. 16 is a flowchart showing the flow of processing when data is transmitted by the HTTP client module.
図17は、HTTPサーバモジュールのデータ受信時の処理の流れを示すフローチャートである。 FIG. 17 is a flowchart showing the flow of processing when data is received by the HTTP server module.
以下、図を用いて、本発明の処理の流れについて説明する。 The processing flow of the present invention will be described below with reference to the drawings.
デバイス101のHTTPクライアントモジュール404の処理の流れについて説明する。
A process flow of the
デバイス101のスキャンサービスモジュール406はユーザから、スキャンして、別プリンタへデータを送信の指示があると、スキャナ制御201を介してスキャナエンジン213からユーザのセットした画像を読み取る。読み取った画像はHTTPクライアントモジュール404に転送される。スキャナサービス406はユーザから指定された宛先を指定して、HTTPクライアントモジュール404にデータの転送を指示する。HTTPクライアントモジュール404はSOAP/XMLを使った制御方式で、プリントデバイス103に転送することになる。
The
HTTPクライアントモジュール404はスキャナサービスモジュールから転送先の指示を受けると、その転送先がプロキシ102経由で転送するか、直接デバイスに接続できるかを判断する(不図示)。プロキシ102経由でデータを転送する場合の処理から、図15を用いて説明する。
When receiving an instruction for a transfer destination from the scanner service module, the
プロキシ102経由でデバイス103に接続する場合、まず、HTTPクライアントモジュール404はプロキシ102から最大転送サイズを取得する(S1501)。このときのデバイス101とプロキシ102のパケットの授受は図14に図示したようなシーケンスになる。図14では、プロキシサーバ102にHTTP GETでx−PROXY−MAX−TransferSizeを取得要求し、プロキシサーバ102はHTTP OKとしてx−PROXY−MAX−TRansferSize:40Mbytesを返している。この例では、このプロキシサーバ102の一回のPOST処理の最大サイズは40Mbyteであることがわかる。S1502でプロキシサーバ102から1回のPOST処理の最大サイズが取得できた場合にはその最大サイズをRAM204にMAX−TRANSFER−SIZEとして、保持しておく(S1504)。S1502でプロキシサーバ102が応答を返さなかった場合には、S1503でパネルから取得する(S1503)。そして、この値をS1504でRAM204上に保持する。パネルからの入力は、あらかじめユーザが図13に示した画面から入力しておくことになる。図13では40Mbyteが入力されている。
When connecting to the
本実施例では、1回のPOST処理の最大転送サイズは40Mbyteとして動作する。 In this embodiment, the maximum transfer size for one POST process is 40 Mbytes.
次に実際の転送処理の処理の流れについて図16を用いて説明する。 Next, the flow of actual transfer processing will be described with reference to FIG.
スキャナサービス406はデータのスキャンが終了するとHTTPクライアントモジュール404にデータを転送し、HTTPクライアントモジュール404はHTTPおよび、SOAP/XMLを用いてデバイス103にデータを転送する。
The
データを転送のシーケンスは図8に図示したようなシーケンスになる。本実施例で、スキャンしたデータが40Mbyte内に収まれば、図8に図示したように、HTTPのPOSTは1回のみ行われることになる。40MByte以上の場合には、1回のPOSTの転送サイズを最大40Mbyteとして、図12に図示したように複数回行われることになる。 The sequence of transferring data is as shown in FIG. In the present embodiment, if the scanned data is within 40 Mbytes, HTTP POST is performed only once as shown in FIG. In the case of 40 Mbytes or more, the transfer size of one POST is set to a maximum of 40 Mbytes, and the transfer is performed a plurality of times as illustrated in FIG.
では、その複数回の転送処理の流れを図16を用いて説明する。HTTPクライアントモジュール404はCreateJobのレスポンス受信後、指定されたURLに対して、HTTPでスキャナサービス406のデータを転送することになる。まず、x−Sequence−Number=1として(S1601)、次に、スキャンサービスから指定されたTotal転送サイズが先にRAM204上に保持しておいたMAX−TRANSFER−SIZE(本実施例では40Mbyte)より大きいかどうかを判断する(S1603)。S1603で大きいと判断した場合には、1回のPOSTの転送サイズ(Content−length)をMAX−TRANSFER−SIZE(40Mbyte)に設定する(S1603)。続いて、そのサイズ分のPOST処理を実行する(S1604)。HTTPクライアントモジュール404はデバイス103からのHTTPのレスポンスを待つ(S1605)。レスポンス受信後、Total転送サイズから、実際に転送した転送サイズを減算する(S1606)。減算後、Total転送サイズが0かどうかを判断する(S1607)。0でない場合には、まだ転送すべきデータあることから、x−Sequence−Numberに1を加えて(S1608)、再び、S1602へ戻る。
Now, the flow of the plurality of transfer processes will be described with reference to FIG. After receiving the CreateJob response, the
S1602でMAX−TRANSFER−SIZEよりTotal転送サイズが小さい場合には、それを送れば、POST処理は終了することから、POSTの転送サイズ(Content−length)をTotal転送サイズとして、x−Sequence−NumberをLastとする(S1609)。そして、S1604でPOST処理を実行する。 If the total transfer size is smaller than the MAX-TRANSFER-SIZE in S1602, the POST process ends when it is sent. Therefore, the POST transfer size (Content-length) is set as the total transfer size, and the x-Sequence-Number is set. Is set to Last (S1609). In step S1604, a POST process is executed.
こうして、S1607でTotal転送サイズが0になるまで繰り返して、データの転送が終了する。このときのネットワーク上のシーケンスは図12に図示したようになる。 In this manner, the data transfer is completed until the total transfer size becomes 0 in S1607. The sequence on the network at this time is as shown in FIG.
続いて、プリンタデバイス側103の処理の流れについて説明する。プリンタデバイス103のHTTPサーバモジュール504の処理の流れについて説明する。図8に図示したようにData−Sink−URIを返した後、デバイス101はHTTPのPOST処理を用いて、スキャンデータを転送してくる。HTTPサーバモジュール504はS1701にてデータの受信待ちになっている。デバイス101からデータを受信すると、HTTPヘッダからx−Sequnce−Numberを取得する(S1702)。続いて、HTTPのBody部(実際のデータ)をプリント処理に転送し、プリント処理を行う(S1703)。HTTPのContent−length分データを受信したかをS1704で判断する。まだ受信していない場合には、引き続きS1707でデータを待ち、受信したデータをプリントモジュールに転送する(S1708)。S1704でContent−length分データを受信した場合にはS1705にてHTTPのレスポンス200OKをデバイス101に返送する。返送後、S1702で取得したx−Sequence−NumberがLastかどうかを判断する(S1706)。Lastでない場合には、引き続きデータがあることから、S1701にてデータの受信待ちになる。Lastであった場合には、これで全てのデータを受信したことになるので、処理を終了する。
Next, the flow of processing on the
本実施例では、HTTPのPOSTの転送サイズがContent−lengthとして与えることが可能となっているが、HTTPのチャンク処理を用いても同様に実現できる。 In this embodiment, the HTTP POST transfer size can be given as Content-length, but the same can be realized by using HTTP chunk processing.
また、プロキシがないような環境において、ルータで最大転送サイズを制限しているような環境下でも、同様に実現することができる。 Further, in an environment where there is no proxy, the same can be realized even in an environment where the maximum transfer size is limited by the router.
Claims (6)
送信データの分割サイズを決定する決定手段と、
送信データを複数のHTTPパケットに上記分割サイズで分割する手段と、
分割したデータにデータ番号を付加し、送信する手段と、
を有し、
サーバに対して、データを送信する場合に、データを分割して送信することを特徴とするHTTPデータ送信手段をもつことを特徴とする通信クライアント。 In a communication device having a function of transferring data using the HTTP protocol,
A determination means for determining a division size of transmission data;
Means for dividing the transmission data into a plurality of HTTP packets at the division size;
Means for adding a data number to the divided data and transmitting the data;
Have
A communication client characterized by having HTTP data transmitting means characterized by dividing and transmitting data when transmitting data to a server.
複数のHTTPパケットに分割されたデータを受信する手段と、
分割受信したデータをまとめたデータとして取り扱う手段と、
を具備することを特徴とする通信サーバ。 In a communication device having a function of transferring data using the HTTP protocol,
Means for receiving data divided into a plurality of HTTP packets;
A means of handling the received data as a collection of data;
A communication server comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004192899A JP2006019802A (en) | 2004-06-30 | 2004-06-30 | Http communication device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004192899A JP2006019802A (en) | 2004-06-30 | 2004-06-30 | Http communication device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006019802A true JP2006019802A (en) | 2006-01-19 |
Family
ID=35793683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004192899A Withdrawn JP2006019802A (en) | 2004-06-30 | 2004-06-30 | Http communication device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006019802A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008236073A (en) * | 2007-03-16 | 2008-10-02 | Softbank Bb Corp | Data transfer system and data transfer method |
JP2010039519A (en) * | 2008-07-31 | 2010-02-18 | Japan Digital Laboratory Co Ltd | Error notification method, information processor, and communication system |
JP2013524727A (en) * | 2010-04-15 | 2013-06-17 | マイクロソフト コーポレーション | Method and system for reliable protocol tunneling over HTTP |
JP2014526098A (en) * | 2011-12-31 | 2014-10-02 | 北大方正集▲団▼有限公司 | Method and system for downloading font files |
JP2019070981A (en) * | 2017-10-10 | 2019-05-09 | キヤノン株式会社 | Image processing apparatus, control method and program for image processing apparatus |
-
2004
- 2004-06-30 JP JP2004192899A patent/JP2006019802A/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008236073A (en) * | 2007-03-16 | 2008-10-02 | Softbank Bb Corp | Data transfer system and data transfer method |
JP2010039519A (en) * | 2008-07-31 | 2010-02-18 | Japan Digital Laboratory Co Ltd | Error notification method, information processor, and communication system |
JP2013524727A (en) * | 2010-04-15 | 2013-06-17 | マイクロソフト コーポレーション | Method and system for reliable protocol tunneling over HTTP |
JP2014526098A (en) * | 2011-12-31 | 2014-10-02 | 北大方正集▲団▼有限公司 | Method and system for downloading font files |
JP2019070981A (en) * | 2017-10-10 | 2019-05-09 | キヤノン株式会社 | Image processing apparatus, control method and program for image processing apparatus |
JP7233834B2 (en) | 2017-10-10 | 2023-03-07 | キヤノン株式会社 | IMAGE PROCESSING DEVICE, CONTROL METHOD AND PROGRAM OF IMAGE PROCESSING DEVICE |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6056795B2 (en) | Image processing system, gateway device, gateway device control method, gateway device control program | |
US9019532B2 (en) | Device messaging | |
JP5522095B2 (en) | Printer | |
JP4850761B2 (en) | Event notification device and event notification method | |
JP5810761B2 (en) | Process control server and process control method | |
JP2012155575A (en) | Print control server and print system | |
JP2011232893A (en) | Print data creation server, printing apparatus, and printing system | |
US6431772B1 (en) | Broadcast printing system and method | |
US9866407B2 (en) | Information processing system, cloud server, device control method, and non-transitory computer-readable recording medium encoded with device control program | |
US9232100B2 (en) | Information processing system, control method thereof, and non-transitory computer-readable medium with generating authorization information to use a function of the first service and link information to call an input window | |
US20120154861A1 (en) | Image processing apparatus, system including image processing apparatus and external apparatus | |
JP2007201688A (en) | Data communication device and data communication processing program | |
JP2008186270A (en) | Network printing system | |
JP4987770B2 (en) | Event notification device, event notification method, and event notification program | |
JP2009255390A (en) | Image forming apparatus, functional cooperation control method, and functional cooperation control program | |
JP5683218B2 (en) | Image processing apparatus, information processing system, information processing method, and program | |
JP2008186271A (en) | Server, printer, and network printing system | |
JP2006252321A (en) | Electronic document management system, print setting device, print history device, image forming apparatus, print setting service device, temporary document keeping service device and control program | |
JP2006019802A (en) | Http communication device | |
US8958098B2 (en) | Communication device allowing proxy reception of data directed thereto, and control method and storage medium therefor | |
US10051083B2 (en) | Communication system, communication device and program | |
JP2006212904A (en) | Printing system | |
JP2003345743A (en) | Communication in network | |
JP2008070939A (en) | Distribution system | |
JP2007034886A (en) | Image output device, image output method, and network connection apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070904 |