JP2008035481A - 通信方法及び通信装置 - Google Patents

通信方法及び通信装置 Download PDF

Info

Publication number
JP2008035481A
JP2008035481A JP2007134006A JP2007134006A JP2008035481A JP 2008035481 A JP2008035481 A JP 2008035481A JP 2007134006 A JP2007134006 A JP 2007134006A JP 2007134006 A JP2007134006 A JP 2007134006A JP 2008035481 A JP2008035481 A JP 2008035481A
Authority
JP
Japan
Prior art keywords
response
alternative
command
condition
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007134006A
Other languages
English (en)
Other versions
JP4796010B2 (ja
Inventor
Tadanori Tezuka
忠則 手塚
Tsutomu Sekibe
勉 関部
Shiyunichi Kuroumaru
俊一 九郎丸
Jiyunji Michiyama
淳児 道山
Hiroshi Nakamura
宏 中村
Masaaki Kondo
正章 近藤
Takashi Minamitani
崇 南谷
Masa Imai
雅 今井
Tomoyuki Nassu Bogdan
トモユキ ナス、ボグダン
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.)
University of Tokyo NUC
Panasonic Holdings Corp
Original Assignee
University of Tokyo NUC
Matsushita Electric Industrial Co 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 University of Tokyo NUC, Matsushita Electric Industrial Co Ltd filed Critical University of Tokyo NUC
Priority to JP2007134006A priority Critical patent/JP4796010B2/ja
Publication of JP2008035481A publication Critical patent/JP2008035481A/ja
Application granted granted Critical
Publication of JP4796010B2 publication Critical patent/JP4796010B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

【課題】リクエストに対する誤ったレスポンスがなされたとしても通信装置間での通信のエラー中断の発生を可能な限り防ぐ。
【解決手段】
リクエスト変更部51は判定制御部54に制御されてコマンドをリクエストとして出力し、レスポンス条件決定部52はリクエスト変更部51から出力されたコマンドに対して通信相手の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める。照合部53はリクエストに対するレスポンスを条件と照合し、照合の結果、レスポンスが条件に合致せず、レスポンスを条件に合致するように修正可能であれば、レスポンス修正部55は判定制御部54に制御されてレスポンスが条件に合致するように当該レスポンスの修正を行う。
【選択図】図4

Description

