JP4577803B2 - COMMUNICATION METHOD AND TRANSMITTER - Google Patents
COMMUNICATION METHOD AND TRANSMITTER Download PDFInfo
- Publication number
- JP4577803B2 JP4577803B2 JP2000261630A JP2000261630A JP4577803B2 JP 4577803 B2 JP4577803 B2 JP 4577803B2 JP 2000261630 A JP2000261630 A JP 2000261630A JP 2000261630 A JP2000261630 A JP 2000261630A JP 4577803 B2 JP4577803 B2 JP 4577803B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- communication
- client
- communication method
- awareness
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Telephonic Communication Services (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、データ通信路により接続された機器間でデータ通信を行うための通信方式の決定方法に関する。
【0002】
本発明では、情報とは、複数の機器で共有される各種形式のファイルやユーザ状態、ニュース、メッセージ等を含む。通信側及び受信側機器は、論理的に同じ情報を共有する。但し、受信側機器の情報と送信側機器の情報とでは、情報の所有形態が異なっていてもよい。例えば、送信側機器では、テキストデータそのものをハードディスク上に持っているが、受信側機器では、対応するイメージを画面上に表示しているだけでもよい。また、受信側機器の情報は、送信側機器の情報全てを持つ必要もない。
【0003】
データ通信路は、パケット通信のような仮想的な通信路であっても良く、常時接続されている必要もない。また、データ通信路の途中に中継機器が存在していてもよい。
【0004】
通信側機器と受信側機器とは、固定的な役割を持つ必要はない。例えば、ある場合には送信側である機器が、別の場合には受信側であってもよい。同一の機器が同時に送信側と受信側の役割を果たしていてもよい。
【0005】
【従来の技術】
近年、社会全体のネットワーク化が進み、ユーザ間のコミュニケーションやニュース配信、広告配信等が、コンピューターネットワークや電話回線等のデータ通信路を用いて行われるようになっている。これらネットワーク通信では、データ通信路に接続された複数の情報機器上の情報を同期させることが、一般的に行われている。
【0006】
複数の機器間で情報を同期させるには、情報機器間で最新の情報を送受信したり、最新情報をサーバから端末機器に配信する。データ通信路で接続された機器間で情報を送受信するための通信方式には、大別して以下の方式が存在する。
【0007】
(1)プッシュ方式
受信側機器は送信側機器に予め登録されている。送信側機器の情報が更新されると、送信側機器はデータ通信路を介して更新情報を受信側機器に送信する。受信側機器は、更新情報を受信すると、自身が蓄積している情報を更新する。なお、送信側機器は、送信側の情報更新後直ちに通信情報の送信を行わずに、複数の更新情報をまとめて受信側機器に送信することもある。
【0008】
この方式の利点及び欠点は、以下の通りである。
【0009】
利点:受信側の情報は常に速やかに情報の更新を反映しており、ユーザが情報を参照するときに情報を取得するための通信が必要無く、したがって参照時の待ち時間が短い。
【0010】
欠点:更新頻度が参照頻度よりも大きい場合、無駄な通信が生じる。そのため、通信路の負荷が高くなったり、通信側及び受信側機器の負荷が高くなったり、通信料金が高くなったりする。
【0011】
(2)プル方式
まず、送信側機器の情報が更新される。その後、受信側機器が、ユーザの指示や時間の経過等のイベントによって、プル要求を送信側機器に送信する。送信側機器は、プル要求を受けると、更新情報を受信側機器に送信する。受信側機器は、更新情報を受信し、自身が蓄積している情報を更新する。送信側機器での情報の更新は、受信側機器に更新情報が送信されるまでに、複数回実行される場合がある。本発明では、受信側機器が定期的にプル要求を出す方式もプル方式に分類する。
【0012】
この方式の利点及び欠点は、以下の通りである。
【0013】
利点:情報を参照するときに初めてプル要求を出す方式では、更新頻度が参照頻度よりも大きい場合に無駄な通信が生じにくい。そのため、通信路の負荷が低くなり、送信側及び受信側機器の負荷が低くなり、通信料金が安くなる。
【0014】
欠点:情報を参照するときに初めてプル要求を出す方式では、参照時に通信を行って更新情報を取得するため、待ち時間が長くなる。また、更新頻度が参照頻度よりも小さい場合、無駄な通信が生じる。そのため、通信路の負荷や送信側及び受信側機器の負荷が高くなったり、通信料金が高くなったりする。また、情報が更新されたことを速やかにユーザに通知することができない。定期的にプル要求を出す場合には、過剰なプル要求が必要になる場合が一般的であり、無駄な通信が生じ易い。
【0015】
(3)ノーティファイ方式
受信側機器は、送信側機器に予め登録されている。送信側機器の情報が更新されると、送信側機器は更新通知を受信側機器に送信する。更新通知は、更新された情報そのものではなく、情報が更新されたという事実やその更新情報の識別子等である。受信側機器は、更新通知を受信すると、情報が更新されたことを示す更新印を該当の情報に付ける。その後、受信側機器において、ユーザの指示や時間の経過等のイベントによって情報の更新が行われる。
【0016】
情報更新は次のように行う。受信側機器は、更新印のあるものについてのみプル要求を送信する。送信側機器では、更新情報を受信側機器に送信する。受信側機器は、受信した更新情報に基づいて、更新印のある情報を更新し、更新印を消去する。なお、更新印等を使用せずに、更新通知を受信すると直ちにプル要求を送信する方法も有る。また、送信側機器で情報を更新するたびに更新通知を行わず、複数の情報の更新をまとめた後、受信側機器に更新通知を送信する場合もある。
【0017】
この方式は、プッシュ方式及びプル方式の中間的な利点及び欠点を持つ。
【0018】
また、以上に述べた各種通信方式の長所及び欠点の他に、通信環境等によってはプッシュ方式が利用できない場合がある。例えば、インターネットでは、ファイヤーウォールの外側から内側にはプッシュ方式で情報を送ることができない場合が多い。さらに、上記の通信方式の組合せや細部を変更した通信方式が存在する。
【0019】
【発明が解決しようとする課題】
従来、ユーザやシステム管理者の設定によって、ニーズに応じた通信方式が機器に設定されている。ある情報や利用者、受信側機器と、通信方式との組合せは、機器の起動時や設定の変更時に決定される。
【0020】
しかし、前述の各通信方式の利点や欠点の関係や度合いは様々な要因で変化する。例えば、参照頻度が更新頻度よりも大きい場合は、プッシュ方式を用いる方が通信料金が安い。逆に、参照頻度が更新頻度が小さい場合、プル方式を用いた方が通信料金が安くなる。また、通信時間が短い場合には、プル方式の待ち時間が長いという欠点が小さくなる。これらの要因は、動的に変化するものも多いが、従来、設定した通信方式は状況に応じて変更されないので、前記要因の変化に応じた最適な通信が難しい。そのため、例えば以下のような問題が生じる。
【0021】
(1)ある情報の項目を参照頻度が高いと考えてプッシュ方式を設定したが、実際にはあまり参照しない。そのため、必要もない通信料金が掛かってしまう。
【0022】
(2)ある情報項目を参照頻度が高いと考えてプッシュ方式を設定したが、参照していない情報の量が大きかったので、無駄な通信料金を要してしまった。
【0023】
(3)通信速度が十分に速いと考えてノーティファイ方式を設定したが、たまたま通信路が混雑していて時間がかかってしまった。
【0024】
(4)更新頻度が小さいと考えてプッシュ方式を設定したが、ある期間だけ更新頻度が高くなっていて通信料金が高くなってしまった。
【0025】
以上のような問題点に加え、通信方式を設定しておくだけでは動的に変化する様々な要因に対処した柔軟な動作を行うことができない。例えば、1)普段は参照時間を優先でプッシュ方式を用い、通信料金がかさんでくるとノーティファイ方式とする、2)普段はプッシュ方式で通信を行うが、サーバの負荷が高まってくるとノーティファイ方式にする、といった状況に応じた通信方式の切り替えが難しい。
【0026】
本発明は、前述の課題を解決し、データ通信路の利用効率を向上し、データ通信路の負担及びコストを削減すると共に、利用者端末の負担及びコストを削減し、ユーザの利便性を高めることを目的とする。
【0027】
【課題を解決するための手段】
前記課題を解決するために、本願第1発明は、データ通信路により接続された送信装置と受信装置との間で、プッシュ、ノーティファイ、またはプル方式のいずれかの通信方式で情報の通信を行う場合の前記送信装置が実行する通信方法であって、
・前記情報が更新された場合、前記送信装置の状態情報と、前記受信装置から提供された前記受信装置の状態情報とに基づいて、前記情報の通信方式を決定し、
・決定した通信方式がプッシュ方式の場合、前記更新された情報を前記受信装置に送信し、
・決定した通信方式がノーティファイ方式の場合、更新通知を前記受信装置に送信し、
・決定した通信方式がノーティファイ方式またはプル方式の場合、前記受信装置からの情報取得要求に基づき、前記更新された情報を前記受信装置に送信する、
通信方法を提供する。
【0028】
本願第2発明は、データ通信路により接続された送信装置と受信装置との間で、プッシュ、ノーティファイ、またはプル方式のいずれかの通信方式で情報の通信を行う通信システムに用いられる送信装置であって、
・前記情報が更新された場合、前記送信装置の状態情報と、前記受信装置から提供された前記受信装置の状態情報とに基づいて、前記情報の通信方式を決定する方式決定部と、
・決定した通信方式がプッシュ方式の場合、前記更新された情報を前記受信装置に送信し、 決定した通信方式がノーティファイ方式の場合、更新通知を前記受信装置に送信し、決定した通信方式がノーティファイ方式またはプル方式の場合、前記受信装置からの情報取得要求に基づき、前記更新された情報を前記受信装置に送信する情報送信部と、
を備える送信装置。を提供する。
【0029】
本願第3発明は、前記第2発明において、
・前記方式決定部は、決定した通信方式を記録しておく履歴保存部と、
・前記履歴保存部に記録されている前回の通信方式と前記決定した通信方式とが異なる場合に、前記決定した通信方式を前記受信装置に通知する決定方式通知部と、
をさらに備える送信装置を提供する。
【0030】
本願第4発明は、前記第2または3発明において、
・前記送信装置の状態情報は、送信装置の能力、送信装置の負荷状況、または前記情報の更新頻度を示す情報のうちの少なくともいずれかを含み、
・前記受信装置の状態情報は、前記受信装置の能力、前記受信装置の負荷状況、前記情報の参照頻度、前記受信装置にて設定された通信方式を示す情報のうちの少なくともいずれかを含む送信装置を提供する。
【0031】
【発明の実施の形態】
<発明の概要>
本発明は、動的に変化する様々な要因に応じて、通信方式を最適なものに切り替える。これにより、ネットワーク及びコンピュータ資源の有効利用を図り、通信費用のコストを削減し、ユーザの利便性を高めることが可能となる。最適な通信方式は、たいていの場合、送信側機器と受信側機器とで異なる。この場合、システム全体にとって最適と考えられる通信方式を決定したり、送信側または受信側のどちらかの決定を優先させることにより、双方で用いる通信方式を最終的に決定する。
【0032】
以下の第1及び第2実施形態例では、送信側機器の優先度を高めて通信方式を決定する例を説明する。第3実施形態例では、受信側機器の優先度を高めて通信方式を決定する例を説明する。
【0033】
<第1実施形態例>
[構成]
次に、本発明の通信方式切換方法をアウェアネスシステムに適応した場合を例に挙げて具体的に説明する。図1は、第1実施形態例に係るアウェアネスシステムの全体構成である。このシステムは、アウェアネスサーバ1とクライアント2とが、ネットワーク3を介して接続されて構成されている。図では、クライアント2を1つしか示していないが、通常は複数のクライアントがネットワーク3に接続されている。
【0034】
アウェアネスサーバ1は、ネットワーク3上のユーザのアウェアネス情報を管理し、クライアント2に他のユーザのアウェアネス情報を配信している。アウェアネス情報とは、ユーザ状態、ユーザがどの通信手段を使用可能か否か、住所、電話番号、メールアドレスなどのユーザの個人情報全般である。本例では、アウェアネスサーバ1が管理するアウェアネス情報のいずれかが更新された場合に、その更新された情報とクライアント2上のアウェアネス情報との同期をとるための通信方式の切り替えについて、例を挙げて説明する。
【0035】
(1)アウェアネスサーバ
アウェアネスサーバ1は、アウェアネスサービスモジュール11、方式決定モジュール12、ユーザDB13、設定DB14及び方式DB15を有している。アウェアネスサービスモジュール11は、クライアントからアウェアネス情報の更新を受け付け、ユーザDB13に格納する。また、アウェアネスサービスモジュール11は、どのユーザは誰のアウェアネス情報を参照しているか、すなわち各ユーザのバディリストを、ユーザDB13に格納している。さらに、アウェアネスサービスモジュール11は、ユーザDB13内のアウェアネス情報が更新された場合、更新されたアウェアネス情報を参照しているユーザに対し、更新された情報を配信する。方式決定モジュール12は、サーバの負荷やネットワーク3の負荷、情報の更新頻度など、動的に変化する要因と、クライアント2が指定した通信方式とに基づいて、サーバ1とクライアント2との通信方式を動的に切り替える。
【0036】
図2は、ユーザDB13に蓄積されるアウェアネス情報の概念説明図である。この例ではアウェアネス情報として、「利用者ID」、利用者の「状態」、「メッセージ」を受信可能か否か、「電話」に出れるか否か、「電子メール」を受信可能か否かが、ユーザ毎に蓄積されている。また、ユーザDB13には、各ユーザのバディリストが蓄積されている(図示せず)。このバディリストは、誰が誰のアウェアネス上を参照しているかを定めている。
【0037】
図3は、アウェアネスサーバ1の設定DB14に蓄積される情報の概念説明図である。この設定DB14には、(a)管理者設定データテーブル、(b)利用者設定データテーブル及び(c)参照データテーブルが蓄積されている。図(a)は管理者設定データテーブル(a)の概念説明図である。このテーブルには、サーバの優先事項としてスループット優先か、レスポンスタイム優先かが設定される。この設定は、アウェアネスサーバ1の管理者により行われる。
【0038】
図(b)は、利用者設定データテーブル(b)の概念説明図である。このテーブルには、「利用者ID」、「優先事項」及び「料金目標」が蓄積されている。即ちこのテーブルは、参照時間を優先するか、通信料金を優先するかや、1月の通信料金の目標額が、利用者毎に蓄積される。この設定は、利用者によりなされる。
【0039】
図(c)は、参照データテーブルの概念説明図である。このテーブルには、各ユーザのバディリストの内容が記述される。具体的には、「利用者ID」、「バディID」、「参照項目」及び「通知項目」が蓄積されている。「利用者ID」とはバディリストの所有者であり、「バディID」とは各利用者のバディリストに参照先として登録されている利用者のIDである。「参照項目」には、利用者が参照するアウェアネス情報の項目が記憶される。「通知項目」は、参照したいアウェアネス情報のうち、速やかに知らせて欲しい情報である。
【0040】
図4及び図5は、アウェアネスサーバ1の方式DB15に蓄積される情報の概念説明図である。方式DB15には、(a)通信履歴テーブル、(b)クライアント能力テーブル、(c)参照情報データテーブル、(d)過去方式テーブル及び(e)サーバ能力テーブルが蓄積されている。図4(a)は通信履歴テーブル(a)の概念説明図である。このテーブルには、「利用者ID」、「通信量」、「通信時間(秒)」及び「料金(円)」が蓄積されている。すなわち、このテーブルには、過去の通信履歴が利用者毎に蓄積されている。
【0041】
図4(b)はクライアント能力テーブル(b)に蓄積される概念説明図である。このテーブルには、「通信路負荷」、「クライアント能力」及び「通信路能力」が、利用者ID毎に蓄積されている。クライアントの能力は、例えば処理速度やメモリ容量等から決定される。通信路能力は、例えば通信容量や通信速度から決定される。
【0042】
図4(c)は、参照情報データテーブル(c)に蓄積される情報の概念説明図である。この図には、「情報項目」、「更新頻度(回/時)」及び「情報量(Bytes)」が、利用者ID毎に蓄積されている。情報項目にはアウェアネス情報の項目が記述され、各利用者のアウェアネス情報項目毎に、更新頻度と情報量とが記憶されている。
【0043】
図5(d)は、過去方式テーブル(d)に蓄積される情報の概念説明図である。このテーブルは、アウェアネスサーバ1からクライアント2にアウェアネス情報を送信するために使用された過去の通信方式を、アウェアネス情報の各項目毎に記憶している。具体的には、このテーブルは、「バディID」、「情報項目」、「クライアント側の決定方式」、「理由」及び「前回方式」を、「利用者ID」ごとに記憶している。利用者とはバディリストの持ち主である。クライアント側の決定方式とは、利用者のクライアント2が決定した通信方式である。前回方式とは、アウェアネスサーバ1と前記利用者のクライアント2との前回の通信に用いられた通信方式である。
【0044】
図5(e)は、サーバ能力テーブル(e)に蓄積される情報の概念説明図である。このテーブルには、アウェアネスサーバの負荷及びサーバの能力が記録されている。サーバ能力は、前記クライアント能力と同様に判断される。
【0045】
(2)クライアント
クライアント2は、アウェアネスクライアントモジュール21、方式指定モジュール22、設定DB23及び方式DB24を有している。アウェアネスクライアントモジュール21は、ユーザからアウェアネス情報の設定及び更新を受け付け、アウェアネスサーバ1に送信する。また、アウェアネスクライアントモジュール21は、バディリストの設定や更新を受付、アウェアネスサーバ1に登録する。さらに、アウェアネスクライアントモジュール21は、所定のイベントの発生に応じ、バディリストに登録されている他のユーザのアウェアネス情報を、アウェアネスサーバ1から取得する。所定のイベントとは、例えばユーザの操作や所定時間毎、アウェアネス情報の更新などである。
【0046】
方式指定モジュール22は、クライアント2の負荷やネットワーク負荷等の動的に変化する要因に基づいて、クライアント2に最適な通信方式を決定する。
【0047】
図6は、クライアント2の設定DB23に蓄積される情報の概念説明図である。この設定DB23には、(a)利用者設定データテーブル及び(b)参照設定テーブルが蓄積されている。
【0048】
図(a)は、利用者設定データテーブルである。このテーブルには、「優先事項」及び「料金目標」が蓄積されている。このテーブルに設定された内容が、前記サーバ側設定DB14の利用者設定データテーブル(b)に登録される。
【0049】
図(b)は、参照設定テーブルに蓄積される情報の概念説明図である。このテーブルには、ユーザがバディリストに登録している他のユーザ、すなわちバディのIDと、「参照項目」と「通知項目」とが蓄積されている。このテーブルに設定された内容が、前記アウェアネスサーバ1の設定DB14の参照データテーブル(c)に蓄積される。
【0050】
図7は、クライアント2の方式DB24に蓄積される情報の概念説明図である。この方式DBには、(a)通信履歴テーブル、(b)能力テーブル及び(c)参照情報テーブルが蓄積されている。
【0051】
図(a)は、通信履歴テーブルに蓄積される情報の概念説明図である。このテーブルには、クライアント2の通信履歴、具体的には「通信量(Kbytes/分)」、「通信時間(秒)」及び「料金(円)」が対応付けられて蓄積されている。このテーブルに蓄積された内容が前記アウェアネスサーバ1の方式DB15内の通信履歴テーブル(a)に登録される。
【0052】
図(b)は、能力テーブルに蓄積される情報の概念説明図である。このテーブルには、「通信路負荷」、「クライアント負荷」、「クライアント能力」及び「通信路能力」が蓄積されている。このテーブルの内容は、前記方式DB15のクライアント能力テーブル(b)に登録される。
【0053】
図(c)は、参照情報テーブルに蓄積される情報の概念説明図である。このテーブルには、ユーザがバディリストに登録しているバディについて、参照する情報項目毎に、「参照頻度(回/度)」、「決定方式」及び通信方式を決定した「決定理由」が記憶されている。
【0054】
[処理の流れ]
次に、アウェアネスサーバ1の方式決定モジュール12及びクライアント2の方式指定モジュール22が行う処理の流れについて具体的に説明する。今、説明を容易にするために、ユーザDB13に蓄積されているアウェアネス情報が更新された場合に、その更新された情報を参照するユーザに新たな更新情報を通知する通信方式を、どのように決定するかについて説明する((1)通信方式の決定)。従って、アウェアネスサーバ1が送信側、クライアント2が受信側機器となる。次いで、通信方式の決定に応じて、アウェアネスサーバ1及びクライアント2が通信方式を切り替える処理について、説明する((2)通信処理)。
【0055】
(1)通信方式の決定
本例では、まずクライアント2が、クライアント2に都合の良い通信方式を指定する。アウェアネスサーバ1は、クライアント2が指定した通信方式と全体的な通信状況とに基づいて、通信方式を決定する。通信方式は、簡単のため、プッシュ、プル、ノーティファイのいずれかから決定する。
【0056】
(1−1)アウェアネスサーバ側の処理の流れ
(1−1−1)サーバ側決定処理
アウェアネスサーバ1は、方式決定モジュール12により以下の処理を行い、クライアント2との通信方式を決定する。アウェアネスサーバ1は、ユーザDB13内のアウェアネス情報が更新されると、以下の処理を開始する。
【0057】
ステップS1、S2、S3:アウェアネスサーバ1は、サーバ側方式DB15の参照情報データテーブル(c)を参照し、更新されたアウェアネス情報を参照しているクライアント2が、通信方式を指定しているか否かを判断する(S1)。既に指定された通信方式がある場合、アウェアネスサーバ1は、プッシュ、プル、ノーティファイの3つの方式のうち、クライアント2が指定している方式に100ポイントを加算する。指定方式がない場合、後述する加算サブルーチンを実行する(S3)。
【0058】
ステップS4、S5、S6:アウェアネスサーバ1は、クライアント2の指定方式がプッシュ方式であって、かつサーバ1の負荷が高い場合(S4)、ノーティファイ方式に100ポイントを加算する(S5)。そうでない場合には、クライアント2の指定方式に、さらに30ポイントを加算する(S6)。
【0059】
ステップS7、S8、S9:アウェアネスサーバ1は、更新されたアウェアネス情報が通知項目であるか否かを判断し、通知項目の場合はプッシュまたはノーティファイのうちポイントの高い方を用いて通信することに決定する(S8)。通知項目でない場合、3つの方式のうち最もポイントの高い方式を用いて通信することに決定する(S9)。
【0060】
ステップS10、S11:アウェアネスサーバ1は、決定した通信方式を、クライアント2に通知する必要があるか否かを判断する(S10)。必要がある場合とは、前回がプッシュまたはノーティファイで、今回がプルの場合である。今回の通信方式がプッシュまたはノーティファイの場合、更新情報または更新通知がクライアント2に送信されるので、通知の必要はない。また、前回及び今回もプルの場合、通信方式の変更がないので通知の必要はない。必要があると判断すると、アウェアネスサーバ1は、クライアント2に対し、新たな通信方式を通知する(S11)。この通知を受け取ったクライアント2は、新たな通信方式をアウェアネスサーバ1との間に設定する。
【0061】
この処理により、クライアント2及びシステム全体の状況をふまえた通信方式を、動的に変化する状況に応じて設定することができる。
【0062】
(1−1−2)加算処理
図9及び図10は、前記ステップS3に移行した場合に、アウェアネスサーバ1が方式決定モジュール12により行う、加算処理サブルーチンの処理の流れを示すフローチャートである。この処理では、アウェアネスサーバ1は、自身の負荷やクライアントの負荷、ネットワークの負荷などシステム全体の状況に基づいて、最適な通信方式を決定する。
【0063】
ステップS401:アウェアネスサーバ1は、更新されたアウェアネス情報を配信するクライアント2との間で、過去にプッシュ方式を用いているか否かを判断する(S401)。この判断は、サーバ側方式DB15の過去方式テーブル(d)を参照することにより行う。
【0064】
“Yes”と判断すると、アウェアネスサーバ1は、現在までの通信料金CCと料金目標CDとを用い、次のようにプル方式及びノーティファイ方式にポイントを加える。通信料金CC及び料金目標CDは、それぞれサーバ側方式DB15及び設定DB14から読み出す。
T=(CD−CC)/CDとして、T<0の場合、プル方式に200ポイントを、ノーティファイ方式に100ポイントを加算する(S403)。T≧0の場合、プル方式に(T×200)ポイントを、ノーティファイ方式に(T×100)ポイントを、それぞれ加算する(S404)。
【0065】
ステップS405:アウェアネスサーバ1は、通信すべき量が10Kbytes以上で、かつ通信路の能力が中以下の場合、ステップS406に移行する。そうでない場合、後述するステップS409に移行する。
【0066】
ステップS406、S407、S408:アウェアネスサーバ1は、サーバ側設定DB14の利用者設定データテーブル(b)を参照し、配信先クライアント2が参照時間と通信料金とのどちらを優先しているかを判断する(S406)。参照時間を優先している場合、プッシュ方式に30ポイントを加算する(S407)。通信料金を優先している場合、プル方式に50ポイントを、ノーティファイ方式に30ポイントを、それぞれ加算する(S408)。
【0067】
ステップS409、S410:アウェアネスサーバ1は、サーバの負荷が高く、かつ通信すべき量が10Kbytes以上の場合(S409)、プル方式に50ポイントを、ノーティファイ方式に30ポイントを、それぞれ加算する(S410)。そうでない場合、図10のS411に移行する。
【0068】
ステップS411、S412:アウェアネスサーバ1は、クライアントの能力が低く、かつ通信すべき量が10Kbytes以上あるか否かを、サーバ側方式DB15に基づいて判断する(S411)。“Yes”と判断すると、プル方式に50ポイントを、ノーティファイ方式に30ポイントを、それぞれ加算する(S412)。
【0069】
ステップS413、S414:アウェアネスサーバ1は、通信路の負荷が高く、かつアウェアネス情報の更新頻度が所定以上か否かを判断する(S413)。更新頻度のレベルは、サーバ側方式DB15の参照情報データテーブル(c)に基づいて行う。“Yes”と判断すると、ノーティファイ方式に30ポイント加算する(S414)。その他の場合、ステップ415に移行する。
【0070】
ステップS415、S416:アウェアネスサーバ1は、通信路の能力が低く、かつ配信先クライアント2の優先事項が参照時間であれば(S415)、プッシュ方式に30ポイントを加算する(S416)。
【0071】
ステップS417,S418:アウェアネスサーバ1は、更新した情報が重要な情報の場合、プッシュ方式に50ポイントを加算し(S417)、前記決定処理に戻る。そうでない場合にはそのまま前記決定処理に戻る。
【0072】
(1−2)クライアント側の方式指定処理
図11は、クライアント2が行う通信方式指定処理の流れを示すフローチャートである。クライアント2は、以下の処理により、自身にとって最適な通信方式を決定し、アウェアネスサーバ1に通知する。この通知を受け取ったアウェアネスサーバ1が、前述の方法により、通信方式を最終決定する。
【0073】
ステップS21:クライアント2の方式指定モジュール22は、所定イベントの発生を待機し、所定イベントが発生するとステップS22に移行する。所定イベントとは、ユーザからのバディのアウェアネス情報の取得指示、所定時間の経過、クライアント2の状況変化などである。
【0074】
ステップS22、S23:クライアント2は、ユーザにより通信方式が設定されているかどうかを判断する(S22)。設定されている場合にはその方式を指定することを決定する(S23)。設定していない場合には、後述するステップS26に移行する。
【0075】
ステップS24、S25、S26:クライアント2は、指定する通信方式が今までの指定通信方式を変更するものであるかどうかを判断し(S24)、“変更”と判断すると新たな指定方式をアウェアネスサーバ1に通知する必要があるか否かを判断する(S25)。必要がある場合とは、プッシュやノーティファイ方式からプル方式に変更した場合や、その逆の場合である。“変更なし”と判断すると、再びステップS21に戻り、次のイベントの発生を待機する。
【0076】
ステップS25で“通知の必要あり”と判断すると、クライアント2は指定方式をアウェアネスサーバ1に通知する。“必要なし”と判断すると、再びステップS21に戻り、次のイベントの発生を待機する。
【0077】
ステップS27:ユーザが通信方式を設定していない場合、クライアント2は、方式DB24に基づいて、バディのアウェアネス情報を参照する頻度が所定以上の場合(S27)、プッシュ方式を指定する(S28)。そうでない場合には、クライアント2の負荷が高いか否かを方式DB24に基づいて判断し(S29)、クライアント2の負荷が高ければノーティファイ方式を(S210)、クライアント2の負荷が高くなければアウェアネスサーバ1の決定方式を、指定する(S211)。
【0078】
(2)通信処理
(2−1)アウェアネスサーバ側通信処理
図12は、アウェアネスサーバ1が、方式決定モジュール12により行う通信処理の流れを示すフローチャートである。この処理により、アウェアネスサーバ1は、クライアント2との通信方式を前記決定されたものに切り替える。アウェアネスサーバ1は、アウェアネス情報が更新されることにより、以下の処理を開始する。
【0079】
ステップS31、S32:アウェアネスサーバ1は、通信方式がプッシュ方式である場合(S31)、更新されたアウェアネス情報(以下、更新情報という)を配信先クライアント2に送信する(S32)。
【0080】
ステップS33、S34:アウェアネスサーバ1は、通信方式がノーティファイ方式である場合(S33)、配信先クライアント2に更新通知を送信する(S34)。
【0081】
ステップS35、S36、S37:アウェアネスサーバ1は、通信方式がプル方式である場合、配信先クライアント2からのプル要求を待機し(S36)、これを待って更新情報を送信する(S37)。
【0082】
(2−2)クライアント側通信処理
図13は、クライアント2が方式指定モジュール22により行う通信処理の流れを示すフローチャートである。この処理により、クライアント2は、アウェアネスサーバ1との通信方式を、前記決定されたものに切り替える。クライアント2は、ユーザからのアウェアネス情報の参照指示により、以下の処理を開始する。
【0083】
ステップS41、S42、S43、S44:クライアント2は、通信方式がプル方式の場合(S41)、アウェアネスサーバ1にプル要求を送信する(S42)。次いで、サーバ1からの更新情報を待機し(S43)、これを受信すると古いアウェアネス情報を更新する(S44)。
【0084】
ステップS45、S46、S47、S48、S49:クライアント2は、通信方式がプル方式以外である場合、バディのアウェアネス情報に更新印があるか否かを判断し(S45)、ない場合にはそれが最新の情報であるのでそのまま処理を終了する。ある場合には、前記ステップS42〜S44と同様の処理を行い(S46〜48)、更新されたアウェアネス情報の更新印を削除する(S49)。
【0085】
以上のようにして、切り替えられた通信方式を用い、アウェアネスサーバ1とクライアント2とが通信を行う。
【0086】
<第2実施形態例>
[構成]
次に、ニュースをネットワーク上で配信するニュースシステムに本発明の方法を適用した場合について説明する。図14は、第2実施形態例に係るニュースシステムの全体構成図である。ニュースシステムは、ニュースサーバ10とクライアント20とがネットワーク30により接続されて構成されている。
【0087】
ニュースサーバ10は、ユーザDB13に代えてニュースDB103を、アウェアネスサービスモジュール11に代えてニュース配信モジュール101を有している。その他の構成要素は、前記アウェアネスサーバ1と同様である。ニュース配信モジュール101は、サーバ側ニュースDB103に蓄積されたニュースが更新されると、クライアント2に配信する。どのクライアントに何のニュースを配信するかは、予めユーザにより設定されたテーブルを参照して判断する。
【0088】
クライアント20は、アウェアネスクライアントモジュール21に代えて、ニュースを受信する受信モジュール201を有している。さらに、受信したニュースを蓄積するニュースDB205を有している。その他の構成要素は、第1実施形態例と同様である。
【0089】
図15は、サーバ側設定DB104に蓄積される情報の概念説明図である。第1実施形態例と同様に、設定DB104には、(a)管理者設定データテーブル、(b)利用者設定データテーブル及び(c)参照データテーブルが蓄積されている。管理者設定データテーブル(a)及び利用者設定データテーブル(b)に蓄積される情報は、第1実施形態例と同様である。
【0090】
参照データテーブル(c)に蓄積される内容は、「バディID」及び「参照項目」に代えて「参照ニュース」が、また「通知項目」に代えて「通知ニュース」が蓄積されている。
【0091】
図16及び図17は、ニュースサーバ10の方式DB105に蓄積される情報の概念説明図である。このDBには、(a)通信履歴テーブル、(b)クライアント能力テーブル、(c)参照情報データテーブル、(d)過去方式テーブル及び(e)サーバ能力テーブルが蓄積されている。参照情報データテーブル(c)及び過去方式テーブル(d)を除き、前記第1実施形態例と同様の情報が蓄積されている。
【0092】
参照情報データテーブル(c)においては、「利用者ID」及び「情報項目」に代えて「ニュース」が蓄積されている点を除き、第1実施形態例と同様の情報が蓄積されている。
【0093】
過去方式テーブル(d)においては、「バディID」及び「情報項目」に代えて「ニュース」が蓄積されている点を除き、第1実施形態例と同様の情報が蓄積されている。
【0094】
図18は、クライアント20のニュースDB205に蓄積される情報の概念説明図である。このDBには、ユーザが指定した「ニュース」の分類と、その「内容」とが記憶される。
【0095】
図19は、クライアント20の設定DB203に蓄積される情報の概念説明図である。このDBには、(a)利用者設定データテーブル及び(b)参照設定データテーブルが蓄積されている。利用者設定データテーブル(a)には、前記第1実施形態例と同様の情報が蓄積されている。参照設定テーブル(b)には、「バディID」及び「参照項目」に代えて「参照ニュース」が、「通知項目」に代えて「通知ニュース」が記憶されている点を除き、前記第1実施形態例と同様の情報が蓄積されている。
【0096】
図20は、クライアント20の方式DB204に蓄積される情報の概念説明図である。このDBには、(a)通信履歴テーブル、(b)能力テーブル及び(c)参照情報テーブルが蓄積されている。通信履歴テーブル(a)及び能力テーブル(b)に蓄積される情報は、前記第1実施形態例と同様である。参照情報テーブルに蓄積される情報は、「バディID」及び「情報項目」に代えて「参照ニュース」が記述されている他は、前記第1実施形態例と同様の情報が蓄積されている。
【0097】
[処理の流れ]
本実施形態例において、ニュースサーバ10及びクライアント20が、方式決定モジュール102及び方式指定モジュール202により行う処理は、前記第1実施形態例と同様である。
【0098】
<第3実施形態例>
前記第1及び第2実施形態例では、送信側及び受信側機器が通信する方式を、送信側を優先に決定している。しかし、以下のように、受信側を優先して決定することも可能である。
【0099】
[構成]
図21は、第3実施形態例に係るアウェアネスシステムの構成図である。このシステムは、複数のアウェアネスクライアント120a,b・・・がネットワーク130に接続されて構成される。このシステムでは、ユーザのアウェアネス情報は、一時的にそのユーザのクライアントに保持される。その上で、そのユーザをバディに指定している他のユーザのクライアントとアウェアネス情報の同期をとる。
【0100】
今、説明を容易にするため、ユーザAとユーザBとは、それぞれのバディリストに相手を登録しているものとする。クライアント120aはユーザAのクライアントを、クライアント120bはユーザBのクライアントを指すものとする。また、クライアント120aが送信側に、クライアント120bが受信側になる場合について説明する。但し、送信側のクライアントにも受信側の機能やデータベースが設けられており、逆も同様である。
【0101】
送信側クライアント120aと受信側クライアント120bとは、共にアウェアネスクライアントモジュール121、設定DB123、方式DB124を有している。この他に、送信側クライアント120aは、方式指定モジュール126と利用者情報DB125を有し、受信側クライアント120bは方式決定モジュール122を有している。方式指定モジュール126は、送信側クライアント120aに最適な通信方式を指定し、受信側クライアント120bに通知する。方式決定モジュール122は、送信側の指定方式と、受信側クライアント120bの都合とに基づいて、通信方式を決定する。
【0102】
図22は、送信側クライアント120aの利用者情報DB125に蓄積された、ユーザA自身のアウェアネス情報の概念説明図である。このDBの情報が、受信側クライアント120bに送信される。本例では、このDBには、「ユーザ状態」、「メッセージ」を受信可能か否か、「電話」を受けられるか否か、及び「電子メール」を受信可能か否かが記憶されている。「ユーザ状態」としては、会議中、在席、不在、多忙など、ユーザの状態を表すデータが記憶される。
【0103】
図23は、送信側クライアント120aの設定DB123に蓄積される情報の概念説明図である。このDBには、送信側ユーザAをバディに登録しているユーザB,C・・・に、ユーザAのどのアウェアネス情報を配信するかが記憶されている。これらの情報は、予め受信側クライアント120bから送られているものとする。
【0104】
ここでは、設定DBは、「参照者のID」、「参照項目」及び「通知項目」を記憶している。参照者IDは、送信側ユーザAのアウェアネス情報を参照するユーザのIDである。参照項目には、参照者が参照するアウェアネス情報の項目が記憶されている。通知項目には、参照項目の中でも迅速に通知して欲しいアウェアネス情報が記憶されている。
【0105】
図24は、送信側クライアント120aの方式DB124に記憶される情報の概念説明図である。このDBには、(a)通信履歴テーブル、(b)参照情報データテーブル、(c)過去方式テーブル、及び(d)通信情報テーブルが蓄積されている。このうち通信履歴テーブル(a)は図4の通信履歴テーブルに、参照情報データテーブル(b)は図4の参照情報データテーブルに、過去方式テーブル(c)は図5の過去方式テーブルに相当する。
【0106】
但し、通信履歴テーブル(a)には、ユーザAをバディに登録しているユーザについての情報だけが記憶されている。また、参照情報データテーブル(b)には、ユーザAに関する情報だけが記憶されている。さらに、過去方式テーブル(c)は、ユーザAをバディに登録している他のユーザについての情報のみを記憶している。
【0107】
通信情報テーブル(d)には、通信路の負荷、通信側クライアントの負荷及び能力、通信路能力が記憶されている。
【0108】
図25は、受信側クライアント120bの設定DB123に記憶されている情報の概念説明図である。このDBには、(a)利用者設定データテーブル及び(b)参照設定テーブルが記憶されている。これらのテーブルは、前記図6の利用者設定データテーブル及び参照設定データテーブルと同様の内容を記憶している。
【0109】
図26は、受信側クライアント120bの方式DB124に記憶される情報の概念説明図である。このDBには、(a)通信履歴テーブル、(b)能力テーブル、(c)参照情報テーブルが蓄積されている。これらのテーブルは、前記図7のクライアント側方式DBに蓄積されている各テーブルと同様の内容を記憶している。
【0110】
[処理の流れ]
次に、本実施形態例において通信方式を決定する処理を説明する。前述したように、このシステムでは送信側機器が通信方式を指定し、受信側機器が実際に通信を行う方式を決定する。その後、決定した通信方式に基づいて通信する処理は、前述の通信処理と同様である。以下では、(1)送信側クライアントが行う通信方式指定方式、(2)受信側クライアントが行う通信方式決定処理について説明する。
【0111】
(1)通信方式指定処理(送信側)
図27及び図28は、送信側クライアントが行う通信方式指定処理の流れを示すフローチャートである。送信側クライアント120aは、方式指定モジュール126を用い、以下の処理を行う。送信側クライアント120aは、ユーザのアウェアネス情報が更新されることにより以下の処理を開始する。
【0112】
ステップS51、S52:送信側クライアント120aは、方式DB124を参照し、クライアント120bとの前回の通信量が100バイト/分未満ならば(S51)、プッシュ方式に20ポイントを加える(S52)。
【0113】
ステップS53、S54:送信側クライアント120aは、方式DB124を参照し、クライアント120bとの前回の通信時間が平均2秒未満ならば(S53)、プッシュ方式に10ポイントを加える(S54)。
【0114】
ステップS55、S56:送信側クライアント120aは、方式DB124を参照し、通信すべき量が10Kbytes以上で、かつ通信路の能力が中以下の場合(S55)、プッシュ方式に10ポイントを加える(S56)。
【0115】
ステップS57、S58:送信側クライアント120aは、方式DB124を参照し、送信側の負荷が高くかつ通信すべき量が10Kbytes以上の場合(S57)、プル方式に20ポイントを、ノーティファイ方式に10ポイントを、それぞれ加える(S58)。
【0116】
ステップS59、S510:送信側クライアント120aは、方式DB124を参照し、自身の能力が低く、かつ通信すべき量が10Kbytes以上の場合(S59)、プル方式に20ポイントを、ノーティファイ方式に10ポイントをそれぞれ加算する(S510)。
【0117】
ステップS511、S512:送信側クライアント120aは、方式DB124を参照し、通信路の負荷が高く、かつ送信するアウェアネス情報の更新頻度が所定以上であるか否かを判断する。ここでは、更新頻度が1時間当たり100回以上であれば(S511)、ノーティファイ方式に30ポイントを加算する(S512)。
【0118】
ステップS513,S514:送信側クライアント120aは、更新されたユーザAのアウェアネス情報が重要な情報の場合(S513)、プッシュ方式に30ポイントを加算する(S514)。
【0119】
ステップS515、S516、S517:送信側クライアント120aは、更新されたアウェアネス情報が、受信側ユーザBの通知項目に指定されているか否かを判断する(S515)。通知項目の場合、送信側クライアント120aは、プッシュ方式またはノーティファイ方式のうちポイントが高い方を指定方式とする(S516)。通知項目でない場合には、プッシュ、ノーティファイ、プル方式のうち最もポイントの高いものを指定方式とする(S517)。
【0120】
ステップS518,S519:送信側クライアント120aは、方式DB124を参照し、指定方式またはその決定理由が前回と異なるか否かを判断する(S518)。異なる場合、受信側クライアント120bに問い合わせを送信する(S519)。この問い合わせには、送信側クライアント120aの指定する通信方式が記述されている。
【0121】
ステップS520、S521:送信側クライアント120aは、受信側クライアント120bからの通信方式の回答を待機し(S520)、回答により通知された通信方式を最終的な通信方式として決定する(S521)。
【0122】
(2)通信方式決定処理
図29及び図30は、受信側クライアントが行う通信方式決定処理の流れを示すフローチャートである。受信側クライアント120bは、方式決定モジュール122を用い、送信側クライアント120aが指定する通信方式と自身の状況とに基づいて、通信方式を決定する。受信側クライアント120bは、所定のイベントが生じた場合に、以下の処理を開始する。所定のイベントとは、送信側クライアント120aからの通信方式の問い合わせがあった場合や、所定時間毎、自身の状況が変化した場合などである。
【0123】
ステップS61、S62:受信側クライアント120bは、送信側クライアント120aの指定方式があるか否かを判断し(S61)、ある場合にはその通信方式に100ポイントを加算する(S62)。
【0124】
ステップS63:受信側クライアント120bは、送信側クライアント120aが指定して来た通信方式に50ポイントを加算する。
【0125】
ステップS64、S65、S66:受信側クライアント120bは、送信側クライアント120aとの間での前回の通信がプッシュ方式か否かを判断する(S64)。プッシュ方式の場合、T<0か否かにより、以下の処理を行う(S65)。ここで、Tとは、現在までの通信料金CCと料金目標CDを用いて、以下のように表される。通信料金CC及び料金目標CDは、設定DB123及び方式DB124から読み出される。
【0126】
T=(CD−CC)/CD
T<0の場合、受信側クライアント120bは、プル方式に200ポイントを、ノーティファイ方式に100ポイントをそれぞれ加算する(S66)。T≧0の場合、受信側クライアント120bは、プル方式に(T×200)ポイントを、ノーティファイ方式に(T×100)ポイントをそれぞれ加算する(S67)。
【0127】
ステップS68、S69、S610:受信側クライアント120bは、設定DB123を参照し、参照時間が優先か否かを判断する(S68)。参照時間優先の場合、受信側クライアント120bは、プッシュ方式に30ポイントを加算する(S69)。そうでない場合には、プル方式に50ポイントを、ノーティファイ方式に30ポイントをそれぞれ加算する(S610)。
【0128】
ステップS611、S612:受信側クライアント120bは、方式DB124を参照し、自身の負荷が高いか否かを判断する(S611)。負荷が高い場合、プル方式に20ポイントを、ノーティファイ方式に10ポイントをそれぞれ加算する(S612)。
【0129】
ステップS613、S614:受信側クライアント120bは、方式DB124を参照し、自身の能力が低いか否かを判断する(S613)。能力が低い場合、プル方式に10ポイントを、ノーティファイ方式に5ポイントをそれぞれ加算する(S614)。
【0130】
ステップS615、S616:受信側クライアント120bは、方式DB124を参照し、ユーザAのアウェアネス情報を参照する参照頻度が所定以上、例えば20(回/時)以上か否かを判断する(S615)。所定以上の場合、受信側クライアント120bは、プッシュ方式に30ポイントを、ノーティファイ方式に20ポイントをそれぞれ加算する(S616)。
【0131】
ステップS617、S618:受信側クライアント120bは、方式DB124及び設定DB123を参照し、通信路の能力が低く、かつ受信側ユーザBが参照時間を優先しているか否かを判断する(S617)。そうであれば、受信側クライアント120bは、プッシュ方式に10ポイントを加算する(S618)。
【0132】
ステップS619、S620、S621:受信側クライアント120bは、設定DB123に基づいて、更新されたユーザAのアウェアネス情報を、ユーザBが通知項目に指定しているか否かを判断する(S619)。通知項目の場合、受信側クライアント120bは、プッシュ方式またはノーティファイ方式のうちポイントの高い方を最終的な通信方式として決定する(S620)。通知項目でない場合、プッシュ方式、ノーティファイ方式またはプル方式のいずれかのうち最もポイントの高いものを最終的な通信方式として決定する(S621)。
【0133】
ステップS622:受信側クライアント120bは、決定した最終的な通信方式を送信側クライアント120aに通知し、処理を終了する。
【0134】
以上のようにして通信方式が決定された後、受信側クライアント120bと送信側クライアント120aとは、決定された方式に通信方式を切り替える。この処理については、前記第1実施形態例のサーバ側及びクライアント側における通信処理と同様である。
【0135】
<その他の実施形態例>
(A)前述の実施形態例に述べた以外にも、通信に影響を与える要因は様々に存在する。それらを考慮し、前述の決定処理を変形することにより、様々な通信方式の決定方法が可能である。
【0136】
(B)前述した本発明の方法を実行するプログラムを記録した記録媒体は、本発明に含まれる。ここで記録媒体としては、コンピュータが読み書き可能なフロッピーディスク、ハードディスク、半導体メモリ、CD-ROM、DVD、光磁気ディスク(MO)、その他のものが挙げられる。
【0137】
<付記>
(付記1)
データ通信路により接続された複数の機器間で情報を送受信するための通信方式の切替方法であって、
第1の機器において所定のイベントが発生した場合に、第1の機器の通信環境に基づいて第1通信方式を動的に決定し、
第2の機器において所定のイベントが発生した場合に、第2の機器の通信環境に基づいて第2通信方式を動的に決定し、
一方の機器から他方の機器へ情報を送信する通信方式を、前記第1通信方式または第2通信方式のいずれかに切り替える、
通信方式の切替方法。
【0138】
(付記2)
第1の機器が情報の送信側である場合、一方の機器から他方の機器へ情報を送信する通信方式を、第1の機器で決定した通信方式に切り替える、付記1に記載の通信方式の切替方法。
【0139】
この方法では、送信側の決定を優先する。ただし、送信側がサーバの場合のように、送信側は受信側の通信環境もある程度考慮して通信方式を決定可能な場合もある。
【0140】
(付記3)
第1の機器が情報の受信側である場合、一方の機器から他方の機器へ情報を送信する通信方式を、第1の機器で決定した通信方式に切り替える、付記1に記載の通信方式の切替方法。
【0141】
この方法では、受信側の決定を優先する。例えば、サーバレスシステムにおいては、クライアント間での通信が行われるため、受信側の決定を優先する場合が考えられる。
【0142】
(付記4)
前記第1及び第2の機器は、プッシュ、ノーティファイまたはプル方式のいずれかの通信方式の中から、前記第1及び第2通信方式を決定する、付記1に記載の通信方式の切替方法。
【0143】
(付記5)
データ通信路により接続された複数の機器間で情報を送受信するための通信方式の切替方法であって、
第1の機器は、所定のイベントが発生した場合、所定の第2の機器と通信するための第1通信方式を、第1の機器の通信環境に基づいて動的に決定し、
前記第1の機器は、決定した第1通信方式を、前記第2の機器に通知し、
前記第2の機器は、所定のイベントが発生した場合、第2の機器の通信環境及び前記第1通信方式に基づいて、前記第1の機器と通信するための第2通信方式を決定し、
一方の機器から他方の機器へ情報を送信する通信方式を、前記第2通信方式に切り替える、
通信方式の切替方法。
【0144】
(付記6)
データ通信路に接続され、第1機器と情報を送受信する第2機器に用いられる通信方式の切替装置であって、
前記第2機器において所定のイベントが発生した場合、第2機器の通信環境に基づいて通信方式を動的に決定する手段と、
第1機器との通信方式を、第1機器と交渉して決定する手段と、
第1機器との交渉の結果に従い、第1機器と通信を行う通信方式を切り替える手段と、
を備える通信方式の切替装置。
【0145】
(付記7)
データ通信路に接続され、第1機器と情報を送受信する第2機器に用いられる通信方式の切替装置であって、
前記第1機器において所定のイベントが発生した場合、前記第1機器の通信環境に基づいて前記第1機器が決定した第1通信方式の通知を受信する手段と、
前記第1機器との通信方式を、前記第2の機器の通信環境及び前記第1通信方式に基づいて決定する手段と、
前記決定に従い、前記第1機器と通信を行う通信方式を切り替える手段と、
を備える通信方式の切替装置。
【0146】
【発明の効果】
本発明を用いれば、様々な要因の変化に応じて通信方式を動的に切り替え、ネットワーク及びコンピュータ資源を有効利用し、通信コストを削減することができる。
【図面の簡単な説明】
【図1】第1実施形態例に係るアウェアネスシステムの全体構成。
【図2】ユーザDBに蓄積される情報の概念説明図。
【図3】サーバ側設定DBに蓄積される情報の概念説明図。
【図4】サーバ側方式DBに蓄積される情報の概念説明図(1)。
【図5】サーバ側方式DBに蓄積される情報の概念説明図(2)。
【図6】クライアント側設定DBに蓄積される情報の概念説明図。
【図7】クライアント側方式DBに蓄積される情報の概念説明図。
【図8】決定処理(サーバ側)の流れを示すフローチャート。
【図9】加算処理(サーバ側)の流れを示すフローチャート(1)。
【図10】加算処理(サーバ側)の流れを示すフローチャート(2)。
【図11】指定処理(クライアント側)の流れを示すフローチャート。
【図12】通信処理(サーバ側)の流れを示すフローチャート。
【図13】通信処理(クライアント側)の流れを示すフローチャート。
【図14】第2実施形態例に係るアウェアネスシステムの全体構成。
【図15】サーバ側設定DBに蓄積される情報の概念説明図。
【図16】サーバ側方式DBに蓄積される情報の概念説明図(1)。
【図17】サーバ側方式DBに蓄積される情報の概念説明図(2)。
【図18】クライアント側ニュースDBに蓄積される情報の概念説明図。
【図19】クライアント側設定DBに蓄積される情報の概念説明図。
【図20】クライアント側方式DBに蓄積される情報の概念説明図。
【図21】第3実施形態例に係るアウェアネスシステムの全体構成。
【図22】送信側の利用者情報DBに蓄積される情報の概念説明図。
【図23】送信側設定DBに蓄積される情報の概念説明図。
【図24】送信側方式DBに蓄積される情報の概念説明図。
【図25】受信側設定DBに蓄積される情報の概念説明図。
【図26】受信側方式DBに蓄積される情報の概念説明図。
【図27】指定処理(送信側)の流れを示すフローチャート(1)。
【図28】指定処理(送信側)の流れを示すフローチャート(2)。
【図29】決定処理(受信側)の流れを示すフローチャート(1)。
【図30】決定処理(受信側)の流れを示すフローチャート(2)。
【符号の説明】
1;アウェアネスサーバ
2;クライアント
3;ネットワーク[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a method for determining a communication method for performing data communication between devices connected by a data communication path.
[0002]
In the present invention, information includes various types of files shared by a plurality of devices, user status, news, messages, and the like. The communication side device and the receiving side device share logically the same information. However, the information possession form may be different between the information on the receiving device and the information on the transmitting device. For example, the transmitting device has the text data itself on the hard disk, but the receiving device may simply display the corresponding image on the screen. Further, the information on the receiving device need not have all the information on the transmitting device.
[0003]
The data communication path may be a virtual communication path such as packet communication, and does not need to be always connected. A relay device may exist in the middle of the data communication path.
[0004]
The communication side device and the reception side device do not need to have a fixed role. For example, in some cases, the device that is the transmitting side may be the receiving side in other cases. The same device may play the roles of the transmitting side and the receiving side at the same time.
[0005]
[Prior art]
In recent years, networking of society as a whole has progressed, and communication between users, news distribution, advertisement distribution, and the like have been performed using data communication paths such as computer networks and telephone lines. In these network communications, information on a plurality of information devices connected to a data communication path is generally synchronized.
[0006]
In order to synchronize information among a plurality of devices, the latest information is transmitted / received between the information devices, or the latest information is distributed from the server to the terminal device. Communication methods for transmitting and receiving information between devices connected via a data communication path are roughly classified into the following methods.
[0007]
(1) Push method
The receiving device is registered in advance with the transmitting device. When the information on the transmission side device is updated, the transmission side device transmits the update information to the reception side device via the data communication path. When the receiving device receives the update information, it updates the information stored in itself. Note that the transmission-side device may transmit a plurality of pieces of update information to the reception-side device collectively without transmitting communication information immediately after the transmission-side information is updated.
[0008]
The advantages and disadvantages of this method are as follows.
[0009]
Advantage: Information on the receiving side always reflects information updates promptly, and communication for acquiring information is not required when the user refers to the information, so that the waiting time at the time of reference is short.
[0010]
Disadvantage: When the update frequency is greater than the reference frequency, useless communication occurs. Therefore, the load on the communication path increases, the load on the communication side and the receiving side device increases, and the communication fee increases.
[0011]
(2) Pull method
First, the information on the transmission side device is updated. Thereafter, the receiving device transmits a pull request to the transmitting device according to an event such as a user instruction or the passage of time. Upon receiving the pull request, the transmitting device transmits update information to the receiving device. The receiving device receives the update information and updates the information stored in itself. The update of information on the transmission side device may be executed a plurality of times before the update information is transmitted to the reception side device. In the present invention, a method in which the receiving device periodically issues a pull request is also classified as a pull method.
[0012]
The advantages and disadvantages of this method are as follows.
[0013]
Advantage: In the method of issuing a pull request for the first time when referring to information, useless communication is unlikely to occur when the update frequency is higher than the reference frequency. Therefore, the load on the communication path is reduced, the load on the transmitting side and the receiving side device is reduced, and the communication fee is reduced.
[0014]
Disadvantages: In the method of issuing a pull request for the first time when referring to information, communication is performed at the time of reference, and update information is acquired, so the waiting time becomes long. Further, when the update frequency is smaller than the reference frequency, useless communication occurs. For this reason, the load on the communication path, the load on the transmission side and the reception side devices are increased, and the communication fee is increased. In addition, it is impossible to promptly notify the user that the information has been updated. When a pull request is periodically issued, an excessive pull request is generally required, and wasteful communication is likely to occur.
[0015]
(3) Notify method
The receiving device is registered in advance with the transmitting device. When the information on the transmitting device is updated, the transmitting device transmits an update notification to the receiving device. The update notification is not the updated information itself but the fact that the information has been updated and the identifier of the update information. When receiving the update notification, the receiving device adds an update mark indicating that the information has been updated to the corresponding information. Thereafter, in the receiving device, information is updated by an event such as a user instruction or the passage of time.
[0016]
Information update is performed as follows. The receiving-side device transmits a pull request only for those with an update mark. The transmitting device transmits the update information to the receiving device. Based on the received update information, the receiving device updates the information with the update mark and deletes the update mark. There is also a method of transmitting a pull request immediately after receiving an update notification without using an update stamp or the like. In addition, an update notification may not be sent every time information is updated in the transmission side device, and an update notification may be transmitted to the reception side device after collecting a plurality of information updates.
[0017]
This method has intermediate advantages and disadvantages between the push method and the pull method.
[0018]
In addition to the advantages and disadvantages of the various communication methods described above, the push method may not be used depending on the communication environment. For example, on the Internet, there are many cases where information cannot be sent from the outside to the inside of the firewall by a push method. Furthermore, there are communication systems in which combinations or details of the above communication systems are changed.
[0019]
[Problems to be solved by the invention]
2. Description of the Related Art Conventionally, a communication method according to needs is set for a device by setting of a user or a system administrator. A combination of certain information, a user, a receiving device, and a communication method is determined when the device is activated or when a setting is changed.
[0020]
However, the relationship and degree of advantages and disadvantages of each communication method described above vary due to various factors. For example, when the reference frequency is higher than the update frequency, the communication fee is cheaper using the push method. On the contrary, when the reference frequency is low and the update frequency is low, the communication fee is reduced by using the pull method. Further, when the communication time is short, the disadvantage that the waiting time of the pull method is long is reduced. Many of these factors dynamically change, but conventionally, the set communication method is not changed according to the situation, so that it is difficult to perform optimal communication according to the change of the factors. Therefore, for example, the following problems occur.
[0021]
(1) The push method is set on the assumption that a certain information item has a high reference frequency. As a result, unnecessary communication charges are incurred.
[0022]
(2) The push method is set on the assumption that a certain information item has a high reference frequency, but the amount of information that is not referred to is large, and a wasteful communication fee is required.
[0023]
(3) The notify method was set on the assumption that the communication speed was sufficiently fast, but it happened that the communication path was congested and took time.
[0024]
(4) The push method was set on the assumption that the update frequency was low, but the update frequency was high for a certain period and the communication charge was high.
[0025]
In addition to the above problems, it is not possible to perform a flexible operation that copes with various factors that change dynamically only by setting a communication method. For example, 1) The push method is usually used with priority on the reference time, and the notify method is used when the communication fee is increased. It is difficult to switch the communication method depending on the situation, such as using the notify method.
[0026]
The present invention solves the aforementioned problems, improves the utilization efficiency of the data communication path, reduces the burden and cost of the data communication path, reduces the burden and cost of the user terminal, and enhances the convenience for the user. For the purpose.
[0027]
[Means for Solving the Problems]
In order to solve the above problems, the first invention of the present application is:A communication method executed by the transmission apparatus when performing communication of information between a transmission apparatus and a reception apparatus connected by a data communication path by any one of a push, notify, or pull communication system. ,
・When the information is updated, the communication method of the information is determined based on the state information of the transmitting device and the state information of the receiving device provided from the receiving device,
・If the determined communication method is a push method, the updated information is transmitted to the receiving device,
・If the determined communication method is a notify method, an update notification is sent to the receiving device,
・When the determined communication method is a notify method or a pull method, based on the information acquisition request from the receiving device, the updated information is transmitted to the receiving device.
communicationProvide a method.
[0028]
The second invention of the present application isA transmission device used in a communication system that communicates information in a communication method of push, notify, or pull method between a transmission device and a reception device connected by a data communication path,
A method determination unit that determines a communication method of the information based on the state information of the transmission device and the state information of the reception device provided from the reception device when the information is updated;
When the determined communication method is a push method, the updated information is transmitted to the receiving device. When the determined communication method is a notify method, an update notification is transmitted to the receiving device, and the determined communication method is In the case of the notify method or the pull method, an information transmission unit that transmits the updated information to the receiving device based on an information acquisition request from the receiving device;
A transmission apparatus comprising:I will provide a.
[0029]
The third invention of the present application isIn the second invention,
The method determination unit includes a history storage unit that records the determined communication method;
・A determination method notifying unit for notifying the receiving device of the determined communication method when the previous communication method recorded in the history storage unit is different from the determined communication method;
Is further provided.
[0030]
The fourth invention of the present application is the second or third invention, wherein
・The state information of the transmission device includes at least one of the capability of the transmission device, the load status of the transmission device, or information indicating the update frequency of the information,
・The status information of the receiving device includes at least one of the capability of the receiving device, the load status of the receiving device, the reference frequency of the information, and information indicating a communication method set in the receiving device. I will provide a.
[0031]
DETAILED DESCRIPTION OF THE INVENTION
<Outline of the invention>
The present invention switches the communication method to the optimum one according to various factors that change dynamically. This makes it possible to effectively use the network and computer resources, reduce the cost of communication, and improve the convenience for the user. In most cases, the optimum communication method is different between the transmitting device and the receiving device. In this case, the communication method that is considered to be optimal for the entire system is determined, or the communication method used on both sides is finally determined by prioritizing the determination on either the transmission side or the reception side.
[0032]
In the following first and second exemplary embodiments, an example will be described in which the communication method is determined by increasing the priority of the transmitting device. In the third embodiment, an example will be described in which the communication method is determined by increasing the priority of the receiving device.
[0033]
<First embodiment>
[Constitution]
Next, the case where the communication system switching method of the present invention is applied to an awareness system will be specifically described as an example. FIG. 1 shows the overall configuration of an awareness system according to the first embodiment. In this system, an
[0034]
The
[0035]
(1) Awareness server
The
[0036]
FIG. 2 is a conceptual explanatory diagram of awareness information stored in the
[0037]
FIG. 3 is a conceptual explanatory diagram of information stored in the setting DB 14 of the
[0038]
FIG. (B) is a conceptual explanatory diagram of the user setting data table (b). In this table, “user ID”, “priority”, and “charge target” are accumulated. In other words, in this table, whether the reference time is given priority or the communication fee is given priority, and the target amount of the communication fee for January is accumulated for each user. This setting is made by the user.
[0039]
FIG. 3C is a conceptual explanatory diagram of the reference data table. In this table, the contents of each user's buddy list are described. Specifically, “user ID”, “buddy ID”, “reference item”, and “notification item” are accumulated. The “user ID” is the owner of the buddy list, and the “buddy ID” is the ID of the user registered as a reference destination in each user's buddy list. In the “reference item”, an item of awareness information referred to by the user is stored. “Notification item” is information that should be promptly notified among the awareness information to be referred to.
[0040]
4 and 5 are conceptual explanatory diagrams of information stored in the method DB 15 of the
[0041]
FIG. 4B is a conceptual explanatory diagram accumulated in the client capability table (b). In this table, “communication path load”, “client capability”, and “communication path capability” are stored for each user ID. The client capability is determined based on, for example, processing speed and memory capacity. The channel capacity is determined from, for example, the communication capacity and the communication speed.
[0042]
FIG. 4C is a conceptual explanatory diagram of information stored in the reference information data table (c). In this figure, “information item”, “update frequency (times / hour)”, and “information amount (Bytes)” are accumulated for each user ID. In the information item, an item of awareness information is described, and an update frequency and an information amount are stored for each awareness information item of each user.
[0043]
FIG. 5D is a conceptual explanatory diagram of information accumulated in the past method table (d). This table stores, for each item of the awareness information, the past communication method used for transmitting the awareness information from the
[0044]
FIG. 5E is a conceptual explanatory diagram of information stored in the server capability table (e). In this table, the load of the awareness server and the capacity of the server are recorded. The server capability is determined in the same manner as the client capability.
[0045]
(2) Client
The
[0046]
The
[0047]
FIG. 6 is a conceptual explanatory diagram of information stored in the setting
[0048]
FIG. 4A is a user setting data table. In this table, “priority” and “charge target” are accumulated. The contents set in this table are registered in the user setting data table (b) of the server side setting DB 14.
[0049]
FIG. 7B is a conceptual explanatory diagram of information stored in the reference setting table. In this table, IDs of other users registered by the user in the buddy list, that is, buddy IDs, “reference items”, and “notification items” are accumulated. The contents set in this table are accumulated in the reference data table (c) of the setting DB 14 of the
[0050]
FIG. 7 is a conceptual explanatory diagram of information stored in the
[0051]
FIG. 4A is a conceptual explanatory diagram of information accumulated in the communication history table. In this table, the communication history of the
[0052]
FIG. 2B is a conceptual explanatory diagram of information stored in the capability table. In this table, “communication path load”, “client load”, “client capability”, and “communication path capability” are accumulated. The contents of this table are registered in the client capability table (b) of the method DB 15.
[0053]
FIG. 3C is a conceptual explanatory diagram of information stored in the reference information table. This table stores “reference frequency (times / degrees)”, “determination method”, and “determination reason” that determines the communication method for each information item to be referenced for buddies registered in the buddy list by the user. Has been.
[0054]
[Process flow]
Next, the flow of processing performed by the
[0055]
(1) Determination of communication method
In this example, the
[0056]
(1-1) Flow of processing on the awareness server side
(1-1-1) Server-side determination process
The
[0057]
Steps S1, S2, S3: The
[0058]
Steps S4, S5, S6: The
[0059]
Steps S7, S8, S9: The
[0060]
Steps S10 and S11: The
[0061]
By this processing, a communication method based on the situation of the
[0062]
(1-1-2) Addition process
9 and 10 are flowcharts showing the flow of processing of the addition processing subroutine performed by the
[0063]
Step S401: The
[0064]
If the determination is “Yes”, the
When T = (CD-CC) / CD and T <0, 200 points are added to the pull method and 100 points are added to the notify method (S403). When T ≧ 0, (T × 200) points are added to the pull method and (T × 100) points are added to the notify method (S404).
[0065]
Step S405: When the amount to be communicated is 10 Kbytes or more and the communication path capability is medium or less, the
[0066]
Steps S406, S407, and S408: The
[0067]
Steps S409 and S410: The
[0068]
Steps S411 and S412: The
[0069]
Steps S413 and S414: The
[0070]
Steps S415 and S416: If the communication path capability is low and the priority of the
[0071]
Steps S417 and S418: If the updated information is important information, the
[0072]
(1-2) Client side method designation processing
FIG. 11 is a flowchart showing a flow of communication method designation processing performed by the
[0073]
Step S21: The
[0074]
Steps S22 and S23: The
[0075]
Steps S24, S25, S26: The
[0076]
If it is determined in step S25 that “notification is required”, the
[0077]
Step S27: When the communication method is not set by the user, the
[0078]
(2) Communication processing
(2-1) Awareness server side communication processing
FIG. 12 is a flowchart showing the flow of communication processing performed by the
[0079]
Steps S31 and S32: When the communication method is the push method (S31), the
[0080]
Steps S33 and S34: When the communication method is the notify method (S33), the
[0081]
Steps S35, S36, S37: When the communication method is the pull method, the
[0082]
(2-2) Client side communication processing
FIG. 13 is a flowchart showing the flow of communication processing performed by the
[0083]
Steps S41, S42, S43, S44: When the communication method is the pull method (S41), the
[0084]
Steps S45, S46, S47, S48, S49: When the communication method is other than the pull method, the
[0085]
As described above, the
[0086]
<Second Embodiment>
[Constitution]
Next, a case where the method of the present invention is applied to a news system that distributes news on a network will be described. FIG. 14 is an overall configuration diagram of a news system according to the second embodiment. The news system is configured by connecting a
[0087]
The
[0088]
The
[0089]
FIG. 15 is a conceptual explanatory diagram of information stored in the server-
[0090]
In the content stored in the reference data table (c), “reference news” is stored instead of “buddy ID” and “reference item”, and “notification news” is stored instead of “notification item”.
[0091]
16 and 17 are conceptual explanatory diagrams of information stored in the method DB 105 of the
[0092]
In the reference information data table (c), the same information as in the first embodiment is stored except that “news” is stored instead of “user ID” and “information item”.
[0093]
In the past method table (d), the same information as in the first embodiment is stored except that “news” is stored instead of “buddy ID” and “information item”.
[0094]
FIG. 18 is a conceptual explanatory diagram of information stored in the
[0095]
FIG. 19 is a conceptual explanatory diagram of information stored in the setting
[0096]
FIG. 20 is a conceptual explanatory diagram of information stored in the method DB 204 of the
[0097]
[Process flow]
In the present embodiment example, the processing performed by the
[0098]
<Third Embodiment>
In the first and second embodiments, the transmission side is preferentially determined as a method for communication between the transmission side and the reception side devices. However, it is also possible to give priority to the receiving side as follows.
[0099]
[Constitution]
FIG. 21 is a configuration diagram of an awareness system according to the third embodiment. This system is configured by connecting a plurality of
[0100]
For ease of explanation, it is assumed that user A and user B have registered their opponents in their buddy lists. The
[0101]
Both the sending
[0102]
FIG. 22 is a conceptual explanatory diagram of user A's own awareness information stored in the
[0103]
FIG. 23 is a conceptual explanatory diagram of information stored in the setting
[0104]
Here, the setting DB stores “referencer ID”, “reference item”, and “notification item”. The referrer ID is an ID of a user who refers to the sender user A's awareness information. In the reference item, an item of awareness information that is referred to by the referrer is stored. In the notification item, awareness information that is desired to be notified promptly among the reference items is stored.
[0105]
FIG. 24 is a conceptual explanatory diagram of information stored in the
[0106]
However, in the communication history table (a), only information about the user who has registered the user A as a buddy is stored. Further, only information related to the user A is stored in the reference information data table (b). Furthermore, the past method table (c) stores only information about other users who have registered user A as buddies.
[0107]
The communication information table (d) stores a communication path load, a communication client load and capacity, and a communication path capacity.
[0108]
FIG. 25 is a conceptual explanatory diagram of information stored in the setting
[0109]
FIG. 26 is a conceptual explanatory diagram of information stored in the
[0110]
[Process flow]
Next, processing for determining a communication method in the present embodiment will be described. As described above, in this system, the transmission side device designates a communication method, and the reception side device determines a method for actual communication. Thereafter, the communication process based on the determined communication method is the same as the communication process described above. In the following, (1) a communication method designating method performed by the transmitting client and (2) a communication method determining process performed by the receiving client will be described.
[0111]
(1) Communication method designation processing (transmission side)
27 and 28 are flowcharts showing the flow of the communication method designation process performed by the transmission side client. The sending
[0112]
Steps S51 and S52: The sending
[0113]
Steps S53 and S54: The sending
[0114]
Steps S55 and S56: The sending
[0115]
Steps S57 and S58: The transmitting
[0116]
Steps S59 and S510: The
[0117]
Steps S511 and S512: The transmission-
[0118]
Steps S513 and S514: If the updated awareness information of the user A is important information (S513), the transmission-
[0119]
Steps S515, S516, S517: The transmitting
[0120]
Steps S518 and S519: The transmission-
[0121]
Steps S520 and S521: The transmitting
[0122]
(2) Communication method decision processing
FIG. 29 and FIG. 30 are flowcharts showing the flow of communication method determination processing performed by the receiving client. The receiving
[0123]
Steps S61 and S62: The receiving
[0124]
Step S63: The receiving
[0125]
Steps S64, S65, S66: The receiving
[0126]
T = (CD-CC) / CD
When T <0, the receiving
[0127]
Steps S68, S69, S610: The receiving
[0128]
Steps S611 and S612: The receiving
[0129]
Steps S613 and S614: The receiving
[0130]
Steps S615 and S616: The receiving
[0131]
Steps S617 and S618: The receiving
[0132]
Steps S619, S620, S621: The receiving
[0133]
Step S622: The receiving
[0134]
After the communication method is determined as described above, the receiving
[0135]
<Other embodiment examples>
(A) There are various factors that affect communication other than those described in the above embodiment. By taking these into consideration and modifying the above-described determination process, various communication method determination methods are possible.
[0136]
(B) A recording medium on which a program for executing the above-described method of the present invention is recorded is included in the present invention. Examples of the recording medium include a computer readable / writable floppy disk, hard disk, semiconductor memory, CD-ROM, DVD, magneto-optical disk (MO), and others.
[0137]
<Appendix>
(Appendix 1)
A communication method switching method for transmitting and receiving information between a plurality of devices connected by a data communication path,
When a predetermined event occurs in the first device, the first communication method is dynamically determined based on the communication environment of the first device,
When a predetermined event occurs in the second device, the second communication method is dynamically determined based on the communication environment of the second device,
Switching the communication method for transmitting information from one device to the other device to either the first communication method or the second communication method;
Switching method of communication method.
[0138]
(Appendix 2)
The switching of the communication method according to
[0139]
In this method, priority is given to the determination on the transmission side. However, as in the case where the transmission side is a server, the transmission side may be able to determine the communication method in consideration of the communication environment of the reception side to some extent.
[0140]
(Appendix 3)
The switching of the communication method according to
[0141]
In this method, priority is given to the determination on the receiving side. For example, in a serverless system, since communication between clients is performed, there may be a case where priority is given to determination on the receiving side.
[0142]
(Appendix 4)
The communication method switching method according to
[0143]
(Appendix 5)
A communication method switching method for transmitting and receiving information between a plurality of devices connected by a data communication path,
When a predetermined event occurs, the first device dynamically determines a first communication method for communicating with the predetermined second device based on the communication environment of the first device,
The first device notifies the determined first communication method to the second device,
The second device determines a second communication method for communicating with the first device based on a communication environment of the second device and the first communication method when a predetermined event occurs,
Switching the communication method for transmitting information from one device to the other device to the second communication method;
Switching method of communication method.
[0144]
(Appendix 6)
A communication method switching device used for a second device connected to a data communication path and transmitting / receiving information to / from the first device,
Means for dynamically determining a communication method based on a communication environment of the second device when a predetermined event occurs in the second device;
Means for negotiating with the first device to determine a communication method with the first device;
Means for switching a communication method for communicating with the first device according to the result of the negotiation with the first device;
A communication system switching device comprising:
[0145]
(Appendix 7)
A communication method switching device used for a second device connected to a data communication path and transmitting / receiving information to / from the first device,
Means for receiving a notification of a first communication method determined by the first device based on a communication environment of the first device when a predetermined event occurs in the first device;
Means for determining a communication method with the first device based on a communication environment of the second device and the first communication method;
Means for switching a communication method for communicating with the first device according to the determination;
A communication system switching device comprising:
[0146]
【The invention's effect】
By using the present invention, it is possible to dynamically switch communication methods according to changes in various factors, effectively use network and computer resources, and reduce communication costs.
[Brief description of the drawings]
FIG. 1 is an overall configuration of an awareness system according to a first embodiment.
FIG. 2 is a conceptual explanatory diagram of information stored in a user DB.
FIG. 3 is a conceptual explanatory diagram of information stored in a server-side setting DB.
FIG. 4 is a conceptual explanatory diagram (1) of information stored in a server-side method DB.
FIG. 5 is a conceptual explanatory diagram (2) of information stored in a server-side method DB.
FIG. 6 is a conceptual explanatory diagram of information stored in a client-side setting DB.
FIG. 7 is a conceptual explanatory diagram of information stored in a client side method DB.
FIG. 8 is a flowchart showing a flow of determination processing (server side).
FIG. 9 is a flowchart (1) showing a flow of addition processing (server side).
FIG. 10 is a flowchart (2) showing the flow of addition processing (server side).
FIG. 11 is a flowchart showing a flow of designation processing (client side).
FIG. 12 is a flowchart showing a flow of communication processing (server side).
FIG. 13 is a flowchart showing a flow of communication processing (client side).
FIG. 14 is an overall configuration of an awareness system according to a second embodiment.
FIG. 15 is a conceptual explanatory diagram of information stored in a server-side setting DB.
FIG. 16 is a conceptual explanatory diagram (1) of information stored in a server-side method DB.
FIG. 17 is a conceptual explanatory diagram (2) of information stored in a server-side method DB.
FIG. 18 is a conceptual explanatory diagram of information accumulated in a client-side news DB.
FIG. 19 is a conceptual explanatory diagram of information stored in a client-side setting DB.
FIG. 20 is a conceptual explanatory diagram of information stored in a client side method DB.
FIG. 21 is an overall configuration of an awareness system according to a third embodiment.
FIG. 22 is a conceptual explanatory diagram of information stored in a user information DB on the transmission side.
FIG. 23 is a conceptual explanatory diagram of information stored in a transmission side setting DB.
FIG. 24 is a conceptual explanatory diagram of information stored in a transmission-side method DB.
FIG. 25 is a conceptual explanatory diagram of information stored in a receiving side setting DB.
FIG. 26 is a conceptual explanatory diagram of information stored in a reception-side method DB.
FIG. 27 is a flowchart (1) showing a flow of designation processing (transmission side).
FIG. 28 is a flowchart (2) showing the flow of the designation process (transmission side).
FIG. 29 is a flowchart (1) showing a flow of determination processing (reception side).
FIG. 30 is a flowchart (2) showing a flow of determination processing (reception side).
[Explanation of symbols]
1: Awareness server
2; Client
3; Network
Claims (4)
前記情報が更新された場合、前記送信装置の状態情報と、前記受信装置から提供された前記受信装置の状態情報とに基づいて、前記情報の通信方式を決定し、 When the information is updated, the communication method of the information is determined based on the state information of the transmitting device and the state information of the receiving device provided from the receiving device,
決定した通信方式がプッシュ方式の場合、前記更新された情報を前記受信装置に送信し、 If the determined communication method is a push method, the updated information is transmitted to the receiving device,
決定した通信方式がノーティファイ方式の場合、更新通知を前記受信装置に送信し、 If the determined communication method is a notify method, an update notification is sent to the receiving device,
決定した通信方式がノーティファイ方式またはプル方式の場合、前記受信装置からの情報取得要求に基づき、前記更新された情報を前記受信装置に送信する通信方法。 A communication method for transmitting the updated information to the receiving device based on an information acquisition request from the receiving device when the determined communication method is a notify method or a pull method.
前記情報が更新された場合、前記送信装置の状態情報と、前記受信装置から提供された前記受信装置の状態情報とに基づいて、前記情報の通信方式を決定する方式決定部と、 When the information is updated, a method determination unit that determines a communication method of the information based on the state information of the transmission device and the state information of the reception device provided from the reception device;
決定した通信方式がプッシュ方式の場合、前記更新された情報を前記受信装置に送信し、 決定した通信方式がノーティファイ方式の場合、更新通知を前記受信装置に送信し、決定した通信方式がノーティファイ方式またはプル方式の場合、前記受信装置からの情報取得要求に基づき、前記更新された情報を前記受信装置に送信する情報送信部と、 When the determined communication method is a push method, the updated information is transmitted to the receiving device. When the determined communication method is a notify method, an update notification is transmitted to the receiving device. In the case of the phi method or the pull method, an information transmitting unit that transmits the updated information to the receiving device based on an information acquisition request from the receiving device;
を備える送信装置。 A transmission apparatus comprising:
前記履歴保存部に記録されている前回の通信方式と前記決定した通信方式とが異なる場合に、前記決定した通信方式を前記受信装置に通知する決定方式通知部と、A determination method notifying unit for notifying the receiving device of the determined communication method when the previous communication method recorded in the history storage unit is different from the determined communication method;
をさらに備える請求項2に記載の送信装置。The transmission device according to claim 2, further comprising:
前記受信装置の状態情報は、前記受信装置の能力、前記受信装置の負荷状況、前記情報の参照頻度、前記受信装置にて設定された通信方式を示す情報のうちの少なくともいずれかを含む、請求項2〜3に記載の送信装置。 The status information of the receiving device includes at least one of the capability of the receiving device, a load status of the receiving device, a reference frequency of the information, and information indicating a communication method set by the receiving device. Item 4. The transmission device according to Item 2-3.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000261630A JP4577803B2 (en) | 2000-08-30 | 2000-08-30 | COMMUNICATION METHOD AND TRANSMITTER |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000261630A JP4577803B2 (en) | 2000-08-30 | 2000-08-30 | COMMUNICATION METHOD AND TRANSMITTER |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002077294A JP2002077294A (en) | 2002-03-15 |
JP4577803B2 true JP4577803B2 (en) | 2010-11-10 |
Family
ID=18749440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000261630A Expired - Fee Related JP4577803B2 (en) | 2000-08-30 | 2000-08-30 | COMMUNICATION METHOD AND TRANSMITTER |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4577803B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11182118B2 (en) * | 2019-05-15 | 2021-11-23 | Canon Kabushiki Kaisha | Image forming apparatus, control method for the same, image forming system and storage medium |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060221857A1 (en) * | 2005-03-31 | 2006-10-05 | Bushnell William J | Method and apparatus for providing enhanced features to multicast content services and multiplayer gaming services |
JP5595503B2 (en) * | 2009-09-09 | 2014-09-24 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | Adapting content transmission in mobile networks |
JP5430410B2 (en) * | 2010-01-05 | 2014-02-26 | キヤノン株式会社 | COMMUNICATION DEVICE AND ITS CONTROL METHOD |
JP6378218B2 (en) * | 2016-01-08 | 2018-08-22 | Necプラットフォームズ株式会社 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND PROGRAM |
JP6760895B2 (en) * | 2017-07-12 | 2020-09-23 | 日本電信電話株式会社 | Network measurement system and network measurement method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000090128A (en) * | 1998-09-08 | 2000-03-31 | Kokusai Electric Co Ltd | Information distribution system |
JP2000134216A (en) * | 1998-10-26 | 2000-05-12 | Nec Eng Ltd | Communication controller and communication control method |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000069075A (en) * | 1998-08-24 | 2000-03-03 | Matsushita Electric Ind Co Ltd | Communication system using awareness, server device and terminal equipment |
-
2000
- 2000-08-30 JP JP2000261630A patent/JP4577803B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000090128A (en) * | 1998-09-08 | 2000-03-31 | Kokusai Electric Co Ltd | Information distribution system |
JP2000134216A (en) * | 1998-10-26 | 2000-05-12 | Nec Eng Ltd | Communication controller and communication control method |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11182118B2 (en) * | 2019-05-15 | 2021-11-23 | Canon Kabushiki Kaisha | Image forming apparatus, control method for the same, image forming system and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP2002077294A (en) | 2002-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Su et al. | The next generation vehicular networks: A content-centric framework | |
TW595180B (en) | Method and system to provide a routing protocol for wireless devices | |
US7990900B2 (en) | Event notification control based on data about a user's communication device stored in a user notification profile | |
US8122085B2 (en) | Email transaction system | |
EP1292081A2 (en) | Presence watcher proxy | |
US20050203905A1 (en) | Method of synchronizing data between server and user terminal using messenger service system and system using the same | |
US20090264104A1 (en) | Multimedia message service method and system | |
EP1655915B1 (en) | Method for managing duplicated arrival notification messages in multimedia messaging services | |
WO2004021232A1 (en) | Method and system for the phased retrieval of data | |
KR20100133945A (en) | Service management system for providing service related message prioritization in a mobile client | |
US20050039048A1 (en) | Efficient new e-mail discovery | |
CN102137087A (en) | Service processing method, method for adjusting delivery content and service nodes | |
JP2018516511A (en) | Load balancing server for transferring priority traffic to one or more priority autoconfiguration servers | |
JP2002015237A (en) | Accounting control system and terminal device | |
JP4577803B2 (en) | COMMUNICATION METHOD AND TRANSMITTER | |
TW200417195A (en) | Communication system and its terminal | |
US7093026B2 (en) | Data transmission system | |
US7792520B2 (en) | Method of transmitting multimedia message in various service environments | |
JP2005149040A (en) | Peer-to-peer communication system | |
CN109714223B (en) | System and method for realizing network service access dynamic load sharing function under NFV architecture | |
US20050130681A1 (en) | Method of managing a communication with multi-server service providing means | |
CN102036122A (en) | Method, device and system for transmitting email information to Internet protocol television (IPTV) terminal | |
KR20050115498A (en) | P2p based video service system and method for providing vod service using the same | |
JP4511059B2 (en) | Data transmission system | |
JP2001339422A (en) | Mail data managing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070725 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20080929 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080930 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091201 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100201 |
|
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: 20100817 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100820 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130903 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |