JP2017079064A - Smb2スケールアウト - Google Patents

Smb2スケールアウト Download PDF

Info

Publication number
JP2017079064A
JP2017079064A JP2016204949A JP2016204949A JP2017079064A JP 2017079064 A JP2017079064 A JP 2017079064A JP 2016204949 A JP2016204949 A JP 2016204949A JP 2016204949 A JP2016204949 A JP 2016204949A JP 2017079064 A JP2017079064 A JP 2017079064A
Authority
JP
Japan
Prior art keywords
previously established
server
established session
client
session
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
JP2016204949A
Other languages
English (en)
Other versions
JP6334643B2 (ja
Inventor
クルーズ,デーヴィッド・エム
David M Kruse
ロヴィンガー,ダニエル・イー
E Lovinger Daniel
ジョリー,トーマス・イー
E Jolly Thomas
ピンカートン,ジェームズ・ティー
James T Pinkerton
ジョージ,マシュー
Matthew George
バッテパティ,ルーペシュ・シー
C Battepati Roopesh
シャーン,ミンドン
Ming-Dong Shang
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of JP2017079064A publication Critical patent/JP2017079064A/ja
Application granted granted Critical
Publication of JP6334643B2 publication Critical patent/JP6334643B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1038Load balancing arrangements to avoid a single path through a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/148Migration or transfer of sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】スケーリングされたクラスタ環境において動作するクライアントおよびサーバのためのシステムおよび方法を提供する。
【解決手段】複数のサーバとの接続を並行して試みる能力をクライアントに与えることによって、クライアントをクラスタ化環境に接続する処理に効率性が導入される。クラスタ化環境において動作するサーバはまた、ファイルハンドルおよび他の状態情報を持続的に格納することができる。状態情報および持続的ハンドルのオーナーシップは、サーバ間で転送され得、それによって、1つのサーバから別のサーバへと移動する機会がクライアントに与えられると同時に、クラスタ化環境内のリソースへのアクセスが維持される。
【選択図】図4

Description

本願発明の一実施例は、例えば、SMB2スケールアウトに関する。
[0001]サーバクラスタは、一般に、クライアントにフェイルオーバー、および情報の高い可用性を提供するに用いられる。従来、クラスタ環境は、クライアントサーバプロトコルに従って設計されており、クライアントは、サーバに接続してサーバに利用可能なリソースにアクセスする。従来のクラスタ化環境では、環境を構成する相異なるサーバが、相異なるファイルシステムにアクセスすることがある。共通のファイルシステムにアクセスできないことにより、従来のファイルシステムクラスタの機能性が制限されている。
[0002]諸実施形態は、これらおよび他の考慮すべき事柄に関して作成されたものである。また、比較的具体的な問題について論じているが、諸実施形態は、背景において特定されたこれらの具体的な問題を解決することに限定すべきでないことを理解されたい。
[0003]この概要は、「発明を実施するための形態」の項でさらに後述する概念の選択を簡略化した形態で紹介するために与えられる。この概要は、特許請求される主題の重要な特徴または本質的な特徴を特定するように意図するものでも、また特許請求される主題の範囲を決定する際の助けとして使用すべきであるように意図するものでもない。
本願発明の一実施例は、例えば、SMB2スケールアウトに関する。
[0004]本開示の諸実施形態は、スケールアウトされたクラスタ化環境を提供し、ここで、ファイルシステムが、クラスタ内の各ノードがクラスタ内に常駐するすべてのリソースにアクセスできるように論理的にクラスタ化され得る。ファイルシステムは、クラスタ化環境内の各ノードにアクセスできるので、クライアントは、クライアントがどのノードに接続するかに関係なく、クラスタのリソースにアクセスすることができる。そのような環境により、クライアントには、クラスタ化環境に接続している際の選択肢が与えられる。クライアントは、サーバクラスタに効率的に接続するように、スケーリングされたクラスタノードの柔軟性を活用することができる。
[0005]他の諸実施形態では、スケーリングされたクラスタ化環境により、クライアントは、クライアントが接続を確立する実際のノードに関係なく、クラスタにわたってリソースにアクセスすることが可能になる一方、一旦クライアントがノードとの接続を確立すると、クライアントは、クラスタ環境のそのときのノード間で転送される状態情報の量を抑えるために、同じノードとのその接続を維持しようと試みる。
[0006]しかしながら、いくつかの事例では、クライアントは、同じノードとの接続を維持できないこともあるが、スケーリングされたクラスタ化環境内の異なるノードに接続することが求められる。さらなる環境では、スケーリングされたクラスタ環境は、あるノードから別のノードへのクライアントの移動を容易にするために、セッション情報、状態情報、およびまたはハンドルを格納し、維持することを行う。クラスタのノードは、クライアント接続の移動を容易にするために、相互間でそのような情報を通信できる。
[0007]諸実施形態は、コンピュータ処理、コンピューティングシステムとして、またはコンピュータプログラム製品もしくはコンピュータ可読媒体などの製造物品として実装可能である。コンピュータプログラム製品は、コンピュータシステムによって読取り可能な、かつコンピュータ処理を実行するための命令のコンピュータプログラムを符号化するコンピュータストレージ媒体とすることができる。コンピュータプログラム製品はまた、コンピューティングシステムによって読取り可能な、かつコンピュータ処理を実行するための命令のコンピュータプログラムを符号化する搬送波における伝搬信号とすることができる。
[0008]非限定的な包括的でない諸実施形態を以下の図を参照して説明する。
[0009]本明細書に説明される諸実施形態を実施するのに使用され得るシステムを示す図である。 [0010]クライアントが、サーバクラスタに接続する際、実行することができる方法の一実施形態の図である。 [0011]クライアントが、クラスタ化環境内のノード間で接続を転送する際、実行することができる方法の一実施形態の図である。 [0012]持続的ハンドルを維持および転送するためにクラスタ化環境内のノードによって実行される方法の一実施形態の図である。 [0013]先に確立されたセッションのオーナーシップを要求するためにクラスタ化環境内のノードによって実行される方法の一実施形態の図である。 [0014]諸実施形態を実施するのに適しているコンピューティング環境を示すブロック図である。
[0015]様々な実施形態は、本明細書の一部を形成し具体的な例示的実施形態を示す、添付の図面を参照して以下により完全に説明される。しかしながら、諸実施形態は、多数の相異なる形態で実施可能であり、本明細書に記述される実施形態に限定されるものと見なすべきではなく、むしろ、これらの実施形態は、本開示が完全であり十分であるように、かつ当業者に実施形態の範囲を十分に伝えるように与えられるものである。諸実施形態は、方法、システムまたはデバイスとして実施可能である。したがって、諸実施形態は、ハードウェアの実装形態、全体としてソフトウェアの実装形態、またはソフトウェアおよびハードウェアの側面を組み合わせた実装形態の形をとり得る。そのため、以下の詳細な説明は、限定する意味で解釈すべきではない。
[0016]図1は、本明細書に開示される実施形態のいくつかを実施するのに使用され得るシステム100を示している。システム106は、1つまたは複数のノードを含んでいる例示的なクラスタ化システムとすることができる。クラスタ化システムの一例は、図1に示す、1つまたは複数のサーバを備えたサーバクラスタである。システム100は、クライアント102および104と、サーバクラスタ106とを含む。クライアント102および104は、ネットワーク108を介してサーバクラスタ106と通信する。諸実施形態では、ネットワーク108は、インターネット、WAN、LAN、または当技術分野に知られている任意の他のタイプのネットワークであってもよい。サーバクラスタ106は、クライアント102および104におけるアプリケーションによってアクセスされるリソースを格納する。クライアント102および104は、クラスタ106におけるリソースにアクセスするようにクラスタ106とのセッションを確立する。図1では、クライアント102および104のみがクラスタ106と通信するように示されているが、他の諸実施形態では、サーバクラスタ106からの情報にアクセスする2つ以上のクライアントが存在することもある。諸実施形態では、クライアント102および104は、SMB2
プロトコルに従って、サーバクラスタ106にアクセスすること、またはサーバクラスタ106と通信することが可能である。
[0017]図1に示すように、サーバクラスタ106は、クラスタ106において格納された情報についての高い可用性と冗長性の両方をもたらす1つまたは複数のノード、例えば、サーバ106A、106B、および106Cを含む。サーバクラスタ106の1つまたは複数のノードは、インターネット、WAN、LANなどのネットワーク、または当技術分野に知られている任意の他のタイプのネットワークを介して相互に通信することができる。諸実施形態では、クラスタ106は、クライアント102および104によってアクセスされるファイルシステム、データベース、または他の情報を有することができる。図1には3つのサーバが示されているが、他の諸実施形態では、クラスタ106が、4つ以上のサーバを含むことも、または2つ以下のサーバを含むこともある。
[0018]諸実施形態では、サーバクラスタ106は、スケールアウトされたサーバクラスタである。諸実施形態では、スケールアウトされたサーバクラスタは、サーバクラスタ内の各ノード(例えば、サーバ106A、106B、および106C)によってアクセス可能なファイルシステム108を含む。一例として、スケールアウトされたクラスタでは、ファイルシステムは、ファイルシステムを構成する1つまたは複数のディスクが、サーバクラスタ内の各サーバから見えるように、論理的にクラスタ化される。そのような環境では、スケーリングされたサーバクラスタは、クラスタ内のノードにわたってリソースの共有化を可能にする。1つのそのような実施形態では、サーバクラスタ106は、サーバクラスタ106内の各サーバがアクセスできる1つまたは複数のデータストアを含んだ中央データリポジトリを含む。そのような実施形態では、中央リポジトリにリソースを格納することにより、各サーバは、ファイルシステムにアクセスすることが可能になる。別の実施形態では、共有ファイルシステムは、サーバクラスタ106内の各サーバのローカルファイルシステムにわたってリソースを複製することによって実現可能である。そのような諸実施形態では、当技術分野に知られているデータを複製するいずれのやり方も、クラスタを構成するサーバにわたってクラスタリソースを複製するのに用いることができる。
[0019]サーバクラスタ106など、スケールアウトされたサーバクラスタ内に論理的にクラスタ化されたファイルシステムを含めることにより、従来のサーバクラスタでは利用できない追加の機能性が提供される。一実施形態では、論理的にクラスタ化されたファイルシステムは、クラスタ化環境の一部である各ノードが、この環境におけるいずれのリソースにもアクセスすることができることを確実にする。諸実施形態では、リソースは、クラスタ化環境において提供されるアプリケーション、ファイル、オブジェクト、データ、または任意の他のタイプのリソースとすることができる。これにより、クライアントは、クライアントがどのノード(例えば、サーバ106A、106B、および/または106C)との接続を確立するかに関係なく、ファイルシステムにおけるいずれのリソースにもアクセスする、かつ/またはそうでなければ、操作することが可能になる。諸実施形態では、ファイルサーバ106は、名前解決機構を使用して共通の名前で、あらゆるノードを登録することができる。名前解決機構の非限定的な例は、ドメインネームシステム(DNS)である。例えば、サーバクラスタ106は、DNSサーバ(図1には示さず)における共通の名前でサーバ106A、106B、および106Cを登録することができる。DNSサーバは、サーバクラスタ106の一部であっても、またはサーバクラスタ106の外部にあってもよい。
[0020]クライアントは、サーバクラスタ106内のサーバにアクセスしようと試みる際、名前解決機構にアクセスして、サーバのアドレスを取得することができる。例えば、クライアントは、DNSサーバとコンタクトをとって、サーバクラスタ106内のサーバのアドレスを取得することができる。サーバシステムは、共通の名前ですべてのサーバを登
録済みであるので、DNSサーバは、サーバクラスタ106を構成する各サーバ(例えば、サーバ106A、106B、および106C)のアドレスのリストを返信することができる。諸実施形態では、アドレスは、IPアドレス、URL、URI、または当技術分野に知られている任意の他のタイプのアドレスとすることができる。複数のアドレスが返信されるので、クライアントには、どのサーバと接続するかの選択肢が与えられる。諸実施形態では、クライアントは、サーバから受信するリスト内の第1のアドレスに接続するように選択することが可能である。いくつかの事例では、クライアントは、第1のアドレスによって特定された第1のサーバ(例えば、サーバ106A)に接続することがうまくいかない場合がある。サーバクラスタ106内の各サーバは、同様の機能性をクライアントに提供できるので、クライアントは、サーバクラスタ106内の別のサーバに接続するように決めることが可能である。クライアントは、第1のサーバに首尾よく接続することができない場合、所定の期間、待機した後、名前解決機構から受信したアドレスのサブセット(例えば、サーバ106Bおよびサーバ106C)に接続し、上首尾である接続を選ぶように1つまたは複数の要求を発することができる。1つまたは複数の要求は、並行して行われてもよく、この場合、クライアントは、上首尾な接続が確立される第1のサーバに接続することができる。
[0021]アドレスのリストの具体的な順序付けは、上記に規定したが(例えば、第1のリストのアドレスとしてサーバ106A)、当業者には、アドレスのリストはいずれの順序であってもよいことが認識されよう。諸実施形態では、ラウンドロビン技法が、名前解決機構とともに用いられることがあり、例えば、DNSラウンドロビンは、ネットワークにわたって負荷バランスを行うのに活用され得る。複数のクライアント(例えば、クライアント102および104)がサーバクラスタ106に同時に接続することがあるので、ラウンドロビン技法は、相異なるクライアントに与えられる第1のアドレスが変わることを確実にする。したがって、初期接続要求は、クラスタ化環境のすべてのノードにわたって広められる。さらには、クライアントは、アドレスのサブセットをランダムに選定することができ、第1のサーバとの接続における試みが失敗した後、追加の訂正要求を発し、それによって、追加の負荷バランスの仕組みがもたらされる。
[0022]諸実施形態では、一旦クライアントがサーバクラスタ106内のサーバに接続されると、クライアントは、同じサーバに接続されたままでいることを確実にし得る。各サーバ(例えば、サーバ106A、106B、および106C)は、論理的にクラスタ化されたファイルシステムを共有するが、クライアントのセッション状態は、それが接続されているサーバによってハンドリングされ得る。したがって、サーバにわたって状態同期トラフィックを最小限にするために、クライアントは、同じサーバに接続されたままでいることを確実にし得る。例えば、クライアント102がサーバ106Aに接続される場合、クライアント102は、その接続およびリソース使用量のすべて(例えば、オープンファイル)がサーバ106Aに関するものであることを確実にするように試みることができる。そのような諸実施形態では、クライアント102は、サーバ106Aへのその接続を失った場合、サーバクラスタ106に再接続する際、サーバ106Bまたは106Cではなく、サーバ106Aに再接続するように試みることになり、それによって、サーバクラスタ106内の相異なるサーバ間のセッション状態を転送する必要性が抑えられる。諸実施形態では、クライアントは、接続を失うと、同じサーバに再接続するように試みるので、サーバは、クライアントとの通信を失った後でも、クライアントのセッション状態を維持することが可能である。例えば、クライアント102がサーバ106Aとの接続を失った場合、サーバ106Aは、クライアント102のセッション状態を維持することが可能である。クライアント102がその接続を再確立する際、セッション状態の持続性により、クライアント102は、サーバ106Aとの再接続時にそのセッション情報(例えば、状態情報)を再使用することが可能になる。
[0023]しかしながら、いくつかの状況では、クライアントがサーバクラスタ106内の単一のサーバとその接続を維持することは効率的でないことも、または可能でないこともある。例えば、サーバノード障害、所与のサーバとの失われた接続、もしくはサーバの負荷バランス、パッチなどの管理上の動作、または任意の他のタイプの管理上の動作は、クライアントが同じノードに再接続することを不可能にする可能性がある。ノードの変更を容易にするために、サーバクラスタ106は、クライアントによってアクセスされるリソースへの持続的ハンドルをサポートすることが可能である。持続的ハンドルにより、クライアントは、第2のノードに接続する際、第1のノードにおいて確立済みのハンドルを再開することが可能になる。例えば、クライアント102がその初期接続をサーバ106Aからサーバ106Cへと変更する場合、クライアント102によってサーバ106Aにおいて使用されたハンドルは、サーバ106Cに転送され得る。
[0024]諸実施形態では、サーバクラスタ106は、持続的状態ストアを用いて、持続的ハンドルを提供することが可能である。例示的な持続的状態ストアは、サーバクラスタ106の1つまたは複数のノード内に存在し得るレジュームキーマネージャである。しかしながら、当業者には、任意のタイプのキャッシュまたはデータストアをサーバクラスタ106が利用して、持続的ハンドルを容易にし得ることが認識されよう。一実施形態では、サーバクラスタ106は、集中型持続的状態ストアを備える。そのような諸実施形態では、サーバクラスタ106内の単一のノード(例えば、サーバ106B)は、クライアントセッションのためのオープンハンドルの持続的状態を維持する。そのような諸実施形態では、その全体が参照によって本明細書に組み込まれている2011年9月9日に出願された「Clustered Client Failover(クラスタ化されたクライアントフェイルオーバー)」(代理人整理番号第14917.1840US01号)という名称の同一出願人による同時係属中の米国特許出願第13/228,732号に記載されている無効化技法など、先のセッションの無効化ロジックを用いることによって、クライアントが1つのノードから別のノードに切り替える(例えば、サーバ106Aから106Cへの切替えの)たびに、クライアントセッションの一部であるハンドルのオーナーシップは、ノード間で転送され得る(例えば、サーバ106Aからサーバ106Cにオーナーシップが転送される)。他の諸実施形態では、ハンドルのオーナーシップは、ハンドルごとにクライアントによって明示的に転送され得る。
[0025]別の実施形態では、持続的状態ストアは、分散型状態ストアであってもよい。そのような諸実施形態では、持続的状態ストアは、サーバクラスタ106のノードにわたって分布され得る。そのような諸実施形態では、各ノードは、持続的状態ストアを格納することができる。クラスタワイド状態複製アルゴリズムは、分散型状態ストアにわたって状態を複製するために使用され得る。そのような諸実施形態では、サーバクラスタ106は、ノードのサブセットが機能しない場合には、状態情報を維持する。
[0026]上述のように、スケーリングされたクラスタの各ノードは、論理的にクラスタ化されたファイルシステムに接続される。複数のクライアントが同じリソースにアクセスする際の競合を回避するために、サーバクラスタ106は、1つまたは複数のノード(例えば、106A、106B、および/または106C)に、リソースに対する便宜的ロックまたはリースを採る能力を与えることによって、分散された状態解決法を行うことが可能である。諸実施形態では、共有リーダは、複数のリーダがクラスタの複数のノードにおける同じファイルにアクセスできるようにするRH便宜的ロックを使用することによって、サポートされ得る。さらなる諸実施形態では、書込みロックもまた、サーバクラスタ106によってサポートされ得る。
[0027]本明細書に説明されているように、当業者には、スケーリングされたサーバクラスタは、スケーリングされていないサーバクラスタでは利用できない追加の機能性をもた
らすことが認識されよう。追加の機能性の具体的な例は、図1に関して与えられたが、当業者には、これらは、スケーリングされたサーバクラスタによってもたらされる利点および機能性の非限定的な例であることが認識されよう。
[0028]図2は、クライアントが、クラスタ化環境に接続する際、実行することができる方法200の一実施形態である。例えば、クライアント102(図1)などのクライアントは、方法200を用いて、クラスタ化環境に接続する際、どのノード(例えば、106A、106B、および/または106C)との接続を確立すべきであるかを判定することができる。フローは動作202から開始し、ここで、クライアントは、DNSサーバなどの名前解決機構からアドレスリストを受信する。図1に関して論じたように、諸実施形態では、クラスタ化環境内の各ノードは、クライアントに類似の機能性を提供でき得る。したがって、クライアントは、クライアントがどのノードに接続するかに関係なく、首尾よく、所望の動作を実行する、またはクラスタ化環境内の所望のリソースにアクセスすることができる。
[0029]フローは動作204へと続き、ここで、クライアントは、動作202で受信したアドレスのリスト内の第1のアドレスによって特定された第1のノードに接続しようと試みる。クライアントは、動作204で、第1のアドレスによって特定されたノードに初期接続要求を送信することによって、第1のノードに接続しようと試みることができる。しかしながら、当業者には、動作203でノード(例えば、サーバ)との接続を試みるいかなるやり方も認識されよう。諸実施形態では、クライアントは、動作206によって示されるように、所定の期間、第1の試みが成功するのを待つことができる。しかしながら、クラスタ化環境内のいずれのノードもクライアントに代わっていずれのリソースにアクセスできるので、クライアントは、第1の試みが失敗した場合、または長い時間かかっている場合、他のサーバクラスタに試み要求を発することができる。動作206には、所定の期間、クライアントが待つことが記載されているが、その時間は、クライアントによって動的に決定され得る。
[0030]別の実施形態では、サーバに接続する第1の試みが上首尾になり得る一方で、ノードはクラスタ化環境のリソースにアクセスできないことがある。例えば、アドレスのリストは、不正確なアドレス、またはもはやクラス化環境の一部ではないノードのアドレスを含んでいる場合がある。さらなる実施形態では、エラーにより、クラスタ化環境リソースへのノードのアクセスが妨げられる場合がある。クライアントは、そのような状況を特定するために必要なロジックを使用することができる。これらの状況では、クライアントは、障害時の上首尾な試みを処理し、方法200の実行を継続することができる。
[0031]第1の試みが失敗すると、または期間が満了した後、フローは動作208へと続き、ここで、クライアントは、アドレスのリストからアドレスのサブセットをランダムに選定する。諸実施形態では、サブセットアドレスをランダムに選定することより、クラスタ化環境に負荷バランスの利点がもたらされ、それは、複数のクライアントがたった1回でそのノードと接続しようとする試みを可能にする。各クライアントが接続すべきノードのサブセットをランダムに選定する場合、より良い接続バランスがクラスタ化環境にわたって確立され得る。しかしながら、他の諸実施形態では、クライアントは、ランダムにサブセットを選定しなくてもよく、リストに登場する順序でアドレスを選定してもよい。さらなる諸実施形態では、クライアントは、動作208でアドレスのリストのサブセットを選定するのではなく、リスト内のすべてのアドレスを選定してもよい。
[0032]フローは動作210へと続き、ここで、クライアントは、選定されたサブセット内のアドレスによって特定された1つまたは複数のノードに接続しようと試みる。一実施形態では、クライアントは、動作210で並行して複数のノードに接続しようと試みるこ
とができ、それによって、接続処理の速度が上がる。諸実施形態では、クライアントは、動作210で相異なるノードに1つまたは複数の追加の接続要求を送信することができるが、動作204に関して説明したように、接続を試みるいずれのやり方も、本明細書に説明される諸実施形態とともに用いることができる。
[0033]フローは動作212へと続き、ここで、クライアントは、上首尾な接続の指示を受信する。諸実施形態では、この指示は、クライアントがノードに接続できることを示した、クライアントがノードから受信するメッセージとすることができる。諸実施形態では、クライアントは、動作210で並行の試みを行う場合、動作212で、クライアントに首尾よく応答する第1のノードに接続しようと決めることができる。他の諸実施形態では、クライアントは、クラスタ化環境内の相異なるノードから上首尾な試みの複数の指示を受信することができる。そのような諸実施形態では、クライアントは、どのノードに接続すべきかを選択することができる。さらなる諸実施形態では、これらの指示は、ノードの現在の負荷など、ノードについての性能を提供することができる。クライアントは、そのような情報を使用して、どのノードへの接続を確立すべきかを判定することができる。例えば、クライアントは、より軽い負荷、具体的なハードウェア構成などを有するノードに接続することを選択することができる。一旦クライアントがノードを選定すると、フローは動作214へと進み、クライアントは、そのノードに接続する。
[0034]ノードに接続した後、クライアントは、このノードとのセッションを確立し、クラスタ化環境内のリソースにアクセスできる。図1に関して説明したように、クライアントは、一旦ノードへの接続を確立すると、同じノードとのその接続を維持しようと試みる。これにより、クライアントが1つのノードから別のノードに接続を転送する際に発生し得る状態情報の伝送が抑えられる。そのような諸実施形態では、クライアントが、例えば、ネットワーク障害またはクライアントクラッシュなどのエラーを起因として、ノードとの接続を切った場合、クライアントは、エラーからの回復後、同じノードに再接続しようと試みることがある。
[0035]しかしながら、クライアントが同じノードに再接続することは必ずしもできるとは限らない。例えば、ノードに障害が生じた場合、クライアントは、ノードとの接続性を失った場合、またはノードが管理上の目的で(例えば、負荷バランスの要件、ノードのパッチなどを起因として)利用可能でない場合、クライアントは、その接続を異なるノードを介してクラスタ化環境へ再確立することができる。図3は、クライアントがクラスタ化環境内のノード間の接続を転送する際に行うことができる方法300の一実施形態である。
[0036]フローは動作302から開始し、ここで、クライアントは、新規ノードとの接続が求められていることを判定する。例えば、ネットワークまたはノードの障害を起因としてノードとの接続を失うと、クライアントは、クラスタ化環境内の同じノードに再接続することはできないと判定することができる。別の実施形態では、クライアントは、ノードからの性能情報を受信することができる。性能情報に基づいて、クライアントは、より良いサービスをクライアントに提供することができる別のノードに接続を転送するように決めることができる。例えば、クライアントは、ノードが重いトラフィック状態に置かれていることを示す情報を受信することができる。そのような状況では、クライアントは、別のノードに再接続することが求められていないこともあるが、任意選択で、性能上の理由でそうするように決めてもよい。同様に、ノードからの性能情報を受信せずに、例えば、ノードが要求を実行するのにどれだけ長くかかるのかを監視することによって、クライアントは、自身でこの情報を判定してもよい。
[0037]別の実施形態では、ノードは、クライアントがその接続をクラスタ内の異なるノ
ードに転送することを求めることができる。例えば、ノードがパッチまたは負荷バランスの目的でオフラインにしようとしている場合、ノードは、その接続を異なるノードに転送するようにクライアントに求めることができる。そのような諸実施形態では、ノードは、クライアントがその接続を転送しなくてはならないことを示すメッセージをクライアントに送信することができる。そのような通信を実行する諸実施形態は、その全体が参照によって本明細書に組み込まれている2011年3月29日に出願された「Providing a Witness Service(ウィットネスサービスの提供)」という名称の同一出願人による同時係属中の特許出願(米国特許出願第13/074,920号)に記載されている。
[0038]ノード間の接続転送が求められていることが判定された後、フローは動作304へと続く。動作304で、クライアントは、クラスタ化環境内の異なるノードに接続しようと試みる。例えば、クライアントは、クラスタ化環境内の1つまたは複数のノードに接続要求を送信することができる。諸実施形態では、クライアントは、方法200に関して説明したステップのすべてまたはサブセットを実行することによって、クラスタ化環境内の第2のノードに接続することができる。別の実施形態では、クライアントは、クラスタ化環境によって特定のノードに接続するように指向されてもよい。首尾よく試みがなされると、フローは動作306へと続き、クライアントは、クラスタ化環境内の第2のノードに接続する。
[0039]しかしながら、クライアントは、先に確立されたセッションを既に有するので、セッションは、異なるノードに転送可能である。動作308で、クライアントは、第2のノードにセッションセットアップ要求を送信する。諸実施形態では、セッションセットアップ要求は、クライアントが先に接続を確立したことを示すセッション識別子を含んだメッセージとすることができる。図5に関してさらに論じるように、セッションセットアップ要求の受信に応答して、第2のノードは、先に確立された接続のオーナーシップを取ることができる。方法300には、慎重なステップとしてセッションセットアップ要求を送信することが記載されているが、当業者には、クライアントは、動作304で第2のノードに接続する要求とともにセッションセットアップ要求またはセッション識別子を送信してもよいことが認識されよう。
[0040]スケールアウトされたクラスタ化環境に接続する際、クライアントが用いることができる方法についてこれまで説明してきたが、次に、本開示では、そのような環境内の1つまたは複数のノードによって用いられ得る機能性について説明する。図4は、クラスタ化サーバ環境内の持続的ハンドルを維持し、転送するように、クラスタ化環境内のノードによって実行される方法400の一実施形態である。例えば、方法400は、サーバ106A、106B、および106Cなど、クラスタ化サーバ環境(例えば、サーバクラスタ106)の一部であるサーバによって実行可能である。フローは動作402から開始し、ここで、ノードは、クライアントからの接続要求を受諾し、それによって、ノードとクライアントとの間の接続が確立される。初期接続は、クライアントがこのノードに対して、またはクラスタ化環境内の別のノードに対して先に確立された接続を有していないことを示している。諸実施形態では、ノードは、クライアントの接続要求の一部としてクライアントからセッションセットアップ要求を受信しないとき、またはクライアントとの接続を確立した後間もなく、クライアントとの接続を確立していることを判定することができる。
[0041]フローは動作404へと続き、ここで、ノードは、クライアントとのセッションを作成する。動作404で、ノードは、そのセッションにセッション識別子を割り当てることができる。セッション識別子は、クラスタ化環境内のすべてのノードにわたってグロバール一意識別子(GUID)とすることができる。セッションを作成すると、ノードは
、クライアントに代わってリソースを割り当て、かつ/またはリソースへの動作を実行することができる。そうする際、例えば、状態情報などのセッション情報が作成され得る。ノードは、セッション情報を格納することができる。状態情報に加えて、ノードは、1つまたは複数のハンドルを格納することができる。例えば、クライアントがファイルを開く場合、ファイルに対するハンドルが、クライアントに提供され得る。ノードは、セッション情報と一緒に、またはセッション情報に加えて、ハンドルを格納することができる。
[0042]フローは動作406へと続き、ここで、ノードは、クライアントへのその接続性を失う。例えば、クライアントは、エラー(例えば、ネットワーク接続のクラッシュまたは損失)に悩まされることがある。クライアントが再接続し得ることを予想して、サーバは、動作408でセッションおよび/または情報を維持することになる。例えば、ノードは、セッションおよび/または状態情報をローカルメモリに、集中型持続的ストアに、または分散型状態ストアに書き込むことができる。前述したように、クライアントは、単一のノードとの接続を維持しようと試みることになる。諸実施形態では、クライアントは、エラーから回復後、ノードに再接続することができる。再接続すると、ノードは、クライアントが、例えば、クライアントからセッション識別子を受信することによって、先に確立された状態を既に有することを特定することができる。そのような諸実施形態では、維持されたセッション状態により、クライアントは、その先に確立されたセッションを継続することが可能になる。
[0043]しかしながら、ある状況においては、クライアントは、ノードに再接続できないこともある。そうではなく、クライアントは、クラスタ化環境内の異なるノードに再接続することができる。そのような状況の下で、フローは動作410へと続き、ここで、ノードは、クラスタ化環境内の別のノードからセッション情報を転送するための要求を受信する。諸実施形態では、別のノードは、クライアントについてのセッションを再確立するために、セッション情報のオーナーシップを要求し、このクライアントは、オーナーシップを要求するノードに接続される。セッションオーナーシップの要求は、方法400を実行するノードが、所有する、かつ/または維持する先に確立されたセッションを特定するために使用することができるセッション識別子を含み得る。
[0044]セッションオーナーシップの要求を受信すると、フローは動作412へと続き、ここで、ノードは先に確立されたセッションと関連付けられるリソースに対して実行される未処理の入力/出力(I/O)操作が存在しないことを確実にする。諸実施形態では、未処理のI/O操作が存在する場合、ノードは、これらの操作が完了するのを待ってから、動作414へと進む。他の諸実施形態では、ノードは、動作410でセッションリソースに対する保留中のI/O操作をキャンセルしてもよい。ノードは、保留中のI/O操作を待つことも、および/またはキャンセルすることもでき、リソース完全性を維持する。
[0045]ノードが、すべてのI/Oが完了した(またはキャンセルされた)ことを確実にした後、フローは動作414へと続く。動作414で、ノードは、先の確立されたセッションを無効にする。セッションを無効にすることは、セッションの一部である任意のオープンハンドルをクローズすることを含むことができる。他の諸実施形態では、セッションを無効にすることは、リソースに存在し得る任意のロックを解除することを含み得る。諸実施形態では、セッションの無効化はまた、図1に関して説明した無効化ロジックを含み得る。さらには、諸実施形態では、単一のステップの無効化が、実行されてもよく、ここで、ノードは、ノードが各ファイルハンドルを個々に無効にする必要性をなくすために、先に確立されたセッションについてのすべてのハンドルおよび/またはロックを無効にする。
[0046]先に確立されたセッションが無効にされた後、フローは動作416へと続き、こ
こで、ノードは、セッションのオーナーシップを要求側ノードに転送する。諸実施形態では、セッションのオーナーシップの転送は、セッションに関連するすべての関連リソースのオーナーシップを転送することを含み得る。動作416で転送され得る例示的リソースはファイルハンドルであるが、他のリソースのオーナーシップも、動作416で転送することができる。さらなる諸実施形態では、セッションに関連するリソースのオーナーシップを転送することは、1つのノードから別のノードへのリソースの転送を含み得る。効率性のため、すべてのセッション情報は、動作416でまとめて転送することができ、それによって、ノード間に必要な通信の数が抑えられる。
[0047]図5は、先に確立されたセッションのオーナーシップを要求するために、クラスタ化環境内のノードによって実行される方法500の一実施形態である。例えば、方法400は、サーバ106A、106B、および106Cなど、クラスタ化サーバ環境(例えば、サーバクラスタ106)の一部であるサーバによって実行可能である。フローは動作502から開始し、ここで、ノードは、クライアントの接続を確立する。例えば、ノードは、動作502でクライアントから接続要求のための要求を受信することができる。ノードは、接続要求を受諾し、クライアントに接続することができる。
[0048]フローは動作504へと続き、ここで、ノードは、クライアントがクラスタ化環境内の別のノードとのセッションを先に確立したことを特定する。諸実施形態では、ノードは、クライアントからセッションセットアップ要求を受信することができる。セッションセットアップ要求は、接続要求とともに、またはクライアントに接続後、受信され得る。諸実施形態では、セッションセットアップ要求は、先に確立された接続を特定するセッション識別子を含んでいる。
[0049]フローは動作506へと続き、ここで、ノードは、クライアントの先に確立されたセッションを現在所有する、クラスタ化環境内の第2のノードにオーナーシップ要求を送信する。オーナーシップ要求は、先のセッションと関連付けられたハンドルを無効にし、かつセッション情報をノードに転送する命令を含んでいることができる。諸実施形態では、オーナーシップ要求は、セッションセットアップ要求および/または動作504で受信したセッションidを含み得る。
[0050]フローは動作508へと続き、ここで、ノードは、先に確立されたセッションについてのセッションおよび/または状態情報を受信する。諸実施形態では、セッションおよび/または状態情報は、第2のノードから、中央リポジトリから、またはクラスタ環境内の別の場所から受信可能である。別の実施形態では、動作508でセッションおよび/または状態情報を受信するのではなく、ノードは、動作508で集中型リポジトリ内に常駐するセッションおよび/または状態情報にアクセスすることが許可され得る。次いで、フローは動作510へと続き、ここで、ノードは、受信したかつ/またはアクセスしたセッションもしくは状態情報を使用して、クライアントのセッションを再確立し、クライアントがクラスタ化環境内のリソースにアクセスし続けることを可能にする。
[0051]方法300〜500は、単に諸実施形態により実行可能な動作フローのいくつかの例にすぎない。諸実施形態は、図3〜図5に関して上記に与えた具体的な説明に限定するものでなく、追加の動作を含み得る。さらには、示されている動作のステップは、他のステップに組み合わせられても、かつ/または再構成されてもよい。さらには、より少ないステップまたは追加のステップが、図3〜図5に説明されている方法と共に使用されても用いられてもよい。
[0052]図6は、本明細書に説明されている諸実施形態を実施するために使用され得る汎用コンピュータシステム600を示している。コンピュータシステム600は、コンピュ
ーティング環境のほんの一例にすぎず、コンピュータおよびネットワークのアーキテクチャの使用または機能性の範囲についていかなる限定をも提案するように意図されるものでない。また、コンピュータシステム600は、例示的なコンピュータシステム600に示されている構成要素のうちのいずれかのものまたは構成要素の組合せに関連する何らかの依存性または要件を有するものと解釈すべきものでもない。諸実施形態では、システム600は、図1に関して上述したクライアントおよび/またはサーバとして使用され得る。
[0053]システム600は、そのもっとも基本的な構成では、典型的には、少なくとも1つの処理装置602およびメモリ604を含む。コンピューティングデバイスの正確な構成およびタイプに応じて、メモリ604は、揮発性であっても(RAMなど)、非揮発性であっても(ROM、フラッシュメモリなど)、または何らかの組合せであってもよい。このもっとも基本的な構成は、図6に破線606で示されている。システムメモリ604は、本明細書に開示されるスケーリングされたクラスタ環境の方法につながるための命令などの命令620、およびストレージ608などのストレージとともにファイルストレージシステムに格納され得るセッション状態情報などのデータ622を格納する。
[0054]本明細書に使用されるコンピュータ可読媒体という用語は、コンピュータストレージ媒体を含み得る。コンピュータストレージ媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するために、任意の方法および技術で実装される揮発性および不揮発性の、取外し可能および取外し不可能な媒体を含み得る。システムメモリ604、取外し可能なストレージおよび取外し不可能なストレージ608はすべて、コンピュータストレージ媒体の例(例えば、メモリストレージ)である。コンピュータストレージ媒体として、RAM、ROM、電気的消去可能なリードオンリメモリ(EEPROM)、フラッシュメモリもしくは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)もしくは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または情報を格納するために使用可能な、かつコンピューティングデバイス600によってアクセス可能な任意の他の媒体を挙げることができるが、これらに限定されるものではない。任意のそのようなコンピュータストレージ媒体は、デバイス600の一部とすることができる。コンピューティングデバイス600はまた、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デイバスなどの入力デバイス(複数可)614を有することもできる。ディスプレイ、スピーカ、プリンタなどの出力デバイス(複数可)616もまた含められ得る。前述のデバイスは、例であり、他のデバイスも使用可能である。
[0055]本明細書に使用されるコンピュータ可読媒体という用語はまた、通信媒体を含み得る。通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または搬送波もしくは他の輸送機構など、変調されたデータ信号における他のデータによって具現化可能であり、任意の情報送達媒体を含んでいる。用語「変調されたデータ信号」は、信号内の情報を符号化するようなやり方で、1つまたは複数の特性が設定または変更された信号を説明することができる。限定するものではないが、例として、通信媒体は、ワイヤードネットワークまたは直接ワイヤード接続などのワイヤード媒体、ならびに音響、無線周波数(RF)、赤外線、および他のワイヤレス媒体など、ワイヤレス媒体を含み得る。
[0056]本発明の諸実施形態は、システムオンチップ(SOC)を介して実施可能であり、ここで、図6に示されている構成要素の各々または多くは、単一の集積回路上に集積化され得る。そのようなSOCデバイスは、1つまたは複数の処理装置、グラフィック装置、通信装置、システム可視化装置、および様々なアプリケーション機能を含み得、それらのすべては、単一の集積回路としてチップ基板上に集積化される(または焼かれる)。リソースへの継続的なアクセスを可能にすることに関して本明細書に説明されている機能は
、SOCを介して動作する際、単一の集積回路(チップ)上のコンピューティングデバイス/システム600の他の構成要素と集積化される特定用途向けのロジックを介して動作し得る。
[0057]本明細書全体を通じて、具体的に説明された特徴、構造、または特性が少なくとも1つの実施形態に含まれていることを意味する「1つの実施形態」または「一実施形態」について参照がなされている。したがって、そのようなフレーズの使用では、まさに1つの実施形態というよりも複数の実施形態が示されている場合がある。さらには、説明された特徴、構造、または特性は、1つまたは複数の実施形態において、ならんかの適切なやり方で組み合わせることも可能である。
[0058]しかしながら、当業者には、諸実施形態が、具体的な詳細のうちの1つまたは複数がなくても、または他の方法、リソース、情報などを用いて実施可能であることが認識できる。他の事例では、よく知られている構造、リソース、または動作については、単に諸実施形態の態様を曖昧にしないようにするために詳細に図示または説明していない。
[0059]例示的な諸実施形態および適用例を図示し説明してきたが、諸実施形態は、上述の正確な構成およびリソースに限定されるものでないことを理解すべきである。当業者に明らかな様々な修正、変更、および変形は、特許請求される諸実施形態の範囲から逸脱することなく、本明細書に開示される方法ならびにシステムの構成、動作、および詳細において行われ得る。