本発明は、通信装置間でリクエスト及びレスポンスを行う通信技術に関する。
現在、パーソナルコンピュータやネットワーク家電などの通信装置は、他の通信装置との間で様々なプロトコルに基づいた通信を行う。なお、通信装置間の通信は、例えば、インターネットやLAN(Local Area Network)などの各種ネットワーク、或いは、各種ハードウェア間のインタフェースを利用して行われる。
通信装置間の通信に用いられるプロトコルとして、POP3(Post Office Protocol version 3, RFC1939)が知られている(非特許文献1参照。)。
POP3などのプロトコルに基づく通信装置間の通信は、一方の通信装置がリクエストを送信し、他方の通信装置がリクエストに対するレスポンスを返信することにより行われる。
J.Myers、"RFC 1939 - Post Office Protocol (POP) Version 3"、[online]、1996年5月、IAB(Internet Architecture Board)標準勧告文書RFC(Request for Comments)、[平成18年4月3日検索]、インターネット<URL : http://www.ietf.org/rfc/rfc1939.txt>
ところで、POP3などのプロトコルに基づく通信装置間の通信では、リクエストに対するレスポンスに誤りがあると、言い換えると、プロトコルに定められた手順やフォーマット以外のデータがレスポンスとして送られてくると、リクエストを行った通信装置はエラーが発生したとして通信処理を中断する。
このため、例えば、リクエスト先の通信装置で厳密にプロトコルに準拠した実装が行われていない場合やプロトコルの一部の実装にバグがある場合には、リクエスト先の通信装置はリクエストに対して誤ったレスポンスを行ってしまい、通信装置間の通信にエラー中断が発生するという問題がある。
そこで、本発明は、リクエストに対して誤ったレスポンスがなされたとしても通信装置間での通信のエラー中断の発生を可能な限り防ぐことが可能な通信方法及び通信装置を提供することを目的とする。
上記目的を達成するために本発明の通信方法は、他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置において行われる通信方法であって、リクエストのコマンドを他の通信装置へ送信する送信ステップと、前記送信ステップにおいて送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定ステップと、前記送信ステップにおいて送信された前記コマンドに対するレスポンスを前記決定ステップにおいて定めた前記条件と照合する照合ステップと、前記照合ステップにおける照合の結果、前記レスポンスが前記条件に合致しなければ、当該レスポンスを当該条件に合致するように修正する修正ステップと、を有する。
本発明の通信装置は、他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置であって、リクエストのコマンドを他の通信装置へ送信する送信手段と、前記送信手段において送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定手段と、前記送信手段によって送信された前記コマンドに対するレスポンスを前記決定手段によって定めた前記条件と照合する照合手段と、前記照合手段による照合の結果、前記レスポンスが前記条件に合致しなければ、当該レスポンスを当該条件に合致するように修正する修正手段と、を備える。
上記通信方法及び通信装置の夫々によれば、リクエストのコマンドに対して返信されてきたレスポンスを、他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件に照合する。そして、レスポンスが条件に合致していなければ、レスポンスが条件に合致するように修正される。このように、リクエストのコマンドに対するレスポンスに誤りがあればレスポンスの修正を行うため、リクエストのコマンドに対するレスポンスの誤りによる通信のエラー中断の発生を抑えることができる。
上記の通信方法において、レスポンスの修正の実行レベルが予め定められており、レスポンスの修正の実行に制限をかけるための制限レベルを受け付けるレベル受付ステップを更に有し、前記レスポンスの修正の実行レベルが前記制限レベルを超えていれば、前記修正ステップを実行するようにしてもよい。
これによれば、例えば、セキュリティ上で危険度の高い修正を行うか否かをユーザの判断に委ねることが可能になる。
本発明の通信方法は、他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置において行われる通信方法であって、リクエストのコマンドを他の通信装置へ送信する送信ステップと、前記送信ステップにおいて送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定ステップと、前記送信ステップにおいて送信された前記コマンドに対するレスポンスを前記決定ステップにおいて定めた前記条件と照合する照合ステップと、前記照合ステップにおける照合の結果、前記レスポンスが前記条件に合致しなければ、1または複数の代替コマンドで前記送信ステップにおいて送信した前記コマンドの代わりとなる当該1又は複数の代替コマンドを定め、前記1又は複数の代替コマンドの全てを順次用いて前記他の通信装置との通信を行う代替ステップと、前記代替ステップにおける各前記代替コマンドに対するレスポンスを基に前記コマンドに対する前記条件に合致するレスポンスを作成する作成ステップと、を有する。
本発明の通信装置は、他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置であって、リクエストのコマンドを他の通信装置へ送信する送信手段と、前記送信手段において送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定手段と、前記送信手段によって送信された前記コマンドに対するレスポンスを前記決定手段によって定めた前記条件と照合する照合手段と、前記照合手段による照合の結果、前記レスポンスが前記条件に合致しなければ、1または複数の代替コマンドで前記送信手段において送信した前記コマンドの代わりとなる当該1又は複数の代替コマンドを定め、前記1又は複数の代替コマンドの全てを順次用いて前記他の通信装置との通信を行う代替手段と、前記代替手段による前記代替コマンドに対するレスポンスを基に前記コマンドに対する前記条件に合致するレスポンスを作成する作成手段と、を備える。
上記通信方法及び通信装置の夫々によれば、リクエストのコマンドに対して返信されてきたレスポンスを、他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件に照合する。そして、レスポンスが条件に合致していなければ、リクエストしたコマンドの代わりとなる1又は複数の代替コマンドを用いて他の通信装置と通信を行い、コマンドに対するレスポンスの条件に合致するレスポンスを各代替コマンドに対するレスポンスを基に作成する。このように、リクエストのコマンドに対するレスポンスに誤りがあれば代替コマンドを用いて通信相手の通信装置と通信を行い、各代替コマンドに対するレスポンスを基にコマンドに対するレスポンスの作成を行う。このため、リクエストのコマンドに対するレスポンスの誤りによる通信のエラー中断の発生を抑えることができる。
上記の通信方法において、前記照合ステップにおける照合の結果、前記レスポンスが前記条件に合致していない場合、前記レスポンスを前記条件に合致するように修正可能であるかを判断する判断ステップを更に有し、前記判断ステップにおける判断の結果、前記レスポンスを前記条件に合致するように修正可能でなければ、前記代替ステップを実行し、前記レスポンスを前記条件に合致するように修正可能であれば、当該レスポンスを当該条件に合致するように修正するようにしてもよい。
これによれば、リクエストしたコマンドに対するレスポンスを条件に合致するように修正可能であればレスポンスの修正を行い、そうでなければ代替コマンドを用いた通信を行う。これにより、通信装置間の通信の負荷を抑えながら、リクエストのコマンドに対するレスポンスの誤りによる通信のエラー中断の発生を抑えることができる。
上記の通信方法において、各々の前記代替コマンドに対して前記他の通信装置がプロトコルに準拠して動作していれば返信されるはずのレスポンスが合致すべき代替条件を定める代替決定ステップと、各々の前記代替コマンドに対するレスポンスを前記代替決定ステップで定めた当該代替コマンドの代替条件に照合する代替照合ステップと、を更に有し、前記代替照合ステップにおける照合の結果、前記代替コマンドの全てにおいて、前記レスポンスが前記代替条件に合致しているか、前記レスポンスを前記代替条件に合致するように修正可能であれば、以降の通信において、前記コマンドの代わりに前記1又は複数の代替コマンドを用いるようにしてもよい。
これによれば、以前の通信でコマンドに対するレスポンスが条件に合致しなかったコマンドに対しては、代替コマンドが優先して用いられるので通信装置間の通信の負荷を抑えることができる。
上記の通信方法において、各々の前記代替コマンドに対して前記他の通信装置がプロトコルに準拠して動作していれば返信されるはずのレスポンスが合致すべき代替条件を定める代替決定ステップと、各々の前記代替コマンドに対するレスポンスを前記代替決定ステップで定めた当該代替コマンドの代替条件に照合する代替照合ステップと、を更に有し、前記代替照合ステップにおける照合の結果、前記代替コマンドの何れかにおいて、前記レスポンスが前記代替条件に合致せず、かつ、前記レスポンスを前記代替条件に合致するように修正可能でなければ、前記代替ステップを再実行するようにしてもよい。
これによれば、代替ステップを再実行することによって、通信のエラー中断の発生をより抑えることができるようになる。
上記の通信方法において、1又は複数の代替コマンドに対して当該1又は複数の代替コマンドによる通信の実行レベルが予め定められており、前記代替ステップでの他の通信装置との通信に制限をかけるための制限レベルを受け付けるレベル受付ステップを更に有し、前記代替ステップで定められた前記1又は複数の代替コマンドに対する前記実行レベルが前記制限レベルを超えていれば、前記代替ステップにおいて他の通信装置との通信を実行するようにしてもよい。
これによれば、例えば、セキュリティ上で危険度の高い1又は複数の代替コマンドによる通信の継続をどの程度まで行うかをユーザの判断に委ねることが可能になる。
≪第1の実施の形態≫
以下、本発明の第1の実施の形態について図面を参照しつつ説明する。
<システム構成>
本実施の形態の通信システムの構成について図1を参照しつつ説明する。図1は本実施の形態の通信システムのシステム構成図である。
通信システムは、通信装置1,2を含み、通信装置1,2はネットワーク3に接続されている。ただし、ネットワーク3は、1つの同一ネットワークであってもよく、インターネットのような広域ネットワークであってもよい。また、ネットワーク3は、有線ネットワークであってもよいし、無線ネットワークであってもよい。
通信装置1は、本発明の通信方法を実行する機能を有する装置であって、他の通信装置との間でリクエスト及びリクエストに対するレスポンスの送受信を行う。
例えば、通信装置1は、通信相手の装置に対してリクエストのコマンドを送信し、通信相手の装置から当該リクエストに対するレスポンスを受信する。リクエストに対するレスポンスに誤りがあった場合に、通信装置1はレスポンスの誤りに応じてレスポンスの修正を行う。または、通信装置1は、リクエストしたコマンドの代わりとなる1又は複数の代替コマンドを用いて通信相手の装置との間で通信を行う。
ただし、コマンドの代わりとなる1又は複数の代替コマンド(一つの代替コマンド又は複数の代替コマンドを含む代替コマンド群)は、リクエスト側の通信装置が各代替コマンドに対して誤りがないレスポンスを受信したときに、各代替コマンドに対して受信した誤りがないレスポンスからコマンドに対して誤りがないレスポンスの作成を可能にするものである。
なお、誤りがないレスポンスとは、通信相手の装置がプロトコルの規格に準拠した動作を行っている場合にリクエストしたコマンド又は代替コマンドに対して返信されるはずのレスポンスのことである。
通信装置2は、他の通信装置との間でリクエスト及びリクエストに対するレスポンスの送受信を行う。なお、通信装置2は、本発明の通信方法を実行する機能を有する通信装置であってもよく、当該機能を有しない通信装置であってもよい。
なお、本発明は、リクエストを行った通信装置でリクエストに対するレスポンスに誤りがあった場合にレスポンスの誤りに応じてレスポンスの修正などを行うものであることから、以下における通信装置1の機能及び動作の説明では通信装置1がリクエストする場合のみ説明する。
<通信装置の装置構成>
図1の通信装置1の装置構成について図2を参照しつつ説明する。図2は図1の通信装置1の装置構成図である。
通信装置1は、CPU(Central Processing Unit)11、メモリ12、DSP(Digital Signal Processor)13、アシスト回路14、通信インタフェース(通信IF)15、表示制御回路16、表示デバイス17、入力インタフェース(入力IF)18、キーボード18a、マウス18b、及びタブレッド18cを備える。CPU11、メモリ12、DSP13、アシスト回路14、通信IF15、表示制御回路16、入力IF18は、夫々、バス19に接続されている。
CPU11は通信装置1全体の各種制御や各種演算を行うものである。
メモリ12は記憶素子であり、メモリ12には、例えば、通信装置1を制御するための各種制御プログラムや各種アプリケーションソフトが格納されている。
DSP13は音声や画像などの処理に特化されたマイクロプロセッサである。
アシスト回路14はハードウェアにより構成され、CPU11などの処理をアシストする回路である。
通信IF15は、通信装置1が外部の装置と通信を行うためのものであり、本実施の形態では、TCP/IP(Transmission Control Protocol / Internet Protocol)のパケットの送受信可能なものである。通信IF15は、例えば、イーサネット(登録商標)、無線ネットワーク、USB(Universal Serial Bus)、UWB(Ultra Wide Band)、Bluetooth(登録商標)などの規格に基づくものである。
表示制御回路16は、表示デバイス17の表示制御を行う。
表示デバイス17は、例えば、CRT(Cathode Ray Tube)、液晶ディスプレイ、プラズマディスプレイなどの表示機器、LED(Light Emitting Diode)などの発光素子である。
入力IF18は、キーボード18a、マウス18b、タブレット18cなどの入力デバイスを通信装置1に接続するためのものである。なお、入力デバイスには、キーパッド、タッチパネルなどもある。
<階層構造>
本実施の形態において本発明の通信方法の処理(以下、適応通信処理という。)を実行する階層について図3を参照しつつ説明する。図3は図1の通信装置1の階層構造を示す図である。
図3には、通信装置間のデータ通信を実現するための通信装置の持つべき通信機能を階層構造に分割した、ISO(国際標準化機構:International Organization for Standardization)により策定されたOSI参照モデルを図示するとともに、TCP/IP階層モデルを図示している。
OSI参照モデルでは、アプリケーション層、プレゼンテーション層、セッション層、トランスポート層、ネットワーク層、データリンク層、及び物理層の7層に分割されている。
TCP/IP階層モデルでは、アプリケーション層、トランスポート層、インターネット層、及びネットワークインターフェース層に分割されている。
本実施の形態の適応通信処理は、POP3とTCP(Transmission Control Protocol)或いはUDP(User Datagram Protocol)との間に位置し、POP3とTCP或いはUDPとの間の通信を中継する。ただし、POP3が処理対象のプロトコルである。
なお、処理対象のプロトコルとして、POP3以外に、IMAP4(Internet Message Access version 4)、HTTP(Hyper Text Transfer Protocol)、FTP(File Transfer Protocol)、SMTP(Simple Mail Transfer Protocol)、UPnP(Universal Plug and Play)、SIP(Session Initiation Protocol)、RTP(Real-Time Transfer Protocol)、RTCP(RTP Control Protocol)などが挙げられる。
<通信装置の機能構成>
図1の通信装置1の機能構成について図4を参照しつつ説明する。図4は図1の通信装置1の機能構成図である。
通信装置1は、通信処理部31、32、適応通信処理部33、レスポンス条件データベース(レスポンス条件DB)34、コマンドデータベース(コマンドDB)35、修正データベース(修正DB)36、代替データベース(代替DB)37、及びレスポンス蓄積部38を有する。
通信処理部31は、適応通信処理部33の上位層に位置し、POP3などのプロトコルの規格に則った処理を行い、適応通信処理部33とコマンドやデータの受け渡しなどを行う。通信処理部31から適応通信処理部33にリクエストのコマンドが入力されるときリクエスト先の通信装置の装置名がコマンドに付随して通信処理部31から適応通信処理部33に入力される。
通信処理部32は、適応通信処理部33の下位層に位置し、TCP或いはUDPの規格に則った処理を行い、適応通信処理部33とコマンドやデータの受け渡しなどを行う。
適応通信処理部33は、通信処理部31と通信処理部32との間に位置し、通信処理部31と通信処理部32との間の通信の中継を行う。なお、適応通信処理部33の機能の詳細は後述する。
レスポンス条件DB34には、POP3やIMAP4などの各プロトコルの各コマンドに対するレスポンス条件が格納されており、例えば、POP3の場合の各コマンドに対するレスポンス条件の一例を図5に示す。
レスポンス条件は、対応するコマンドがリクエストされた場合にリクエスト先の通信装置がプロトコルの規格に準拠した動作を行っていれば返信されてくるはずのレスポンスが合致すべき条件である。レスポンスがレスポンス条件に合致していれば上位層のPOP3などのプロトコルで通信のエラー中断が発生しない。
なお、リクエストのコマンドに対するレスポンスが当該コマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件に合致していれば、誤りがないレスポンスである。また、リクエストのコマンドに対してレスポンスが当該コマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件に合致していなければ誤りがあるレスポンスである。
コマンドDB35には、各コマンドに対応して当該コマンドの代わりとなる代替コマンド又は複数の代替コマンドからなる代替コマンド群が格納されており、その一例を図6に示す。図6の例では、フィールド「コマンド」に格納されているコマンドの代わりとなる代替コマンド又は代替コマンド群がフィールド「代替コマンド(群)(1)」、「代替コマンド(群)(2)」、「代替コマンド(群)(3)」に格納される。なお、1つのコマンドに対して、代わりとなる代替コマンドが複数あったり、代替コマンド群が複数あったりする。
修正DB36には、以前の通信でレスポンスの修正が行われたリクエストのコマンド又は代替コマンドがリクエスト先の通信装置に対応付けて格納されており、その一例を図7に示す。図7では、以前の通信で、フィールド「リクエスト先」に格納されている装置名の通信装置へ送信したコマンド又は代替コマンドに対するレスポンスの修正が行われた場合の当該コマンド又は代替コマンドがフィールド「コマンド」に格納されている。
なお、修正DB36の記憶内容を参照することで、他の通信装置が正常な処理動作を行うことができていないコマンドを把握することができる。
代替DB37には、以前の通信でコマンドの代わりに用いられた代替コマンド又は代替コマンド群がリクエスト先の通信装置とコマンドとに対応付けて格納されており、その一例を図8に示す。但し、代替DB37の内容は他の通信装置との間で通信が行われている際に適宜変更される。図8では、以前の通信でフィールド「リクエスト先」に格納されている装置名の通信装置に対してフィールド「コマンド」に格納されているコマンドの代わりに用いられた代替コマンド又は代替コマンド群がフィールド「代替コマンド(群)」に格納されている。
なお、代替DB37の記憶内容を参照することで、他の通信装置が正常な処理動作を行うことができていないコマンドを把握することができる。
レスポンス蓄積部38には、各代替コマンドに対するレスポンス又は修正されたレスポンスが蓄積される。
<適応通信処理部の機能構成>
適応通信処理部33は、リクエスト変更部51、レスポンス条件決定部52、照合部53、判定制御部54及びレスポンス修正部55として機能する。
リクエスト変更部51は、判定制御部54に制御され、通信処理部31から入力されるリクエストのコマンドを通信処理部32及びレスポンス条件決定部52へ出力し、或いは、代替DB37に格納されている代替コマンド又は代替コマンド群に含まれる代替コマンドを順次通信処理部32及びレスポンス条件決定部52へ出力する。
レスポンス条件決定部52は、リクエスト変更部51から入力されるコマンド又は代替コマンドに対応したレスポンス条件をレスポンス条件DB34から取り出してレスポンス条件の決定を行い、決定したレスポンス条件を照合部53へ出力する。
照合部53は、通信処理部32から入力されるレスポンスをレスポンス条件決定部52から入力されるレスポンス条件と照合し、照合結果を判定制御部54へ出力する。
判定制御部54は、修正DB36及び代替DB37の記憶内容を基にリクエスト変更部51の制御を行い、修正DB36、代替DB37及び照合部53による照合結果を基にレスポンス修正部55の制御を行う。
判定制御部54は、照合部53から照合結果に応じて、コマンドDB35において代替コマンド又は代替コマンド群の検索を行い、検索の結果見つかった代替コマンド又は代替コマンド群を、リクエスト先の通信装置と通信処理部31から適応通信処理部33に入力されたコマンドとに対応させて代替DB37に格納する。
レスポンス修正部55は、判定制御部54に制御されて、通信処理部32から入力されるレスポンスをそのまま或いはレスポンス条件に合致するように修正して通信処理部31へ出力する。
また、レスポンス修正部55は、判定制御部54に制御されて、通信処理部32から入力されるレスポンスをそのまま或いはレスポンス条件に合致するように修正してレスポンス蓄積部38に格納する。そして、レスポンス修正部55は、レスポンス蓄積部38に蓄積されているレスポンスを基に通信処理部31から適応通信処理部33に入力されるコマンドのレスポンス条件に合致したレスポンスを作成して、通信処理部31へ出力する。
<適応通信処理部の動作:メインフロー>
図4の適応通信処理部33の動作につい図9を参照しつつ説明する。図9は図4の適応通信処理部33により行われる処理動作のメインフローのフローチャートである。
リクエスト変更部51は、通信処理部31からリクエストのコマンドが入力されるのを待つ。そして、リクエスト変更部51は、リクエストのコマンドの入力を受け付けると、受け付けたコマンドを判定制御部54へ出力する(ステップS101)。
判定制御部54は、修正DB36にリクエスト先の通信装置に対応してリクエストするコマンドが登録されているかを判定する(ステップS102)。リクエストするコマンドが修正DB36に登録されていれば(S102:YES)、判定制御部54は修正フラグをセットし(ステップS103)、ステップS105の処理へ進む。一方、リクエストするコマンドが修正DB36に登録されていなければ(S102:NO)、判定制御部54は修正フラグをリセットし(ステップS104)、ステップS105の処理へ進む。
判定制御部54は、代替DB37にリクエスト先の通信装置に対応してリクエストするコマンドがフィールド「コマンド」に登録されているかを判定する(ステップS105)。リクエストするコマンドが代替DB37に登録されていれば(S105:YES)、判定制御部54は代替フラグをセットし(ステップS106)、ステップS108の処理へ進む。一方、リクエストするコマンドが代替DB37に登録されていなければ(S105:NO)、判定制御部54は代替フラグをリセットし(ステップS107)、ステップS108の処理へ進む。
判定制御部54は判定制御処理(図10)を呼び出し(ステップS108)、その後ステップS101に戻ってコマンドの入力を待つ。
<適応通信処理部の動作:判定制御処理>
図4の適応通信処理部33が行う図9の判定制御処理(ステップS108)及び後述する図16の判定制御処理(ステップS606)について図10を参照しつつ説明する。図10は図9の判定制御処理(ステップS108)及び後述する図16の判定制御処理(ステップS606)のフローチャートである。
判定制御部54は代替フラグがセットされているかを判定する(ステップS201)。
代替フラグがセットされていれば(S201:YES)、判定制御部54は代替コマンド処理(図11)を呼び出し(ステップS203)、その後呼び出し元に戻る。
一方、代替フラグがセットされていなければ(S201:NO)、判定制御部54は修正フラグがセットされているかを判定する(ステップS202)。
修正フラグがセットされていれば(S202:YES)、判定制御部54は修正コマンド処理(図12)を呼び出し(ステップS204)、その後呼び出し元に戻る。
一方、修正フラグがセットされていなければ(S202:NO)、判定制御部54は修正コマンド処理(図13)を呼び出し(ステップS205)、その後呼び出し元に戻る。
<適応通信処理部の動作:代替コマンド処理>
図4の適応通信処理部33が行う図10の代替コマンド処理(ステップS203)について図11を参照しつつ説明する。図11は図10の代替コマンド処理(ステップS203)のフローチャートである。
リクエスト変更部51は、代替DB37からリクエスト先の機器と通信処理部31から入力されたコマンドとに対応づけて登録されている代替コマンド又は代替コマンド群を取得する(ステップS301)。そして、リクエスト変更部51は、取得した代替コマンド又は代替コマンド群のコマンド数Nを取得する(ステップS302)。
リクエスト変更部51は、変数nの値を1にセットする(ステップS303)。
リクエスト変更部51は、n番目の代替コマンドをリクエストとして通信処理部32及びレスポンス条件決定部52へ出力する(ステップS304)。
レスポンス条件決定部52は、リクエスト変更部51から入力された代替コマンドに対応してレスポンス条件DB34に格納されているレスポンス条件を取り出し、当該代替コマンドに対するレスポンス条件の決定を行う(ステップS305)。
適応通信処理部33は、通信処理部32からレスポンス(通信相手の装置からのレスポンス)が入力されるのを待つ(ステップS306)。
適応通信処理部33は通信処理部32からレスポンスの入力があると、照合部53は、当該レスポンスをレスポンス条件と照合する(ステップS307)。
判定制御部54は、照合部53による照合結果を基に、レスポンスがレスポンス条件に合致するかを判定する(ステップS308)。
レスポンスがレスポンス条件に合致していれば(S308:YES)、レスポンス修正部55は、n番目の代替コマンドに対応したレスポンスとして入力されたレスポンスをそのままレスポンス蓄積部38に記録し(ステップS309)、ステップS317の処理へ進む。
レスポンスがレスポンス条件に合致していなければ(S308:NO)、判定制御部54は、照合部53による照合結果を基に、レスポンスがレスポンス条件に包含されているか、つまり、レスポンスをレスポンス条件に合致するように修正可能であるかを判定する(ステップS310)。
なお、レスポンスがレスポンス条件に包含されている(レスポンスがレスポンス条件に合致するように修正可能)とは、リクエストしたコマンドに対して受信したレスポンスがレスポンス条件に合致していないが、リクエストしたコマンドに対して受信したレスポンスからレスポンス条件に合致するレスポンスを作成することができることを意味する。
レスポンスがレスポンス条件に包含されていなければ(S310:NO)、判定制御部54は代替コマンド検索処理(図14)を呼び出し(ステップS321)、その後呼び出し元に戻る。
なお、レスポンスがレスポンス条件に包含されていないとは、リクエストしたコマンドに対して受信したレスポンスがレスポンス条件に合致しておらず、リクエストしたコマンドに対して受信したレスポンスからレスポンス条件に合致するレスポンスを作成することができないことを意味する。
レスポンスがレスポンス条件に包含されていれば(S310:YES)、判定制御部54はリクエスト先の機器に対応してn番目の代替コマンドが修正DB36のフィールド「コマンド」に登録されているかを判定する(ステップS311)。
n番目の代替コマンドが修正DB36に登録されていれば(S311:YES)、レスポンス修正部55はレスポンスをレスポンス条件に合致するように修正する(ステップS312)。そして、レスポンス修正部55は、n番目の代替コマンドに対応したレスポンスとして修正したレスポンスをレスポンス蓄積部38に記録し(ステップS313)、ステップS317の処理へ進む。
n番目の代替コマンドが修正DB36に登録されていなければ(S311:NO)、判定制御部54は修正DB36のフィールド「リクエスト先」にリクエスト先の通信装置の装置名を、フィールド「コマンド」にn番目の代替コマンドを格納する(ステップS314)。レスポンス修正部55は、レスポンスをレスポンス条件に合致するように修正し(ステップS315)、n番目の代替コマンドに対応したレスポンスとして修正したレスポンスをレスポンス蓄積部38に記録し(ステップS316)、ステップS317の処理へ進む。
リクエスト変更部51は、変数nの値を1インクリメントし(ステップS317)、変数nの値がコマンド数Nより大きいかを判定する(ステップS318)。変数nの値がコマンド数Nより大きくなければ(S318:NO)、ステップS304の処理に戻る。
変数nの値がコマンド数Nより大きければ(S318:YES)、レスポンス修正部55は、レスポンス蓄積部38に格納した代替コマンドに対するレスポンス又は代替コマンド群に含まれる各代替コマンドに対するレスポンスからなるレスポンス群を基に、通信処理部31から適応通信処理部32に入力されたコマンドに対するレスポンスのレスポンス条件に合致するレスポンスを作成する(ステップS319)。そして、レスポンス修正部55は、作成したレスポンスを通信処理部31へ出力し(ステップS320)、呼び出し元に戻る。
<適応通信処理部の動作:修正コマンド処理>
図4の適応通信処理部33が行う図10の修正コマンド処理(ステップS204)について図12を参照しつつ説明する。図12は図10の修正コマンド処理(ステップS204)のフローチャートである。
リクエスト変更部51は、通信処理部31から入力されるコマンドをそのままリクエストとして通信処理部32及びレスポンス条件決定部52へ出力する(ステップS401)。
レスポンス条件決定部52は、リクエスト変更部51から入力されたコマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件を取り出し、レスポンス条件の決定を行う(ステップS402)。
適応通信処理部33は、通信処理部32からレスポンス(通信相手の装置からのレスポンス)が入力されるのを待つ(ステップS403)。
適応通信処理部33は通信処理部32からレスポンスの入力があると、照合部53は通信処理部32から入力されたレスポンスをレスポンス条件と照合する(ステップS404)。
判定制御部54は、照合部53による照合結果を基に、レスポンスがレスポンス条件に合致するかを判定する(ステップS405)。
レスポンスがレスポンス条件に合致していれば(S405:YES)、レスポンス修正部55は通信処理部32から入力されたレスポンスをそのまま通信処理部31へ出力し(ステップS406)、呼び出し元に戻る。
レスポンスがレスポンス条件に合致していなければ(S405:NO)、判定制御部54は、照合部53による照合結果を基に、レスポンスがレスポンス条件に包含されているか、つまり、レスポンスをレスポンス条件に合致するように修正可能であるかを判定する(ステップS407)。
レスポンスがレスポンス条件に包含されていなければ(S407:NO)、判定制御部54は代替コマンド検索処理(図14)を呼び出し(ステップS410)、その後呼び出し元に戻る。
レスポンスがレスポンス条件に包含されていれば(S407:YES)、レスポンス修正部55は、レスポンスがレスポンス条件に合致するように当該レスポンスを修正し(ステップS408)、修正したレスポンスを通信処理部31へ出力する(ステップS409)。そして、呼び出し元に戻る。
<適応通信処理部の動作:通常コマンド処理>
図4の適応通信処理部33が行う図10の通常コマンド処理(ステップS205)について図13を参照しつつ説明する。図13は図10の通常コマンド処理(ステップS205)のフローチャートである。
リクエスト変更部51は、通信処理部31から入力されるコマンドをそのままリクエストとして通信処理部32及びレスポンス条件決定部52へ出力する(ステップS501)。
レスポンス条件決定部52は、リクエスト変更部51から入力されたコマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件を取り出し、レスポンス条件の決定を行う(ステップS502)。
適応通信処理部33は、通信処理部32からレスポンス(通信相手の装置からのレスポンス)が入力されるのを待つ(ステップS503)。
適応通信処理部33は通信処理部32からレスポンスの入力があると、照合部53は通信処理部32から入力されたレスポンスをレスポンス条件と照合する(ステップS504)。
判定制御部54は、照合部53による照合結果を基に、レスポンスがレスポンス条件に合致するかを判定する(ステップS505)。
レスポンスがレスポンス条件に合致していれば(S505:YES)、レスポンス修正部55は通信処理部32から入力されたレスポンスをそのまま通信処理部31へ出力し(ステップS506)、呼び出し元に戻る。
レスポンスがレスポンス条件に合致していなければ(S505:NO)、判定制御部54は、照合部53による照合結果を基に、レスポンスがレスポンス条件に包含されているか、つまり、レスポンスをレスポンス条件に合致するように修正可能であるかを判定する(ステップS507)。
レスポンスがレスポンス条件に包含されていなければ(S507:NO)、判定制御部54は代替コマンド検索処理(図14)を呼び出し(ステップS511)、その後呼び出し元に戻る。
レスポンスがレスポンス条件に包含されていれば(S507:YES)、判定制御部54は修正DB36にリクエスト先の通信装置に対応付けてリクエストされたコマンドを登録する(ステップS508)。レスポンス修正部55は、レスポンスがレスポンス条件に合致するように当該レスポンスを修正し(ステップS509)、修正したレスポンスを通信処理部31へ出力する(ステップS510)。そして、呼び出し元に戻る。
<適応通信処理部の動作:代替コマンド検索処理>
図4の適応通信処理部33が行う図11、12、13の代替コマンド検索処理(ステップS321、S410、S511)について図14を参照しつつ説明する。図14は図11、12、13の代替コマンド検索処理(ステップS321、S410、S511)のフローチャートである。
判定制御部54は代替フラグがセットされているかを判定する(ステップS601)。代替フラグがセットされていなければ(S601:NO)、ステップS602の処理へ進み、代替フラグがセットされていれば(S601:YES)、ステップS608の処理へ進む。
判定制御部54は、コマンドDB35において通信処理部31から入力されたコマンドに対応する代替コマンド又は複数の代替コマンドからなる代替コマンド群を検索する(ステップS602)。判定制御部54は、検索の結果、代替コマンド及び代替コマンド群の何れかがコマンドDB35にあったかを判定する(ステップS603)。
代替コマンド及び代替コマンド群の何れもがコマンドDB35になければ(S603:NO)、レスポンス修正部55は通信処理部31へエラー出力し(ステップS607)、呼び出し元に戻る。
代替コマンド及び代替コマンド群の何れかがコマンドDB35にあれば(S603:YES)、判定制御部54は、リクエスト先の機器と通信処理部31から入力されるコマンドとに対応させて検索の結果見つかった代替コマンド又は代替コマンド群を代替DB37に登録する(ステップS604)。判定制御部54は代替フラグをセットする(ステップS605)。そして、判定制御部54は判定制御処理(図10)を呼び出し(ステップS606)、その後呼び出し元に戻る。
判定制御部54は、コマンドDB35において通信処理部31から入力されるコマンドに対応した別の代替コマンド又は複数のコマンドからなる代替コマンド群を検索する(ステップS608)。なお、別の代替コマンド又は代替コマンド群は、リクエスト先の通信装置に対して通信処理部31から入力されるコマンドに関してこれまでに対象となっていないコマンドDB35に記憶されている代替コマンド又は代替コマンド群である。そして、判定制御部54は、検索の結果、コマンドDB35に別の代替コマンド及び代替コマンド群の何れかがコマンドDB35にあったかを判定する(ステップS609)。
別の代替コマンド及び代替コマンド群の何れもがコマンドDB35になければ(S609:NO)、レスポンス修正部55は通信処理部31へエラー出力し(ステップS611)、呼び出し元に戻る。
別の代替コマンド及び代替コマンド群の何れかがコマンドDB35にあれば(S609:YES)、判定制御部54は、リクエスト先の通信装置と通信処理部31から入力されたコマンドとに対応して代替DB37に登録されている代替コマンド又は代替コマンド群を、検索の結果見つかった別の代替コマンド又は代替コマンド群に更新する(ステップS610)。判定制御部54は代替フラグをセットする(ステップS605)。そして、判定制御部54は判定制御処理(図10)を呼び出し(ステップS606)、その後呼び出し元に戻る。
<具体例:POP3>
(通信装置の動作:レスポンスの修正)
図4の通信装置1がリクエストに対するレスポンスを修正する場合の通信装置1の動作について図15を参照しつつ説明する。図15は図4の通信装置1がリクエストに対するレスポンスの修正を行う場合の動作シーケンスである。
通信処理部31から適応通信処理部33にTOPコマンドが入力される(ステップS1)。適応通信処理部33の判定制御部54は、修正DB36にリクエスト先の通信装置に対応してTOPコマンドが登録されていないので修正フラグをリセットし、代替DB37にリクエスト先の機器に対応してフィールド「コマンド」にTOPコマンドが登録されていないので代替フラグをリセットする。判定制御部54は、代替フラグがセットされておらず、修正フラグがセットされていないので、通常コマンド処理を呼び出す(ステップS2)。
リクエスト変更部51は、通信処理部31から入力されたTOPコマンドをそのまま通信処理部32及びレスポンス条件決定部52へ出力する(ステップS3)。このTOPコマンドが通信装置1から通信相手の装置へリクエストとして送信され、通信装置1は通信相手の装置からTOPコマンドに対するレスポンスを受信することになる。
レスポンス条件決定部52は、TOPコマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件を取り出し、レスポンス条件の決定を行う(ステップS4)。
通信装置1は通信相手の装置からTOPコマンドに対するレスポンスを受け取り、通信処理部32から適応通信処理部33にレスポンスが入力される(ステップS5)。照合部53はレスポンスをレスポンス条件と照合する(ステップS6)。
ここで、レスポンス条件のメール本文の行数が5行で、通信処理部32から入力されるレスポンスに含まれるメール本文の行数が7行であったとすると、判定制御部54は、レスポンスがレスポンス条件に合致せず(ステップS7)、包含されていると判断する(ステップS8)。判定制御部54は、修正DB36にリクエスト先の通信装置に対応付けてTOPコマンドを登録する(ステップS9)。
レスポンス修正部55は、通信処理部32から入力されるレスポンスをレスポンス条件に合致するように修正し(ステップS10)、修正したレスポンスを通信処理部31へ出力する(ステップS11)。レスポンス条件が指定したメール本文の行数が5行で、レスポンスに含まれるメール本文の行数が7行であれば、メール本文から2行分削除して5行にすることによってレスポンスの修正が行われる。
再び、ステップS1からステップS11と同じ通信相手の通信装置に対してTOPコマンドがリクエストされるとする。
通信処理部31から適応通信処理部33にTOPコマンドが入力される(ステップS31)。適応通信処理部33の判定制御部54は、修正DB36にリクエスト先の通信装置に対応してTOPコマンドが登録されているので修正フラグをセットし、代替DB37にリクエスト先の機器に対応してTOPコマンドが登録されていないので代替フラグをリセットする。判定制御部54は、代替フラグがセットされておらず、修正フラグがセットされているので、修正コマンド処理を呼び出す(ステップS32)。
リクエスト変更部51は、通信処理部31から入力されたTOPコマンドをそのまま通信処理部32及びレスポンス条件決定部52へ出力する(ステップS33)。このTOPコマンドが通信装置1から通信相手の装置へリクエストとして送信され、通信装置1は通信相手の装置からTOPコマンドに対するレスポンスを受信することになる。
レスポンス条件決定部52は、TOPコマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件を取り出し、レスポンス条件の決定を行う(ステップS34)。
通信装置1は通信相手の装置からTOPコマンドに対するレスポンスを受け取り、通信処理部32から適応通信処理部33にレスポンスが入力される(ステップS35)。照合部53はレスポンスをレスポンス条件と照合する(ステップS36)。
ここで、レスポンス条件のメール本文の行数が5行で、通信処理部32から入力されるレスポンスに含まれるメール本文の行数が7行であったとすると、判定制御部54は、レスポンスがレスポンス条件に合致せず(ステップS37)、包含されていると判断する(ステップS38)。
レスポンス修正部55は、通信処理部32から入力されるレスポンスをレスポンス条件に合致するように修正し(ステップS39)、修正したレスポンスを通信処理部31へ出力する(ステップS40)。
(通信装置の動作:コマンドの代替)
図4の通信装置1が代替コマンドを用いて通信を継続する場合の通信装置1の動作について図16及び図17を参照しつつ説明する。図16及び図17は図4の通信装置1が代替コマンドを用いて通信を継続する場合の動作シーケンスである。
通信処理部31から適応通信処理部33にTOPコマンドが入力される(ステップS51)。適応通信処理部33の判定制御部54は、修正DB36にリクエスト先の通信装置に対応してTOPコマンドが登録されていないので修正フラグをリセットし、代替DB37にリクエスト先の機器に対応してフィールド「コマンド」にTOPコマンドが登録されていないので代替フラグをリセットする。判定制御部54は、代替フラグがセットされておらず、修正フラグがセットされていないので、通常コマンド処理を呼び出す(ステップS52)。
リクエスト変更部51は、通信処理部31から入力されたTOPコマンドをそのまま通信処理部32及びレスポンス条件決定部52へ出力する(ステップS53)。このTOPコマンドが通信装置1から通信相手の装置へリクエストとして送信され、通信装置1は通信相手の装置からTOPコマンドに対するレスポンスを受信することになる。
レスポンス条件決定部52は、TOPコマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件を取り出し、レスポンス条件の決定を行う(ステップS54)。
通信装置1は通信相手の装置からTOPコマンドに対するレスポンスを受け取り、通信処理部32から適応通信処理部33にレスポンスが入力される(ステップS55)。照合部53はレスポンスをレスポンス条件と照合する(ステップS56)。
ここで、レスポンス条件のメール本文の行数が10行で、通信処理部32から入力されるレスポンスに含まれるメール本文の行数が7行であったとすると、判定制御部54は、レスポンスがレスポンス条件に合致せず(ステップS57)、包含されていないと判断し、代替コマンド検索処理を呼び出す(ステップS58)。
判定制御部54は、コマンドDB35にTOPコマンドに対応して記憶されている代替コマンド又は代替コマンド群を検索し(ステップS59)、検索の結果見つかったRETR代替コマンドをリクエスト先の通信機器とTOPコマンドとに対応付けて代替DB37に登録する(ステップS60)。
判定制御部54は、修正DB36にリクエスト先の通信装置に対応してTOPコマンドが登録されていないので修正フラグをリセットし、代替DB37にリクエスト先の機器に対応してフィールド「コマンド」にTOPコマンドが登録されているので代替フラグをセットする。判定制御部54は、代替フラグがセットされているので、代替コマンド処理を呼び出す。
リクエスト変更部51は、リクエスト先の通信装置と通信処理部31から入力されたTOPコマンドに対応して代替DB35に記憶されているRETR代替コマンドを取り出し、RETR代替コマンドを通信処理部32及びレスポンス条件決定部52へ出力する(ステップS61)。このRETR代替コマンドが通信装置1から通信相手の装置へリクエストとして送信され、通信装置1は通信相手の装置からRETR代替コマンドに対するレスポンスを受信することになる。
レスポンス条件決定部52は、RETR代替コマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件を取り出し、レスポンス条件の決定を行う(ステップS62)。
通信装置1は通信相手の装置からRETR代替コマンドに対するレスポンスを受け取り、通信処理部32から適応通信処理部33にレスポンスが入力される(ステップS63)。照合部53はレスポンスをレスポンス条件と照合する(ステップS64)。
ここで、レスポンスにメール本文全てが含まれているとすると、判定制御部54は、レスポンスがレスポンス条件に合致すると判断し(ステップS65)、レスポンス修正部55は入力されたレスポンスをレスポンス蓄積部38に格納する(ステップS66)。
レスポンス修正部55は、RETR代替コマンドに対するレスポンスを利用して、通信処理部31から入力されたTOPコマンドのレスポンス条件に合致したレスポンスを作成し(ステップS67)、作成したレスポンスを通信処理部31へ出力する(ステップS68)。
再び、ステップS51からステップS68と同じ通信相手の通信装置に対してTOPコマンドがリクエストされるとする。
通信処理部31から適応通信処理部33にTOPコマンドが入力される(ステップS81)。適応通信処理部33の判定制御部54は、修正DB36にリクエスト先の通信装置に対応してTOPコマンドが登録されていないので修正フラグをリセットし、代替DB37にリクエスト先の機器に対応してフィールド「コマンド」にTOPコマンドが登録されているので代替フラグをセットする。判定制御部54は、代替フラグがセットされているので、代替コマンド処理を呼び出す(ステップS82)。
リクエスト変更部51は、リクエスト先の通信装置と通信処理部31から入力されたTOPコマンドに対応して代替DB37に記憶されているRETR代替コマンドを取り出し(ステップS83)、RETR代替コマンドを通信処理部32及びレスポンス条件決定部52へ出力する(ステップS84)。このRETR代替コマンドが通信装置1から通信相手の装置へリクエストとして送信され、通信装置1は通信相手の装置からRETR代替コマンドに対するレスポンスを受信することになる。
レスポンス条件決定部52は、RETR代替コマンドに対応してレスポンス条件DB34に記憶されているレスポンス条件を取り出し、レスポンス条件の決定を行う(ステップS85)。
通信装置1は通信相手の装置からRETR代替コマンドに対するレスポンスを受け取り、通信処理部32から適応通信処理部33にレスポンスが入力される(ステップS86)。照合部53はレスポンスをレスポンス条件と照合する(ステップS87)。
ここで、レスポンスにメール本文全てが含まれているとすると、判定制御部54は、レスポンスがレスポンス条件に合致すると判断し(ステップS88)、レスポンス修正部55は入力されたレスポンスをレスポンス蓄積部38に格納する(ステップS89)。
レスポンス修正部55は、RETR代替コマンドに対するレスポンスを利用して、通信処理部31から入力されたTOPコマンドのレスポンス条件に合致したレスポンスを作成し(ステップS90)、作成したレスポンスを通信処理部31へ出力する(ステップS91)。
≪第2の実施の形態≫
以下、本発明の第2の実施の形態について図面を参照しつつ説明する。
第2の実施の形態は、第1の実施の形態にレスポンスの修正、及び代替コマンド又は代替コマンド群を用いた継続通信、の夫々の実行に制限を加える機能を付加したものである。
なお、本実施の形態において、第1の実施の形態と同じ機能を有する構成要素及び処理を行う処理ステップには同じ符号を付し、第1の実施の形態の説明が適用できるため、本実施の形態ではその説明を省略する。
<通信装置の装置構成>
本実施の形態の通信装置1aの装置構成について図18を参照しつつ説明する。図18は本実施の形態の通信装置1aの装置構成図である。
通信装置1aは、CPU11a、メモリ12a、DSP13、アシスト回路14、通信インタフェース(通信IF)15、表示制御回路16、表示デバイス17a、入力インタフェース(入力IF)18、キーボード18a、マウス18b、及びタブレッド18cを備える。CPU11a、メモリ12a、DSP13、アシスト回路14、通信IF15、表示制御回路16、入力IF18は、夫々、バス19に接続されている。
表示デバイス17aには制限レベル設定画面が表示されるとともに、CPU11aの処理によりメモリ12aには制限レベル設定画面でユーザによって指定される制限レベルが格納される。
<制限レベル設定画面>
図18の表示デバイス17aに表示される制限レベル設定画面について図19を参照しつつ説明する。図19は図18の表示デバイス17aに表示される制限レベル設定画面の一例である。
制限レベル設定画面には、「スライダのつまみを移動して、レスポンスの修正の実行、及び代替コマンド又は代替コマンド群を用いた継続通信の実行に、制限をかけるための制限レベルを設定します。」のメッセージ17Aが表示される。
また、制限レベル設定画面には、スライダ17Bが表示され、ユーザはマウス18bなどを利用してつまみ17Cを移動させることによって制限レベルを指定することができる。制限レベルは、レスポンスの修正の実行、及び代替コマンド又は代替コマンド群を用いた継続通信の実行に、制限をかけるためのものである。
スライダ17B及びつまみ17Cにより、制限レベルとして6段階の制限レベルが指定できるようになっており、画面上から画面下に向かって制限レベルが低くなる。但し、制限レベルの数値として、高い制限レベルから低い制限レベルに向かって、“5”、“4”、・・・、“1”、“0”が割り当てられている。
例えば、制限レベルを危険度とした場合は、制限レベル“5”は最も安全度の高い(危険度の低い)レベルを示しており、制限レベル“0”は最も安全度の低い(危険度の高い)レベルを示している。
さらに、制限レベル設定画面には、制限レベル決定用の“OK”ボタン17Dと、キャンセル用の“キャンセル”ボタン17Eとが表示される。
<CPUの動作:制限レベル受付処理>
図18のCPU11aが行う制限レベル格納処理について図20を参照しつつ説明する。図20は図18のCPU11aにより行われる制限レベル受付処理のフローチャートである。
CPU11aは、キーボード18aやマウス18bなどから入力IF18を介して入力される入力信号に基づいて、ユーザの入力操作を監視する(ステップS701)。
CPU11aは、入力信号に基づいて、ユーザの入力操作が制限レベル設定画面の呼び出し操作であるかを判定する(ステップS702)。制限レベル設定画面の呼び出し操作が行われていなければ(S702:NO)、ステップS701の処理に戻る。
制限レベル設定画面の呼び出し操作が行われていれば(S702:YES)、CPU11aは表示制御回路16を制御して図19に一例を示した制限レベル設定画面を表示デバイス17aに表示する(ステップS703)。
ユーザは、制限レベル設定画面を利用して、マウス18bなどを用いてつまみ17Cを移動させたり、“OK”ボタン17Dや“キャンセル”ボタン17Eを押下したりする。
CPU11aは、マウス18bなどから入力IF18を介して入力される入力信号に基づいて、ユーザによる押下ボタンが“OK”ボタン17Dであるか、“キャンセル”ボタン17Eであるかを判定する(ステップS704)。
“OK”ボタン17Dが押下されていれば(S704:OK)、CPU11aは、つまみの位置に基づいて制限レベルを特定し、特定した制限レベルをメモリ12aの後述する制限レベル記憶部39に格納する(ステップS705)。そして、CPU11aは表示制御回路16を制御して制限レベル設定画面の非表示処理を行い(ステップS706)、ステップS701に戻る。
“キャンセル”ボタン17Eが押下されていれば(S704:キャンセル)、CPU11aは表示制御回路16を制御して制限レベル設定画面の非表示処理を行い(ステップS706)、ステップS701に戻る。
<通信装置の機能構成>
図18の通信装置1aの機能構成について図21を参照しつつ説明する。図21は図18の通信装置1aの機能構成図である。
通信装置1aは、通信処理部31、32、適応通信処理部33a、レスポンス条件データベース(レスポンス条件DB)34、コマンドデータベース(コマンドDB)35a、修正データベース(修正DB36)、代替データベース(代替DB)37、レスポンス蓄積部38、及び閾値記憶部39を有する。
適応通信処理部33aは、通信処理部31と通信処理部32との間に位置し、通信処理部31と通信処理部32との間の通信の中継を行う。なお、適応通信処理部33aの機能の詳細は後述する。
コマンドDB35aは、各コマンドに対応して、当該コマンドの代わりとなる代替コマンド又は複数の代替コマンドからなる代替コマンド群とその代替動作レベルとの対が格納されており、その一例を図22に示す。代替コマンド又は代替コマンド群と対になった代替動作レベルが制限レベルを超えていれば場合に、代替コマンド又は代替コマンド群を用いた継続通信が行われる。
図22の例では、フィールド「コマンド」に格納されているコマンドの代わりとなる代替コマンド又は代替コマンド群及び代替動作レベルの対が、フィールド「代替(1)」、「代替(2)」、「代替(3)」に格納される。フィールド「代替(1)」、「代替(2)」、代替(3)」には、代替コマンド又は代替コマンドが格納される領域と、その代替動作レベルが格納される領域とがある。
制限レベル記憶部39は、図20の制限レベル受付処理の実行により決められた制限レベルを記憶する記憶部である。
<適応通信処理部の機能構成>
適応通信処理部33aは、リクエスト変更部51、レスポンス条件決定部52、照合部53、判定制御部54a及びレスポンス修正部55aとして機能する。
判定制御部54aは、修正DB36及び代替DB37の記憶内容を基にリクエスト変更部51の制御を行い、修正DB36、代替DB37及び照合部53による照合結果を基にレスポンス修正部55aの制御を行う。
判定制御部54aは、照合部53から照合結果に応じて、コマンドDB35において代替コマンド又は代替コマンド群の検索を行い、検索の結果見つかった代替コマンド又は代替コマンド群の代替動作レベルが制限レベル記憶部39に記憶されている制限レベル以上であれば、リクエスト先の通信装置と通信処理部31から適応通信処理部33aに入力されたコマンドとに対応させて代替DB37に格納する。
レスポンス修正部55aは、判定制御部54に制御されて、通信処理部32から入力されるレスポンスをそのまま、或いは、修正動作レベルが制限レベル記憶部39に記憶されている制限レベル以上である場合にはレスポンス条件に合致するように修正して通信処理部31へ出力する。
また、レスポンス修正部55aは、判定制御部54に制御されて、通信処理部32から入力されるレスポンスをそのまま、或いは、修正動作レベルが制限レベル記憶部39に記憶されている制限レベル以上である場合にはレスポンス条件に合致するように修正してレスポンス蓄積部38に格納する。そして、レスポンス修正部55aは、レスポンス蓄積部38に蓄積されているレスポンスを基に通信処理部31から適応通信処理部33aに入力されるコマンドのレスポンス条件に合致したレスポンスを作成して、通信処理部31へ出力する。
<適応通信処理部の動作>
以下、適応通信処理部33aの動作を説明する。
但し、適応通信処理部33aは、図9及び図10に示すフローと実質的に同じ処理により、リクエスト入力処理及び判定制御処理を行う。
なお、本実施の形態では、図9の判定制御処理(ステップS108)において図10の判定制御処理フローが呼び出される。
また、図10の代替コマンド処理(ステップS203)において図23の代替コマンド処理フローが呼び出され、修正コマンド処理(ステップS204)において図24の修正コマンド処理フローが呼び出され、通常コマンド処理(ステップS205)において図25の通常コマンド処理フローが呼び出される。
<適応通信処理部の動作:代替コマンド処理>
図21の適応通信処理部33aが行う図10の代替コマンド処理(ステップS203)について図23を参照しつつ説明する。図23は図10の代替コマンド処理(ステップS203)のフローチャートである。
図23の代替コマンド処理フローは、図11の代替コマンド処理フローに、レスポンスがレスポンス条件に包含されているかの判定ステップ(ステップS310)を行う前に、レスポンスの修正を実行するかの判定ステップを加えたものである。
なお、代替コマンド検索処理(ステップS321)において図26の代替コマンド検索処理フローが呼び出される。
ステップS308の判定ステップにおいて、判定制御部54aによってレスポンスがレスポンス条件に合致していないと判定された場合(S308:NO)、レスポンス修正部55aは、予め設定されている修正動作レベルが制限レベル記憶部39に記憶されている制限レベルを超えているかを判定する(ステップS308A)。
修正動作レベルが制限レベルを超えていれば(S308A:YES)、ステップS310以降の処理が行われる。修正動作レベルが制限レベル以下であれば(S308A:NO)、ステップS321以降の処理が行われる。
<適応通信処理部の動作:修正コマンド処理>
図21の適応通信処理部33aが行う図10の修正コマンド処理(ステップS204)について図24を参照しつつ説明する。図24は図10の修正コマンド処理(ステップS204)のフローチャートである。
図24の修正コマンド処理フローは、図12の修正コマンド処理フローに、レスポンスがレスポンス条件に包含されているかの判定ステップ(ステップS407)を行う前に、レスポンスの修正を実行するかの判定ステップを加えたものである。
なお、代替コマンド検索処理(ステップS410)において図26の代替コマンド検索処理フローが呼び出される。
ステップS405の判定ステップにおいて、判定制御部54aによってレスポンスがレスポンス条件に合致していないと判定された場合(S405:NO)、レスポンス修正部55aは、予め設定されている修正動作レベルが制限レベル記憶部39に記憶されている制限レベルを超えているかを判定する(ステップS405A)。
修正動作レベルが制限レベルを超えていれば(S405A:YES)、ステップS407以降の処理が行われる。修正動作レベルが制限レベル以下であれば(S405A:NO)、ステップS410以降の処理が行われる。
<適応通信処理部の動作:通常コマンド処理>
図21の適応通信処理部33aが行う図10の通常コマンド処理(ステップS205)について図25を参照しつつ説明する。図25は図10の通常コマンド処理(ステップS205)のフローチャートである。
図25の通常コマンド処理フローは、図13の通常コマンド処理フローに、レスポンスがレスポンス条件に包含されているかの判定ステップ(ステップS507)を行う前に、レスポンスの修正を実行するかの判定ステップを加えたものである。
なお、代替コマンド検索処理(ステップS511)において図26の代替コマンド検索処理フローが呼び出される。
ステップS505の判定ステップにおいて、判定制御部54aによってレスポンスがレスポンス条件に合致していないと判定された場合(S505:NO)、レスポンス修正部55aは、予め設定されている修正動作レベルが制限レベル記憶部39に記憶されている制限レベルを超えているかを判定する(ステップS505A)。
修正動作レベルが制限レベルを超えていれば(S505A:YES)、ステップS507以降の処理が行われる。修正動作レベルが制限レベル以下であれば(S405A:NO)、ステップS511以降の処理が行われる。
<適応通信処理部の動作:代替コマンド検索処理>
図21の適応通信処理部33aが行う図23、24、25の代替コマンド検索処理(ステップS321、S410、S511)について図26を参照しつつ説明する。図26は図23、24、25の代替コマンド検索処理(ステップS321、S410、S511)のフローチャートである。
図26の代替コマンド検索処理フローは、図14の代替コマンド検索処理フローに、次の2つの判定ステップを加えたものである。
1つ目の判定ステップは、代替コマンド及び代替コマンド群の何れかがあったと判定された(ステップS603:YES)後、検索の結果見つかった代替コマンド又は代替コマンド群を用いた通信の実行を行うかを決めるための判定ステップである。
2つ目の判定ステップは、別の代替コマンド及び代替コマンド群の何れかがあったと判定された(ステップS609:YES)後、検索の結果見つかった別の代替コマンド又は代替コマンド群を用いた通信の実行を行うかを決めるための判定ステップである。
ステップS603の判定ステップにおいて、判定制御部54aによって代替コマンド及び代替コマンド群の何れかがあったと判定された場合(S603:YES)、判定制御部54aは、コマンドDB35aを参照して、検索の結果見つかった代替コマンド又は代替コマンド群の代替動作レベルを取得する。そして、判定制御部54aは、取得した代替動作レベルが制限レベル記憶部39に記憶されている制限レベルを超えているかを判定する(ステップS603A)。
代替動作レベルが制限レベルを超えていれば(S603A:YES)、ステップS604以降の処理が行われる。代替動作レベルが制限レベル以下であれば(S603A:NO)、ステップS602以降の処理が行われる。
なお、代替動作レベルが制限レベルを超えていれば(S603A:YES)、検索の結果見つかった代替コマンド又は代替コマンド群が代替DB37に格納され、図10の判定制御フローを経て図23の代替コマンド処理フローが実行される。つまり、ステップS603Aの判定ステップは、検索の結果見つかった代替コマンド又は代替コマンド群を用いた通信の実行を行うかを決めるための判定ステップと等価である。
ステップS609の判定ステップにおいて、判定制御部54aによって別の代替コマンド及び代替コマンド群の何れかがあったと判定された場合(S609:YES)、判定制御部54aは、コマンドDB35aを参照して、検索の結果見つかった別の代替コマンド又は代替コマンド群の代替動作レベルを取得する。そして、判定制御部54aは、取得した代替動作レベルが制限レベル記憶部39に記憶されている制限レベルを超えているかを判定する(ステップS609A)。
代替動作レベルが制限レベルを超えていれば(S609A:YES)、ステップS610以降の処理が行われる。代替動作レベルが制限レベル未満であれば(S609A:NO)、ステップS608以降の処理が行われる。
なお、代替動作レベルが制限レベルを超えていれば(S609A:YES)、検索の結果見つかった別の代替コマンド又は代替コマンド群が代替DB37に格納され、図10の判定制御フローを経て図23の代替コマンド処理フローが実行される。つまり、ステップS609Aの判定ステップは、検索の結果見つかった別の代替コマンド又は代替コマンド群を用いた通信の実行を行うかを決めるための判定ステップと等価である。
<具体例>
以下、具体例を挙げて説明する。
修正動作レベルが“1”に設定されている。また、コマンドaに対して代替コマンドa1と代替コマンドa2とがあり、代替コマンドa1の代替動作レベルが“2”に、代替コマンドa2の代替コマンド動作レベルが“4”であるとする。そして、通信処理部31から適応通信処理部33aへコマンドa1が入力されたとする。
(1)ユーザによって制限レベルが“0”に設定されている場合、以下の通りである。
修正動作レベル“1”は制限レベル“0”を超えているので、必要な場合にはレスポンスの修正が行われる。また、代替コマンドa1の代替動作レベル“2”と代替コマンドa2の代替動作レベル“4”とは制限レベル“0”を超えているので、必要な場合には代替コマンドa1を用いた通信が行われ、必要な場合には代替コマンドa2を用いた通信が行われる。
(2)ユーザによって制限レベルが“1”に設定されている場合、以下の通りである。
修正動作レベル“1”は制限レベル“1”を超えていないので、レスポンスの修正の実行は行われない。これに対して、代替コマンドa1の代替動作レベル“2”と代替コマンドa2の代替動作レベル“4”とは制限レベル“1”を超えているので、必要な場合には代替コマンドa1を用いた通信が行われ、必要な場合には代替コマンドa2を用いた通信が行われる。
(3)ユーザによって制限レベルが“2”に設定されている場合、以下の通りである。
修正動作レベル“1”は制限レベル“2”を超えていないので、レスポンスの修正の実行は行われない。また、代替コマンドa1の代替動作レベル“2”は制限レベル“2”を超えていないので、代替コマンドa1を用いた通信は行われない。これに対して、代替コマンドa2の代替動作レベル“4”は制限レベル“2”を超えているので、必要な場合には代替コマンドa2を用いた通信が行われる。
(4)ユーザによって制限レベルが“5”に設定されている場合、以下の通りである。
修正動作レベル“1”は制限レベル“5”を超えていないので、レスポンスの修正の実行は行われない。また、代替コマンドa1の代替動作レベル“2”と代替コマンドa2の代替動作レベル“4”は制限レベル“5”を超えていないので、代替コマンドa1を用いた通信と代替コマンドa2を用いた通信は行われない。
このように、レスポンスの修正を行うか、代替コマンド又は代替コマンド群を用いた通信をどの程度行うかを、ユーザ側の判断で決定することができる。
<補足>
本発明は上記の実施の形態に限られるものではなく、例えば、以下のようなものも含まれる。
(1)上記の実施の形態ではTCP/IP階層モデルを例に挙げて説明したが、これに限らず、本発明は他のモデルに対しても適用することができる。
(2)上記の実施の形態では処理対象のプロトコルをPOP3などとし、POP3などのプロトコルとTCP或いはUDPとの間に本発明の機能を設けた場合を例に挙げて説明したが、これに限らず、任意の処理対象のプロトコルとその下位層に位置するプロトコルとの間に本発明の機能を設けることができる。
(3)上記の実施の形態では、POP3などのプロトコルとTCP或いはUDPとの間に本発明の機能を設けた場合を例に挙げて説明したが、これに限らず、処理対象のプロトコルに本発明の機能を組み込んでもよく、また、処理対象のプロトコルの下位層に位置するプロトコルに本発明の機能を組み込んでもよい。
(4)上記の第1の実施の形態では、コマンドDB35は予め作成されている場合を例に挙げて説明したがこれに限らず、コマンドDBを例えば推論機構を用いて自動生成するようにしてもよい。
全ての通信コマンドの集合をAとし、通信コマンドxの機能をfunc(x)とし、通信コマンドx,y,・・・を組み合わせた場合の機能をFUNC(x,y,・・・)とする。
コマンドa(a∈A)は、func(a)⊆func(b)となるコマンドb(b∈B)で代替可能である。また、コマンドa(a∈A)は、func(a)⊆func(x,y,・・・)となるコマンド群x,y,・・・(x,y,・・・∈B)で代替可能である。
上記のルールを利用して、レスポンス条件DB34を検索することによって、コマンドaの代わりとなる一つの代替コマンド又は複数の代替コマンドを含む代替コマンド群を生成することができる。
例えば、POPを例にすれば、func(TOP)⊆func(RETR)とfunc(LIST)⊆func(STAT)の関係を述語理論を利用した推論機構によって発見できる。これにより、TOPはRETRで、LISTはSTATで代替することが可能なことが分かる。
(5)パーソナルコンピュータなどの機器とサーバ装置などの機器との間の通信、パーソナルコンピュータと周辺デバイスとの間の通信、LSI(large Scale Integration)間の通信、チップ内の通信などの様々な通信において、リクエストと当該リクエストに対するレスポンスの送受信を行うものであれば本発明の機能を適用することができる。
例えば、本発明の機能は、ATAPI(AT Attachment Interface)やシリアルATPIなどのHDDインタフェースでの通信、USBやBluetooth上の通信、I2C(Inter-Integrated Circuit)といったシリアルバスのプロトコルなどによるチップ内通信などに適用できる。
(6)上記の実施の形態では、修正DB36と代替DB37の記憶を通信装置単位で行っている場合を例に挙げて説明したが、これに限らず、例えば、機種名の取得が可能な状況においては修正DB36と代替DB37の記憶を通信装置の機種単位で行うようにしてもよい。
(7)上記の実施の形態では、レスポンスがレスポンス条件に合致せず、レスポンス条件に包含されている場合はレスポンスがレスポンス条件に合致するように当該レスポンスを修正する場合を例に挙げて説明したが、これに限らず、レスポンスがレスポンス条件に合致せず、レスポンス条件に包含されている場合も代替コマンド又は代替コマンド群を用いて通信相手の装置にリクエストするようにしてもよい。
(8)リクエストとして送信されるコマンドの形式として、コマンド名と複数の引数と各引数の範囲を有するとする。また、各コマンドに対するレスポンスは複数のタイプを持ち、夫々のタイプに対して値の範囲や制約条件が定義されているとする。これらを使用してレスポンス条件の生成、代替コマンド又は代替コマンド群の検索を行うようにしてもよい。
また、リクエストとして送信されるコマンドの形式として、コマンド名と現在の通信状態と次の通信状態と複数の引数と各引数の範囲を有する。また、各コマンドに対するレスポンスは現在の通信状態を有し、複数のタイプを持ち、夫々のタイプに対して値の範囲や制約条件が定義されているとする。これらを使用して、現在の通信状態や次の通信状態も含めてレスポンス条件の生成、代替コマンド又は代替コマンド群の検索を行うようにしてもよい。
(9)上記の実施の形態において説明した処理と等価な処理手順を記述したプログラムを作成して、当該プログラムをコンピュータ等で読み取り可能なCD−ROMなどの記録媒体に記録するようにしてもよい。
本発明は、リクエストと当該リクエストに対するレスポンスの受け渡しを行う通信装置間の通信に利用することができる。
第1の実施の形態の通信システムのシステム構成図。 図1の通信装置の装置構成図。 図1の通信装置の階層構造を示す図。 図1の通信装置の機能構成図。 図4のレスポンス条件データベース(レスポンス条件DB)の一例を示す図。 図4のコマンドデータベース(コマンドDB)の一例を示す図。 図4の修正データベース(修正DB)の一例を示す図。 図4の代替データベース(代替DB)の一例を示す図。 図4の適応通信処理部により行われる処理動作のメインフローのフローチャート。 図4の適応通信処理部により行われる判定制御処理のフローチャート。 図4の適応通信処理部により行われる代替コマンド処理のフローチャート。 図4の適応通信処理部により行われる修正コマンド処理のフローチャート。 図4の適応通信処理部により行われる通常コマンド処理のフローチャート。 図4の適応通信処理部により行われる代替コマンド検索処理のフローチャート。 図4の通信装置がリクエストに対するレスポンスの修正を行う場合の動作シーケンス。 図4の通信装置が代替コマンドを用いて通信を継続する場合の動作シーケンス。 図4の通信装置が代替コマンドを用いて通信を継続する場合の動作シーケンス。 第2の実施の形態の通信装置の装置構成図。 図18の表示デバイスに表示される制限レベル設定画面の一例を示す図。 図18のCPUにより行われる制限レベル受付処理のフローチャート。 図18の通信装置の機能構成図。 図21のコマンドデータベース(コマンドDB)の一例を示す図。 図21の適応通信処理部により行われる代替コマンド処理のフローチャート。 図21の適応通信処理部により行われる修正コマンド処理のフローチャート。 図21の適応通信処理部により行われる通常コマンド処理のフローチャート。 図21の適応通信処理部により行われる代替コマンド検索処理のフローチャート。
符号の説明
1、2 通信装置
31、32 通信処理部
33 適応通信処理部
34 レスポンス条件データベース
35 コマンドデータベース
36 修正データベース
37 代替データベース
38 レスポンス蓄積部
51 リクエスト変更部
52 レスポンス条件決定部
53 照合部
54 判定制御部
55 レスポンス修正部

