Apparatus and method for sharing data and routing messages between a plurality of workstations in a local area network
First Claim
1. An apparatus for sharing data and routing messages between workstations in a local area network, comprising:
- at least first and second mass data storage devices adapted to store shared data;
an interconnect; and
at least first and second processing nodes respectively associated with said first and second mass data storage devices and adapted to communicate with each other via said interconnect, said first and second processing nodes further adapted to respectively communicate with first and second workstations via first and second links that are independent of said interconnect and each other,wherein when said first workstation requests said shared data and said shared data is not present in said first processing node, said first processing node is adapted to request said shared data from said second processing node via said interconnect, and said second processing node is adapted to supply said shared data via said interconnect,and wherein said first processing node is further adapted to forward a message addressed to said second workstation from said first workstation to said second processing node via said interconnect.
4 Assignments
0 Petitions
Accused Products
Abstract
A parallel local area network server is capable of sharing data and routing messages between workstations in a local area network. An apparatus according to the invention includes a plurality of processing nodes, each constituted by at least a single data processor, and an interconnect by which the processing nodes communicate. A plurality of mass storage devices are associated with the processing nodes, and a plurality of workstation computers are connected to the processing nodes. Each processing node includes is adapted to route messages to workstation computers associated with other processing nodes and to access data located both locally and at data storage devices associated with other processing nodes. A method according to the invention includes receiving a message at a first processing node and determining if the message is directed to a workstation computer at a second processing node and sending the message to the second processing node for subsequent delivery to the workstation computer. If the message includes a request for a specific data, a second determination is made if the specific data is in the local cache memory of the first processing node. If the specific data is not in the local cache memory, determination is made if the specific data is in a mass storage device at the first processing node, and if so the mass storage device is accessed to obtain the specific data. If the specific data is not in the local mass storage device, a message is forwarded to a remote processing node to request the specific data. Once this data is obtained, it is sent to the requesting workstation computer. The network server system according to the invention thus provides the functions of a file server and a local area network switch, thereby eliminating performance limitations associated with overloaded connections between file servers and LAN switches in conventional local area networks.
-
Citations
23 Claims
-
1. An apparatus for sharing data and routing messages between workstations in a local area network, comprising:
-
at least first and second mass data storage devices adapted to store shared data; an interconnect; and at least first and second processing nodes respectively associated with said first and second mass data storage devices and adapted to communicate with each other via said interconnect, said first and second processing nodes further adapted to respectively communicate with first and second workstations via first and second links that are independent of said interconnect and each other, wherein when said first workstation requests said shared data and said shared data is not present in said first processing node, said first processing node is adapted to request said shared data from said second processing node via said interconnect, and said second processing node is adapted to supply said shared data via said interconnect, and wherein said first processing node is further adapted to forward a message addressed to said second workstation from said first workstation to said second processing node via said interconnect. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 13, 16, 22)
-
-
10. An apparatus for sharing data and routing messages between workstations in a local area network, comprising:
-
at least first and second mass data storage devices adapted to store shared data; an interconnect; and at least first and second processing nodes respectively associated with said first and second mass data storage devices and adapted to communicate with each other via said interconnect, said first and second processing nodes further adapted to respectively communicate with first and second workstations via first and second links that are independent of said interconnect and each other, wherein when said first workstation requests said shared data and said shared data is not present in said first processing node, said first processing node is adapted to request said shared data from said second processing node via said interconnect, and said second processing node is adapted to supply said shared data via said interconnect, and wherein said first processing node is further adapted to forward a message addressed to said second workstation from said first workstation to said second processing node via said interconnect, and wherein said first and second processing nodes include first and second cache memories, said first processing node storing a copy of said shared data in said first cache memory when said second processing node supplies said shared data. - View Dependent Claims (11, 12)
-
-
14. An apparatus for sharing data and routing messages between workstations in a local area network, comprising:
-
at least first and second mass data storage devices adapted to store shared data; an interconnect; and at least first and second processing nodes respectively associated with said first and second mass data storage devices and adapted to communicate with each other via said interconnect, said first and second processing nodes further adapted to respectively communicate with first and second workstations via first and second links that are independent of said interconnect and each other, wherein when said first workstation requests said shared data and said shared data is not present in said first processing node, said first processing node is adapted to request said shared data from said second processing node via said interconnect, and said second processing node is adapted to supply said shared data via said interconnect, and wherein said first processing node is further adapted to forward a message addressed to said second workstation from said first workstation to said second processing node via said interconnect, and wherein the total shared data of said local area network is divided between at least first and second data sets, said first data set being different than said second data set, said first and second mass storage devices respectively storing said first and second data sets, and wherein said first and second processing nodes include first and second cache memories, said first processing node storing a copy of said shared data in said first cache memory when said second processing node supplies said shared data.
-
-
15. A method for sharing data and routing messages between workstations in a local area network, comprising:
-
receiving a message at a first processing node from a first workstation that communicates with said first processing node via a first link; determining if said message is addressed to a second workstation that communicates with a second processing node via a second link different than said first link and forwarding said message to said second processing node via an interconnect different than said first and second links if so addressed; determining if said message includes a request for shared data, and if so, determining if said shared data is present in said first processing node and retrieving said shared data if said shared data is present; retrieving said shared data from said second processing node via said interconnect if said message includes a request for shared data and said shared data is not present in said first processing node; and sending said shared data to said first workstation via said first link. - View Dependent Claims (17)
-
-
18. A method for sharing data and routing messages between workstations in a local area network, comprising:
-
receiving a message at a first processing node from a first workstation associated with said first processing node; determining if said message is addressed to a second workstation associated with a second processing node and forwarding said message to said second processing node if so addressed; determining if said message includes a request for shared data, and if so, determining if said shared data is present in said first processing node and retrieving said shared data if said shared data is present; retrieving said shared data from said second processing node if said message includes a request for shared data and said shared data is not present in said first processing node; sending said shared data to said first workstation; and storing a local copy of said shared data in said first processing node after said step of retrieving said shared data from said second processing node. - View Dependent Claims (19)
-
-
20. A method for sharing data between workstations in a local area network, said method comprising:
-
dividing shared data of said local area network into a first data set and a second data set different than said first data set; respectively storing said first and second data sets in first and second mass storage devices; respectively associating first and second processing nodes with said first and second mass storage devices; respectively adapting said first and second processing nodes to communicate with first and second workstations via independent first and second links; adapting said first and second processing nodes to communicate with each other via an interconnect independent of said first and second links; and adapting said first processing node to request certain of said shared data from said second processing node via said interconnect, and adapting said second processing node to supply said certain shared data via said interconnect, when said first workstation requests said certain shared data and said certain shared data is not present in said first processing node; and adapting said first processing node to forward a message addressed to said second workstation from said first workstation to said second processing node via said interconnect.
-
-
21. An apparatus for sharing shared data and routing messages between a plurality of workstations in a local area network, comprising:
a massively parallel computer comprising; an interconnect; and a plurality of processing nodes, at least two of said processing nodes each including; local data accessing means for accessing a local set of said shared data; high speed means for interfacing with other of said processing nodes via said interconnect; low speed means independent of said interconnect for interfacing with a respective one of said workstations; local data supplying means, responsive to a local request for certain of said shared data from said respective workstation, for retrieving said certain shared data from said local set via said local data accessing means when said local set includes said certain shared data and for supplying said certain shared data to said respective workstation via said low speed means; remote data requesting means, responsive to said local request for said certain shared data, for requesting said certain shared data from said other processing nodes via said high speed means when said local set does not include said certain shared data; remote data supplying means, responsive to a remote request from another of said processing nodes, for forwarding said certain shared data via said high speed means when said local set includes said certain shared data; and messaging means, responsive to a message from said respective workstation addressed to another of said workstations, for forwarding said message to said other processing nodes via said high speed means. - View Dependent Claims (23)
Specification