Claims (20)

  1. 持続的ハンドルを提供するためのコンピュータシステムであって、
    少なくともクラスタ内の第1のサーバおよび第2のサーバを備え、当該第1のサーバ及び第2のサーバが、サーバクラスタの一部であり、
    前記第1のサーバが、
    の前記第2のサーバとの先に確立された(established)セッションを特定するセッションセットアップ要求を含む接続要求を、クライアントから受信し、
    前記第2のサーバに、前記先に(previously)確立されたセッションのオーナーシップ要求を送信する
    ように構成され、
    前記第2のサーバが、
    前記第1のサーバから前記要求を受信し、
    前記先に(previously)確立されたセッションに関連する1つ又は複数のリソースについての保留中操作が存在しないことを保証し(ensure)、
    前記先に(previously)確立されたセッションを無効にする
    ように構成されている、
    コンピュータシステム。
  2. 前記セッションを無効にすることが、少なくとも、
    前記先に確立されたセッションに関連する、少なくとも1つのオープンハンドルをクローズすること、及び、
    前記先に確立されたセッションに関連する前記1つ又は複数のリソースにおける、少なくとも1つのロックを解除すること、
    の1つを含む、
    請求項に記載のコンピュータシステム。
  3. 前記第2のサーバが、更に、前記先に確立されたセッションのオーナーシップを、前記第1のサーバに転送するように構成される、
    請求項2に記載のコンピュータシステム。
  4. 前記先に確立されたセッションを転送することが、前記先に確立されたセッションに関連する前記1つ又は複数のリソースのオーナーシップを、前記第1のサーバに転送することを含む、請求項3に記載のコンピュータシステム。
  5. 前記先に確立されたセッションを転送することが、前記先に確立されたセッションに関連する前記1つ又は複数のリソースを、前記第1のサーバに転送することを含む、請求項3に記載のコンピュータシステム。
  6. 保留中操作が存在しないことを保証することが、少なくとも、
    1つ又は複数の保留中操作を完了させること、及び、
    前記1つ又は複数の保留中操作をキャンセルすること、
    の1つを含む、
    請求項1に記載のコンピュータシステム。
  7. サーバクラスタ環境において、先に確立されたセッションを転送するための方法であって、
    前記サーバクラスタ内の第1のノードにおいて、前記先に確立されたセッションを、第2のノードに転送する要求を受け取り、
    前記先に確立されたセッションに関連する、1つ又は複数のリソースに対する保留中操作が存在するかを判断し、
    保留中操作が存在しないときに、前記先に確立されたセッションを無効とする、
    方法。
  8. 前記先に確立されたセッションを転送する要求が、セッション識別子を含み、当該セッション識別子が、前記先に確立されたセッションを識別するために用いられる、請求項7に記載の方法。
  9. 前記先に確立されたセッションに関連する前記1つ又は複数のリソースの保留中操作が存在するときに、前記保留中操作が完了することを待機すること、を更に含む、請求項7に記載の方法。
  10. 前記先に確立されたセッションに関連する前記1つ又は複数のリソースに対して保留中操作が存在するときに、当該保留中操作を解除することを更に含む、請求項7に記載の方法。
  11. 前記先に確立されたセッションを無効にすることが、少なくとも、
    前記先に確立されたセッションに関連する、少なくとも1つのオープンハンドルをクローズすること、及び、
    前記先に確立されたセッションに関連する前記1つ又は複数のリソースにおける、少なくとも1つのロックを解除すること、
    の1つを含む、
    請求項7に記載の方法。
  12. 前記先に確立されたセッションのオーナーシップを、第2のサーバに転送することを更に含む、請求項7に記載の方法。
  13. 前記先に確立されたセッションを転送することが、前記先に確立されたセッションに関連する前記1つ又は複数のリソースのオーナーシップを、前記第2のサーバに転送することを含む、請求項12に記載の方法。
  14. 前記先に確立されたセッションを転送することが、前記先に確立されたセッションに関連する前記1つ又は複数のリソースを、前記第1のサーバに転送することを含む、請求項12に記載の方法。
  15. コンピュータによって実行可能な命令を符号化するコンピュータ記憶媒体であって、当該命令が、少なくとも1つのプロセッサによって実行されたときに、
    前記サーバクラスタ内の第1のノードにおいて、前記先に確立されたセッションを、第2のノードに転送する要求を受け取り、
    前記先に確立されたセッションに関連する、1つ又は複数のリソースに対する保留中操作が存在するかを判断し、
    保留中操作が存在しないときに、前記先に確立されたセッションを無効とする、
    ことを含む方法を実行する、コンピュータ記憶媒体。
  16. 前記先に確立されたセッションを転送する要求が、セッション識別子を含み、当該セッション識別子が、前記先に確立されたセッションを識別するために用いられる、請求項15に記載のコンピュータ記憶媒体。
  17. 前記先に確立されたセッションを無効にすることが、少なくとも、
    前記先に確立されたセッションに関連する、少なくとも1つのオープンハンドルをクローズすること、及び、
    前記先に確立されたセッションに関連する前記1つ又は複数のリソースにおける、少なくとも1つのロックを解除すること、
    の1つを含む、
    請求項15に記載のコンピュータ記憶媒体。
  18. 前記先に確立されたセッションのオーナーシップを、第2のサーバに転送することを更に含む、請求項15に記載のコンピュータ記憶媒体。
  19. 前記先に確立されたセッションを転送することが、前記先に確立されたセッションに関連する前記1つ又は複数のリソースのオーナーシップを、前記第2のサーバに転送することを含む、請求項18に記載のコンピュータ記憶媒体。
  20. 前記先に確立されたセッションを転送することが、前記先に確立されたセッションに関連する前記1つ又は複数のリソースを、前記第1のサーバに転送することを含む、請求項18に記載のコンピュータ記憶媒体。