Claims (9)

  1. 他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置において行われる通信方法であって、
    リクエストのコマンドを他の通信装置へ送信する送信ステップと、
    前記送信ステップにおいて送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定ステップと、
    前記送信ステップにおいて送信された前記コマンドに対するレスポンスを前記決定ステップにおいて定めた前記条件と照合する照合ステップと、
    前記照合ステップにおける照合の結果、前記レスポンスが前記条件に合致しなければ、当該レスポンスを当該条件に合致するように修正する修正ステップと、
    を有することを特徴とする通信方法。
  2. レスポンスの修正の実行レベルが予め定められており、
    レスポンスの修正の実行に制限をかけるための制限レベルを受け付けるレベル受付ステップを更に有し、
    前記レスポンスの修正の実行レベルが前記制限レベルを超えていれば、前記修正ステップを実行する
    ことを特徴とする請求項1記載の通信方法。
  3. 他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置において行われる通信方法であって、
    リクエストのコマンドを他の通信装置へ送信する送信ステップと、
    前記送信ステップにおいて送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定ステップと、
    前記送信ステップにおいて送信された前記コマンドに対するレスポンスを前記決定ステップにおいて定めた前記条件と照合する照合ステップと、
    前記照合ステップにおける照合の結果、前記レスポンスが前記条件に合致しなければ、1または複数の代替コマンドで前記送信ステップにおいて送信した前記コマンドの代わりとなる当該1又は複数の代替コマンドを定め、前記1又は複数の代替コマンドの全てを順次用いて前記他の通信装置との通信を行う代替ステップと、
    前記代替ステップにおける各前記代替コマンドに対するレスポンスを基に前記コマンドに対する前記条件に合致するレスポンスを作成する作成ステップと、
    を有することを特徴とする通信方法。
  4. 前記照合ステップにおける照合の結果、前記レスポンスが前記条件に合致していない場合、前記レスポンスを前記条件に合致するように修正可能であるかを判断する判断ステップを更に有し、
    前記判断ステップにおける判断の結果、前記レスポンスを前記条件に合致するように修正可能でなければ、前記代替ステップを実行し、
    前記レスポンスを前記条件に合致するように修正可能であれば、当該レスポンスを当該条件に合致するように修正する
    ことを特徴とする請求項3記載の通信方法。
  5. 各々の前記代替コマンドに対して前記他の通信装置がプロトコルに準拠して動作していれば返信されるはずのレスポンスが合致すべき代替条件を定める代替決定ステップと、
    各々の前記代替コマンドに対するレスポンスを前記代替決定ステップで定めた当該代替コマンドの代替条件に照合する代替照合ステップと、
    を更に有し、
    前記代替照合ステップにおける照合の結果、前記代替コマンドの全てにおいて、前記レスポンスが前記代替条件に合致しているか、前記レスポンスを前記代替条件に合致するように修正可能であれば、以降の通信において、前記コマンドの代わりに前記1又は複数の代替コマンドを用いる
    ことを特徴とする請求項3記載の通信方法。
  6. 各々の前記代替コマンドに対して前記他の通信装置がプロトコルに準拠して動作していれば返信されるはずのレスポンスが合致すべき代替条件を定める代替決定ステップと、
    各々の前記代替コマンドに対するレスポンスを前記代替決定ステップで定めた当該代替コマンドの代替条件に照合する代替照合ステップと、
    を更に有し、
    前記代替照合ステップにおける照合の結果、前記代替コマンドの何れかにおいて、前記レスポンスが前記代替条件に合致せず、かつ、前記レスポンスを前記代替条件に合致するように修正可能でなければ、前記代替ステップを再実行する
    ことを特徴とする請求項3記載の通信方法。
  7. 1又は複数の代替コマンドに対して当該1又は複数の代替コマンドによる通信の実行レベルが予め定められており、
    前記代替ステップでの他の通信装置との通信に制限をかけるための制限レベルを受け付けるレベル受付ステップを更に有し、
    前記代替ステップで定められた前記1又は複数の代替コマンドに対する前記実行レベルが前記制限レベルを超えていれば、前記代替ステップにおいて他の通信装置との通信を実行する
    ことを特徴とする請求項3記載の通信方法。
  8. 他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置であって、
    リクエストのコマンドを他の通信装置へ送信する送信手段と、
    前記送信手段において送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定手段と、
    前記送信手段によって送信された前記コマンドに対するレスポンスを前記決定手段によって定めた前記条件と照合する照合手段と、
    前記照合手段による照合の結果、前記レスポンスが前記条件に合致しなければ、当該レスポンスを当該条件に合致するように修正する修正手段と、
    を備えたことを特徴とする通信装置。
  9. 他の通信装置に対してリクエストを送信し、当該他の通信装置から当該リクエストに対するレスポンスを受信する通信装置であって、
    リクエストのコマンドを他の通信装置へ送信する送信手段と、
    前記送信手段において送信されるコマンドに対して前記他の通信装置がプロトコルの規格に準拠して動作していれば返信されるはずのレスポンスが合致すべき条件を定める決定手段と、
    前記送信手段によって送信された前記コマンドに対するレスポンスを前記決定手段によって定めた前記条件と照合する照合手段と、
    前記照合手段による照合の結果、前記レスポンスが前記条件に合致しなければ、1または複数の代替コマンドで前記送信手段において送信した前記コマンドの代わりとなる当該1又は複数の代替コマンドを定め、前記1又は複数の代替コマンドの全てを順次用いて前記他の通信装置との通信を行う代替手段と、
    前記代替手段による前記代替コマンドに対するレスポンスを基に前記コマンドに対する前記条件に合致するレスポンスを作成する作成手段と、
    を備えたことを特徴とする通信装置。
