CN103636165A - 透明故障转移 - Google Patents

透明故障转移 Download PDF

Info

Publication number
CN103636165A
CN103636165A CN201280032570.8A CN201280032570A CN103636165A CN 103636165 A CN103636165 A CN 103636165A CN 201280032570 A CN201280032570 A CN 201280032570A CN 103636165 A CN103636165 A CN 103636165A
Authority
CN
China
Prior art keywords
file
server
client
request
access
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
CN201280032570.8A
Other languages
English (en)
Other versions
CN103636165B (zh
Inventor
M·乔治
D·M·克鲁斯
J·T·平克顿
R·C·巴特帕蒂
T·乔利
P·R·斯旺
M·商
D·E·洛文格
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 Corp
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 Corp filed Critical Microsoft Corp
Publication of CN103636165A publication Critical patent/CN103636165A/zh
Application granted granted Critical
Publication of CN103636165B publication Critical patent/CN103636165B/zh
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/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
    • 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
    • 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/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
    • 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/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Hardware Redundancy (AREA)
  • Retry When Errors Occur (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

描述了针对用来跨网络故障和服务器故障转移保留状态的持久句柄的实施例。在已经建立了与文件服务器的会话之后持久句柄被客户端请求。对持久句柄的请求包括由客户端生成的句柄标识符。服务器使用句柄标识符来关联状态信息。当存在网络故障或服务器故障转移并且重新连接到客户端时,句柄标识符被用来标识如果被重放将在服务器上创建不一致状态的经重放的请求。经重放的请求随后被适当地处理。

Description

透明故障转移
背景
服务器群集常用于向客户端提供故障转移和高信息可用性。服务器群集的使用允许到客户端的透明故障转移,从而任何服务器故障对在客户端上请求服务器操作的应用是透明的。在共享文件系统中,服务器群集可能对向网络中的数个客户端提供对文件信息的访问是有用的。然而,当该共享文件系统利用诸如服务器消息块(SMB)协议之类的状态协议时可产生问题。当服务器群集中的服务器有故障时,一些状态协议不提供将客户端状态从有故障的服务器转移到替换服务器的途径。同样,提供来存储某些状态信息的文件访问协议不提供来供不同的组件存储不同的状态信息。
各实施例正是对于这些和其它考虑事项而作出的。而且,尽管讨论了相对具体的问题,但是应当理解,各实施例不应被限于解决本背景技术中所标识的具体问题。
概述
提供本概述来以简化形式介绍一些概念,这些概念将在以下详细描述部分中进一步描述。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
所描述的是利用共享文件系统中持久句柄的实施例。持久句柄用来跨网络故障和服务器故障转移保留状态。在已经建立了与文件服务器的会话之后,持久句柄被客户端请求。对持久句柄的请求包括由客户端生成的句柄标识符。服务器使用句柄标识符来关联状态信息。当存在网络故障或服务器故障转移并且重新连接到客户端时,句柄标识符被用来标识如果被重放将在服务器上创建不一致状态的经重放的请求。这些经重放的请求随后被适当地处理。
实施例可被实现为计算机进程、计算系统、或者诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并编码了用于执行计算机进程的指令的计算机程序的计算机存储介质。计算机程序产品还可以是计算系统可读并编码了用于执行计算机过程的指令的计算机程序的载体上的传播信号。
附图简述
参考以下附图描述非限制性和非穷尽的实施例。
图1示出了可用于实现各实施例的系统。
图2示出了根据一些实施例的客户端和文件服务器群集使用文件访问协议来通信的框图。
图3示出了根据一些实施例的用于提供对服务器故障转移的重放防御的操作流程。
图4示出了根据一些实施例的用于维持文件信息的一致可用性的操作流程。
图5示出了适于实现各实施例的计算环境的框图。
详细描述
以下将参考形成本发明一部分并示出各具体示例性实施例的附图更详尽地描述各个实施例。然而实施例被实现为许多不同的形式并且不应将其解释为限制在此处描述的实施例;相反地,提供这些实施例以使得本公开变得透彻和完整,并且将这些实施例的范围完全传达给本领域普通技术人员。各实施例可按照方法、系统或设备来实施。因此,这些实施例可采用硬件实现形式、全软件实现形式或者结合软件和硬件方面的实现形式。因此,以下详细描述并非是局限性的。
图1示出了可用于实现一些实施例的系统100。系统100包括客户端102和104以及服务器群集106。客户端102和104通过网络108与服务器群集106通信。服务器群集106存储被客户端102和104上的应用访问的信息。客户端102和104建立与群集106的会话以访问群集106上的信息。尽管在图1中,仅有客户端102和104被示为与群集106通信,但是在其他实施例中,可以存在两个以上客户端访问来自服务器群集106的信息。
如图1所示,服务器群集106包括服务器106A、106B和106C,这些服务器为存储在群集106上的信息既提供高可用性又提供冗余性。在实施例中,群集106具有由客户端102和104访问的文件系统。尽管图1中示出了3个服务器,但是在其他实施例中,群集106可以包括3个以上服务器或3个以下服务器。在实施例中,客户端102和104上的应用请求来自文件系统的文件信息,并且对应用是透明地从服务器群集106上的共享文件系统检索这些文件信息。
根据一个实施例,服务器106A、106B和106C被用来提供存储在群集106上的文件系统的一致可用性。这是通过利用客户端102和104以及服务器106A、106B和106C上的组件来存储以下状态信息而完成的:即在存在网络108的故障或服务器106A、106B和106C之一的故障的情况下,可以被用来在客户端102和104以及群集106之间重建会话的状态信息。如以下更加详细描述的,状态信息的存储允许客户端102和104具有一致文件访问和对在客户端102和104上运行的各应用透明的故障转移。
在实施例中,群集106的各服务器(例如106A、106B和106C)各自向各客户端提供对文件信息的访问,并且群集106的各服务器被配置成向各客户端提供文件信息的一致可用性。为了示出一个实施例,客户端102发送建立与群集106的服务器的会话的请求。例如,客户端102可以建立与服务器106A的会话以访问存储在服务器群集106上的共享文件系统。作为建立会话的过程的一部分,客户端102可以利用文件访问协议。在实施例中,文件访问协议是一个版本的网络文件系统(NFS)或服务器消息块(SMB)协议。
会话的建立可以涉及对在客户端102和服务器106A之间传输的多个协商请求和响应的交换。在SMB协议的各版本中,存在专门定义的协商分组,该专门定义的协商分组被用来协商会话期间将要使用的协议的确切版本以及就客户端(例如,102)和服务器(例如,106A)二者的能力对彼此作广告。在一个实施例中,协商分组可以包括服务器106A是群集(例如,群集106)一部分的指示。这允许客户端知道服务器106A能够提供一致可用性,换言之,透明故障转移能力。
继续以上的示例,在建立会话之后,客户端102可将根据文件访问协议格式化的消息发送到服务器106A,以供持久句柄访问文件系统中的文件。在实施例中,作为服务器106A是群集106一部分的结果,请求持久句柄指示客户端想要利用可用的透明故障转移能力。在实施例中,请求包括是全局唯一标识符的句柄标识符。
服务器106A将接收对持久句柄的请求并且为了与客户端102的会话而存储句柄标识符和状态信息。存储状态信息可以仅仅涉及文件服务器将句柄标识符持久保存到存储以及存储与该句柄标识符相关联的状态信息。如在以下更加详细描述的,在一些实施例中,可以使用诸如过滤器的分开的组件来存储不同类型的状态信息。在又一些实施例中,有关持久句柄的信息被在各节点间进行复制并且不被存储到文件系统上的持久存储。在还一些实施例中,有关持久句柄的信息既被在各节点间进行复制又被存储到文件系统上的持久存储。
服务器106A将授权持久句柄以及对文件信息的访问的响应发送到客户端102。客户端102随后继续发送对文件执行各种操作的其他请求。例如,客户端102可以发送读取文件信息的请求、写文件的请求、枚举文件的属性的请求、关闭文件的请求以及请求文件上的各种锁的请求。客户端所请求的各种操作中的每一种操作可以导致更新状态信息以确保如果客户端被断开连接,客户端的状态可以被恢复。此更新可以涉及保存与句柄标识符相关联的额外状态信息。
在某一时刻,客户端102可以从服务器断开连接。例如,该断开连接可能是因为例如网络故障或中断。或者,该断开连接可能是因为服务器106A的故障。在这些涉及网络故障的实施例中,客户端102可以检测断开连接已经发生并且等待网络变得可用以与服务器106A重新连接。在其他实施例中,一旦客户端102检测到故障它就向群集106发送重新连接的请求,群集106将提供故障转移服务器来处理重新连接请求。
不论那种情况,客户端102发送重新连接的请求。该请求将包括句柄标识符。服务器106A或者替换的服务器(106B或106C)将基于句柄标识符检索状态信息,使用该状态信息重新建立之前的状态,以及向客户端发送指示重新连接成功的响应。在一些实施例中,如果之前的状态信息被丢失或者以其他方式不可用,重新连接是不可能的。在这些情形中,服务器可以把重新连接请求作为建立会话的请求来对待并且相应地作出响应。
在重新建立会话之后,客户端102发送新的文件访问请求。在一些实施例中,新的文件访问请求之一可以是之前请求的重放。经重放的请求可以是如果被服务器处理但没被识别出它是重放就要在服务器上创建不一致状态的类型。请求的确切类型取决于请求是如何被正使用的文件访问协议处理的。例如,在SMB协议的各版本中,字节范围锁可以被请求并对文件的各部分授权。因此,如果客户端发送了锁定文件的部分的请求,并且该请求被完成但在断开连接以前没有通知客户端,则客户端可以重放该之前的请求。该服务器将需要能够标识该请求是重放。因此,在实施例中,和对持久句柄的原始请求一起发送的句柄标识符被用来标识经重放的请求。一旦被标识,就可处理经重放的请求以避免服务器上的不一致状态。
在一些实施例中,为了向客户端102上的各应用提供透明的过渡转移,可存在存储在客户端102上的状态信息。也即,服务器106A(或者故障转移服务器)可以不负责存储重新连接之后还原状态所必须的所有信息。在一些实施例中,客户端可以负责重新建立一些状态。例如,如果读取文件信息的请求在断开连接之前被发送,则服务器可以不负责保存与这些读取请求有关的状态信息。当发生重新连接时,客户端可以负责重新发送这些读取请求。下面参考图2更加详细地描述其中状态信息被不同组件还原的实施例的额外描述。
前述描述仅仅是图1所示的实施例可以如何操作的一个示例。如下面将更详细地描述的,实施例可以包括不同的步骤或操作。这些实施例是使用任何合适的软件或硬件组件或模块来实现的。
现在转到图2,图2示出了软件环境200的框图,软件环境200具有客户端202、客户端204和具有3个服务器(例如,服务器1、服务器2和服务器3)的服务器群集206。还示出了文件系统在那里存储文件信息的文件存储210,以及服务器1、服务器2和服务器3中的一个或多个在那里存储状态信息的存储212。
如图2中所示,客户端202和客户端204各自包括可以请求文件信息的应用。该应用例如可以是例如文字处理应用、电子表格应用、浏览器应用或者请求对文件的访问的任何其他应用。在图2中所示的实施例中,文件位于存储在文件存储210中的共享文件系统中。客户端202和客户端204各自还包括把对文件的请求从这些应用重定向到文件服务器的重定向器,该文件服务器提供对共享文件系统的访问。重定向器与使用文件访问协议的文件服务器通信。在一些实施例中,文件访问协议可以是NFS或SMB协议的一个版本。出于解释的目的,将假设客户端202和客户端204中的重定向器与使用SMB协议的一个版本(诸如,SMB2.0)的文件服务器通信来描述图2。然而,实施例并不限于使用SMB协议。
服务器1、服务器2和服务器3在图2中被示为各自包括文件服务器。如上所述,文件服务器可以使用SMB协议的一个版本来与客户端202和客户端204上的重定向器通信。服务器1、服务器2和服务器3中的每一个还包括恢复过滤器,该恢复过滤器在一些实施例中被用来为在客户端重定向器和文件服务器之间建立的会话存储状态信息。
使用SMB协议在客户端和服务器之间建立会话开始于重定向器(诸如客户端202上的重定向器)向文件服务器(诸如服务器群集206中的服务器1)发送协商请求。重定向器和文件服务器交换协商分组以协商将用于会话的SMB的版本。此外,在协商期间,还可以交换能力。在一个实施例中,文件服务器可以在从文件服务器发送到客户端的协商响应分组中包括能力标志,以向客户端指示该文件服务器支持持久句柄的使用。在一些实施例中,在其中文件服务器是通过故障转移到群集中的另一服务器而向客户端提供一致可用性的群集的一部分的情形中这样做。在其他实施例中,独立的服务器也可以具有这种能力,以便在存在网络故障的情况下能够重新连接到客户端。
一旦完成协商,客户端上的重定向器和文件服务器就建立会话。客户端重定向器随后可以向文件服务器发送文件访问请求。在一个实施例中,重定向器请求持久句柄。SMB协议的各版本规定了可用于重新连接到断开连接的客户端的耐久句柄。然而,它们不须规定在客户端重新连接以后存储和重新建立状态。因此,在实施例中,重定向器可以发送具有某一额外标志和/或指示符的对耐用句柄的请求,以指明客户端重定向器正在请求持久句柄。此外,在重新连接以后客户端可以包括可被用来标识经重放的请求的句柄标识符。以下是SMB协议的一个版本中可能使用的、用于请求持久句柄的耐用句柄请求结构的一个实施例。
struct SMB2_DURABLE_HANDLE_REQUEST_V2{
ULONG Flags;
GUID HandleId;//此句柄的客户端提供的唯一ID。
//(用来检测重放。)
ULONG Timeout;//以秒为单位的超时。
ULONG Reserved;//必须被设置成0。}.
在实施例中,响应于该请求,在服务器1上的文件服务器通过向客户端202上的客户端重定向器授权持久句柄并提供文件标识符来作出响应。客户端重定向器随后能够访问来自与持久句柄和文件标识符相关联的文件中的信息。在一些实施例中,客户端重定向器可以为目录请求持久句柄。也即,不是持久句柄与单个文件相关联,而是该句柄可以与目录相关联。
除了服务器1上的文件服务器授权持久句柄以外,文件服务器还将把状态信息存储在存储212中。该状态信息可以与由客户端重定向器生成的句柄标识符相关联地存储,并且该状态信息还可以与向客户端202上的客户端重定向器提供的文件标识符相关联地存储。如以下更加详细描述的,文件服务器可以将状态信息直接存储为文件服务器状态信息216。在其他实施例中,文件服务器可以利用恢复过滤器来存储状态信息。在又一些实施例中,文件服务器既可以直接存储状态信息又可以使用恢复过滤器来存储其他状态信息。
在协商完成以后,客户端重定向器使用例如SMB协议的一个版本来发送文件访问请求。在一些实施例中,文件服务器将为从客户端重定向器接收到的各请求中的每一个存储状态信息。在某一时间点上,作为例如网络故障或服务器1的故障的结果,客户端202和服务器1之间可存在断开连接。客户端202可以重新建立与服务器1的连接(如果故障基于网络故障的话),或者重新建立与故障转移服务器(服务器2和服务器3之一)的连接。作为重新连接的一部分,客户端202可以发送包括之前提供的句柄标识符和由文件服务器在协商原始会话时提供的文件标识符在内的重新连接请求。由于状态信息在可被服务器群集206中所有服务器访问的存储212中可用,因此故障转移服务器可以基于客户端在重新连接请求中提供的句柄标识符和/或文件标识符来标识之前的状态信息。在客户端正尝试与服务器1重新建立连接的那些实施例中,服务器1上的文件服务器还可以访问存储212上的状态信息以重新建立与客户端的会话的之前状态。
如上所述,在一些实施例中,环境200中的不同组件负责存储不同类型的状态信息以向断开连接的客户端提供状态的重新建立。如图2所示,各文件服务器中的每一个都包括恢复过滤器。当客户端被重新连接时,恢复过滤器在实施例中用来存储用于重新建立状态的状态信息。恢复过滤器并不依赖于文件服务器所使用的特定文件访问协议。在实施例中,文件服务器将首先向恢复过滤器注册,以便存储特定状态信息。一旦注册,文件服务器就向恢复过滤器传递状态信息,该恢复过滤器把该状态信息作为恢复过滤器状态信息214存储在存储212中。除了恢复过滤器状态信息214以外,服务器还可将被示为文件服务器状态信息216的分开的状态信息存储在存储212中。在实施例中,与恢复过滤器状态信息214相比,该不同的状态信息可以被存储在不同的存储位置。文件服务器状态信息216和恢复过滤器状态信息214可以以任何合适的方式(诸如日志文件)被存储。如以下更加详细描述的,恢复过滤器所存储的那些类型的状态信息在实施例中是通用信息,而服务器信息是更加专用的状态信息。
在一些实施例中,客户端还负责存储一些状态信息。如图2所示,客户端202和204存储用于当客户端在断开连接后被重新连接时重新建立状态的状态信息。在这些实施例中,在具有客户端重新建立状态,而不要求文件服务器存储用以当客户端断开连接后被重新连接时重新建立客户端状态的所有状态信息时,可以存在一些成本节省。例如,如果要求文件服务器存储所有状态信息,则每当存在从客户端重定向器接收到的一些请求以及要对文件执行的一些操作时,文件服务器就将被要求存储有关于这些请求或操作的某些信息。要求客户端重定向器存储状态信息中的一些减少了文件服务器必须为从客户端接收到的每一请求或操作存储状态信息的成本。
可以理解,存储在环境200的不同组件上的状态信息取决于不同的设计考虑。例如,可以存在对要求文件服务器保证状态信息是相干且一致可用的而言足够重要的某些信息,在这种情形下该信息应该被文件服务器和/或恢复过滤器存储。例如,根据实施例,为了服务器执行共享模式并确保新客户端请求访问不干扰现有客户端的访问,状态信息必须被存储在服务器上。其他状态信息可以不是关键的,并且在信息中可以容忍一些不一致。作为一个示例,客户端可以具有本地缓存的文件属性。在客户端断开连接后又重新连接到文件服务器之后,可以重新请求所高速缓存的文件属性。
在一个实施例中,在SMB协议的一个版本被用于客户端重定向器和文件服务器之间的通信的情况,SMB协议可以规定要由环境200中所示的各个组件来存储的特定状态。在一个实施例中,使用SMB协议的可用操作被分成三组。与每一组相关联的状态信息被不同的组件存储。
第一组一般可被称作非幂等操作,这意味着如果重放这些操作(例如,当在客户端断开连接前已经被应用过一次之后,重新应用到文件上),将在文件服务器上创建不一致状态。在SMB协议的各版本中,字节范围锁是要求重放检测的各操作的示例,因为这些锁是堆叠和非堆叠的。其它示例包括例如可以通过创建新文件或重写现有文件而修改盘状态的追加写和打开/创建。在实施例中,因为文件服务器必须识别这些类型的操作正被重放,故而与这些操作相关联的状态由文件服务器来存储。在图2所示的实施例中,与这些操作相关联的状态将作为文件服务器状态信息216的一部分被在服务器1、服务器2和服务器3中的每一个上的文件服务器存储在存储212中。如上所述,在一些实施例中由客户端在会话的协商期间提供的句柄标识符被用来标识请求是之前请求的重放。
第二组操作涉及数据开放操作。这些操作可以是对读、写、执行或删除文件中信息的请求。根据实施例,为了能够执行共享模型并且防止其他客户端影响现有客户端,有关这些开放操作的状态必须被存储在服务端侧。有关开放操作的状态还被存储在服务端侧以阻止本地操作干扰持久句柄。例如,防止在群集节点上运行的程序修改或以其他方式影响为客户端保留的句柄。在实施例中,有关这些类型的操作的状态被恢复过滤器存储。如上所述,实施例中的恢复过滤器并非专用于SMB协议,而是在文件服务器使用不同文件访问协议(诸如NFS)时也可以被使用。在如图2所示的实施例中,在服务器1、服务器2和服务器3中的每一个上的恢复过滤器开放操作的状态信息作为恢复过滤器状态信息214的一部分存储在存储212中。
第三组操作包括如果被重新应用到服务器将不会改变服务器的最终状态的操作。这些可被称为幂等操作。该组内的一些操作包括但不限于读、非追加写、删除、重命名、元数据设置操作和元数据查询操作。租用状态也可以被客户端存储并且无需被服务器持久存储。在实施例中,租用是一种被设计成允许客户端按照一致的方式动态地改变它们的缓冲策略以改善性能并减少网络使用的机制。如果客户端可以在本地缓冲文件数据(这减少或消除了发送及接收网络分组的需要),则可以改善远程文件操作的网络性能。如果客户端确认没有其他客户端正在访问数据,则该客户端可不必把信息写入远程服务器上的文件。同样,如果客户端确认没有其他客户端正在向远程文件写数据,则该客户端可以缓冲来自远程文件的预读数据。
根据实施例,因为在客户端在故障转移之后正恢复它们的句柄时恢复过滤器阻止对给定文件的所有创建,租用状态无需被持久存储在服务器上。这隐含提供了如果客户端在宽限期内重新连接/恢复他们的句柄,句柄租用将永远不会在故障转移过程期间被丢失的保证。换言之,客户端在恢复阶段将总能找回它们的句柄租用。此外,诸如读/写、读/写/句柄租用的独占租用在任何给定时间否仅授权单个客户端。这隐含了不存在对来自任何其他客户端的文件开放的其它数据。于是在故障转移期间,由于在保持独占租用的客户端已经恢复其所有句柄以前恢复过滤器将不允许对文件的新创建,存在客户端将找回其独占租用的保证。诸如读租用之类不需要确认的共享租用在没有服务器或恢复过滤器的知识的情况下可能会在任何时间被丢失,因为底层文件系统允许导致这个中断的操作继续。对于这些租用,客户端在实施例中假设该租用跨故障转移中断并且清除其高速缓存来防止陈旧读取。第三组中操作的状态因而可以被客户端重新创建而无需来自服务器的任何额外支持。在如图2所示的实施例中,客户端202和204上的重定向器为第三组操作存储状态信息。
在操作中,环境200允许客户端202和204上的应用请求对存储在共享文件系统中的文件存储210中的文件的访问。应用可以透明地请求文件信息。如上所述,客户端上的重定向器将建立请求持久句柄的与群集206中的服务器之一的会话,从而使重定向器可以在存在断开连接的情况下重新连接并且重新建立会话。文件服务器将把状态信息直接作为文件服务器状态信息216或者作为使用恢复过滤器的恢复过滤器状态信息214而存储在存储212中。在一些实施例中,客户端还将存储一些状态信息。在断开连接的情况下,重定向器可以请求重新连接到文件服务器或重新连接到故障转移服务器。存储在服务器侧(例如,存储212中)以及客户端侧上的状态信息随后可以被用来重新建立客户端的之前状态。所有这些都对客户端202和204上的应用透明地发生。
可以理解,以上对环境200的描述并非旨在限制本文中所述的实施例。图2及其描述仅仅旨在说明一些实施例的实现。在其他实施例中,不同类型的状态信息可以被存储在环境200中的不同组件上。同样,如上所述,可以使用可以确定所存储的状态信息的类型以及什么组件存储该状态信息的不同的文件访问协议。由此,实施例并不受限于图2中示出并描述了什么。
下面对图3和4的描述是在将服务器消息块(SMB)协议用作文件访问协议的情况下作出的。然而,实施例不限于此。包括不同版本的SMB或网络文件系统(NFS)在内的任何文件访问协议都可以在实施例中用作文件访问协议。SMB在说明书中仅仅是为了便于说明。
图3和图4示出根据各实施例的操作流程300和400。操作流程300和400可以在任何合适的计算环境中执行。例如,操作流程可以由诸如图1和图2所示的系统和环境来执行。因此,对操作流程300和400的描述可参考图1和2的至少一个组件。然而,对图1和2的组件的任何这类参考仅出于描述性目的,并且应当理解,图1和2的实现是操作流程300和400的非限制性环境。
此外,尽管以特定次序顺序地示出并描述了操作流程300和400,但在其它实施例中,各个操作能以不同的次序、多次和/或并行执行。此外,在某些实施例中,一个或多个操作可被省略或组合。
操作流程300示出用于提供对服务器故障转移的重放防御的步骤。在实施例中,图3中所示的流程300可以由在作为服务器群集的一部分的服务器(例如群集206的服务器1、服务器2和服务器3(图2))上运行的文件服务器来执行。流程300始于操作302,在操作302接收连接到文件服务器的请求。在操作302接收到的请求是建立与文件服务器的会话以访问存储在可通过文件服务器访问的共享文件系统上的文件信息的请求。该请求可以被例如客户端202和204(图2)的客户端发送。在操作302以后,流程300转到操作304,在操作304,发送指示已经建立会话的响应。在一些实施例中,在操作302和304发送的请求和响应可以是在客户端和服务器之间交换以协商会话的多个消息的一部分。消息的交换可以包括各能力的交换,各能力包括文件服务器提供持久句柄的能力。
操作流程从操作304转到操作306,在操作306,接收对持久句柄的第二请求。该请求被客户端发送并且包括由客户端生成的句柄标识符。句柄标识符在实施例中被服务器用来存储与在客户端和文件服务器之间建立的会话有关的状态信息。作为存储状态信息的一部分,流程300在实施例中可以包括操作308,在操作308中文件服务器向恢复过滤器注册以存储一些状态信息。在实施例中,恢复过滤器位于协议层和底层存储系统之间,并且在实施例中能够用来存储与在文件服务器和客户端之间建立的会话有关的状态信息。
在操作310,与句柄标识符相关联地存储状态信息。可以以任何适合的形式(诸如表、数据库或日志文件)存储状态信息。存储是持久的并且对文件服务器可用,以用于在必要时重新建立状态。状态信息可以由文件服务器直接存储。在其他实施例中,流程300包括操作312,在操作312中恢复过滤器被用来存储状态信息。如上所述,在一些实施例中文件服务器可以向恢复过滤器注册以存储状态信息。
流程300从操作312转到操作314,在操作314,向客户端发送授权使用持久句柄对文件的访问的响应。该响应包括文件标识符,该文件标识符由文件服务器在该响应中提供,并且还与在操作310及可选的操作312处存储的状态信息相关联地存储。
流程300随后转到操作316,在操作316可选地接收多个文件访问请求。这些文件访问请求可以包括要对与持久句柄相关联的文件执行的多个文件操作。这些操作可以是,例如打开以读/写数据、枚举属性、允许在本地高速缓存数据的租用请求或者其他文件访问操作。与在操作316接收文件访问请求相关联的各种状态可以在操作318被更新。也即,当这些请求被授权给客户端时,在之前操作(310和312)中存储的状态信息被更新以反映额外的状态信息。
在操作318以后,存在在框319中标识出的多个额外操作。这些操作可以作为客户端从文件服务器断开连接的结果而被执行。可以理解,在原始执行操作302-318的文件服务器因为故障而不可用的那些情形中,可以由故障转移服务器执行框319中的额外操作。在其他实施例中,在故障是网络问题的结果的情况下,由相同的文件服务器执行框319中的操作。
在操作320,重新连接的请求被接收。该请求包括文件服务器之前提供的文件句柄,以及客户端在请求持久句柄时使用的句柄标识符。在操作320接收请求的文件服务器可以使用句柄标识符和文件标识符来查找状态信息。如上所述,该操作可以涉及使用恢复过滤器以检索之前使用恢复过滤器来保存的状态信息。
流程300从操作320转到操作322,在操作322状态信息被用来重新建立与客户端的连接和之前的状态。在操作322之后,流程转到操作324,在操作324,接收新的文件访问请求。操作324因而可以包括多个操作,其中的每一操作包括从客户端接收文件访问请求。
在操作324接收的这些请求中的一些可以是在文件服务器和客户端之间断开连接之前被发送的之前请求的重放。结果,这些操作中的一些如果在文件服务器处被重新应用的话会创建不一致状态。在操作326,检测到是重放的新的文件访问请求。在实施例中,该操作可以涉及使用客户端之前提供的句柄标识符来标识文件访问请求。一旦在操作326检测到重放,就在操作328正确地处理请求。也即,如果经重放的操作将在文件服务器上创建不一致状态,如果之前的操作被成功地执行则可以忽略经重放的操作。或者,如果之前的操作没有被成功地执行,则可以应用经重放的操作。流程300在330处结束。
操作流程400示出了用于维持一致可用性的步骤。在实施例中,流程400可以被诸如客户端202和204(图2)的客户端上的重定向器执行,该重定向器与文件服务器通信以访问共享文件系统中的文件。在实施例中,客户端通过使用文件访问协议(诸如SMB协议的一个版本或NFS的一个版本)与文件服务器通信。
流程400始于操作402,在操作402发送连接到文件服务器的请求。在操作402所发送的请求是建立与文件服务器的会话以访问存储在可通过文件服务器访问的共享文件系统上的文件信息的请求。该请求可以被发送到在作为服务器群集(图2)一部分的服务器(例如服务器1、服务器2和服务器3)上的文件服务器。根据诸如一个版本的SMB或NFS之类的文件访问协议来格式化该请求。
在操作402以后,流程400转到操作404,在操作404,接收指示已经建立会话的响应。在一些实施例中,操作402和404可以是在客户端和服务器之间交换以协商会话的多个消息的一部分。消息的交换可以包括各能力的交换,各能力包括文件服务器提供持久句柄的能力。
操作流程从操作404转到操作406,在操作406,发送对持久句柄的请求。作为协商过程(操作402和404)的结果,客户端可以已经被通知该文件服务器能够提供持久句柄。为了确保客户端上的应用能够在断开连接并重新连接之后重新建立其状态,在操作406客户端可以请求持久句柄。该请求包括由客户端生成的句柄标识符。
流程400从操作406转到操作408,在操作408,接收授权对使用持久句柄的文件的访问的响应。该响应包括文件标识符,该文件标识符由文件服务器在该响应中提供。
在操作410,状态信息在一些实施例中可以由客户端存储。与在所接收的授权持久句柄的响应中提供的句柄标识符和文件标识符相关联地存储状态信息。可以以任何适合的形式(诸如表、数据库或日志文件)来存储状态信息。该存储是持久的并且对客户端可用以用于在必要时重新建立状态。可以理解,在一些实施例中客户端所存储的状态信息是用于可以被安全地重放回文件服务器而不会在文件服务器上创建不一致状态的各操作的状态信息。经重放的操作可以是例如租用本地缓存数据、读取、写、删除以及元数据枚举。
流程400从操作410转到操作412,在操作412,客户端发送多个文件访问请求。根据实施例,操作412由此可以涉及发送执行文件操作的数个请求。在操作412之后是操作414,在操作414更新客户端上的状态信息。可以理解,操作414可以发生多次,即每次在操作412客户端发送文件访问请求时可以发生操作414。
流程从操作414转到操作416,在操作416,检测断开连接。该检测可以借助于超时、事件通知或一些其他手段发生。在操作416之后,在操作418发送对重新连接和重新建立之前建立的与文件服务器的会话的请求。该请求包括文件服务器之前提供的文件句柄,以及客户端在请求持久句柄时使用的句柄标识符。
流程400从操作418转到操作420,在操作420作出重新连接成功的判定。在操作420,流程转到操作422,在操作422,存储在客户端的状态信息被用来重新建立之前的状态。操作422可以涉及发送多个不同的请求,这些请求包括读取、写、枚举、对锁定或建立之前状态的其他操作的请求。流程从操作422转到操作424,在操作424,客户端发送新的文件访问请求。流程在426处结束。
图5示出可用于实现本文中所描述的各实施例的通用计算机系统500。计算机系统500仅是计算环境的一个示例,而非旨在对计算机和网络架构的使用范围或功能提出任何限制。计算机系统500也不应被解释成对于在示例计算机系统500中所示出的任一组件或其组合有任何依赖或要求。在实施例中,系统500可用作上面参照图1所述的客户端和/或服务器。在其最基本配置中,系统500通常包括至少一个处理单元502和存储器504。取决于计算设备的确切配置和类型,存储器504可以是易失性的(如RAM)、非易失性的(如ROM、闪存等)或是两者的某种组合。该最基本配置在图5中由虚线506来示出。在实施例中,系统存储器504存储请求对文件信息的访问权的应用(诸如应用523)。根据实施例,系统存储器504还包括拦截请求并把它们传输到文件服务器的重定向器522。
如这里所使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块、或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器504、可移动存储和不可移动存储508都是计算机存储介质示例(即,存储器存储)。在实施例中,诸如状态信息520的数据例如被存储。计算机存储介质可包括,但不限于,RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或者可用于存储信息且可由计算设备500访问的任何其他介质。任何这样的计算机存储介质可以是设备500的一部分。计算设备500还可具有输入设备514,诸如键盘、鼠标、笔、声音输入设备、触摸输入设备等。还可包括输出设备516,诸如显示器、扬声器、打印机等。上述设备是示例且可以使用其他设备。
如这里所使用的术语计算机可读介质还包括通信介质。通信介质由诸如载波或其他传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其他数据来体现,并包括任何信息传递介质。术语“已调制数据信号”可以描述以对该信号中的信息进行编码的方式设定或者改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接等有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。
本说明书通篇引述了“一个实施例”或“一实施例”,这意味着在至少一个实施例中包括特定描述的特征、结构或特性。因此,对这样短语的使用可指的是一个以上的实施例。而且,在一个或多个实施例中,可以用任何合适的方式组合所描述的特征、结构或特性。
然而,本领域技术人员会认识到本实施例也可在没有一个或多个具体细节的情况下实施,或者采用其他方法、资源、材料等来实现。在其他情况中,仅为了避免模糊实施例的各方面,未详细示出和描述公知的结构、资源或操作。
虽然示出和描述了示例实施例和应用,但是应该理解本实施例不限于上述精确配置和资源。可以对此处公开的方法和系统的排列、操作以及细节作出对本领域技术人员显而易见的各种修改、改变和变化,而不背离所要求保护的本实施例的范围。

Claims (10)

1.一种向访问服务器群集上的共享文件系统的客户端提供一致可用性的计算机实现的方法,所述方法包括:
在文件服务器接收连接到所述文件服务器以访问共享文件系统中的文件信息的请求,所述第一请求是根据文件访问协议来格式化的,其中所述文件服务器是服务器群集中的多个服务器中之一;
从所述文件服务器发送响应,所述响应建立与客户端的、允许对所述共享文件系统中的文件信息的访问的会话,所述响应是根据所述文件访问协议来格式化的;
在所述文件服务器接收打开所述文件服务器上持久句柄以供客户端访问所述共享文件系统中的文件的请求,所述请求包括由所述客户端提供的句柄标识符;
响应于接收所述请求,所述文件服务器:
与所述句柄标识符相关联地存储有关所述会话的第一状态信息;以及
向所述客户端发送授权对所述文件的访问的响应;
在客户端断开连接之后,接收使用所述持久句柄重新建立所述会话的请求;以及
使用所述第一状态信息重新建立所述会话。
2.如权利要求1所述的方法,其特征在于,所述第一状态信息包括如果被所述客户端重新发送会导致所述文件服务器最终处于不一致状态的操作的状态。
3.如权利要求1所述的方法,其特征在于,还包括:
在重新建立所述会话之后,从所述客户端接收新的请求,该请求包括句柄标识符。
4.如权利要求1所述的方法,其特征在于,所述客户端断开连接因文件服务器的故障而发生,并且重新建立所述连接由所述服务器群集中的第二文件服务器执行。
5.一种包括计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被处理器执行时执行一种维持一致性状态的方法,所述方法包括:
由客户端发送连接到服务器以访问文件信息的请求,该请求是根据文件访问协议来格式化的;
从所述服务器接收响应,所述响应建立与客户端的、允许对所述服务器上的文件信息的访问的会话,所述响应是根据所述文件访问协议来格式化的;
发送打开所述服务器上的持久句柄以供所述客户端访问所述服务器上的文件的请求,该请求包括由所述客户端提供的句柄标识符;
在所述客户端接收授权对所述文件的访问的响应;
检测所述客户端已经从所述服务器断开连接;
发送使用所述持久句柄重新建立所述会话的请求,重新建立所述会话的请求包括所述句柄标识符;
判定所述会话已被重新建立;以及
发送新请求。
6.一种用于提供文件信息的一致可用性的系统,所述系统包括:
第一服务器,其包括:
被配置成执行计算机可执行指令的至少一个处理器;
存储所述计算机可执行指令的至少一个计算机可读存储介质,所述计算机可执行指令在被所述至少一个处理器执行时提供:
第一文件服务器,其被配制成:
接收打开持久句柄以供客户端访问所述第一文件服务器上的文件的请求,该请求包括由所述客户端提供的句柄标识符;
与所述句柄标识符相关联存储第一状态信息;
向恢复键过滤器注册以存储与所述恢复键相关联的第二状态信息;以及
向所述客户端发送授权对所述文件的访问的响应;
所述恢复键过滤器被配置成:
从所述第一文件服务器接收注册请求;
将所述第二状态信息与所述恢复键一起存储;以及
响应于来自所述第一文件服务器的对所述第二状态信息的请求,向所述第一文件服务器发送所述第二状态信息。
7.如权利要求6所述的系统,其特征在于,所述系统还包括:
至少一个客户端,其包括:
被配置成执行计算机可执行指令的至少一个额外的处理器;
存储所述计算机可执行指令的至少一个额外的计算机可读存储介质,所述计算机可执行指令在被所述至少一个额外的处理器执行时提供:
文件访问重定向器,其被配置成:
发送打开所述第一服务器上的持久句柄以供所述客户端访问所述第一服务器上的文件的请求,所述请求包括句柄标识符;
接收授权访问所述文件的响应;
检测所述客户端已经从所述第一文件服务器断开连接;
发送使用所述持久句柄重新建立会话的请求,该重新建立所述会话的请求包括所述句柄标识符;
判定所述会话已被重新建立;以及
发送新的请求。
8.如权利要求6所述的系统,其特征在于,所述第一文件服务器是文件服务器群集中的多个服务器之一,并且其中所述服务器群集中的多个服务器中的第二服务器包括:
被配置成执行计算机可执行指令的至少一个额外的处理器;
存储所述计算机可执行指令的至少一个额外的计算机可读存储介质,所述计算机可执行指令在被所述至少一个额外的处理器执行时提供:
第二文件服务器,其被配置成:
接收使用所述持久句柄来重新建立会话的请求,所述会话由所述第一文件服务器之前建立。
9.如权利要求8所述的系统,其特征在于,所述多个服务器中的第二服务器还被配置成:
使用所述第一文件服务器的状态信息来重新建立所述会话的之前状态。
10.如权利要求7所述的系统,其特征在于,所述文件访问重定向器使用服务器消息块(SMB)协议的一个版本来请求来自所述第一文件服务器的文件操作,并且所述第一文件服务器使用所述SMB协议的所述版本与所述文件访问重定向器通信。
CN201280032570.8A 2011-06-30 2012-06-08 用于透明故障转移的系统和方法 Active CN103636165B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/174,271 US8856582B2 (en) 2011-06-30 2011-06-30 Transparent failover
US13/174,271 2011-06-30
PCT/US2012/041703 WO2013003006A2 (en) 2011-06-30 2012-06-08 Transparent failover

Publications (2)

Publication Number Publication Date
CN103636165A true CN103636165A (zh) 2014-03-12
CN103636165B CN103636165B (zh) 2017-05-24

Family

ID=47391942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280032570.8A Active CN103636165B (zh) 2011-06-30 2012-06-08 用于透明故障转移的系统和方法

Country Status (11)

Country Link
US (2) US8856582B2 (zh)
EP (2) EP3051420B1 (zh)
JP (2) JP5974086B2 (zh)
KR (1) KR101923245B1 (zh)
CN (1) CN103636165B (zh)
AU (1) AU2012275906B2 (zh)
BR (1) BR112013033646A2 (zh)
CA (1) CA2840444A1 (zh)
MX (1) MX2013015359A (zh)
RU (1) RU2595903C2 (zh)
WO (1) WO2013003006A2 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016123744A1 (zh) * 2015-02-03 2016-08-11 华为技术有限公司 网络文件系统中处理i/o请求的方法及设备
CN106095606A (zh) * 2016-06-12 2016-11-09 北京三快在线科技有限公司 一种服务器的软件故障处理方法和装置
CN106557390A (zh) * 2016-11-15 2017-04-05 郑州云海信息技术有限公司 一种分布式存储文件连续访问方法及系统
CN106571968A (zh) * 2016-11-10 2017-04-19 华为技术有限公司 一种业务切换方法和系统
CN107209706A (zh) * 2014-12-16 2017-09-26 茨特里克斯系统公司 用于将设备连接到正在接收维护的应用和桌面的方法和系统
WO2018094686A1 (zh) * 2016-11-25 2018-05-31 华为技术有限公司 一种smb业务故障处理方法和存储设备
CN112236753A (zh) * 2018-04-04 2021-01-15 Netapp股份有限公司 使用基于索引节点编号的依赖图更快地重放元数据和数据操作
CN112749142A (zh) * 2019-10-31 2021-05-04 上海哔哩哔哩科技有限公司 句柄管理方法和系统
CN113190382A (zh) * 2014-08-07 2021-07-30 微软技术许可有限责任公司 存储故障之后的安全数据访问

Families Citing this family (30)

* 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
US9251194B2 (en) * 2012-07-26 2016-02-02 Microsoft Technology Licensing, Llc Automatic data request recovery after session failure
US9961125B2 (en) 2013-07-31 2018-05-01 Microsoft Technology Licensing, Llc Messaging API over HTTP protocol to establish context for data exchange
US10440066B2 (en) 2013-11-15 2019-10-08 Microsoft Technology Licensing, Llc Switching of connection protocol
US20150142982A1 (en) * 2013-11-15 2015-05-21 Microsoft Corporation Preservation of connection session
GB2520343A (en) * 2013-11-19 2015-05-20 Ibm A system having a cluster of communication controllers and a method for modification of the latter
US10313221B1 (en) * 2014-01-28 2019-06-04 Sprint Communication Company L.P. Endpoint monitoring for a messaging framework
US10264071B2 (en) 2014-03-31 2019-04-16 Amazon Technologies, Inc. Session management in distributed storage systems
US10372685B2 (en) 2014-03-31 2019-08-06 Amazon Technologies, Inc. Scalable file storage service
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
KR101627256B1 (ko) 2015-01-08 2016-06-03 (주)넷텐션 다수 분산서버를 구비한 네트워크 통신의 세션 이양 방법
US10303660B2 (en) 2015-11-12 2019-05-28 Microsoft Technology Licensing, Llc File system with distributed entity state
US10009428B2 (en) * 2015-12-07 2018-06-26 Dell Products L.P. Method and system for reconnecting server message block (SMB) clients to persistent file handles
US10038752B2 (en) * 2015-12-07 2018-07-31 Dell Products L.P. Method and system for execution of client-initiated operations on file handles in a distributed server system
US9946726B2 (en) * 2015-12-07 2018-04-17 Dell Products L.P. Method and system for execution of disconnection from and reconnection to persistent handles
US20170230457A1 (en) * 2016-02-05 2017-08-10 Microsoft Technology Licensing, Llc Idempotent Server Cluster
US10095700B2 (en) * 2017-01-18 2018-10-09 HGST, Inc. Persistent file handle object container memory expiry
US11165868B2 (en) * 2017-03-30 2021-11-02 Microsoft Technology Licensing, Llc Systems and methods for achieving session stickiness for stateful cloud services with non-sticky load balancers
WO2018235224A1 (ja) * 2017-06-22 2018-12-27 株式会社東芝 ウェブアプリケーションシステム、サーバ装置、端末装置、およびプログラム
US10884863B2 (en) 2018-07-20 2021-01-05 Red Hat, Inc. Client session reclaim for a distributed storage system
US10866870B2 (en) 2019-01-31 2020-12-15 Hewlett Packard Enterprise Development Lp Data store and state information handover
RU2749754C1 (ru) * 2020-09-23 2021-06-16 Владимир Саулович Айзин Резервированное серверное устройство
CN112948158A (zh) * 2021-02-19 2021-06-11 山东英信计算机技术有限公司 一种文件共享方法、装置、设备及计算机可读存储介质
US11888905B2 (en) * 2021-08-06 2024-01-30 Meta Platforms, Inc. Systems and methods for preserving media streams

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1767472A (zh) * 2004-10-27 2006-05-03 乐金电子(天津)电器有限公司 家庭网络系统
US20080126704A1 (en) * 2001-01-29 2008-05-29 Adaptec, Inc. Systems and methods for storing parity groups
US7539722B2 (en) * 2003-10-24 2009-05-26 Microsoft Corporation Method and system for accessing a file

Family Cites Families (242)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS571681A (en) 1980-05-24 1982-01-06 Makita Electric Works Ltd Holder for attitude of nail of nail driver
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
JPS6019341Y2 (ja) 1982-01-29 1985-06-11 エスエムケイ株式会社 ロツク付コネクタ
JPS613496U (ja) 1984-06-13 1986-01-10 株式会社東芝 タ−ビンミサイルの防護装置
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
JPS6327678A (ja) 1986-07-21 1988-02-05 清水建設株式会社 鉄板サイロの構築方法
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
US4914570A (en) 1986-09-15 1990-04-03 Counterpoint Computers, Inc. Process distribution and sharing system for multiple processor computer system
JPS6361148U (zh) 1986-10-08 1988-04-22
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
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
US5124909A (en) 1988-10-31 1992-06-23 Hewlett-Packard Company Software program for providing cooperative processing between personal computers and a host computer
JPH02101847U (zh) 1989-01-24 1990-08-14
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
US5113519A (en) 1989-05-15 1992-05-12 International Business Machines Corporation Maintenance of file attributes in a distributed data processing system
US5560008A (en) 1989-05-15 1996-09-24 International Business Machines Corporation Remote authentication and authorization 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
US5261051A (en) 1989-08-14 1993-11-09 Microsoft Corporation Method and system for open file caching in a networked computer system
US5265261A (en) 1989-08-14 1993-11-23 Microsoft Corporation Method and system for network communications using raw mode protocols
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
JPH0675890B2 (ja) 1990-06-25 1994-09-28 河村化工株式会社 釣竿の製造方法
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> 異種のクライアントによる共用ファイルのファイル管理機構
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
JPH0675890U (ja) 1993-04-02 1994-10-25 市光工業株式会社 コーナリングランプ点灯回路
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
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
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
JP3506920B2 (ja) 1998-08-25 2004-03-15 日本電信電話株式会社 全命令トレースデータの2次記憶装置への格納競合防止方法
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
US6883000B1 (en) 1999-02-12 2005-04-19 Robert L. Gropper Business card and contact management system
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
US6453354B1 (en) 1999-03-03 2002-09-17 Emc Corporation File server system using connection-oriented protocol and sharing data sets among data movers
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
US6622127B1 (en) 1999-05-11 2003-09-16 Kaiser Foundation Hospitals Order allocation to select from inventory locations stocking few units of inventory
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
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
ES2220661T3 (es) 2000-07-05 2004-12-16 Roke Manor Research Limited Metodo de operacion de una memoria temporal de reensamblado de paquetes.
US7693976B2 (en) 2000-07-11 2010-04-06 Ciena Corporation Granular management of network resources
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
KR100750735B1 (ko) 2001-02-03 2007-08-22 삼성전자주식회사 홈네트워크내의 기기 제어장치 및 방법 및 이를 적용한홈네트워크 시스템
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
JP3797236B2 (ja) 2001-04-27 2006-07-12 日本ビクター株式会社 記録再生装置および記録再生方法
JP2002328828A (ja) 2001-04-27 2002-11-15 Fujitsu Ltd ストレージサービス方法、ストレージサービスユーザ及びストレージサービスプロバイダ
US6640226B1 (en) 2001-06-19 2003-10-28 Informatica Corporation Ranking query optimization in analytic applications
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
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
ATE339053T1 (de) 2001-12-07 2006-09-15 Research In Motion Ltd Verfahren und vorrichtung zur steuerung der informationsverteilung zu mobilstationen
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
JP2003337717A (ja) * 2002-05-22 2003-11-28 Nec Corp オンライントランザクション処理の障害時復旧同期システム
JP4000905B2 (ja) 2002-05-22 2007-10-31 ソニー株式会社 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム
AU2002314310A1 (en) 2002-06-10 2003-12-22 Caplin Systems Limited Resource management
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
US7290141B2 (en) 2002-06-27 2007-10-30 Nokia, Inc. Authentication of remotely originating network messages
AU2003246189A1 (en) 2002-07-01 2004-01-19 Kabushiki Kaisha Toshiba Seamless system, recording medium, computer system processing continuation method
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
EP1543420B1 (en) 2002-07-29 2012-04-04 Open Invention Network LLC 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
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
US7290051B2 (en) 2003-01-09 2007-10-30 Sun Microsystems, Inc. Method and apparatus for hardware implementation independent verification of network layers
US7571463B1 (en) 2003-01-24 2009-08-04 Nortel Networks Limited Method an apparatus for providing a scalable and secure network without point to point associations
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
EP1650665B1 (en) 2003-07-24 2012-07-11 Panasonic Corporation File management method and information processing device
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
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
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
US7177941B2 (en) 2003-12-11 2007-02-13 International Business Machines Corporation Increasing TCP re-transmission process speed
US7383483B2 (en) 2003-12-11 2008-06-03 International Business Machines Corporation Data transfer error checking
US7243284B2 (en) 2003-12-11 2007-07-10 International Business Machines Corporation Limiting number of retransmission attempts for data transfer via network interface controller
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
JP2007529838A (ja) 2004-03-17 2007-10-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ディスク状の情報記憶媒体をスキャニングするための方法及び装置
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
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
US7418709B2 (en) 2004-08-31 2008-08-26 Microsoft Corporation URL namespace to support multiple-protocol processing within worker processes
US7418712B2 (en) 2004-08-31 2008-08-26 Microsoft Corporation Method and system 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 日本放送協会 配信サーバ及び配信プログラム
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
JP2008530835A (ja) 2005-02-08 2008-08-07 テレフオンアクチーボラゲット エル エム エリクソン(パブル) パケット交換ネットワーク上のオンデマンドマルチチャネルストリーミングセッション
US7743245B2 (en) 2005-03-10 2010-06-22 Intel Corporation Security protocols on incompatible transports
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
EP1727055B1 (en) 2005-05-25 2016-09-07 Microsoft Technology Licensing, LLC Data communication coordination with sequence numbers
US8332526B2 (en) 2005-05-25 2012-12-11 Microsoft Corporation Data communication protocol including negotiation and command compounding
EP1727056B1 (en) 2005-05-25 2008-11-05 Microsoft Corporation Data communication protocol
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 Михаил Васильевич Беляев Информационная система клиент - сервер и способ предоставления графического пользовательского интерфейса
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
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
KR20100080822A (ko) 2007-09-28 2010-07-12 엑세리온 악티에볼라그 네트워크 오퍼레이팅 시스템
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 中兴通讯股份有限公司 用于实现集群服务器内负载分担代理的方法
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 京セラドキュメントソリューションズ株式会社 ネットワークファイル処理システム
JP4549408B2 (ja) 2008-06-24 2010-09-22 富士通株式会社 ファイルサーバのクラスタノード制御プログラム,クラスタノード制御方法及びクラスタノード制御装置
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
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
JP2011119794A (ja) 2009-11-30 2011-06-16 Toshiba Corp 電子機器及び通信制御方法
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080126704A1 (en) * 2001-01-29 2008-05-29 Adaptec, Inc. Systems and methods for storing parity groups
US7539722B2 (en) * 2003-10-24 2009-05-26 Microsoft Corporation Method and system for accessing a file
CN1767472A (zh) * 2004-10-27 2006-05-03 乐金电子(天津)电器有限公司 家庭网络系统

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190382A (zh) * 2014-08-07 2021-07-30 微软技术许可有限责任公司 存储故障之后的安全数据访问
US11303704B2 (en) 2014-12-16 2022-04-12 Citrix Systems, Inc. Methods and systems for connecting devices to applications and desktops that are receiving maintenance
CN107209706A (zh) * 2014-12-16 2017-09-26 茨特里克斯系统公司 用于将设备连接到正在接收维护的应用和桌面的方法和系统
CN107209706B (zh) * 2014-12-16 2021-02-09 茨特里克斯系统公司 用于将设备连接到正在接收维护的应用和桌面的方法和系统
CN106170788A (zh) * 2015-02-03 2016-11-30 华为技术有限公司 网络文件系统中处理i/o请求的方法及设备
WO2016123744A1 (zh) * 2015-02-03 2016-08-11 华为技术有限公司 网络文件系统中处理i/o请求的方法及设备
US10338849B2 (en) 2015-02-03 2019-07-02 Huawei Technologies Co., Ltd. Method and device for processing I/O request in network file system
CN106095606B (zh) * 2016-06-12 2019-07-23 北京三快在线科技有限公司 一种服务器的软件故障处理方法和装置
CN106095606A (zh) * 2016-06-12 2016-11-09 北京三快在线科技有限公司 一种服务器的软件故障处理方法和装置
CN106571968A (zh) * 2016-11-10 2017-04-19 华为技术有限公司 一种业务切换方法和系统
CN106571968B (zh) * 2016-11-10 2020-02-21 华为技术有限公司 一种业务切换方法和系统
CN106557390A (zh) * 2016-11-15 2017-04-05 郑州云海信息技术有限公司 一种分布式存储文件连续访问方法及系统
CN108352995B (zh) * 2016-11-25 2020-09-08 华为技术有限公司 一种smb业务故障处理方法和存储设备
US10789138B2 (en) 2016-11-25 2020-09-29 Huawei Technologies Co., Ltd. SMB service fault processing method and storage device
CN108352995A (zh) * 2016-11-25 2018-07-31 华为技术有限公司 一种smb业务故障处理方法和存储设备
WO2018094686A1 (zh) * 2016-11-25 2018-05-31 华为技术有限公司 一种smb业务故障处理方法和存储设备
CN112236753A (zh) * 2018-04-04 2021-01-15 Netapp股份有限公司 使用基于索引节点编号的依赖图更快地重放元数据和数据操作
CN112749142A (zh) * 2019-10-31 2021-05-04 上海哔哩哔哩科技有限公司 句柄管理方法和系统
CN112749142B (zh) * 2019-10-31 2023-09-01 上海哔哩哔哩科技有限公司 句柄管理方法和系统

Also Published As

Publication number Publication date
JP2014524087A (ja) 2014-09-18
KR101923245B1 (ko) 2018-11-28
EP2727287B1 (en) 2017-04-05
MX2013015359A (es) 2014-02-11
KR20140036345A (ko) 2014-03-25
RU2013158710A (ru) 2015-07-10
WO2013003006A3 (en) 2013-06-20
JP2016224962A (ja) 2016-12-28
EP3051420B1 (en) 2017-08-30
BR112013033646A2 (pt) 2017-01-24
JP5974086B2 (ja) 2016-08-23
EP3051420A1 (en) 2016-08-03
US8856582B2 (en) 2014-10-07
RU2595903C2 (ru) 2016-08-27
AU2012275906B2 (en) 2016-06-09
EP2727287A4 (en) 2015-08-12
WO2013003006A2 (en) 2013-01-03
US20130007518A1 (en) 2013-01-03
EP2727287A2 (en) 2014-05-07
US20140372521A1 (en) 2014-12-18
JP6253727B2 (ja) 2017-12-27
CN103636165B (zh) 2017-05-24
CA2840444A1 (en) 2013-01-03
US9462039B2 (en) 2016-10-04

Similar Documents

Publication Publication Date Title
CN103636165A (zh) 透明故障转移
EP2695083B1 (en) Cluster unique identifier
US9753954B2 (en) Data node fencing in a distributed file system
US8805787B2 (en) Network architecture for content backup, restoring, and sharing
US10909220B2 (en) Method and apparatus for facilitating the transfer of a software license between computer systems
US20120072763A1 (en) System and method of file locking in a network file system federated namespace
JP4794143B2 (ja) 通知ボンドを使用してキャッシュオブジェクトを管理するためのシステムおよび方法
CN101212491B (zh) 使用客户端的高速缓存来备份服务器上数据的设备和方法
AU2012275906A1 (en) Transparent failover
US10609123B2 (en) Hybrid quorum policies for durable consensus in distributed systems
WO1991014230A1 (en) Message communication processing system
CN102946405A (zh) Smb2扩展
CN103733187A (zh) 基于令牌的文件操作
CN103597800A (zh) 自动云服务重新连接
JP2003524255A (ja) インターネット基盤の遠隔データ及びファイル復旧システム及びその方法
EP2666099A1 (en) System and method for transmitting and filtering instant messaging information
CN106649744B (zh) 日志记录方法及装置
JP2007249659A (ja) システム切替方法、その計算機システム及びプログラム
JP6750347B2 (ja) 文書閲覧制御装置、文書閲覧制御システム及びプログラム
JP2007259059A (ja) 中継処理システム、装置及びプログラム
EP2648361A1 (en) Binary data store
JP2008204372A (ja) ストレージ間通信システム及びストレージ間通信プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1193912

Country of ref document: HK

ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150717

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150717

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1193912

Country of ref document: HK