JP4577803B2 - COMMUNICATION METHOD AND TRANSMITTER - Google Patents

COMMUNICATION METHOD AND TRANSMITTER Download PDF

Info

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
Application number
JP2000261630A
Other languages
Japanese (ja)
Other versions
JP2002077294A (en
Inventor
浩司 大谷
敬史 大野
敏 奥山
潤 角田
陽治 神田
理 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2000261630A priority Critical patent/JP4577803B2/en
Publication of JP2002077294A publication Critical patent/JP2002077294A/en
Application granted granted Critical
Publication of JP4577803B2 publication Critical patent/JP4577803B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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 awareness server 1 and a client 2 are connected via a network 3. Although only one client 2 is shown in the figure, a plurality of clients are normally connected to the network 3.
[0034]
  The awareness server 1 manages the awareness information of users on the network 3 and distributes the awareness information of other users to the client 2. The awareness information is general personal information of the user such as the user status, which communication means the user can use, address, telephone number, mail address, and the like. In this example, when any of the awareness information managed by the awareness server 1 is updated, an example is given for switching the communication method for synchronizing the updated information with the awareness information on the client 2. I will explain.
[0035]
  (1) Awareness server
  The awareness server 1 includes an awareness service module 11, a method determination module 12, a user DB 13, a setting DB 14, and a method DB 15. The awareness service module 11 receives an update of awareness information from the client and stores it in the user DB 13. The awareness service module 11 stores which user's awareness information refers to which user, that is, a buddy list of each user, in the user DB 13. Further, when the awareness information in the user DB 13 is updated, the awareness service module 11 distributes the updated information to the user who is referring to the updated awareness information. The method determination module 12 is a communication method between the server 1 and the client 2 based on dynamically changing factors such as server load, network 3 load, information update frequency, and the communication method designated by the client 2. Switch dynamically.
[0036]
  FIG. 2 is a conceptual explanatory diagram of awareness information stored in the user DB 13. In this example, whether or not “user ID”, “status” and “message” of the user can be received, whether or not “telephone” can be received, and “e-mail” can be received as awareness information. Are stored for each user. The user DB 13 stores a buddy list for each user (not shown). This buddy list defines who is referring to who's awareness.
[0037]
  FIG. 3 is a conceptual explanatory diagram of information stored in the setting DB 14 of the awareness server 1. The setting DB 14 stores (a) an administrator setting data table, (b) a user setting data table, and (c) a reference data table. FIG. 4A is a conceptual explanatory diagram of the administrator setting data table (a). In this table, whether to give priority to throughput or priority to response time is set as a server priority. This setting is performed by the administrator of the awareness server 1.
[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 awareness server 1. The method DB 15 stores (a) a communication history table, (b) a client capability table, (c) a reference information data table, (d) a past method table, and (e) a server capability table. FIG. 4A is a conceptual explanatory diagram of the communication history table (a). In this table, “user ID”, “communication amount”, “communication time (seconds)”, and “charge (yen)” are accumulated. That is, in this table, past communication history is accumulated for each user.
[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 awareness server 1 to the client 2. Specifically, this table stores “buddy ID”, “information item”, “client-side determination method”, “reason”, and “previous method” for each “user ID”. The user is the owner of the buddy list. The client-side determination method is a communication method determined by the user client 2. The previous method is a communication method used for the previous communication between the awareness server 1 and the user client 2.
[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 client 2 includes an awareness client module 21, a method specifying module 22, a setting DB 23, and a method DB 24. The awareness client module 21 accepts setting and updating of awareness information from the user, and transmits it to the awareness server 1. Further, the awareness client module 21 accepts setting and updating of the buddy list and registers them in the awareness server 1. Furthermore, the awareness client module 21 acquires the awareness information of other users registered in the buddy list from the awareness server 1 in response to the occurrence of a predetermined event. The predetermined event is, for example, a user operation or an update of awareness information every predetermined time.
[0046]
  The method designating module 22 determines the optimum communication method for the client 2 based on dynamically changing factors such as the load on the client 2 and the network load.
[0047]
  FIG. 6 is a conceptual explanatory diagram of information stored in the setting DB 23 of the client 2. In this setting DB 23, (a) a user setting data table and (b) a reference setting table are stored.
[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 awareness server 1.
[0050]
  FIG. 7 is a conceptual explanatory diagram of information stored in the method DB 24 of the client 2. In this method DB, (a) a communication history table, (b) a capability table, and (c) a reference information table are stored.
[0051]
  FIG. 4A is a conceptual explanatory diagram of information accumulated in the communication history table. In this table, the communication history of the client 2, specifically, “communication amount (Kbytes / min)”, “communication time (seconds)”, and “charge (yen)” are associated and stored. The contents accumulated in this table are registered in the communication history table (a) in the method DB 15 of the awareness server 1.
[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 method determination module 12 of the awareness server 1 and the method specification module 22 of the client 2 will be specifically described. For ease of explanation, when the awareness information stored in the user DB 13 is updated, a communication method for notifying the user who refers to the updated information of new update information is described below. Whether to determine will be described ((1) Determination of communication method). Accordingly, the awareness server 1 is a transmission side and the client 2 is a reception side device. Next, processing in which the awareness server 1 and the client 2 switch the communication method according to the determination of the communication method will be described ((2) communication processing).
[0055]
  (1) Determination of communication method
  In this example, the client 2 first designates a communication method convenient for the client 2. The awareness server 1 determines the communication method based on the communication method designated by the client 2 and the overall communication status. For simplicity, the communication method is determined from push, pull, or notify.
[0056]
  (1-1) Flow of processing on the awareness server side
  (1-1-1) Server-side determination process
  The awareness server 1 performs the following processing by the method determination module 12 to determine the communication method with the client 2. When the awareness information in the user DB 13 is updated, the awareness server 1 starts the following processing.
[0057]
  Steps S1, S2, S3: The awareness server 1 refers to the reference information data table (c) of the server side method DB 15, and whether or not the client 2 referring to the updated awareness information specifies the communication method. Is determined (S1). If there is an already designated communication method, the awareness server 1 adds 100 points to the method designated by the client 2 among the three methods of push, pull, and notify. If there is no designation method, an addition subroutine described later is executed (S3).
[0058]
  Steps S4, S5, S6: The awareness server 1 adds 100 points to the notify method (S5) when the designation method of the client 2 is the push method and the load of the server 1 is high (S4). Otherwise, 30 points are added to the designation method of the client 2 (S6).
[0059]
  Steps S7, S8, S9: The awareness server 1 determines whether or not the updated awareness information is a notification item, and in the case of the notification item, communicates using the higher point of push or notify. (S8). If it is not a notification item, it is decided to communicate using the method with the highest point among the three methods (S9).
[0060]
  Steps S10 and S11: The awareness server 1 determines whether or not it is necessary to notify the client 2 of the determined communication method (S10). The case where it is necessary is a case where the previous time is a push or notify and this time is a pull. When the current communication method is push or notify, update information or update notification is transmitted to the client 2, so that notification is not necessary. In the case of pulling the previous time and this time as well, there is no need for notification because there is no change in the communication method. If it is determined that it is necessary, the awareness server 1 notifies the client 2 of a new communication method (S11). The client 2 that has received this notification sets a new communication method with the awareness server 1.
[0061]
  By this processing, a communication method based on the situation of the client 2 and the entire system can be set according to the dynamically changing situation.
[0062]
  (1-1-2) Addition process
  9 and 10 are flowcharts showing the flow of processing of the addition processing subroutine performed by the awareness server 1 by the method determination module 12 when the processing proceeds to step S3. In this process, the awareness server 1 determines an optimal communication method based on the situation of the entire system such as its own load, client load, and network load.
[0063]
  Step S401: The awareness server 1 determines whether or not a push method has been used in the past with the client 2 that distributes updated awareness information (S401). This determination is made by referring to the past method table (d) of the server side method DB 15.
[0064]
  If the determination is “Yes”, the awareness server 1 uses the communication charge CC and the charge target CD up to now and adds points to the pull method and the notify method as follows. The communication charge CC and the charge target CD are read from the server side system DB 15 and the setting DB 14, respectively.
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 awareness server 1 proceeds to step S406. Otherwise, the process proceeds to step S409 described later.
[0066]
  Steps S406, S407, and S408: The awareness server 1 refers to the user setting data table (b) in the server side setting DB 14, and determines whether the delivery destination client 2 prioritizes the reference time or the communication fee. (S406). If priority is given to the reference time, 30 points are added to the push method (S407). If the communication fee is given priority, 50 points are added to the pull method and 30 points are added to the notify method (S408).
[0067]
  Steps S409 and S410: The awareness server 1 adds 50 points to the pull method and 30 points to the notify method when the server load is high and the amount of communication is 10 Kbytes or more (S410). ). Otherwise, the process proceeds to S411 in FIG.
[0068]
  Steps S411 and S412: The awareness server 1 determines whether or not the client capability is low and the amount to be communicated is 10 Kbytes or more based on the server side method DB 15 (S411). If “Yes” is determined, 50 points are added to the pull method and 30 points are added to the notify method (S412).
[0069]
  Steps S413 and S414: The awareness server 1 determines whether or not the load on the communication path is high and the update frequency of the awareness information is greater than or equal to a predetermined value (S413). The level of update frequency is performed based on the reference information data table (c) of the server side method DB 15. If "Yes" is determined, 30 points are added to the notify system (S414). In other cases, the process proceeds to step 415.
[0070]
  Steps S415 and S416: If the communication path capability is low and the priority of the distribution destination client 2 is the reference time (S415), the awareness server 1 adds 30 points to the push method (S416).
[0071]
  Steps S417 and S418: If the updated information is important information, the awareness server 1 adds 50 points to the push method (S417) and returns to the determination process. Otherwise, the process returns to the determination process.
[0072]
  (1-2) Client side method designation processing
  FIG. 11 is a flowchart showing a flow of communication method designation processing performed by the client 2. The client 2 determines the optimum communication method for itself by the following processing and notifies the awareness server 1 of it. The awareness server 1 that has received this notification finally determines the communication method by the method described above.
[0073]
  Step S21: The method designation module 22 of the client 2 waits for the occurrence of a predetermined event, and when the predetermined event occurs, the process proceeds to step S22. The predetermined event is an instruction to acquire buddy awareness information from the user, elapse of a predetermined time, a change in the status of the client 2, or the like.
[0074]
  Steps S22 and S23: The client 2 determines whether the communication method is set by the user (S22). If it is set, it is decided to designate the method (S23). If not, the process proceeds to step S26 described later.
[0075]
  Steps S24, S25, S26: The client 2 determines whether or not the designated communication method is to change the designated communication method so far (S24). It is determined whether or not it is necessary to notify 1 (S25). The case where it is necessary is a case where the push or notify method is changed to the pull method or vice versa. If it is determined that there is no change, the process returns to step S21 again to wait for the next event to occur.
[0076]
  If it is determined in step S25 that “notification is required”, the client 2 notifies the awareness server 1 of the designated method. If it is determined that “no need”, the process returns to step S21 again to wait for the next event to occur.
[0077]
  Step S27: When the communication method is not set by the user, the client 2 designates the push method based on the method DB 24 when the frequency of referring to the buddy awareness information is greater than or equal to a predetermined value (S27). If not, it is determined based on the method DB 24 whether the load on the client 2 is high (S29). If the load on the client 2 is high, the notify method is selected (S210), and if the load on the client 2 is not high. The determination method of the awareness server 1 is designated (S211).
[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 awareness server 1 by the method determination module 12. By this processing, the awareness server 1 switches the communication method with the client 2 to the determined one. The awareness server 1 starts the following process when the awareness information is updated.
[0079]
  Steps S31 and S32: When the communication method is the push method (S31), the awareness server 1 transmits updated awareness information (hereinafter referred to as update information) to the distribution destination client 2 (S32).
[0080]
  Steps S33 and S34: When the communication method is the notify method (S33), the awareness server 1 transmits an update notification to the distribution destination client 2 (S34).
[0081]
  Steps S35, S36, S37: When the communication method is the pull method, the awareness server 1 waits for a pull request from the distribution destination client 2 (S36), and waits for this to transmit update information (S37).
[0082]
  (2-2) Client side communication processing
  FIG. 13 is a flowchart showing the flow of communication processing performed by the client 2 using the method designation module 22. By this processing, the client 2 switches the communication method with the awareness server 1 to the determined one. The client 2 starts the following processing in response to a reference instruction for awareness information from the user.
[0083]
  Steps S41, S42, S43, S44: When the communication method is the pull method (S41), the client 2 transmits a pull request to the awareness server 1 (S42). Next, the server waits for update information from the server 1 (S43). When this information is received, the old awareness information is updated (S44).
[0084]
  Steps S45, S46, S47, S48, S49: When the communication method is other than the pull method, the client 2 determines whether there is an update mark in the buddy's awareness information (S45). Since it is the latest information, the process is terminated. If there is, the same processing as in steps S42 to S44 is performed (S46 to 48), and the update mark of the updated awareness information is deleted (S49).
[0085]
  As described above, the awareness server 1 and the client 2 communicate using the switched communication method.
[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 news server 10 and a client 20 via a network 30.
[0087]
  The news server 10 has a news DB 103 instead of the user DB 13 and a news distribution module 101 instead of the awareness service module 11. Other components are the same as those of the awareness server 1. The news distribution module 101 distributes to the client 2 when the news stored in the server-side news DB 103 is updated. Which news is distributed to which client is determined by referring to a table set in advance by the user.
[0088]
  The client 20 has a receiving module 201 for receiving news instead of the awareness client module 21. Furthermore, it has news DB205 which accumulate | stores the received news. Other components are the same as those in the first embodiment.
[0089]
  FIG. 15 is a conceptual explanatory diagram of information stored in the server-side setting DB 104. As in the first embodiment, the setting DB 104 stores (a) an administrator setting data table, (b) a user setting data table, and (c) a reference data table. Information stored in the administrator setting data table (a) and the user setting data table (b) is the same as in the first embodiment.
[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 news server 10. In this DB, (a) a communication history table, (b) a client capability table, (c) a reference information data table, (d) a past method table, and (e) a server capability table are accumulated. Except for the reference information data table (c) and the past method table (d), the same information as in the first embodiment is stored.
[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 news DB 205 of the client 20. In this DB, the category of “news” designated by the user and its “content” are stored.
[0095]
  FIG. 19 is a conceptual explanatory diagram of information stored in the setting DB 203 of the client 20. In this DB, (a) a user setting data table and (b) a reference setting data table are stored. The user setting data table (a) stores the same information as in the first embodiment. The reference setting table (b) stores “reference news” instead of “buddy ID” and “reference item”, and “notification news” instead of “notification item”. Information similar to that in the embodiment is accumulated.
[0096]
  FIG. 20 is a conceptual explanatory diagram of information stored in the method DB 204 of the client 20. In this DB, (a) a communication history table, (b) a capability table, and (c) a reference information table are stored. Information stored in the communication history table (a) and the capability table (b) is the same as in the first embodiment. The information stored in the reference information table stores the same information as in the first embodiment except that “reference news” is described instead of “buddy ID” and “information item”.
[0097]
  [Process flow]
  In the present embodiment example, the processing performed by the news server 10 and the client 20 by the method determining module 102 and the method specifying module 202 is the same as in the first embodiment example.
[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 awareness clients 120a, b. In this system, a user's awareness information is temporarily held in the user's client. After that, the awareness information is synchronized with clients of other users who designate the user as a buddy.
[0100]
  For ease of explanation, it is assumed that user A and user B have registered their opponents in their buddy lists. The client 120a indicates the client of the user A, and the client 120b indicates the client of the user B. Further, a case where the client 120a is the transmission side and the client 120b is the reception side will be described. However, the client on the transmission side is also provided with the function and database on the reception side, and vice versa.
[0101]
  Both the sending client 120a and the receiving client 120b have an awareness client module 121, a setting DB 123, and a system DB 124. In addition, the transmission side client 120 a has a method designation module 126 and a user information DB 125, and the reception side client 120 b has a method determination module 122. The method designation module 126 designates the optimum communication method for the transmitting client 120a and notifies the receiving client 120b. The method determination module 122 determines a communication method based on a transmission-side designation method and the convenience of the reception-side client 120b.
[0102]
  FIG. 22 is a conceptual explanatory diagram of user A's own awareness information stored in the user information DB 125 of the transmitting client 120a. This DB information is transmitted to the receiving client 120b. In this example, this DB stores whether “user status”, “message” can be received, “phone” can be received, and “e-mail” can be received. . As the “user status”, data representing the status of the user such as being present, absent, busy, etc. is stored.
[0103]
  FIG. 23 is a conceptual explanatory diagram of information stored in the setting DB 123 of the transmission-side client 120a. This DB stores which awareness information of the user A is distributed to the users B, C,. These pieces of information are assumed to have been sent from the receiving client 120b in advance.
[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 method DB 124 of the transmission client 120a. In this DB, (a) a communication history table, (b) a reference information data table, (c) a past method table, and (d) a communication information table are stored. Of these, the communication history table (a) corresponds to the communication history table of FIG. 4, the reference information data table (b) corresponds to the reference information data table of FIG. 4, and the past method table (c) corresponds to the past method table of FIG. .
[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 DB 123 of the receiving client 120b. This DB stores (a) a user setting data table and (b) a reference setting table. These tables store the same contents as the user setting data table and the reference setting data table of FIG.
[0109]
  FIG. 26 is a conceptual explanatory diagram of information stored in the method DB 124 of the receiving client 120b. In this DB, (a) a communication history table, (b) a capability table, and (c) a reference information table are stored. These tables store the same contents as the tables stored in the client side method DB of FIG.
[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 client 120a uses the method designation module 126 to perform the following processing. The transmission-side client 120a starts the following process when the user's awareness information is updated.
[0112]
  Steps S51 and S52: The sending client 120a refers to the method DB 124, and if the previous communication amount with the client 120b is less than 100 bytes / minute (S51), adds 20 points to the push method (S52).
[0113]
  Steps S53 and S54: The sending client 120a refers to the method DB 124, and if the previous communication time with the client 120b is less than 2 seconds on average (S53), 10 points are added to the push method (S54).
[0114]
  Steps S55 and S56: The sending client 120a refers to the method DB 124, and when the amount to be communicated is 10 Kbytes or more and the communication path capacity is medium or less (S55), 10 points are added to the push method (S56). .
[0115]
  Steps S57 and S58: The transmitting client 120a refers to the method DB 124, and when the transmitting side has a high load and the amount of communication is 10 Kbytes or more (S57), the pull method has 20 points and the notify method has 10 points. Are respectively added (S58).
[0116]
  Steps S59 and S510: The transmission side client 120a refers to the method DB 124, and when its own capability is low and the amount to be communicated is 10 Kbytes or more (S59), 20 points for the pull method and 10 points for the notify method Are respectively added (S510).
[0117]
  Steps S511 and S512: The transmission-side client 120a refers to the method DB 124 and determines whether the load on the communication path is high and the update frequency of the awareness information to be transmitted is equal to or higher than a predetermined value. Here, if the update frequency is 100 times or more per hour (S511), 30 points are added to the notify method (S512).
[0118]
  Steps S513 and S514: If the updated awareness information of the user A is important information (S513), the transmission-side client 120a adds 30 points to the push method (S514).
[0119]
  Steps S515, S516, S517: The transmitting client 120a determines whether or not the updated awareness information is specified in the notification item of the receiving user B (S515). In the case of the notification item, the sending client 120a uses the push method or the notify method with the higher point as the designation method (S516). If it is not a notification item, the designation method is the one with the highest point among the push, notify, and pull methods (S517).
[0120]
  Steps S518 and S519: The transmission-side client 120a refers to the method DB 124, and determines whether or not the designated method or its decision reason is different from the previous time (S518). If they are different, an inquiry is transmitted to the receiving client 120b (S519). This inquiry describes the communication method designated by the sending client 120a.
[0121]
  Steps S520 and S521: The transmitting client 120a waits for a communication method response from the receiving client 120b (S520), and determines the communication method notified by the answer as the final communication method (S521).
[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 client 120b uses the method determining module 122 to determine the communication method based on the communication method designated by the transmitting client 120a and its own situation. The receiving client 120b starts the following process when a predetermined event occurs. The predetermined event is when there is an inquiry about a communication method from the sending client 120a, or when its own situation changes every predetermined time.
[0123]
  Steps S61 and S62: The receiving client 120b determines whether or not there is a designated method of the transmitting client 120a (S61), and if there is, adds 100 points to the communication method (S62).
[0124]
  Step S63: The receiving client 120b adds 50 points to the communication method designated by the transmitting client 120a.
[0125]
  Steps S64, S65, S66: The receiving client 120b determines whether or not the previous communication with the transmitting client 120a is a push method (S64). In the case of the push method, the following processing is performed depending on whether T <0 (S65). Here, T is expressed as follows using the communication charge CC and the charge target CD up to now. The communication charge CC and the charge target CD are read from the setting DB 123 and the system DB 124.
[0126]
  T = (CD-CC) / CD
  When T <0, the receiving client 120b adds 200 points to the pull method and 100 points to the notify method (S66). When T ≧ 0, the receiving client 120b adds (T × 200) points to the pull method and (T × 100) points to the notify method (S67).
[0127]
  Steps S68, S69, S610: The receiving client 120b refers to the setting DB 123 and determines whether or not the reference time has priority (S68). If the reference time is given priority, the receiving client 120b adds 30 points to the push method (S69). Otherwise, 50 points are added to the pull method and 30 points are added to the notify method (S610).
[0128]
  Steps S611 and S612: The receiving client 120b refers to the method DB 124 and determines whether or not its own load is high (S611). When the load is high, 20 points are added to the pull method and 10 points are added to the notify method (S612).
[0129]
  Steps S613 and S614: The receiving client 120b refers to the method DB 124 and determines whether or not its capability is low (S613). If the ability is low, 10 points are added to the pull method and 5 points are added to the notify method (S614).
[0130]
  Steps S615 and S616: The receiving client 120b refers to the method DB 124 and determines whether or not the reference frequency for referring to the awareness information of the user A is not less than a predetermined value, for example, 20 (times / hour) (S615). If it is equal to or greater than the predetermined value, the receiving client 120b adds 30 points to the push method and 20 points to the notify method (S616).
[0131]
  Steps S617 and S618: The receiving client 120b refers to the method DB 124 and the setting DB 123, and determines whether or not the communication path capability is low and the receiving user B prioritizes the reference time (S617). If so, the receiving client 120b adds 10 points to the push method (S618).
[0132]
  Steps S619, S620, S621: The receiving client 120b determines whether or not the user B has designated the updated awareness information of the user A as a notification item based on the setting DB 123 (S619). In the case of the notification item, the receiving client 120b determines the higher communication point of the push method or the notify method as the final communication method (S620). If it is not a notification item, the push method, notify method, or pull method having the highest point is determined as the final communication method (S621).
[0133]
  Step S622: The receiving client 120b notifies the transmitting client 120a of the determined final communication method, and ends the process.
[0134]
  After the communication method is determined as described above, the receiving client 120b and the transmitting client 120a switch the communication method to the determined method. This process is the same as the communication process on the server side and the client side in the first embodiment.
[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 appendix 1, wherein when the first device is an information transmission side, the communication method for transmitting information from one device to the other device is switched to the communication method determined by the first device. Method.
[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 appendix 1, wherein when the first device is an information receiving side, the communication method for transmitting information from one device to the other device is switched to the communication method determined by the first device. Method.
[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 appendix 1, wherein the first and second devices determine the first and second communication methods from any one of push, notify, and pull communication methods.
[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)

データ通信路により接続された送信装置と受信装置との間で、プッシュ、ノーティファイ、またはプル方式のいずれかの通信方式で情報の通信を行う場合の前記送信装置が実行する通信方法であって、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,
決定した通信方式がノーティファイ方式またはプル方式の場合、前記受信装置からの情報取得要求に基づき、前記更新された情報を前記受信装置に送信する通信方法。  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.
データ通信路により接続された送信装置と受信装置との間で、プッシュ、ノーティファイ、またはプル方式のいずれかの通信方式で情報の通信を行う通信システムに用いられる送信装置であって、A 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,
前記情報が更新された場合、前記送信装置の状態情報と、前記受信装置から提供された前記受信装置の状態情報とに基づいて、前記情報の通信方式を決定する方式決定部と、  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:
前記方式決定部は、決定した通信方式を記録しておく履歴保存部と、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;
をさらに備える請求項2に記載の送信装置。The transmission device according to claim 2, further comprising:
前記送信装置の状態情報は、送信装置の能力、送信装置の負荷状況、または前記情報の更新頻度を示す情報のうちの少なくともいずれかを含み、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,
前記受信装置の状態情報は、前記受信装置の能力、前記受信装置の負荷状況、前記情報の参照頻度、前記受信装置にて設定された通信方式を示す情報のうちの少なくともいずれかを含む、請求項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.
JP2000261630A 2000-08-30 2000-08-30 COMMUNICATION METHOD AND TRANSMITTER Expired - Fee Related JP4577803B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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&#39;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