1. Field of the Invention
This invention relates generally to storage networks and, more specifically, to a network device on a storage network that uses referrals to successively authorize a client on multiple file servers.
2. Description of the Related Art
In a computer network, NAS (Network Attached Storage) file servers connected directly to the network provide an inexpensive and easily configurable solution for a storage network. These NAS file servers are self-sufficient because they contain file systems that allow interoperability with clients running any operating system and communication using open protocols. For example, a Unix-based client can use the NFS (Network File System) protocol by Sun Microsystems, Inc. of Santa Clara, Calif. and a Windows-based client can use CIFS (Common Internet File System) by Microsoft Corp. of Redmond, Wash. to access the same files on a NAS file server. Thus, NAS file servers provide true universal file access.
By contrast, more expensive and powerful SAN (Storage Area Network) file servers use resources connected by Fibre Channel on a back-end, or a dedicated network. A SAN file system is part of the operating system or an application running on the client. But heterogeneous client operating systems may require additional copies of each file to be stored on the storage network to ensure compatibility on the SAN file server. Additionally, communication between clients and file servers on a SAN use proprietary protocols and thus are typically provided by a common vendor. As a result, NAS file servers are preferred when price and ease of use are major considerations. However, the benefits of NAS storage networks over SAN storage networks also have drawbacks.
One drawback with NAS file servers is that there is no centralized control. Accordingly, each client must maintain communication channels between each of the NFS file servers separately. When NAS file servers are either added or removed from the storage network, each client must mount or unmount directories for the associated storage resources as appropriate. This is particularly inefficient when there are changes in hardware, but not in the particular files available on the network, such as when a failing NAS file server is swapped out for an identically configured back-up NAS file server.
However, when a proxy server is introduced between clients and NAS file servers, a number of issues arise. The proxy must form connections with multiple file servers, which requires authentication with each of them on behalf of the user on the client. This is problematic because the proxy must have a password, or hashing thereof, to respond to server challenges. The proxy could connect to one of the NAS file servers, and pass through an authentication challenge from the file server, and pass back a response from the client, but this technique only allows the client to connect to that one file server. In order to connect with additional file servers, the proxy would be required to responds to the file server challenges itself. A proxy serving numerous users would thus be required to store all of those passwords, thereby introducing an additional security risk. Furthermore, the proxy server would have to maintain password updates.
Additionally, the proxy server introduces protocol dialect issues. For each connection with a file server, the proxy server negotiates a single protocol dialect. The proxy server separately negotiates a single protocol dialect with each client, which can be different from that of the file server connection. As a result, these clients would not be able to communicate with the file server.
Therefore, what is needed is a robust network device to authorize a client with several file servers to provide secure transparency of decentralized file servers such as NAS file servers. Furthermore, the network device should enable communications between a client and a file server using different protocol dialects.
The present invention meets these needs by authenticating a client on multiple file servers for proxy services. In one embodiment, a NAS (Network Attached Storage) switch in the data path of a client and file servers on the storage network, enables proxy services by successively authenticating the client on the file servers using referrals. Advantageously, the client benefits from centralized services on a decentralized network while maintaining security standards.
An embodiment of a system configured according to the present invention comprises the NAS switch in communication with the client on a front-end of a storage network, and the file servers on a back-end. The NAS switch further comprises a connection manager to establish connections to the client and the file servers, a referral manager to redirect the client for successive authentications, and a transaction manager to perform data transfers with the file servers on behalf of the client. In one embodiment, the system components support DFS (Distributed File System). In another embodiment, the system components communicate using a protocol dialect that supports referral mechanisms such as NFSv4 (Network File Server version 4) or CIFS (Common Internet File System).
In another embodiment, the referral manager sends an error message to the client in response to a client transaction request. The error message triggers a client supporting DFS to respond with a referral request. The referral manager uses the referral request to redirect the client to one or more file servers which its user has yet to authenticate. To authenticate, the referral manager can pass through a challenge and response algorithm, a password, and other authentication information.
In one embodiment, the connection manager uses a proxy server to for authentication through short-term connections. This is because some clients will only authenticate once to a single IP address, so a different IP address must be presented to the client for further authentication. Once authentication is complete, the referral mechanism can associate the file server with the virtual server, and refer the client to the virtual server. The virtual server also serves as a single point of communication for both the client and the storage network. In another embodiment, the referral manager uses a cookie having a sharename to uniquely identify the client when redirecting from the proxy server to the virtual server.
In yet another embodiment, the transaction manager can limit communication protocol dialects to those commonly available between clients and file servers. For example, if a client or a file server supports protocol dialect A, but not B, then the transaction manager limits set-ups to A. The transaction manager can intercept negotiation messages and alter the choices according to those commonly available. In another embodiment, the transaction manager performs a protocol dialect translation service. Translations are necessary, for example, when the connection manager negotiates one protocol dialect with the client, and a different protocol dialect with the file server.
The present invention provides authentication of a client on multiple file servers for proxy services. A NAS (Network Attached Storage) switch in the data path of a client and NAS file servers on the storage network, successively authenticates a client on file servers using referrals. Some embodiments of a system are described with respect to
The processes, features, or functions of the present invention can be implemented by program instructions that execute in an appropriate computing device. Example computing devices include enterprise servers, application servers, workstations, personal computers, network computers, network appliances, personal digital assistants, game consoles, televisions, set-top boxes, premises automation equipment, point-of-sale terminals, automobiles, and personal communications devices. The program instructions can be distributed on a computer readable medium, storage volume, or the Internet. Program instructions can be in any appropriate form, such as source code, object code, or scripts.
The system 100 components are implemented in, for example, a personal computer with an x86-type processor executing an operating system and/or an application program, a workstation, a specialized NAS device with an optimized operating system and/or application program, a modified server blade, and the like. In one embodiment, the storage network 175 comprises a NAS storage network, using protocols such as NFSv4 (Network File System version 4) and CIFS (Common Internet File System) that preferably support referral mechanisms. In another embodiment, the storage network 175 comprises a combination of NAS, SAN (Storage Area Network), and other types of storage networks. In yet another embodiment the storage network 175 comprises a decentralized or proprietary storage network other than NAS.
The NAS switch 110 comprises an authentication module 112 to obtain permission for the NAS switch 110 to perform transactions on behalf of the client 140. In one embodiment, the authentication module 112 does so by successively referring the client 140 to present authentication credentials to different file servers 130; effectively tricking the client 140 to log-in with each file server. The authentication module 112 establishes connections with the client 140 and one of the file servers 130. When the client 140 sends a transaction request to a file server, the authentication module 112 returns an error message indicating the object is not available. The authentication module 112 then uses a subsequent referral request by the client 140 seeking to locate the object to redirect the client 140 to a different file server 130. The client 140 provides authentication information to the other file server in order to again request the object. This process repeats until the NAS switch 110 has logged in to all necessary file servers 130.
In one embodiment, the NAS switch 110 provides proxy services such as continuous transparency to the client 140 with respect to object management. Specifically, the NAS switch 110 can off-load tasks related to physical configurations, object management, object migration, object replication, efficient storage and/or other services on the storage network 175. Preferably, the NAS switch 110 emulates file server processes to the client 140 and emulates client processes to the file servers 130. Accordingly, the client 140 is unaware of the NAS switch 110 since the NAS switch 110 is able to redirect NAS requests intended for the file servers 130 to appropriate locations on the storage network 175. Thus, the client 140 submits object requests, such as file writes and directory reads, directly to the NAS switch 110. Likewise, the file servers 130 are unaware of the NAS switch 110 since the NAS switch 110 is able to resubmit requests, associated with NAS file handles, as if they originated from the client 140. To do so, the NAS switch 110 can use mapping, translating, bridging, packet forwarding, other network interface functionality, and other control processes to perform file handle switching, thereby relieving the client 140 of the need to track changes in a file's physical location.
To provide transparency, the NAS switch 110 can present a unified namespace to the client module 112. The NAS switch 110 creates the unified namespace from exported file system directories sent by the file servers 130. The exported file directories contain NAS file handles indicating object locations on the file server. To create compatibility with the client 140, the NAS switch 110 maps the file system directories to an internal switch file system containing switch file handles which it sends to the client 140. To request an object, the client 140 traverses an exported switch file system and selects a switch file handle which it sends to the NAS switch 110 along with a requested operation.
In one embodiment, the NAS switch 110 also tracks reconfigurations resulting from migration, replication and other object relocation processes (e.g. adding or removing file server capacity) with a nested system of tables, or information otherwise linked to the switch file systems. The switch file handles are static as they are persistent through the relocation processes, but the associated NAS file handles can be dynamic as they are selected depending upon an object's current location. To track various copies of an object, the file server module 114 maintains a directory server table, a file location cache, file handle migration table, and/or a file handle replication table corresponding to each file system that maps NAS file handles of migrated and replicated objects to locations on the storage network 175.
In general, NAS file handles uniquely identify objects, such as a directory file server, on the file servers 130 as long as that object exists. NAS file handles are file server specific, and are valid only to the file servers 130 that issued the file handles. The process of obtaining a file handle from a file name is called a look-up. The NAS file handle may be formatted according to protocols such as NFS or CIFS. By contrast, a switch file handle identifies a directory or file object independent of location, making it persistent through file replications, migrations, and other data transfers. The switch file can be a NAS file handle modified to refer to the NAS switch file system. An original NAS file handle refers to an initial object location.
Object transaction requests handled by the NAS switch 110 include, for example, directory and/or file reads, writes, creation, deletion, moving, and copying. As used herein, various terms are used synonymously to refer to a location of an object prior to replication (e.g., “primary”; “source”; “original”; and “first”) and various terms are used to refer to a location of the same object after migration (e.g., “replica”; “destination”; “substitute”; and “second”). Further embodiments of the NAS switch 110 and methods operating therein are described below.
The client 140 authenticates on the file servers 130 through the NAS switch 110 in order to access objects on the storage network 175. The client 140 can authenticate using a challenge and response algorithm. In one embodiment, the client 140 supports Kerberos authentication for further security against man-in-the-middle attacks. The client 140 can track down moved objects by requesting a referral from the file server 130 whenever the client receives an error message in response to requesting an object that has been moved elsewhere on the storage network 175. In one embodiment, the client 140 supports Distributed File System (DFS) which allows it to view the unified namespace provided by the NAS switch 110. The client 140 refers to objects in the unified namespace with switch file handles submitted to the NAS switch 110 with transaction requests. In one embodiment, the client 140 provides access to a storage network 175 other than a NAS storage network.
The network 195 facilitates data transfers between connected hosts (e.g., 110, 120, 130, 140). The connections to the network 195 may be wired and/or wireless, packet and/or circuit switched, and use network protocols such as TCP/IP (Transmission Control Protocol/Internet Protocol), IEEE (Institute of Electrical and Electronics Engineers) 802.11, IEEE 802.3 (i.e., Ethernet), ATM (Asynchronous Transfer Mode), or the like. The network 195 comprises, for example, a LAN (Local Area Network), WAN (Wide Area Network), the Internet, and the like. In one embodiment, the NAS switch 110 acts as a gateway between the client 140, connected to the Internet, and the file servers 130, connected to a LAN.
More specifically, the connection manager 210 of the present embodiment comprises a virtual server 212 and proxy servers 214. The virtual server 212 manages long-term communication channels enabled by short-term communications channels of the proxy servers 214. In one embodiment, the proxy servers are uniquely identifiable by the client 140 such as by having separate IP addresses, port numbers, or any other identifiers. Accordingly, each proxy server 214 can correspond to a file server 130 so that the client 140 interacts with the proxy server 214 in the same manner as it would directly interact with the file server 130. Once a connection is established the proxy server 214 associates the connection with the virtual server 212 so that the virtual server 212 becomes a single point of communications. In one embodiment, the proxy server 214 communication channels are torn down shortly thereafter. In another embodiment, the connection manager comprises physical communication accessories such as an Ethernet input/output port, communications software for managing logical ports, and the like.
The referral manager 220 redirects the client 140 from one proxy server 214 to another for authentication. When the referral manager 220 detects a client without authentication on one or more file servers 130, it can generate error messages in response to a transaction request. Furthermore, in response to referral requests by the client 140, the referral manager 220 can redirect the client 140 to the one or more file servers 130.
The transaction manager 230 performs transactions with the file servers 130 on behalf of the client 140. To do so, the transaction manager 230 performs file switching between client file handles to the unified namespace and NAS file handles used by the file servers 130. In one embodiment the transaction manager 230 translates between protocol dialects when the client connections and server connections have negotiated different protocol dialects. In another embodiment, the transaction manager 230 provides services that are not initiated by the client 140 such as file migration, file replication, and directory services.
In one embodiment, the connection manager 210 first establishes 310 a connection with a client 140 as discussed in greater detail with respect to
Once the communication channels have been properly established, the transaction module 230 performs 350 transactions with file servers 130 on behalf of clients 140 as discussed in greater detail with respect to
The proxy server 214 authenticates 450 the user on the first file server 130. In one embodiment, the file server 130 presents a challenge to the proxy server 214, which the proxy server 214 forwards to the client 140. The client 140 a response, such as a hashed bit string, back to the file server 130 through the proxy server 214. In another embodiment, the client 140 is required to send a password or other authentication information. As a result, the proxy server 214 successfully establishes a direct communication channel with the first file server 130 without storing the user's authentication information.
Since proxy server 214 connections may only be temporary, the proxy server 214 associates the first file server 214 with a long-term connection to the virtual server 212. In one embodiment, the proxy server 214 tears down the client connection after this transfer.
The next proxy server 214 receives 550 a transaction request from the client 140 based on the referral. The next proxy server 214 and the client 140 negotiate a protocol dialect since the client 140 treats connection as separate from the virtual server 212 connection. Additionally, the user needs to authenticate on the next file server 130, so the next proxy server 214 sends 560 a connection request. If not already connected, the next proxy server 214 negotiates 570 a protocol dialect with the next file server 570. In one embodiment, the protocol dialect differs from either the client 140 protocol dialect, or the previous file server 130 protocol dialect. The next proxy server 214 authenticates 580 the user on the next file server 130. Again, the next proxy server 214 associates the next file server 214 with the virtual server 212 for a long-term connection.
In the present embodiment, if the client 140 and file server 130 communicate with the virtual server 212 using different protocol dialects 630, the transaction manager 230 can perform 640 a translation service. Once the transaction request has been processed, the virtual server 212 sends 650 the transaction request to the file server 130. For data transfers such as a read operation, the transaction manager 230 performs 660 a data transfer by forwarding data received from the file server 130 to the requesting client 140.
In
The above description is included to illustrate the operation of the preferred embodiments and is not meant to limit the scope of the invention. The scope of the invention is instead be limited only by the following claims.
This application: claims priority under 35 U.S.C. §119(e) to U.S. Provisional Patent Application No. 60/503,190, filed on Sep. 15, 2003, entitled “METHOD AND APPARATUS To ENABLE PROXY SERVICES USING REFERRAL MECHANISM,” by Anand Iyengar et al.; is related to U.S. patent application Ser. No. 10/831,376, filed on Apr. 23, 2004, entitled “TRANSPARENT FILE MIGRATION USING NAMESPACE REPLICATION,” by Thomas K. Wong et al.; and is related to U.S. patent application Ser. No. 10/831,701, filed on Apr. 23, 2004, entitled “TRANSPARENT FILE REPLICATION USING NAMESPACE REPLICATION,” by Thomas K. Wong et al., each of which applications are hereby incorporated by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
5465335 | Anderson | Nov 1995 | A |
5689701 | Ault et al. | Nov 1997 | A |
5774715 | Madany et al. | Jun 1998 | A |
5832261 | Ishizaka et al. | Nov 1998 | A |
5890169 | Wong et al. | Mar 1999 | A |
5933825 | McClaughry et al. | Aug 1999 | A |
5951656 | Finnell | Sep 1999 | A |
6070254 | Pratt et al. | May 2000 | A |
6101508 | Wolff | Aug 2000 | A |
6192408 | Vahalia et al. | Feb 2001 | B1 |
6314460 | Knight et al. | Nov 2001 | B1 |
6341302 | Celis | Jan 2002 | B1 |
6353837 | Blumenau | Mar 2002 | B1 |
6389427 | Faulkner | May 2002 | B1 |
6408298 | Van et al. | Jun 2002 | B1 |
6442548 | Balabine et al. | Aug 2002 | B1 |
6453354 | Jiang et al. | Sep 2002 | B1 |
6473401 | Kong et al. | Oct 2002 | B1 |
6606690 | Padovano | Aug 2003 | B2 |
6615365 | Jenevein et al. | Sep 2003 | B1 |
6633887 | Suzuki et al. | Oct 2003 | B2 |
6694431 | Binding et al. | Feb 2004 | B1 |
6697846 | Soltis | Feb 2004 | B1 |
6711625 | Simpson | Mar 2004 | B1 |
6738883 | March et al. | May 2004 | B2 |
6931410 | Anderson et al. | Aug 2005 | B2 |
6938039 | Bober et al. | Aug 2005 | B1 |
6983379 | Spalink et al. | Jan 2006 | B1 |
6985956 | Luke et al. | Jan 2006 | B2 |
6996714 | Halasz et al. | Feb 2006 | B1 |
7054927 | Ulrich et al. | May 2006 | B2 |
7072917 | Wong et al. | Jul 2006 | B2 |
7089293 | Grosner et al. | Aug 2006 | B2 |
7092976 | Curran et al. | Aug 2006 | B2 |
7096253 | Vinson et al. | Aug 2006 | B2 |
7103628 | Neiman et al. | Sep 2006 | B2 |
7120666 | McCanne et al. | Oct 2006 | B2 |
7127477 | Duncombe et al. | Oct 2006 | B2 |
7237027 | Raccah et al. | Jun 2007 | B1 |
7254636 | O'Toole et al. | Aug 2007 | B1 |
7272613 | Sim et al. | Sep 2007 | B2 |
7272654 | Brendel | Sep 2007 | B1 |
7308473 | Thomas et al. | Dec 2007 | B1 |
7308709 | Brezak et al. | Dec 2007 | B1 |
7313579 | Murotani | Dec 2007 | B2 |
7324995 | Findleton et al. | Jan 2008 | B2 |
7346664 | Wong et al. | Mar 2008 | B2 |
7386610 | Vekiarides | Jun 2008 | B1 |
7441011 | Lin et al. | Oct 2008 | B2 |
7475142 | Sharma et al. | Jan 2009 | B2 |
7512673 | Miloushev et al. | Mar 2009 | B2 |
7562110 | Miloushev et al. | Jul 2009 | B2 |
7587422 | Wong et al. | Sep 2009 | B2 |
7587471 | Yasuda et al. | Sep 2009 | B2 |
7720796 | Wong et al. | May 2010 | B2 |
7831641 | Wong et al. | Nov 2010 | B2 |
7844646 | Deshmukh et al. | Nov 2010 | B1 |
8131689 | Tsirigotis et al. | Mar 2012 | B2 |
8180843 | Wong et al. | May 2012 | B2 |
8190741 | Wong et al. | May 2012 | B2 |
8195627 | Wong et al. | Jun 2012 | B2 |
20020013832 | Hubbard | Jan 2002 | A1 |
20020111929 | Pudipeddi et al. | Aug 2002 | A1 |
20020120763 | Miloushev et al. | Aug 2002 | A1 |
20020133491 | Sim et al. | Sep 2002 | A1 |
20020154645 | Hu et al. | Oct 2002 | A1 |
20020161855 | Manczak et al. | Oct 2002 | A1 |
20020184244 | Hsiao et al. | Dec 2002 | A1 |
20020199060 | Peters et al. | Dec 2002 | A1 |
20030037061 | Sastri et al. | Feb 2003 | A1 |
20030046270 | Leung et al. | Mar 2003 | A1 |
20030046335 | Doyle et al. | Mar 2003 | A1 |
20030056112 | Vinson et al. | Mar 2003 | A1 |
20030110263 | Shillo | Jun 2003 | A1 |
20030120948 | Schmidt et al. | Jun 2003 | A1 |
20030126247 | Strasser et al. | Jul 2003 | A1 |
20030140051 | Fujiwara et al. | Jul 2003 | A1 |
20030154236 | Dar et al. | Aug 2003 | A1 |
20030177178 | Jones et al. | Sep 2003 | A1 |
20030182313 | Federwisch et al. | Sep 2003 | A1 |
20030195903 | Manley et al. | Oct 2003 | A1 |
20030204613 | Hudson et al. | Oct 2003 | A1 |
20030204670 | Holt et al. | Oct 2003 | A1 |
20030220899 | Numanoi et al. | Nov 2003 | A1 |
20030220985 | Kawamoto et al. | Nov 2003 | A1 |
20040010714 | Stewart | Jan 2004 | A1 |
20040024963 | Talagala et al. | Feb 2004 | A1 |
20040054748 | Ackaouy et al. | Mar 2004 | A1 |
20040078465 | Coates et al. | Apr 2004 | A1 |
20040088297 | Coates et al. | May 2004 | A1 |
20040103104 | Hara et al. | May 2004 | A1 |
20040117438 | Considine et al. | Jun 2004 | A1 |
20040133577 | Miloushev et al. | Jul 2004 | A1 |
20040133606 | Miloushev et al. | Jul 2004 | A1 |
20040133650 | Miloushev et al. | Jul 2004 | A1 |
20040133652 | Miloushev et al. | Jul 2004 | A1 |
20040139167 | Edsall et al. | Jul 2004 | A1 |
20040153481 | Talluri | Aug 2004 | A1 |
20040186849 | Enko et al. | Sep 2004 | A1 |
20040267752 | Wong et al. | Dec 2004 | A1 |
20040267831 | Wong et al. | Dec 2004 | A1 |
20050033932 | Pudipeddi et al. | Feb 2005 | A1 |
20050055402 | Sato | Mar 2005 | A1 |
20050080981 | Archambault et al. | Apr 2005 | A1 |
20050188211 | Scott et al. | Aug 2005 | A1 |
20050198062 | Shapiro | Sep 2005 | A1 |
20050262102 | Anderson et al. | Nov 2005 | A1 |
20060080371 | Wong et al. | Apr 2006 | A1 |
20060129627 | Phillips et al. | Jun 2006 | A1 |
20060161746 | Wong et al. | Jul 2006 | A1 |
20060253501 | Langan et al. | Nov 2006 | A1 |
20060271598 | Wong et al. | Nov 2006 | A1 |
20070024919 | Wong et al. | Feb 2007 | A1 |
20070074207 | Bates et al. | Mar 2007 | A1 |
20070136308 | Tsirigotis et al. | Jun 2007 | A1 |
20080114854 | Wong et al. | May 2008 | A1 |
Number | Date | Country |
---|---|---|
0 108 338 | May 1984 | EP |
0 926 585 | Jun 1999 | EP |
1 209 556 | May 2002 | EP |
1 311 122 | May 2003 | EP |
1 396 789 | Mar 2004 | EP |
HEI 4-113432 (A) | Apr 1992 | JP |
HEI 04-299747 | Oct 1992 | JP |
HEI 10-247155 | Sep 1998 | JP |
2001-075843 | Mar 2001 | JP |
2004-054607 | Feb 2004 | JP |
2004-110290 | Apr 2004 | JP |
2005502096 | Jan 2005 | JP |
WO2004053677 | Jun 2004 | WO |
2004097571 | Nov 2004 | WO |
2004097572 | Nov 2004 | WO |
2004097624 | Nov 2004 | WO |
2004097686 | Nov 2004 | WO |
2005029251 | Mar 2005 | WO |
2006039689 | Apr 2006 | WO |
WO2006080371 | Aug 2006 | WO |
2007002855 | Jan 2007 | WO |
2007041456 | Apr 2007 | WO |
Entry |
---|
Anderson, D.C. et al., “Interposed Request Routing for Scalable Network Storage,” ACM Transactions on Computer Systems, Feb. 2002, vol. 20, No. 1, pp. 1-24. |
Bright, J.D. et al., “A Scalable Architecture for Clustered Network Attached Storage,” Twentieth IEEE/Eleventh NASA Goddard Conference on Mass Storage Systems & Technologies, Apr. 7-10, 2003, 12 pages, Paradise Point Resort, San Diego, CA, USA. |
Goldick, J., “Retry of Extending Networking Design Notes,” PSC, Carnegie-Mellon University, Feb. 1995, 42 pages. |
“Leveraging the Benefits of the EMC CLARiiON IP4700 Network File Server With the Oracle8i Database,” an Engineering White Paper, Mar. 5, 2002, EMC Corporation. |
“Notification of Transmittal of the Intemational Search Report and The Written Opinion of The International Searching Authority, or The Declaration,” for PCT/US04/12844, Mar. 14, 2005, 14 pages. |
Notification of Transmittal of the International Search Report and the Written Opinion, PCT/US04/12841, Oct. 13, 2004, 9 pages. |
Notification of Transmittal of the International Search Report and Written Opinion, PCT/US04/12846, Sep. 28, 2004, 8 pages. |
Notification of Transmittal of the International Search Report and Written Opinion, PCT/US04/12847, Nov. 3, 2004, 7 pages. |
Notification of International Search Report and Written Opinion, PCT/US04/30180, Mar. 27, 2006, 8 pages. |
Office Action mailed Jan. 3, 2007 for U.S. Appl. No. 10/832,785. |
Final Office Action mailed Aug. 31, 2007 for U.S. Appl. No. 10/832,785. |
Office Action mailed Dec. 18, 2006 for U.S. Appl. No. 10/831,701. |
International Search Report mailed May 8, 2007 for PCT Application No. US/2006/25430. |
Written Opinion mailed May 8, 2007 for PCT Application No. US/2006/25430. |
Final Office Action mailed Sep. 12, 2007, for U.S. Appl. No. 10/831,701. |
Office Action mailed Jan. 11, 2008, for U.S. Appl. No. 11/324,845. |
Office Action mailed Mar. 23, 2007, for U.S. Appl. No. 10/831,376. |
Final Office Action mailed Aug. 10, 2007, for U.S. Appl. No. 10/831,376. |
Office Action, U.S. Appl. No. 11/241,554, mailed Aug. 8, 2007. |
Notice of Allowance mailed Oct. 22, 2007, for U.S. Appl. No. 10/831,376. |
Allowed Claims, U.S. Appl. No. 10/831,376, dated Oct. 22, 2007. |
Office Action, U.S. Appl. No. 10/832,785, mailed May 28, 2008. |
Office Action, U.S. Appl. No. 10/831,701, mailed Jun. 25, 2008. |
Final Office Action, U.S. Appl. No. 11/324,845, mailed Sep. 5, 2008, 2008. |
Final Office Action, U.S. Appl. No. 11/241,554, mailed Jul. 25, 2008. |
International Search Report sent Sep. 30, 2008 for PCT Application No. PCT/US05/35624. |
Written Opinion sent Sep. 30, 2008 for PCT Application No. PCT/US05/35624. |
U.S. Appl. No. 60/478,154, filed Apr. 24, 2003. |
U.S. Appl. No. 60/465,578, filed Apr. 24, 2003. |
U.S. Appl. No. 60/465,579, filed Apr. 24, 2003. |
U.S. Appl. No. 60/615,002, filed Sep. 30, 2004. |
U.S. Appl. No. 60/641,217, filed Dec. 31, 2004. |
Office Action mailed Feb. 3, 2005 for U.S. Appl. No. 10/832,927. |
Office Action mailed Jun. 22, 2005 for U.S. Appl. No. 10/832,927. |
Notice of Allowance mailed Feb. 9, 2006 for U.S. Appl. No. 10/832,927. |
Allowed Claims, U.S. Appl. No. 10/832,927, dated Feb. 9, 2006. |
U.S. Appl. No. 60/465,580, filed Apr. 24, 2003. |
Final Office Action mailed Jan. 5, 2009 for U.S. Appl. No. 10/832,785. |
Final Office Action, U.S. Appl. No. 10/831,701, mailed Jan. 5, 2009. |
Office Action mailed Feb. 9, 2009, for U.S. Appl. No. 11/324,845. |
European Search Report dated Dec. 4, 2008 for EP Patent Application No. 04750678.7. |
Office Action, U.S. Appl. No. 11/241,554, mailed Jan. 8, 2009. |
International Preliminary Report on Patentability dated Apr. 10, 2008 for PCT Application No. PCT/US2006/038361. |
Allowed Claims for U.S. Appl. No. 10/831,701. |
Final Office Action issued for U.S. Appl. No. 11/241,554, mailed Aug. 19, 2009. |
Examiner U.S. Appl. No. 11/241,554, mailed Sep. 30, 2009. |
Office Action issued for U.S. Appl. No. 11/395,118, mailed Jun. 10, 2009. |
Office Action issued for U.S. Appl. No. 11/537,997, mailed Sep. 25, 2009. |
European Office Action issued for EP Patent Application No. 04750678.7, dated Apr. 9, 2009. |
Notice of Allowance mailed Mar. 16, 2010, for U.S. Appl. No. 11/324,845. |
Japanese Office Action dated Dec. 22, 2009 for JP Patent Application No. 2006-513342. |
Yamakawa et al., “NAS Switch: Virtualized Integration Techniques of NFS Server”, Engineering Research Report of Institute of Electronics, Information and Communication Engineers published by Institute of Electronics, Information and Communication Engineers, Japan, Aug. 12, 2002, vol. 102, No. 275, pp. 13-18. Japan. |
Notice of Allowance with Examiner Interview and Amendment dated Dec. 29, 2009 for U.S. Appl. No. 10/832,785. |
U.S. Appl. No. 60/503,190, filed Sep. 15, 2003, Wong et al. |
Notice of Allowance with Examiner Interview and Amendment dated Apr. 21, 2010 for U.S. Appl. No. 10/832,785. |
Notice of Allowance mailed Dec. 2, 2009, for U.S. Appl. No. 11/324,845. |
Office Action, U.S. Appl. No. 11/241,554, mailed Feb. 5, 2010. |
Final Office Action, U.S. Appl. No. 11/395,118, mailed Feb. 18, 2010. |
Office Action U.S. Appl. No. 11/537,997, dated Apr. 15, 2010. |
International Preliminary Report on Patentability dated Mar. 5, 2009, PCT Application No. PCT/US2005/035624. |
European Office Action dated Apr. 9, 2009 for EP Patent Application No. 04750678.7. |
European Office Action dated Feb. 22, 2010 for EP Patent Application No. 04750678.7. |
US Notice of Allowance dated Jul. 6, 2011 issued in U.S. Appl. No. 11/241,554. |
US Office Action dated Mar. 11, 2011 issued in U.S. Appl. No. 11/395,118. |
US Office Action dated Mar. 31, 2011 issued in U.S. Appl. No. 11/537,997. |
US Final Office Action dated Feb. 25, 2011 issued in U.S. Appl. No. 12/019,582. |
US Notice of Allowance dated Jun. 15, 2011 issued in U.S. Appl. No. 12/019,582. |
US Office Action dated Jan. 20, 2011 issued in U.S. Appl. No. 11/478,998. |
US Office Action dated Jul. 8, 2011 issued in U.S. Appl. No. 11/478,998. |
European Examination Report dated Nov. 9, 2010 issued in 04 750 678.7-1245. |
PCT International Preliminary Report on Patentability and Written Opinion dated Jan. 9, 2008 issued in PCT/US2006/25430. |
European Extended Search Report, Supplementary Search Report and Search Opinion dated Feb. 25, 2011 issued in EP 06 785 872.0. |
Cams et al., (Oct. 1, 2000) “PVFS: A Parallel File System for Linux Clusters”, Proceedings of the 4th Annual Linux Showcase and Conference, vol. 4, pp. 317-327, XP002532238, USENIX ASSOC, Atlanta, Georgia. |
Sheth et al., (Dec. 17, 1998) “Data structure distribution and multi-threading of Linux file system for multiprocessors”, 5th International Conference on High Performance Computing, 1998 (HIPC '98); Madras, India Dec. 17-20, 1998, IEEE Comput. Soc, US, pp. 97-104, XP010317644, DOI: DOI:10.1109/HIPC.1998.737976. |
US Notice of Allowance dated Oct. 28, 2011 issued in U.S. Appl. No. 11/241,554. |
US Notice of Allowance dated Oct. 19, 2011 issued in U.S. Appl. No. 11/395,118. |
US Notice of Allowance dated Sep. 30, 2011 issued in U.S. Appl. No. 12/019,582. |
European Summons to attend oral proceedings dated Oct. 6, 2011 issued in EP Patent Application No. 04 750 678.7-1245. |
European Extended Search Report, supplementary European Search Report, and European Search Opinion dated Jul. 26, 2011 issued in EP 05 802 942.2. |
Japanese Office Action (Notice of Grounds for Rejection) dated May 10, 2011 issued in JP 2007-534880. |
Katsurashima et al. (2003) “Design and Evaluation of CIFS Server Virtualization Method”, Technical Research Report (IEIC), The Institute of Electronics Information and Communication Engineers, 103(248): 73-78. |
US Office Action Final dated Jul. 29, 2011 issued in U.S. Appl. No. 11/395,118. |
US Notice of Allowance dated Aug. 5, 2011 issued in U.S. Appl. No. 11/537,997. |
US Advisory Action dated Nov. 21, 2007 issued in U.S. Appl. No. 10/832,785. |
US Notice of Allowance and Examiner-Initiated Interview Summary dated Aug. 9, 2010 issued in U.S. Appl. No. 10/832,785. |
US Advisory Action dated Nov. 27, 2007 issued in U.S. Appl. No. 10/831,701. |
US Advisory Action dated Nov. 21, 2008 issued in U.S. Appl. No. 11/324,845. |
US Examiner Interview Summary Application dated Mar. 31, 2009 issued in U.S. Appl. No. 11/241,554. |
US Office Action Final dated Jul. 21, 2010 issued in U.S. Appl. No. 11/241,554. |
US Examiner Interview Summary dated Sep. 14, 2010 issued in U.S. Appl. No. 11/241,554. |
US Office Action (Examiner Interview Summary) dated Jul. 19, 2010 issued in U.S. Appl. No. 11/537,997. |
US Office Action dated Sep. 22, 2010 issued in U.S. Appl. No. 12/019,582. |
U.S. Appl. No. 60/667,567, filed Mar. 31, 2005, Wong et al. |
U.S. Appl. No. 60/722,465, filed Sep. 30, 2005, Tsirigotis et al. |
PCT International Search Report dated Aug. 29, 2007 issued in PCT/US2006/038361. |
PCT International Preliminary Report on Patentability and Written Opinion dated Aug. 29, 2007 issued in PCT/US2006/038361. |
Chinese First Office Action dated Nov. 20, 2009 issued in CN Patent Application No. 200680032142.X. |
European Supplementary Search Report dated Jun. 4, 2010 issued in EP 06 81 5981. |
US Allowed Claims, U.S. Appl. No. 11/241,554, dated Oct. 28, 2011. |
US Notice of Allowance dated Feb. 3, 2012 issued in U.S. Appl. No. 11/241,554. |
US Allowed Claims, U.S. Appl. No. 11/395,118, dated Oct. 19, 2011. |
US Notice of Allowance dated Feb. 3, 2012 issued in U.S. Appl. No. 11/395,118. |
US Notice of Allowance dated Nov. 28, 2011 issued in U.S. Appl. No. 11/537,997. |
US Allowed Claims, U.S. Appl. No. 12/019,582, dated Jun. 15, 2011. |
US Notice of Allowance dated Jan. 13, 2012 issued in U.S. Appl. No. 12/019,582. |
US Office Action Final dated Dec. 22, 2011 issued in U.S. Appl. No. 11/478,998. |
European Result of Consultation dated Feb. 21, 2012 issued in EP Patent Application No. 04 750 678.7-1245. |
European Decision to Refuse an application and Minutes of Oral Proceedings dated Feb. 23, 2012 issued in EP Patent Application No. 04 750 678.7-1245. |
Japanese Decision of Rejection (Final Rejection) dated Jun. 5, 2012 issued in JP 2007-534880. |
Office Action issued for U.S. Appl. No. 10/832,785, mailed Jun. 8, 2009. |
Final Office Action issued for U.S. Appl. No. 10/831,701, mailed Jan. 5, 2009. |
Notice of Allowance issued for U.S. Appl. No. 10/831,701, mailed May 14, 2009. |
Notice of Allowance issued for U.S. Appl. No. 11/324,845, mailed Sep. 21, 2009. |
Number | Date | Country | |
---|---|---|---|
20050125503 A1 | Jun 2005 | US |
Number | Date | Country | |
---|---|---|---|
60503190 | Sep 2003 | US |