JP2007134006A 2006-06-27 2007-05-21 通信方法及び通信装置 Active JP4796010B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007134006A JP4796010B2 (ja) 2006-06-27 2007-05-21 通信方法及び通信装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006176889 2006-06-27
JP2006176889 2006-06-27
JP2007134006A JP4796010B2 (ja) 2006-06-27 2007-05-21 通信方法及び通信装置

Publications (2)

Publication Number Publication Date
JP2008035481A true JP2008035481A (ja) 2008-02-14
JP4796010B2 JP4796010B2 (ja) 2011-10-19

Family

ID=39124371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007134006A Active JP4796010B2 (ja) 2006-06-27 2007-05-21 通信方法及び通信装置

Country Status (1)

Country Link
JP (1) JP4796010B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08204931A (ja) * 1995-01-31 1996-08-09 Fuji Xerox Co Ltd ファクシミリ通信方法及びファクシミリ装置
JP2001125852A (ja) * 1999-10-25 2001-05-11 Yamatake Corp 通信インタフェース装置及び通信方法
JP2005027215A (ja) * 2003-07-02 2005-01-27 Dainippon Printing Co Ltd Icカード遠隔制御システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08204931A (ja) * 1995-01-31 1996-08-09 Fuji Xerox Co Ltd ファクシミリ通信方法及びファクシミリ装置
JP2001125852A (ja) * 1999-10-25 2001-05-11 Yamatake Corp 通信インタフェース装置及び通信方法
JP2005027215A (ja) * 2003-07-02 2005-01-27 Dainippon Printing Co Ltd Icカード遠隔制御システム

