Described is a data communication protocol, in which a client and server negotiate in a manner that does not require the client to retry negotiation when servers are not capable of the client-desired protocol. In one example implementation, the desired protocol is SMB 2.0 or greater. The protocol de
Described is a data communication protocol, in which a client and server negotiate in a manner that does not require the client to retry negotiation when servers are not capable of the client-desired protocol. In one example implementation, the desired protocol is SMB 2.0 or greater. The protocol describes a create command with possibly additional context data attached for built-in extensibility, and a compound command comprising a plurality of related commands or unrelated commands. A multi-channel command requests data transfer on a separate data channel, a signed capability verification may be used to ensure that a secure connection is established, and the protocol provides the ability to transfer extended error data from the server in response to a request.
대표청구항▼
1. A computer-implemented method for initiating a session allowing multiple connections in a file system and receiving transport information, the method comprising: receiving a request to initiate a session between a client and a server;determining available transports for establishing a connection
1. A computer-implemented method for initiating a session allowing multiple connections in a file system and receiving transport information, the method comprising: receiving a request to initiate a session between a client and a server;determining available transports for establishing a connection between the client and the server;selecting an initial transport for sending commands between the client and server;establishing a first connection via the initial transport;binding the first connection to the session;establishing a second connection via a second transport of the available transports;binding the second connection to the session;sending a command received from the application through the first connection bound to the session, the command requesting data; andreceiving, in response to the command, the requested data via the second connection. 2. The method of claim 1, wherein receiving the request comprises receiving a request from an application to access a file stored remotely on the server using Server Message Block (SMB) protocol. 3. The method of claim 1, wherein receiving the request comprises setting up a session and sending one or more packets to the server to negotiate available dialects of the network protocol used to communicate between the client and server. 4. The method of claim 1, wherein determining available transports comprises identifying one or more addresses of the server. 5. The method of claim 1, wherein determining available transports comprises querying a client operating system to identify available network interfaces. 6. The method of claim 1, wherein determining available transports comprises querying sending a capabilities request to the server to identify available network interfaces on the server. 7. The method of claim 1, wherein selecting the initial transport comprises selecting based on application-specified criteria that establishes the application's connection preferences. 8. The method of claim 1, wherein establishing the connection comprises sending a negotiate message over the selected transport that sets up a Server Message Block (SMB) connection. 9. The method of claim 1, wherein binding the first connection comprises preparing the first connection for use by the session for sending commands from the client to the server. 10. The method of claim 1, wherein binding the first connection comprises storing information for ending the session. 11. The method of claim 1, wherein sending the command comprises selecting among multiple inbound connections to choose one or more connections suited to handling the current command. 12. The method of claim 1, wherein the command includes an indication to the server to return the requested data via the second connection. 13. A nontransitory computer-readable storage device comprising instructions which, when executed by a processor, cause the processor to perform a method, the method comprising: receiving a request to initiate a session between a client and a server;determining available transports for establishing a connection between the client and the server;selecting an initial transport for sending commands between the client and server;establishing a first connection via the initial transport;binding the first connection to the session;establishing a second connection via a second transport of the available transports;binding the second connection to the session;sending a command received from the application through the first connection bound to the session, the command requesting data; andreceiving, in response to the command, the requested data via the second connection. 14. A system comprising: at least one processor;memory, operatively connected to the at least one processor, and containing instruction that, when executed by the at least one processor, cause the at least one processor to perform a method, the method comprising: receiving a request to initiate a session between a client and a server;determining one or more available transports available for establishing a connection between the client and the server;selecting an initial transport for sending commands between the client and server;establishing a connection via the selected transport; binding the established connection to the initiated session; andsending a command received from the application through the established connection bound to the session. 15. The system of claim 14, wherein receiving the request comprises receiving a request from an application to access a file stored remotely on the server using Server Message Block (SMB) protocol. 16. The system of claim 14, wherein receiving the request comprises setting up a session and sending one or more packets to the server to negotiate available dialects of the network protocol used to communicate between the client and server. 17. The system of claim 14, wherein the command includes an indication to the server to return the requested data via the second connection. 18. The system of claim 14, wherein determining available transports comprises identifying one or more addresses of the server. 19. The system of claim 14, wherein determining available transports comprises querying a client operating system to identify available network interfaces. 20. The system of claim 14, wherein determining available transports comprises querying sending a capabilities request to the server to identify available network interfaces on the server.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (94)
Araujo,Kenneth S.; Best,Reginald P.; Douglas,Christopher P.; Heitmueler,Devin J.; Zhang,Siuling C., 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.
Choi,Moon jeong, Apparatus and method for controlling a device in a home network based upon a batch command that is generated when a name of the batch command, a name of the device, a service of the device and detail.
Geen, David William; Ravishankar, Geetha; Joshi, Satish; Denbar, Melissa L.; Willaford, IV, William Bateman; Zhang, Zhiwei, Apparatus and method for providing server state and attribute management for multiple-threaded voice enabled web applications.
Baird Robert (San Jose CA) Eisenberger George (White Plains NY) Lett Alexander S. (Mahopac NY) Myers James J. (San Francisco CA) Tetzlaff William H. (Mount Kisco NY) Unger Jay G. (Mohegan Lake NY), Concurrency management using version identification of shared data as a supplement to use of locks.
Kruse, David; George, Mathew; Mohamed, Ahmed; Madhavarapu, Pradeep Jnana; Subbarayan, Sundar, Data communication protocol including negotiation and command compounding.
Dutcher David Paul ; Lenharth Scott Alan ; Rolette ; Jr. James Michael ; Smith Stanley Alan, Dynamic creation of a user account in a client following authentication from a non-native server domain.
Kandasamy David R. (San Ramon CA) Butler Mitchel B. (Sunnyvale CA) Foss Andrew L. (Yarrow Point WA) Peterson Bradley M. (Los Altos CA) Patwardhan Chintamani M. (Sunnyvale CA) Ribble Michael T. (Los G, Fault tolerant NFS server system and mirroring protocol.
Eshel Marc M. (Tarrytown NY) Hunt Guerney D. H. (Ithaca NY) Jones Donald N. (Vestal NY) Meyer Christopher (Vestal NY) Schwartz Frederick A. (Binghamton NY), File manager for files shared by heterogeneous clients.
Xiaoye Jiang ; Uresh K. Vahalia ; Uday Gupta ; Percy Tzelnic, File server system using connection-oriented protocol and sharing data sets among data movers.
Xu Yikang ; Vahalia Uresh K. ; Jiang Xiaoye ; Gupta Uday ; Tzelnic Percy, 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.
Walker Bruce J. ; Byrne John L. ; Chow William W. ; Gertwagen John A. ; Ramirez Laura L. ; Zafman David B., Filesystem failover in a single system image environment.
Kerpelman,Daniel I.; Frowein,Richard L.; Zettel,Hubert Anthony; Kohli,James F.; Heinen,John, Integrated interactive service to a plurality of medical diagnostic systems.
Zimmet Carol (Nashua NH) Keefe Mary F. (Jamaica Plain MA) Amico Richard J. (Hollis NH), Local computer participating in mail delivery system abstracts from directory of all eligible mail recipients only serve.
Johnson Donavon W. (Georgetown TX) Morgan Stephen P. (Mahopac NY) Smith Todd A. (Austin TX), Maintenance of file attributes in a distributed data processing system.
Basani,Vijay R.; Mangipudi,Krishna; Murach,Lynne M.; Karge,Leroy R.; Revsin,Vitaly S.; Bestavros,Azer; Crovella,Mark E.; LaRosa,Domenic J., Method and apparatus for election of group leaders in a distributed network.
Hendricks David (Menlo Park CA) Adams Evan (San Leandro CA) Lyon Tom (Palo Alto CA) Miller Terrence C. (Menlo Park CA), Method and apparatus for translucent file system.
Obermarck Ronald L. (Los Altos CA) Strickland Jimmy P. (Saratoga CA) Watts Vern L. (Los Gatos CA), Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment.
Rubin Darryl E. (Redmond WA) Masden Kenneth E. (Redmond WA) King John W. (Kirkland WA), Method and system for network communications using raw mode protocols.
Rubin Darryl E. (Redmond WA) Masden Kenneth E. (Redmond WA) King John W. (Kirkland WA), Method and system for network communications using raw mode protocols.
Masden Kenneth E. (Redmond WA) Smirl Jon D. (Kirkland WA) King John W. (Kirkland WA) Rubin Darryl E. (Redmond WA), Method and system for open file caching in a networked computer system.
Baird Robert (San Jose CA) Berbec Robert R. (New York NY) Bozman Gerald P. (Oakland NJ) Lett Alexander S. (Mahopac NY) Myers James J. (San Francisco CA) Tetzlaff William H. (Mount Kisco NY) Unger Jay, Method for dynamically expanding and rapidly accessing file directories.
Crossley James F. (Fulton County GA), Method for multiple programs management within a network having a server computer and a plurality of remote computers.
Donohoo Theodore J. (1027 Evergreen Trail Lino Lakes MN 55014), Method for transferring data files between computers in a network response to generalized application program instructio.
Marcotte, Scott Thomas, 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.
Meriwether Teresa Anne ; Volkmar Peter Williams ; Shields Ian Beaumont, Methods, system and computer program products for establishing a session between a host and a terminal using a reduced p.
Blakely Frank W. (Roseville CA) Hall Guy T. (Loomis CA) Winkleblack Sherry (Orangevale CA) Scaccia Jim (Roseville CA) Iwamoto Shinichi (Ohmiya JPX) Nojiri Minoru (Zushi CA JPX) Umezawa Yukihiko (Sacr, Remote processing of a plurality of commands during a session between a first computer and a host computer.
Bly Sara A. (Mountain View CA) Farrand A. Brady (Berkeley CA) Hodges Jeffery D. (Newark CA) Kupfer Michael D. (Mountain View CA) Lewis Brian T. (Palo Alto CA) Maybury William J. (Torrance CA) Tallan , Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstat.
He, Haixiang; Fedyk, Donald; Dondeti, Lakshminath, Scalable, distributed method and apparatus for transforming packets to enable secure communication between two stations.
Karp Alan H. (Palo Alto CA) Hao Ming C. (Los Altos Hills CA) Gupta Rajiv (Los Altos CA), Sender-selective send/receive order processing on a per message basis.
Parsons ; Jr. John E. ; Graziadio Bradley J. ; Momoh Oshoma, Server operating system for supporting multiple client-server sessions and dynamic reconnection of users to previous sessions using different computers.
Johnson Donavon W. (Georgetown TX) Neuman Grover H. (Austin TX) Sauer Charles H. (Austin TX) Shaheen-Gouda Amal A. (Austin TX) Smith Todd A. (Austin TX), System and method for accessing remote files in a distributed networking environment.
Kells Timothy Roger ; Peebles Thomas Frank, System and method for supporting distributed computing mechanisms in a local area network server environment.
Henson Larry W. (Austin) Shaheen-Gouda Amal A. (Austin) Smith Todd A. (Austin TX), System for file and record locking between nodes in a distributed data processing environment maintaining one copy of ea.
Kaufman Charles W. (Northborough MA) Pearlman Radia J. (Acton MA) Gasser Morrie (Hopkinton MA), System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authe.
Roger Gregory Hathorn ; Bret Wayne Holley ; James Lincoln Iskiyan, System, method, and program for handling failed connections in an input/output (I/O) system.
Ian Beaumont Shields ; Peter Williams Volkmar, Systems, methods and computer program products for employing presumptive negotiation in a data communications protocol.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.