JP2016204949A 2011-09-09 2016-10-19 Smb2スケールアウト Active JP6334643B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/228,818 2011-09-09
US13/228,818 US20130067095A1 (en) 2011-09-09 2011-09-09 Smb2 scaleout

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2014529877A Division JP2014532210A (ja) 2011-09-09 2012-09-07 Smb2スケールアウト

Publications (2)

Publication Number Publication Date
JP2017079064A true JP2017079064A (ja) 2017-04-27
JP6334643B2 JP6334643B2 (ja) 2018-05-30

Family

ID=47729311

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2014529877A Pending JP2014532210A (ja) 2011-09-09 2012-09-07 Smb2スケールアウト
JP2016204949A Active JP6334643B2 (ja) 2011-09-09 2016-10-19 Smb2スケールアウト

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2014529877A Pending JP2014532210A (ja) 2011-09-09 2012-09-07 Smb2スケールアウト

Country Status (11)

Country Link
US (3) US20130067095A1 (ja)
EP (2) EP2754063A4 (ja)
JP (2) JP2014532210A (ja)
KR (1) KR101947851B1 (ja)
CN (2) CN105743996A (ja)
AU (1) AU2012304550B2 (ja)
BR (1) BR112014005315A2 (ja)
CA (1) CA2847735A1 (ja)
MX (1) MX2014002782A (ja)
RU (1) RU2613040C2 (ja)
WO (1) WO2013036698A2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332526B2 (en) 2005-05-25 2012-12-11 Microsoft Corporation Data communication protocol including negotiation and command compounding
US8631277B2 (en) 2010-12-10 2014-01-14 Microsoft Corporation Providing transparent failover in a file system
US9331955B2 (en) 2011-06-29 2016-05-03 Microsoft Technology Licensing, Llc Transporting operations of arbitrary size over remote direct memory access
US8856582B2 (en) 2011-06-30 2014-10-07 Microsoft Corporation Transparent failover
US20130067095A1 (en) 2011-09-09 2013-03-14 Microsoft Corporation Smb2 scaleout
US8788579B2 (en) 2011-09-09 2014-07-22 Microsoft Corporation Clustered client failover
US9253144B2 (en) * 2011-12-22 2016-02-02 International Business Machines Corporation Client-driven load balancing of dynamic IP address allocation
US9665432B2 (en) * 2014-08-07 2017-05-30 Microsoft Technology Licensing, Llc Safe data access following storage failure
US9847918B2 (en) 2014-08-12 2017-12-19 Microsoft Technology Licensing, Llc Distributed workload reassignment following communication failure
GB2531341B (en) * 2014-10-17 2016-10-12 Ibm Reconnection of a client to a server in a transaction processing server cluster
CN106059986A (zh) * 2015-04-22 2016-10-26 阿里巴巴集团控股有限公司 Ssl会话重用的方法和服务器
CN106161404A (zh) * 2015-04-22 2016-11-23 阿里巴巴集团控股有限公司 Ssl会话重用的方法、服务器和系统
US10303660B2 (en) 2015-11-12 2019-05-28 Microsoft Technology Licensing, Llc File system with distributed entity state
CN106534328B (zh) * 2016-11-28 2020-01-31 网宿科技股份有限公司 节点连接方法及分布式计算系统
CN107395659B (zh) * 2017-03-28 2021-08-24 创新先进技术有限公司 一种业务受理及共识的方法及装置
JP6838707B2 (ja) * 2017-06-30 2021-03-03 京セラドキュメントソリューションズ株式会社 リモート通信制御システム、セッション管理システムおよびセッション管理プログラム
US11553046B1 (en) * 2017-09-27 2023-01-10 Amazon Technologies, Inc. Seamless scaling via proxy replay of session state
US11349937B2 (en) * 2020-09-18 2022-05-31 EMC IP Holding Company LLC Passive management of network connections

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163369A (ja) * 1998-11-30 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> 処理結果分散管理方法及びシステム及び処理結果分散管理サーバ装置及び処理結果分散管理プログラムを格納した記憶媒体
JP2010009090A (ja) * 2008-06-24 2010-01-14 Fujitsu Ltd ファイルサーバのクラスタノード制御プログラム,クラスタノード制御方法及びクラスタノード制御装置

