(57)【特許請求の範囲】
【請求項１】
ラージ・オブジェクトの転送方法であって、サーバがクライアントとセッションを確立した後、この方法は
前記サーバは、プレ転送されるラージ・オブジェクトをデータブロックに分割して、得たデータブロック及びそのサイズを順番ごとに前記クライアントへ送信することと、
前記クライアントは、受信されたデータブロックの転送が成功するかを判断して、転送が成功すると、前記データブロックを保存して、現在のデータブロック転送成功メッセージを前記サーバへ返信し、転送が失敗すると、セッション終了リクエストメッセージ又は現在のデータブロック再転送リクエストメッセージを前記サーバへ返信することと、
前記サーバは、受信されたメッセージに基づいて、対応するデータブロック及びそのサイズを送信する又はセッションを終了することと、を含むことを特徴とする
ラージ・オブジェクトの転送方法。
【請求項２】
前記クライアントは、下記のように、
前記データブロックの実際サイズを計算し、
受信された前記データブロックのサイズと比較して、一致すると、前記データブロックの転送が成功し、一致しないと、前記データブロックの転送が失敗することより、受信されたデータブロックの転送が成功するかを判断することを特徴とする
請求項１の記載の方法。
【請求項３】
現在送信されたデータブロックが前記ラージ・オブジェクトの最初のデータブロックであると、前記サーバは、さらに、前記ラージ・オブジェクトのサイズを前記クライアントへ送信し、
前記クライアントは、受信されたラージ・オブジェクトのサイズを保存することを特徴とする
請求項２の記載の方法。
【請求項４】
現在送信されたデータブロックが前記ラージ・オブジェクトの最後のデータブロックであると、前記サーバは、さらに、転送終了識別子を前記クライアントへ送信し、
前記クライアントは、転送終了識別子を受信して、且つ前記現在のデータブロックの転送が成功した後、
順番で保存されたデータブロックを合併して、前記データブロックの総サイズを計算するステップと、
保存されたラージ・オブジェクトのサイズと比較して、一致すると、ラージ・オブジェクト転送成功メッセージを前記サーバへ返信し、一致しないと、ラージ・オブジェクト転送失敗メッセージを前記サーバへ返信するステップと、を実行することを特徴とする
請求項３の記載の方法。
【請求項５】
前記サーバは受信されたリクエストに基づいて、対応するデータブロック及びそのサイズを送信する又はセッションを終了するステップは、具体的に、
前記サーバは、現在のデータブロック転送成功メッセージを受信して、且つ他のデータブロックがある時に、次のデータブロック及びそのサイズを前記クライアントへ送信し、  前記サーバは、現在のデータブロック再転送リクエストメッセージを受信する時に、現在のデータブロック及びそのサイズを引き続き前記クライアントへ送信し、
前記サーバは、セッション終了リクエストメッセージ、ラージ・オブジェクト転送成功メッセージ又はラージ・オブジェクト転送失敗メッセージを受信する時に、現在のセッションを終了することを特徴とする
請求項１乃至４のいずれか１項に記載の方法。
【請求項６】
前記サーバは、拡張されたＳｙｎｃＭＬメッセージより前記データブロック及びそのサイズ、ラージ・オブジェクトのサイズ、転送終了識別子を前記クライアントへ送信し、
前記拡張されたＳｙｎｃＭＬメッセージは、Ｓｉｚｅ要素、Ｄａｔａ要素、ＢｌｏｃｋＳｉｚｅ要素、Ｆｉｎａｌ要素を含み、ここで、Ｓｉｚｅ要素の値がラージ・オブジェクトのサイズであり、Ｄａｔａ要素の値が現在転送されるデータブロックであり、ＢｌｏｃｋＳｉｚｅ要素の値が現在転送されるデータブロックのサイズであり、Ｆｉｎａｌ要素の値が転送終了識別子であることを特徴とする
請求項５の記載の方法。
【請求項７】
ラージ・オブジェクトの転送システムであって、
サーバとクライアントを含み、
前記サーバは、プレ転送されるラージ・オブジェクトをデータブロックに分割して、得たデータブロック及びそのサイズを順番ごとに前記クライアントへ送信して、前記クライアントから返信されたメッセージに基づいて、対応するデータブロック及びそのサイズを送信する又はセッションを終了することに用いられ、
前記クライアントは、受信されたデータブロックの転送が成功するかを判断して、データブロックの転送が成功する時に、前記データブロックを保存して、現在のデータブロック転送成功メッセージを前記サーバへ返信して、データブロックの転送が失敗する時に、セッション終了リクエストメッセージ又は現在のデータブロック再転送リクエストメッセージを前記サーバへ返信することに用いられることを特徴とする
ラージ・オブジェクトの転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信分野におけるＯＭＡ （Ｏｐｅｎ Ｍｏｂｉｌｅ Ａｌｌｉａｎｃｅ、オープン・モバイル・アライアンス）ＳｙｎｃＭＬ（Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ Ｍａｒｋｕｐ Ｌａｎｇｕａｇｅ、データ同期プロトコル）に基づく転送技術に関し、特にラージ・オブジェクトの転送方法及びシステムに関する。
【背景技術】
【０００２】
ＯＭＡ ＳｙｎｃＭＬプロトコルは、オブジェクトの転送をサポートして、オブジェクトサイズがクライアントよりサポートされたメッセージ最大バイト数よりも大きい時、このオブジェクトがラージ・オブジェクトと呼ばれて、即ち、転送されるオブジェクトのサイズ（ＳｙｎｃＭＬメッセージにおいてＳｉｚｅ要素でマークする）は、クライアントよりサポートされたメッセージ最大バイト数（ＳｙｎｃＭＬメッセージにおいてＭａｘＭｓｇＳｉｚｅ要素でマークする）よりも大きくて、前記オブジェクトはラージ・オブジェクトである。ラージ・オブジェクトの転送に対して、ＯＭＡ ＳｙｎｃＭＬプロトコルに規定された処理方法は、通常にラージ・オブジェクトをデータブロックに分割し転送して、ＳｙｎｃＭＬメッセージよりデータブロックをクライアントへ送信して、データブロックごとのサイズがクライアントよりサポートされたメッセージ最大バイト数よりも小さい又は等しい。ラージ・オブジェクトの転送は、ＯＭＡ ＳｙｎｃＭＬプロトコルにおける基本的なセッションに基づいて完成する。
【０００３】
ＯＭＡ ＳｙｎｃＭＬプロトコルにおいて、基本的なセッションプロセスは、セッション確立とセッション管理の二つの段階を含む。セッション確立段階はサーバ側でトリガーしてもいいし、クライアントでトリガーしてもよく、両方はセッションを確立した後に、セッション管理段階に入る。クライアントはサーバとセッション管理段階でインタラクションして、ラージ・オブジェクト全体の転送を完成する。ＯＭＡ ＳｙｎｃＭＬプロトコルにラージ・オブジェクトの転送方式を規定した。
【０００４】
従来のＯＭＡ ＳｙｎｃＭＬプロトコルに基づくラージ・オブジェクト転送プロセスは、主に以下のいくつかの部分を含む。
【０００５】
一、サーバは、クライアントとセッションを確立して、サーバはクライアントのＭａｘＭｓｇＳｉｚｅを把握する。
【０００６】
二、サーバは、ラージ・オブジェクトの転送コマンドを送信して、前記ラージ・オブジェクトデータを指定されたＭａｘＭｓｇＳｉｚｅに従ってブロックに分割して、前記ラージ・オブジェクトのサイズ（ＳｙｎｃＭＬメッセージにおいてＭａｘＭｓｇＳｉｚｅ要素でマークする）と最初のデータブロックをクライアントへ送信する。
【０００７】
三、クライアントは、ラージ・オブジェクトのサイズと最初のデータブロックを保存して、次のデータブロックを引き続き送信することをサーバへ通知する。
【０００８】
四、サーバは、すべてのデータの転送が完了する（ＳｙｎｃＭＬメッセージにおいてＦｉｎａｌ要素でマークする）まで、次のデータブロックを引き続き送信する。
【０００９】
五、クライアントは、ラージ・オブジェクトの転送が完了したコマンドを受信した後、すべてのデータブロックを組み合わせて、その総サイズを計算し、保存された前記ラージ・オブジェクトのサイズと比較して、ラージ・オブジェクトの転送が成功するかを検査する。
【００１０】
前記プロセスより分かるように、この転送方式は一定の欠陥があって、ラージ・オブジェクトのすべてのデータブロックが全部に転送完了されないと、ラージ・オブジェクトの転送が成功するかどうかを把握できず、即ち、サーバが各データブロックのサイズを提供しないため、クライアントが受信されたデータブロックはエラーになっても、クライアントは把握できず、やはりサーバへ引き続き次のデータブロックを送信することを通知して、インタラクションの時間と帯域リソースの無駄になってしまう。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明の目的は、従来のラージ・オブジェクトの転送方法を最適化させるラージ・オブジェクトの転送方法及びシステムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明の目的を実現するように、本発明は下記の技術的なスキームを提供する。
【００１３】
ラージ・オブジェクト転送方法であって、サーバがクライアントとセッションを確立した後、この方法は、
前記サーバは、プレ転送されたラージ・オブジェクトをデータブロックに分割して、得たデータブロックおよびサイズを順番ごとに前記クライアントへ送信することと、
前記クライアントは、受信されたデータブロックの転送が成功するかを判断して、はいであると、前記データブロックを保存し、現在のデータブロック転送成功メッセージを前記サーバへ返信して、さもないと、セッション終了リクエストメッセージ又は現在のデータブロック再転送リクエストメッセージを前記サーバへ返信することと、
前記サーバは、受信されたメッセージに基づいて、対応するデータブロック及びそのサイズを送信する又はセッションを終了することと、を含む。
【００１４】
好ましくは、前記クライアントは、下記方式、
前記データブロックの実際サイズを計算し、
受信された前記データブロックのサイズと比較して、一致すると、前記データブロックの転送が成功し、さもないと、前記データブロックの転送が失敗することより、
受信されたデータブロックの転送が成功するかを判断する。
【００１５】
好ましくは、現在送信されたデータブロックが前記ラージ・オブジェクトの最初のデータブロックであると、前記サーバは、さらに前記ラージ・オブジェクトのサイズを前記クライアントへ送信し、
前記クライアントは、受信されたラージ・オブジェクトのサイズを保存する。
【００１６】
好ましくは、現在送信されたデータブロックが前記ラージ・オブジェクトの最後の一つのデータブロックであると、前記サーバは、さらに、転送終了識別子を前記クライアントへ送信し、
前記クライアントは、転送終了識別子を受信して、且つ現在のデータブロックの転送が成功した後、
順番で保存されたデータブロックを合併して、前記データブロックの総サイズを計算するステップと、
保存されたラージ・オブジェクトのサイズと比較して、一致すると、ラージ・オブジェクト転送成功メッセージを前記サーバへ返信して、さもないと、ラージ・オブジェクト転送失敗メッセージを前記サーバへ返信するステップと、を実行する。
【００１７】
好ましくは、前記サーバは受信されたリクエストに基づいて、対応するデータブロック及びそのサイズを送信又はセッションを終了するステップは具体的に、
前記サーバは、現在のデータブロック転送成功メッセージを受信して、且つまたデータブロックがある時に、次のデータブロック及びそのサイズを前記クライアントへ送信し、
前記サーバは現在のデータブロック再転送リクエストメッセージを受信した時に、現在のデータブロック及びそのサイズを引き続き前記クライアントへ送信し、
前記サーバはセッション終了リクエストメッセージ、ラージ・オブジェクト転送成功メッセージ又はラージ・オブジェクト転送失敗メッセージを受信した時に、現在のセッションを終了することである。
【００１８】
好ましくは、前記サーバは拡張されたＳｙｎｃＭＬメッセージによって前記データブロック及びそのサイズ、ラージ・オブジェクトのサイズ、転送終了識別子を前記クライアントへ送信し、
前記拡張されたＳｙｎｃＭＬメッセージがＳｉｚｅ要素、Ｄａｔａ要素、ＢｌｏｃｋＳｉｚｅ要素、Ｆｉｎａｌ要素を含み、ここで、Ｓｉｚｅ要素の値がラージ・オブジェクトのサイズであり、Ｄａｔａ要素の値が現在転送されるデータブロックであり、ＢｌｏｃｋＳｉｚｅ要素の値が現在転送されるデータブロックのサイズであり、Ｆｉｎａｌ要素の値が転送終了識別子である。
【００１９】
また、本発明は、ラージ・オブジェクトの転送システムを提供し、前記システムが、サーバとクライアントを含み、
前記サーバは、プレ転送されるラージ・オブジェクトをデータブロックに分割して、得たデータブロック及びそのサイズを順番ごとに前記クライアントへ送信して、前記クライアントから返信されたメッセージに基づいて、対応するデータブロック及びそのサイズを送信する又はセッションを終了することに用いられ、
前記クライアントは、受信されたデータブロックの転送が成功するかを判断して、データブロックの転送が成功する時に、前記データブロックを保存して、現在のデータブロック転送成功メッセージを前記サーバへ返信して、データブロックの転送が失敗する時に、セッション終了リクエストメッセージ又は現在のデータブロック再転送リクエストメッセージを前記サーバへ返信することに用いられる。
【００２０】
好ましくは、前記サーバは、最初のデータブロック及びそのサイズを送信する時に、前記ラージ・オブジェクトのサイズを前記クライアントへ送信して、最後のデータブロック及びそのサイズを送信する時に、転送終了識別子を前記クライアントへ送信することに用いられ、
前記クライアントは、受信されたラージ・オブジェクトのサイズを保存して、転送終了識別子を受信して、かつ現在のデータブロックの転送が成功する時に、順番で保存されたデータブロックを合併して、前記データブロックの総サイズを計算し、保存されたラージ・オブジェクトのサイズと比較して、両者が一致する時に、ラージ・オブジェクト転送成功メッセージを前記サーバへ返信して、両者が一致しない時に、ラージ・オブジェクト転送失敗メッセージを前記サーバへ返信することに用いられる。
【００２１】
好ましくは、前記サーバは、現在のデータブロック転送成功メッセージを受信し、且つまたデータブロックがある時に、次のデータブロック及びそのサイズを前記クライアントへ送信して、現在のデータブロック再転送リクエストメッセージを受信する時に、現在のデータブロック及びそのサイズを引き続き前記クライアントへ送信し、及び、
セッション終了リクエストメッセージ、ラージ・オブジェクト転送成功メッセージ又はラージ・オブジェクト転送失敗メッセージを受信した時に、現在のセッションを終了することに用いられ、
前記クライアントは、データブロックの実際サイズを計算して、受信された前記データブロックのサイズと比較することに用いられる。
【００２２】
好ましくは、前記サーバは、拡張されたＳｙｎｃＭＬメッセージによって前記データブロック及びそのサイズ、ラージ・オブジェクトのサイズ、転送終了識別子を前記クライアントへ送信する。
【発明の効果】
【００２３】
本発明はデータブロックを伝送するとともに、前記データブロックのサイズを合わせてクライアントへ送信し、クライアントは、一つのデータブロックを受信するごとに、その転送が成功するかを判断して、データブロックの転送が失敗する時に、主動的にセッションを終了することをリクエストするか、再転送をリクエストするか、即ち、本発明は、ラージ・オブジェクトのデータブロックの転送がエラーになる時に、事前に処理して、帯域リソースを節約する。
【図面の簡単な説明】
【００２４】
【図１】本発明のラージ・オブジェクトの転送方法の第１の好ましい実施例のフローチャートである。
【図２】本発明のラージ・オブジェクトの転送方法の第２の好ましい実施例のフローチャートである。
【図３】本発明のラージ・オブジェクトの転送システムの好ましい実施例の機能的なブロック図である。
【発明を実施するための形態】
【００２５】
以下、本発明が解決しようとする課題、技術的なスキーム及び有益な效果がより明らかに明瞭になるようにするために、添付の図面と実施例を参照しながら、本発明に対して更なる詳細に説明する。ここで説明する具体的な実施例は本発明を解釈することだけに用いられ、本発明を制限するものではないことは理解できるであろう。
【００２６】
図１は、本発明のラージ・オブジェクトの転送方法の第１の好ましい実施例のフローチャートを示し、本実施例において、クライアントは転送失敗のデータブロックに対して、サーバ再転送要求メカニズムで処理し、本実施例は以下のステップを含む。
【００２７】
ステップＳ００１：サーバはクライアントとセッションを確立する。
【００２８】
ステップＳ００２：セッション確立のプロセスにおいて把握した前記クライアントよりサポートされたメッセージ最大バイト数に基づいて、現在転送されるラージ・オブジェクトを分割し、前記ラージ・オブジェクトをデータブロックに分割して転送を開始する。
【００２９】
本ステップは、ラージ・オブジェクトを、クライアントよりサポートされたメッセージ最大バイト数よりも小さいまたは等しいデータブロックに分割して転送する。
【００３０】
ステップＳ００３：現在のデータブロックが最初のデータブロックであるかまたは最後のデータブロックであるかを判断して、最初のデータブロックであると、ステップＳ００４を実行し、最後のデータブロックであると、ステップＳ００５を実行し、さもないと、ステップＳ００６を実行する。
【００３１】
ステップＳ００４：現在転送されるラージ・オブジェクトのサイズを、拡張されたＳｙｎｃＭＬメッセージのＳｉｚｅ要素の値にして、ステップＳ００６を実行する。
【００３２】
本発明において、拡張されたＳｙｎｃＭＬメッセージはＳｉｚｅ要素、Ｄａｔａ要素、ＢｌｏｃｋＳｉｚｅ要素、Ｆｉｎａｌ要素を含み、ここで、ＢｌｏｃｋＳｉｚｅ要素は本発明の新規な要素であり、データブロックのサイズをキャリーすることに用いられ、Ｓｉｚｅ要素の値は現在転送されるラージ・オブジェクトのサイズを示し、Ｄａｔａ要素の値は現在転送されるデータブロックを示し、ＢｌｏｃｋＳｉｚｅ要素の値は現在転送されるデータブロックのサイズを示し、Ｆｉｎａｌ要素の値は転送終了識別子を示す。
【００３３】
ステップＳ００５：転送終了識別子を拡張されたＳｙｎｃＭＬメッセージのＦｉｎａｌ要素の値にする。
【００３４】
ステップＳ００６：現在のデータブロック及びそのサイズをそれぞれに前記拡張されたＳｙｎｃＭＬメッセージのＤａｔａ要素、ＢｌｏｃｋＳｉｚｅ要素の値にする。
【００３５】
ステップＳ００７：前記拡張されたＳｙｎｃＭＬメッセージを前記クライアントへ送信する。
【００３６】
本ステップにおいて、現在転送されるデータブロックがラージ・オブジェクトの最初のデータブロックである時に、拡張されたＳｙｎｃＭＬメッセージのＳｉｚｅ要素の値はブランクではなく、現在転送されるデータブロックがラージ・オブジェクトの最後のデータブロックである時に、拡張されたＳｙｎｃＭＬメッセージのＦｉｎａｌ要素の値はブランクではなく、その他の情况及び再転送する時に、拡張されたＳｙｎｃＭＬメッセージのＳｉｚｅ要素、Ｆｉｎａｌ要素はブランクである。
【００３７】
ステップＳ００８：クライアントは、拡張されたＳｙｎｃＭＬメッセージを受信する。
【００３８】
ステップＳ００９：前記メッセージのＳｉｚｅ要素はブランクであるかを判断して、はいであると、ステップＳ０１０を実行し、さもないと、ステップＳ０１１を実行する。
【００３９】
ステップＳ０１０：Ｓｉｚｅ要素の値を保存する。
【００４０】
本ステップは、ラージ・オブジェクトのサイズを保存することであり、次のステップにおいてラージ・オブジェクトの転送が成功するかを判断する根拠として用いられる。
【００４１】
ステップＳ０１１：受信されたデータブロックの実際サイズを計算する。
【００４２】
ステップＳ０１２：ＢｌｏｃｋＳｉｚｅ要素の値と比較して、一致すると、ステップＳ０１３を実行し、さもないと、ステップＳ０１４を実行する。
【００４３】
ステップＳ０１３：現在のデータブロックを保存して、現在のデータブロック転送成功メッセージを前記サーバへ返信して、ステップＳ０１５を実行する。
【００４４】
ステップＳ０１４：現在のデータブロックを廃棄し、現在のデータブロック再転送リクエストメッセージを前記サーバへ返信する。
【００４５】
ステップＳ０１５：前記メッセージのＦｉｎａｌ要素の値はブランクであるかを判断して、はいであると、現在転送されるデータブロックが最後のデータブロックであることを示して、ステップＳ０１６を実行し、さもないと、ステップＳ００８を実行する。
【００４６】
ステップＳ０１６：保存されたすべてのデータブロックを合併して、合併された後のデータブロックのサイズを計算する。
【００４７】
ステップＳ０１７：保存されたＳｉｚｅ要素の値と比較して、一致すると、ステップＳ０１８を実行し、さもないと、ステップＳ０１９を実行する。
【００４８】
本ステップは、データブロックが転送プロセスにおいてパケットロス現象があるかを判断できる。
【００４９】
ステップＳ０１８：ラージ・オブジェクト転送成功メッセージを前記サーバへ返信して、ステップＳ０２０を実行する。
【００５０】
ステップＳ０１９：ラージ・オブジェクト転送失敗メッセージを前記サーバへ返信する。
【００５１】
ステップＳ０２０：サーバは、クライアントから返信されたメッセージを受信する。
【００５２】
ステップＳ０２１：クライアントから返信されたメッセージタイプを判断して、現在のデータブロック転送成功メッセージであると、ステップＳ０２２を実行し、現在のデータブロック再転送リクエストメッセージであると、ステップＳ００６を実行し、ラージ・オブジェクト転送成功／失敗メッセージであると、ステップＳ０２５を実行する。
【００５３】
ステップＳ０２２：またデータブロックがあるかを判断して、はいであると、ステップＳ０２３を実行し、さもないと、ステップＳ０２４を実行する。
【００５４】
ステップＳ０２３：次のデータブロックへ指して、ステップＳ００３を実行する。
【００５５】
ステップＳ０２４：クライアントがラージ・オブジェクトの転送結果メッセージを返信することを待ち、ステップＳ０２０を実行する。
【００５６】
ステップＳ０２５：現在のセッションを終了する。
【００５７】
図２に、本発明のラージ・オブジェクトの転送方法の第２の好ましい実施例のフローチャートを示し、本実施例において、クライアントは転送失敗のデータブロックに対して、サーバ対話終了リクエストメカニズムで処理し、本実施例は以下のステップを含む。
【００５８】
ステップＳ１０１：サーバはクライアントとセッションを確立する。
【００５９】
ステップＳ１０２：セッション確立のプロセスに把握した前記クライアントよりサポートできるメッセージ最大バイト数に基づいて、現在転送されるラージ・オブジェクトを分割して、前記ラージ・オブジェクトをデータブロックに分割して転送を開始する。
【００６０】
ステップＳ１０３：現在のデータブロックが最初のデータブロックであるか最後のデータブロックであるかを判断して、最初のデータブロックであると、ステップＳ１０４を実行し、最後のデータブロックであると、実行ステップＳ１０５を実行し、さもないと、ステップＳ１０６を実行する。
【００６１】
ステップＳ１０４：現在転送されるラージ・オブジェクトのサイズを、拡張されたＳｙｎｃＭＬメッセージのＳｉｚｅ要素の値にして、ステップＳ１０６を実行する。
【００６２】
ステップＳ１０５：転送終了識別子を拡張されたＳｙｎｃＭＬメッセージのＦｉｎａｌ要素の値にする。
【００６３】
ステップＳ１０６：現在のデータブロック及びそのサイズをそれぞれに前記拡張されたＳｙｎｃＭＬメッセージのＤａｔａ要素、ＢｌｏｃｋＳｉｚｅ要素の値にする。
【００６４】
ステップＳ１０７：前記拡張されたＳｙｎｃＭＬメッセージを前記クライアントへ送信する。
【００６５】
ステップＳ１０８：クライアントは拡張されたＳｙｎｃＭＬメッセージを受信する。
【００６６】
ステップＳ１０９：前記メッセージのＳｉｚｅ要素はブランクであるかを判断して、はいであると、ステップＳ１１０を実行し、さもないと、ステップＳ１１１を実行する。
【００６７】
ステップＳ１１０：Ｓｉｚｅ要素の値を保存する。
【００６８】
ステップＳ１１１：受信されたデータブロックのサイズを計算する。
【００６９】
ステップＳ１１２：ＢｌｏｃｋＳｉｚｅ要素の値と比較して、一致すると、ステップＳ１１３を実行し、さもないと、ステップＳ１１４を実行する。
【００７０】
ステップＳ１１３：現在のデータブロックを保存して、現在のデータブロック転送成功メッセージを前記サーバへ返信して、ステップＳ１１５を実行する。
【００７１】
ステップＳ１１４：現在のデータブロックを廃棄し、セッション終了リクエストメッセージを前記サーバへ返信する。
【００７２】
ステップＳ１１５：前記メッセージのＦｉｎａｌ要素の値はブランクであるかを判断して、はいであると、現在転送されるデータブロックが最後のデータブロックであることを示して、ステップＳ１１６を実行し、さもないと、ステップＳ１０８を実行する。
【００７３】
ステップＳ１１６：保存されたすべてのデータブロックを合併して、合併された後のデータブロックのサイズを計算する。
【００７４】
ステップＳ１１７：保存されたＳｉｚｅ要素の値と比較して、一致すると、ステップＳ１１８を実行し、さもないと、ステップＳ１１９を実行する。
【００７５】
ステップＳ１１８：ラージ・オブジェクト転送成功メッセージを前記サーバへ返信して、ステップＳ１２０を実行する。
【００７６】
ステップＳ１１９：ラージ・オブジェクト転送失敗メッセージを前記サーバへ返信する。
【００７７】
ステップＳ１２０：サーバは、クライアントから返信されたメッセージを受信する。
【００７８】
ステップＳ１２１：クライアントから返信されたメッセージタイプを判断して、現在のデータブロック転送成功メッセージであると、ステップＳ１２２を実行し、セッション終了リクエストメッセージであると、ステップＳ１２５を実行し、ラージ・オブジェクト転送成功／失敗メッセージであると、ステップＳ１２５を実行する。
【００７９】
ステップＳ１２２：他のデータブロックがあるかを判断して、はいであると、ステップＳ１２３を実行し、さもないと、ステップＳ１２４を実行する。
【００８０】
ステップＳ１２３：次のデータブロックを指して、ステップＳ１０３を実行する。
【００８１】
ステップＳ１２４：クライアントの返信されるラージ・オブジェクトの転送結果メッセージを待って、ステップＳ１２０を実行する。
【００８２】
ステップＳ１２５：現在のセッションを終了する。
【００８３】
図３に、本発明のラージ・オブジェクトの転送システムの好ましい実施例の機能的なブロック図を示し、本実施例はサーバとクライアントを含み、
サーバは、クライアントよりサポートされたメッセージ最大バイト数に基づいて、プレ転送されるラージ・オブジェクトを前記メッセージ最大バイト数よりも小さい又は等しいデータブロックに分割して、得たデータブロック及びそのサイズを、拡張されたＳｙｎｃＭＬメッセージより、順番ごとに前記クライアントへ送信し、最初のデータブロック及びそのサイズを送信する時に、前記ラージ・オブジェクトのサイズを前記クライアントへ送信し、最後のデータブロック及びそのサイズを送信する時に、転送終了識別子を前記クライアントへ送信し、及び、前記クライアントより返信されたメッセージが現在のデータブロック転送成功メッセージであり、且つまたデータブロックがある時に、次のデータブロック及びそのサイズを前記クライアントへ送信し、前記クライアントより返信されたメッセージが現在のデータブロック再転送リクエストメッセージである時に、現在のデータブロック及びそのサイズを引き続き前記クライアントへ送信し、前記クライアントから返信されたメッセージがセッション終了リクエストメッセージ、ラージ・オブジェクト転送成功メッセージ又はラージ・オブジェクト転送失敗メッセージである時に、現在のセッションを終了することに用いられ、
クライアントは、受信されたデータブロックの実際サイズを計算して、受信された前記データブロックのサイズと比較して、受信されたデータブロックの転送が成功するかを判断して、データブロックの転送が成功する時に、前記データブロックを保存して、現在のデータブロック転送成功メッセージを前記サーバへ返信し、データブロックの転送が失敗する時に、セッション終了リクエストメッセージ又は現在のデータブロック再転送リクエストメッセージを前記サーバへ返信し、及び、受信されたラージ・オブジェクトのサイズを保存し、転送終了識別子を受信して、かつ現在のデータブロックの転送が成功する時に、順番で保存されたデータブロックを合併して、前記データブロックの総サイズを計算し、保存されたラージ・オブジェクトのサイズと比較して、両者が一致する時に、ラージ・オブジェクト転送成功メッセージを前記サーバへ返信し、両者が一致しない時に、ラージ・オブジェクト転送失敗メッセージを前記サーバへ返信することに用いられる。
【００８４】
上記説明は、本発明の好ましい実施例を示して説明したが、上記に述べるように、本発明は本文で掲載された形式に限らず、その他の実施例に対する排除に見られなくて、各種類のその他の組み合わせ、改修及び環境に適用でき、そして、本文の記述の発明の発想範囲以内で、上記教示または関連分野の技術または知識より改善できることを理解であろう。当業者よる改善と変化は本発明の精神と範囲を離脱しない限り、本発明に付ける請求項の保護範囲以内に含まれる。
【産業上の利用可能性】
【００８５】
本発明は、データブロックを伝送するとともに、前記データブロックのサイズを合わせてクライアントへ送信し、クライアントは、一つのデータブロックを受信するごとに、その転送が成功するかを判断する。そのため、ラージ・オブジェクトのデータブロックが転送エラーになる時に、タイムリーで解明して、事前に処理して、帯域リソースを節約できる。
【図１】
0006050823.tif 000002
【図２】
0006050823.tif 000003
【図３】
0006050823.tif 000004