Also Published As

Publication number Publication date
JP4796010B2 (ja) 2011-10-19

Similar Documents

Publication Publication Date Title
WO2018126853A1 (zh) 数据传输方法及装置
US10069835B2 (en) Third party program integrity and integration control in web-based applications
EP3613176B1 (en) Endpoint configuration for a communication session
JP7450750B2 (ja) マイクロサービス構成用方法、装置、電子デバイス、システム及び記憶媒体
Moayedi et al. Networked LQG control over unreliable channels
US10608996B2 (en) Trust status of a communication session
JP5757325B2 (ja) 仮想デスクトップシステム、ネットワーク処理装置、管理方法、及び管理プログラム
WO2017041531A1 (zh) 一种超时等待时长更新方法及装置
WO2017045450A1 (zh) 资源的操作处理方法及装置
US10042338B2 (en) Method and system for controlling devices with a chat interface
US10476851B1 (en) Unbounded sessions for secure communications
US20180287931A1 (en) Provisioning a Network Node for Attribute Sharing
WO2017023629A1 (en) Notification for a prioritized media path for a communication session
WO2017034933A1 (en) Preferred network information
US10713279B2 (en) Enhanced replication
JP5181535B2 (ja) 入呼規制方法、交換装置および通信システム
WO2024083008A1 (zh) 数据传输方法、装置、系统、电子设备及介质
US11070594B1 (en) Applying overlay network policy based on users
US20160269251A1 (en) Subscription for Communication Attributes
JP4796010B2 (ja) 通信方法及び通信装置
US9942823B2 (en) Communication terminal, communication method, and communication program
US8074139B2 (en) Communication method and communication device
JP2020013419A (ja) 情報処理方法、情報処理装置及びプログラム
WO2018086575A1 (zh) 媒体资源的控制方法及装置
CN112055035B (zh) 一种ng接口的建立方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110615

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: 20110705

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: 20110728

R150 Certificate of patent or registration of utility model

Ref document number: 4796010

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140805

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250