Family Cites Families (279)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4399504A (en) 1980-10-06 1983-08-16 International Business Machines Corporation Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment
JPS6019341A (ja) 1983-07-13 1985-01-31 Usac Electronics Ind Co Ltd 回線制御方式
US4825354A (en) 1985-11-12 1989-04-25 American Telephone And Telegraph Company, At&T Bell Laboratories Method of file access in a distributed processing computer network
US4736369A (en) 1986-06-13 1988-04-05 International Business Machines Corp. Adaptive session-level pacing
US4780821A (en) 1986-07-29 1988-10-25 International Business Machines Corp. Method for multiple programs management within a network having a server computer and a plurality of remote computers
JPH076917B2 (ja) 1986-09-01 1995-01-30 富士写真フイルム株式会社 乾式分析方法における検量線の補正方法
US4914570A (en) 1986-09-15 1990-04-03 Counterpoint Computers, Inc. Process distribution and sharing system for multiple processor computer system
US4887204A (en) 1987-02-13 1989-12-12 International Business Machines Corporation System and method for accessing remote files in a distributed networking environment
US5202971A (en) 1987-02-13 1993-04-13 International Business Machines Corporation System for file and record locking between nodes in a distributed data processing environment maintaining one copy of each file lock
JPS63205747A (ja) 1987-02-13 1988-08-25 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 通信方法及びデータ処理システム
US4791566A (en) 1987-03-27 1988-12-13 Digital Equipment Corporation Terminal device session management protocol
JPS63256165A (ja) 1987-04-14 1988-10-24 Seiko Epson Corp 嫌気性液体の定量吐出方法
JPS6461148A (en) 1987-08-31 1989-03-08 Nec Corp Flow control system
US5008853A (en) 1987-12-02 1991-04-16 Xerox Corporation Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment
US4891785A (en) 1988-07-08 1990-01-02 Donohoo Theodore J Method for transferring data files between computers in a network response to generalized application program instructions
JPH0821969B2 (ja) 1988-09-13 1996-03-04 日本電気株式会社 伝送制御方法
JPH02101847A (ja) 1988-10-11 1990-04-13 Nec Corp 通信制御方式
US5124909A (en) 1988-10-31 1992-06-23 Hewlett-Packard Company Software program for providing cooperative processing between personal computers and a host computer
CA1323448C (en) 1989-02-24 1993-10-19 Terrence C. Miller Method and apparatus for translucent file system
US5109519A (en) 1989-03-28 1992-04-28 Wang Laboratories, Inc. Local computer participating in mail delivery system abstracts from directory of all eligible mail recipients only served by local computer
US5560008A (en) 1989-05-15 1996-09-24 International Business Machines Corporation Remote authentication and authorization in a distributed data processing system
US5113519A (en) 1989-05-15 1992-05-12 International Business Machines Corporation Maintenance of file attributes in a distributed data processing system
US5218696A (en) 1989-07-24 1993-06-08 International Business Machines Corporation Method for dynamically expanding and rapidly accessing file directories
US5265261A (en) 1989-08-14 1993-11-23 Microsoft Corporation Method and system for network communications using raw mode protocols
US5261051A (en) 1989-08-14 1993-11-09 Microsoft Corporation Method and system for open file caching in a networked computer system
JPH0374745A (ja) 1989-08-15 1991-03-29 Oki Electric Ind Co Ltd データ処理装置
JPH03245939A (ja) 1990-02-20 1991-11-01 Fudoo Kk 工具ホルダー把持装置
JP2575543B2 (ja) 1990-04-04 1997-01-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 同時アクセス管理方法
US5130986A (en) 1990-04-27 1992-07-14 At&T Bell Laboratories High speed transport protocol with two windows
JPH04172039A (ja) 1990-11-05 1992-06-19 Matsushita Electric Ind Co Ltd パケット通信装置
JPH0589048A (ja) 1991-09-25 1993-04-09 Nec Corp コマンド処理方式
JPH05143488A (ja) 1991-11-18 1993-06-11 Nippon Telegr & Teleph Corp <Ntt> 複数コマンドの転送方法
JPH0619771A (ja) 1992-04-20 1994-01-28 Internatl Business Mach Corp <Ibm> 異種のクライアントによる共用ファイルのファイル管理機構
KR0123773B1 (ko) 1992-06-27 1997-11-26 강진구 Pip 신호의 pop 신호로의 위치변환회로
JPH0675890A (ja) 1992-08-26 1994-03-18 Chugoku Nippon Denki Software Kk クライアント・サーバ間の要求データ応答データ授受方式
US5349642A (en) 1992-11-03 1994-09-20 Novell, Inc. Method and apparatus for authentication of client server communication
US5452447A (en) 1992-12-21 1995-09-19 Sun Microsystems, Inc. Method and apparatus for a caching file server
US5493728A (en) 1993-02-19 1996-02-20 Borland International, Inc. System and methods for optimized access in a multi-user environment
US5491752A (en) 1993-03-18 1996-02-13 Digital Equipment Corporation, Patent Law Group System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens
JP2513127B2 (ja) 1993-05-31 1996-07-03 日本電気株式会社 ホットスタンバイ高速切替えシステム
JPH0736760A (ja) 1993-07-20 1995-02-07 Nippon Telegr & Teleph Corp <Ntt> 装置多重化機能とモジュール間共用機能を併用した外部記憶装置の高信頼化方法
US5522042A (en) 1994-01-28 1996-05-28 Cabletron Systems, Inc. Distributed chassis agent for distributed network management
US5588117A (en) 1994-05-23 1996-12-24 Hewlett-Packard Company Sender-selective send/receive order processing on a per message basis
US5513314A (en) 1995-01-27 1996-04-30 Auspex Systems, Inc. Fault tolerant NFS server system and mirroring protocol
JPH08314784A (ja) 1995-05-19 1996-11-29 Toshiba Corp ファイル管理装置
US5628005A (en) 1995-06-07 1997-05-06 Microsoft Corporation System and method for providing opportunistic file access in a network environment
US5826027A (en) 1995-10-11 1998-10-20 Citrix Systems, Inc. Method for supporting an extensible and dynamically bindable protocol stack in a distrubited process system
US5764887A (en) 1995-12-11 1998-06-09 International Business Machines Corporation System and method for supporting distributed computing mechanisms in a local area network server environment
US5633899A (en) 1996-02-02 1997-05-27 Lsi Logic Corporation Phase locked loop for high speed data capture of a serial data stream
US6343313B1 (en) 1996-03-26 2002-01-29 Pixion, Inc. Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability
WO1997037461A1 (en) 1996-04-01 1997-10-09 Hewlett-Packard Company Transmitting messages over a network
RU2118051C1 (ru) 1996-04-30 1998-08-20 Лихачев Александр Геннадьевич Способ доступа к ресурсам "всемирной паутины" через шлюзы-представители
US6434120B1 (en) 1998-08-25 2002-08-13 Cisco Technology, Inc. Autosensing LMI protocols in frame relay networks
US5933602A (en) 1996-07-31 1999-08-03 Novell, Inc. System for selecting command packet and corresponding response packet from communication stream of packets by monitoring packets sent between nodes on network
US6208952B1 (en) 1996-10-24 2001-03-27 Microsoft Corporation Method and system for delayed registration of protocols
JPH10133971A (ja) 1996-10-25 1998-05-22 Nec Corp ファイル転送処理方式
US6125122A (en) 1997-01-21 2000-09-26 At&T Wireless Svcs. Inc. Dynamic protocol negotiation system
FR2759518B1 (fr) 1997-02-07 1999-04-23 France Telecom Procede et dispositif d'allocation de ressources dans un reseau numerique de transmission par paquets
US5987621A (en) 1997-04-25 1999-11-16 Emc Corporation Hardware and software failover services for a file server
US5931913A (en) 1997-05-07 1999-08-03 International Business Machines Corporation Methods, system and computer program products for establishing a session between a host and a terminal using a reduced protocol
JP3341637B2 (ja) 1997-06-20 2002-11-05 日本電気株式会社 トランザクション処理システムにおける端末状態管理方法及びコンピュータ読み取り可能な記録媒体
US6219799B1 (en) 1997-07-01 2001-04-17 Unisys Corporation Technique to support pseudo-names
US6092199A (en) 1997-07-07 2000-07-18 International Business Machines Corporation Dynamic creation of a user account in a client following authentication from a non-native server domain
JPH1155314A (ja) 1997-07-30 1999-02-26 Nippon Telegr & Teleph Corp <Ntt> データ転送制御方法
US6275953B1 (en) * 1997-09-26 2001-08-14 Emc Corporation Recovery from failure of a data processor in a network server
US6247139B1 (en) 1997-11-11 2001-06-12 Compaq Computer Corp. Filesystem failover in a single system image environment
US6085247A (en) 1998-06-08 2000-07-04 Microsoft Corporation Server operating system for supporting multiple client-server sessions and dynamic reconnection of users to previous sessions using different computers
US6131125A (en) 1997-11-14 2000-10-10 Kawasaki Lsi U.S.A., Inc. Plug-and-play data cable with protocol translation
US6516351B2 (en) 1997-12-05 2003-02-04 Network Appliance, Inc. Enforcing uniform file-locking for diverse file-locking protocols
US7010532B1 (en) 1997-12-31 2006-03-07 International Business Machines Corporation Low overhead methods and apparatus for shared access storage devices
KR100272567B1 (ko) 1997-12-31 2000-11-15 서평원 이동통신 네트워크를 이용한 이동 인터넷
US6243862B1 (en) 1998-01-23 2001-06-05 Unisys Corporation Methods and apparatus for testing components of a distributed transaction processing system
US6317844B1 (en) 1998-03-10 2001-11-13 Network Appliance, Inc. File server storage arrangement
JPH11265361A (ja) 1998-03-17 1999-09-28 Nec Corp 多重計算機システム、通信処理装置、トランザクション処理システム、トランザクション処理システム運転引き継ぎ方法、トランザクション処理システム運転引き継ぎプログラムを記録した記録媒体
JP3506920B2 (ja) 1998-08-25 2004-03-15 日本電信電話株式会社 全命令トレースデータの2次記憶装置への格納競合防止方法
EP1125182B1 (en) 1998-10-07 2003-01-02 Adobe Systems Incorporated Distributing access to a data item
US6230190B1 (en) 1998-10-09 2001-05-08 Openwave Systems Inc. Shared-everything file storage for clustered system
US6401123B1 (en) 1998-11-24 2002-06-04 International Busines Machines Corporation Systems, methods and computer program products for employing presumptive negotiation in a data communications protocol
US6347337B1 (en) 1999-01-08 2002-02-12 Intel Corporation Credit based flow control scheme over virtual interface architecture for system area networks
US6883000B1 (en) 1999-02-12 2005-04-19 Robert L. Gropper Business card and contact management system
US6453354B1 (en) 1999-03-03 2002-09-17 Emc Corporation File server system using connection-oriented protocol and sharing data sets among data movers
US6324581B1 (en) 1999-03-03 2001-11-27 Emc Corporation File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems
US20040139004A1 (en) 1999-04-08 2004-07-15 Aceinc Pty Ltd. Secure online commerce transactions
US6938096B1 (en) 1999-04-12 2005-08-30 Softricity, Inc. Method and system for remote networking using port proxying by detecting if the designated port on a client computer is blocked, then encapsulating the communications in a different format and redirecting to an open port
US7562129B1 (en) * 1999-04-15 2009-07-14 Alcatel-Lucent Canada Inc. Subscription management system for data communication network
US6349350B1 (en) 1999-05-04 2002-02-19 International Business Machines Corporation System, method, and program for handling failed connections in an input/output (I/O) system
US7437305B1 (en) 1999-05-11 2008-10-14 Christopher Angel Kantarjiev Scheduling delivery of products via the internet
US7318102B1 (en) 1999-05-24 2008-01-08 Hewlett-Packard Development Company, L.P. Reliable datagram
US6430691B1 (en) 1999-06-21 2002-08-06 Copytele, Inc. Stand-alone telecommunications security device
US6490666B1 (en) 1999-08-20 2002-12-03 Microsoft Corporation Buffering data in a hierarchical data storage environment
US6636242B2 (en) 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
JP2001077844A (ja) 1999-09-06 2001-03-23 Axle Linkage Labo Inc ネットワーク制御方法、サーバ装置、クライアント装置、遊技台装置用ネットワーク制御方法、ホールサーバコンピュータ装置、遊技台装置
JP2001094613A (ja) 1999-09-21 2001-04-06 Canon Inc 通信制御装置、方法および記録媒体
US6775707B1 (en) 1999-10-15 2004-08-10 Fisher-Rosemount Systems, Inc. Deferred acknowledgment communications and alarm management
US6910082B1 (en) 1999-11-18 2005-06-21 International Business Machines Corporation Method, system and program products for reducing data movement within a computing environment by bypassing copying data between file system and non-file system buffers in a server
US6658476B1 (en) 1999-11-29 2003-12-02 Microsoft Corporation Client-server protocol support list for standard request-response protocols
US7050984B1 (en) 1999-12-22 2006-05-23 Ge Medical Systems, Inc. Integrated interactive service to a plurality of medical diagnostic systems
US7111060B2 (en) 2000-03-14 2006-09-19 Aep Networks, Inc. Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network-connected web browser
US6883015B1 (en) 2000-03-30 2005-04-19 Cisco Technology, Inc. Apparatus and method for providing server state and attribute management for multiple-threaded voice enabled web applications
US6993587B1 (en) 2000-04-07 2006-01-31 Network Appliance Inc. Method and apparatus for election of group leaders in a distributed network
WO2001077844A1 (fr) 2000-04-10 2001-10-18 Fujitsu Limited Systeme de traitement d'informations et serveur associe
US7225244B2 (en) 2000-05-20 2007-05-29 Ciena Corporation Common command interface
US6452903B1 (en) 2000-05-31 2002-09-17 Fujitsu Network Communications, Inc. Network switch supporting rate-based and credit-based flow control mechanisms on a link-by-link basis
US6961858B2 (en) 2000-06-16 2005-11-01 Entriq, Inc. Method and system to secure content for distribution via a network
EP1170975B1 (en) 2000-07-05 2004-05-19 Roke Manor Research Limited Method of operating a packet reassembly buffer and network router
US7693976B2 (en) 2000-07-11 2010-04-06 Ciena Corporation Granular management of network resources
US6732289B1 (en) 2000-08-31 2004-05-04 Sun Microsystems, Inc. Fault tolerant data storage system
US6349250B1 (en) 2000-10-26 2002-02-19 Detroit Diesel Corporation Clear historic data from a vehicle data recorder
US20020062379A1 (en) 2000-11-06 2002-05-23 Widegren Ina B. Method and apparatus for coordinating quality of service requirements for media flows in a multimedia session with IP bearer services
JP2002183000A (ja) 2000-12-11 2002-06-28 Hitachi Ltd ネットワークを介するデータ参照方法及びそのシステム
US20020073211A1 (en) * 2000-12-12 2002-06-13 Raymond Lin System and method for securely communicating between application servers and webservers
US6862692B2 (en) * 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
KR100750735B1 (ko) 2001-02-03 2007-08-22 삼성전자주식회사 홈네트워크내의 기기 제어장치 및 방법 및 이를 적용한홈네트워크 시스템
US7493391B2 (en) * 2001-02-12 2009-02-17 International Business Machines Corporation System for automated session resource clean-up by determining whether server resources have been held by client longer than preset thresholds
US7055036B2 (en) 2001-04-06 2006-05-30 Mcafee, Inc. System and method to verify trusted status of peer in a peer-to-peer network environment
US8051212B2 (en) 2001-04-11 2011-11-01 Mellanox Technologies Ltd. Network interface adapter with shared data send resources
US20030093678A1 (en) 2001-04-23 2003-05-15 Bowe John J. Server-side digital signature system
JP2002328828A (ja) 2001-04-27 2002-11-15 Fujitsu Ltd ストレージサービス方法、ストレージサービスユーザ及びストレージサービスプロバイダ
JP3797236B2 (ja) 2001-04-27 2006-07-12 日本ビクター株式会社 記録再生装置および記録再生方法
US6640226B1 (en) 2001-06-19 2003-10-28 Informatica Corporation Ranking query optimization in analytic applications
US7287079B2 (en) 2001-06-29 2007-10-23 Qualcomm Incorporated Implementing and coordinating configuration of protocol processes
JP4249915B2 (ja) 2001-07-13 2009-04-08 株式会社バンダイ 配信システム、そのサーバ及び収容装置と、携帯端末システムと、プログラム
US7409420B2 (en) 2001-07-16 2008-08-05 Bea Systems, Inc. Method and apparatus for session replication and failover
US6944785B2 (en) * 2001-07-23 2005-09-13 Network Appliance, Inc. High-availability cluster virtual server system
US7870258B2 (en) * 2001-08-08 2011-01-11 Microsoft Corporation Seamless fail-over support for virtual interface architecture (VIA) or the like
JP2003069610A (ja) 2001-08-22 2003-03-07 Canon Inc 通信装置、その制御方法、通信システム、及び制御プログラム
JP3663627B2 (ja) 2001-10-18 2005-06-22 ソニー株式会社 通信処理装置、および通信処理方法、並びにコンピュータ・プログラム
US7136982B2 (en) 2001-11-09 2006-11-14 Danger, Inc. Apparatus and method for allocating memory blocks
CA2469513C (en) * 2001-12-07 2007-08-21 Research In Motion Limited System and method of managing information distribution to mobile stations
US7394764B2 (en) 2001-12-14 2008-07-01 Sasken Communication Technologies Limited Technique for improving transmission control protocol performance in lossy networks
US7313816B2 (en) 2001-12-17 2007-12-25 One Touch Systems, Inc. Method and system for authenticating a user in a web-based environment
JP3969089B2 (ja) 2001-12-25 2007-08-29 株式会社日立製作所 階層構成サーバシステム
US7111035B2 (en) 2001-12-26 2006-09-19 Hewlett-Packard Development Company, L.P. Fault tolerance associations for IP transport protocols
US20030140129A1 (en) 2002-01-24 2003-07-24 Noam Livnat Installing communication protocol in a handheld device
US20030154398A1 (en) 2002-02-08 2003-08-14 Eaton Eric Thomas System for providing continuity between session clients and method therefor
US6829606B2 (en) 2002-02-14 2004-12-07 Infoglide Software Corporation Similarity search engine for use with relational databases
US7178050B2 (en) 2002-02-22 2007-02-13 Bea Systems, Inc. System for highly available transaction recovery for transaction processing systems
US7984157B2 (en) * 2002-02-26 2011-07-19 Citrix Systems, Inc. Persistent and reliable session securely traversing network components using an encapsulating protocol
US7388866B2 (en) 2002-03-07 2008-06-17 Broadcom Corporation System and method for expediting upper layer protocol (ULP) connection negotiations
US7668306B2 (en) 2002-03-08 2010-02-23 Intel Corporation Method and apparatus for connecting packet telephony calls between secure and non-secure networks
JP2003281091A (ja) 2002-03-25 2003-10-03 Fujitsu Ltd 同時受付制御システム
JP4315696B2 (ja) 2002-03-29 2009-08-19 富士通株式会社 ホスト端末エミュレーションプログラム、中継用プログラムおよびホスト端末エミュレーション方法
CA2385344A1 (en) 2002-05-08 2003-11-08 Bell Globemedia Inc. Data transfer method and apparatus
JP4000905B2 (ja) 2002-05-22 2007-10-31 ソニー株式会社 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム
JP2003337717A (ja) 2002-05-22 2003-11-28 Nec Corp オンライントランザクション処理の障害時復旧同期システム
AU2002314310A1 (en) * 2002-06-10 2003-12-22 Caplin Systems Limited Resource management
US7290141B2 (en) 2002-06-27 2007-10-30 Nokia, Inc. Authentication of remotely originating network messages
US20040003210A1 (en) 2002-06-27 2004-01-01 International Business Machines Corporation Method, system, and computer program product to generate test instruction streams while guaranteeing loop termination
CN1666188A (zh) 2002-07-01 2005-09-07 株式会社东芝 无缝系统和记录介质以及计算机系统的处理继续方法
CA2393502A1 (en) 2002-07-15 2004-01-15 Mark J. Frazer System and method for reliable transport in a computer network
US20040019660A1 (en) 2002-07-24 2004-01-29 Sandhya E. Lock holding multi-threaded processes for distibuted data systems
US6829473B2 (en) 2002-07-25 2004-12-07 Utstarcom, Inc. Roaming and hand-off support for prepaid billing for wireless data networks
WO2004012061A2 (en) 2002-07-29 2004-02-05 Eternal Systems, Inc. Consistent message ordering for semi-active and passive replication
US7386855B2 (en) 2002-08-12 2008-06-10 Ntt Docomo, Inc. Application mobility service
US20040032876A1 (en) 2002-08-19 2004-02-19 Ajay Garg Selection of transmission channels
JP3846384B2 (ja) 2002-08-28 2006-11-15 ブラザー工業株式会社 端末装置、接続制御方法、接続制御用プログラム及び記録媒体
US6957367B2 (en) 2002-08-30 2005-10-18 Hewlett-Packard Development Company L.P. System and method for controlling activity of temporary files in a computer system
JP3938002B2 (ja) 2002-10-18 2007-06-27 キヤノン株式会社 印刷システムの制御方法
US7109430B2 (en) 2002-11-05 2006-09-19 Emrise Corporation Low profile rotary switch with detent in the bushing
US7386889B2 (en) 2002-11-18 2008-06-10 Trusted Network Technologies, Inc. System and method for intrusion prevention in a communications network
US7421502B2 (en) 2002-12-06 2008-09-02 International Business Machines Corporation Method and system for storage-aware flow resource management
US7475142B2 (en) * 2002-12-06 2009-01-06 Cisco Technology, Inc. CIFS for scalable NAS architecture
US7664991B1 (en) 2002-12-17 2010-02-16 Symantec Operating Corporation System and method for distributed file system I/O recovery
US20040153700A1 (en) 2003-01-02 2004-08-05 Nixon Mark J. Redundant application stations for process control systems
US7290051B2 (en) 2003-01-09 2007-10-30 Sun Microsystems, Inc. Method and apparatus for hardware implementation independent verification of network layers
US7526658B1 (en) 2003-01-24 2009-04-28 Nortel Networks Limited Scalable, distributed method and apparatus for transforming packets to enable secure communication between two stations
JP3999135B2 (ja) 2003-01-24 2007-10-31 株式会社エヌ・ティ・ティ・ドコモ 通信システム、データ送信方法、通信装置、プログラムおよび記録媒体
US7151939B2 (en) 2003-02-18 2006-12-19 Qualcomm Incorporated Method, apparatus, and machine-readable medium for providing indication of location service availability and the quality of available location services
US7072807B2 (en) * 2003-03-06 2006-07-04 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US7490152B2 (en) 2003-04-11 2009-02-10 Alcatel-Lucent Usa Inc. Version caching mechanism
US7339885B2 (en) 2003-06-05 2008-03-04 International Business Machines Corporation Method and apparatus for customizable surveillance of network interfaces
US20040255202A1 (en) 2003-06-13 2004-12-16 Alcatel Intelligent fault recovery in a line card with control plane and data plane separation
US7363629B2 (en) 2003-06-19 2008-04-22 International Business Machines Corporation Method, system, and program for remote resource management
US7698115B2 (en) 2003-06-30 2010-04-13 Microsoft Corporation System and method for dynamically allocating resources in a client/server environment
US7526640B2 (en) 2003-06-30 2009-04-28 Microsoft Corporation System and method for automatic negotiation of a security protocol
US7693998B2 (en) 2003-06-30 2010-04-06 Microsoft Corporation System and method for message-based scalable data transport
US20050015511A1 (en) 2003-07-02 2005-01-20 Nec Laboratories America, Inc. Accelerated large data distribution in overlay networks
JP4229774B2 (ja) 2003-07-11 2009-02-25 日本電信電話株式会社 セッション制御プログラムと通信端末装置
US7296264B2 (en) 2003-07-18 2007-11-13 Bea Systems, Inc. System and method for performing code completion in an integrated development environment
CN100394401C (zh) 2003-07-24 2008-06-11 松下电器产业株式会社 文件管理方法和信息处理设备
US8028078B2 (en) 2003-08-07 2011-09-27 Teamon Systems, Inc. Communications system including protocol interface device providing enhanced operating protocol selection features and related methods
CN100547583C (zh) 2003-08-14 2009-10-07 甲骨文国际公司 数据库的自动和动态提供的方法
US7870268B2 (en) 2003-09-15 2011-01-11 Intel Corporation Method, system, and program for managing data transmission through a network
US20050091226A1 (en) 2003-10-23 2005-04-28 Yun Lin Persistent caching directory level support
US7539722B2 (en) * 2003-10-24 2009-05-26 Microsoft Corporation Method and system for accessing a file
US7231397B2 (en) 2003-10-24 2007-06-12 Microsoft Corporation Method and system for transacted file operations over a network
US7673066B2 (en) 2003-11-07 2010-03-02 Sony Corporation File transfer protocol for mobile computer
EP1680746B1 (en) 2003-11-07 2009-03-25 Sony Electronics Inc. File transfer protocol for mobile computer
JP4836432B2 (ja) 2003-11-17 2011-12-14 株式会社リコー 文書管理システム、文書管理装置、文書管理方法、文書管理プログラム及び記録媒体
US7188273B2 (en) 2003-11-24 2007-03-06 Tsx Inc. System and method for failover
US20050111030A1 (en) 2003-11-25 2005-05-26 Berkema Alan C. Hard copy imaging systems, print server systems, and print server connectivity methods
FI20031779A0 (fi) 2003-12-05 2003-12-05 Nokia Corp Menetelmä, järjestelmä ja lähetettävän puolen yhteyskäytäntöyksikkö datapakettien lähettämiseksi kuittaamattoman toimintamuodon palveluissa
US7730489B1 (en) 2003-12-10 2010-06-01 Oracle America, Inc. Horizontally scalable and reliable distributed transaction management in a clustered application server environment
US7243284B2 (en) 2003-12-11 2007-07-10 International Business Machines Corporation Limiting number of retransmission attempts for data transfer via network interface controller
US7383483B2 (en) 2003-12-11 2008-06-03 International Business Machines Corporation Data transfer error checking
US7177941B2 (en) 2003-12-11 2007-02-13 International Business Machines Corporation Increasing TCP re-transmission process speed
US7478381B2 (en) 2003-12-15 2009-01-13 Microsoft Corporation Managing software updates and a software distribution service
US20050177635A1 (en) 2003-12-18 2005-08-11 Roland Schmidt System and method for allocating server resources
US7493394B2 (en) 2003-12-31 2009-02-17 Cisco Technology, Inc. Dynamic timeout in a client-server system
US7698361B2 (en) 2003-12-31 2010-04-13 Microsoft Corporation Lightweight input/output protocol
US7383463B2 (en) 2004-02-04 2008-06-03 Emc Corporation Internet protocol based disaster recovery of a server
DE602005009336D1 (de) 2004-03-17 2008-10-09 Koninkl Philips Electronics Nv Verfahren und einrichtung zum scannen eines scheibenförmigen informationsspeichermediums
US7444536B1 (en) 2004-04-16 2008-10-28 Sun Microsystems, Inc. RMI-IIOP request failover mechanism
US7627627B2 (en) 2004-04-30 2009-12-01 Hewlett-Packard Development Company, L.P. Controlling command message flow in a network
US20050246803A1 (en) 2004-04-30 2005-11-03 Spencer Andrew M Peripheral device for processing data from a computing device
JP2005321953A (ja) 2004-05-07 2005-11-17 Hitachi Ltd ストレージ制御装置、その動作プログラム、及びアクセス制御方法
JP2005322016A (ja) 2004-05-10 2005-11-17 Yokogawa Electric Corp サーバ装置および情報配信方法
US7380080B2 (en) 2004-05-17 2008-05-27 Hewlett-Packard Development Company, L.P. Calculating unneeded data storage credits for a data transmission to a pair of storage devices
US7487353B2 (en) 2004-05-20 2009-02-03 International Business Machines Corporation System, method and program for protecting communication
US7330910B2 (en) 2004-05-20 2008-02-12 International Business Machines Corporation Fencing of resources allocated to non-cooperative client computers
US7434087B1 (en) 2004-05-21 2008-10-07 Sun Microsystems, Inc. Graceful failover using augmented stubs
US7080173B2 (en) 2004-05-27 2006-07-18 Microsoft Corporation Reducing information reception delays
US7620687B2 (en) * 2004-06-25 2009-11-17 Telcordia Technologies, Inc. Distributed request routing
US20060059118A1 (en) 2004-08-10 2006-03-16 Byrd Stephen A Apparatus, system, and method for associating resources using a behavior based algorithm
US8023417B2 (en) 2004-08-30 2011-09-20 International Business Machines Corporation Failover mechanisms in RDMA operations
US7418712B2 (en) 2004-08-31 2008-08-26 Microsoft Corporation Method and system to support multiple-protocol processing within worker processes
US7418709B2 (en) 2004-08-31 2008-08-26 Microsoft Corporation URL namespace to support multiple-protocol processing within worker processes
US7428655B2 (en) * 2004-09-08 2008-09-23 Hewlett-Packard Development Company, L.P. Smart card for high-availability clustering
KR20060025100A (ko) 2004-09-15 2006-03-20 삼성전자주식회사 다국어를 지원하는 메타 데이터를 기록한 정보저장매체 및메타 데이터 처리방법
US20060067244A1 (en) 2004-09-30 2006-03-30 Microsoft Corporation Registration identifier reuse
US7451347B2 (en) * 2004-10-08 2008-11-11 Microsoft Corporation Failover scopes for nodes of a computer cluster
JP4398843B2 (ja) * 2004-10-13 2010-01-13 日本放送協会 配信サーバ及び配信プログラム
CN1767472A (zh) 2004-10-27 2006-05-03 乐金电子(天津)电器有限公司 家庭网络系统
US8156049B2 (en) 2004-11-04 2012-04-10 International Business Machines Corporation Universal DRM support for devices
US7457722B1 (en) 2004-11-17 2008-11-25 Symantec Operating Corporation Correlation of application instance life cycle events in performance monitoring
JP4451293B2 (ja) 2004-12-10 2010-04-14 株式会社日立製作所 名前空間を共有するクラスタ構成のネットワークストレージシステム及びその制御方法
US8522293B2 (en) 2004-12-15 2013-08-27 Time Warner Cable Enterprises Llc Method and apparatus for high bandwidth data transmission in content-based networks
US8515490B2 (en) 2004-12-30 2013-08-20 Alcatel Lucent Method and apparatus for providing same session switchover between end-user terminals
EP1847087A1 (en) 2005-02-08 2007-10-24 Telefonaktiebolaget LM Ericsson (publ) On-demand multi-channel streaming session over packet-switched networks
US7685312B1 (en) * 2005-02-10 2010-03-23 Sun Microsystems, Inc. Resource location by address space allocation
US7743245B2 (en) 2005-03-10 2010-06-22 Intel Corporation Security protocols on incompatible transports
JP4516458B2 (ja) 2005-03-18 2010-08-04 株式会社日立製作所 フェイルオーバークラスタシステム及びフェイルオーバー方法
US7453879B1 (en) 2005-04-04 2008-11-18 Sun Microsystems, Inc. Method and apparatus for determining the landing zone of a TCP packet
US20060281525A1 (en) 2005-05-17 2006-12-14 Milo Borissov Slot type game with player input opportunity
US8332526B2 (en) * 2005-05-25 2012-12-11 Microsoft Corporation Data communication protocol including negotiation and command compounding
JP2006333433A (ja) 2005-05-25 2006-12-07 Microsoft Corp データ通信プロトコル
EP1727055B1 (en) 2005-05-25 2016-09-07 Microsoft Technology Licensing, LLC Data communication coordination with sequence numbers
JP2007058506A (ja) 2005-08-24 2007-03-08 Ricoh Co Ltd 文書管理サーバ、文書管理システム、及び、文書管理プログラムとその記録媒体
GB0519246D0 (en) * 2005-09-21 2005-10-26 Ibm A method, apparatus and computer program for handling web server failure
RU2313824C2 (ru) 2005-09-26 2007-12-27 Михаил Васильевич Беляев Информационная система клиент - сервер и способ предоставления графического пользовательского интерфейса
US20070150602A1 (en) * 2005-10-04 2007-06-28 Peter Yared Distributed and Replicated Sessions on Computing Grids
US7962129B2 (en) 2005-10-24 2011-06-14 At&T Intellectual Property I, L.P. Method and system of creating customized ringtones
US8108548B2 (en) * 2005-12-22 2012-01-31 Microsoft Corporation Methodology and system for file replication based on a peergroup
US8051179B2 (en) * 2006-02-01 2011-11-01 Oracle America, Inc. Distributed session failover
US8024439B2 (en) * 2006-03-17 2011-09-20 Microsoft Corporation Server session management application program interface and schema
US7526668B2 (en) 2006-06-08 2009-04-28 Hitachi, Ltd. Failover method of remotely-mirrored clustered file servers
US7685227B2 (en) * 2006-11-10 2010-03-23 Gerber Robert H Message forwarding backup manager in a distributed server system
US7774544B1 (en) 2006-11-15 2010-08-10 Netapp, Inc. Reliable disk ownership changes
US7743039B2 (en) * 2006-12-11 2010-06-22 Simdesk Technologies, Inc. File operations with multiple level file locking techniques
KR20080057483A (ko) * 2006-12-20 2008-06-25 삼성전자주식회사 서버, 클라이언트, 로드 밸런싱 시스템 및 그의 로드밸런싱 방법
US7809828B2 (en) 2007-04-11 2010-10-05 International Business Machines Corporation Method for maintaining state consistency among multiple state-driven file system entities when entities become disconnected
WO2008130983A1 (en) 2007-04-16 2008-10-30 Attune Systems, Inc. File aggregation in a switched file system
US8271669B2 (en) 2007-05-30 2012-09-18 Broadcom Corporation Method and system for extended steering tags (STAGS) to minimize memory bandwidth for content delivery servers
US8073922B2 (en) * 2007-07-27 2011-12-06 Twinstrata, Inc System and method for remote asynchronous data replication
US8239511B2 (en) 2007-09-28 2012-08-07 Xcerion Aktiebolag Network operating system
EP2066101B1 (en) 2007-11-28 2012-10-17 Alcatel Lucent System and method for an improved high availability component implementation
US20090158221A1 (en) 2007-12-17 2009-06-18 Nokia Corporation Device feature manipulation based on presented content
CN101217483A (zh) * 2008-01-21 2008-07-09 中兴通讯股份有限公司 用于实现集群服务器内负载分担代理的方法
US7930427B2 (en) * 2008-03-03 2011-04-19 Microsoft Corporation Client-side load balancing
US8458298B2 (en) * 2008-03-03 2013-06-04 Microsoft Corporation Failover in an internet location coordinate enhanced domain name system
JP5054618B2 (ja) * 2008-06-10 2012-10-24 京セラドキュメントソリューションズ株式会社 ネットワークファイル処理システム
US7840730B2 (en) * 2008-06-27 2010-11-23 Microsoft Corporation Cluster shared volumes
US8700760B2 (en) * 2008-08-18 2014-04-15 Ge Fanuc Intelligent Platforms, Inc. Method and systems for redundant server automatic failover
US8275815B2 (en) * 2008-08-25 2012-09-25 International Business Machines Corporation Transactional processing for clustered file systems
US8271996B1 (en) * 2008-09-29 2012-09-18 Emc Corporation Event queues
US8185566B2 (en) 2009-01-15 2012-05-22 Microsoft Corporation Client-based caching of remote files
CN101594320B (zh) 2009-06-23 2012-05-09 中兴通讯股份有限公司 一种基于snmp协议的消息交互方法
US9749387B2 (en) 2009-08-13 2017-08-29 Sap Se Transparently stateful execution of stateless applications
US8751533B1 (en) * 2009-11-25 2014-06-10 Netapp, Inc. Method and system for transparently migrating storage objects between nodes in a clustered storage system
JP2011119794A (ja) * 2009-11-30 2011-06-16 Toshiba Corp 電子機器及び通信制御方法
US20110280247A1 (en) * 2010-05-17 2011-11-17 Google Inc. System and method for reducing latency via multiple network connections
US8806030B2 (en) 2010-12-06 2014-08-12 Microsoft Corporation Multichannel connections in file system sessions
US8631277B2 (en) 2010-12-10 2014-01-14 Microsoft Corporation Providing transparent failover in a file system
US9331955B2 (en) 2011-06-29 2016-05-03 Microsoft Technology Licensing, Llc Transporting operations of arbitrary size over remote direct memory access
US8856582B2 (en) * 2011-06-30 2014-10-07 Microsoft Corporation Transparent failover
US8788579B2 (en) 2011-09-09 2014-07-22 Microsoft Corporation Clustered client failover
US20130067095A1 (en) 2011-09-09 2013-03-14 Microsoft Corporation Smb2 scaleout
US9896870B2 (en) 2012-03-05 2018-02-20 Gator Kennels Llc Enclosure having ribbed stanchions
US9888068B2 (en) * 2013-04-06 2018-02-06 Citrix Systems, Inc. Systems and methods for maintaining session persistence in a cluster system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163369A (ja) * 1998-11-30 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> 処理結果分散管理方法及びシステム及び処理結果分散管理サーバ装置及び処理結果分散管理プログラムを格納した記憶媒体
JP2010009090A (ja) * 2008-06-24 2010-01-14 Fujitsu Ltd ファイルサーバのクラスタノード制御プログラム,クラスタノード制御方法及びクラスタノード制御装置

