以下、実施形態について図面を参照しつつ説明する。なお、本出願において図面参照符号を付している場合は、それらは、専ら理解を助けるためのものであり、図示の態様に限定することを意図するものではない。なお、下記の実施形態は、あくまで例示であり、本発明を限定するものではない。
[実施形態1]
実施形態1に係る電子メール遅延抑制システムについて図面を用いて説明する。図1は、実施形態1に係る電子メール遅延抑制システムの構成を模式的に示したブロック図である。図2は、実施形態1に係る電子メール遅延抑制システムにおける第1メールサーバと通信手段群との間の構成を模式的に示したブロック図である。図3は、実施形態1に係る電子メール遅延抑制システムにおける第2メールサーバと通信手段群との間の構成を模式的に示したブロック図である。図4は、実施形態1に係る電子メール遅延抑制システムにおける第1メールサーバの記憶部のメールデータの構成の一例を示したイメージ図である。図5は、実施形態1に係る電子メール遅延抑制システムにおける第1メールサーバの記憶部のデータベースの通信手段特定テーブルの構成の一例を示したイメージ図である。図6は、実施形態1に係る電子メール遅延抑制システムにおける第1メールサーバの記憶部のデータベースの通信状態テーブルの構成の一例を示したイメージ図である。図7は、実施形態1に係る電子メール遅延抑制システムにおける第1メールサーバの記憶部のデータベースの文字列優先順位テーブルの構成の一例を示したイメージ図である。図8は、実施形態1に係る電子メール遅延抑制システムにおける第1メールサーバの記憶部のデータベースのメールアドレス優先順位テーブルの構成の一例を示したイメージ図である。
電子メール遅延抑制システム1は、第1端末700と第2端末800との間で電子メールを送受信することが可能なシステムである(図1参照)。電子メール遅延抑制システム1は、第1メールサーバ100と第2メールサーバ200との間の通信手段群300における通信手段を切り替えることにより電子メールの遅延を抑制する機能を有する。電子メール遅延抑制システム1は、第1メールサーバ100と、第2メールサーバ200と、通信手段群300と、第1端末700と、第2端末800と、を有する。
第1メールサーバ100は、通信手段群300における通信手段を切り替えることにより電子メールの遅延を抑制する機能を有する電子メール遅延抑制装置である(図1、図2参照)。第1メールサーバ100は、1台に限らず、複数台あってもよい。第1メールサーバ100は、所定のソフトウェア又はプログラムを実行することで電子メールに関する情報処理を行う。第1メールサーバ100は、記憶部110と、制御部120と、入力部130と、出力部140と、通信手段切替部150と、モデム151と、DSU152と、第1ONU153と、第2ONU154と、VDSL155と、携帯電話通信部156と、を備える。なお、モデム151、DSU152、第1ONU153、第2ONU154、VDSL155及び携帯電話通信部156は、第1メールサーバ100の外付けでもよい。
記憶部110は、各種データ、ファイル等を記憶する機能部である(図2)。記憶部110は、メールサーバソフトウェア111と、メールデータ112と、電子メール遅延抑制プログラム113と、データベース114と、を記憶する。
メールサーバソフトウェア111は、メールサーバを構築するためのソフトウェアである。メールサーバソフトウェア111は、制御部120で実行されることで、「SMTP:Simple Mail Transfer Protocol(シンプルメールトランスファープロトコル)、「POP3:Post Office Protocol 3(ポストオフィスプロトコル3)」等に従って、電子メールの送受信を実行させる。メールサーバソフトウェア111は、電子メールをヘッダ部情報112a、メール本文情報112b及び添付ファイル情報112cに分けて関連付けてメールデータ112として記憶部110に記憶させる(図2、図4参照)。
メールデータ112は、第1メールサーバ100で受信された電子メールに関するデータである(図2、図4参照)。メールデータ112は、ヘッダ部情報112a、メール本文情報112b及び添付ファイル情報112cを関連付けられている。ヘッダ部情報112aは、メールサーバソフトウェア111によって電子メールのヘッダ部から抽出されて書き込まれた情報である。メール本文情報112bは、メールサーバソフトウェア111によって電子メールの本文から抽出されて書き込まれた情報である。添付ファイル情報112cは、メールサーバソフトウェア111によって電子メールの添付ファイルから抽出されて書き込まれた情報である。メールデータ112は、送信者(例えば、顧客)ごとに管理してもよい。
電子メール遅延抑制プログラム113は、電子メールの遅延を抑制するプログラムである(図2参照)。電子メール遅延抑制プログラム113は、制御部120で実行されることで、受信した電子メールの遅延に応じて、通信手段の切替を行わせる。また、電子メール遅延抑制プログラム113は、制御部120で実行されることで、受信した電子メールに含まれる文字列に応じて、返信する電子メールを優先的に送信させる。電子メール遅延抑制プログラム113を制御部120で実行した時の動作の詳細な説明は、後述する。
データベース114は、通信手段の切替、優先順位に関する情報を含むデータベースである(図2参照)。データベース114は、通信手段特定テーブル114aと、通信状態テーブル114bと、文字列優先順位テーブル114cと、メールアドレス優先順位テーブル114dと、を有する(図2、図5〜図8参照)。
通信手段特定テーブル114aは、通信手段、ドメイン名、IPアドレスを互いに関連付けたテーブルである(図5参照)。通信手段特定テーブル114aは、電子メールのヘッダ部からドメイン名又はIPアドレスを入手して、電子メールの通信経路に用いられた通信手段を特定するときに用いられる。
通信状態テーブル114bは、通信手段、通信速度、通信時間を互いに関連付けたテーブルである(図6参照)。通信状態テーブル114bは、受信した電子メールの通信経路に用いられた通信手段に遅延が生じたときに通信手段を切り替えるときに用いられる。
文字列優先順位テーブル114cは、予め定めた文字列に優先順位を関連付けたテーブルである(図7参照)。文字列優先順位テーブル114cは、受信した電子メールに含まれる文字列の優先順位を確認するために用いられる。文字列優先順位テーブル114cは、例えば、図7のように、障害度を示す文字列「緊急」、「大至急」、「至急」、「急ぎ」、「業務停止」、「停止」に優先順位を関連付けたものとすることができる。また、予め定めた文字列として、アラームを示す文字列、重要度を示す文字列「Importance:High」、「Importance:Normal」、「Importance:Low」、優先度を示す文字列「Priority:High」、「Priority:Normal」、「Priority:Low」などの文字列等のキーワードを用いることができる。
メールアドレス優先順位テーブル114dは、メールアドレスに優先順位を関連付けたテーブルである(図8参照)。メールアドレス優先順位テーブル114dは、電子メールを返信するときに優先度の高い電子メールから返信するように送信待ち順を並び替えるときに用いられる。
制御部120は、記憶部110、入力部130、出力部140及び通信手段切替部150を制御する機能部である(図2参照)。制御部120は、プログラム、ソフトウェアを実行することで、各機能部を制御したり、情報処理を行う。制御部120は、記憶部110でのデータやファイル等の読み込み、書込み等を制御する。制御部120は、入力部130で入力された情報を取り込むように制御する。制御部120は、出力する情報を、出力部140から出力するように制御する。制御部120は、通信手段切替部150での情報の送受信を制御するとともに、通信手段群300における通信手段を切り替えるように通信手段切替部150を制御する。制御部120は、メールサーバソフトウェア111を実行することで、電子メールの送受信処理を行う。制御部120の電子メール遅延抑制プログラム113を実行した時の動作の詳細な説明は、後述する。
入力部130は、情報を入力するための機能部である(図2参照)。入力部130には、例えば、キーボード、マウス、タッチパネル、マイク、その他の入力手段を用いることができる。
出力部140は、情報を出力するための機能部である(図2参照)。出力部140には、例えば、表示を行うディスプレイ、印刷を行うプリンタ、所定の端末等へ送信を行う通信器)等の出力手段を用いることができる。
通信手段切替部150は、通信手段(通信手段群300における通信手段)を切り替える機能を有する通信部である(図2参照)。通信手段切替部150は、制御部120と通信可能に接続されている。通信手段切替部150は、通信手段群300から通信手段切替部150への入力経路で、モデム151、DSU152、第1ONU153、第2ONU154、VDSL155及び携帯電話通信部156の全てと通信可能に接続されている。通信手段切替部150は、通信手段切替部150から通信手段群300への出力経路で、モデム151、DSU152、第1ONU153、第2ONU154、VDSL155及び携帯電話通信部156のいずれか1つと切り替え可能に通信可能に接続される。なお、通信手段切替部150は、図面のように6つのインタフェース151〜156に限らず、少なくとも2つ以上のインタフェースと接続されていればよく、7つ以上のインタフェースと接続されていてもよい。
モデム(modem)151は、アナログ回線310と通信可能に接続される変復調装置であり、加入者側に置かれるインタフェースである(図2参照)。DSU(Digital Service Unit)152は、ISDN回線と通信可能に接続される回線終端装置であり、加入者側に置かれるインタフェースである(図2参照)。ONU(Optical Network Unit)153、154は、対応するキャリア通信回線330、340と光通信可能に接続される回線終端装置であり、加入者側に置かれるインタフェースである(図2参照)。VDSL(Very high-bit-rate Digital Subscriber Line)155は、ONU370と超高速デジタル通信可能に接続される回線終端装置であり、加入者側に置かれるインタフェースである(図2参照)。携帯電話通信部156は、携帯電話通信回線360と無線通信可能に接続される回線終端装置であり、加入者側に置かれるインタフェースである(図2参照)。
第2メールサーバ200は、通信手段群300における通信手段を切り替えることにより電子メールの遅延を抑制する機能を有する電子メール遅延抑制装置である(図1、図3参照)。第2メールサーバ200は、1台に限らず、複数台あってもよい。第2メールサーバ200は、所定のソフトウェア又はプログラムを実行することで電子メールに関する情報処理を行う。第2メールサーバ200は、第1メールサーバ100の機能部と同様に、記憶部210と、制御部220と、入力部230と、出力部240と、通信手段切替部250と、モデム251と、DSU251と、第1ONU253と、第2ONU254と、VDSL255と、携帯電話通信部256と、を有する。なお、第2メールサーバ200の各構成部については、図2の第1メールサーバ100の各構成部と同様である。また、VDSL255は、ONU380と超高速デジタル通信可能に接続される。
通信手段群300は、複数の通信手段で構成される(図1〜図3参照)。通信手段群300は、通信手段として、アナログ回線310、ISDN回線320、第1キャリア通信回線330、第2キャリア通信回線340、第3キャリア通信回線350、携帯電話通信回線360を含む。なお、通信手段群300は、少なくとも2つ以上の通信手段含んでいればよく、7つ以上の通信手段を含んでいてもよい。
アナログ回線310は、アナログ信号でデータを通信するアナログ電話回線であり、モデム151、251と通信可能に接続される通信手段である(図2、図3参照)。ISDN(Integrated Services Digital Network)回線320は、デジタル信号でデータを通信する統合デジタル通信回線であり、DSU152、252と通信可能に接続される通信手段である(図2、図3参照)。第1キャリア通信回線330は、光通信可能な第1キャリアが使用する通信回線であり、第1ONU153、253と光通信可能に接続される通信手段である(図2、図3参照)。第2キャリア通信回線340は、光通信可能な第2キャリアが使用する通信回線であり、第2ONU154、254と光通信可能に接続される通信手段である(図2、図3参照)。第3キャリア通信回線350は、光通信可能な第3キャリアが使用する通信回線であり、ONU370と光通信可能に接続され、かつ、ONU380と通信可能に接続される通信手段である(図2、図3参照)。携帯電話通信回線360は、携帯電話可能なキャリアが使用する通信回線であり、携帯電話通信部156、256と無線通信可能に接続され、かつ、第1〜第3キャリア通信回線330、340、350を含むネットワーク390と通信可能に接続される通信手段である(図2、図3参照)。ONU370は、第3キャリア通信回線350と光通信可能に接続される回線終端装置であり、VDSL155と超高速デジタル通信可能に接続される通信手段の一部である(図2参照)。ONU380は、第3キャリア通信回線350と光通信可能に接続される回線終端装置であり、VDSL255と超高速デジタル通信可能に接続される通信手段の一部である(図3参照)。
ここで、第1〜第3キャリア通信回線330、340、350は、ネットワーク390の大部分を他のキャリア通信回線に依存せず、コアネットワーク(バックボーン)を持つキャリア通信回線であり、キャリア通信回路の所定割合以上、他のキャリア通信回線のネットワークを通らないで通信可能なキャリア通信回線である(図2、図3参照)。なお、コアネットワークとは、ネットワークが通信の中枢として用いる大容量の通信回線をいい、バックボーン、基幹回線網と言うことがある。
また、第1メールサーバ100から第2メールサーバ200へ電子メールを送信する場合、複数のキャリア通信回線330、340、350が、1か所のゲート等を通らなければならない場合、そのゲート等で、障害等の通信が遅延する状態が発生した場合は、どのキャリア通信回線330、340、350でも、同様の遅延が発生するが、全ての場合に当てはまるのではなく、別のキャリア通信回線を選択して切り替えることで、ほとんどの場合、通信速度や通信時間が変わる。なお、どのキャリア通信回線330、340、350を選択しても通信の遅延が解消しない場合は、キャリア通信回線330、340、350以外の通信手段を選択して切り替えることができる。
NTP(Network Time Protocol)サーバ600は、通信手段群300を通じて正しい現在時刻を提供するサーバ装置である(図1参照)。NTPサーバ600は、通信手段群300上の機器、通信手段群300に接続される機器の時計を正しい現在時刻に同期させるためのプロトコルを採用する。NTPサーバ600は、他の機器からの要求に応じて、日本標準時(JST:Japan Standard Time;国立研究開発法人情報通信研究機構が提供する日本標準時)、協定世界時(UTC:Coordinated Universal Time)、国際原子時(TAI:International Atomic Time)等の現在時刻を提供する。なお、実施形態1ではNTPサーバ600を使用しているが、正確な現在時刻を得られれば、他の手段を用いても構わない。
第1端末700は、少なくとも電子メールの送受信、入出力等のメール機能を有する情報端末である(図1参照)。第1端末700は、複数台あってもよい。第1端末700は、通信手段群300のいずれか1つの通信手段(310、320、330、340、350、360)を介して第1メールサーバ100と通信可能に接続される。
第2端末800は、少なくとも電子メールの送受信、入出力等のメール機能を有する情報端末である(図1参照)。第2端末800は、複数台あってもよい。第2端末800は、通信手段群300のいずれか1つの通信手段(310、320、330、340、350、360)を介して第2メールサーバ200と通信可能に接続される。
実施形態1に係る電子メール遅延抑制システムの動作について説明する。
最初に、第1端末700から第2端末800に電子メールを送信するときの第2メールサーバ200の動作について図面を用いて説明する。図9は、実施形態1に係る電子メール遅延抑制システムにおける第2メールサーバの制御部の第1端末から第2端末に電子メールを送信するときの動作を模式的に示したフローチャートである。
ここでは、第2メールサーバ200の制御部220において電子メール遅延抑制プログラム213を実行しているときの動作を例に説明する。
まず、第2メールサーバ200の制御部220は、メールサーバ(第1メールサーバ100以外の同種のメールサーバでもよい)からの電子メールを受信したか否かを判断する(ステップA1)。メールサーバからの電子メールを受信していない場合(ステップA1のNO)、ステップA1に戻る。
メールサーバからの電子メールを受信した場合(ステップA1のYES)、第2メールサーバ200の制御部220は、受信した電子メールの通信時間及び通信速度を算出する(ステップA2)。
ここで、電子メールの通信時間は、制御部220が管理している現在時刻と、受信した電子メールのヘッダ部に含まれる送信時刻(ここでは電子メールが第1メールサーバ100で送信されたときの時刻;図4のヘッダ部情報112aの「Date」部分の時刻に相当)と、の時間差から算出することができる。
また、通信速度は、受信した電子メールのヘッダ部に含まれるデータサイズ(図示せず;図4のヘッダ部情報112aに相当するものに含まれる)を、算出された通信時間で割ることで算出することができる。
また、現在時刻は、制御部220が、通信手段群300を通じて、NTPサーバ600の標準時刻を定期的又は常に取得して、取得した標準時刻と同期をとることにより、制御部220で管理される。なお、現在時刻は、ここでは第2メールサーバ200と第1端末700が同じ地域(国)にあることを想定した現在時刻であるが、電子メールが送信された地域の標準時刻とすることができ、第2メールサーバ200が所在する地域の標準時刻に基づいて電子メールが送信された地域の標準時刻を算出してもよい。
さらに、第2メールサーバ200の制御部220は、電子メールを受信したときに、実行されているメールサーバソフトウェア211によって、受信した電子メールを、ヘッダ部情報(図4の112aに相当)、メール本文情報(図4の112bに相当)及び添付ファイル情報(図4の112cに相当)に分けて関連付けてメールデータ212として記憶部210に記憶させ、受信した電子メールを第2端末800に送信することになる。
ステップA2の後、第2メールサーバ200の制御部220は、受信した電子メールのヘッダ部からドメイン名及びIPアドレス(どちらか一方でも可)を抽出する(ステップA3)。
ここで、電子メールのヘッダ部の「Received」フィールドには、電子メールが通ったサーバのドメイン名及びIPアドレスを含む。
ステップA3の後、第2メールサーバ200の制御部220は、通信手段特定テーブル(図5の114aに相当)から、抽出されたドメイン名及びIPアドレスに対応する通信手段を抽出する(ステップA4)。なお、ステップA3、A4は、ステップA2よりも先に行ってもよい。
ここで、通信手段特定テーブル(図5の114aに相当)は、通信手段を特定するためのテーブルであり、ドメイン名及びIPアドレスに通信手段が関連付けられて記憶部210に格納されている。
ステップA4の後、第2メールサーバ200の制御部220は、算出した通信時間及び通信速度を、抽出した通信手段と関連付けてデータベース214の通信状態テーブル(図6の114bに相当)に書込んで記憶部210に記憶させる(ステップA5)。
ステップA5の後、第2メールサーバ200の制御部220は、算出した通信時間が所定時間を超えているか否かを判断する(ステップA6)。
ここで、所定時間は、予め定めた時間や、受信した電子メール(遅延通知でも可)よりも前に受信した複数の電子メールの通信時間の平均値とすることができる。また、通信時間の平均値の基準となる複数の電子メールは、受信間隔が所定時間以上離れた複数の電子メールを用いることができる。これは、短い間隔で連続した電子メールでは、大容量ファイルの通信による一時的な遅延か否かの判断が困難である場合があるからである。また、通信時間の平均値の基準となる複数の電子メールは、複数の電子メールの通信時間が長い上位から所定順位までの通信時間に係る電子メールを除外することができる。所定時間を通信時間の平均値とする場合、ステップA5の後の任意の時点で通信時間の平均値を算出し、算出した通信時間の平均値を記憶部210に記憶するようにしてもよい。
算出した通信時間が所定時間を超えていない場合(ステップA6のNO)、第1メールサーバ100が電子メールを送信したときに使用した通信手段で遅延が発生していないとして、出力経路の通信手段をそのままにして、ステップA9に進む。
通信時間が所定時間を超えている場合(ステップA6のYES)、第2メールサーバ200の制御部220は、第2メールサーバ200が電子メールを送信したときに使用した通信手段で遅延が発生していると判断し、データベース214において、算出された通信時間よりも短い通信時間に係る通信手段を選択し、出力経路が選択した通信手段に切り替わるように通信手段切替部250を制御する(ステップA7)。
ここで、通信手段の選択では、通信時間が最短の通信手段を選択してもよく、予め定めた時間以内の通信手段のいずれかを選択してもよい。また、上記条件を満たす通信キャリアや通信手段が複数である場合、通信速度が最も速い通信手段を選択してもよい。
また、第1メールサーバ100から第2メールサーバ200へ電子メールを返信するときの通信手段に係る通信時間は、同じ通信手段を使用する限り、第2メールサーバ200から第1メールサーバ100へ電子メールが送信されたときの対応する通信手段に係る通信時間とほぼ同じになると考えられる。そのことから、ステップA7では、第1メールサーバ100から第2メールサーバ200へ電子メールが送信されたときの通信手段に係る通信時間よりも短い通信時間に係る通信手段を選択している。
ステップA7の後、第2メールサーバ200の制御部220は、第1メールサーバ100が電子メールを送信したときに使用した通信手段で遅延が発生している旨と、選択した通信手段と、を知らせる遅延通知(電子メール)を生成し、生成した遅延通知を、選択した通信手段を介して第1メールサーバ100に返信する(ステップA8)。
なお、ステップA8では第2メールサーバ200が第1メールサーバ100に遅延通知を返信しているが、その代わりに、第2メールサーバ200が第1メールサーバ100にアクセスが許可され、かつ、第2メールサーバ200が第1メールサーバ100の記憶部110に直接、遅延通知に含まれる情報を書込むようにしてもよい。また、遅延通知を返信する際、受信した電子メールのヘッダ部を合わせて返信することが望ましい。
ステップA8の後、又は、算出した通信時間が所定時間を超えていない場合(ステップA6のNO)、第2メールサーバ200の制御部220は、受信した電子メール(ヘッダ部情報112a、メール本文情報112b、添付ファイル情報112cに相当)に、文字列優先順位テーブル(図7の114cに相当)にある文字列に対応する文字列があるか否かを判断する(ステップA9)。対応する文字列がない場合(ステップA9のNO)、優先順位をつけないで(最低順位としても可)、ステップA1に戻る。
対応する文字列がある場合(ステップA9のYES)、第2メールサーバ200の制御部220は、当該電子メールを重要度や緊急度が高いと判断し、文字列優先順位テーブル(図7の114cに相当)から、受信した電子メールにある文字列に対応する優先順位を抽出する(ステップA10)。なお、対応する文字列が複数あり、かつ、文字列が異なる場合、優先順位が高い方の文字列の優先順位を抽出する。
ステップA10の後、第2メールサーバ200の制御部220は、受信した電子メールのヘッダ部(図4のヘッダ部情報112aの「From」欄に相当)から差出人のメールアドレスを抽出する(ステップA11)。
ステップA11の後、第2メールサーバ200の制御部220は、抽出されたメールアドレス、優先順位を互いに関連付けてデータベース214のメールアドレス優先順位テーブル(図8の114dに相当)に書込んで記憶部210に記憶させる(ステップA12)。その後、ステップA1に戻る。
次に、第2端末800から第1端末700に電子メールを返信するときの第2メールサーバ200の動作を例に図面を用いて説明する。図10は、実施形態1に係る電子メール遅延抑制システムにおける第2メールサーバの制御部の第2端末から第1端末に電子メールを返信するときの動作を模式的に示したフローチャートである。
ここでは、第2メールサーバ200において電子メール遅延抑制プログラム213を実行しているときの動作を例に説明する。
まず、第2メールサーバ200の制御部220は、端末(第2端末800以外の端末でも可)からの電子メールを受信したか否かを判断する(ステップB1)。端末からの電子メールを受信していない場合(ステップB1のNO)、ステップB1に戻る。
端末からの電子メールを受信した場合(ステップB1のYES)、第2メールサーバ200の制御部220は、第2メールサーバ200における送信待ちの電子メールがあるか否かを判断する(ステップB2)。
送信待ちの電子メールがある場合(ステップB2のYES)、第2メールサーバ200の制御部220は、メールアドレス優先順位テーブル(図8の114dに相当)において、受信した電子メールのヘッダ部の宛先のメールアドレスに対応するメールアドレスがあるか否かを判断する(ステップB3)。
対応するメールアドレスがある場合(ステップB3のYES)、第2メールサーバ200の制御部220は、受信した電子メールの優先度又は緊急度が高いと判断して、対応するメールアドレスに関連付けられた優先順位に基づいて、受信したメールを、第2メールサーバ200における送信待ちの電子メールの順番の所定の位置に入れ(ステップB4)、その後、ステップB1に戻る。
ここで、送信待ちの電子メールは、優先順位が高いものから順に並んでいる。また、電子メールの順番の所定の位置とは、受信した電子メールの優先順位よりも高い優先順位の電子メールがあればその後の位置であり、受信した電子メールの優先順位よりも低い優先順位の電子メールがあればその前の位置であり、受信した電子メールの優先順位と同じ優先順位の電子メールがあればその同じ優先順位の最後の位置である。また、送信待ちの電子メールは、メールサーバソフトウェア211の実行による動作で、優先順位が高く、かつ、先に待っている電子メールから順次、送信されることになる。
送信待ちの電子メールがない場合(ステップB2のNO)、第2メールサーバ200の制御部220は、受信した電子メールを、第2メールサーバ200における送信待ちの電子メールの最初に入れ(ステップB5)、その後、ステップB1に戻る。ここでは、電子メールは、メールサーバソフトウェア211の実行による動作で、すぐに送信されることになる。
対応するメールアドレスがない場合(ステップB3のNO)、第2メールサーバ200の制御部220は、受信した電子メールの優先度又は緊急度が低いと判断して、第2メールサーバ200における送信待ちの電子メールの順番の最後に入れ(ステップB6)、その後、ステップB1に戻る。ここでは、送信待ちの電子メールは、メールサーバソフトウェア211の実行による動作で、優先順位が高く、かつ、先に待っている電子メールから順次、送信されることになる。
次に、第1メールサーバ100から第2メールサーバ200に遅延通知を返信するときの第1メールサーバ100の動作を例に図面を用いて説明する。図11は、実施形態1に係る電子メール遅延抑制システムにおける第1メールサーバの制御部の第2メールサーバからの遅延通知を受信したときの動作を模式的に示したフローチャートである。
ここでは、第1メールサーバ100において電子メール遅延抑制プログラム113を実行しているときの動作を例に説明する。
まず、第1メールサーバ100の制御部120は、メールサーバからの遅延通知(ステップA8の遅延通知)を受信したか否かを判断する(ステップC1)。遅延通知を受信していない場合(ステップC1のNO)、ステップC1に戻る。
ここで、遅延通知の受信の判断は、第2メールサーバ200側で遅延通知(電子メール)のヘッダ部のsubjectに「Re:」の文字列を付加したり、遅延通知であることを示す文字列を付加して、第1メールサーバ100が遅延通知であることがわかるようにして判断してもよい。
遅延通知を受信した場合(ステップC1のYES)、第1メールサーバ100の制御部120は、受信した遅延通知の通信時間及び通信速度を算出する(ステップC2)。
ここで、遅延通知の通信時間は、制御部120が管理している現在時刻と、受信した遅延通知(電子メール)のヘッダ部の送信時刻(ここでは遅延通知が第2メールサーバ200で送信された時刻)と、の時間差から算出することができる。
また、通信速度は、受信した遅延通知(電子メール)のヘッダ部のデータサイズ(図示せず)を、算出された通信時間で割ることで算出することができる。
さらに、現在時刻は、制御部120が、通信手段群300を通じて、NTPサーバ600の標準時刻を定期的又は常に取得して、取得した標準時刻と同期をとることにより、制御部120で管理されている。なお、現在時刻は、ここでは第1メールサーバ100と第2メールサーバ200が同じ地域(国)にあることを想定した現在時刻であるが、電子メールが送信された地域の標準時刻とすることができ、第1メールサーバ100が所在する地域の標準時刻に基づいて遅延通知が送信された地域の標準時刻を算出してもよい。
ステップC2の後、第1メールサーバ100の制御部120は、受信した遅延通知から、選択した通信手段を抽出する(ステップC3)。なお、ステップC3は、ステップC2よりも先に行ってもよい。
ステップC3の後、第1メールサーバ100の制御部120は、算出した通信時間及び通信速度を、抽出した通信手段と関連付けてデータベース114の通信状態テーブル114bに書込んで記憶部210に記憶させる(ステップC4)。
ステップC4の後、第1メールサーバ100の制御部120は、算出した通信時間が所定時間を超えているか否かを判断する(ステップC5)。
ここで、所定時間は、ステップA6の所定時間と同様に、予め定めた時間や、遅延通知(電子メールでも可)を受信した時より前に受信した複数の遅延通知の通信時間の平均値とすることができる。通信時間の平均値の基準となる複数の遅延通知は、受信間隔が所定時間以上離れた複数の遅延通知を用いることができる。また、通信時間の平均値の基準となる複数の遅延通知は、複数の遅延通知の通信時間が長い上位から所定順位までの通信時間に係る遅延通知を除外することができる。所定時間を通信時間の平均値とする場合、ステップC4の後の任意の時点で通信時間の平均値を算出し、算出した通信時間の平均値を記憶部210に記憶するようにしてもよい。
算出した通信時間が所定時間を超えていない場合(ステップC5のNO)、第2メールサーバ200が遅延通知を返信したときに使用した通信手段で遅延が発生していないとして、通信手段切替部150における送信用の通信手段をそのままにして、ステップC1に戻る。
通信時間が所定時間を超えている場合(ステップC5のYES)、第1メールサーバ100の制御部120は、第2メールサーバ200が遅延通知を返信したときに使用した通信手段で遅延が発生していると判断し、データベース114において、算出された通信時間よりも短い通信時間に係る通信手段を選択し、通信手段切替部150における送信用の通信手段を、選択した通信手段に切り替えるように制御する(ステップC6)。
ここで、通信手段の選択では、通信時間が最短の通信手段を選択してもよい。また、通信時間が、予め定めた時間以内の通信手段を選択してもよい。さらに、上記条件を満たす通信キャリアや通信手段が複数である場合、通信速度が速い通信手段を選択するのでもよい。
また、第2メールサーバ200から第1メールサーバ100へ遅延通知を返信するときの通信手段に係る通信時間は、同じ通信手段を使用する限り、第1メールサーバ100から第2メールサーバ200へ遅延通知が送信されたときの対応する通信手段に係る通信時間とほぼ同じになると考えられる。そのことから、ステップC6では、第2メールサーバ200から第1メールサーバ100へ電子メールが送信されたときの通信手段に係る通信時間よりも短い通信時間に係る通信手段を選択している。
ステップC6の後、第1メールサーバ100の制御部120は、第2メールサーバ200が遅延通知を送信したときに使用した通信手段で遅延が発生している旨と、選択した通信手段と、を知らせる遅延通知(電子メール)を生成し、生成した遅延通知を、選択した通信手段を介して第2メールサーバ200に返信し(ステップC7)、その後、ステップC1に戻る。
なお、ステップC7では第1メールサーバ100が第2メールサーバ200に遅延通知を返信しているが、その代わりに、第1メールサーバ100が第2メールサーバ200にアクセスが許可され、かつ、第1メールサーバ100が第2メールサーバ200の記憶部210に直接、遅延通知に含まれる情報を書込むようにしてもよい。
また、ステップC1〜C7は、第1メールサーバ100から第2メールサーバ200に遅延通知を返信したときの動作であるが、第2メールサーバ200から第1メールサーバ100に遅延通知を返信したときの動作に適用してもよい。
実施形態1によれば、電子メールの遅延を検出したときに遅延が生じている通信手段から遅延が生じていない通信手段を切り替えることにより、電子メール遅延の影響を最小限に抑えることができる。特に、メールサーバ100、200間で遅延通知をやり取りすることにより、メールサーバ100、200が送信用に選択した通信手段の遅延時間を、メールサーバ100、200が互いに把握することができ、どの通信手段が最も遅延時間が少ないかも把握することができ、遅延時間が最も短い通信手段の選択が可能になる。
また、実施形態1によれば、電子メールの重要度、緊急度又は優先度を認識して電子メールの送信順序を変更することにより、受信メールサーバは、重要度、緊急度又は優先度が高い電子メールの返信を早く行うことができることから、重要度、緊急度又は優先度が高い電子メールの遅延時間を減らすことができる。特に、顧客の運用装置を自動的に監視するリモート監視装置からの異常や障害発生のアラーム情報に係る電子メールは異常や障害の程度によって優先度又は緊急度が付されているので、これを利用して、受信側のメールサーバは、重要度、緊急度又は優先度が高い電子メールを把握して、アラーム情報へ応答する電子メールの返信の遅れを小さくし、顧客装置の障害等の復旧の遅れを小さくすることができる。
[実施形態2]
実施形態2に係る電子メール遅延抑制システムについて図面を用いて説明する。図12は、実施形態2に係る電子メール遅延抑制システムにおけるメールサーバと通信手段群との間の構成を模式的に示したブロック図である。
実施形態2は、実施形態1の変形例であり、メールサーバ400が通信手段を切り替えできないタイプであっても、実施形態1と同様な動作をできるようにしたものである。つまり、実施形態2では、メールサーバ400と通信手段群300との間に通信手段切替装置500を設けて、実施形態1に係るメールサーバ(図2の100、図3の200)と同様な送信用の通信手段の切り替えができるようにしている。なお、通信手段群300は、実施形態1の通信手段群(図2、図3の300)と同様である。
メールサーバ400は、電子メールを配送するための装置である。メールサーバ400は、メールサーバソフトウェア411を実行することで電子メールの配送に関する情報処理を行う。メールサーバ400は、1台に限らず、複数台あってもよい。メールサーバ400は、記憶部410と、制御部420と、入力部430と、出力部440と、通信部450と、を備える。なお、入力部430及び出力部440については、実施形態1の入力部(図2の130、図3の230)及び出力部(図2の140、図3の240)と同様である。
記憶部410は、各種データ、ファイル等を記憶する機能部である。メールサーバソフトウェア411と、メールデータ412と、を記憶する。なお、メールサーバソフトウェア411及びメールデータ412は、実施形態1のメールサーバソフトウェア(図2の111、図3の211)及びメールデータ(図2の112、図3の212)と同様である。なお、記憶部410は、実施形態1の記憶部110とは異なり、電子メール遅延抑制プログラム及びデータベースを記憶していない。
制御部420は、記憶部410、入力部430、出力部440及び通信部450を制御する機能部である。制御部420の記憶部410、入力部430及び出力部440に対する動作は、実施形態1の制御部(図2の120、図220)の記憶部(図2の110、図210)、入力部(図2の130、図230)及び出力部(図2の140、図240)に対する動作と同様である。制御部420は、通信部450での情報の送受信を制御する。
通信手段切替装置500は、メールサーバ400に接続される通信手段(通信手段群300における通信手段)を切り替える機能を有する通信装置である。通信手段切替装置500は、メールサーバ400と組み合わせて用いられ、メールサーバ400が複数台あれば通信手段切替装置500もメールサーバ400と同じ台数用いられる。通信手段切替装置500は、所定のプログラムを実行することで電子メールに関する情報処理を行う。通信手段切替装置500は、記憶部510と、制御部520と、通信手段切替部530と、モデム531と、DSU532と、第1ONU533と、第2ONU534と、VDSL535と、携帯電話通信部536と、を備える。
記憶部510は、各種データ、ファイル等を記憶する機能部である。記憶部510は、電子メール遅延抑制プログラム511と、データベース512と、を記憶する。なお、電子メール遅延抑制プログラム511及びデータベース512は、実施形態1の電子メール遅延抑制プログラム(図2の113、図3の213)及びデータベース(図2の114、図3の214)と同様である。
制御部520は、記憶部510及び通信手段切替部530を制御する機能部である。制御部520は、所定のプログラムを実行することで、各機能部を制御したり、情報処理を行う。制御部520は、記憶部510でのデータやファイル等の読み込み、書込み等を制御する。制御部520は、通信手段切替部530での情報の送受信を制御するとともに、通信手段群300における通信手段を切り替えるように通信手段切替部530を制御する。制御部520の電子メール遅延抑制プログラム511を実行した時の動作は、実施形態1の制御部(図2の120、図3の220)の電子メール遅延抑制プログラム(図2の113、図3の213)を実行した時の動作と同様である。
通信手段切替部530は、通信手段(通信手段群300における通信手段)を切り替える機能を有する通信部である。通信手段切替部530は、制御部520及び通信部450と通信可能に接続されている。通信手段切替部530は、通信手段群300から通信手段切替部530への入力経路では、モデム531、DSU532、第1ONU533、第2ONU534、VDSL535及び携帯電話通信部536の全てと接続されている。通信手段切替部530は、通信手段切替部530から通信手段群300への出力経路では、モデム531、DSU532、第1ONU533、第2ONU534、VDSL535及び携帯電話通信部536のいずれか1つと切り替え可能に通信可能に接続されている。なお、通信手段切替部530は、図面のように6つのインタフェース531〜536に限らず、少なくとも2つ以上のインタフェースと接続されていればよく、7つ以上のインタフェースと接続されていてもよい。
なお、モデム531、DSU532、第1ONU533、第2ONU534、VDSL535及び携帯電話通信部536については、実施形態1の通信手段切替部(図2の150、図3の250)のモデム(図2の151、図3の251)、DSU(図2の152、図3の252)、第1ONU(図2の153、図3の253)、第2ONU(図2の154、図3の254)、VDSL(図2の155、図3の255)、及び携帯電話通信部(図2の156、図3の256)の構成と同様である。
なお、実施形態2は、実施形態1と組み合わせて構成してもよい。
実施形態2によれば、実施形態1と同様な効果を奏するとともに、メールサーバ400が通信手段を切り替えできないタイプであっても、メールサーバ400と通信手段群300との間に通信手段切替装置500を設けることにより、電子メールの遅延を検出したときに通信手段を切り替えることができるようになるので、電子メール遅延の影響を最小限に抑えることができる。
[実施形態3]
実施形態3に係る電子メール遅延抑制システムについて図面を用いて説明する。図13は、実施形態3に係る電子メール遅延抑制システムの構成を模式的に示したブロック図である。図14は、実施形態3に係る電子メール遅延抑制システムにおける電子メール遅延抑制装置と通信手段群との間の構成を模式的に示したブロック図である。
電子メール遅延抑制システム1は、第1端末40と第2端末50との間で電子メールを送受信することが可能なシステムである。電子メール遅延抑制システム1は、電子メール遅延抑制装置10と他の電子メール遅延抑制装置20との間の通信手段群30における通信手段を切り替えることにより電子メールの遅延を抑制する機能を有する。電子メール遅延抑制システム1は、電子メール遅延抑制装置10と、他の電子メール遅延抑制装置20と、通信手段群30と、第1端末40と、第2端末50と、を備える。
電子メール遅延抑制装置10は、電子メール遅延抑制装置10と他の電子メール遅延抑制装置20との間の通信手段群30における通信手段を切り替えることにより電子メールの遅延を抑制する機能を有する装置である。電子メール遅延抑制装置10は、インタフェース11、12、13と、通信手段切替部14と、記憶部15と、制御部16と、を有する。
インタフェース11、12、13は、通信手段群30を介して他の電子メール遅延抑制装置20と通信可能に接続される。インタフェース11、12、13は、3個に限らず、2個以上あればよい。
通信手段切替部14は、通信手段群30からの入力経路で複数のインタフェース11、12、13の全てと通信可能に接続されるとともに、通信手段群30への出力経路で前記複数のインタフェース11、12、13のいずれか1つと切り替え可能に通信可能に接続される。
記憶部15は、データを記憶する。記憶部15は、通信手段特定テーブル15aと、通信状態テーブル15bと、を記憶する。通信手段特定テーブル15aは、通信手段31、32、33、ドメイン名及びIPアドレスを互いに関連付けたテーブルである。通信状態テーブル15bは、通信手段及び通信時間を互いに関連付けたテーブルである。
制御部16は、通信手段切替部14及び記憶部15を制御する。なお、制御部16の詳細な動作については、後述する。
他の電子メール遅延抑制装置20は、電子メール遅延抑制装置10と同様な構成である。通信手段群30は、複数の通信手段31、32、33を有する。通信手段31、32、33は、互いに所定割合以上又は全体的に独立する。第1端末40は、通信手段群30のいずれか1つの通信手段を介して他の電子メール遅延抑制装置20と通信可能な端末である。第2端末50は、通信手段群30のいずれか1つの通信手段を介して電子メール遅延抑制装置10と通信可能な端末である。
実施形態3に係る電子メール遅延抑制システムにおける電子メール遅延抑制装置の制御部の動作について説明する。図15は、実施形態3に係る電子メール遅延抑制システムにおける電子メール遅延抑制装置の制御部の第1端末から第2端末に電子メールを送信するときの動作を模式的に示したフローチャートである。
まず、電子メール遅延抑制装置10の制御部16は、他の電子メール遅延抑制装置20から電子メールを受信したか否かを判断する(ステップD1)。電子メールを受信していない場合(ステップD1のNO)、ステップD1に戻る。
電子メールを受信した場合(ステップD1のYES)、電子メール遅延抑制装置10の制御部16は、制御部16が管理している現在時刻と、受信した電子メールのヘッダ部に含まれる送信時刻と、に基づいて通信時間を算出する処理を行う(ステップD2)。
次に、電子メール遅延抑制装置10の制御部16は、通信手段特定テーブル15aから、受信した電子メールのヘッダ情報に含まれるドメイン名又はIPアドレスに対応する通信手段を抽出する処理を行う(ステップD3)。
次に、電子メール遅延抑制装置10の制御部16は、算出した通信時間を、抽出した通信手段と関連付けて通信状態テーブル15bに書込む処理を行う(ステップD4)。
次に、電子メール遅延抑制装置10の制御部16は、算出された通信時間が所定時間を超えているか否かを判断する(ステップD5)。通信時間が所定時間を超えていない場合(ステップD5のNO)、ステップD1に戻る。
通信時間が所定時間を超えている場合(ステップD5のYES)、制御部16は、通信状態テーブル15bから、算出された通信時間よりも短い通信時間に係る通信手段を選択し、出力経路が選択した通信手段に切り替わるように通信手段切替部14を制御する処理を行う(ステップD6)。その後、ステップD1に戻る。
実施形態3によれば、電子メールの遅延を検出したときに遅延が生じている通信手段から遅延が生じていない通信手段に切り替えることにより、電子メール遅延の影響を最小限に抑えることができる。
(付記)
本発明では、前記第1の視点に係る電子メール遅延抑制装置の形態が可能である。
前記第1の視点に係る電子メール遅延抑制装置において、所定時間は、予め定めた時間、又は、受信した電子メールよりも前に受信した複数の電子メールの通信時間の平均値である。
前記第1の視点に係る電子メール遅延抑制装置において、前記制御部は、前記通信手段群を介してNTPサーバ600の標準時刻を定期的又は常に取得して、管理している標準時刻を、取得した標準時刻と同期をとる処理を行う。
前記第1の視点に係る電子メール遅延抑制装置において、前記制御部は、前記出力経路を選択した通信手段に切り替えたときに、前記他の電子メール遅延抑制装置が電子メールを送信したときに使用した通信手段で遅延が発生している旨と、選択した通信手段と、を知らせる遅延通知を生成し、生成した遅延通知を、選択した通信手段を介して前記他の電子メール遅延抑制装置に返信する処理を行う。
前記第1の視点に係る電子メール遅延抑制装置において、前記記憶部は、予め定めた文字列に優先順位を関連付けた文字列優先順位テーブルと、メールアドレスに優先順位を関連付けたメールアドレス優先順位テーブルと、を記憶し、前記制御部は、受信した電子メールに、前記文字列優先順位テーブルの文字列に対応する文字列があるときに、前記文字列優先順位テーブルから、受信した電子メールにある文字列に対応する優先順位を抽出する処理と、受信した電子メールから差出人のメールアドレスを抽出する処理と、抽出されたメールアドレス、優先順位を互いに関連付けて前記メールアドレス優先順位テーブルに書込む処理と、を行う。
前記第1の視点に係る電子メール遅延抑制装置において、前記制御部は、端末から前記通信手段群を介して電子メールを受信したときに、前記電子メール遅延抑制装置において送信待ちの電子メールがあるか否かを判断する処理と、送信待ちの電子メールがあるときに、前記メールアドレス優先順位テーブルにおいて、受信した電子メールの宛先のメールアドレスに対応するメールアドレスがあるか否かを判断する処理と、対応するメールアドレスがあるときに、対応するメールアドレスに関連付けられた優先順位に基づいて、受信したメールを、前記電子メール遅延抑制装置における送信待ちの電子メールの順番の所定の位置に入れる処理と、を行う。
前記第1の視点に係る電子メール遅延抑制装置において、前記制御部は、対応するメールアドレスがないときに、前記電子メール遅延抑制装置における送信待ちの電子メールの順番の最後に入れる処理を行う。
前記第1の視点に係る電子メール遅延抑制装置において、前記制御部は、送信待ちの電子メールがないときに、前記電子メール遅延抑制装置における送信待ちの電子メールの順番の最初に入れる処理を行う。
前記第1の視点に係る電子メール遅延抑制装置において、前記制御部は、前記他の電子メール遅延抑制装置から遅延通知を受信したときに、前記制御部が管理している現在時刻と、受信した遅延通知のヘッダ部に含まれる送信時刻と、に基づいて通信時間を算出する処理と、前記通信手段特定テーブルから、受信した遅延通知のヘッダ情報に含まれるドメイン名又はIPアドレスに対応する通信手段を抽出する処理と、算出した通信時間を、抽出した通信手段と関連付けて前記通信状態テーブルに書込む処理と、算出された通信時間が所定時間を超えているときに、前記通信状態テーブルから、算出された通信時間よりも短い通信時間に係る通信手段を選択し、前記出力経路が選択した通信手段に切り替わるように前記通信手段切替部を制御する処理と、前記出力経路を選択した通信手段に切り替えたときに、前記他の電子メール遅延抑制装置が電子メールを送信したときに使用した通信手段で遅延が発生している旨と、選択した通信手段と、を知らせる遅延通知を生成し、生成した遅延通知を、選択した通信手段を介して前記他の電子メール遅延抑制装置に返信する処理と、を行う。
本発明では、前記第2の視点に係る電子メール遅延抑制システムの形態が可能である。
本発明では、前記第3の視点に係る通信手段切替装置の形態が可能である。
本発明では、前記第4の視点に係る電子メール遅延抑制システムの形態が可能である。
本発明では、前記第5の視点に係る電子メール遅延抑制方法の形態が可能である。
本発明では、前記第6の視点に係る電子メール遅延抑制プログラムの形態が可能である。
なお、上記の特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(特許請求の範囲及び図面を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせないし選択(必要により不選択)が可能である。すなわち、本発明は、請求の範囲及び図面を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。また、本願に記載の数値及び数値範囲については、明記がなくともその任意の中間値、下位数値、及び、小範囲が記載されているものとみなされる。