Multichannel connections in file system sessions
First Claim
1. A computer-implemented method for initiating a session between a client and a server, the method comprising:
- receiving, from an application, a first request to initiate a Server Message Block (SMB) session between the client and the server;
selecting a first transport for sending commands between the client and server;
initiating the first connection between the client and the server via the first transport, wherein the first connection is bound to the SMB session;
determining, using the first connection, at least one additional available transport; and
selecting a second transport from the at least one additional available transport for initiating a second connection between the client and the server, wherein the second transport is selected from the at least one additional available transport based, at least in part, on one or more characteristics associated with the server, wherein initiating the second connection comprises sending a second request to establish the second connection, the second request comprising a binding flag that indicates that the second connection is attached to the SMB session.
2 Assignments
0 Petitions
Accused Products
Abstract
A multi-connection information system is described herein that uses multiple connections to connect to a resource in a single file system session in a way that is controllable from protocols above a transport layer. The system also allows a single connection to be shared by multiple sessions. Sessions can be bound to multiple connections to enable communication over multiple transports. During the initial negotiation of a session, a client and a server determine whether multiple connections are supported between the client and the server within a session. After establishing an initial connection, additional connections can be established and bound to the existing session. The multiple connections can be used for failover and/or load balancing. The multi-connection information system provides a protocol for discovering a capability to establish multiple channels within a session and information about the available connections between two particular resources.
-
Citations
20 Claims
-
1. A computer-implemented method for initiating a session between a client and a server, the method comprising:
-
receiving, from an application, a first request to initiate a Server Message Block (SMB) session between the client and the server; selecting a first transport for sending commands between the client and server; initiating the first connection between the client and the server via the first transport, wherein the first connection is bound to the SMB session; determining, using the first connection, at least one additional available transport; and selecting a second transport from the at least one additional available transport for initiating a second connection between the client and the server, wherein the second transport is selected from the at least one additional available transport based, at least in part, on one or more characteristics associated with the server, wherein initiating the second connection comprises sending a second request to establish the second connection, the second request comprising a binding flag that indicates that the second connection is attached to the SMB session. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer system for providing multichannel connections in file system sessions, the system comprising:
a processor and memory configured to execute software instructions embodied within the following components; a session initiation component that receives requests to initiate a Server Message Block (SMB) session between a client and a server for sharing one or more resources; and a channel selection component that selects a first connection transport to initiate a first connection bond to the SMB session between the client and the server, wherein the channel selection component is further configured to select at least one additional transport that is discovered by a channel discovery component using the first connection, wherein the at least one additional transport is used to initiate a second connection between the client and the server using a binding flag that indicates the second connection is attached to the SMB session, and wherein the at least one additional transport is selected based, at least in part, on one or more characteristics associated with the server. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
18. A computer-readable storage device comprising instructions for adding a connection to a previously established session that includes a first connection between a client and a server, wherein the instructions, upon execution, cause a processor to perform a method, the method comprising:
-
detecting a condition for establishing an additional connection, different from the first connection, in the previously established Server Message Block (SMB) session, wherein the condition is associated with the first connection, and wherein the first connection is bound to the previously established SMB session; determining, using the first connection, at least one additional available transport; selecting an additional transport from the at least one additional available transport; and initiating the additional connection between the client and the server via the additional transport, wherein initiating the additional connection comprises sending a request to initiate the additional connection, the request comprising a binding flag that indicates that the additional connection is attached to the previously established SMB session. - View Dependent Claims (19, 20)
-
Specification