(57)【要約】  ディスカバリ、動作、中断についての接続プロトコルを用いるネットワーク接続は、ネットワーク接続が異常終了した場合にはサーバのタイムアウト期間を必要とする場合がある。例えば、異常が発生した場合に、セッションを終了させるための切断メッセージが送信されないと、サーバ装置は、再接続が可能になる前にタイムアウト期間を期限切れにする必要がありうる。新たなセッションを開始するクライアント装置は、最近のセッションの接続の詳細を格納し、前のセッションに関連する切断メッセージを送信することにより、前の不正切断により生じた現在のタイムアウト期間を中断することができる。切断メッセージが適用可能でない場合、サーバ側装置は無視してよい。新たなセッション開始メッセージの送信に先立ち、前のセッションの切断メッセージを送信するプロセスは、ＰＰＰｏＥ（point-to-point protocol over Ethernet（登録商標））接続に特に適用可能である。【選択図】なし
2010507293.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置における前のデータ通信セッションに対応するセッションデータを格納する段階と、
サーバ装置とのデータ通信セッションがアクティブでないことを決定する段階と、
前記前のデータ通信セッションに対応する前記セッションデータを用い、前記クライアント装置から前記サーバ装置へと、セッション終了メッセージを送信する段階と、
前記クライアント装置から前記サーバ装置へと、セッション開始メッセージを送信する段階と、
を備える方法。
【請求項２】
前記セッションデータは、ソースアドレスおよびセッション識別子を含む、請求項１に記載の方法。
【請求項３】
データ通信セッションがアクティブでないことを決定する段階は、データ通信セッションがセッションタイムアウト期間内にアクティブになった場合に前記サーバ装置で決定する段階を含む、請求項１に記載の方法。
【請求項４】
セッションデータを格納する段階は、セッション申し込みメッセージのソースアドレスを格納する段階を含む、請求項１に記載の方法。
【請求項５】
セッションデータを格納する段階は、セッション確認メッセージのセッション識別子を格納する段階を含む、請求項１に記載の方法。
【請求項６】
前記前のデータ通信セッションを、対応するセッション終了メッセージを送信せずに終了する段階をさらに備える、請求項１に記載の方法。
【請求項７】
前記クライアント装置は、パソコン、デジタル加入者回線（ＤＳＬ）モデム、ＤＳＬルータ、セットトップボックス、デジタルビデオレコーダ（ＤＶＲ）、および、ＶｏＩＰ（Voice-over-Internet Protocol）フォンのうちの１つを含む、請求項１に記載の方法。
【請求項８】
前記データ通信セッションは、ＰＰＰｏＥ（point-to-point protocol over Ethernet）接続であり、前記セッション終了メッセージは、ＰＡＤＴ（PPPoE Active Discovery Termination）メッセージであり、前記セッション開始メッセージは、ＰＡＤＩ（PPPoE Active Discovery Initiation）メッセージである、請求項１に記載の方法。
【請求項９】
ＰＰＰｏＥ（point-to-point protocol over Ethernet）データ接続をサポートする装置であって、
ＰＰＰｏＥホストデバイスと通信するためのポートと、
コンピュータ実行可能命令と、最後のＰＰＰｏＥ接続のセッションデータを含むデータとを格納するメモリと、
新たなＰＰＰｏＥ接続を開始するＰＡＤＩメッセージを送信する前に、前記最後のＰＰＰｏＥ接続に対応するＰＡＤＴメッセージを送信させる前記コンピュータ実行可能命令を実行するプロセッサと、
を備える装置。
【請求項１０】
前記ＰＰＰｏＥホストデバイスは、デジタル加入者回線（ＤＳＬ）アクセスコンセントレータである、請求項９に記載の装置。
【請求項１１】
前記ポートは、ＤＳＬポートである、請求項９に記載の装置。
【請求項１２】
端末装置に結合される下流ポートをさらに備える、請求項９に記載の装置。
【請求項１３】
前記端末装置は、パソコン、デジタル加入者回線（ＤＳＬ）モデム、ＤＳＬルータ、セットトップボックス、および、デジタルビデオレコーダ（ＤＶＲ）のうちの１つである、請求項１２に記載の装置。
【請求項１４】
前記メモリは、不揮発性メモリである、請求項９に記載の装置。
【請求項１５】
方法を実行するコンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記方法は、
アクティブでなくなった前のネットワークセッションに対応するシャットダウンメッセージを受信する段階と、
新たなネットワークセッションをアクティブにするためのネットワークセッション開始メッセージを受信する段階と、
予め決められたプロトコルに従い、前記ネットワークセッション開始メッセージに応答する段階と、
を備える、コンピュータ可読媒体。
【請求項１６】
前記方法は、前記前のネットワークセッションに関連するタイムアウト期間を中断する段階をさらに備え、前記タイムアウト期間は、前記前のネットワークセッションの不正終了に応じてアクティブになる、請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
前記シャットダウンメッセージを受信する段階は、前記前のネットワークセッションに対応するコンテキスト情報を有する前記シャットダウンメッセージを受信する段階を含む、請求項１５に記載のコンピュータ可読媒体。
【請求項１８】
前記ネットワークセッション開始メッセージを受信する段階は、ＰＡＤＩ（PPPoE Active Discovery Initiation）メッセージを受信する段階を含む、請求項１５に記載のコンピュータ可読媒体。
【請求項１９】
前記シャットダウンメッセージを受信する段階は、ＰＡＤＴ（PPPoE Active Discovery Termination）メッセージを受信する段階を含む、請求項１５に記載のコンピュータ可読媒体。
【請求項２０】
方法を実行するコンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記方法は、
アクティブでなくなった前のネットワークセッションに対応するシャットダウンメッセージを送信する段階と、
前記シャットダウンメッセージの送信に続き、新たなネットワークセッションをアクティブにするためのネットワークセッション開始メッセージを送信する段階と、
を備える、コンピュータ可読媒体。
【請求項２１】
前記方法は、前記前のネットワークセッションがアクティブである間に、前記前のネットワークセッションに対応するコンテキスト情報を不揮発性メモリに格納する段階をさらに備える、請求項２０に記載のコンピュータ可読媒体。
【請求項２２】
前記シャットダウンメッセージを送信する段階は、前記前のネットワークセッションに対応するコンテキスト情報を有する前記シャットダウンメッセージを送信する段階を含む、請求項２１に記載のコンピュータ可読媒体。
【請求項２３】
前記ネットワークセッション開始メッセージを送信する段階は、ＰＡＤＩ（PPPoE Active Discovery Initiation）メッセージを送信する段階を含む、請求項２０に記載のコンピュータ可読媒体。
【請求項２４】
前記シャットダウンメッセージを送信する段階は、ＰＡＤＴ（PPPoE Active Discovery Termination）メッセージを送信する段階を含む、請求項２０に記載のコンピュータ可読媒体。
【請求項２５】
中断された通信セッションのタイムアウト期間の短縮をサポートするネットワークセッション管理装置であって、
通信セッションプロトコルを用いてクライアント装置と結合するためのポートと、
アクティブでなくなった前のセッションに対応するセッションデータと、前記通信セッションプロトコルを実装するためのコンピュータ実行可能命令とを格納するメモリと、
前記ポートおよび前記メモリに結合され、前記コンピュータ実行可能命令を実行するプロセッサと、
を備え、
前記プロセッサは、前に切断されたセッションに対応する終了メッセージを受信した後に、通信セッションプロトコルタイムアウト期間を終了する、ネットワークセッション管理装置。
【請求項２６】
前記プロセッサは、前記タイムアウト期間がアクティブでない場合、前記前に切断されたセッションに対応する前記終了メッセージを無視させる前記コンピュータ実行可能命令をさらに実行する、請求項２５に記載のネットワークセッション管理装置。
【発明の詳細な説明】
【関連出願】
【０００１】
本出願は、「ＰＰＰｏＥ接続の高速リカバリ」と題された２００６年１０月１６日に出願の米国特許仮出願番号第６０／８２９，６３６号の優先権を主張し、その全体の開示内容は、参照によりここに組み込まれる。
【技術分野】
【０００２】
本開示は、概して通信装置に関し、より詳しくは、不正終了した通信セッションの接続タイムアウト期間を短縮する技術に関する。
【背景技術】
【０００３】
クライアント・サーバー間のネットワーク接続、特に、公衆ネットワークにおけるネットワーク接続の多くは、接続の確定、維持、および、切断のために要求される信号送信を規定するプロトコルを用いる。多くの接続タイプがあり、例えば、ダイヤルアップモデム接続、デジタル加入者回線（ＤＳＬ）接続、および、ブロードバンドケーブル接続などはすべて、普及しているネットワーク接続の例である。それぞれが自らの用途に関連した１つ以上のプロトコルを有しており、例えば、ｖ．４２ダイヤルアップモデム接続規格、ＤＳＬ接続ではＰＰＰｏＥ（Point-to-Point Protocol over Ethernet（登録商標））、および、ブロードバンドケーブル接続ではＤＯＣＳＩＳ（Data Over Cable Service Interface Specification）などである。以下に詳しく説明するが、これらのプロトコルは、正常動作の間にクライアントおよびサーバの各側がすべきことばかりでなく、予想外の切断が起きて正常な秩序立った終了ができない場合にとるべき措置を指定する。
【０００４】
このような異常終了の状況では、サーバ側のプロセスは、タイムアウト期間にそのクライアントからのさらなる接続要求を拒否することが必要な場合がある。タイムアウト期間は、クライアントの時間をいかなるローカルエラーからも回復できるようにするが、さらに重要なことに、タイムアウト期間は、ＤＯＳ（サービスの妨害）攻撃、あるいは、他の悪意のある行為からサーバ側のプロセスを保護できる。
【発明の概要】
【０００５】
改良されたネットワーク接続プロトコルは、前の不正終了したセッションに関連する接続終了メッセージを送信することにより、クライアント装置がサーバ側のタイムアウト期間を終らせることを可能にする。クライアント装置は、接続終了メッセージを作成するのに必要なセッション接続データを格納してよい。
【０００６】
サーバプロセスは、中断されたセッションの接続終了メッセージを受信すると、直ちにタイムアウト期間を終了し、新しい接続要求に注意を向ける。タイムアウト期間がアクティブでなく、接続終了メッセージが受信された場合、サーバプロセスは、接続終了メッセージを無視するだけでよい。
【０００７】
一実施形態では、サーバ装置との前のデータ通信セッションに対応するセッションデータが格納され、当該格納されたセッションデータは、データ通信セッションがアクティブでない場合、前のデータ通信セッションについてのセッション終了メッセージを送信するために用いられてよいその後、新しいセッションに対応するセッション開始メッセージが送信されてよい。
【０００８】
他の実施形態では、ＰＰＰｏＥ（Point-to-Point Protocol over Ethernet（登録商標））をサポートする装置は、最後のセッションからのセッションデータを格納するメモリを有し、それを用いて、サーバとの新たなセッションの開始前にセッション終了メッセージをサーバに送信する。
【図面の簡単な説明】
【０００９】
【図１】クライアント−サーバネットワーク接続の簡略化された代表的なブロック図である。
【００１０】
【図２Ａ】正常に終了した代表的な従来技術のクライアント−サーバ接続を示す単純化されたプロトコル図である。
【００１１】
【図２Ｂ】異常終了した代表的な従来技術のクライアント−サーバ接続を示す単純化されたプロトコル図である。
【００１２】
【図３】高速リカバリを用いた代表的なクライアント−サーバ接続を示す単純化されたプロトコル図である。
【００１３】
【図４Ａ】サーバ側装置におけるクライアント−サーバ接続の高速リカバリの実行方法を示すフローチャートである。
【００１４】
【図４Ｂ】クライアント側装置におけるクライアント−サーバ接続の高速リカバリの実行方法を示すフローチャートである。
【００１５】
【図５Ａ】ネットワーク接続の高速リカバリを取り入れた典型的な実施形態を示す。
【図５Ｂ】ネットワーク接続の高速リカバリを取り入れた典型的な実施形態を示す。
【図５Ｃ】ネットワーク接続の高速リカバリを取り入れた典型的な実施形態を示す。
【図５Ｄ】ネットワーク接続の高速リカバリを取り入れた典型的な実施形態を示す。
【図５Ｅ】ネットワーク接続の高速リカバリを取り入れた典型的な実施形態を示す。
【発明を実施するための形態】
【００１６】
図１は、クライアント−サーバネットワーク接続の簡略化された代表的なブロック図である。
【００１７】
クライアント装置１０２は、モデム１０４を用い、物理ネットワーク１０６を介してネットワークプロトコルマネージャ１０８と接続する。ネットワークプロトコルマネージャ１０８は、例えば、インターネット１１２などの広域ネットワークとの接続を提供しうる、クライアント１０２と、サーバまたはホスト１１０との間のネットワークトラフィックを管理してよい。
【００１８】
クライアント１０２は、ネットワークと接続する、例えば、パソコン、ＰＤＡ（パーソナル携帯情報機器）、スマートフォン、および、図５Ａから５Ｅに示されている典型的な装置のいずれかのような電子装置であってよい。モデム１０４は、外部ＤＳＬ、または、ケーブルモデムなどのようにクライアント装置１０２の外部にあるか、または、スマートフォンなどの携帯装置などのように内部にあってもよい。
【００１９】
物理的接続１０６は、物理的インターフェース、または、モデム１０４において利用可能なインターフェースによりサポートされる。例えば、ケーブルモデムは、ケーブルテレビ接続を介してトラフィックをサポートし、一方、ＤＳＬモデムは、電話回線接続を介してトラフィックをサポートする。物理的接続１０６は、ケーブルテレビ接続、電話接続、３Ｇ無線接続、ＷｉＦｉ接続などであってよい。いくつかの実施形態では、特定のサーバまたはホスト１１０に到達するために２つ以上のホップを要してよい。例えば、喫茶店におけるＷｉＦｉ接続は、まず、無線セッションのためのローカルネットワークプロトコルマネージャに接続し、それから、ブロードバンド有線接続を介して第２のネットワークプロトコルマネージャ（図示せず）と接続することにより、サーバまたはホスト１１０に到達しうる。
【００２０】
モデム１０４と同様に、ネットワークプロトコルマネージャ１０８は、モデム１０４とのデータ接続に関連する物理的接続１０６をサポートする能力がある。サーバまたはホスト１１０は、インターネットサービスプロバイダ（ＩＳＰ）のようなバックエンドサポートサービスであるか、あるいは、企業用のセールスサポートシステムまたは音楽サービス用のエンターテイメントプログラミングなどの送信先であってよい。インターネット１１２との接続は、クライアント１０２とサーバまたはホスト１１０との関係次第でオプションであってよい。例えば、サーバまたはホストが企業サーバである場合、従業員であるユーザは、サーバまたはホスト１１０を介してインターネット１１２にアクセスすることができない場合がある。
【００２１】
モデム１０４は、プロセッサ１１３と、物理的接続１０６およびクライアント１０２とそれぞれ結合するための通信ポート１１４および１１６とを有してよい。いくつかの実施形態では、特に、モデム１０４がルータ機能を有する場合、ポート１１６などの複数のクライアント側ポートが存在してよい。メモリ１１８は、以下に詳細に説明するような、プロトコルデータおよびセッション情報などの実行可能命令およびデータを格納してよい。メモリ１１８は、揮発性メモリ、不揮発性メモリ、あるいは両方を含んでよい。不揮発性メモリの例としては、ハードディスクドライブ、フラッシュメモリ、ＮＶＲＡＭ、ＥＥＰＲＯＭ（登録商標）などであってよい。
【００２２】
ネットワークプロトコルマネージャ１０８は、プロセッサ１２０と、サーバまたはホスト１１０、および、物理的接続１０６とそれぞれ接続するための通信ポート１２２および１２４とを有しうる。プロセッサは、プロトコルデータおよびセッション情報などの実行可能命令およびデータを格納するメモリ１２６に結合されてもよい。メモリ１１８は、以下に詳細に説明するような、プロトコルデータおよびセッション情報などの実行可能命令およびデータを格納してよい。メモリ１２６は、揮発性メモリ、不揮発性メモリ、あるいは両方を含んでよい。不揮発性メモリの例としては、ハードディスクドライブ、フラッシュメモリ、ＮＶＲＡＭ、ＥＥＰＲＯＭ（登録商標）などであってよい。
【００２３】
図２Ａは、正常に終了した代表的な従来技術のクライアント−サーバ接続を示す単純化されたプロトコル図である。説明を簡単にすべく、ＰＰＰｏＥ（Point-to-Point Protocol over Ethernet（登録商標））として知られる、デジタル加入者回線（ＤＳＬ）通信セッションによく用いられる典型的な通信プロトコルについて記載する。図２Ａの例は、多くの一般的な通信プロトコルにおける、接続の典型的なディスカバリ、セットアップ、動作、および、終了を示す。図１のモデム１０４などのクライアントとの送受信による通信は、時間ライン２０２によって表される。図１のネットワークプロトコルマネージャ１０８などのサーバ側装置との送受信による通信は、時間ライン２０４によって表される。
【００２４】
第１のメッセージ２０６は、クライアント２０２からサーバ２０４へと送信されてよい。第１のメッセージ２０６は、接続のための初期要求であってよい。典型的なプロトコルでは、メッセージは、ＰＡＤＩ（PPPoE Active Discovery Initiation）メッセージであってよい。ＰＡＤＩメッセージは、クライアントのメディアアクセス制御（ＭＡＣ）アドレス、すなわち、メーカーによって指定されるか、または、構成サイクル間に設定されるハードウェア志向のアドレスを含んでよい。サーバ２０４からクライアント２０２への第２のメッセージ２０８は、ＰＡＤメッセージ２０６に応答して送信されるＰＡＤＯ（PPPoE Active Discovery Offer）メッセージであってよい。ＰＡＤＯメッセージ２０８は、クライアントのＭＡＣアドレス、および、ＤＳＬアクセスコンセントレータ（図１のネットワークプロトコルマネージャ１０８とほぼ同じ）などのサーバ側エントリのＭＡＣアドレスも含んでよい。また、一実施形態では、セッションごとに増加し、９９９９の次には００００になる４桁のシーケンス番号であるセッション識別子も含んでよい。典型的なＰＡＤＯメッセージは、以下の表１に示す。Src:00:0e:20:7f:f3:7aは、サーバのＭＡＣアドレスであり、Dst:00:52:db:4a:d7:edは、クライアントのＭＡＣアドレスである。
【表１】
2010507293.tif 000003
【００２５】
２つ以上のサーバがＰＡＤＯメッセージと共にＰＡＤＩメッセージに応答することにより、それらのサービスを提供してよい。クライアントは、どのサーバが接続を望んでいるかを決定し、第３のメッセージ２１０であるＰＡＤＲ（PPPoE Active Discovery Request）メッセージを選ばれたサーバ２０４に送信してよい。ＰＡＤＲメッセージは、選ばれたサーバのＭＡＣアドレスを含む。選ばれたサーバ２０４は、ＰＡＤＲメッセージ２１０に応答し、第４のメッセージ２１２であるＰＡＤＳ（PPPoE Active Discovery Session-confirmation）メッセージを送信することにより、選ばれたことを確認してよい。
【００２６】
メッセージ２０６、２０８、２１０、および、２１２は、ＰＰＰｏＥセッションのディスカバリステージを作成する。ディスカバリステージは、サーバ２０４を見つけて選択するクライアント２０２と、それ自体を識別してクライアント２０２とのセッションに応じるサーバ２０４とを含む。セッションステージ２２２は、ディスカバリに用いられるイーサネット（登録商標）通信におけるポイントツーポイントプロトコルを確定し、クライアント２０２と選ばれたサーバ２０４との間の正常なデータトラフィックをサポートする。例えば、セッションステージは、多数のポイントツーポイント（ＰＰＰ）メッセージ２１６から始まってよく、その後、省略記号２２０により表される、標準データトラフィック２１８がサポートされてよい。図１の典型的な実施形態によれば、モデム１０４は、ウェブのブラウジングなどのユーザトラフィックがサポートされる前に、接続およびログインに特定の時間をかけてよい。いくつかの典型的なモデムでは、セッションステージのディスカバリおよび初期の間にフロントパネルのライトが黄色く点滅してよい。
【００２７】
セッションステージ２２０を出るべく、いずれかの側が切断メッセージ２２４により表されるように、ＰＰＰセッションを切断してよい。切断プロセスは、クライアントおよびサーバのポインタおよびレジスタを休止状態に戻す、すなわち、セッション中に両側で用いられるハードウェアおよびソフトウェアリソースは、アクティブでないか、または、アンロック状態なので、同じグループ間、または、異なるグループ間の他のセッションに再び用いられることができる。クライアント初期化切断を例にとると、ＰＡＤＴ（PPoE Active Discovery Termination）などの第５のメッセージ２２６がクライアント２０２から選ばれたサーバ２０４へと送信されてよい。選ばれたサーバ２０４は、ＰＡＤＴメッセージを受信すると、波括弧２２８により示されるような、クライアント２０２によるリディスカバリに利用されることができるようになる。
【００２８】
図２Ｂは、エラーが発生する場合のプロセスを示す。図２Ｂは、異常終了した代表的な従来技術のクライアント−サーバ接続２４８の簡略化されたプロトコル図である。上述のごとく、図は、クライアントタイムライン２５０およびサーバタイムライン２５２におけるメッセージを示す。クライアントからのＰＡＤＩメッセージ２５４の後にサーバ２０４からのＰＡＤＯメッセージ２５６が続く。ＰＡＤＲメッセージ２５８によりクライアントからリクエストが出され、サーバ２０４からのＰＡＤＳメッセージ２６０によりセッションが確認される。セッションステージは、ＰＰＰ初期化メッセージ２６２およびデータトラフィックメッセージ２６４を含んでよい。
【００２９】
セッションのセットアップまたはデータトラフィック段階のいくつかのポイントにおいて不正終了イベント２６６が起こりうる。不正終了イベント２６６は、物理的接続における連結性の喪失、モデムまたはプロトコルマネージャにおける停電などであってよい。他の不正終了イベント２６６は、パケット同期エラー、タイムアウトエラー、エンドポイントとの間の接続性の喪失などを含んでよい。中でも、不正終了イベント２６６の影響としては、図２ＡのＰＡＤＲメッセージ２２６の切断メッセージ２２４のような終了メッセージが送信されなくなることである。
【００３０】
不正終了イベント２６６を受けて、サーバ２０４はクライアントからの着信したＰＡＤＩメッセージ２７０および２７２が無視されるタイムアウト期間２６８を課してよい。タイムアウト期間は、複数のクライアントがＭＡＣアドレスになりすまして複数のＰＡＤＩメッセージを送信する場合、ＤＯＳ（サービスの妨害）攻撃から保護する手立てをいくつか提供する。タイムアウト期間２６８の終わりには、ＰＡＤＩメッセージがサーバ側２５２で再び受諾されてよい。
【００３１】
図３は、高速リカバリ技術を用いた代表的なクライアント−サーバ接続を示す単純化されたプロトコル図である。セッション３００は、図２Ａに示された従来技術のプロトコルなどの使用されているプロトコルに従い処理される。クライアント側タイムライン３０２、および、サーバ側タイムライン３０４は、図１に示されるような、クライアントとサーバとの間で送信されるメッセージのエンドポイントを示す。いくつかのポイントでは、ＭＡＣ識別子の交換後、不正終了３０６が起きうる。タイムアウト期間は、サーバ側３０４で始まってよい。タイムアウト期間に本来割り当てられた合計時間は、期間３０８と３１０との和で表されてよい。しかしながら、不正終了３０６で終ったセッションに対応する情報を携えたＰＡＤＴメッセージ３１２がクライアント側３０２からサーバ側３０４に送信されることにより、タイムアウト期間が時間３０８だけになるまで短縮されてよい。これによって、ディスカバリステージ３２２の開始が短縮されたタイムアウト期間３０８まで延び、期間３１０で表される残りのタイムアウト期間を飛び越すことになる。
【００３２】
本物のクライアント３０２だけがサーバのＭＡＣアドレスと前のセッションのセッション識別子との両方をおそらく有していることから（上記表１を参照）、サーバ３０４がＤＯＳ攻撃を受けるリスクは低い。サーバ３０４は、メッセージ３１２におけるセッション情報と、既知のクライアント側装置についての前のセッションに関するローカルに格納された情報とを比較することにより、ＰＡＤＴメッセージ３１２が本物であることを決定してよい。ＰＡＤＴセッション情報が一致した場合は、ＰＡＤＴメッセージ３１２は、前の不正終了したセッションの終了メッセージを見落としたことを表すとみなしてよい。合計タイムアウト期間である期間３０８プラス３１０は、消費されていないタイムアウト期間３１０分だけ短いタイムアウト期間３０８の第１の部分の直後に終了してよい。その後、ＰＡＤＩメッセージ３１４が受諾され、新たなセッションディスカバリステージ３２２を開始してよい。多くの場合、再接続時間が数秒以上節約される。
【００３３】
ＰＡＤＯメッセージ３１６、ＰＡＤＲメッセージ３１８、および、ＰＡＤＳメッセージ３２０を含むフローの残りは、正常に続いてよい。セッションステージ３２６は、上述のようなメッセージトラフィック３２４を含んでよい。
【００３４】
いくつかの実施形態では、図２Ａに示されるように前のセッションが正常に終了したか、あるいは、タイムアウト期間がすでに終了しているかの理由でタイムアウト期間がアクティブでなくても、前のセッションに関する情報を携えたＰＡＤＴメッセージ３１２が送信されてよい。図３においてこのことを示すべく、不正終了３０６は、点線で示され、ＰＡＤＴメッセージ３１２を送信する前に起きる可能性も起きない可能性もあることが示されている。他の実施形態では、クライアント側３０２は、タイムアウト期間の持続時間を知っていてよく、タイムアウト期間がアクティブになったらしいときにＰＡＤＴメッセージ３１０を送信するだけでよい。さらなる他の実施形態では、ＰＡＤＴメッセージ３１０は、初期ＰＡＤＩメッセージ（図２ＢのＰＡＤＩメッセージ２７０および２７２など）が拒否されたか無視されたかの後にのみ送信されてよい。
【００３５】
図４Ａは、図１のネットワークプロトコルマネージャ１０８などのサーバ装置にクライアント接続の高速リカバリを実装するための典型的な方法４００を示す。ブロック４０２において、現在のセッションがアクティブになったとみなされ、セッション識別子、および、クライアント１０２またはモデム１０４についての、ＭＡＣアドレスなどのクライアント装置識別子を含む現在のセッションデータが格納される。ブロック４０３において、サーバは、現在のセッションが正常または異常に終了したことを検出してよい。正常に終了すると、ブロック４０３から「Ｙｅｓ」に分岐してブロック４０６へと進み、ネットワークプロトコルマネージャ１０８は、着信メッセージの受け取りを待ってよい。セッションが異常終了した場合、ブロック４０３から「Ｎｏ」に分岐してブロック４０４へと進み、ここで、ネットワークプロトコルマネージャ１０８は、予め設定された期間動作するタイムアウトタイマを起動してよい。
【００３６】
ブロック４０６では、ネットワークプロトコルマネージャ１０８は、例としてブロック４０２に示されるセッションのクライアント１０４であるクライアントからメッセージを受信してよい。ブロック４０８において、メッセージを送信するクライアント側装置についてのタイムアウト期間がアクティブかどうかを決定すべく、チェックがなされてよい。クライアント装置についてタイムアウト期間がアクティブでない場合、ブロック４０８から「Ｎｏ」に分岐し、ブロック４１０へと進んでよい。ブロック４１０において、ネットワークプロトコルマネージャ１０８は、メッセージが終了メッセージかどうかを決定してよく、そうであれば、終了メッセージを無視するだけでよく、ブロック４１２において、クライアント装置からのセッション開始メッセージを待って処理してよい。
【００３７】
ブロック４０８において、クライアント装置についてタイムアウト期間がアクティブな場合、ブロック４０８から「Ｙｅｓ」に分岐し、ブロック４１４へと進んでよい。ブロック４１４においてメッセージが終了メッセージであり、当該終了メッセージが有効であると決定された場合、すなわち、終了メッセージにおけるセッション識別子がそのクライアント装置識別子のためにブロック４０２で格納されたセッション識別子と一致する場合、ブロック４１４から「Ｙｅｓ」に分岐してブロック４１６へと進み、タイムアウト期間は直ちに終了してよい。処理はブロック４１２まで進み、着信したセッション開始メッセージは、正常に処理されてよい。
【００３８】
ブロック４１４において、終了メッセージは有効でないことがわかった場合、ブロック４１４から「Ｎｏ」に分岐し、ブロック４１８へと進み、クライアント装置から新しいセッションメッセージを受諾するブロック４１２へと行く前のその予定された終わりまでタイムアウト期間が実行されてよい。ブロック４０２において処理は継続して行われ、新たに確定されたセッションに関するデータが格納されてよい。
【００３９】
図４Ｂは、図１のモデム１０２などのクライアント側装置にクライアント／サーバ接続の高速リカバリを実装する典型的な方法４４０を示す。ブロック４４２において、通信セッションがアクティブになるとみなされ、現在のセッションデータが格納されてよい。
現在のセッションデータは、ＭＡＣアドレスなどのセッションのセットアップに用いられるクライアントアドレスと、サーバ側装置により指定されるセッション識別子とを含みうる。ブロック４４４において、クライアントは、通信セッションが正常または異常終了したことを検出してよい。いくつかのケースでは、クライアント側装置は、データバッファのクリーニング、および、アイドル状態のリセットなど、異常終了から復帰するための特定のステップをとってよい。前のセッションの終了に続くあるポイントであるブロック４４６では、通信セッションがアクティブでないとの決定がなされてよい。ブロック４４８において、クライアントから出された、あるいは、パワーサイクルの一部としてのリクエストに応じて、新たな通信セッションが開始されてよい。
【００４０】
クライアントは、サーバ側におけるネットワークプロトコルマネージャの状態、すなわち、タイムアウト期間がアクティブかどうかの明確な知識はないので、前の通信セッションについての終了メッセージを、先を見越して作成し、送信してよい。このような終了メッセージを送信する目的は、サーバ側で有効でありうるいかなるアクティブなタイムアウト期間も短縮し、新たな通信セッションの確定を促進することにある。ブロック４５０では、前のセッションについてのセッション終了メッセージを作成すべく、ブロック４４２おける前の通信セッションに関して格納されたデータが用いられてよい。例えば、一実施形態では、ブロック４４２で格納されたデータを用いるＰＡＤＴメッセージが作成され、サーバ側装置に送信されてよい。説明を簡単にすべく、新たなセッションの開始時に前のセッションについてのセッション終了メッセージを送信することは、前のセッションが正常に終了しようがしまいが行われてよい。他の実施形態では、モデム１０２などのクライアント側装置は、ブロック４４４と４４６との間の期間がサーバ側装置のタイムアウト期間より長いことが知られているかどうかを決定してよい。そうであれば、タイムアウト期間はサーバ側装置ではアクティブでありえず、クライアントは、効果がないので、前のセッションについてのセッション終了メッセージを送信しないことを選択してよい。
【００４１】
ブロック４５２において、新たなセッションを確定するプロトコルに従ってよい。一実施形態では、ＰＡＤＩメッセージが送信されて新たなセッション確定手順が開始されてよい。
【００４２】
記載される実施形態は、セッション接続時間を短縮するセッション終了メッセージを率先して用いることを例示するためにＰＰＰｏＥを用いている。しかしながら、当該技術は、通信セッションが正常に終了しない場合にタイムアウト期間がアクティブになりうる他のいかなる通信セッションにも等しく当てはまる。
【００４３】
図５Ａから５Ｅは、上記のような、接続終了からの高速リカバリ技術が実装されうるさまざまな装置を示す。図５Ａを参照すると、当該技術は、高精細度テレビジョン（ＨＤＴＶ）４２０で活用されてよい。ＨＤＴＶ４２０は、大容量データ記憶４２７、ＨＤＴＶ信号処理および制御ブロック４２２、ＷＬＡＮインターフェース４２９、および、メモリ４２８を有する。ＨＤＴＶ４２０は、有線または無線フォーマットのＨＤＴＶ入力信号を受信し、ディスプレイ４２６のためのＨＤＴＶ出力信号を生成する。いくつかの実施態様では、ＨＤＴＶ４２０の信号処理回路および／または制御回路４２２および／または他の回路（図示せず）は、データを処理し、符号化および／または暗号化を実行し、通信プロトコルを管理し、計算を実行し、データをフォーマットし、および／または、要求されうる他のいかなるタイプのＨＤＴＶ処理を実行してよい。ＷＬＡＮインターフェース４２９は、例えば、接続終了からの高速リカバリ方法を実装してよい。
【００４４】
ＨＤＴＶ４２０は、光および／または磁気記憶装置などの、データを格納する不揮発性の大容量データ記憶４２７と通信してよい。大容量記憶装置は、約１．８"より小さい直径を有する１つ以上のプラッタを有するミニＨＤＤであってよい。ＨＤＴＶ４２０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの低レイテンシ不揮発性メモリ、および／または、他の適切な電子データ記憶などのメモリ４２８に接続されてよい。ＨＤＴＶ４２０は、ＷＬＡＮネットワークインターフェース４２９を介し、ＷＬＡＮとの接続をサポートしてよい。
【００４５】
図５Ｂを参照すると、当該高速リカバリ技術は、携帯電話４５０で活用されてよい。携帯電話４５０は、セルラーアンテナ４５１を有してよい。携帯電話４５０は、図５Ｂの４５２で概ね特定される信号処理および／または制御回路、ＷＬＡＮインターフェース４６８および／または大容量データ記憶４６４のいずれかまたは両方を有してよい。いくつかの実施態様では、携帯電話４５０は、マイクロフォン４５６、スピーカおよび／または音声出力ジャックなどの音声出力４５８、ディスプレイ４６０、および／または、キーパッド、ポインティング装置、音声駆動および／または他の入力装置などの入力装置４６２を有する。携帯電話４５０における信号処理および／または制御回路４５２、および／または、他の回路（図示せず）は、データを処理し、符号化および／または暗号化を実行し、計算を実行し、通信プロトコルを管理し、データをフォーマットし、および／または、他の携帯電話機能を実行してよい。ＷＬＡＮインターフェース４６８は、例えば、接続終了からの高速リカバリ方法を実装してよい。
【００４６】
携帯電話４５０は、光および／または磁気記憶装置などの、データを格納する不揮発性の大容量データ記憶４６４と通信してよく、大容量データ記憶４６４は、例えば、ＨＤＤおよび／またはＤＶＤであってよい。ＨＤＤは、約１．８"より小さい直径を有する１つ以上のプラッタを有するミニＨＤＤであってよい。携帯電話４５０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの低レイテンシ不揮発性メモリ、および／または、他の適切な電子データ記憶などのメモリ４６６に接続されてよい。携帯電話４５０は、ＷＬＡＮネットワークインターフェース４６８を介し、ＷＬＡＮとの接続をサポートしてよい。
【００４７】
図５Ｃを参照すると、当該高速リカバリ技術は、セットトップボックス４８０で活用されてよい。セットトップボックス４８０は、図５Ｃの４８４で概ね特定される信号処理および／または制御回路、ＷＬＡＮインターフェース４９６および／または大容量データ記憶４９０のいずれかまたは両方を有してよい。セットトップボックス４８０は、例えば広帯域源などのソースから信号を受信し、例えばテレビおよび／またはモニタおよび／または他のビデオおよび／または音声出力装置などのディスプレイ４８８に適した標準および／または高解像度音声／ビデオ信号を出力する。セットトップボックス４８０の信号処理および／または制御回路４８４、および／または、他の回路（図示せず）は、データを処理し、符号化および／または暗号化を実行し、計算を実行し、通信プロトコルを管理し、データをフォーマットし、および／または、他のいかなるセットトップボックス機能を実行してよい。
【００４８】
セットトップボックス４８０は、データを格納する不揮発性の大容量データ記憶４９０と通信してよい。大容量データ記憶４９０は、例えばハードディスクドライブＨＤＤおよび／またはＤＶＤである光および／または磁気記憶装置を含みうる。ＨＤＤは、約１．８"より小さい直径を有する１つ以上のプラッタを有するミニＨＤＤであってよい。セットトップボックス４８０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの低レイテンシ不揮発性メモリ、および／または、他の適切な電子データ記憶などのメモリ４９４に接続されてよい。セットトップボックス４８０は、ＷＬＡＮネットワークインターフェース４９６を介し、ＷＬＡＮとの接続をサポートしてよい。接続終了からの高速リカバリ方法は、例えば、信号処理および／または制御回路４８４、ＷＬＡＮネットワークインターフェース４９６、または、両方に実装されてよい。
【００４９】
図５Ｄを参照すると、当該リカバリ技術は、メディアプレーヤ５００で活用されてよい。メディアプレーヤ５００は、図５Ｄの５０４で概ね特定される信号処置および／または制御回路、ＷＬＡＮインターフェース５１６および／または大容量データ記憶５１０のいずれかまたは両方を有してよい。いくつかの実施態様では、メディアプレーヤ５００は、ディスプレイ５０７、および／または、キーパッド、タッチパッドなどのユーザ入力５０８を有する。いくつかの実施形態では、メディアプレーヤ５００は、一般的に、メニュー、ドロップダウンメニュー、アイコンを用いるグラフィカルユーザインターフェース（ＧＵＩ）、および／または、ディスプレイ５０７および／またはユーザ入力５０８を介するポイント＆クリックインターフェースを採用してよい。メディアプレーヤ５００は、例えばスピーカ、および／または、音声出力ジャックなどの音声出力５０９をさらに有する。メディアプレーヤ５００の信号処理および／または制御回路５０４、および／または、他の回路（図示せず）は、データを処理し、符号化および／または暗号化を実行し、計算を実行し、通信プロトコルを管理し、データをフォーマットし、および／または、他のいかなるメディアプレーヤ機能を実行してよい。ＷＬＡＮインターフェース５１６、信号処理および／または制御回路５０４、または両方は、例えば、接続終了からの高速リカバリ方法を実装してよい。
【００５０】
メディアプレーヤ５００は、例えば、圧縮された音声および／またはビデオ内容などのデータを格納する不揮発性の大容量データ記憶５１０と通信してよい。いくつかの実施態様では、圧縮された音声ファイルは、ＭＰ３フォーマット、または、他の適切な圧縮された音声および／またはビデオフォーマットに対応するファイルを含む。大容量データ記憶は、例えばハードディスクドライブＨＤＤおよび／またはＤＶＤである光および／または磁気記憶装置を含んでよい。ＨＤＤは、約１．８"より小さい直径を有する１つ以上のプラッタを有するミニＨＤＤであってよい。メディアプレーヤ５００は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの低レイテンシ不揮発性メモリ、および／または、他の適切な電子データ記憶などのメモリ５１４に接続されてよい。メディアプレーヤ５００も、ＷＬＡＮネットワークインターフェース５１６を介し、ＷＬＡＮとの接続をサポートしてよい。上記に加え、他の実装もさらに考慮される。
【００５１】
図５Ｅを参照すると、当該高速リカバリ技術は、アンテナ５５２を有しうるＶｏＩＰ（Voice over Internet Protocol）フォン５５０で活用されてよい。ＶｏＩＰフォン５５０は、５Ｅの５５４で概ね特定される信号処理および／または制御回路、ネットワーク接続５６８および／または大容量データ記憶５５６のいずれかまたは両方を有してよい。いくつかの実施態様では、ＶｏＩＰフォン５５０は、マイクロフォン５５８、スピーカおよび／または音声出力ジャックなどの音声出力５６０、ディスプレイモニタ５６２、キーパッド、ポインティングデバイス、音声駆動および／または、他の入力装置などの入力装置５６４、および、ＷｉＦｉ（Wireless Fidelity）通信モジュール５６６を一部有する。ＶｏＩＰフォン５５０における信号処理および／または制御回路５５４、および／または、他の回路（図示せず）は、データを処理し、符号化および／または暗号化を実行し、計算を実行し、通信プロトコルを管理し、データをフォーマットし、および／または、他のＶｏＩＰフォン機能を実行してよい。ＷｉＦｉ通信モジュール５６６、信号処理および／または制御回路５０４、または、両方は、例えば、接続終了からの高速リカバリ方法を実装してよい。
【００５２】
ＶｏＩＰフォン５５０は、例えば、光および／または磁気記憶装置などのデータを格納する不揮発性の大容量データ記憶５５６と通信してよく、大容量データ記憶５５６は、例えば、ハードディスクドライブＨＤＤおよび／またはＤＶＤであってよい。ＨＤＤは、約１．８"より小さい直径を有する１つ以上のプラッタを有するミニＨＤＤであってよい。ＶｏＩＰフォン５５０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの低レイテンシ不揮発性メモリ、および／または、他の適切な電子データ記憶などのメモリ５５７に接続されてよい。ＶｏＩＰフォン５５０は、ＷｉＦｉ通信モジュール５６６を介し、ＶｏＩＰネットワーク（図示せず）との通信リンクを確定する。
【００５３】
上記のさまざまなブロック、動作、および、技術は、ハードウェア、ファームウェア、ソフトウェア、または、ハードウェア、ファームウェア、および／または、ソフトウェアのいかなる組合せにも実装されうる。ソフトウェアに実装される場合、ソフトウェアは、例えば、コンピュータ、プロセッサ、ハードディスクドライブ、光ディスクドライブ、テープドライブなどのＲＡＭまたはＲＯＭまたはフラッシュメモリ内の磁気ディスク、光ディスク、または、他の記憶媒体などにおけるいかなるコンピュータ可読メモリに格納されてよい。同様に、ソフトウェアは、例えば、コンピュータ可読ディスクまたは他の移動可能なコンピュータ記憶機構、または、通信媒体による方法を含む、いかなる既知のまたは所望の供給方法により、ユーザまたはシステムに供給されてよい。通信媒体は、一般的に、例えば、搬送波または他の移動機構などの変調データ信号においてコンピュータ可読命令、データ構造、プログラムモジュール、または、他のデータを含む。「変調データ信号」という用語は、信号における情報を暗号化するようにその特性の１つ以上を設定または変更された信号を意味する。例えば、通信媒体は、有線ネットワークまたは直接配線接続、および、音声、無線周波数、赤外線などの無線媒体、その他の無線媒体を含むが、これらに限定されない。このように、ソフトウェアは、電話線、ＤＳＬ回線、ケーブルテレビ回線、無線通信チャネル、インターネットなどの通信チャネルを介してユーザまたはシステムに供給されてもよく、（このような通信チャネルを介しての供給は、上記のような移動可能な媒体を介しての供給と同等なものか、または、交換可能であるとみなされる）。ハードウェアは、実装された場合、１つ以上の個別の構成要素、集積回路、特定用途向け集積回路（ＡＳＩＣ）などを有してよい。
【００５４】
特定の例を参照して本発明を説明してきたが、それらは例示に過ぎず、本発明を制限することを意図するものではない。当業者であれば、本発明の趣旨および範囲に逸脱せずに、上記明確な説明に加え、本開示の実施形態に変更、追加または削除がなされうることを理解できよう。
【図１】
2010507293.tif 000004
【図２Ａ】
2010507293.tif 000005
【図２Ｂ】
2010507293.tif 000006
【図３】
2010507293.tif 000007
【図４Ａ】
2010507293.tif 000008
【図４Ｂ】
2010507293.tif 000009
【図５Ａ】
2010507293.tif 000010
【図５Ｂ】
2010507293.tif 000011
【図５Ｃ】
2010507293.tif 000012
【図５Ｄ】
2010507293.tif 000013
【図５Ｅ】
2010507293.tif 000014
【国際調査報告】
2010507293.tif 000015
2010507293.tif 000016
2010507293.tif 000017