Also Published As

Publication number Publication date
MX2014002782A (es) 2014-06-05
EP2754063A2 (en) 2014-07-16
US10630781B2 (en) 2020-04-21
US20200204633A1 (en) 2020-06-25
JP6334643B2 (ja) 2018-05-30
JP2014532210A (ja) 2014-12-04
US11570255B2 (en) 2023-01-31
EP2754063A4 (en) 2015-08-05
AU2012304550A1 (en) 2014-03-20
WO2013036698A3 (en) 2013-05-10
RU2014108994A (ru) 2015-09-20
KR20140064844A (ko) 2014-05-28
BR112014005315A2 (pt) 2017-03-28
CA2847735A1 (en) 2013-03-14
US20150365482A1 (en) 2015-12-17
CN105743996A (zh) 2016-07-06
CN102946405A (zh) 2013-02-27
EP3206378A1 (en) 2017-08-16
RU2613040C2 (ru) 2017-03-14
US20130067095A1 (en) 2013-03-14
AU2012304550B2 (en) 2017-02-02
EP3206378B1 (en) 2019-12-25
WO2013036698A2 (en) 2013-03-14
KR101947851B1 (ko) 2019-02-13

Similar Documents

Publication Publication Date Title
JP6334643B2 (ja) Smb2スケールアウト
US11687555B2 (en) Conditional master election in distributed databases
US9069835B2 (en) Organizing data in a distributed storage system
JP5841177B2 (ja) マルチサーバ予約システムにおける同期化メカニズムのための方法及びシステム
KR101923245B1 (ko) 투명한 장애 극복 기법
US9749445B2 (en) System and method for updating service information for across-domain messaging in a transactional middleware machine environment
US20070112812A1 (en) System and method for writing data to a directory
US8572201B2 (en) System and method for providing a directory service network
US9390156B2 (en) Distributed directory environment using clustered LDAP servers
US8478898B2 (en) System and method for routing directory service operations in a directory service network
US8589479B2 (en) Distributed registry for device discovery using quorum consensus protocol
US8230086B2 (en) Hidden group membership in clustered computer system
US11431553B2 (en) Remote control planes with automated failover
US9922031B2 (en) System and method for efficient directory performance using non-persistent storage
US11652746B1 (en) Resilient consistent hashing for a distributed cache
US20220345445A1 (en) Generation and use of micro-pools to assign an ip address to a requesting computing device
CN115934006A (zh) Io接入点和数据处理任务管理方法、装置、设备和介质
WO2007056769A2 (en) System and method for providing a directory service network

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170928

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20171228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180316

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180426

R150 Certificate of patent or registration of utility model

Ref document number: 6334643

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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