US20040004966A1 - Using virtual identifiers to route transmitted data through a network - Google Patents
Using virtual identifiers to route transmitted data through a network Download PDFInfo
- Publication number
- US20040004966A1 US20040004966A1 US10/062,245 US6224501A US2004004966A1 US 20040004966 A1 US20040004966 A1 US 20040004966A1 US 6224501 A US6224501 A US 6224501A US 2004004966 A1 US2004004966 A1 US 2004004966A1
- Authority
- US
- United States
- Prior art keywords
- data
- network
- destination
- virtual
- identifier
- 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.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/552—Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/356—Switches specially adapted for specific applications for storage area networks
- H04L49/357—Fibre channel switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1031—Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/61—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/101—Packet switching elements characterised by the switching fabric construction using crossbar or matrix
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Definitions
- the following disclosure relates generally to computer networks, and more particularly to using virtual identifiers to route data through networks.
- EDNs enterprise data networks
- LAN web server local area network
- SAN storage area network
- the processing and storage elements attached to these sub-networks may have access to a wide area network (WAN) or metropolitan area network (MAN) through a bridging device commonly known as an edge switch.
- WAN wide area network
- MAN metropolitan area network
- edge switch a bridging device commonly known as an edge switch.
- each of these sub-networks typically uses a distinct protocol and associated set of hardware and software, including network interface adapters, network switches, network operating systems, and management applications.
- QOS Quality Of Service
- current architectures typically assign one or more network addresses to each node in a network (e.g., logical network addresses such as IP addresses and/or physical network addresses such as Media Access Control (“MAC”) addresses), and network routing and switching devices use the network addresses of a destination node to route transmissions of data from a source node to that destination node.
- logical network addresses such as IP addresses and/or physical network addresses such as Media Access Control (“MAC”) addresses
- FIG. 1 is a network diagram illustrating various nodes of an example Fibre Channel Fabric network that are inter-communicating.
- FIGS. 2 A- 2 C illustrate an example of Virtual Identifier Network Interface Controller (“NIC”) embodiments using virtual identifiers to inter-communicate through an example Fibre Channel Fabric network.
- NIC Virtual Identifier Network Interface Controller
- FIG. 3 is a block diagram illustrating a node using an embodiment of the disclosed Virtual Identifier NIC to communicate with other nodes.
- FIG. 4 is a flow diagram of an embodiment of the Communication Registrar routine.
- FIG. 5 is a flow diagram of an embodiment of the Outgoing Communication Translator routine.
- FIG. 6 is a flow diagram of an embodiment of the Verify Communication Transmittal subroutine.
- FIG. 7 is a flow diagram of an embodiment of the Incoming Communication Translator routine.
- a software facility is described below that uses virtual identifiers to route communications through a network to destinations in an appropriate manner.
- each virtual identifier is assigned to a path through a network to a destination, such as by a network manager for the network.
- one or more Virtual Identifier (“VI”) Network Interface Controller (“NIC”) facilities on each node facilitate the use of virtual identifiers in communicating data.
- VI Virtual Identifier
- NIC Network Interface Controller
- Such data communications can include both transitory connectionless transmittals of data (e.g., unidirectional transmittals from a source to a destination) and non-transitory connections that allow multiple distinct transmittals of data (e.g., a persistent dedicated connection that allows a connection-initiating source and a connection destination to transmit data back and forth).
- transitory connectionless transmittals of data e.g., unidirectional transmittals from a source to a destination
- non-transitory connections that allow multiple distinct transmittals of data (e.g., a persistent dedicated connection that allows a connection-initiating source and a connection destination to transmit data back and forth).
- the VI NIC can identify an appropriate transmittal virtual identifier for routing a data communication in various ways.
- the VI NIC will register some or all outgoing data communications with a network manager for the network, and will receive an appropriate transmittal virtual identifier to be used for that communication from the network manager. If an indicated data communication corresponds to a previously registered data communication (e.g., to an existing connection or to a previous communication to the same destination and in the same transmission manner), however, the VI NIC could instead in some embodiments use the previously received transmittal virtual identifier for that data communication rather than perform an additional registration for the indicated data communication.
- the manners in which a data communication can be transmitted vary with the transmission characteristics that are supported by a network, and can include factors such as a particular Class Of Service (“COS”) or transmission priority.
- COS Class Of Service
- the assignment of paths to such virtual path identifiers is performed in a dynamic fashion after an indication is received that a data communication is to occur, such as by the network manager upon receipt of a data communication registration.
- the assigning of a virtual path identifier to a path can include the configuring of each of one or more intermediate routing devices (e.g., routers or switches) between the source and the destination, such as by the network manager, so that when one of the routing devices receives a data communication that includes the virtual identifier it will forward the communication in an appropriate manner either directly to the destination or instead to a next routing device along the path that is similarly configured.
- the VI NIC can also assist in determining appropriate destinations for an indicated data communication, either directly or in conjunction with the network manager (e.g., by registering the data communication with the network manager), with the transmittal virtual identifier for that data communication selected so as to route the data communication to those destinations.
- the indicated data communication may explicitly specify a destination, such as with a destination network address, while in other situations a destination may not be specified, such as when an application is publishing information and is relying on a third party to route the information to one or more current subscribers for that information.
- the VI NIC and/or the network manager can select one or more destinations that are appropriate for the indicated data communication, even if the specified destination is not among the selected destinations.
- This destination selection can be made by considering one or more of various factors, including any destinations specified, any expressions of interest made by potential recipients in the data communication (e.g., subscription requests), the type of data being communicated, the manner of the data communication (e.g., a specified COS and/or transmission priority), the identity or type of the source node and/or source application, the type of a destination application, etc.
- any destinations specified e.g., any expressions of interest made by potential recipients in the data communication (e.g., subscription requests), the type of data being communicated, the manner of the data communication (e.g., a specified COS and/or transmission priority), the identity or type of the source node and/or source application, the type of a destination application, etc.
- a source of an indicated data communication may specify a destination using a destination network address that is not mapped to any node in the network, and if so the VI NIC and/or the network manager could then select an appropriate destination for that destination network address.
- Multiple destinations can also be selected for an indicated data communication, even if that data communication specified a single destination (which may or may not be one of the selected destinations). If so, a single transmittal virtual identifier can be used to route the data communication to each of the multiple selected destinations, such as by configuring one or more intermediary routing devices to divide received communications that use that transmittal virtual identifier so as to forward a copy of such received communications to each of multiple destinations (or multiple next routing devices).
- virtual identifiers correspond to paths through a network that are specific to a source. If so, a single virtual identifier can be used by different sources for different paths, such as to different destinations if the different paths do not overlap.
- the use of virtual addresses also allows a path corresponding to a virtual identifier to be reconfigured in a manner transparent to a source using that virtual identifier, such as to correspond to a different path to the same destination or to a path to a different destination.
- the VI NIC when a data communication indicated by a source can result in bi-directional communication (e.g., a response from one or more of the destinations), the VI NIC also identifies a response virtual identifier that can be used for routing data from one or more of the destinations back to the source. IF the VI NIC registers the data communication with a network manager, this response virtual identifier may be received from the network manager. After identifying this response virtual identifier, the VI NIC associates it with information indicating how to process received data communications that are routed using the response virtual identifier.
- such received data communications are processed by forwarding the data communications to one or more resources associated with the destination node, such as an executing application program, a file on storage, or a device that is part of the node.
- resources associated with the destination node such as an executing application program, a file on storage, or a device that is part of the node.
- a VI NIC for the source node may associate the response virtual identifier with that source application so that received responses can be forwarded to that source application (which then becomes the destination application for those received communications).
- a virtual identifier with a corresponding destination application to which a data communication will be forwarded can be performed in various ways.
- software applications that communicate using TCP/IP mechanisms often use TCP/IP sockets, which include a combination of an IP address and a software port number specific to a computing device using that IP address.
- the response virtual identifier can be associated with socket information for the source application.
- a destination node associates transmittal virtual identifiers used to route data communications to that destination with an appropriate resource local to the destination node, such as based on information provided to the destination node by the network manager as part of the registering of those data communications and/or based on information included as part of the data communications.
- the VI NIC can use the information to provide additional benefits. For example, many network nodes and/or applications executing on such nodes require that various information be correctly specified in a received communication in order for that communication to be accepted, such as for security reasons.
- a destination application using TCP/IP communication mechanisms may require that any received transmissions include the correct TCP/IP socket information corresponding to that application.
- transmittal virtual identifiers can result in valid communications being received having incorrect TCP/IP socket information for a destination application, as discussed in greater detail below.
- the VI NIC that receives the communication can replace the incorrect included TCP/IP socket information with the correct information for the application by using the TCP/IP socket information that is associated with the transmittal virtual identifier used to route the communication.
- the VI NIC may verify the accuracy of the received communication in various ways before performing such information replacement.
- virtual identifiers can result in valid received communications that have incorrect information for a destination application in various ways. For example, if a source application specifies a destination IP address and that destination IP address is included in the data being communicated (e.g., in a location reserved for such a destination network address), but a VI NIC for that source application identifies one or more destinations that do not correspond to that destination IP address (e.g., that have other IP addresses), then the data communication will include a specified destination IP address that does not correspond to the IP addresses used by applications at the identified destinations. In addition, if multiple destinations with different IP addresses are identified by the VI NIC when only a single destination IP address was specified, most of the destinations will receive communications that do not include correct IP address information.
- the VI NIC that receives the communication can replace the incorrect included IP address information with the correct IP address information for the application by using the TCP/IP socket information that is associated with the virtual identifier used to route the communication.
- the VI NIC that sends the data communication can perform the information replacement if that VI NIC has access to the necessary application-specific information for the destination application.
- a VI NIC can also identify information related to routing a data communication other than a transmittal virtual identifier, either directly or in conjunction with the network manager (e.g., by registering the data communication with the network manager). For example, the VI NIC may identify one or more Quality Of Service (“QOS”) parameters that relate to a manner in which the data communication should occur, such as a specified COS and/or a priority to be used for the transmission of the data. If so, the VI NIC can also use such QOS parameters when transmitting data for that data communication.
- QOS Quality Of Service
- Fibre Channel For illustrative purposes, some embodiments are described below in which the VI NIC is used as part of a Fibre Channel network and/or as part of an EDN architecture. However, those skilled in the art will appreciate that the techniques of the invention can be used in a wide variety of other situations and with other types of networks, including InfiniBand-based networks, and that the invention is not limited to use in Fibre Channel networks or with EDN architectures. Additional details about Fibre Channel are available in “Fibre Channel: A Comprehensive Introduction,” which is authored by Robert W. Kembel and published by Northwest Learning Associates, Inc., and which is hereby incorporated by reference in its entirety.
- FIG. 1 is a network diagram illustrating various nodes of an example Fibre Channel fabric-based interconnect network that are inter-communicating using virtual identifiers.
- multiple interconnect fabric modules (“IFMs”) 110 with high-speed switching capabilities are used as intermediate routing devices to form an interconnect fabric, and multiple nodes 105 , a network manager 115 and a Multi-Protocol Edge Switch (“MPEX”) 120 are connected to the fabric.
- Each of the nodes has at least one VI NIC that uses virtual identifiers when communicating and receiving data.
- the MPEX is used to connect the Fibre Channel network to an external network, such as an Ethernet-based network, and similarly includes at least one VI NIC. Data is transmitted through the interconnect fabric using frames such as those defined by the Fibre Channel standard.
- an IFM can be dynamically configured to interconnect its communications ports so that data can be transmitted through the interconnected ports.
- the network manager receives a registration indication from a VI NIC for a data communication from a source node to a destination node
- the network manager selects transmittal and response virtual identifiers to be used by the source and destination nodes when sending frames to each other.
- the network manager also identifies a path through the IFMs and their ports which frames will use when moving between the nodes.
- the network manager then configures the IFMs of the identified path so that when a frame that indicates the transmittal or response virtual identifiers is received at one of the IFMs, that frame is forwarded to the destination or source nodes via the path as appropriate. While the transmittal and response virtual identifiers thus use the same path (in opposite directions) in this example embodiment, they can use distinct paths in other embodiments.
- Each IFM may maintain a virtual identifier table for each of its ports that maps virtual identifiers to its destinations ports.
- the IFM uses the virtual identifier for that frame and the virtual identifier table for the source port to identify a destination port through which the frame is to be forwarded.
- a virtual identifier identifies a path between devices, rather than identifying a source or a destination device.
- a virtual identifier includes both a domain address and a virtual address.
- Each IFM is assigned a domain address, with the IFMs that are assigned the same domain address being in the same domain.
- the IFMs use the domain addresses to forward frames between domains, and the network manager may also configure the IFMs with inter-domain paths.
- an IFM receives a frame whose virtual identifier has a domain address that matches its domain address, then the frame has arrived at its destination domain. The IFM then forwards the frame in accordance with the virtual address of the virtual identifier. If, however, the domain addresses do not match, then the frame has not arrived at its destination domain, and the IFM forwards the frame using an inter-domain path.
- the virtual identifier table for an IFM port may thus be divided in some embodiments into a domain address table and a virtual address table that respectively map domain addresses and virtual addresses to destination ports through which frames are to be forwarded.
- FIGS. 2 A- 2 C illustrate an example of VI NIC embodiments using virtual identifiers to inter-communicate through an example Fibre Channel Fabric network.
- FIG. 2A illustrates various VI NICs 250 , 255 , 270 , 275 and 280 that are inter-communicating through a Fibre Channel fabric-based interconnect network that includes IFMs 262 , 264 and 266 .
- FIG. 2B illustrates a table containing information related to each of multiple example data communications discussed below.
- a first example data communication begins when VI NIC 250 , which is connected to port 0 of IFM 262 , initiates a data communication to VI NIC 270 , which is connected to port 25 of IFM 264 .
- This data communication is indicated to be a persistent connection, and VI NIC 250 receives a transmittal virtual identifier A (e.g., from a network manager for the network, not shown) to be used for routing communications to VI NIC 270 .
- VI NIC 270 correspondingly receives a response virtual identifier B to be used for routing responses to VI NIC 250 .
- virtual identifiers can be represented in various formats, such as 24-bit identifiers in a Fibre Channel network.
- VI NIC 250 is also notified of the response virtual identifier B supplied to VI NIC 270 so that VI NIC 250 can recognize communications received from VI NIC 270 as being part of the persistent connection and can forward those received data communications in an appropriate manner (e.g., to an executing application (not shown) on the node to which VI NIC 250 belongs).
- VI NIC 270 similarly maps received data communications using virtual identifier A to an appropriate destination on the node to which VI NIC 270 belongs.
- the transmittal and response virtual identifiers A and B each correspond to a path through IFMs 262 and 264 .
- VI NIC 250 data communications from VI NIC 250 using the transmittal virtual identifier A will be received at port 0 of IFM 262 , and will be forwarded by that port along link 262 a to output port 29 of IFM 262 . That output port is statically connected to port 5 of IFM 264 , which will receive the data communications using the transmittal virtual identifier A and will forward them along link 264 a to output port 25 of IFM 264 . VI NIC 270 will then receive the data communication. Data communications from VI NIC 270 to VI NIC 250 will return in a similar manner along that same path in an opposite direction.
- FIG. 2B illustrates a table reflecting the example data communications between the various VI NICs, and entries 1 a and 1 b of the table represent the dedicated connection between VI NICs 250 and 270 that was just discussed.
- the determination of which of an associated pair of virtual identifiers is the transmittal virtual identifier and which is the response virtual identifier is made with respect to the source VI NIC using the virtual identifiers to route a data communication.
- VI NIC 250 uses virtual identifier A as its transmittal virtual identifier and virtual identifier B as its response virtual identifier for the dedicated connection, while VI NIC 270 uses them in an opposite matter.
- VI NIC 250 initiates a connectionless data communication to VI NIC 275 , which is connected to port 28 of IFM 264 .
- Transmittal and response virtual identifiers C and D are provided to VI NIC 250 to be used for the data communication, with the transmittal virtual identifier C corresponding to a path including link 262 a from port 0 of IFM 262 to port 29 of IFM 262 , followed by link 264 b from port 5 of IFM 264 to port 28 of IFM 264 .
- a response virtual identifier is provided to VI NIC 250 so that response information can be provided to VI NIC 250 if necessary, such as an error message indicating that data communication was not successful.
- At least the transmittal virtual identifier C will also be provided to VI NIC 275 so that received data communications can be recognized and forwarded in an appropriate manner. Entry 2 of the table illustrated in FIG. 2B corresponds to this data communication.
- VI NIC 250 initiates a data communication to VI NIC 280 , which is connected to port 20 of IFM 266 .
- VI NIC 250 receives transmittal and response virtual identifiers E and F, with the path corresponding to transmittal identifier E including link 262 c from port 0 to port 31 of IFM 262 and link 266 a from port 0 to port 20 of IFM 266 .
- Port 31 of IFM 262 is statically connected to port 0 of IFM 266 . Entry 3 of the table illustrated in FIG. 2B corresponds to this data communication.
- port 0 of IFM 262 is configured (barring any reconfigurations) to route data communications from VI NIC 250 that use any one of the transmittal virtual identifiers A, B or C. While port 0 forwards data communications in the illustrated embodiments for these transmittal virtual identifiers to different ports, that is not necessary. For example, port 0 could be configured to forward data communications for all the transmittal virtual identifiers to port 29 of IFM 262 , and port 5 of IFM 264 could then be configured to forward data communications using transmittal virtual identifier C to port 10 of IFM 264 for communication to port 8 of IFM 266 , which could then forward that received data communication to port 20 of IFM 266 for delivery to VI NIC 280 .
- VI NIC 275 next initiates a data communication that is determined (e.g., by the network manager) should be routed to VI NICs 250 and 280 .
- VI NIC 275 then receives a transmittal virtual identifier E and response virtual identifier G to be used for the data communication.
- transmittal virtual identifier E corresponds to two paths through the network that lead to the two destination VI NICs.
- a path to VI NIC 250 includes link 264 c from port 28 to port 6 of IFM 264 and link 262 b from port 30 to port 0 of IFM 262 .
- Port 6 of IFM 264 is statically connected to port 30 of IFM 262 .
- the path from VI NIC 275 to destination VI NIC 280 includes links 264 b from port 28 to port 10 of IFM 264 and link 266 b from port 8 to port 20 of IFM 266 .
- Port 10 of IFM 264 is statically connected to port 8 of IFM 266 .
- Entry 4 of the table illustrated in FIG. 2B corresponds to this data communication.
- port 28 of IFM 264 is configured such that when it receives a data communication using the transmittal virtual identifier E from VI NIC 275 , the port divides the received data communication and sends a copy of the data communication to both of ports 6 and 10 to IFM 264 for forwarding.
- this single transmittal virtual identifier is used to send a data communication to multiple destinations. Note, however, that it is not necessary that the port that initially receives the data communication (i.e., port 28 of IFM 264 in this example) be the one to divide a received data communication into multiple copies.
- port 28 of IFM 264 could instead be configured to send only a single copy of the received data communication to port 6 of IFM 264
- port 30 of IFM 262 could instead be configured to send a copy of the received data communication to both ports 0 and 31 of IFM 262
- port 28 of IFM 264 could be configured as initially discussed, but port 30 of IFM 262 could instead be configured to send copies of the received data communication to both ports 0 and 28 of IFM 262 if VI NIC 255 is determined to be another destination for the data communication.
- the transmittal virtual identifier E used by VI NIC 275 in this most recent example data communication is identical to the transmittal virtual identifier E previously used by VI NIC 250 for data communication to VI NIC 280 .
- the paths corresponding to virtual identifiers are relative to the source from which those data communications originate, and thus different VI NICs can use the same virtual identifier to correspond to different paths and to different destinations. This is possible since each of the ports of each of the IFMs can be separately configured in the illustrated embodiment to handle data communications having specified virtual identifiers.
- port 28 of IFM 264 is configured to forward data communications received from VI NIC 275 that use the transmittal virtual identifier E to ports 6 and 10 of IFM 264
- port 0 of IFM 262 is configured to forward a data communication received from VI NIC 250 that uses the transmittal virtual identifier E to port 31 of IFM 262 .
- FIG. 2C illustrates an example of a virtual identifier translation table used by VI NIC 250 when transmitting and receiving the example data communications.
- multiple applications programs are executing on a node to which VI NIC 250 corresponds and are using TCP/IP socket communication mechanisms to specify their data communications.
- the VI NIC can identify various QOS communication parameters to be associated with each data communication.
- Each entry in the virtual identifier translation table corresponds to a distinct data communication of which the VI NIC has been notified. For example, entry 1 in the table corresponds to the previously discussed dedicated connection between VI NICs 250 and 270 .
- the data communication for entry 1 was initiated by an executing source application opening a TCP/IP socket having a destination of IP address “128.32.78.105” and a destination node software port of 3523 , with this TCP/IP socket information stored in column 221 of the table.
- information is stored in column 223 of the virtual identifier translation table to enable received data communications to be forwarded to the appropriate executing application, which in this case is the source application.
- the VI NIC 250 determines (e.g., based on the received indication of the data communication) that the source application has source socket information that includes an IP address of “153.83.28.125” and a software port number of 3025 for the node on which the application is executing.
- the VI NIC 250 also determines appropriate transmittal and response virtual identifiers for the data communication, as well as various QOS parameters related to the data communication (e.g., by registering the data communication with a network manager that supplies the virtual identifiers and QOS parameters).
- the transmittal and response virtual identifiers are stored in columns 225 and 227 of the table respectively, and the QOS communications parameters are stored in one or more columns 229 .
- the identified QOS communication parameters include a specified COS and an authorized minimum and maximum transmission priority. As shown, this data communication is assigned a COS of “1” (e.g., which may correspond to dedicated connections) and a transmission priority range between 0 and 127 (e.g., the full range for a 7-bit priority value).
- entries 2 , 3 and 4 of the virtual identifier translation table correspond to example communications 2 , 3 and 4 listed in the table illustrated in FIG. 2B.
- a single executing application may have multiple virtual identifier pairs shown in different entries of the virtual identifier translation table, such as entries 1 and 2 which share the same TCP/IP socket routing information in column 223 .
- the data communications may be routed to different destination nodes, such as is shown with entries 1 and 3 of the table.
- the destination for an indicated data communication may be selected on the basis of information other than a specified TCP/IP destination socket, and if so the virtual identifier translation table would instead store in column 221 at least the minimal set of information needed to distinguish between the different data communications of which it is notified.
- indicated data communications have destinations selected based solely on a type of the executing application or on a type of the data being transmitted, an indication of that type of information could be stored in column 221 instead of the destination TCP/IP socket information.
- an application could have multiple distinct virtual identifiers that can be used to communicate with a single destination, such as if the virtual identifiers are assigned to different paths through the network or have differing associated QOS parameters.
- different applications on a source node could in various embodiments use the same or different virtual identifiers to communicate with a single destination, regardless of whether different virtual identifiers were assigned to different paths through the network.
- Entry 4 in the virtual identifier translation table reflects a data communication initiated by a source other than VI NIC 250 , in this case being VI NIC 275 .
- VI NIC 250 will store data in column 223 of the virtual identifier translation table indicating how to forward those received data communications (such as based on destination TCP/IP socket information included in a first of those received data communications), but need not store identification information for VI NIC 275 in column 221 since the example data communication is a 1-way connectionless transmittal.
- the transmittal virtual identifier E used by VI NIC 275 to route the data communication to VI NIC 250 is shown in column 227 of entry 4 of the virtual identifier translation table as being the response virtual identifier for the data communication, since from the perspective of VI NIC 250 the virtual identifier is used for received data communications.
- other types of information could be stored in the virtual identifier translation table (e.g., connection preemption information) or existing types of information may not be present, and that the existing information could also be stored in other ways (e.g., by having separate virtual identifier translation tables for outgoing and incoming data communications).
- FIG. 3 illustrates a node computing device 300 suitable for executing an embodiment of a VI NIC that uses virtual identifiers when transmitting and receiving data communications, as well as illustrating various other node computing devices 350 with which node 300 can inter-communicate.
- the nodes are inter-connected through an Interconnect Fabric 380 , and a Network Manager 370 is similarly connected to the Fabric.
- the node computing device 300 includes a CPU 305 , various I/O devices 310 , storage 320 and memory 330 .
- the I/O devices include at least one network interface 312 which connects the node to the Interconnect Fabric, as well as computer-readable media drive 313 and various other I/O devices 314 .
- An embodiment of a VI NIC 340 is executing in memory, and it includes a Communication Registrar component 342 , an Outgoing Communication Translator component 344 and an Incoming Communication Translator component 346 .
- VI NIC in the illustrated embodiment includes multiple components executing in the main memory of the node, those skilled in the art will appreciate that other arrangements are possible in other embodiments, such as implementing a VI NIC together with a network interface on a single plug-in card that attaches to a bus for the node and that may include stand-alone memory and/or processing capabilities including hard-wired logic.
- some or all of the VI NIC components may be a device driver for the node, such as for one of the network interfaces.
- multiple VI NICs may be executing on a single node, such as to correspond to multiple network interfaces.
- multiple application programs 335 are also executing in memory, and can initiate or receive data communications with application programs executing on remote nodes.
- the VI NIC is notified of the data communication, and the Communication Registrar component then registers that the communication with the Network Manager.
- the Communication Registrar component receives a pair of transmittal and response virtual identifiers from the Network Manager as well as various QOS communication parameters for that data communication.
- the Communication Registrar component retrieves and uses network manager communication parameters 327 from storage that may include a transmittal virtual identifier to route the communication to the Network Manager and a response virtual identifier to recognize the information received back from the Network Manager.
- the network manager communication parameters can be obtained in various ways, such as directly from the Network Manager during initialization of the node and/or the network.
- the Communication Registrar component After the Communication Registrar component receives the virtual identifier pair and other information for the registered data communication, it stores that information in the virtual identifier translation table 325 on storage for use when transmitting and receiving data communications.
- the Outgoing Communication Translator receives notification of the communication to be performed. If the initial notification used by the Communication Registrar to initiate registration was itself an indication to perform a communication, the Outgoing Communication Translator component can receive this notification from the Communication Registrar component after the registration has been completed.
- the Outgoing Communication Translator component analyzes the information provided about the data communication to be performed, maps that data communication to a corresponding entry in the virtual identifier translation table in order to determine the appropriate transmission information to be used for the data communication, and then transmits the data using the information retrieved from the virtual identifier translation table.
- the Outgoing Communication Translator may also need to perform additional formatting of the data to be transmitted, such as to generate one or more appropriate Fibre Channel frames for the illustrated example in which the network is a Fibre Channel Interconnect Fabric.
- the Outgoing Communication Translator component may verify the accuracy of the communication indicated by the application program before transmitting the communication, such as to ensure that a priority requested by the application program to be used for the transmission falls within the transmission priority bounds assigned to the data communication.
- the Incoming Communication Translator component is notified when the network interface receives incoming data communications that are routed using virtual identifiers. Upon receiving notification of such a received data communication, the Incoming Communication Translator determines the transmittal virtual identifier used to route the data communication to the node and uses the virtual identifier translation table to map that virtual identifier to one or more of the application programs executing in memory. Upon determining one or more appropriate application programs to receive the data communication, the VI NIC then forwards the received data communication to those application programs.
- the necessary information for forwarding the received data communication will already be present in the virtual identifier translation table based on the Communication Registrar component having previously registered that data communication.
- the necessary information to forward the received data communication to an executing application program may or may not already be present in the virtual identifier translation table.
- the Network Manager will have supplied the appropriate information to the VI NIC (e.g., to the Communication Registrar component) before the data communication is received, and the information could be stored in the virtual identifier translation table at that time.
- the appropriate information for forwarding the received data communication may be added to the virtual identifier translation table at the time that the data communication is received, such as by the Incoming Communication Translator component analyzing information included in the data communication to identify the needed information.
- the Incoming Communication Translator component will also process received data communications in various ways before forwarding them to one or more appropriate application programs. For example, in some embodiments application programs may expect received data communications to include information specific to the receiving application, such as one or more network addresses associated with that application. If the VI NIC has access to the appropriate information for the application, such as from the virtual identifier translation table, the Incoming Communication Translator component can add that information to a received data communication when it is missing or incorrect (or for every received data communication).
- the Incoming Communication Translator component could ensure that the data communication forwarded to an executing application includes the appropriate IP address and/or port number associated with that application.
- the Incoming Communication Translator component may need to reformat received information into an appropriate form for the application receiving the information, such as by converting a received Fibre Channel frame into one or more IP packets.
- node computing device 300 is merely illustrative and is not intended to limit the scope of the present invention.
- Computing device 300 may be connected to other devices that are not illustrated, including one or more networks such as the Internet or via the World Wide Web.
- computing device 300 could be one part of an EDN, such as by being a device at any one or more of the EDN sub-networks.
- Various available products could be used as network interfaces and/or to implement some or all of the functionality of a VI NIC, including products from Banderacom, Inc. and Mellanox Technologies.
- the functionality provided by the illustrated VI NIC components may in some embodiments be combined in fewer components or distributed in additional components.
- the functionality of some of the illustrated components may not be provided and/or other additional functionality may be available.
- the components and data structures can also be transmitted as generated data signals (e.g., as part of a carrier wave) on a variety of computer-readable transmission mediums, including wireless-based and wired/cable-based mediums. Accordingly, the present invention may be practiced with other computer system configurations.
- FIG. 4 is a flow diagram of an embodiment of the Communication Registrar routine 400 .
- the routine receives indications of new data communications from either a local executing application or from a remote network manager, registers new data communications indicated by local applications with the network manager and receives appropriate virtual identifiers and other information to be used for the data communication in response, and stores any received information from the network manager in the virtual identifier translation table for use in processing incoming and outgoing data communications.
- the routine begins at step 405 where an indication is received of a new communication.
- the routine continues to step 410 where it determines if the indication was received from the network manager, such as for a data communication initiated by a remote source. If the data communication is instead from a local executing application, the routine continues to step 415 to determine whatever information about the data communication that will be used to register the data communication with the network manager so that the network manager can determine appropriate destinations for the data communication. In the illustrated embodiment, information is determined about the type of data to be communicated, about the application that initiated the communication, and about any destination information specified by the local application.
- the routine then continues to step 420 where it is determined if the indicated data communication needs to be registered with the network manager. For example, if the indicated data communication is a transmittal of data for an existing persistent connection, the connection will already have been registered and registration is not necessary. In other situations, even a new data communication may not need to be registered, such as a data communication that will be communicated in the same manner and to the same destination as a previous communication, as the information provided for the previous data communication may be able to be reused.
- the routine compares whenever information is used to uniquely identify the destination and/or the manner of transmission for the indicated new data communication, and determines if there is a match for that information already present in the virtual identifier translation table. Those skilled in the art will appreciate that in other embodiments the routine may not make this determination and instead send registration information to the network manager for each new indicated data communication, such as if the network manager provides functionality to determine whether to reuse previously provided transmission information or to instead send new transmission information.
- step 425 If it is determined in step 425 that the new indicated data communication needs to be registered, the routine continues to step 430 to send a communication registration notification to the network manager that includes the determined communication type information. The routine then continues to step 435 to receive from the network manager an indication of a pair of transmittal and response virtual identifiers for the data communication, as well as optionally receiving other communication parameters to be used as part of the communication. The routine then continues to step 440 to store the received information in the virtual identifier translation table, as well as to optionally store routing information with which to route a response data communication back to the application that initiated this new data communication.
- step 440 the routine continues to step 490 to determine if there are more indications to receive. If so, the routine returns to step 405 , and if not the routine continues to step 499 and ends.
- step 445 receive transmission information related to that new data communication.
- the network manager will supply information about a pair of transmittal and response virtual identifiers to be used to route the indicated data communication to the node and to be used to route any responses back to the originating node, and will optionally also supply other communication parameters that will be used as part of the data communications.
- the routine then continues to step 450 to determine a local application to which the incoming communication is to be forwarded, such as based on information supplied by the network manager (e.g., TCP/IP socket information provided by the source application initiating the new data communication). After step 450 , the routine continues to step 440 to store the received information from the network manager and the routing information for the local application in the virtual identifier translation table.
- FIG. 5 is a flow diagram of an embodiment of the Outgoing Communication Translator routine 500 .
- the routine receives indications of outgoing data communication, determines an appropriate transmittal virtual identifier to be used for routing the data communication as well as optionally determining other communication parameters to be used, and transmits the data communication using the determined transmittal virtual identifier and other determined communication parameters.
- the routine begins at step 505 where an indication is received of an outgoing communication.
- the routine continues to step 510 to execute a subroutine to verify that the communication transmittal is authorized. In other embodiments, this verification step may not be performed.
- the routine next continues to step 515 to determine if the communication transmittal was determined to be authorized, and if not continues to step 520 to send an error message to the application that initiated the data communication. If it was instead determined in step 515 that the communication transmittal was authorized or if no authorization verification was performed, the routine continues to step 525 to map communication type information for the indicated data communication to a corresponding entry in the virtual identifier translation table for a registered data communication.
- the communication type information to be used for the mapping may be destination TCP/IP socket information provided by the application that initiated the data communication.
- the routine then continues to step 530 to format the outgoing data communication in a manner appropriate for the network type being used and to use the transmittal virtual identifier and any other communication parameters indicated in the virtual identifier translation table entry.
- one or more Fibre Channel frames are generated by storing response and transmittal virtual identifiers in the Fibre Channel frame locations for source and destination identifiers and by storing the data to be communicated as the payload of the frames, and the header information for the frames is specified to correspond to a Fibre Channel COS and a priority that is consistent with the information in the virtual identifier translation table entry.
- the routine then continues to step 535 to send the generated frames to the local IFM attached to the hardware output port to which the VI NIC corresponds.
- step 590 the routine continues to step 590 to determine if there are more indications to be received. If so, the routine returns to step 505 , and if not the routine continues to step 599 and ends.
- FIG. 6 is a flow diagram of an embodiment of the Verify Communication Transmittal subroutine 600 .
- the subroutine receives an indication of a data communication and determines if the data communication is consistent with corresponding information that was stored in the virtual identifier translation table based on a prior registration for the data communication.
- the subroutine begins at step 605 where an indication is received of a communication to be transmitted.
- the subroutine continues to step 610 to determine if the virtual identifier translation table has an entry corresponding to the communication.
- step 615 if there was not a corresponding entry, the subroutine to step 635 to return an indication that the data communication is not authorized.
- step 615 If it is instead determined in step 615 that a corresponding entry was present, the subroutine continues to step 620 to determine if the manner of the transmittal of the data communication is consistent with the transmission information in the corresponding entry, including use of virtual identifiers and other communication parameters. In some embodiments, it is verified that the data communication includes a pair of transmittal and response virtual identifiers that were provided together by the network manager and that the COS and priority for the data communication corresponds to the specified COS and priority limits provided by the network manager. If in step 625 it is determined that the data communication transmittal was not consistent, the subroutine continues to step 635 . If the data communication is instead determined to be consistent, the subroutine continues to step 630 to return an indication that the data communication is authorized. After step 630 or 635 , the subroutine continues to step 699 and ends.
- FIG. 7 is a flow diagram of an embodiment of the Incoming Communication Translator routine 700 .
- the routine receives indications of incoming data communications and forwards those data communication to appropriate local destinations such as an executing application. In some situations, the routine can also modify the incoming data communication in various ways, such as to replace missing or incorrect destination application-specific information with appropriate information.
- the routine begins at step 705 where an indication is received of an incoming data communication.
- the routine continues to step 710 to execute a subroutine to determine whether the data communication is authorized. Those skilled in the art will appreciate that in some embodiments such data communication verification may not be performed.
- the routine determines if the data communication is authorized, and if not continues to step 720 to send an error message to the sender of the communication. If it is instead determined in step 715 that the data communication is authorized or if the verification is not performed, the routine continues to step 725 to map the transmittal virtual identifier (or in some embodiments the pair of the transmittal and response virtual identifiers) used to route the data communication to a corresponding entry in the virtual identifier translation table.
- step 730 the routine then determines if the data communication includes information specific to the destination application that is incorrect or is missing, such as a network address. If so and if the correct information is accessible, such as by being stored in the virtual identifier translation table, the routine then continues to step 735 to replace the included incorrect information with the correct information.
- the routine determines if correct destination application-specific information is accessible it could always be used to replace information sent in a received data communication without checking if the included information is missing or incorrect.
- step 735 the routine continues to step 740 to forward the received data communication to the appropriate local destination by using the routing information from the corresponding entry in the virtual identifier translation table.
- the routine may format the data communication in a manner appropriate for the local destination, such as by converting the received data communication into IP packet format.
- step 795 the routine then continues to step 795 to determine if there are more indications to be received. If so, the routine returns to step 705 , and if not the routine continues to step 799 and ends.
- routines discussed above may be provided in alternate ways, such as being split among more routines or consolidated into less routines.
- illustrated routines may provide more or less functionality than is described, such as when other illustrated routines instead lack or include such functionality respectively, or when the amount of functionality that is provided is altered.
- data structures discussed above may be structured in different manners, such as by having a single data structure split into multiple data structures or by having multiple data structures consolidated into a single data structure.
- illustrated data structures may store more or less information than is described, such as when other illustrated data structures instead lack or include such information respectively, or when the amount or types of information that is stored is altered.
Abstract
A method, system, and computer-readable medium for using virtual identifiers to route communications through a network to destinations in an appropriate manner is described. The virtual identifiers can each be assigned to one or more paths through a network to a destination, such as by a network manager for the network. An appropriate virtual identifier for routing a data communication can also be identified in various ways, such as by registering the data communication with a network manager for the network and receiving an appropriate virtual identifier in response. A virtual identifier identified for a data communication may also be assigned to a path to one or more destinations that are selected as being appropriate in various ways, including selecting destinations that do not include a destination specified by a source of the communication.
Description
- This application claims the benefit of U.S. Provisional Application No. 60/287,069 entitled “METHOD FOR IMPLEMENTING A CLUSTER NETWORK FOR HIGH PERFORMANCE AND HIGH AVAILABILITY USING A FIBRE CHANNEL SWITCH FABRIC,” filed Apr. 27, 2001; U.S. Provisional Application No. 60/287,120 entitled “MULTI-PROTOCOL NETWORK FOR ENTERPRISE DATA CENTERS,” filed Apr. 27, 2001; U.S. Provisional Application No. 60/286,918 entitled “UNIFIED ENTERPRISE NETWORK SWITCH (UNEX) PRODUCT SPECIFICATION,” filed Apr. 27, 2001; U.S. Provisional Application No. 60/286,922 entitled “QUALITY OF SERVICE EXAMPLE,” filed Apr. 27, 2001; U.S. Provisional Application No. 60/287,081 entitled “COMMUNICATIONS MODEL,” filed Apr. 27, 2001; U.S. Provisional Application No. 60/287,075 entitled “UNIFORM ENTERPRISE NETWORK SYSTEM,” filed Apr. 27, 2001; U.S. Provisional Application No. 60/314,088 entitled “INTERCONNECT FABRIC MODULE,” filed Aug. 21, 2001; U.S. Provisional Application No. 60/314,287 entitled “INTEGRATED ANALYSIS OF INCOMING DATA TRANSMISSIONS,” filed Aug. 22, 2001; U.S. Provisional Application No. 60/314,158 entitled “USING VIRTUAL IDENTIFIERS TO ROUTE TRANSMITTED DATA THROUGH A NETWORK,” filed Aug. 21, 2001, and is related to U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR VIRTUAL ADDRESSING IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048019US1); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR LABEL TABLE CACHING IN A ROUTING DEVICE,” (Attorney Docket No. 030048024US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR MULTIFRAME BUFFERING IN A ROUTING DEVICE,” (Attorney Docket No. 030048025US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR DOMAIN ADDRESSING IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048026US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR INTERSWITCH LOAD BALANCING IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048027US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR INTERSWITCH DEADLOCK AVOIDANCE IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048028US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR CONNECTION PREEMPTION IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048029US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR MULTICASTING IN A ROUTING DEVICE,” (Attorney Docket No. 030048030US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR NETWORK CONFIGURATION DISCOVERY IN A NETWORK MANAGER,” (Attorney Docket No. 030048032US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR PATH BUILDING IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048033US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR RESERVED ADDRESSING IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048035US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR RECONFIGURING A PATH IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048036US1); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR ADMINISTRATIVE PORTS IN A ROUTING DEVICE,” (Attorney Docket No. 030048037US); U.S. patent application Ser. No. ______ entitled “PARALLEL ANALYSIS OF INCOMING DATA TRANSMISSIONS,” (Attorney Docket No. 030048038US); U.S. patent application Ser. No. ______ entitled “INTEGRATED ANALYSIS OF INCOMING DATA TRANSMISSIONS,” (Attorney Docket No. 030048039US); U.S. patent application Ser. No. ______ entitled “USING VIRTUAL IDENTIFIERS TO ROUTE TRANSMITTED DATA THROUGH A NETWORK,” (Attorney Docket No. 030048040US); U.S. patent application Ser. No. ______ entitled “USING VIRTUAL IDENTIFIERS TO PROCESS RECEIVED DATA ROUTED THROUGH A NETWORK,” (Attorney Docket No. 030048041US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR PERFORMING SECURITY VIA VIRTUAL ADDRESSING IN A COMMUNICATIONS NETWORK,” (Attorney Docket No. 030048042US); and U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR PERFORMING SECURITY VIA DE-REGISTRATION IN A COMMUNICATIONS NETWORK” (Attorney Docket No. 030048043US), which are all hereby incorporated by reference in their entirety.
- The following disclosure relates generally to computer networks, and more particularly to using virtual identifiers to route data through networks.
- The Internet has emerged as a critical commerce and communications platform for businesses and consumers worldwide. The dramatic growth in the number of Internet users, coupled with the increased availability of powerful new tools and equipment that enable the development, processing, and distribution of data across the Internet, have led to a proliferation of Internet-based applications. These applications include e-commerce, e-mail, electronic file transfers, and online interactive applications. As the number of users of and uses for the Internet increases, so does the complexity and volume of Internet traffic. Because of this traffic and its business potential, a growing number of companies are building businesses around the Internet and developing mission-critical business applications to be provided by the Internet.
- Existing enterprise data networks (“EDNs”) that support e-commerce applications are straining under the demand to provide added performance and services to customers. In particular, the growing customer demands for services have resulted in increasingly complex ad hoc EDNs. Current architectures of EDNs typically include three sub-networks: 1) a web server local area network (LAN), 2) a computational network for application servers, and 3) a storage area network (SAN). The processing and storage elements attached to these sub-networks may have access to a wide area network (WAN) or metropolitan area network (MAN) through a bridging device commonly known as an edge switch. Unfortunately, each of these sub-networks typically uses a distinct protocol and associated set of hardware and software, including network interface adapters, network switches, network operating systems, and management applications. Communication through the EDN requires bridging between the sub-networks that requires active participation of server processing resources for protocol translation and interpretation. There are a variety of disadvantages to the current architecture of EDNs, many of which result because the sub-networks and associated applications are developed by different vendors and it is difficult to integrate, manage, maintain and scale such inter-vendor EDNs. The ability to provide affordable, high-performance EDN solutions with extensive scalability, very high availability, and ease of management is thus significantly compromised or completely lost as existing solutions are grown ad hoc to meet customer demands.
- In addition to inter-vendor problems that exist in current EDN architectures, it is often difficult to transmit data to appropriate destinations in a secure manner, particularly with any guarantees as to the Quality Of Service (“QOS”) of the transmissions. For example, current architectures typically assign one or more network addresses to each node in a network (e.g., logical network addresses such as IP addresses and/or physical network addresses such as Media Access Control (“MAC”) addresses), and network routing and switching devices use the network addresses of a destination node to route transmissions of data from a source node to that destination node. However, it is difficult to prevent unauthorized source nodes from sending data to a destination node with a known network address, particularly if the source nodes masquerade their identities by spoofing their own network addresses, and correspondingly it is difficult for a destination node to ensure that received data is from an authorized source. In addition, it can be difficult for even an authorized source node to transmit data to desired destinations, as the source node must know the appropriate network address or other logical name (e.g., a DNS name) that is assigned or mapped to a destination node in order to perform the transmitting. Even more difficult are situations in which the appropriate destinations are difficult to identify, such as for a source node that is publishing data of a type that may be of interest to various potential subscriber destination nodes. Finally, current architectures typically do not allow a source node to ensure that transmitted data will be processed with a desired QOS, such as a minimum network latency or minimum level of throughput.
- FIG. 1 is a network diagram illustrating various nodes of an example Fibre Channel Fabric network that are inter-communicating.
- FIGS.2A-2C illustrate an example of Virtual Identifier Network Interface Controller (“NIC”) embodiments using virtual identifiers to inter-communicate through an example Fibre Channel Fabric network.
- FIG. 3 is a block diagram illustrating a node using an embodiment of the disclosed Virtual Identifier NIC to communicate with other nodes.
- FIG. 4 is a flow diagram of an embodiment of the Communication Registrar routine.
- FIG. 5 is a flow diagram of an embodiment of the Outgoing Communication Translator routine.
- FIG. 6 is a flow diagram of an embodiment of the Verify Communication Transmittal subroutine.
- FIG. 7 is a flow diagram of an embodiment of the Incoming Communication Translator routine.
- A software facility is described below that uses virtual identifiers to route communications through a network to destinations in an appropriate manner. In some embodiments, each virtual identifier is assigned to a path through a network to a destination, such as by a network manager for the network. Using virtual identifiers for routing of communications, rather than network addresses or logical names that are specific to a destination, provides a variety of benefits, as discussed in greater detail below.
- In some embodiments, one or more Virtual Identifier (“VI”) Network Interface Controller (“NIC”) facilities on each node (e.g., one VI NIC for each network interface) facilitate the use of virtual identifiers in communicating data. When a VI NIC on a node receives an indication that a data communication to one or more remote nodes is to occur, such as from an application executing on the node, the VI NIC will identify an appropriate transmittal virtual identifier that can be used to route the data communication through the network to the appropriate remote destination nodes without being assigned to or directly associated with those destination nodes. Such data communications can include both transitory connectionless transmittals of data (e.g., unidirectional transmittals from a source to a destination) and non-transitory connections that allow multiple distinct transmittals of data (e.g., a persistent dedicated connection that allows a connection-initiating source and a connection destination to transmit data back and forth).
- The VI NIC can identify an appropriate transmittal virtual identifier for routing a data communication in various ways. In some embodiments, the VI NIC will register some or all outgoing data communications with a network manager for the network, and will receive an appropriate transmittal virtual identifier to be used for that communication from the network manager. If an indicated data communication corresponds to a previously registered data communication (e.g., to an existing connection or to a previous communication to the same destination and in the same transmission manner), however, the VI NIC could instead in some embodiments use the previously received transmittal virtual identifier for that data communication rather than perform an additional registration for the indicated data communication. The manners in which a data communication can be transmitted vary with the transmission characteristics that are supported by a network, and can include factors such as a particular Class Of Service (“COS”) or transmission priority.
- In some embodiments in which virtual identifiers are assigned to paths through a network, the assignment of paths to such virtual path identifiers is performed in a dynamic fashion after an indication is received that a data communication is to occur, such as by the network manager upon receipt of a data communication registration. The assigning of a virtual path identifier to a path can include the configuring of each of one or more intermediate routing devices (e.g., routers or switches) between the source and the destination, such as by the network manager, so that when one of the routing devices receives a data communication that includes the virtual identifier it will forward the communication in an appropriate manner either directly to the destination or instead to a next routing device along the path that is similarly configured.
- The VI NIC can also assist in determining appropriate destinations for an indicated data communication, either directly or in conjunction with the network manager (e.g., by registering the data communication with the network manager), with the transmittal virtual identifier for that data communication selected so as to route the data communication to those destinations. In some situations, the indicated data communication may explicitly specify a destination, such as with a destination network address, while in other situations a destination may not be specified, such as when an application is publishing information and is relying on a third party to route the information to one or more current subscribers for that information. Regardless of whether a destination is specified, however, the VI NIC and/or the network manager can select one or more destinations that are appropriate for the indicated data communication, even if the specified destination is not among the selected destinations. This destination selection can be made by considering one or more of various factors, including any destinations specified, any expressions of interest made by potential recipients in the data communication (e.g., subscription requests), the type of data being communicated, the manner of the data communication (e.g., a specified COS and/or transmission priority), the identity or type of the source node and/or source application, the type of a destination application, etc.
- In some situations, a source of an indicated data communication may specify a destination using a destination network address that is not mapped to any node in the network, and if so the VI NIC and/or the network manager could then select an appropriate destination for that destination network address. Multiple destinations can also be selected for an indicated data communication, even if that data communication specified a single destination (which may or may not be one of the selected destinations). If so, a single transmittal virtual identifier can be used to route the data communication to each of the multiple selected destinations, such as by configuring one or more intermediary routing devices to divide received communications that use that transmittal virtual identifier so as to forward a copy of such received communications to each of multiple destinations (or multiple next routing devices).
- In some embodiments, virtual identifiers correspond to paths through a network that are specific to a source. If so, a single virtual identifier can be used by different sources for different paths, such as to different destinations if the different paths do not overlap. The use of virtual addresses also allows a path corresponding to a virtual identifier to be reconfigured in a manner transparent to a source using that virtual identifier, such as to correspond to a different path to the same destination or to a path to a different destination.
- In some embodiments, when a data communication indicated by a source can result in bi-directional communication (e.g., a response from one or more of the destinations), the VI NIC also identifies a response virtual identifier that can be used for routing data from one or more of the destinations back to the source. IF the VI NIC registers the data communication with a network manager, this response virtual identifier may be received from the network manager. After identifying this response virtual identifier, the VI NIC associates it with information indicating how to process received data communications that are routed using the response virtual identifier. In some embodiments, such received data communications are processed by forwarding the data communications to one or more resources associated with the destination node, such as an executing application program, a file on storage, or a device that is part of the node. For example, if a source application on a source node initiates a bi-directional communication, a VI NIC for the source node may associate the response virtual identifier with that source application so that received responses can be forwarded to that source application (which then becomes the destination application for those received communications).
- The association of a virtual identifier with a corresponding destination application to which a data communication will be forwarded can be performed in various ways. For example, software applications that communicate using TCP/IP mechanisms often use TCP/IP sockets, which include a combination of an IP address and a software port number specific to a computing device using that IP address. Thus, in those embodiments the response virtual identifier can be associated with socket information for the source application. In a similar manner, in some embodiments a destination node associates transmittal virtual identifiers used to route data communications to that destination with an appropriate resource local to the destination node, such as based on information provided to the destination node by the network manager as part of the registering of those data communications and/or based on information included as part of the data communications.
- When the VI NIC has access to application-specific information for a destination application for a received communication, such as TCP/IP socket information that is associated with a response virtual identifier, the VI NIC can use the information to provide additional benefits. For example, many network nodes and/or applications executing on such nodes require that various information be correctly specified in a received communication in order for that communication to be accepted, such as for security reasons. One example is that a destination application using TCP/IP communication mechanisms may require that any received transmissions include the correct TCP/IP socket information corresponding to that application. However, the previously discussed use of transmittal virtual identifiers can result in valid communications being received having incorrect TCP/IP socket information for a destination application, as discussed in greater detail below. When this occurs, the VI NIC that receives the communication can replace the incorrect included TCP/IP socket information with the correct information for the application by using the TCP/IP socket information that is associated with the transmittal virtual identifier used to route the communication. In addition, in some embodiments the VI NIC may verify the accuracy of the received communication in various ways before performing such information replacement.
- The use of virtual identifiers can result in valid received communications that have incorrect information for a destination application in various ways. For example, if a source application specifies a destination IP address and that destination IP address is included in the data being communicated (e.g., in a location reserved for such a destination network address), but a VI NIC for that source application identifies one or more destinations that do not correspond to that destination IP address (e.g., that have other IP addresses), then the data communication will include a specified destination IP address that does not correspond to the IP addresses used by applications at the identified destinations. In addition, if multiple destinations with different IP addresses are identified by the VI NIC when only a single destination IP address was specified, most of the destinations will receive communications that do not include correct IP address information. In such situations, the VI NIC that receives the communication can replace the incorrect included IP address information with the correct IP address information for the application by using the TCP/IP socket information that is associated with the virtual identifier used to route the communication. Those skilled in the art will appreciate that a similar information replacement can be used for other communication mechanisms. In addition, in situations in which a data communication is being routed to only a single destination, the VI NIC that sends the data communication can perform the information replacement if that VI NIC has access to the necessary application-specific information for the destination application.
- In some embodiments, a VI NIC can also identify information related to routing a data communication other than a transmittal virtual identifier, either directly or in conjunction with the network manager (e.g., by registering the data communication with the network manager). For example, the VI NIC may identify one or more Quality Of Service (“QOS”) parameters that relate to a manner in which the data communication should occur, such as a specified COS and/or a priority to be used for the transmission of the data. If so, the VI NIC can also use such QOS parameters when transmitting data for that data communication.
- Additional details about virtual identifiers and their uses by network managers and network routing devices are discussed in the following patent applications, each of which are incorporated by reference in their entirety: Provisional U.S. Application No. 60/287,068, filed Apr. 27, 2001, entitled “GENERATION OF SYNCHRONIZED 50% DUTY CYCLE CLOCKS” (attorney docket no. 030048011US); Provisional U.S. Application No. 60/287,121, filed Apr. 27, 2001, entitled “FREQUENCY DETECTION AND LOCK FOR PHASED LOCK LOOP” (attorney docket no. 030048012US); Provisional U.S. Application No. 60/287,069, filed Apr. 27, 2001, entitled “METHOD FOR IMPLEMENTING A CLUSTER NETWORK FOR HIGH PERFORMANCE AND HIGH AVAILABILITY USING A FIBRE CHANNEL SWITCH FABRIC” (attorney docket no. 030048013US); Provisional U.S. Application No. 60/287,120, filed Apr. 27, 2001, entitled “MULTI-PROTOCOL NETWORK FOR ENTERPRISE DATA CENTERS” (attorney docket no. 030048014US); Provisional U.S. Application No. 60/286,918, filed Apr. 27, 2001, entitled “UNIFIED ENTERPRISE NETWORK SWITCH (UNEX) PRODUCT SPECIFICATION” (attorney docket no. 030048015US); Provisional U.S. Application No. 60/286,922, filed Apr. 27, 2001, entitled “QUALITY OF SERVICE EXAMPLE” (attorney docket no. 030048016US); Provisional U.S. Application No. 60/287,081, filed Apr. 27, 2001, entitled “COMMUNICATIONS MODEL” (attorney docket no. 030048017US); and Provisional U.S. Application No. 60/287,075, filed Apr. 27, 2001, entitled “UNIFORM ENTERPRISE NETWORK SYSTEM” (attorney docket no. 030048018US). Each of the following patent applications similarly include additional details about integrating multiple data communication processing techniques and about the use of virtual identifiers, and are also each hereby incorporated by reference in their entirety: Provisional U.S. Application No. 60/314,088 (attorney docket no. 030048015US1), filed Aug. 21, 2001 and entitled “INTERCONNECT FABRIC MODULE”; and Provisional U.S. Application No. 60/314,287, filed Aug. 22, 2001 and entitled “INTEGRATED ANALYSIS OF INCOMING DATA TRANSMISSIONS”.
- For illustrative purposes, some embodiments are described below in which the VI NIC is used as part of a Fibre Channel network and/or as part of an EDN architecture. However, those skilled in the art will appreciate that the techniques of the invention can be used in a wide variety of other situations and with other types of networks, including InfiniBand-based networks, and that the invention is not limited to use in Fibre Channel networks or with EDN architectures. Additional details about Fibre Channel are available in “Fibre Channel: A Comprehensive Introduction,” which is authored by Robert W. Kembel and published by Northwest Learning Associates, Inc., and which is hereby incorporated by reference in its entirety. Additional details about InfiniBand is available in the “InfiniBand Architecture Specification,
Volumes - FIG. 1 is a network diagram illustrating various nodes of an example Fibre Channel fabric-based interconnect network that are inter-communicating using virtual identifiers. In this example embodiment, multiple interconnect fabric modules (“IFMs”)110 with high-speed switching capabilities are used as intermediate routing devices to form an interconnect fabric, and
multiple nodes 105, anetwork manager 115 and a Multi-Protocol Edge Switch (“MPEX”) 120 are connected to the fabric. Each of the nodes has at least one VI NIC that uses virtual identifiers when communicating and receiving data. The MPEX is used to connect the Fibre Channel network to an external network, such as an Ethernet-based network, and similarly includes at least one VI NIC. Data is transmitted through the interconnect fabric using frames such as those defined by the Fibre Channel standard. - In this example embodiment, an IFM can be dynamically configured to interconnect its communications ports so that data can be transmitted through the interconnected ports. When the network manager receives a registration indication from a VI NIC for a data communication from a source node to a destination node, the network manager selects transmittal and response virtual identifiers to be used by the source and destination nodes when sending frames to each other. The network manager also identifies a path through the IFMs and their ports which frames will use when moving between the nodes. The network manager then configures the IFMs of the identified path so that when a frame that indicates the transmittal or response virtual identifiers is received at one of the IFMs, that frame is forwarded to the destination or source nodes via the path as appropriate. While the transmittal and response virtual identifiers thus use the same path (in opposite directions) in this example embodiment, they can use distinct paths in other embodiments.
- Each IFM may maintain a virtual identifier table for each of its ports that maps virtual identifiers to its destinations ports. When a frame is received at a source port, the IFM then uses the virtual identifier for that frame and the virtual identifier table for the source port to identify a destination port through which the frame is to be forwarded. Thus, in this embodiment, a virtual identifier identifies a path between devices, rather than identifying a source or a destination device. In one embodiment, a virtual identifier includes both a domain address and a virtual address. Each IFM is assigned a domain address, with the IFMs that are assigned the same domain address being in the same domain. The IFMs use the domain addresses to forward frames between domains, and the network manager may also configure the IFMs with inter-domain paths. When an IFM receives a frame whose virtual identifier has a domain address that matches its domain address, then the frame has arrived at its destination domain. The IFM then forwards the frame in accordance with the virtual address of the virtual identifier. If, however, the domain addresses do not match, then the frame has not arrived at its destination domain, and the IFM forwards the frame using an inter-domain path. The virtual identifier table for an IFM port may thus be divided in some embodiments into a domain address table and a virtual address table that respectively map domain addresses and virtual addresses to destination ports through which frames are to be forwarded.
- As an illustrative example of using virtual identifiers for routing data communications, FIGS.2A-2C illustrate an example of VI NIC embodiments using virtual identifiers to inter-communicate through an example Fibre Channel Fabric network. In particular, FIG. 2A illustrates
various VI NICs IFMs - A first example data communication begins when
VI NIC 250, which is connected toport 0 ofIFM 262, initiates a data communication toVI NIC 270, which is connected to port 25 ofIFM 264. This data communication is indicated to be a persistent connection, andVI NIC 250 receives a transmittal virtual identifier A (e.g., from a network manager for the network, not shown) to be used for routing communications toVI NIC 270.VI NIC 270 correspondingly receives a response virtual identifier B to be used for routing responses toVI NIC 250. Those skilled in the art will appreciate that virtual identifiers can be represented in various formats, such as 24-bit identifiers in a Fibre Channel network. As previously discussed,VI NIC 250 is also notified of the response virtual identifier B supplied toVI NIC 270 so thatVI NIC 250 can recognize communications received fromVI NIC 270 as being part of the persistent connection and can forward those received data communications in an appropriate manner (e.g., to an executing application (not shown) on the node to whichVI NIC 250 belongs).VI NIC 270 similarly maps received data communications using virtual identifier A to an appropriate destination on the node to whichVI NIC 270 belongs. The transmittal and response virtual identifiers A and B each correspond to a path throughIFMs VI NIC 250 using the transmittal virtual identifier A will be received atport 0 ofIFM 262, and will be forwarded by that port alonglink 262 a tooutput port 29 ofIFM 262. That output port is statically connected toport 5 ofIFM 264, which will receive the data communications using the transmittal virtual identifier A and will forward them alonglink 264 a to output port 25 ofIFM 264.VI NIC 270 will then receive the data communication. Data communications fromVI NIC 270 toVI NIC 250 will return in a similar manner along that same path in an opposite direction. - As previously noted, FIG. 2B illustrates a table reflecting the example data communications between the various VI NICs, and entries1 a and 1 b of the table represent the dedicated connection between
VI NICs VI NIC 250 uses virtual identifier A as its transmittal virtual identifier and virtual identifier B as its response virtual identifier for the dedicated connection, whileVI NIC 270 uses them in an opposite matter. - After the connection between
VI NICs VI NIC 250 initiates a connectionless data communication toVI NIC 275, which is connected to port 28 ofIFM 264. Transmittal and response virtual identifiers C and D are provided toVI NIC 250 to be used for the data communication, with the transmittal virtual identifier C corresponding to a path including link 262 a fromport 0 ofIFM 262 to port 29 ofIFM 262, followed bylink 264 b fromport 5 ofIFM 264 to port 28 ofIFM 264. In the illustrated embodiment, a response virtual identifier is provided toVI NIC 250 so that response information can be provided toVI NIC 250 if necessary, such as an error message indicating that data communication was not successful. At least the transmittal virtual identifier C will also be provided toVI NIC 275 so that received data communications can be recognized and forwarded in an appropriate manner.Entry 2 of the table illustrated in FIG. 2B corresponds to this data communication. - Immediately after the data communication to
VI NIC 275,VI NIC 250 initiates a data communication toVI NIC 280, which is connected to port 20 ofIFM 266.VI NIC 250 receives transmittal and response virtual identifiers E and F, with the path corresponding to transmittal identifierE including link 262 c fromport 0 to port 31 ofIFM 262 and link 266 a fromport 0 to port 20 ofIFM 266.Port 31 ofIFM 262 is statically connected toport 0 ofIFM 266.Entry 3 of the table illustrated in FIG. 2B corresponds to this data communication. - Note that after this data communication,
port 0 ofIFM 262 is configured (barring any reconfigurations) to route data communications fromVI NIC 250 that use any one of the transmittal virtual identifiers A, B or C. Whileport 0 forwards data communications in the illustrated embodiments for these transmittal virtual identifiers to different ports, that is not necessary. For example,port 0 could be configured to forward data communications for all the transmittal virtual identifiers toport 29 ofIFM 262, andport 5 ofIFM 264 could then be configured to forward data communications using transmittal virtual identifier C to port 10 ofIFM 264 for communication to port 8 ofIFM 266, which could then forward that received data communication to port 20 ofIFM 266 for delivery toVI NIC 280. -
VI NIC 275 next initiates a data communication that is determined (e.g., by the network manager) should be routed toVI NICs VI NIC 275 then receives a transmittal virtual identifier E and response virtual identifier G to be used for the data communication. When used byVI NIC 275, transmittal virtual identifier E corresponds to two paths through the network that lead to the two destination VI NICs. In particular, a path toVI NIC 250 includeslink 264 c fromport 28 to port 6 ofIFM 264 and link 262 b fromport 30 toport 0 ofIFM 262. Port 6 ofIFM 264 is statically connected to port 30 ofIFM 262. The path fromVI NIC 275 todestination VI NIC 280 includeslinks 264 b fromport 28 to port 10 ofIFM 264 and link 266 b from port 8 to port 20 ofIFM 266.Port 10 ofIFM 264 is statically connected to port 8 ofIFM 266.Entry 4 of the table illustrated in FIG. 2B corresponds to this data communication. - In this most recent data communication example,
port 28 ofIFM 264 is configured such that when it receives a data communication using the transmittal virtual identifier E fromVI NIC 275, the port divides the received data communication and sends a copy of the data communication to both ofports 6 and 10 toIFM 264 for forwarding. Thus, this single transmittal virtual identifier is used to send a data communication to multiple destinations. Note, however, that it is not necessary that the port that initially receives the data communication (i.e.,port 28 ofIFM 264 in this example) be the one to divide a received data communication into multiple copies. For example,port 28 ofIFM 264 could instead be configured to send only a single copy of the received data communication to port 6 ofIFM 264, andport 30 ofIFM 262 could instead be configured to send a copy of the received data communication to bothports IFM 262. Alternately,port 28 ofIFM 264 could be configured as initially discussed, butport 30 ofIFM 262 could instead be configured to send copies of the received data communication to bothports IFM 262 if VI NIC 255 is determined to be another destination for the data communication. - Note also that the transmittal virtual identifier E used by
VI NIC 275 in this most recent example data communication is identical to the transmittal virtual identifier E previously used byVI NIC 250 for data communication toVI NIC 280. In this illustrated embodiment, the paths corresponding to virtual identifiers are relative to the source from which those data communications originate, and thus different VI NICs can use the same virtual identifier to correspond to different paths and to different destinations. This is possible since each of the ports of each of the IFMs can be separately configured in the illustrated embodiment to handle data communications having specified virtual identifiers. Thus, for example,port 28 ofIFM 264 is configured to forward data communications received fromVI NIC 275 that use the transmittal virtual identifier E toports 6 and 10 ofIFM 264, whileport 0 ofIFM 262 is configured to forward a data communication received fromVI NIC 250 that uses the transmittal virtual identifier E to port 31 ofIFM 262. - FIG. 2C illustrates an example of a virtual identifier translation table used by
VI NIC 250 when transmitting and receiving the example data communications. In the illustrated example, multiple applications programs are executing on a node to whichVI NIC 250 corresponds and are using TCP/IP socket communication mechanisms to specify their data communications. In addition, in the illustrated example the VI NIC can identify various QOS communication parameters to be associated with each data communication. Each entry in the virtual identifier translation table corresponds to a distinct data communication of which the VI NIC has been notified. For example,entry 1 in the table corresponds to the previously discussed dedicated connection betweenVI NICs - In this example, the data communication for
entry 1 was initiated by an executing source application opening a TCP/IP socket having a destination of IP address “128.32.78.105” and a destination node software port of 3523, with this TCP/IP socket information stored incolumn 221 of the table. In addition, information is stored incolumn 223 of the virtual identifier translation table to enable received data communications to be forwarded to the appropriate executing application, which in this case is the source application. In this example, theVI NIC 250 determines (e.g., based on the received indication of the data communication) that the source application has source socket information that includes an IP address of “153.83.28.125” and a software port number of 3025 for the node on which the application is executing. - In this example, the
VI NIC 250 also determines appropriate transmittal and response virtual identifiers for the data communication, as well as various QOS parameters related to the data communication (e.g., by registering the data communication with a network manager that supplies the virtual identifiers and QOS parameters). The transmittal and response virtual identifiers are stored incolumns more columns 229. In this example embodiment, the identified QOS communication parameters include a specified COS and an authorized minimum and maximum transmission priority. As shown, this data communication is assigned a COS of “1” (e.g., which may correspond to dedicated connections) and a transmission priority range between 0 and 127 (e.g., the full range for a 7-bit priority value). - In a similar manner,
entries example communications entries column 223. Conversely, even when multiple indicated data communications specify the same destination IP address, the data communications may be routed to different destination nodes, such as is shown withentries column 221 at least the minimal set of information needed to distinguish between the different data communications of which it is notified. For example, if indicated data communications have destinations selected based solely on a type of the executing application or on a type of the data being transmitted, an indication of that type of information could be stored incolumn 221 instead of the destination TCP/IP socket information. In addition, in some embodiments an application could have multiple distinct virtual identifiers that can be used to communicate with a single destination, such as if the virtual identifiers are assigned to different paths through the network or have differing associated QOS parameters. Similarly, different applications on a source node could in various embodiments use the same or different virtual identifiers to communicate with a single destination, regardless of whether different virtual identifiers were assigned to different paths through the network. -
Entry 4 in the virtual identifier translation table reflects a data communication initiated by a source other thanVI NIC 250, in this case beingVI NIC 275. In that situation,VI NIC 250 will store data incolumn 223 of the virtual identifier translation table indicating how to forward those received data communications (such as based on destination TCP/IP socket information included in a first of those received data communications), but need not store identification information forVI NIC 275 incolumn 221 since the example data communication is a 1-way connectionless transmittal. In addition, in the illustrated embodiment the transmittal virtual identifier E used byVI NIC 275 to route the data communication toVI NIC 250 is shown incolumn 227 ofentry 4 of the virtual identifier translation table as being the response virtual identifier for the data communication, since from the perspective ofVI NIC 250 the virtual identifier is used for received data communications. Those skilled in the art will appreciate that in other embodiments other types of information could be stored in the virtual identifier translation table (e.g., connection preemption information) or existing types of information may not be present, and that the existing information could also be stored in other ways (e.g., by having separate virtual identifier translation tables for outgoing and incoming data communications). - FIG. 3 illustrates a
node computing device 300 suitable for executing an embodiment of a VI NIC that uses virtual identifiers when transmitting and receiving data communications, as well as illustrating various othernode computing devices 350 with whichnode 300 can inter-communicate. The nodes are inter-connected through anInterconnect Fabric 380, and aNetwork Manager 370 is similarly connected to the Fabric. - The
node computing device 300 includes aCPU 305, various I/O devices 310,storage 320 andmemory 330. The I/O devices include at least onenetwork interface 312 which connects the node to the Interconnect Fabric, as well as computer-readable media drive 313 and various other I/O devices 314. An embodiment of aVI NIC 340 is executing in memory, and it includes aCommunication Registrar component 342, an OutgoingCommunication Translator component 344 and an IncomingCommunication Translator component 346. While the VI NIC in the illustrated embodiment includes multiple components executing in the main memory of the node, those skilled in the art will appreciate that other arrangements are possible in other embodiments, such as implementing a VI NIC together with a network interface on a single plug-in card that attaches to a bus for the node and that may include stand-alone memory and/or processing capabilities including hard-wired logic. In some embodiments, some or all of the VI NIC components may be a device driver for the node, such as for one of the network interfaces. In addition, those skilled in the art will appreciate that in other embodiments multiple VI NICs may be executing on a single node, such as to correspond to multiple network interfaces. - In the illustrated embodiment,
multiple application programs 335 are also executing in memory, and can initiate or receive data communications with application programs executing on remote nodes. When one of the application programs initiates a data communication, the VI NIC is notified of the data communication, and the Communication Registrar component then registers that the communication with the Network Manager. In response, the Communication Registrar component receives a pair of transmittal and response virtual identifiers from the Network Manager as well as various QOS communication parameters for that data communication. In order to register a data communication with the Network Manager, the Communication Registrar component retrieves and uses networkmanager communication parameters 327 from storage that may include a transmittal virtual identifier to route the communication to the Network Manager and a response virtual identifier to recognize the information received back from the Network Manager. The network manager communication parameters can be obtained in various ways, such as directly from the Network Manager during initialization of the node and/or the network. After the Communication Registrar component receives the virtual identifier pair and other information for the registered data communication, it stores that information in the virtual identifier translation table 325 on storage for use when transmitting and receiving data communications. - When an application program is ready to perform a data communication, the Outgoing Communication Translator receives notification of the communication to be performed. If the initial notification used by the Communication Registrar to initiate registration was itself an indication to perform a communication, the Outgoing Communication Translator component can receive this notification from the Communication Registrar component after the registration has been completed. The Outgoing Communication Translator component analyzes the information provided about the data communication to be performed, maps that data communication to a corresponding entry in the virtual identifier translation table in order to determine the appropriate transmission information to be used for the data communication, and then transmits the data using the information retrieved from the virtual identifier translation table. Those skilled in the art will appreciate that the Outgoing Communication Translator may also need to perform additional formatting of the data to be transmitted, such as to generate one or more appropriate Fibre Channel frames for the illustrated example in which the network is a Fibre Channel Interconnect Fabric. In addition, in some embodiments the Outgoing Communication Translator component may verify the accuracy of the communication indicated by the application program before transmitting the communication, such as to ensure that a priority requested by the application program to be used for the transmission falls within the transmission priority bounds assigned to the data communication.
- In a similar manner, the Incoming Communication Translator component is notified when the network interface receives incoming data communications that are routed using virtual identifiers. Upon receiving notification of such a received data communication, the Incoming Communication Translator determines the transmittal virtual identifier used to route the data communication to the node and uses the virtual identifier translation table to map that virtual identifier to one or more of the application programs executing in memory. Upon determining one or more appropriate application programs to receive the data communication, the VI NIC then forwards the received data communication to those application programs.
- In the case of a received data communication that is a response to a data communication initiated at
node 300, the necessary information for forwarding the received data communication will already be present in the virtual identifier translation table based on the Communication Registrar component having previously registered that data communication. In the case of data communications that are initiated at another node, however, the necessary information to forward the received data communication to an executing application program may or may not already be present in the virtual identifier translation table. For example, in some embodiments the Network Manager will have supplied the appropriate information to the VI NIC (e.g., to the Communication Registrar component) before the data communication is received, and the information could be stored in the virtual identifier translation table at that time. In other embodiments, the appropriate information for forwarding the received data communication may be added to the virtual identifier translation table at the time that the data communication is received, such as by the Incoming Communication Translator component analyzing information included in the data communication to identify the needed information. - In some embodiments, the Incoming Communication Translator component will also process received data communications in various ways before forwarding them to one or more appropriate application programs. For example, in some embodiments application programs may expect received data communications to include information specific to the receiving application, such as one or more network addresses associated with that application. If the VI NIC has access to the appropriate information for the application, such as from the virtual identifier translation table, the Incoming Communication Translator component can add that information to a received data communication when it is missing or incorrect (or for every received data communication). For example, when the executing applications are using TCP/IP socket mechanisms or more generally receiving data in the form of IP packets, the Incoming Communication Translator component could ensure that the data communication forwarded to an executing application includes the appropriate IP address and/or port number associated with that application. In addition, those skilled in the art will appreciate that the Incoming Communication Translator component may need to reformat received information into an appropriate form for the application receiving the information, such as by converting a received Fibre Channel frame into one or more IP packets.
- Those skilled in the art will also appreciate that
node computing device 300 is merely illustrative and is not intended to limit the scope of the present invention.Computing device 300 may be connected to other devices that are not illustrated, including one or more networks such as the Internet or via the World Wide Web. In addition,computing device 300 could be one part of an EDN, such as by being a device at any one or more of the EDN sub-networks. Various available products could be used as network interfaces and/or to implement some or all of the functionality of a VI NIC, including products from Banderacom, Inc. and Mellanox Technologies. Those skilled in the art will also appreciate that the functionality provided by the illustrated VI NIC components may in some embodiments be combined in fewer components or distributed in additional components. Similarly, in some embodiments, the functionality of some of the illustrated components may not be provided and/or other additional functionality may be available. - Those skilled in the art will also appreciate that, while various items are illustrated as being stored in memory while being used, these items or portions of them can be transferred between memory and other storage devices for purposes of memory management and data integrity. Similarly, items illustrated as being present on storage while being used can instead be present in memory and transferred between storage and memory. Some or all of the components and data structures may also be stored (e.g., as instructions or structured data) on a computer-readable medium, such as a hard disk, a memory, a network, or a portable article to be read by an appropriate drive. The components and data structures can also be transmitted as generated data signals (e.g., as part of a carrier wave) on a variety of computer-readable transmission mediums, including wireless-based and wired/cable-based mediums. Accordingly, the present invention may be practiced with other computer system configurations.
- FIG. 4 is a flow diagram of an embodiment of the
Communication Registrar routine 400. The routine receives indications of new data communications from either a local executing application or from a remote network manager, registers new data communications indicated by local applications with the network manager and receives appropriate virtual identifiers and other information to be used for the data communication in response, and stores any received information from the network manager in the virtual identifier translation table for use in processing incoming and outgoing data communications. - The routine begins at
step 405 where an indication is received of a new communication. The routine continues to step 410 where it determines if the indication was received from the network manager, such as for a data communication initiated by a remote source. If the data communication is instead from a local executing application, the routine continues to step 415 to determine whatever information about the data communication that will be used to register the data communication with the network manager so that the network manager can determine appropriate destinations for the data communication. In the illustrated embodiment, information is determined about the type of data to be communicated, about the application that initiated the communication, and about any destination information specified by the local application. - The routine then continues to step420 where it is determined if the indicated data communication needs to be registered with the network manager. For example, if the indicated data communication is a transmittal of data for an existing persistent connection, the connection will already have been registered and registration is not necessary. In other situations, even a new data communication may not need to be registered, such as a data communication that will be communicated in the same manner and to the same destination as a previous communication, as the information provided for the previous data communication may be able to be reused. In particular, the routine compares whenever information is used to uniquely identify the destination and/or the manner of transmission for the indicated new data communication, and determines if there is a match for that information already present in the virtual identifier translation table. Those skilled in the art will appreciate that in other embodiments the routine may not make this determination and instead send registration information to the network manager for each new indicated data communication, such as if the network manager provides functionality to determine whether to reuse previously provided transmission information or to instead send new transmission information.
- If it is determined in
step 425 that the new indicated data communication needs to be registered, the routine continues to step 430 to send a communication registration notification to the network manager that includes the determined communication type information. The routine then continues to step 435 to receive from the network manager an indication of a pair of transmittal and response virtual identifiers for the data communication, as well as optionally receiving other communication parameters to be used as part of the communication. The routine then continues to step 440 to store the received information in the virtual identifier translation table, as well as to optionally store routing information with which to route a response data communication back to the application that initiated this new data communication. Afterstep 440, or if it was instead determined instep 425 that the new indicated data communication did not need to be registered, the routine continues to step 490 to determine if there are more indications to receive. If so, the routine returns to step 405, and if not the routine continues to step 499 and ends. - If it was instead determined in
step 410 that the received indication of the new data communication is from the network manager, the routine continues to step 445 to receive transmission information related to that new data communication. In particular, in the illustrated embodiment the network manager will supply information about a pair of transmittal and response virtual identifiers to be used to route the indicated data communication to the node and to be used to route any responses back to the originating node, and will optionally also supply other communication parameters that will be used as part of the data communications. The routine then continues to step 450 to determine a local application to which the incoming communication is to be forwarded, such as based on information supplied by the network manager (e.g., TCP/IP socket information provided by the source application initiating the new data communication). Afterstep 450, the routine continues to step 440 to store the received information from the network manager and the routing information for the local application in the virtual identifier translation table. - FIG. 5 is a flow diagram of an embodiment of the Outgoing
Communication Translator routine 500. The routine receives indications of outgoing data communication, determines an appropriate transmittal virtual identifier to be used for routing the data communication as well as optionally determining other communication parameters to be used, and transmits the data communication using the determined transmittal virtual identifier and other determined communication parameters. - The routine begins at
step 505 where an indication is received of an outgoing communication. The routine continues to step 510 to execute a subroutine to verify that the communication transmittal is authorized. In other embodiments, this verification step may not be performed. The routine next continues to step 515 to determine if the communication transmittal was determined to be authorized, and if not continues to step 520 to send an error message to the application that initiated the data communication. If it was instead determined instep 515 that the communication transmittal was authorized or if no authorization verification was performed, the routine continues to step 525 to map communication type information for the indicated data communication to a corresponding entry in the virtual identifier translation table for a registered data communication. For example, in some embodiments the communication type information to be used for the mapping may be destination TCP/IP socket information provided by the application that initiated the data communication. - The routine then continues to step530 to format the outgoing data communication in a manner appropriate for the network type being used and to use the transmittal virtual identifier and any other communication parameters indicated in the virtual identifier translation table entry. In the illustrated embodiment, one or more Fibre Channel frames are generated by storing response and transmittal virtual identifiers in the Fibre Channel frame locations for source and destination identifiers and by storing the data to be communicated as the payload of the frames, and the header information for the frames is specified to correspond to a Fibre Channel COS and a priority that is consistent with the information in the virtual identifier translation table entry. The routine then continues to step 535 to send the generated frames to the local IFM attached to the hardware output port to which the VI NIC corresponds. After
step 535 or step 520, the routine continues to step 590 to determine if there are more indications to be received. If so, the routine returns to step 505, and if not the routine continues to step 599 and ends. - FIG. 6 is a flow diagram of an embodiment of the Verify
Communication Transmittal subroutine 600. The subroutine receives an indication of a data communication and determines if the data communication is consistent with corresponding information that was stored in the virtual identifier translation table based on a prior registration for the data communication. The subroutine begins atstep 605 where an indication is received of a communication to be transmitted. The subroutine continues to step 610 to determine if the virtual identifier translation table has an entry corresponding to the communication. Instep 615, if there was not a corresponding entry, the subroutine to step 635 to return an indication that the data communication is not authorized. If it is instead determined instep 615 that a corresponding entry was present, the subroutine continues to step 620 to determine if the manner of the transmittal of the data communication is consistent with the transmission information in the corresponding entry, including use of virtual identifiers and other communication parameters. In some embodiments, it is verified that the data communication includes a pair of transmittal and response virtual identifiers that were provided together by the network manager and that the COS and priority for the data communication corresponds to the specified COS and priority limits provided by the network manager. If instep 625 it is determined that the data communication transmittal was not consistent, the subroutine continues to step 635. If the data communication is instead determined to be consistent, the subroutine continues to step 630 to return an indication that the data communication is authorized. Afterstep - FIG. 7 is a flow diagram of an embodiment of the Incoming
Communication Translator routine 700. The routine receives indications of incoming data communications and forwards those data communication to appropriate local destinations such as an executing application. In some situations, the routine can also modify the incoming data communication in various ways, such as to replace missing or incorrect destination application-specific information with appropriate information. - The routine begins at
step 705 where an indication is received of an incoming data communication. The routine continues to step 710 to execute a subroutine to determine whether the data communication is authorized. Those skilled in the art will appreciate that in some embodiments such data communication verification may not be performed. Instep 715, the routine then determines if the data communication is authorized, and if not continues to step 720 to send an error message to the sender of the communication. If it is instead determined instep 715 that the data communication is authorized or if the verification is not performed, the routine continues to step 725 to map the transmittal virtual identifier (or in some embodiments the pair of the transmittal and response virtual identifiers) used to route the data communication to a corresponding entry in the virtual identifier translation table. - In
step 730, the routine then determines if the data communication includes information specific to the destination application that is incorrect or is missing, such as a network address. If so and if the correct information is accessible, such as by being stored in the virtual identifier translation table, the routine then continues to step 735 to replace the included incorrect information with the correct information. Those skilled in the art will appreciate that in other embodiments, if correct destination application-specific information is accessible it could always be used to replace information sent in a received data communication without checking if the included information is missing or incorrect. Afterstep 735, or if it was instead determined that instep 730 that incorrect information was not included or that correct information to be used as a replacement was not accessible, the routine continues to step 740 to forward the received data communication to the appropriate local destination by using the routing information from the corresponding entry in the virtual identifier translation table. In addition, the routine may format the data communication in a manner appropriate for the local destination, such as by converting the received data communication into IP packet format. The routine then continues to step 795 to determine if there are more indications to be received. If so, the routine returns to step 705, and if not the routine continues to step 799 and ends. - Those skilled in the art will also appreciate that in some embodiments the functionality provided by the routines discussed above may be provided in alternate ways, such as being split among more routines or consolidated into less routines. Similarly, in some embodiments illustrated routines may provide more or less functionality than is described, such as when other illustrated routines instead lack or include such functionality respectively, or when the amount of functionality that is provided is altered. Those skilled in the art will also appreciate that the data structures discussed above may be structured in different manners, such as by having a single data structure split into multiple data structures or by having multiple data structures consolidated into a single data structure. Similarly, in some embodiments illustrated data structures may store more or less information than is described, such as when other illustrated data structures instead lack or include such information respectively, or when the amount or types of information that is stored is altered.
- From the foregoing it will be appreciated that, although specific embodiments have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. Accordingly, the invention is not limited except as by the appended claims. In addition, while certain aspects of the invention are presented below in certain claim forms, the inventors contemplate the various aspects of the invention in any available claim form. For example, while only one some aspects of the invention may currently be recited as being embodied in a computer-readable medium, other aspects may likewise be so embodied. Accordingly, the inventors reserve the right to add additional claims after filing the application to pursue such additional claim forms for other aspects of the invention.
Claims (85)
1. A method for a source node to transmit data to destinations nodes by using virtual path identifiers to route the data through a network, the method comprising:
for each of one or more source applications executing on the source node,
receiving from the source application multiple instructions that each indicate to transmit data to a remote node; and
for each of the multiple indicated data transmissions,
determining whether a network manager for the network has previously provided a transmittal virtual path identifier that is assigned to a path through the network from the source node to a remote destination node for the indicated data transmission;
when it is determined that the network manager has previously provided a transmittal virtual path identifier that is assigned to the path, selecting that transmittal virtual path identifier to be used to route the indicated data transmission through the network along the path;
when it is determined that the network manager has not previously provided a transmittal virtual path identifier that is assigned to the path,
registering the indicated data transmission with the network manager and receiving in response a transmittal virtual path identifier that is assigned to the path; and
selecting the received transmittal virtual path identifier to be used to route the indicated data transmission through the network along the path; and
transmitting the data to the destination node by using the selected transmittal virtual path identifier, so that the data is routed through the network along the path assigned to the selected transmittal virtual path identifier.
2. The method of claim 1 wherein the registering of an indicated data transmission from a source node to a destination node includes configuring each of multiple intermediate network routing devices along the path between the source node and the destination node so as to forward a data transmittal indicating the transmittal virtual path identifier assigned to that path to a next of the intermediate routing devices.
3. The method of claim 1 wherein the path to which a transmittal virtual path identifier is assigned is relative to a source using that transmittal virtual path identifier to transmit data, and wherein one of the received transmittal virtual path identifiers used by the source node to transmit data to a destination node is also assigned to another path through the network from a distinct source node to a distinct destination node and is used by that distinct source node to transmit data to that distinct destination node.
4. The method of claim 1 wherein each of the received instructions specify a destination network address that is associated with a remote node, and wherein the determining of whether the network manager has previously provided a transmittal virtual path identifier that is assigned to a path through the network from the source node to a destination node includes determining whether a transmittal virtual path identifier is associated with the specified destination network address.
5. The method of claim 4 wherein the registering of the indicated data transmissions includes supplying to the network manager the destination network addresses specified for those indicated data transmissions, wherein the network manager selects the destination nodes for those indicated data transmissions based on the registering, and wherein for at least some of those indicated data transmissions the network manager selects a remote destination node that is distinct from the remote node associated with the network address specified for that indicated data transmission.
6. The method of claim 1 wherein the registering of an indicated data transmission includes supplying to the network manager indications of multiple of a type of the data to be transmitted as part of that data transmission, a specified manner of data transmission for that data transmission, the source application that indicated that data transmission, and a destination application at the destination node for that data transmission that is to receive that data transmission, and wherein the transmittal virtual path identifier that is received in response to the registering is assigned to a path to a destination node that is selected based at least in part on a combination of multiple of the supplied indications.
7. The method of claim 1 wherein the destination node for at least some of the indicated data transmissions is selected based on a type of data to be transmitted such that the registering of each of those data transmissions includes supplying to the network manager the data type for that indicated data transmission and such that the transmittal virtual path identifier that is received in response to that registering is assigned to a path to a remote node that had subscribed to the data type for that indicated data transmission.
8. The method of claim 1 wherein multiple destination nodes are selected for at least some of the indicated data transmissions and wherein for those indicated data transmissions the transmittal virtual path identifier that is received in response to the registering is assigned to a path from the source node that divides in the network so as to lead to the multiple destination nodes.
9. The method of claim 1 wherein the registering of an indicated data transmission includes supplying to the network manager an authentication key specific to the source node, and wherein a transmittal virtual path identifier is not received in response to the registering unless the supplied authentication key corresponds to the node performing the registering.
10. The method of claim 1 wherein the registering of an indicated data transmission includes transmitting information to the network manager by using a previously provided transmittal virtual path identifier that will route the transmitted information through the network to the network manager.
11. The method of claim 1 including receiving in response to the registering of each of the indicated data transmissions one or more Quality Of Service parameters related to that data transmission, and wherein the transmitting of data for each of the registered data transmissions includes performing that transmitting in accordance with the received Quality Of Service parameters related to that data transmission.
12. The method of claim 1 including:
receiving in response to the registering of at least some of the indicated data transmissions a response virtual path identifier assigned to a path from the destination node for that indicated data transmission to the source node; and
routing received data transmissions that use one of the response virtual path identifiers to the application that indicated the data transmission for which that response virtual path identifier was received.
13. A computer-implemented method for using virtual identifiers to communicate data through a network, the method comprising:
receiving an indication of data to be communicated through the network to a destination having a network address;
determining a virtual identifier that is distinct from the network address and that corresponds to a path through the network to the destination; and
indicating to communicate the indicated data to the destination by using the determined virtual identifier to route the indicated data through the network.
14. The method of claim 13 wherein the destination is a node of the network, and wherein the network address is a physical network address corresponding to the node.
15. The method of claim 13 wherein the destination is a node of the network, and wherein the network address is a logical network address corresponding to the node.
16. The method of claim 13 wherein the destination is specified using a logical name that corresponds to the network address and that is distinct from the virtual identifier.
17. The method of claim 13 wherein the received indication of the data to be communicated includes an indication of the network address.
18. The method of claim 13 wherein the received indication of the data to be communicated includes an indication of the destination.
19. The method of claim 13 wherein the virtual identifier is associated with the path through the network by a network manager for the network.
20. The method of claim 19 wherein the associating of the virtual identifier with the path includes configuring a last routing device along the path to forward received data indicating the virtual identifier to the destination and configuring each other routing device along the path to forward received data indicating the virtual identifier to a next of the routing devices along the path.
21. The method of claim 13 wherein the virtual identifier is not associated with any node of the network.
22. The method of claim 13 wherein the determining of the virtual identifier includes notifying a network manager for the network of the data communication and receiving the virtual identifier from the network manager for use in communicating the indicated data.
23. The method of claim 22 wherein the notifying of the network manager of the data communication includes supplying an indication of a type of the data to be communicated, and wherein the destination of the path corresponding to the received virtual identifier is selected based at least in part on the indicated data type.
24. The method of claim 22 wherein the notifying of the network manager of the data communication includes supplying an indication of a manner of communicating the data, and wherein the destination of the path corresponding to the received virtual identifier is selected based at least in part on the indicated communication manner.
25. The method of claim 22 wherein the notifying of the network manager of the data communication includes supplying an indication of a source application that indicated the data to be communicated, and wherein the destination of the path corresponding to the received virtual identifier is selected based at least in part on the source application.
26. The method of claim 22 wherein the notifying of the network manager of the data communication includes supplying an indication related to a destination application that is to receive the communicated data, and wherein the destination of the path corresponding to the received virtual identifier is selected based at least in part on the indicated destination application.
27. The method of claim 22 wherein the method is performed by a source having a unique identifier, and wherein the notifying of the network manager of the data communication includes supplying the unique identifier so that the network manager can authenticate the source before the supplying of the virtual identifier.
28. The method of claim 22 wherein the notifying of the network manager of the data communication includes communicating information to the network manager by using a virtual identifier associated with the network manager to route that information through the network to the network manager, the virtual identifier associated with the network manager being distinct from the received virtual identifier.
29. The method of claim 22 wherein the notifying of the network manager of the data communication is performed only for an initial communication to that destination, and wherein subsequent communications to that destination select the previously received virtual identifier for use in the communicating.
30. The method of claim 13 including determining a Class Of Service for the data communication, and wherein the indicating to communicate the indicated data includes indicating to perform that communicating using the determined Class Of Service.
31. The method of claim 13 including determining at least one authorized priority for the data communication, and wherein the indicating to communicate the indicated data includes indicating to perform that communicating at one of the authorized priorities.
32. The method of claim 13 wherein the method is performed by a source node, and including:
determining a second virtual identifier that corresponds to a path through the network from the destination to the source node; and
routing received data communications that use the second virtual identifier to an application executing on the source node from which the indication of the data communication was received.
33. The method of claim 13 wherein the received indication of the data to be communicated includes an identifier of a first destination, and wherein the destination to which the path of the determined virtual identifier leads is distinct from the first destination.
34. The method of claim 13 wherein the indicating to communicate the indicated data is performed by a first source, wherein the path corresponding to the virtual identifier is relative to the first source, and wherein a distinct second source uses that virtual identifier to correspond to a distinct path through the network to a distinct destination.
35. The method of claim 13 including identifying multiple destinations for the communicated data, and wherein the path through the network corresponding to the determined virtual identifier leads to each of the multiple destinations.
36. A computer-readable medium whose contents cause a computing device to use virtual identifiers to communicate data through a network, by performing a method comprising:
receiving an indication of data to be communicated through the network to a destination;
determining a virtual identifier that corresponds to a path through the network to the destination; and
indicating to communicate the indicated data to the destination by using the determined virtual identifier to route the indicated data through the network.
37. The computer-readable medium of claim 36 wherein the determining of the virtual identifier includes notifying a network manager for the network of the indicated data to be communicated to the destination and receiving the virtual identifier from the network manager for use in communicating the indicated data.
38. The computer-readable medium of claim 36 wherein the computer-readable medium is a memory of a computer system.
39. The computer-readable medium of claim 36 wherein the computer-readable medium is a data transmission medium transmitting a generated data signal containing the contents.
40. A computing device for using virtual identifiers to communicate data through a network, comprising:
a first module capable of receiving an indication of data to be communicated through the network to a destination having a network address;
a second module capable of determining a virtual identifier that is distinct from the network address and that corresponds to a path through the network to the destination; and
a third module capable of indicating to communicate the indicated data to the destination by using the determined virtual identifier to route the indicated data through the network.
41. The computing device of claim 40 including at least one application program executing in memory of the computing device, and wherein the indication of the data to be communicated is received from one of the executing application programs.
42. The computing device of claim 40 wherein the second module determines the virtual identifier by notifying a network manager for the network of the indicated data to be communicated to the destination and by receiving the virtual identifier from the network manager for use in communicating the indicated data.
43. The computing device of claim 40 wherein the first, second and third modules are part of a Network Interface Controller for the computing device.
44. The computing device of claim 40 wherein the computing device is a node of the network.
45. The computing device of claim 40 wherein the first, second and third modules are executing in memory of the computing device.
46. A computer system for using virtual identifiers to communicate data through a network, comprising:
means for receiving an indication of data to be communicated through the network to a destination having a network address;
means for determining a virtual identifier that is distinct from the network address and that corresponds to a path through the network to the destination; and
means for indicating to communicate the indicated data to the destination by using the determined virtual identifier to route the indicated data through the network.
47. A method for a computing device to use virtual identifiers to communicate data through a network, the method comprising:
receiving an indication to communicate data through the network to a destination;
registering the indicated data communication with a network manager for the network;
receiving from the network manager a virtual identifier that can be used to route the data communication to the destination through the network; and
indicating to communicate the data to the destination by using the virtual identifier for routing of the data.
48. The method of claim 47 wherein the destination is a node having a network address distinct from the virtual identifier.
49. The method of claim 47 wherein the virtual identifier is associated by the network manager with a path through the network to the destination.
50. The method of claim 49 wherein the associating is performed in response to the registering.
51. The method of claim 47 wherein the virtual identifier is not associated with the destination before the registering.
52. The method of claim 47 including receiving from the network manager an authorized Class Of Service for the data communication, and wherein the indicating to communicate the data includes indicating to perform that communicating using the authorized Class Of Service.
53. The method of claim 47 including receiving from the network manager an indication of at least one authorized priority for the data communication, and wherein the indicating to communicate the indicated data includes indicating to perform that communicating at one of the authorized priorities.
54. The method of claim 47 including:
determining a second virtual identifier that corresponds to a response path from the destination through the network; and
routing received data communications that use the second virtual identifier to an executing application from which the indication of the data communication was received.
55. The method of claim 47 including identifying multiple destinations for the communicated data, and wherein the virtual identifier routes the communicated data to each of the multiple destinations.
56. A computer-readable medium containing instructions that when executed cause a computing device to use virtual identifiers to communicate data through a network, by performing a method comprising:
receiving an indication to communicate data through the network to a destination;
registering the indicated data communication with a network manager;
receiving from the network manager a virtual identifier that can be used to route the data communication to the destination through the network; and
indicating to communicate the data to the destination by using the virtual identifier.
57. A network node computing device for using virtual identifiers to communicate data through a network, comprising:
a first module capable of receiving an indication of data to be communicated through the network to a destination having a network address;
a second module capable of registering the indicated data communication with a network manager for the network and of receiving from the network manager a virtual identifier that can be used to route the data communication to the destination through the network; and
a third module capable of indicating to communicate the data to the destination by using the virtual identifier for routing of the data.
58. A method for a source node to use virtual path identifiers to transmit data through a network, each virtual path identifier corresponding to a unique path through the network from a source to a destination, the method comprising:
receiving an indication of data to be transmitted to a destination node;
determining one of the virtual path identifiers that corresponds to a path from the source node to the destination node; and
indicating to transmit the indicated data to the destination node along the path through the network that corresponds to the determined virtual path identifier.
59. The method of claim 58 wherein the received indication of the data includes an indication of the destination node.
60. The method of claim 58 wherein the determining of the virtual path identifier includes registering the data transmission with a network manager for the network and receiving that virtual path identifier from the network manager in response.
61. A method for a source node to use virtual identifiers to transmit data through a network, the method comprising:
receiving an indication of data to be transmitted to unspecified recipients;
determining based on a type of the data a virtual identifier that can be used to route the data transmission through the network to one or more appropriate recipients for the data; and
indicating to transmit the data through the network to the appropriate recipients by using the virtual identifier.
62. The method of claim 61 wherein the determining of the virtual identifier includes registering the data transmission with a network manager for the network and receiving the virtual identifier from the network manager in response.
63. The method of claim 61 wherein the transmitting of the indicated data includes publishing the indicated data, and wherein the appropriate recipients are subscribers for the type of the indicated data.
64. A method for a source node to use virtual identifiers to transmit data through a network, the method comprising:
receiving an indication to transmit data in a specified manner to unspecified recipients;
determining based on the specified manner a virtual identifier that can be used to route the data transmission through the network to one or more appropriate recipients for the data; and
indicating to transmit the data through the network to the appropriate recipients by using the virtual identifier.
65. The method of claim 64 wherein the determining of the virtual identifier includes registering the data transmission with a network manager for the network and receiving the virtual identifier from the network manager in response.
66. A method for a source node to use virtual identifiers to transmit data through a network, the method comprising:
receiving an indication from an executing application to transmit data to unspecified recipients;
determining based on the executing application a virtual identifier that can be used to route the data transmission through the network to one or more appropriate recipients for the data; and
indicating to transmit the data through the network to the appropriate recipients by using the virtual identifier.
67. The method of claim 66 wherein the determining of the virtual identifier includes registering the data transmission with a network manager for the network and receiving the virtual identifier from the network manager in response.
68. A method for using virtual identifiers to transmit data through a network, the method comprising:
receiving an indication of data to be transmitted through the network to a specified network address;
determining a destination virtual identifier that corresponds to the specified network address and that can be used to route the data through the network to multiple destination nodes; and
indicating to transmit the indicated data to the multiple destination nodes by using the determined destination virtual identifier to route the transmitted data through the network.
69. The method of claim 68 wherein the determining of the virtual identifier includes registering the data transmission with a network manager for the network and receiving the virtual identifier from the network manager in response.
70. A computer-readable medium containing a data structure for use by a source in communicating data to a destination by using a virtual identifier to route the data communications along a path through a network, the virtual identifier distinct from a network address associated with the destination, the data structure comprising a multiplicity of entries, each entry corresponding to one or more data communications and containing information comprising:
an indication of a type of data communication; and
an indication of a virtual identifier corresponding to a path through the network to a destination,
so that when a first data communication of a first type is to be communicated, the virtual identifier that is selected to be used to route the first data communication is the virtual identifier that is indicated in an entry having an indication of the first type of data communication, the routing of the first data communication using that selected virtual identifier being along the path corresponding to the selected virtual identifier and being to the destination of that path.
71. The computer-readable medium of claim 70 wherein each of the indications of a type of data communication includes an indication of a manner of communicating data, and wherein the virtual identifier that is selected is the virtual identifier that is indicated in an entry that has an indication of a manner of communicating data that is selected for the first data communication.
72. The computer-readable medium of claim 70 wherein each of the indications of a type of data communication includes an indication of a source application, and wherein the virtual identifier that is selected is the virtual identifier that is indicated in an entry that has an indication of a source application that initiated the first data communication.
73. The computer-readable medium of claim 70 wherein each of the indications of a type of data communication includes an indication of a destination application, and wherein the virtual identifier that is selected is the virtual identifier that is indicated in an entry that has an indication of a destination application for the first data communication.
74. The computer-readable medium of claim 70 wherein the indication of a type of data communication in each entry includes an indication of the destination of the path corresponding to the indicated virtual identifier for that entry, and wherein the virtual identifier that is selected is the virtual identifier that is indicated in an entry that has an indication of a destination for the first data communication.
75. The computer-readable medium of claim 70 wherein each of the entries further comprises an indication of a Class Of Service, and wherein the first data communication is communicated using the Class Of Service indicated for the entry having the selected virtual identifier.
76. The computer-readable medium of claim 70 wherein each of the entries further comprises an indication of at least one transmission priority, and wherein the first data communication is communicated at one of the transmission priorities indicated for the entry having the selected virtual identifier.
77. The computer-readable medium of claim 70 wherein each of the entries further comprises an indication of a second virtual identifier that corresponds to a path through the network from the destination of the path corresponding to the indicated virtual identifier for that entry to the source, so that received data communications that use the second virtual identifier can be forward to an application that initiated the first data communication.
78. The computer-readable medium of claim 70 wherein each of the indicated types of data communications is distinct.
79. The computer-readable medium of claim 70 wherein each of the indicated virtual identifiers is distinct.
80. The computer-readable medium of claim 70 wherein each entry includes a unique combination of an indicated type of data communication and an indicated virtual identifier.
81. The method of claim 13 wherein the indicated data to be communicated is stored in one or more Fibre Channel frames.
82. The method of claim 13 wherein the network uses the Fibre Channel protocol, and including communicating the Fibre Channel frames to the destination over the network.
83. The method of claim 13 wherein the indicated data to be communicated is stored in one or more InfiniBand packets.
84. The method of claim 13 wherein the network uses the InfiniBand protocol, and including communicating the InfiniBand packets to the destination over the network.
85. The computer-readable medium of claim 36 wherein the contents are instructions that when executed cause the computing device to perform the method.
Priority Applications (14)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/062,245 US20040004966A1 (en) | 2001-04-27 | 2001-10-26 | Using virtual identifiers to route transmitted data through a network |
EP02728863A EP1391082A4 (en) | 2001-04-27 | 2002-04-19 | Method and system for network management |
PCT/US2002/012698 WO2002088876A2 (en) | 2001-04-27 | 2002-04-19 | Method and system for virtual addressing in a communications network |
EP02731438A EP1388075A4 (en) | 2001-04-27 | 2002-04-19 | Analysis of incoming data transmissions |
PCT/US2002/012429 WO2002088981A1 (en) | 2001-04-27 | 2002-04-19 | Analysis of incoming data transmissions |
AU2002307418A AU2002307418A1 (en) | 2001-04-27 | 2002-04-19 | Using virtual identifiers to route data and process data routed through a network |
PCT/US2002/012451 WO2002089418A1 (en) | 2001-04-27 | 2002-04-19 | Method and system for network management |
JP2002586581A JP2004537881A (en) | 2001-04-27 | 2002-04-19 | Methods and systems for network management |
PCT/US2002/012428 WO2002088875A2 (en) | 2001-04-27 | 2002-04-19 | Communicating data through a network |
AU2002258931A AU2002258931A1 (en) | 2001-04-27 | 2002-04-19 | Method and system for virtual addressing in a communications network |
JP2002586210A JP2005502228A (en) | 2001-04-27 | 2002-04-19 | Data communication processing method, computing device, and computer-readable medium |
PCT/US2002/012387 WO2002089384A2 (en) | 2001-04-27 | 2002-04-19 | Using virtual identifiers to route data and process data routed through a network |
AU2002303416A AU2002303416A1 (en) | 2001-04-27 | 2002-04-19 | Communicating data through a network |
JP2007041258A JP2007166666A (en) | 2001-04-27 | 2007-02-21 | Method and system for network management |
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US28706901P | 2001-04-27 | 2001-04-27 | |
US28707501P | 2001-04-27 | 2001-04-27 | |
US28691801P | 2001-04-27 | 2001-04-27 | |
US28692201P | 2001-04-27 | 2001-04-27 | |
US28708101P | 2001-04-27 | 2001-04-27 | |
US28712001P | 2001-04-27 | 2001-04-27 | |
US31408801P | 2001-08-21 | 2001-08-21 | |
US31415801P | 2001-08-21 | 2001-08-21 | |
US31428701P | 2001-08-22 | 2001-08-22 | |
US10/062,245 US20040004966A1 (en) | 2001-04-27 | 2001-10-26 | Using virtual identifiers to route transmitted data through a network |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040004966A1 true US20040004966A1 (en) | 2004-01-08 |
Family
ID=29255784
Family Applications (20)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/046,640 Abandoned US20020159437A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for network configuration discovery in a network manager |
US10/066,159 Active 2024-08-06 US7042877B2 (en) | 2001-04-27 | 2001-10-26 | Integrated analysis of incoming data transmissions |
US10/066,217 Abandoned US20020159468A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for administrative ports in a routing device |
US10/046,333 Abandoned US20020188754A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for domain addressing in a communications network |
US10/068,329 Abandoned US20020161887A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for performing security via de-registration in a communications network |
US10/039,814 Abandoned US20020161923A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for reconfiguring a path in a communications network |
US10/044,164 Abandoned US20020167902A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for performing security via virtual addressing in a communications network |
US10/039,784 Active 2024-06-24 US6993023B2 (en) | 2001-04-27 | 2001-10-26 | Parallel analysis of incoming data transmissions |
US10/039,877 Abandoned US20020159389A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for connection preemption in a communications network |
US10/044,182 Abandoned US20030204618A1 (en) | 2001-04-27 | 2001-10-26 | Using virtual identifiers to process received data routed through a network |
US10/039,703 Abandoned US20020159458A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for reserved addressing in a communications network |
US10/062,199 Active 2024-07-09 US7068666B2 (en) | 2001-04-27 | 2001-10-26 | Method and system for virtual addressing in a communications network |
US10/039,404 Active 2024-06-10 US6996058B2 (en) | 2001-04-27 | 2001-10-26 | Method and system for interswitch load balancing in a communications network |
US10/039,505 Abandoned US20030189927A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for multiframe buffering in a routing device |
US10/062,245 Abandoned US20040004966A1 (en) | 2001-04-27 | 2001-10-26 | Using virtual identifiers to route transmitted data through a network |
US10/061,564 Abandoned US20020159456A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for multicasting in a routing device |
US10/066,014 Abandoned US20020159453A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for label table caching in a routing device |
US10/046,334 Active 2024-07-09 US7068667B2 (en) | 2001-04-27 | 2001-10-26 | Method and system for path building in a communications network |
US10/126,487 Active 2024-09-27 US7164656B2 (en) | 2001-04-27 | 2002-04-19 | Communicating data through a network so as to ensure quality of service |
US10/126,489 Abandoned US20020184529A1 (en) | 2001-04-27 | 2002-04-19 | Communicating data through a network |
Family Applications Before (14)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/046,640 Abandoned US20020159437A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for network configuration discovery in a network manager |
US10/066,159 Active 2024-08-06 US7042877B2 (en) | 2001-04-27 | 2001-10-26 | Integrated analysis of incoming data transmissions |
US10/066,217 Abandoned US20020159468A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for administrative ports in a routing device |
US10/046,333 Abandoned US20020188754A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for domain addressing in a communications network |
US10/068,329 Abandoned US20020161887A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for performing security via de-registration in a communications network |
US10/039,814 Abandoned US20020161923A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for reconfiguring a path in a communications network |
US10/044,164 Abandoned US20020167902A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for performing security via virtual addressing in a communications network |
US10/039,784 Active 2024-06-24 US6993023B2 (en) | 2001-04-27 | 2001-10-26 | Parallel analysis of incoming data transmissions |
US10/039,877 Abandoned US20020159389A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for connection preemption in a communications network |
US10/044,182 Abandoned US20030204618A1 (en) | 2001-04-27 | 2001-10-26 | Using virtual identifiers to process received data routed through a network |
US10/039,703 Abandoned US20020159458A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for reserved addressing in a communications network |
US10/062,199 Active 2024-07-09 US7068666B2 (en) | 2001-04-27 | 2001-10-26 | Method and system for virtual addressing in a communications network |
US10/039,404 Active 2024-06-10 US6996058B2 (en) | 2001-04-27 | 2001-10-26 | Method and system for interswitch load balancing in a communications network |
US10/039,505 Abandoned US20030189927A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for multiframe buffering in a routing device |
Family Applications After (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/061,564 Abandoned US20020159456A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for multicasting in a routing device |
US10/066,014 Abandoned US20020159453A1 (en) | 2001-04-27 | 2001-10-26 | Method and system for label table caching in a routing device |
US10/046,334 Active 2024-07-09 US7068667B2 (en) | 2001-04-27 | 2001-10-26 | Method and system for path building in a communications network |
US10/126,487 Active 2024-09-27 US7164656B2 (en) | 2001-04-27 | 2002-04-19 | Communicating data through a network so as to ensure quality of service |
US10/126,489 Abandoned US20020184529A1 (en) | 2001-04-27 | 2002-04-19 | Communicating data through a network |
Country Status (1)
Country | Link |
---|---|
US (20) | US20020159437A1 (en) |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020159451A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for path building in a communications network |
US20030112805A1 (en) * | 2001-12-19 | 2003-06-19 | Stanton Kevin B. | Method and apparatus for providing device-to-device connectivity using shared infiniband NIC device |
US20030204580A1 (en) * | 2002-04-25 | 2003-10-30 | Baldwin Duane Mark | Methods and apparatus for management of mixed protocol storage area networks |
US20040052525A1 (en) * | 2002-09-13 | 2004-03-18 | Shlomo Ovadia | Method and apparatus of the architecture and operation of control processing unit in wavelength-division-multiplexed photonic burst-switched networks |
US20040085908A1 (en) * | 2002-10-31 | 2004-05-06 | Brocade Communications Systems, Inc. | Method and apparatus for managing locking of resources in a cluster by use of a network fabric |
US20040170165A1 (en) * | 2003-02-28 | 2004-09-02 | Christian Maciocco | Method and system to frame and format optical control and data bursts in WDM-based photonic burst switched networks |
US20040170431A1 (en) * | 2003-02-28 | 2004-09-02 | Christian Maciocco | Architecture, method and system of WDM-based photonic burst switched networks |
US20040208172A1 (en) * | 2003-04-17 | 2004-10-21 | Shlomo Ovadia | Modular reconfigurable multi-server system and method for high-speed networking within photonic burst-switched network |
US20040208171A1 (en) * | 2003-04-16 | 2004-10-21 | Shlomo Ovadia | Architecture, method and system of multiple high-speed servers to network in WDM based photonic burst-switched networks |
US20040234263A1 (en) * | 2003-05-19 | 2004-11-25 | Shlomo Ovadia | Architecture and method for framing optical control and data bursts within optical transport unit structures in photonic burst-switched networks |
US20040252995A1 (en) * | 2003-06-11 | 2004-12-16 | Shlomo Ovadia | Architecture and method for framing control and data bursts over 10 GBIT Ethernet with and without WAN interface sublayer support |
US20040264960A1 (en) * | 2003-06-24 | 2004-12-30 | Christian Maciocco | Generic multi-protocol label switching (GMPLS)-based label space architecture for optical switched networks |
US20050030951A1 (en) * | 2003-08-06 | 2005-02-10 | Christian Maciocco | Reservation protocol signaling extensions for optical switched networks |
US20050068968A1 (en) * | 2003-09-30 | 2005-03-31 | Shlomo Ovadia | Optical-switched (OS) network to OS network routing using extended border gateway protocol |
US20050089327A1 (en) * | 2003-10-22 | 2005-04-28 | Shlomo Ovadia | Dynamic route discovery for optical switched networks |
US20050105905A1 (en) * | 2003-11-13 | 2005-05-19 | Shlomo Ovadia | Dynamic route discovery for optical switched networks using peer routing |
US20050132156A1 (en) * | 2003-12-16 | 2005-06-16 | Masaaki Hosouchi | Remote copy control method |
US20050135806A1 (en) * | 2003-12-22 | 2005-06-23 | Manav Mishra | Hybrid optical burst switching with fixed time slot architecture |
US20050141444A1 (en) * | 2003-12-19 | 2005-06-30 | Fujitsu Limited | Communication device management program |
US20050177749A1 (en) * | 2004-02-09 | 2005-08-11 | Shlomo Ovadia | Method and architecture for security key generation and distribution within optical switched networks |
US20050175183A1 (en) * | 2004-02-09 | 2005-08-11 | Shlomo Ovadia | Method and architecture for secure transmission of data within optical switched networks |
US6934876B1 (en) * | 2002-06-14 | 2005-08-23 | James L. Holeman, Sr. | Registration system and method in a communication network |
US20060268842A1 (en) * | 2005-05-25 | 2006-11-30 | Sharp Kabushiki Kaisha | Receiving apparatus and transmitting apparatus |
US7310480B2 (en) | 2003-06-18 | 2007-12-18 | Intel Corporation | Adaptive framework for closed-loop protocols over photonic burst switched networks |
US7426553B1 (en) * | 2001-08-02 | 2008-09-16 | At&T Intellectual Property I, L.P. | Provisioning data link connection identifiers in a communications network |
US20100023539A1 (en) * | 2008-07-25 | 2010-01-28 | International Business Machines Corporation | Xml/database/xml layer analysis |
US20100020817A1 (en) * | 2008-07-25 | 2010-01-28 | Fujitsu Limited | Transmission path selecting apparatus and method |
US7707280B2 (en) | 2004-11-29 | 2010-04-27 | At&T Intellectual Property I, L.P. | Virtual circuit identifications for hybrid point-to-point networks |
US20110184717A1 (en) * | 2010-01-22 | 2011-07-28 | Robert Erickson | Method and System for Packet Switch Based Logic Replication |
US20110185241A1 (en) * | 2010-01-22 | 2011-07-28 | Robert Erickson | Method and System for Packet Switch Based Logic Replication |
US8923277B1 (en) * | 2010-12-15 | 2014-12-30 | Juniper Networks, Inc. | Methods and apparatus related to flexible physical interface naming in a distributed switch fabric system |
Families Citing this family (511)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3259170A (en) * | 1964-06-12 | 1966-07-05 | Mcquay Norris Mfg Co | Gas burner |
US6359879B1 (en) * | 1998-04-24 | 2002-03-19 | Avici Systems | Composite trunking |
US7299294B1 (en) * | 1999-11-10 | 2007-11-20 | Emc Corporation | Distributed traffic controller for network data |
US6477150B1 (en) * | 2000-03-03 | 2002-11-05 | Qualcomm, Inc. | System and method for providing group communication services in an existing communication system |
US6681248B1 (en) * | 2000-04-12 | 2004-01-20 | Sycamore Networks, Inc. | Method for port connectivity discovery in transparent high bandwidth networks |
US7013340B1 (en) * | 2000-05-18 | 2006-03-14 | Microsoft Corporation | Postback input handling by server-side control objects |
US6954784B2 (en) * | 2000-08-17 | 2005-10-11 | International Business Machines Corporation | Systems, method and computer program products for cluster workload distribution without preconfigured port identification by utilizing a port of multiple ports associated with a single IP address |
US6996631B1 (en) * | 2000-08-17 | 2006-02-07 | International Business Machines Corporation | System having a single IP address associated with communication protocol stacks in a cluster of processing systems |
US6996617B1 (en) | 2000-08-17 | 2006-02-07 | International Business Machines Corporation | Methods, systems and computer program products for non-disruptively transferring a virtual internet protocol address between communication protocol stacks |
US6941384B1 (en) | 2000-08-17 | 2005-09-06 | International Business Machines Corporation | Methods, systems and computer program products for failure recovery for routed virtual internet protocol addresses |
US7120697B2 (en) * | 2001-05-22 | 2006-10-10 | International Business Machines Corporation | Methods, systems and computer program products for port assignments of multiple application instances using the same source IP address |
US6965930B1 (en) | 2000-10-20 | 2005-11-15 | International Business Machines Corporation | Methods, systems and computer program products for workload distribution based on end-to-end quality of service |
US6963917B1 (en) | 2000-10-20 | 2005-11-08 | International Business Machines Corporation | Methods, systems and computer program products for policy based distribution of workload to subsets of potential servers |
US6760772B2 (en) | 2000-12-15 | 2004-07-06 | Qualcomm, Inc. | Generating and implementing a communication protocol and interface for high data rate signal transfer |
GB2374497B (en) * | 2001-04-03 | 2003-03-12 | Ericsson Telefon Ab L M | Facilitating legal interception of IP connections |
US7447795B2 (en) * | 2001-04-11 | 2008-11-04 | Chelsio Communications, Inc. | Multi-purpose switching network interface controller |
US7366194B2 (en) * | 2001-04-18 | 2008-04-29 | Brocade Communications Systems, Inc. | Fibre channel zoning by logical unit number in hardware |
US7167472B2 (en) * | 2001-04-18 | 2007-01-23 | Brocade Communications Systems, Inc. | Fibre channel zoning by device name in hardware |
US7711831B2 (en) * | 2001-05-22 | 2010-05-04 | International Business Machines Corporation | Methods, systems and computer program products for source address selection |
US20020188732A1 (en) * | 2001-06-06 | 2002-12-12 | Buckman Charles R. | System and method for allocating bandwidth across a network |
US20020198927A1 (en) * | 2001-06-21 | 2002-12-26 | International Business Machines Corporation | Apparatus and method for routing internet protocol frames over a system area network |
US7095715B2 (en) * | 2001-07-02 | 2006-08-22 | 3Com Corporation | System and method for processing network packet flows |
JP2003032277A (en) * | 2001-07-12 | 2003-01-31 | Allied Tereshisu Kk | Management method and system of network equipment |
US7475141B1 (en) * | 2001-07-31 | 2009-01-06 | Arbor Networks, Inc. | Distributed service level management for network traffic |
EP1284551A1 (en) * | 2001-08-08 | 2003-02-19 | Siemens Aktiengesellschaft | Assignment of a service quality for information transfer within a communication network |
TW576061B (en) * | 2001-08-13 | 2004-02-11 | Via Tech Inc | Device and method for load balancing of packet switching |
US20030033519A1 (en) * | 2001-08-13 | 2003-02-13 | Tippingpoint Technologies,Inc. | System and method for programming network nodes |
US7411954B2 (en) * | 2001-10-17 | 2008-08-12 | Precache Inc. | Efficient implementation of wildcard matching on variable-sized fields in content-based routing |
US20030165139A1 (en) * | 2001-08-15 | 2003-09-04 | Tsu-Wei Chen | Packet routing via payload inspection |
US8812706B1 (en) | 2001-09-06 | 2014-08-19 | Qualcomm Incorporated | Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system |
JP4018361B2 (en) * | 2001-09-25 | 2007-12-05 | 富士フイルム株式会社 | Network environment notification method, network environment notification system, and program |
US20030079018A1 (en) * | 2001-09-28 | 2003-04-24 | Lolayekar Santosh C. | Load balancing in a storage network |
US7283538B2 (en) * | 2001-10-12 | 2007-10-16 | Vormetric, Inc. | Load balanced scalable network gateway processor architecture |
US20030074469A1 (en) * | 2001-10-15 | 2003-04-17 | Alcatel | Method and apparatus for transparent LAN-to-LAN connection between two customer locations through a RPR data transport network |
US7200144B2 (en) * | 2001-10-18 | 2007-04-03 | Qlogic, Corp. | Router and methods using network addresses for virtualization |
US7447197B2 (en) * | 2001-10-18 | 2008-11-04 | Qlogic, Corporation | System and method of providing network node services |
US7133914B1 (en) * | 2001-10-31 | 2006-11-07 | Cisco Technology, Inc. | Statistics-preserving ACL flattening system and method |
US7143176B2 (en) * | 2001-11-06 | 2006-11-28 | International Business Machines Corporation | Data communication with a protocol that supports a given logical address range |
DE60235775D1 (en) * | 2001-11-08 | 2010-05-06 | Ziscoat N V | Intraluminal device with a therapeutic agent-containing coating |
US6910075B2 (en) * | 2001-11-14 | 2005-06-21 | Emc Corporation | Dynamic RDF groups |
US7653736B2 (en) * | 2001-12-14 | 2010-01-26 | Nxp B.V. | Data processing system having multiple processors and a communications means in a data processing system |
US7499410B2 (en) * | 2001-12-26 | 2009-03-03 | Cisco Technology, Inc. | Fibre channel switch that enables end devices in different fabrics to communicate with one another while retaining their unique fibre channel domain—IDs |
US7599360B2 (en) | 2001-12-26 | 2009-10-06 | Cisco Technology, Inc. | Methods and apparatus for encapsulating a frame for transmission in a storage area network |
US20030126283A1 (en) * | 2001-12-31 | 2003-07-03 | Ramkrishna Prakash | Architectural basis for the bridging of SAN and LAN infrastructures |
US7085860B2 (en) * | 2002-01-11 | 2006-08-01 | International Business Machines Corporation | Method and apparatus for a non-disruptive recovery of a single partition in a multipartitioned data processing system |
US6963932B2 (en) * | 2002-01-30 | 2005-11-08 | Intel Corporation | Intermediate driver having a fail-over function for a virtual network interface card in a system utilizing Infiniband architecture |
US20030145072A1 (en) * | 2002-01-31 | 2003-07-31 | Lau Richard C. | Auto-discovery of network configuration |
US20030200247A1 (en) * | 2002-02-02 | 2003-10-23 | International Business Machines Corporation | Server computer and a method for accessing resources from virtual machines of a server computer via a fibre channel |
US20040025166A1 (en) * | 2002-02-02 | 2004-02-05 | International Business Machines Corporation | Server computer and a method for accessing resources from virtual machines of a server computer via a fibre channel |
FR2835987B1 (en) * | 2002-02-14 | 2005-04-29 | Cit Alcatel | ADMISSION CONTROL TO A DATA NETWORK FOR QUALITY OF SERVICE ASSURANCE |
US7406034B1 (en) | 2002-04-01 | 2008-07-29 | Cisco Technology, Inc. | Methods and apparatus for fibre channel frame delivery |
US7616637B1 (en) | 2002-04-01 | 2009-11-10 | Cisco Technology, Inc. | Label switching in fibre channel networks |
US7082296B2 (en) * | 2002-04-19 | 2006-07-25 | Northrup Grumann Corporation | Method for sustaining radio frequency (RF) based communications connectivity during network outages |
JP4032816B2 (en) * | 2002-05-08 | 2008-01-16 | 株式会社日立製作所 | Storage network topology management system |
US7039715B2 (en) * | 2002-05-21 | 2006-05-02 | Microsoft Corporation | Methods and systems for a receiver to allocate bandwidth among incoming communications flows |
US7383330B2 (en) * | 2002-05-24 | 2008-06-03 | Emc Corporation | Method for mapping a network fabric |
US7394822B2 (en) * | 2002-06-04 | 2008-07-01 | Lucent Technologies Inc. | Using reassembly queue sets for packet reassembly |
US7280472B2 (en) * | 2002-06-04 | 2007-10-09 | Lucent Technologies Inc. | Protection switching at a network node |
US7206288B2 (en) | 2002-06-12 | 2007-04-17 | Cisco Technology, Inc. | Methods and apparatus for characterizing a route in fibre channel fabric |
US7840673B1 (en) * | 2002-06-17 | 2010-11-23 | International Business Machines Corporation | Method and apparatus for management of hosted applications |
US7237045B2 (en) | 2002-06-28 | 2007-06-26 | Brocade Communications Systems, Inc. | Apparatus and method for storage processing through scalable port processors |
US8200871B2 (en) * | 2002-06-28 | 2012-06-12 | Brocade Communications Systems, Inc. | Systems and methods for scalable distributed storage processing |
US8798043B2 (en) * | 2002-06-28 | 2014-08-05 | Brocade Communications Systems, Inc. | Apparatus and method for routing traffic in multi-link switch |
US20040083305A1 (en) * | 2002-07-08 | 2004-04-29 | Chung-Yih Wang | Packet routing via payload inspection for alert services |
US20040078450A1 (en) * | 2002-07-08 | 2004-04-22 | Tsu-Wei Chen | Packet routing via payload inspection for digital content delivery |
US7359984B1 (en) * | 2002-07-15 | 2008-04-15 | Packeteer, Inc. | Management of network quality of service |
US7200674B2 (en) * | 2002-07-19 | 2007-04-03 | Open Invention Network, Llc | Electronic commerce community networks and intra/inter community secure routing implementation |
US7230929B2 (en) * | 2002-07-22 | 2007-06-12 | Qlogic, Corporation | Method and system for dynamically assigning domain identification in a multi-module fibre channel switch |
US8320241B2 (en) | 2002-07-30 | 2012-11-27 | Brocade Communications System, Inc. | Fibre channel network employing registered state change notifications with enhanced payload |
US20050111378A1 (en) * | 2003-09-12 | 2005-05-26 | Xiaoheng "Cora" Chen | Registered state change notification for a fibre channel network |
US8015303B2 (en) * | 2002-08-02 | 2011-09-06 | Astute Networks Inc. | High data rate stateful protocol processing |
US20040032828A1 (en) * | 2002-08-16 | 2004-02-19 | Cellglide Technologies Corp. | Service management in cellular networks |
US7580404B2 (en) * | 2002-08-29 | 2009-08-25 | Bae Systems Information And Electronic Systems Integration Inc. | Reconfigurable compute engine interconnect fabric |
US8411594B2 (en) | 2002-09-20 | 2013-04-02 | Qualcomm Incorporated | Communication manager for providing multimedia in a group communication network |
US7596621B1 (en) * | 2002-10-17 | 2009-09-29 | Astute Networks, Inc. | System and method for managing shared state using multiple programmed processors |
US7814218B1 (en) | 2002-10-17 | 2010-10-12 | Astute Networks, Inc. | Multi-protocol and multi-format stateful processing |
US8151278B1 (en) | 2002-10-17 | 2012-04-03 | Astute Networks, Inc. | System and method for timer management in a stateful protocol processing system |
US7673074B1 (en) * | 2002-10-24 | 2010-03-02 | Emulex Design & Manufacturing Corporation | Avoiding port collisions in hardware-accelerated network protocol |
US7953876B1 (en) * | 2002-10-24 | 2011-05-31 | Emulex Design & Manufacturing Corporation | Virtual interface over a transport protocol |
US20080008202A1 (en) * | 2002-10-31 | 2008-01-10 | Terrell William C | Router with routing processors and methods for virtualization |
US20040088575A1 (en) * | 2002-11-01 | 2004-05-06 | Piepho Allen J. | Secure remote network access system and method |
US7433326B2 (en) | 2002-11-27 | 2008-10-07 | Cisco Technology, Inc. | Methods and devices for exchanging peer parameters between network devices |
US8060630B1 (en) * | 2002-11-27 | 2011-11-15 | Symantec Operating Corporation | Creating and configuring virtual fabrics in storage area networks |
US7397827B2 (en) * | 2002-12-11 | 2008-07-08 | Tellabs Operations, Inc. | Systems and methods for switching multi-rate communications |
JP3961415B2 (en) * | 2002-12-16 | 2007-08-22 | 株式会社エヌ・ティ・ティ・ドコモ | Protocol defect automatic detection method and protocol defect automatic detection device |
US7782784B2 (en) * | 2003-01-10 | 2010-08-24 | Cisco Technology, Inc. | Port analyzer adapter |
US7899048B1 (en) | 2003-01-15 | 2011-03-01 | Cisco Technology, Inc. | Method and apparatus for remotely monitoring network traffic through a generic network |
DE60313116T2 (en) * | 2003-01-23 | 2007-12-13 | Telia Ab | Devices and a method in a packet-switched network for forming multicast groups for applications with the same group identity |
CN100440825C (en) * | 2003-01-28 | 2008-12-03 | 华为技术有限公司 | System and method for switchingin and transmission of different data frames in digital transmission network |
CN100396035C (en) * | 2003-01-28 | 2008-06-18 | 华为技术有限公司 | System and method for switch-in and transmission of different data frames in digital transmission network |
CN100484054C (en) * | 2003-01-28 | 2009-04-29 | 华为技术有限公司 | System and method for switchingin and transmission of different data frames in digital transmission network |
US7188121B2 (en) * | 2003-02-06 | 2007-03-06 | Sun Microsystems, Inc. | Information system management |
TW586709U (en) * | 2003-02-18 | 2004-05-01 | Channel Inc W | Device for observing network packets |
US8151318B1 (en) * | 2003-02-25 | 2012-04-03 | Cisco Technology, Inc. | Method and apparatus for reliably and asymmetrically distributing security information within a fibre channel fabric |
JP4257151B2 (en) * | 2003-02-28 | 2009-04-22 | 富士通株式会社 | Packet control system, packet control device, packet relay device, and packet control program |
US7590715B1 (en) * | 2003-03-03 | 2009-09-15 | Emc Corporation | Method and system for automatic classification of applications and services by packet inspection |
US7930711B2 (en) * | 2003-03-06 | 2011-04-19 | Wegener Communications, Inc. | Apparatus and method for addressing control in a network for distributed data |
US7020689B2 (en) * | 2003-03-07 | 2006-03-28 | Wegener Communications, Inc. | System and method for command transmission utilizing an email return path |
US20040210656A1 (en) * | 2003-04-16 | 2004-10-21 | Silicon Graphics, Inc. | Failsafe operation of storage area network |
US7817583B2 (en) * | 2003-04-28 | 2010-10-19 | Hewlett-Packard Development Company, L.P. | Method for verifying a storage area network configuration |
US7352740B2 (en) * | 2003-04-29 | 2008-04-01 | Brocade Communciations Systems, Inc. | Extent-based fibre channel zoning in hardware |
US9959544B2 (en) * | 2003-05-22 | 2018-05-01 | International Business Machines Corporation | Updating an application on a smart card and displaying an advertisement |
US7296204B2 (en) * | 2003-05-30 | 2007-11-13 | Wegener Communications, Inc. | Error correction apparatus and method |
KR101166734B1 (en) | 2003-06-02 | 2012-07-19 | 퀄컴 인코포레이티드 | Generating and implementing a signal protocol and interface for higher data rates |
US7457303B2 (en) * | 2003-06-06 | 2008-11-25 | International Business Machines Corporation | One-bounce network |
US9357033B2 (en) * | 2003-06-17 | 2016-05-31 | Citrix Systems, Inc. | Method and system for dynamic interleaving |
US7206411B2 (en) | 2003-06-25 | 2007-04-17 | Wegener Communications, Inc. | Rapid decryption of data by key synchronization and indexing |
JP4087408B2 (en) * | 2003-07-18 | 2008-05-21 | 富士通株式会社 | Packet transfer method and apparatus |
US7526549B2 (en) * | 2003-07-24 | 2009-04-28 | International Business Machines Corporation | Cluster data port services for clustered computer system |
EP2363991A1 (en) | 2003-08-13 | 2011-09-07 | Qualcomm Incorporated | A signal interface for higher data rates |
US8838772B2 (en) * | 2003-08-29 | 2014-09-16 | Ineoquest Technologies, Inc. | System and method for analyzing the performance of multiple transportation streams of streaming media in packet-based networks |
US8588069B2 (en) | 2003-08-29 | 2013-11-19 | Ineoquest Technologies, Inc. | System and method for analyzing the performance of multiple transportation streams of streaming media in packet-based networks |
US20150341812A1 (en) | 2003-08-29 | 2015-11-26 | Ineoquest Technologies, Inc. | Video quality monitoring |
US8165136B1 (en) | 2003-09-03 | 2012-04-24 | Cisco Technology, Inc. | Virtual port based SPAN |
US7474666B2 (en) * | 2003-09-03 | 2009-01-06 | Cisco Technology, Inc. | Switch port analyzers |
US8719334B2 (en) | 2003-09-10 | 2014-05-06 | Qualcomm Incorporated | High data rate interface |
US8750246B2 (en) * | 2003-09-30 | 2014-06-10 | Thomson Licensing | Quality of service control in a wireless local area network |
CN102801595A (en) | 2003-10-15 | 2012-11-28 | 高通股份有限公司 | High data rate interface |
US7533175B1 (en) * | 2003-10-24 | 2009-05-12 | Network Appliance, Inc. | Network address resolution and forwarding TCP/IP packets over a fibre channel network |
US7603453B1 (en) * | 2003-10-24 | 2009-10-13 | Network Appliance, Inc. | Creating links between nodes connected to a fibre channel (FC) fabric |
KR100827573B1 (en) | 2003-10-29 | 2008-05-07 | 퀄컴 인코포레이티드 | High data rate interface |
KR20090042861A (en) | 2003-11-12 | 2009-04-30 | 콸콤 인코포레이티드 | High data rate interface with improved link control |
US7421532B2 (en) * | 2003-11-18 | 2008-09-02 | Topside Research, Llc | Switching with transparent and non-transparent ports |
US7454552B2 (en) * | 2003-11-18 | 2008-11-18 | Topside Research, Llc | Switch with transparent and non-transparent ports |
US7428598B2 (en) * | 2003-11-20 | 2008-09-23 | International Business Machines Corporation | Infiniband multicast operation in an LPAR environment |
US20050111356A1 (en) * | 2003-11-25 | 2005-05-26 | Whittaker Stewart Mark A. | Connection controller |
US20050111433A1 (en) * | 2003-11-25 | 2005-05-26 | Stewart Mark A.W. | Method of operating a Clos network |
US7516331B2 (en) * | 2003-11-26 | 2009-04-07 | International Business Machines Corporation | Tamper-resistant trusted java virtual machine and method of using the same |
CA2731265A1 (en) | 2003-12-08 | 2005-06-23 | Qualcomm Incorporated | High data rate interface with improved link synchronization |
US20050132089A1 (en) * | 2003-12-12 | 2005-06-16 | Octigabay Systems Corporation | Directly connected low latency network and interface |
US7701948B2 (en) * | 2004-01-20 | 2010-04-20 | Nortel Networks Limited | Metro ethernet service enhancements |
US7761569B2 (en) | 2004-01-23 | 2010-07-20 | Tiversa, Inc. | Method for monitoring and providing information over a peer to peer network |
US8156175B2 (en) | 2004-01-23 | 2012-04-10 | Tiversa Inc. | System and method for searching for specific types of people or information on a peer-to-peer network |
US7430203B2 (en) * | 2004-01-29 | 2008-09-30 | Brocade Communications Systems, Inc. | Fibre channel zoning hardware for directing a data packet to an external processing device |
US7403481B1 (en) * | 2004-01-30 | 2008-07-22 | Emulex Design & Manufacturing Corporation | Methodology and apparatus for solving lockup conditions while trunking in fibre channel switched arbitrated loop systems |
MXPA06010312A (en) | 2004-03-10 | 2007-01-19 | Qualcomm Inc | High data rate interface apparatus and method. |
US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
US8705521B2 (en) | 2004-03-17 | 2014-04-22 | Qualcomm Incorporated | High data rate interface apparatus and method |
US7881215B1 (en) * | 2004-03-18 | 2011-02-01 | Avaya Inc. | Stateful and stateless data processing |
WO2005096594A1 (en) | 2004-03-24 | 2005-10-13 | Qualcomm Incorporated | High data rate interface apparatus and method |
US7706411B2 (en) * | 2004-03-29 | 2010-04-27 | Hewlett-Packard Development Company, L.P. | Handling oversubscribed mesh ports with re-tagging |
US20050220090A1 (en) * | 2004-03-31 | 2005-10-06 | Kevin Loughran | Routing architecture |
US8335909B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | Coupling processors to each other for high performance computing (HPC) |
US8336040B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | System and method for topology-aware job scheduling and backfilling in an HPC environment |
US9178784B2 (en) | 2004-04-15 | 2015-11-03 | Raytheon Company | System and method for cluster management based on HPC architecture |
US7343356B2 (en) | 2004-04-30 | 2008-03-11 | Commvault Systems, Inc. | Systems and methods for storage modeling and costing |
US8266406B2 (en) | 2004-04-30 | 2012-09-11 | Commvault Systems, Inc. | System and method for allocation of organizational resources |
US7890604B2 (en) | 2004-05-07 | 2011-02-15 | Microsoft Corproation | Client-side callbacks to server events |
US7422152B2 (en) | 2004-05-13 | 2008-09-09 | Cisco Technology, Inc. | Methods and devices for providing scalable RFID networks |
US9026578B2 (en) | 2004-05-14 | 2015-05-05 | Microsoft Corporation | Systems and methods for persisting data between web pages |
ATE518343T1 (en) | 2004-06-04 | 2011-08-15 | Qualcomm Inc | INTERFACE DEVICE AND METHOD FOR HIGH DATA RATES |
US8650304B2 (en) | 2004-06-04 | 2014-02-11 | Qualcomm Incorporated | Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system |
JP3780457B2 (en) * | 2004-06-07 | 2006-05-31 | 株式会社トヨタIt開発センター | Signal processing apparatus, method, program, and recording medium |
US20130073725A1 (en) * | 2004-06-16 | 2013-03-21 | Unwired Planet, Inc. | System and method for automated content distribution |
US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
US8027327B2 (en) | 2004-06-25 | 2011-09-27 | Alcatel Lucent | Distributed scheduling in wireless networks with service differentiation |
CA2513804C (en) * | 2004-07-27 | 2014-07-29 | Fabric Embedded Tools Corporation | Fabric network management and diagnostic tool |
US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
US7860943B2 (en) * | 2004-08-23 | 2010-12-28 | Zhe Khi Pak | Enhanced network direct attached storage controller |
US8191132B1 (en) * | 2004-08-27 | 2012-05-29 | Watchguard Technologies, Inc. | Scalable transparent proxy |
US7489635B2 (en) * | 2004-09-24 | 2009-02-10 | Lockheed Martin Corporation | Routing cost based network congestion control for quality of service |
US8367099B2 (en) | 2004-09-28 | 2013-02-05 | Atrium Medical Corporation | Perforated fatty acid films |
US9000040B2 (en) | 2004-09-28 | 2015-04-07 | Atrium Medical Corporation | Cross-linked fatty acid-based biomaterials |
US8312836B2 (en) | 2004-09-28 | 2012-11-20 | Atrium Medical Corporation | Method and apparatus for application of a fresh coating on a medical device |
WO2006037080A2 (en) | 2004-09-28 | 2006-04-06 | Atrium Medical Corporation | Uv cured gel and method of making |
US9012506B2 (en) | 2004-09-28 | 2015-04-21 | Atrium Medical Corporation | Cross-linked fatty acid-based biomaterials |
US9801982B2 (en) | 2004-09-28 | 2017-10-31 | Atrium Medical Corporation | Implantable barrier device |
US8001922B2 (en) * | 2004-09-28 | 2011-08-23 | Atrium Medical Corporation | Application of a coating on a medical device |
WO2006036970A2 (en) * | 2004-09-28 | 2006-04-06 | Atrium Medical Corporation | Method of thickening a coating using a drug |
US7149997B1 (en) * | 2004-10-15 | 2006-12-12 | Xilinx, Inc. | Routing with frame awareness to minimize device programming time and test cost |
US7801125B2 (en) | 2004-10-22 | 2010-09-21 | Cisco Technology, Inc. | Forwarding table reduction and multipath network forwarding |
US7830793B2 (en) | 2004-10-22 | 2010-11-09 | Cisco Technology, Inc. | Network device architecture for consolidating input/output and reducing latency |
US7564869B2 (en) | 2004-10-22 | 2009-07-21 | Cisco Technology, Inc. | Fibre channel over ethernet |
US8238347B2 (en) | 2004-10-22 | 2012-08-07 | Cisco Technology, Inc. | Fibre channel over ethernet |
US7969971B2 (en) | 2004-10-22 | 2011-06-28 | Cisco Technology, Inc. | Ethernet extension for the data center |
US7916628B2 (en) | 2004-11-01 | 2011-03-29 | Cisco Technology, Inc. | Trunking for fabric ports in fibre channel switches and attached devices |
CA2827035A1 (en) | 2004-11-08 | 2006-05-18 | Adaptive Computing Enterprises, Inc. | System and method of providing system jobs within a compute environment |
US7958250B2 (en) * | 2004-11-09 | 2011-06-07 | Sterling Commerce, Inc. | System and method for multi-level guided node and topology discovery |
US8458467B2 (en) | 2005-06-21 | 2013-06-04 | Cisco Technology, Inc. | Method and apparatus for adaptive application message payload content transformation in a network infrastructure element |
US7664879B2 (en) | 2004-11-23 | 2010-02-16 | Cisco Technology, Inc. | Caching content and state data at a network element |
US8692838B2 (en) * | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8873584B2 (en) | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
US8667363B2 (en) | 2004-11-24 | 2014-03-04 | Qualcomm Incorporated | Systems and methods for implementing cyclic redundancy checks |
US8539119B2 (en) | 2004-11-24 | 2013-09-17 | Qualcomm Incorporated | Methods and apparatus for exchanging messages having a digital data interface device message format |
US8718067B2 (en) * | 2004-11-24 | 2014-05-06 | Lantiq Deutschland Gmbh | Pre-emption mechanism for packet transport |
US8699330B2 (en) | 2004-11-24 | 2014-04-15 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
US8723705B2 (en) | 2004-11-24 | 2014-05-13 | Qualcomm Incorporated | Low output skew double data rate serial encoder |
EP1667360A1 (en) | 2004-12-06 | 2006-06-07 | BMC Software, Inc. | Generic discovery for computer networks |
US7987272B2 (en) | 2004-12-06 | 2011-07-26 | Cisco Technology, Inc. | Performing message payload processing functions in a network element on behalf of an application |
US9137115B2 (en) | 2004-12-06 | 2015-09-15 | Bmc Software, Inc. | System and method for resource reconciliation in an enterprise management system |
US7725934B2 (en) | 2004-12-07 | 2010-05-25 | Cisco Technology, Inc. | Network and application attack protection based on application layer message inspection |
US8082304B2 (en) | 2004-12-10 | 2011-12-20 | Cisco Technology, Inc. | Guaranteed delivery of application layer messages by a network element |
US7460558B2 (en) * | 2004-12-16 | 2008-12-02 | International Business Machines Corporation | System and method for connection capacity reassignment in a multi-tier data processing system network |
US7512706B2 (en) * | 2004-12-16 | 2009-03-31 | International Business Machines Corporation | Method, computer program product, and data processing system for data queuing prioritization in a multi-tiered network |
JP4398354B2 (en) * | 2004-12-20 | 2010-01-13 | 富士通株式会社 | Relay system |
US7649844B2 (en) | 2004-12-29 | 2010-01-19 | Cisco Technology, Inc. | In-order fibre channel packet delivery |
US7698416B2 (en) * | 2005-01-25 | 2010-04-13 | Cisco Technology, Inc. | Application layer message-based server failover management by a network element |
US20060171311A1 (en) * | 2005-02-03 | 2006-08-03 | Cisco Technology, Inc. | Method and system for classifying packets |
US9544216B2 (en) * | 2005-02-04 | 2017-01-10 | Hewlett Packard Enterprise Development Lp | Mesh mirroring with path tags |
US7839768B2 (en) * | 2005-02-04 | 2010-11-23 | Quasar Technologies, Inc. | Redundant ethernet packet network management |
US9075657B2 (en) | 2005-04-07 | 2015-07-07 | Adaptive Computing Enterprises, Inc. | On-demand access to compute resources |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
US7581021B2 (en) * | 2005-04-07 | 2009-08-25 | International Business Machines Corporation | System and method for providing multiple virtual host channel adapters using virtual switches |
US7688825B2 (en) * | 2005-04-12 | 2010-03-30 | Fujitsu Limited | Filtering frames at an input port of a switch |
US7664116B2 (en) * | 2005-04-12 | 2010-02-16 | Fujitsu Limited | Network based routing scheme |
US20060271698A1 (en) * | 2005-05-16 | 2006-11-30 | Shrader Anthony G | Boa back office integration protocol |
JP2008541677A (en) * | 2005-05-23 | 2008-11-20 | エヌエックスピー ビー ヴィ | Integrated circuit with internal communication network |
EP1891787B1 (en) * | 2005-06-15 | 2010-03-24 | Solarflare Communications Incorporated | Data processing system |
US7953826B2 (en) | 2005-07-14 | 2011-05-31 | Cisco Technology, Inc. | Provisioning and redundancy for RFID middleware servers |
US7924873B2 (en) * | 2005-07-26 | 2011-04-12 | International Business Machines Corporation | Dynamic translational topology layer for enabling connectivity for protocol aware applications |
US7345585B2 (en) | 2005-08-01 | 2008-03-18 | Cisco Technology, Inc. | Network based device for providing RFID middleware functionality |
US7724658B1 (en) | 2005-08-31 | 2010-05-25 | Chelsio Communications, Inc. | Protocol offload transmit traffic management |
US7660264B1 (en) | 2005-12-19 | 2010-02-09 | Chelsio Communications, Inc. | Method for traffic schedulign in intelligent network interface circuitry |
US7660306B1 (en) | 2006-01-12 | 2010-02-09 | Chelsio Communications, Inc. | Virtualizing the operation of intelligent network interface circuitry |
US7616563B1 (en) | 2005-08-31 | 2009-11-10 | Chelsio Communications, Inc. | Method to implement an L4-L7 switch using split connections and an offloading NIC |
US7742771B2 (en) * | 2005-09-01 | 2010-06-22 | General Instrument Corporation | Automated load balancing of receivers in a network |
JP2007079885A (en) * | 2005-09-14 | 2007-03-29 | Hitachi Ltd | Data input and output load distribution method, data input and output load distribution program, computer system, and management server |
US9278161B2 (en) | 2005-09-28 | 2016-03-08 | Atrium Medical Corporation | Tissue-separating fatty acid adhesion barrier |
US9427423B2 (en) | 2009-03-10 | 2016-08-30 | Atrium Medical Corporation | Fatty-acid based particles |
US9131371B2 (en) * | 2005-09-30 | 2015-09-08 | Alcatel Lucent | Method and apparatus for managing a random access communication system |
US7961621B2 (en) | 2005-10-11 | 2011-06-14 | Cisco Technology, Inc. | Methods and devices for backward congestion notification |
JP2009511215A (en) | 2005-10-15 | 2009-03-19 | アトリウム メディカル コーポレーション | Hydrophobic crosslinked gel for bioabsorbable drug carrier coating |
US8692839B2 (en) | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8730069B2 (en) | 2005-11-23 | 2014-05-20 | Qualcomm Incorporated | Double data rate serial encoder |
WO2007062254A2 (en) | 2005-11-28 | 2007-05-31 | Commvault Systems, Inc. | Systems and methods for data management |
US20200257596A1 (en) | 2005-12-19 | 2020-08-13 | Commvault Systems, Inc. | Systems and methods of unified reconstruction in storage systems |
US8572330B2 (en) | 2005-12-19 | 2013-10-29 | Commvault Systems, Inc. | Systems and methods for granular resource management in a storage network |
US8930496B2 (en) | 2005-12-19 | 2015-01-06 | Commvault Systems, Inc. | Systems and methods of unified reconstruction in storage systems |
US8655850B2 (en) | 2005-12-19 | 2014-02-18 | Commvault Systems, Inc. | Systems and methods for resynchronizing information |
CA2632935C (en) | 2005-12-19 | 2014-02-04 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US7606844B2 (en) | 2005-12-19 | 2009-10-20 | Commvault Systems, Inc. | System and method for performing replication copy storage operations |
US20110010518A1 (en) | 2005-12-19 | 2011-01-13 | Srinivas Kavuri | Systems and Methods for Migrating Components in a Hierarchical Storage Network |
US7651593B2 (en) | 2005-12-19 | 2010-01-26 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US7688818B2 (en) * | 2005-12-20 | 2010-03-30 | Honeywell International Inc. | Apparatus and method for traffic filtering in a communication system |
JP4659611B2 (en) * | 2005-12-28 | 2011-03-30 | 富士通株式会社 | Path protection method and layer 2 switch |
US7587543B2 (en) * | 2006-01-23 | 2009-09-08 | International Business Machines Corporation | Apparatus, method and computer program product for dynamic arbitration control |
US9088355B2 (en) * | 2006-03-24 | 2015-07-21 | Arris Technology, Inc. | Method and apparatus for determining the dynamic range of an optical link in an HFC network |
KR101036385B1 (en) * | 2006-03-24 | 2011-05-23 | 제너럴 인스트루먼트 코포레이션 | Method and apparatus for configuring logical channels in a network |
US7636835B1 (en) * | 2006-04-14 | 2009-12-22 | Tilera Corporation | Coupling data in a parallel processing environment |
US20090097496A1 (en) * | 2006-05-02 | 2009-04-16 | Kazunori Nakamura | Video Signal Switching System |
US20070268903A1 (en) * | 2006-05-22 | 2007-11-22 | Fujitsu Limited | System and Method for Assigning Packets to Output Queues |
US20070268926A1 (en) * | 2006-05-22 | 2007-11-22 | Fujitsu Limited | System and Method for Allocating Memory Resources in a Switching Environment |
US20070280105A1 (en) * | 2006-05-31 | 2007-12-06 | Omri Barkay | Enabling client QoS middle layer based on application recognition |
US20070280104A1 (en) * | 2006-06-01 | 2007-12-06 | Takashi Miyoshi | System and Method for Managing Forwarding Database Resources in a Switching Environment |
US7639619B2 (en) * | 2006-06-07 | 2009-12-29 | Sharp Laboratories Of America, Inc. | System and method for quality of service (QoS) setup of a network segment having an intermediate device |
WO2007147170A2 (en) * | 2006-06-16 | 2007-12-21 | Bittorrent, Inc. | Classification and verification of static file transfer protocols |
US8683045B2 (en) * | 2006-07-17 | 2014-03-25 | Qualcomm Incorporated | Intermediate network device for host-client communication |
US7698408B1 (en) * | 2006-07-24 | 2010-04-13 | Oracle America, Inc. | Method and apparatus for testing a network |
US7797406B2 (en) * | 2006-07-27 | 2010-09-14 | Cisco Technology, Inc. | Applying quality of service to application messages in network elements based on roles and status |
US8726242B2 (en) * | 2006-07-27 | 2014-05-13 | Commvault Systems, Inc. | Systems and methods for continuous data replication |
US20080028445A1 (en) * | 2006-07-31 | 2008-01-31 | Fortinet, Inc. | Use of authentication information to make routing decisions |
US7742408B2 (en) * | 2006-08-04 | 2010-06-22 | Fujitsu Limited | System and method for filtering packets in a switching environment |
US7826468B2 (en) * | 2006-08-04 | 2010-11-02 | Fujitsu Limited | System and method for bypassing an output queue structure of a switch |
EP1903725B1 (en) * | 2006-09-19 | 2015-07-01 | Fujitsu Ltd. | Packet communication method and packet communication device |
US8249089B2 (en) * | 2006-09-29 | 2012-08-21 | Intel Corporation | Methods for pushing address translations mappings to PCI express endpoints |
US20080080400A1 (en) * | 2006-09-29 | 2008-04-03 | Randeep Kapoor | Switching fabric device discovery |
US7872982B2 (en) * | 2006-10-02 | 2011-01-18 | International Business Machines Corporation | Implementing an error log analysis model to facilitate faster problem isolation and repair |
US8584199B1 (en) | 2006-10-17 | 2013-11-12 | A10 Networks, Inc. | System and method to apply a packet routing policy to an application session |
US8312507B2 (en) | 2006-10-17 | 2012-11-13 | A10 Networks, Inc. | System and method to apply network traffic policy to an application session |
US7757013B1 (en) * | 2006-10-20 | 2010-07-13 | Emc Corporation | Techniques for controlling data storage system performance |
US8458350B2 (en) * | 2006-11-03 | 2013-06-04 | Rockwell Automation Technologies, Inc. | Control and communications architecture |
JP2010508897A (en) | 2006-11-06 | 2010-03-25 | アトリウム メディカル コーポレーション | Coated surgical mesh |
US9492596B2 (en) | 2006-11-06 | 2016-11-15 | Atrium Medical Corporation | Barrier layer with underlying medical device and one or more reinforcing support structures |
CA2668881C (en) * | 2006-11-07 | 2016-07-26 | Tiversa, Inc. | System and method for enhanced experience with a peer to peer network |
US8751625B2 (en) * | 2006-12-04 | 2014-06-10 | Canon Kabushiki Kaisha | Notification apparatus and notification method |
US8537972B2 (en) * | 2006-12-07 | 2013-09-17 | General Instrument Corporation | Method and apparatus for determining micro-reflections in a network |
US7787381B2 (en) * | 2006-12-13 | 2010-08-31 | At&T Intellectual Property I, L.P. | Methods and apparatus to manage network transport paths in accordance with network policies |
US20080181243A1 (en) * | 2006-12-15 | 2008-07-31 | Brocade Communications Systems, Inc. | Ethernet forwarding in high performance fabrics |
US20080159277A1 (en) * | 2006-12-15 | 2008-07-03 | Brocade Communications Systems, Inc. | Ethernet over fibre channel |
US8677091B2 (en) | 2006-12-18 | 2014-03-18 | Commvault Systems, Inc. | Writing data and storage system specific metadata to network attached storage device |
US7895601B2 (en) * | 2007-01-10 | 2011-02-22 | International Business Machines Corporation | Collective send operations on a system area network |
US8144697B2 (en) * | 2007-01-12 | 2012-03-27 | Raytheon Company | System and method for networking computing clusters |
JP5100133B2 (en) * | 2007-01-19 | 2012-12-19 | 株式会社東芝 | Information processing device |
US8259720B2 (en) | 2007-02-02 | 2012-09-04 | Cisco Technology, Inc. | Triple-tier anycast addressing |
EP2127311B1 (en) | 2007-02-02 | 2013-10-09 | Websense, Inc. | System and method for adding context to prevent data leakage over a computer network |
US8677457B2 (en) * | 2007-02-09 | 2014-03-18 | Marvell World Trade Ltd. | Security for codes running in non-trusted domains in a processor core |
US8340678B1 (en) | 2007-03-09 | 2012-12-25 | At&T Mobility Ii Llc | Indicating radio bearer information to network applications |
US8055789B2 (en) | 2007-03-27 | 2011-11-08 | Amazon Technologies, Inc. | Configuring intercommunications between computing nodes |
JP2008244979A (en) * | 2007-03-28 | 2008-10-09 | Nec Corp | Load balanced cell switch apparatus, and priority control method |
US9922330B2 (en) | 2007-04-12 | 2018-03-20 | Kroll Information Assurance, Llc | System and method for advertising on a peer-to-peer network |
US8909664B2 (en) | 2007-04-12 | 2014-12-09 | Tiversa Ip, Inc. | System and method for creating a list of shared information on a peer-to-peer network |
US8935406B1 (en) | 2007-04-16 | 2015-01-13 | Chelsio Communications, Inc. | Network adaptor configured for connection establishment offload |
US20080259797A1 (en) * | 2007-04-18 | 2008-10-23 | Aladdin Knowledge Systems Ltd. | Load-Balancing Bridge Cluster For Network Nodes |
US8060644B1 (en) | 2007-05-11 | 2011-11-15 | Chelsio Communications, Inc. | Intelligent network adaptor with end-to-end flow control |
US8589587B1 (en) * | 2007-05-11 | 2013-11-19 | Chelsio Communications, Inc. | Protocol offload in intelligent network adaptor, including application level signalling |
US8024426B2 (en) * | 2007-05-11 | 2011-09-20 | Texas Memory Systems, Inc. | Non-disruptive data path upgrade using target mobility |
US7831720B1 (en) | 2007-05-17 | 2010-11-09 | Chelsio Communications, Inc. | Full offload of stateful connections, with partial connection offload |
US8982887B2 (en) * | 2007-05-18 | 2015-03-17 | International Business Machines Corporation | System, method and program for making routing decisions |
US20080301320A1 (en) * | 2007-05-31 | 2008-12-04 | Morris Robert P | Method And System For Managing Communication Protocol Data Based On MIME Types |
US8149710B2 (en) | 2007-07-05 | 2012-04-03 | Cisco Technology, Inc. | Flexible and hierarchical dynamic buffer allocation |
US7793032B2 (en) * | 2007-07-11 | 2010-09-07 | Commex Technologies, Ltd. | Systems and methods for efficient handling of data traffic and processing within a processing device |
US8300618B2 (en) * | 2007-07-20 | 2012-10-30 | Motorola Solutions, Inc. | User priority based preemption techniques in a time division multiple access multi-hop ad hoc network |
US7720099B2 (en) * | 2007-08-13 | 2010-05-18 | Honeywell International Inc. | Common protocol and routing scheme for space data processing networks |
US8031633B2 (en) * | 2007-08-13 | 2011-10-04 | Honeywell International Inc. | Virtual network architecture for space data processing |
US8121038B2 (en) | 2007-08-21 | 2012-02-21 | Cisco Technology, Inc. | Backward congestion notification |
US8428067B2 (en) * | 2007-09-04 | 2013-04-23 | Honeywell International Inc. | Method and apparatus for dynamic assignment of quality of service parameters in a communication network |
US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
US20090103518A1 (en) * | 2007-10-18 | 2009-04-23 | Motorola, Inc. | Call origination by an application server in an internet protogol multimedia core network subsystem |
US7701252B1 (en) * | 2007-11-06 | 2010-04-20 | Altera Corporation | Stacked die network-on-chip for FPGA |
US8583780B2 (en) * | 2007-11-20 | 2013-11-12 | Brocade Communications Systems, Inc. | Discovery of duplicate address in a network by reviewing discovery frames received at a port |
US7843967B2 (en) * | 2007-11-30 | 2010-11-30 | Telefonaktiebolaget L M Ericsson (Publ) | Multiple protocol cross layer customized QoS propagation and mapping |
JP2009146106A (en) * | 2007-12-13 | 2009-07-02 | Hitachi Ltd | Storage system having function which migrates virtual communication port which is added to physical communication port |
US8493853B2 (en) * | 2007-12-13 | 2013-07-23 | Arris Solutions, Inc. | Flow control in a network device |
US7548545B1 (en) * | 2007-12-14 | 2009-06-16 | Raptor Networks Technology, Inc. | Disaggregated network management |
US8108454B2 (en) * | 2007-12-17 | 2012-01-31 | Brocade Communications Systems, Inc. | Address assignment in Fibre Channel over Ethernet environments |
US8407784B2 (en) | 2008-03-19 | 2013-03-26 | Websense, Inc. | Method and system for protection against information stealing software |
US9130986B2 (en) | 2008-03-19 | 2015-09-08 | Websense, Inc. | Method and system for protection against information stealing software |
US9015842B2 (en) | 2008-03-19 | 2015-04-21 | Websense, Inc. | Method and system for protection against information stealing software |
US7865586B2 (en) * | 2008-03-31 | 2011-01-04 | Amazon Technologies, Inc. | Configuring communications between computing nodes |
US8429739B2 (en) | 2008-03-31 | 2013-04-23 | Amazon Technologies, Inc. | Authorizing communications between computing nodes |
US8549347B1 (en) | 2010-12-20 | 2013-10-01 | Amazon Technologies, Inc. | Techniques for network replication |
US8046480B2 (en) | 2008-03-31 | 2011-10-25 | Amazon Technologies, Inc. | Embedding overlay virtual network addresses in underlying substrate network addresses |
US20090296726A1 (en) * | 2008-06-03 | 2009-12-03 | Brocade Communications Systems, Inc. | ACCESS CONTROL LIST MANAGEMENT IN AN FCoE ENVIRONMENT |
US20090296737A1 (en) * | 2008-06-03 | 2009-12-03 | Ram Arye | Method and system for connecting two nodes over multiple communication links |
US7773629B1 (en) * | 2008-06-09 | 2010-08-10 | Qlogic, Corporation | Method and system for network port addressing |
US8396059B1 (en) * | 2008-07-03 | 2013-03-12 | Cisco Technology, Inc. | Automated discovery/rediscovery of server to network connectivity |
EP2351299B1 (en) * | 2008-10-02 | 2013-04-10 | Telefonaktiebolaget LM Ericsson (PUBL) | Ethernet frame broadcast emulation |
US9178842B2 (en) | 2008-11-05 | 2015-11-03 | Commvault Systems, Inc. | Systems and methods for monitoring messaging applications for compliance with a policy |
US8228848B2 (en) * | 2008-11-17 | 2012-07-24 | Sierra Wireless, Inc. | Method and apparatus for facilitating push communication across a network boundary |
GB2478470B8 (en) | 2008-11-17 | 2014-05-21 | Sierra Wireless Inc | Method and apparatus for network port and netword address translation |
US8924486B2 (en) * | 2009-02-12 | 2014-12-30 | Sierra Wireless, Inc. | Method and system for aggregating communications |
US8787331B2 (en) | 2008-11-21 | 2014-07-22 | At&T Intellectual Property I, L.P. | Femtocell local breakout mechanisms |
US8204859B2 (en) | 2008-12-10 | 2012-06-19 | Commvault Systems, Inc. | Systems and methods for managing replicated database data |
US9495382B2 (en) | 2008-12-10 | 2016-11-15 | Commvault Systems, Inc. | Systems and methods for performing discrete data replication |
US8281049B2 (en) * | 2008-12-19 | 2012-10-02 | Cisco Technology, Inc. | Host-daughtercard configuration with double data rate bus |
US10831724B2 (en) * | 2008-12-19 | 2020-11-10 | Bmc Software, Inc. | Method of reconciling resources in the metadata hierarchy |
JP5350004B2 (en) * | 2009-02-19 | 2013-11-27 | キヤノン株式会社 | COMMUNICATION DEVICE, COMMUNICATION DEVICE CONTROL METHOD, AND PROGRAM |
US8848575B2 (en) * | 2009-02-23 | 2014-09-30 | Brocade Communications Systems, Inc. | High availability and multipathing for fibre channel over ethernet |
US9244882B2 (en) * | 2009-02-26 | 2016-01-26 | Red Hat, Inc. | Provisioning network resources based on environment |
CA2759023A1 (en) * | 2009-04-17 | 2010-10-21 | Research In Motion Limited | Mechanisms for evolved packet system quality of service class identifier extension |
US9130972B2 (en) | 2009-05-26 | 2015-09-08 | Websense, Inc. | Systems and methods for efficient detection of fingerprinted data and information |
US8644188B1 (en) | 2009-06-25 | 2014-02-04 | Amazon Technologies, Inc. | Providing virtual networking functionality for managed computer networks |
CN101945444B (en) * | 2009-07-06 | 2016-06-29 | 华为技术有限公司 | Communication means, device and system |
US8516532B2 (en) | 2009-07-28 | 2013-08-20 | Motorola Mobility Llc | IP video delivery using flexible channel bonding |
US20110038910A1 (en) | 2009-08-11 | 2011-02-17 | Atrium Medical Corporation | Anti-infective antimicrobial-containing biomaterials |
US8526485B2 (en) * | 2009-09-23 | 2013-09-03 | General Instrument Corporation | Using equalization coefficients of end devices in a cable television network to determine and diagnose impairments in upstream channels |
US20110103391A1 (en) | 2009-10-30 | 2011-05-05 | Smooth-Stone, Inc. C/O Barry Evans | System and method for high-performance, low-power data center interconnect fabric |
US9054990B2 (en) * | 2009-10-30 | 2015-06-09 | Iii Holdings 2, Llc | System and method for data center security enhancements leveraging server SOCs or server fabrics |
US9876735B2 (en) | 2009-10-30 | 2018-01-23 | Iii Holdings 2, Llc | Performance and power optimized computer system architectures and methods leveraging power optimized tree fabric interconnect |
US9069929B2 (en) | 2011-10-31 | 2015-06-30 | Iii Holdings 2, Llc | Arbitrating usage of serial port in node card of scalable and modular servers |
US20130107444A1 (en) | 2011-10-28 | 2013-05-02 | Calxeda, Inc. | System and method for flexible storage and networking provisioning in large scalable processor installations |
US9465771B2 (en) | 2009-09-24 | 2016-10-11 | Iii Holdings 2, Llc | Server on a chip and node cards comprising one or more of same |
US8599863B2 (en) | 2009-10-30 | 2013-12-03 | Calxeda, Inc. | System and method for using a multi-protocol fabric module across a distributed server interconnect fabric |
US9077654B2 (en) | 2009-10-30 | 2015-07-07 | Iii Holdings 2, Llc | System and method for data center security enhancements leveraging managed server SOCs |
EP3264686B1 (en) * | 2009-10-16 | 2018-12-12 | Tekelec, Inc. | Methods, systems, and computer readable media for providing diameter signaling router with integrated monitoring and/or firewall functionality |
US8750126B2 (en) * | 2009-10-16 | 2014-06-10 | Tekelec, Inc. | Methods, systems, and computer readable media for multi-interface monitoring and correlation of diameter signaling information |
US9680770B2 (en) | 2009-10-30 | 2017-06-13 | Iii Holdings 2, Llc | System and method for using a multi-protocol fabric module across a distributed server interconnect fabric |
US9648102B1 (en) | 2012-12-27 | 2017-05-09 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US9311269B2 (en) | 2009-10-30 | 2016-04-12 | Iii Holdings 2, Llc | Network proxy for high-performance, low-power data center interconnect fabric |
EP2326116B1 (en) * | 2009-11-20 | 2020-02-05 | Deutsche Telekom AG | Method and system related to quality of service in distributed wireless networks |
US8489722B2 (en) * | 2009-11-24 | 2013-07-16 | International Business Machines Corporation | System and method for providing quality of service in wide area messaging fabric |
US9298662B2 (en) * | 2009-12-08 | 2016-03-29 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Providing expansion card settings |
US8139490B2 (en) * | 2009-12-21 | 2012-03-20 | Google Inc. | Deadlock prevention in direct networks of arbitrary topology |
EP2534794B1 (en) * | 2010-02-12 | 2019-03-27 | Tekelec, Inc. | Methods, systems, and computer readable media for providing peer routing at a diameter node |
CN102859944B (en) * | 2010-02-12 | 2016-05-25 | 泰克莱克股份有限公司 | For the method and apparatus of local application route is provided at DIAMETER Nodes |
US8612627B1 (en) | 2010-03-03 | 2013-12-17 | Amazon Technologies, Inc. | Managing encoded multi-part communications for provided computer networks |
US8645508B1 (en) | 2010-03-03 | 2014-02-04 | Amazon Technologies, Inc. | Managing external communications for provided computer networks |
US9425986B2 (en) | 2010-03-03 | 2016-08-23 | Iwebgate Technology Limited | System and method for multiple concurrent virtual networks |
US8615014B2 (en) * | 2010-03-03 | 2013-12-24 | Iwebgate Technology Limited | System and method for multiple concurrent virtual networks |
JPWO2011111104A1 (en) * | 2010-03-10 | 2013-06-27 | 富士通株式会社 | Load balancing device for biometric authentication system |
US8712979B2 (en) | 2010-03-26 | 2014-04-29 | Bmc Software, Inc. | Statistical identification of instances during reconciliation process |
US8504517B2 (en) | 2010-03-29 | 2013-08-06 | Commvault Systems, Inc. | Systems and methods for selective data replication |
US8504515B2 (en) | 2010-03-30 | 2013-08-06 | Commvault Systems, Inc. | Stubbing systems and methods in a data replication environment |
US8725698B2 (en) | 2010-03-30 | 2014-05-13 | Commvault Systems, Inc. | Stub file prioritization in a data replication system |
US8224931B1 (en) | 2010-03-31 | 2012-07-17 | Amazon Technologies, Inc. | Managing use of intermediate destination computing nodes for provided computer networks |
US8738745B1 (en) | 2010-03-31 | 2014-05-27 | Amazon Technologies, Inc. | Managing use of intermediate destination hardware devices for provided computer networks |
US9282027B1 (en) | 2010-03-31 | 2016-03-08 | Amazon Technologies, Inc. | Managing use of alternative intermediate destination computing nodes for provided computer networks |
US8396946B1 (en) | 2010-03-31 | 2013-03-12 | Amazon Technologies, Inc. | Managing integration of external nodes into provided computer networks |
US8966027B1 (en) | 2010-05-24 | 2015-02-24 | Amazon Technologies, Inc. | Managing replication of computing nodes for provided computer networks |
WO2011150391A1 (en) | 2010-05-28 | 2011-12-01 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US20110302287A1 (en) * | 2010-06-04 | 2011-12-08 | Muppirala Kishore Kumar | Quality of service control |
US8683023B1 (en) | 2010-06-30 | 2014-03-25 | Amazon Technologies, Inc. | Managing communications involving external nodes of provided computer networks |
US8830823B2 (en) | 2010-07-06 | 2014-09-09 | Nicira, Inc. | Distributed control platform for large-scale production networks |
US9525647B2 (en) * | 2010-07-06 | 2016-12-20 | Nicira, Inc. | Network control apparatus and method for creating and modifying logical switching elements |
EP2593141B1 (en) | 2010-07-16 | 2018-07-04 | Atrium Medical Corporation | Composition and methods for altering the rate of hydrolysis of cured oil-based materials |
US9032017B1 (en) * | 2010-08-10 | 2015-05-12 | Scalarc Inc | Method and system for transparent read-write query routing when load balancing databases |
US8543554B1 (en) | 2010-08-10 | 2013-09-24 | ScalArc Inc. | Method and system for transparent database query caching |
US8484242B1 (en) | 2010-08-24 | 2013-07-09 | ScalArc, Inc. | Method and system for transparent database connection pooling and query queuing |
US8763091B1 (en) | 2010-08-24 | 2014-06-24 | ScalArc Inc. | Method and system for user authentication offload in a transparent database load balancer |
US8560646B1 (en) | 2010-09-28 | 2013-10-15 | Amazon Technologies, Inc. | Managing communications using alternative packet addressing |
US8488446B1 (en) | 2010-10-27 | 2013-07-16 | Amazon Technologies, Inc. | Managing failure behavior for computing nodes of provided computer networks |
US8654640B2 (en) | 2010-12-08 | 2014-02-18 | General Instrument Corporation | System and method for IP video delivery using distributed flexible channel bonding |
US8755283B2 (en) | 2010-12-17 | 2014-06-17 | Microsoft Corporation | Synchronizing state among load balancer components |
US8798077B2 (en) | 2010-12-29 | 2014-08-05 | Juniper Networks, Inc. | Methods and apparatus for standard protocol validation mechanisms deployed over a switch fabric system |
US8738725B2 (en) * | 2011-01-03 | 2014-05-27 | Planetary Data LLC | Community internet drive |
US8493863B2 (en) | 2011-01-18 | 2013-07-23 | Apple Inc. | Hierarchical fabric control circuits |
US8649286B2 (en) * | 2011-01-18 | 2014-02-11 | Apple Inc. | Quality of service (QoS)-related fabric control |
US8744602B2 (en) * | 2011-01-18 | 2014-06-03 | Apple Inc. | Fabric limiter circuits |
US8861386B2 (en) | 2011-01-18 | 2014-10-14 | Apple Inc. | Write traffic shaper circuits |
US8612550B2 (en) | 2011-02-07 | 2013-12-17 | Microsoft Corporation | Proxy-based cache content distribution and affinity |
WO2012106820A1 (en) | 2011-02-08 | 2012-08-16 | Sierra Wireless, Inc. | Method and system for forwarding data between network devices |
JP5732550B2 (en) | 2011-03-03 | 2015-06-10 | テケレック・インコーポレイテッドTekelec, Inc. | Method, system, and computer-readable medium for enhancing Diameter signaling messages |
US8589996B2 (en) * | 2011-03-16 | 2013-11-19 | Azuki Systems, Inc. | Method and system for federated over-the-top content delivery |
US10127296B2 (en) | 2011-04-07 | 2018-11-13 | Bmc Software, Inc. | Cooperative naming for configuration items in a distributed configuration management database environment |
CN103597788B (en) * | 2011-08-08 | 2016-06-01 | 惠普发展公司,有限责任合伙企业 | There is the fabric chip of trunk link |
WO2013022428A1 (en) | 2011-08-08 | 2013-02-14 | Hewlett-Packard Development Company, L.P. | Fabric chip having a port resolution module |
US9141568B2 (en) * | 2011-08-25 | 2015-09-22 | Apple Inc. | Proportional memory operation throttling |
US8706925B2 (en) | 2011-08-30 | 2014-04-22 | Apple Inc. | Accelerating memory operations blocked by ordering requirements and data not yet received |
US8937992B2 (en) | 2011-08-30 | 2015-01-20 | General Instrument Corporation | Method and apparatus for updating equalization coefficients of adaptive pre-equalizers |
JP5782925B2 (en) * | 2011-08-31 | 2015-09-24 | 富士通株式会社 | Information processing apparatus, program, and control method |
US10405235B2 (en) * | 2011-09-26 | 2019-09-03 | Qualcomm Incorporated | Systems and methods for traffic detection network control |
CN103765816A (en) * | 2011-09-28 | 2014-04-30 | 惠普发展公司,有限责任合伙企业 | Managing a switch fabric |
CN103765825B (en) * | 2011-09-28 | 2017-02-15 | 慧与发展有限责任合伙企业 | Implementing a switch fabric responsive to an unavailable path |
WO2013049675A1 (en) | 2011-09-30 | 2013-04-04 | Gigamon Llc | Systems and methods for implementing a traffic visibility network |
US9094333B1 (en) * | 2011-10-26 | 2015-07-28 | Qlogic, Corporation | Systems and methods for sending and receiving information via a network device |
US8716876B1 (en) | 2011-11-11 | 2014-05-06 | Altera Corporation | Systems and methods for stacking a memory chip above an integrated circuit chip |
US8576705B2 (en) | 2011-11-18 | 2013-11-05 | General Instrument Corporation | Upstream channel bonding partial service using spectrum management |
US9113181B2 (en) | 2011-12-13 | 2015-08-18 | Arris Technology, Inc. | Dynamic channel bonding partial service triggering |
US8977660B1 (en) * | 2011-12-30 | 2015-03-10 | Emc Corporation | Multi-level distributed hash table for data storage in a hierarchically arranged network |
US8908682B2 (en) * | 2012-02-02 | 2014-12-09 | International Business Machines Corporation | Switch discovery protocol for a distributed fabric system |
US9118618B2 (en) | 2012-03-29 | 2015-08-25 | A10 Networks, Inc. | Hardware-based packet editor |
US9054949B2 (en) * | 2012-04-17 | 2015-06-09 | International Business Machines Corporation | Updating zone information in a distributed switch of data forwarders |
US9003460B2 (en) | 2012-04-27 | 2015-04-07 | Google Technology Holdings LLC | Network monitoring with estimation of network path to network element location |
US8837302B2 (en) | 2012-04-27 | 2014-09-16 | Motorola Mobility Llc | Mapping a network fault |
US8868736B2 (en) | 2012-04-27 | 2014-10-21 | Motorola Mobility Llc | Estimating a severity level of a network fault |
US8867371B2 (en) | 2012-04-27 | 2014-10-21 | Motorola Mobility Llc | Estimating physical locations of network faults |
US9065731B2 (en) | 2012-05-01 | 2015-06-23 | Arris Technology, Inc. | Ensure upstream channel quality measurement stability in an upstream channel bonding system using T4 timeout multiplier |
WO2013173758A2 (en) * | 2012-05-18 | 2013-11-21 | Benu Networks, Inc. | Highly scalable modular system with high reliability and low latency |
US8892523B2 (en) | 2012-06-08 | 2014-11-18 | Commvault Systems, Inc. | Auto summarization of content |
US9867880B2 (en) | 2012-06-13 | 2018-01-16 | Atrium Medical Corporation | Cured oil-hydrogel biomaterial compositions for controlled drug delivery |
US8805990B2 (en) * | 2012-07-12 | 2014-08-12 | Microsoft Corporation | Load balancing for single-address tenants |
US9136943B2 (en) | 2012-07-30 | 2015-09-15 | Arris Technology, Inc. | Method of characterizing impairments detected by equalization on a channel of a network |
US9442778B2 (en) * | 2012-10-01 | 2016-09-13 | Salesforce.Com, Inc. | Method and system for secured inter-application communication in mobile devices |
US9246998B2 (en) | 2012-10-16 | 2016-01-26 | Microsoft Technology Licensing, Llc | Load balancer bypass |
US9137164B2 (en) | 2012-11-15 | 2015-09-15 | Arris Technology, Inc. | Upstream receiver integrity assessment for modem registration |
JP5935666B2 (en) * | 2012-11-22 | 2016-06-15 | 日立金属株式会社 | Communication system and network relay device |
US9241259B2 (en) | 2012-11-30 | 2016-01-19 | Websense, Inc. | Method and apparatus for managing the transfer of sensitive information to mobile devices |
US9338225B2 (en) | 2012-12-06 | 2016-05-10 | A10 Networks, Inc. | Forwarding policies on a virtual service network |
US10341263B2 (en) | 2012-12-10 | 2019-07-02 | University Of Central Florida Research Foundation, Inc. | System and method for routing network frames between virtual machines |
US9053058B2 (en) | 2012-12-20 | 2015-06-09 | Apple Inc. | QoS inband upgrade |
US10379988B2 (en) | 2012-12-21 | 2019-08-13 | Commvault Systems, Inc. | Systems and methods for performance monitoring |
US9203639B2 (en) | 2012-12-27 | 2015-12-01 | Arris Technology, Inc. | Dynamic load balancing under partial service conditions |
US9197886B2 (en) | 2013-03-13 | 2015-11-24 | Arris Enterprises, Inc. | Detecting plant degradation using peer-comparison |
US9158799B2 (en) | 2013-03-14 | 2015-10-13 | Bmc Software, Inc. | Storing and retrieving context sensitive data in a management system |
US10477199B2 (en) | 2013-03-15 | 2019-11-12 | Arris Enterprises Llc | Method for identifying and prioritizing fault location in a cable plant |
US9025469B2 (en) | 2013-03-15 | 2015-05-05 | Arris Technology, Inc. | Method for estimating cable plant topology |
US9042236B2 (en) | 2013-03-15 | 2015-05-26 | Arris Technology, Inc. | Method using equalization data to determine defects in a cable plant |
WO2014144837A1 (en) | 2013-03-15 | 2014-09-18 | A10 Networks, Inc. | Processing data packets using a policy based network path |
WO2014179753A2 (en) | 2013-05-03 | 2014-11-06 | A10 Networks, Inc. | Facilitating secure network traffic by an application delivery controller |
US20160142262A1 (en) * | 2013-06-17 | 2016-05-19 | Hewlett Packard Enterprise Development Lp | Monitoring a computing network |
US9369525B2 (en) * | 2013-06-26 | 2016-06-14 | International Business Machines Corporation | Highly resilient protocol servicing in network-attached storage |
US9304861B2 (en) | 2013-06-27 | 2016-04-05 | International Business Machines Corporation | Unobtrusive failover in clustered network-attached storage |
US20150012679A1 (en) * | 2013-07-03 | 2015-01-08 | Iii Holdings 2, Llc | Implementing remote transaction functionalities between data processing nodes of a switched interconnect fabric |
US9225681B2 (en) | 2013-09-17 | 2015-12-29 | Cisco Technology, Inc. | Enabling mobile applications to acquire a MAC address for obtaining location information |
US20150081043A1 (en) * | 2013-09-19 | 2015-03-19 | Broadcom Corporation | System for Control Logic Management |
US9537775B2 (en) | 2013-09-23 | 2017-01-03 | Oracle International Corporation | Methods, systems, and computer readable media for diameter load and overload information and virtualization |
US9876711B2 (en) | 2013-11-05 | 2018-01-23 | Cisco Technology, Inc. | Source address translation in overlay networks |
US9674086B2 (en) | 2013-11-05 | 2017-06-06 | Cisco Technology, Inc. | Work conserving schedular based on ranking |
US9502111B2 (en) | 2013-11-05 | 2016-11-22 | Cisco Technology, Inc. | Weighted equal cost multipath routing |
US9825857B2 (en) | 2013-11-05 | 2017-11-21 | Cisco Technology, Inc. | Method for increasing Layer-3 longest prefix match scale |
US9769078B2 (en) | 2013-11-05 | 2017-09-19 | Cisco Technology, Inc. | Dynamic flowlet prioritization |
US9374294B1 (en) | 2013-11-05 | 2016-06-21 | Cisco Technology, Inc. | On-demand learning in overlay networks |
US9397946B1 (en) | 2013-11-05 | 2016-07-19 | Cisco Technology, Inc. | Forwarding to clusters of service nodes |
US9655232B2 (en) | 2013-11-05 | 2017-05-16 | Cisco Technology, Inc. | Spanning tree protocol (STP) optimization techniques |
US10951522B2 (en) | 2013-11-05 | 2021-03-16 | Cisco Technology, Inc. | IP-based forwarding of bridged and routed IP packets and unicast ARP |
US10778584B2 (en) | 2013-11-05 | 2020-09-15 | Cisco Technology, Inc. | System and method for multi-path load balancing in network fabrics |
US20150188731A1 (en) * | 2013-12-27 | 2015-07-02 | Daniel P. Daly | Programmable Distributed Networking |
US10212101B2 (en) | 2014-01-14 | 2019-02-19 | Nant Holdings Ip, Llc | Low level provisioning of network fabrics |
US9917728B2 (en) | 2014-01-14 | 2018-03-13 | Nant Holdings Ip, Llc | Software-based fabric enablement |
US9888001B2 (en) | 2014-01-28 | 2018-02-06 | Oracle International Corporation | Methods, systems, and computer readable media for negotiating diameter capabilities |
US9424059B1 (en) * | 2014-03-12 | 2016-08-23 | Nutanix, Inc. | System and methods for implementing quality of service in a networked virtualization environment for storage management |
US9942152B2 (en) | 2014-03-25 | 2018-04-10 | A10 Networks, Inc. | Forwarding data packets using a service-based forwarding policy |
JP2015207819A (en) * | 2014-04-17 | 2015-11-19 | 株式会社リコー | Information processing apparatus, information processing system, communication control method, and program |
US11418629B2 (en) * | 2014-05-19 | 2022-08-16 | Bay Microsystems, Inc. | Methods and systems for accessing remote digital data over a wide area network (WAN) |
JP6364975B2 (en) * | 2014-06-04 | 2018-08-01 | 株式会社デンソー | Driving assistance device |
KR101748546B1 (en) | 2014-08-13 | 2017-06-16 | 메타마코 테크놀로지 엘피 | Apparatus and method for low latency switching |
US10250399B1 (en) * | 2014-10-03 | 2019-04-02 | Cisco Technology, Inc. | Multicast routing |
US9674057B2 (en) | 2014-10-07 | 2017-06-06 | At&T Intellectual Property I, L.P. | Method and system to monitor a network |
WO2016069009A1 (en) | 2014-10-31 | 2016-05-06 | Hewlett Packard Enterprise Development Lp | End to end quality of service in storage area networks |
US10268467B2 (en) | 2014-11-11 | 2019-04-23 | A10 Networks, Inc. | Policy-driven management of application traffic for providing services to cloud-based applications |
US10116493B2 (en) | 2014-11-21 | 2018-10-30 | Cisco Technology, Inc. | Recovering from virtual port channel peer failure |
US9977750B2 (en) * | 2014-12-12 | 2018-05-22 | Nxp Usa, Inc. | Coherent memory interleaving with uniform latency |
CN106034090B (en) * | 2015-03-20 | 2019-05-31 | 联想(北京)有限公司 | Information processing method and interchanger |
US10275320B2 (en) | 2015-06-26 | 2019-04-30 | Commvault Systems, Inc. | Incrementally accumulating in-process performance data and hierarchical reporting thereof for a data stream in a secondary copy operation |
EP3318026B1 (en) * | 2015-06-30 | 2020-04-08 | British Telecommunications public limited company | Model management in a dynamic qos environment |
US10728157B2 (en) * | 2015-06-30 | 2020-07-28 | British Telecommunications Public Limited Company | Local and demand driven QoS models |
US10484391B2 (en) * | 2015-08-17 | 2019-11-19 | Rohde & Schwarz Gmbh & Co. Kg | Method and system for providing secure point-to-point communication |
WO2017053960A1 (en) | 2015-09-25 | 2017-03-30 | Fsa Technologies, Inc. | Flow control system and method |
US10248494B2 (en) | 2015-10-29 | 2019-04-02 | Commvault Systems, Inc. | Monitoring, diagnosing, and repairing a management database in a data storage management system |
CN105515708B (en) * | 2015-12-07 | 2018-02-09 | 中国航空工业集团公司西安航空计算技术研究所 | A kind of clock synchronization accuracy test device and method based on FC networks |
US10142163B2 (en) | 2016-03-07 | 2018-11-27 | Cisco Technology, Inc | BFD over VxLAN on vPC uplinks |
US11777853B2 (en) | 2016-04-12 | 2023-10-03 | Nicira, Inc. | Congestion-aware load balancing in data center networks |
US10320681B2 (en) | 2016-04-12 | 2019-06-11 | Nicira, Inc. | Virtual tunnel endpoints for congestion-aware load balancing |
US10333828B2 (en) | 2016-05-31 | 2019-06-25 | Cisco Technology, Inc. | Bidirectional multicasting over virtual port channel |
FI127266B (en) * | 2016-07-08 | 2018-02-28 | Sarokal Test Systems Oy | System for processing data stream messages |
US11509501B2 (en) | 2016-07-20 | 2022-11-22 | Cisco Technology, Inc. | Automatic port verification and policy application for rogue devices |
US10193750B2 (en) | 2016-09-07 | 2019-01-29 | Cisco Technology, Inc. | Managing virtual port channel switch peers from software-defined network controller |
US10986076B1 (en) | 2016-09-08 | 2021-04-20 | Rockwell Collins, Inc. | Information flow enforcement for IP domain in multilevel secure systems |
US10757111B1 (en) * | 2016-09-08 | 2020-08-25 | Rockwell Collins, Inc. | Information flow enforcement for multilevel secure systems |
CA3038147A1 (en) | 2016-09-26 | 2018-03-29 | Nant Holdings Ip, Llc | Virtual circuits in cloud networks |
US10992550B2 (en) * | 2016-09-28 | 2021-04-27 | Intel Corporation | Techniques to control quality of service for end-to-end paths in a compute environment |
US10540516B2 (en) | 2016-10-13 | 2020-01-21 | Commvault Systems, Inc. | Data protection within an unsecured storage environment |
US10193810B2 (en) * | 2016-11-08 | 2019-01-29 | Vmware, Inc. | Congestion-aware load balancing |
US10848422B2 (en) | 2016-12-13 | 2020-11-24 | Napatech A/S | System and a method for handling data |
US10547509B2 (en) | 2017-06-19 | 2020-01-28 | Cisco Technology, Inc. | Validation of a virtual port channel (VPC) endpoint in the network fabric |
US10440631B1 (en) * | 2017-11-06 | 2019-10-08 | Amazon Technologies, Inc. | Payload type aware routing in wireless mesh networks |
US10831591B2 (en) | 2018-01-11 | 2020-11-10 | Commvault Systems, Inc. | Remedial action based on maintaining process awareness in data storage management |
US10924352B2 (en) | 2018-01-17 | 2021-02-16 | Nicira, Inc. | Data center network topology discovery |
US10642886B2 (en) | 2018-02-14 | 2020-05-05 | Commvault Systems, Inc. | Targeted search of backup data using facial recognition |
US20200192572A1 (en) | 2018-12-14 | 2020-06-18 | Commvault Systems, Inc. | Disk usage growth prediction system |
US11323340B2 (en) | 2019-01-07 | 2022-05-03 | Vmware, Inc. | Packet flow monitoring in software-defined networking (SDN) environments |
US11042318B2 (en) | 2019-07-29 | 2021-06-22 | Commvault Systems, Inc. | Block-level data replication |
US11902264B2 (en) | 2020-06-22 | 2024-02-13 | Vmware, Inc. | Path selection for data packets encrypted based on an IPSEC protocol |
US11855894B2 (en) * | 2020-10-06 | 2023-12-26 | Mitsubishi Electric Corporation | Control system, server, terminal device, control device, communication control method, and recording medium |
JP2022110245A (en) * | 2021-01-18 | 2022-07-29 | 株式会社日立製作所 | Storage system including storage cluster that provides virtual storage system |
US20220385560A1 (en) * | 2021-05-27 | 2022-12-01 | Nokia Solutions And Networks Oy | Network-topology discovery using packet headers |
US11809285B2 (en) | 2022-02-09 | 2023-11-07 | Commvault Systems, Inc. | Protecting a management database of a data storage management system to meet a recovery point objective (RPO) |
US11889346B2 (en) | 2022-03-21 | 2024-01-30 | Vmware, Inc. | Quality-aware user data forwarding in mobile communications systems |
Citations (92)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4777695A (en) * | 1986-12-23 | 1988-10-18 | Nissan Motor Co., Ltd. | Windshield wiper with means for adjusting force with which wiper blade is pressed against windshield |
US4872160A (en) * | 1988-03-31 | 1989-10-03 | American Telephone And Telegraph Company, At&T Bell Laboratories | Integrated packetized voice and data switching system |
US5247516A (en) * | 1991-03-28 | 1993-09-21 | Sprint International Communications Corp. | Configurable composite data frame |
US5303233A (en) * | 1990-05-18 | 1994-04-12 | Nec Corporation | Arrangement favorably carrying out a connection by the use of an intermediate conversion parameter between input and output virtual channel identifiers (VCI's) |
US5327426A (en) * | 1991-09-27 | 1994-07-05 | Echelon Corporation | Method and apparatus for preventing unnecessary retransmission of messages in a networked messaging system |
US5327552A (en) * | 1992-06-22 | 1994-07-05 | Bell Communications Research, Inc. | Method and system for correcting routing errors due to packet deflections |
US5339318A (en) * | 1991-10-24 | 1994-08-16 | Fujitsu Limited | VPI and VCI assignment system in ATM system |
US5343473A (en) * | 1992-08-07 | 1994-08-30 | International Business Machines Corporation | Method of determining whether to use preempt/resume or alternate protocol for data transmission |
US5412653A (en) * | 1993-10-15 | 1995-05-02 | International Business Machines Corporation | Dynamic switch cascading system |
US5432783A (en) * | 1992-10-21 | 1995-07-11 | Bell Communications Research, Inc. | System and method for providing egress policing for broadband virtual private networks |
US5440547A (en) * | 1993-01-07 | 1995-08-08 | Kabushiki Kaisha Toshiba | Data-transfer routing management for packet-oriented digital communication system including ATM networks |
US5548639A (en) * | 1991-10-22 | 1996-08-20 | Fujitsu Limited | Distributed control of telecommunication network for setting up an alternative communication path |
US5550816A (en) * | 1994-12-29 | 1996-08-27 | Storage Technology Corporation | Method and apparatus for virtual switching |
US5675807A (en) * | 1992-12-17 | 1997-10-07 | Tandem Computers Incorporated | Interrupt message delivery identified by storage location of received interrupt data |
US5675579A (en) * | 1992-12-17 | 1997-10-07 | Tandem Computers Incorporated | Method for verifying responses to messages using a barrier message |
US5680402A (en) * | 1991-03-29 | 1997-10-21 | International Business Machines Corporation | Priority broadcast and multi-cast for unbuffered multi-stage networks |
US5734719A (en) * | 1993-10-15 | 1998-03-31 | International Business Systems, Incorporated | Digital information accessing, delivery and production system |
US5751932A (en) * | 1992-12-17 | 1998-05-12 | Tandem Computers Incorporated | Fail-fast, fail-functional, fault-tolerant multiprocessor system |
US5774067A (en) * | 1995-06-07 | 1998-06-30 | International Business Machines Corporation | Flash-flooding multi-stage interconnection network with parallel path seeking switching elements |
US5790546A (en) * | 1994-01-28 | 1998-08-04 | Cabletron Systems, Inc. | Method of transmitting data packets in a packet switched communications network |
US5790804A (en) * | 1994-04-12 | 1998-08-04 | Mitsubishi Electric Information Technology Center America, Inc. | Computer network interface and network protocol with direct deposit messaging |
US5805804A (en) * | 1994-11-21 | 1998-09-08 | Oracle Corporation | Method and apparatus for scalable, high bandwidth storage retrieval and transportation of multimedia data on a network |
US5809025A (en) * | 1996-03-15 | 1998-09-15 | Motorola, Inc. | Virtual path-based static routing |
US5818842A (en) * | 1994-01-21 | 1998-10-06 | Newbridge Networks Corporation | Transparent interconnector of LANs by an ATM network |
US5867501A (en) * | 1992-12-17 | 1999-02-02 | Tandem Computers Incorporated | Encoding for communicating data and commands |
US5872783A (en) * | 1996-07-24 | 1999-02-16 | Cisco Systems, Inc. | Arrangement for rendering forwarding decisions for packets transferred among network switches |
US5881246A (en) * | 1996-06-12 | 1999-03-09 | Bay Networks, Inc. | System for generating explicit routing advertisements to specify a selected path through a connectionless network to a destination by a specific router |
US5892766A (en) * | 1996-02-22 | 1999-04-06 | Fujitsu, Ltd. | Method and apparatus for coordinating access to an output of a routing device in a packet switching network |
US5892923A (en) * | 1994-12-28 | 1999-04-06 | Hitachi, Ltd. | Parallel computer system using properties of messages to route them through an interconnect network and to select virtual channel circuits therewithin |
US5898830A (en) * | 1996-10-17 | 1999-04-27 | Network Engineering Software | Firewall providing enhanced network security and user transparency |
US5917820A (en) * | 1996-06-10 | 1999-06-29 | Cisco Technology, Inc. | Efficient packet forwarding arrangement for routing packets in an internetwork |
US5940596A (en) * | 1996-03-25 | 1999-08-17 | I-Cube, Inc. | Clustered address caching system for a network switch |
US5943339A (en) * | 1995-03-24 | 1999-08-24 | Northern Telecom Limited | Digital communications system |
US5953338A (en) * | 1996-12-13 | 1999-09-14 | Northern Telecom Limited | Dynamic control processes and systems for asynchronous transfer mode networks |
US5964835A (en) * | 1992-12-17 | 1999-10-12 | Tandem Computers Incorporated | Storage access validation to data messages using partial storage address data indexed entries containing permissible address range validation for message source |
US6021263A (en) * | 1996-02-16 | 2000-02-01 | Lucent Technologies, Inc. | Management of ATM virtual circuits with resources reservation protocol |
US6021495A (en) * | 1996-12-13 | 2000-02-01 | 3Com Corporation | Method and apparatus for authentication process of a star or hub network connection ports by detecting interruption in link beat |
US6028863A (en) * | 1996-06-10 | 2000-02-22 | Fujitsu Limited | Method and apparatus for negotiating connection identifier |
US6032205A (en) * | 1997-03-06 | 2000-02-29 | Hitachi, Ltd. | Crossbar switch system for always transferring normal messages and selectively transferring broadcast messages from input buffer to output buffer when it has sufficient space respectively |
US6041049A (en) * | 1997-05-06 | 2000-03-21 | International Business Machines Corporation | Method and apparatus for determining a routing table for each node in a distributed nodal system |
US6047323A (en) * | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
US6078963A (en) * | 1998-01-16 | 2000-06-20 | At&T Corp. | Router with de-centralized processing using intelligent ports |
US6085238A (en) * | 1996-04-23 | 2000-07-04 | Matsushita Electric Works, Ltd. | Virtual LAN system |
US6094712A (en) * | 1996-12-04 | 2000-07-25 | Giganet, Inc. | Computer network interface for direct mapping of data transferred between applications on different host computers from virtual addresses to physical memory addresses application data |
US6104700A (en) * | 1997-08-29 | 2000-08-15 | Extreme Networks | Policy based quality of service |
US6108708A (en) * | 1993-12-27 | 2000-08-22 | Nec Corporation | Connection-oriented network using distributed network resources and predetermined VPIs for fast VC establishment |
US6169742B1 (en) * | 1997-02-14 | 2001-01-02 | Advanced Micro Devices, Inc. | Multiport data network switch having direct media access control link to external management |
US6172991B1 (en) * | 1997-02-14 | 2001-01-09 | Nec Corporation | ATM Network with a filtering table for securing communication |
US6195335B1 (en) * | 1997-06-27 | 2001-02-27 | International Business Machines Corporation | Data switch |
US6216173B1 (en) * | 1998-02-03 | 2001-04-10 | Redbox Technologies Limited | Method and apparatus for content processing and routing |
US6216200B1 (en) * | 1994-10-14 | 2001-04-10 | Mips Technologies, Inc. | Address queue |
US6215412B1 (en) * | 1991-03-29 | 2001-04-10 | International Business Machines Corporation | All-node switch-an unclocked, unbuffered, asynchronous switching apparatus |
US6219706B1 (en) * | 1998-10-16 | 2001-04-17 | Cisco Technology, Inc. | Access control for networks |
US6262976B1 (en) * | 1998-09-17 | 2001-07-17 | Ordered Networks, Inc. | System and method for network flow optimization using traffic classes |
US20010010692A1 (en) * | 1996-12-16 | 2001-08-02 | Juniper Networks | Memory organization in a switching device |
US6275491B1 (en) * | 1997-06-03 | 2001-08-14 | Texas Instruments Incorporated | Programmable architecture fast packet switch |
US6278714B1 (en) * | 1998-02-06 | 2001-08-21 | Sun Microsystems, Inc. | Efficient hardware implementation of virtual circuit bunching |
US6292839B1 (en) * | 1998-12-09 | 2001-09-18 | 3Com Corporation | Method and system for reflexive tunneling |
US6292488B1 (en) * | 1998-05-22 | 2001-09-18 | Compaq Computer Corporation | Method and apparatus for resolving deadlocks in a distributed computer system |
US6301252B1 (en) * | 1998-04-16 | 2001-10-09 | Mantra Communications Incorporated | Control and management of ATM networks from server computers |
US20010030968A1 (en) * | 1999-07-14 | 2001-10-18 | Magnus Hallenstal | Combining narrowband applications with broadband transport |
US20020029287A1 (en) * | 2000-02-02 | 2002-03-07 | Yechiam Yemini | Method and apparatus for dynamically addressing a circuits based network |
US20020049778A1 (en) * | 2000-03-31 | 2002-04-25 | Bell Peter W. | System and method of information outsourcing |
US6381244B1 (en) * | 1997-10-20 | 2002-04-30 | Fujitsu Limited | Connectionless communication method |
US6381242B1 (en) * | 2000-08-29 | 2002-04-30 | Netrake Corporation | Content processor |
US6385197B1 (en) * | 1999-07-09 | 2002-05-07 | Allied Telesyn International Corp. | Virtual port trunking method and apparatus |
US6396815B1 (en) * | 1997-02-18 | 2002-05-28 | Virata Limited | Proxy-controlled ATM subnetwork |
US6400730B1 (en) * | 1999-03-10 | 2002-06-04 | Nishan Systems, Inc. | Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network |
US6411806B1 (en) * | 1995-11-30 | 2002-06-25 | Mobile Satellite Ventures Lp | Virtual network configuration and management system for satellite communications system |
US6430154B1 (en) * | 1999-08-13 | 2002-08-06 | Fujitsu Network Communications, Inc. | Supporting multiple application traffic types over connection oriented networks |
US6430626B1 (en) * | 1996-12-30 | 2002-08-06 | Compaq Computer Corporation | Network switch with a multiple bus structure and a bridge interface for transferring network data between different buses |
US20030014544A1 (en) * | 2001-02-15 | 2003-01-16 | Banderacom | Infiniband TM work queue to TCP/IP translation |
US6510151B1 (en) * | 1996-09-19 | 2003-01-21 | Enterasys Networks, Inc. | Packet filtering in connection-based switching networks |
US6535518B1 (en) * | 2000-02-10 | 2003-03-18 | Simpletech Inc. | System for bypassing a server to achieve higher throughput between data network and data storage system |
US6539017B1 (en) * | 1999-06-28 | 2003-03-25 | Cisco Technology, Inc. | Method and apparatus for arranging and adjusting a bundle in an ATM network |
US6542739B1 (en) * | 1995-11-30 | 2003-04-01 | Mobile Satellite Ventures, Lp | Priority and preemption service system for satellite related communication using central controller |
US6556547B1 (en) * | 1998-12-15 | 2003-04-29 | Nortel Networks Limited | Method and apparatus providing for router redundancy of non internet protocols using the virtual router redundancy protocol |
US6563831B1 (en) * | 1997-08-22 | 2003-05-13 | Avici Systems | Router with virtual channel allocation |
US6597691B1 (en) * | 1998-09-01 | 2003-07-22 | Ancor Communications, Inc. | High performance switching |
US6608819B1 (en) * | 1999-01-12 | 2003-08-19 | Mcdata Corporation | Method for scoring queued frames for selective transmission through a switch |
US6614758B2 (en) * | 1998-02-13 | 2003-09-02 | Broadcom Corp | Load balancing in link aggregation and trunking |
US6628610B1 (en) * | 1999-06-28 | 2003-09-30 | Cisco Technology, Inc. | Methods and apparatus for managing a flow of packets using change and reply signals |
US6697379B1 (en) * | 1998-05-18 | 2004-02-24 | Inria Institut National De Recherche En Informatique Et En Automatique | System for transmitting messages to improved stations, and corresponding processing |
US6707800B1 (en) * | 1998-10-01 | 2004-03-16 | Hughes Electronics Corporation | ATM network with central call processor |
US6760775B1 (en) * | 1999-03-05 | 2004-07-06 | At&T Corp. | System, method and apparatus for network service load and reliability management |
US6771673B1 (en) * | 2000-08-31 | 2004-08-03 | Verizon Communications Inc. | Methods and apparatus and data structures for providing access to an edge router of a network |
US6847613B2 (en) * | 2000-03-13 | 2005-01-25 | Hitachi, Ltd. | Method of monitoring quality of communication for each flow |
US6895006B1 (en) * | 1999-10-01 | 2005-05-17 | Juniper Networks, Inc. | Unicast/multicast system |
US6901079B1 (en) * | 2001-04-19 | 2005-05-31 | Cisco Technology, Inc | Providing different quality of services (QOS) to different point-to-point sessions |
US6917614B1 (en) * | 1999-09-17 | 2005-07-12 | Arris International, Inc. | Multi-channel support for virtual private networks in a packet to ATM cell cable system |
US6938169B1 (en) * | 1999-12-10 | 2005-08-30 | Sun Microsystems, Inc. | Channel-specific file system views in a private network using a public-network infrastructure |
US7068645B1 (en) * | 2001-04-02 | 2006-06-27 | Cisco Technology, Inc. | Providing different QOS to layer-3 datagrams when transported on tunnels |
Family Cites Families (101)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2547516A (en) * | 1948-08-13 | 1951-04-03 | Peter Paul Inc | Machine for depositing nuts on candy bars |
US3493347A (en) * | 1967-12-12 | 1970-02-03 | Hazen F Everett | Blood oxygenator |
US4777595A (en) * | 1982-05-07 | 1988-10-11 | Digital Equipment Corporation | Apparatus for transferring blocks of information from one node to a second node in a computer network |
GB8328317D0 (en) * | 1983-10-22 | 1983-11-23 | Gen Electric Co Plc | Communication networks |
US5220320A (en) * | 1988-03-11 | 1993-06-15 | Comsat | Switch matrix including both B switching elements and crossbar switch matrices |
US4845736A (en) * | 1988-04-19 | 1989-07-04 | Pacific Bell | Cross-connect switch and method for providing test access thereto |
US4907253A (en) * | 1988-09-07 | 1990-03-06 | Pacific Bell | Cross-connected switch having means for removing switching modules without interrupting service |
US4953159A (en) * | 1989-01-03 | 1990-08-28 | American Telephone And Telegraph Company | Audiographics conferencing arrangement |
JP2834253B2 (en) * | 1990-02-07 | 1998-12-09 | 株式会社日立製作所 | Packet exchange |
US5410300A (en) * | 1991-09-06 | 1995-04-25 | International Business Machines Corporation | Distributed crossbar switch architecture |
EP0569913B1 (en) * | 1992-05-14 | 1999-12-29 | Alcatel | Connection path selection method for cross-connect communications networks |
US5276681A (en) * | 1992-06-25 | 1994-01-04 | Starlight Networks | Process for fair and prioritized access to limited output buffers in a multi-port switch |
US6151689A (en) | 1992-12-17 | 2000-11-21 | Tandem Computers Incorporated | Detecting and isolating errors occurring in data communication in a multiple processor system |
US6157967A (en) * | 1992-12-17 | 2000-12-05 | Tandem Computer Incorporated | Method of data communication flow control in a data processing system using busy/ready commands |
US5651047A (en) * | 1993-01-25 | 1997-07-22 | Cardiac Mariners, Incorporated | Maneuverable and locateable catheters |
US5434855A (en) * | 1993-07-23 | 1995-07-18 | Digital Equipment Corporation, Patent Law Group | Method and apparatus for selective interleaving in a cell-switched network |
US5478712A (en) * | 1993-11-22 | 1995-12-26 | Eastman Kodak Company | Photographic elements protected against color contamination and dye stain |
GB9408574D0 (en) * | 1994-04-29 | 1994-06-22 | Newbridge Networks Corp | Atm switching system |
US5586121A (en) * | 1995-04-21 | 1996-12-17 | Hybrid Networks, Inc. | Asymmetric hybrid access system and method |
US5727051A (en) * | 1995-07-14 | 1998-03-10 | Telefonaktiebolaget Lm Ericsson (Publ.) | System and method for adaptive routing on a virtual path broadband network |
US5590119A (en) | 1995-08-28 | 1996-12-31 | Mci Communications Corporation | Deterministic selection of an optimal restoration route in a telecommunications network |
BR9606706A (en) * | 1995-10-16 | 1999-04-06 | Unilever Nv | Bispecific or bivalent antibody fragment analog use process to produce the same |
US5805920A (en) * | 1995-11-13 | 1998-09-08 | Tandem Computers Incorporated | Direct bulk data transfers |
US5777989A (en) * | 1995-12-19 | 1998-07-07 | International Business Machines Corporation | TCP/IP host name resolution for machines on several domains |
US6091725A (en) * | 1995-12-29 | 2000-07-18 | Cisco Systems, Inc. | Method for traffic management, traffic prioritization, access control, and packet forwarding in a datagram computer network |
US5689505A (en) | 1996-01-16 | 1997-11-18 | Lucent Technologies Inc. | Buffering of multicast cells in switching networks |
US5689506A (en) * | 1996-01-16 | 1997-11-18 | Lucent Technologies Inc. | Multicast routing in multistage networks |
US6542502B1 (en) * | 1996-01-26 | 2003-04-01 | International Business Machines Corporation | Multicasting using a wormhole routing switching element |
US5724358A (en) * | 1996-02-23 | 1998-03-03 | Zeitnet, Inc. | High speed packet-switched digital switch and method |
US5754791A (en) * | 1996-03-25 | 1998-05-19 | I-Cube, Inc. | Hierarchical address translation system for a network switch |
US6147976A (en) | 1996-06-24 | 2000-11-14 | Cabletron Systems, Inc. | Fast network layer packet filter |
US6304549B1 (en) * | 1996-09-12 | 2001-10-16 | Lucent Technologies Inc. | Virtual path management in hierarchical ATM networks |
US5914938A (en) * | 1996-11-19 | 1999-06-22 | Bay Networks, Inc. | MAC address table search unit |
US5978379A (en) * | 1997-01-23 | 1999-11-02 | Gadzoox Networks, Inc. | Fiber channel learning bridge, learning half bridge, and protocol |
US6151316A (en) | 1997-02-14 | 2000-11-21 | Advanced Micro Devices, Inc. | Apparatus and method for synthesizing management packets for transmission between a network switch and a host controller |
US20030133417A1 (en) * | 1997-03-12 | 2003-07-17 | Sig H. Badt | Method and message therefor of monitoring the spare capacity of a dra network |
US6075796A (en) * | 1997-03-17 | 2000-06-13 | At&T | Methods and apparatus for providing improved quality of packet transmission in applications such as internet telephony |
US6160813A (en) * | 1997-03-21 | 2000-12-12 | Brocade Communications Systems, Inc. | Fibre channel switching system and method |
JP3575225B2 (en) | 1997-05-19 | 2004-10-13 | 株式会社日立製作所 | Packet switch, packet switching network, and packet switching method |
ID24678A (en) * | 1997-06-06 | 2000-07-27 | Salbu Res & Dev Pty Ltd | OPERATION METHOD OF A MULTI STATION NETWORK |
US6034958A (en) * | 1997-07-11 | 2000-03-07 | Telefonaktiebolaget Lm Ericsson | VP/VC lookup function |
US6683850B1 (en) * | 1997-08-29 | 2004-01-27 | Intel Corporation | Method and apparatus for controlling the flow of data between servers |
US6003074A (en) * | 1998-02-24 | 1999-12-14 | Hewlett-Packard Company | Method and apparatus for mapping the physical topology of a subnetwork |
US6247058B1 (en) * | 1998-03-30 | 2001-06-12 | Hewlett-Packard Company | Method and apparatus for processing network packets using time stamps |
US5999531A (en) | 1998-04-17 | 1999-12-07 | Cabletron Systems, Inc. | Method and system for identifying ports and forwarding packets in a multiport switch |
RU2131847C1 (en) * | 1998-04-27 | 1999-06-20 | Открытое акционерное общество "Научно-исследовательский институт пластических масс им.Г.С.Петрова" | Material for adding physiologically essential inorganic elements to water |
US6314501B1 (en) * | 1998-07-23 | 2001-11-06 | Unisys Corporation | Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory |
US6477146B1 (en) * | 1998-08-31 | 2002-11-05 | Fujitsu Network Communications, Inc. | Usage parameter control device for asynchronous transfer mode system |
US6434618B1 (en) * | 1998-11-12 | 2002-08-13 | Lucent Technologies Inc. | Programmable network element for packet-switched computer network |
US6470397B1 (en) * | 1998-11-16 | 2002-10-22 | Qlogic Corporation | Systems and methods for network and I/O device drivers |
US6839762B1 (en) * | 1998-12-31 | 2005-01-04 | U-Systems, Inc. | Ultrasound information processing system and ultrasound information exchange protocol therefor |
US6771642B1 (en) * | 1999-01-08 | 2004-08-03 | Cisco Technology, Inc. | Method and apparatus for scheduling packets in a packet switch |
JP3409726B2 (en) * | 1999-02-26 | 2003-05-26 | 日本電気株式会社 | Transfer destination decision processing device |
JP3465620B2 (en) | 1999-03-17 | 2003-11-10 | 日本電気株式会社 | Virtual private network construction system |
US20020039365A1 (en) * | 1999-03-17 | 2002-04-04 | Broadcom Corporation | Pipelined searches with a cache table |
US6460088B1 (en) | 1999-05-21 | 2002-10-01 | Advanced Micro Devices, Inc. | Method and apparatus for port vector determination at egress |
US6996630B1 (en) * | 1999-06-18 | 2006-02-07 | Mitsubishi Denki Kabushiki Kaisha | Integrated network system |
AU775495B2 (en) | 1999-06-30 | 2004-08-05 | Apptitude Acquisition Corporation | Method and apparatus for monitoring traffic in a network |
US6697359B1 (en) * | 1999-07-02 | 2004-02-24 | Ancor Communications, Inc. | High performance switch fabric element and switch systems |
US6594329B1 (en) * | 1999-11-01 | 2003-07-15 | Intel Corporation | Elastic buffer |
US20020108059A1 (en) * | 2000-03-03 | 2002-08-08 | Canion Rodney S. | Network security accelerator |
KR100359773B1 (en) * | 2000-05-01 | 2002-11-07 | 주식회사 하이닉스반도체 | Method for manufacturing semiconductor device |
US6591310B1 (en) * | 2000-05-11 | 2003-07-08 | Lsi Logic Corporation | Method of responding to I/O request and associated reply descriptor |
US6859867B1 (en) * | 2000-05-31 | 2005-02-22 | Intel Corporation | Translation and protection table and method of using the same to validate access requests |
DE10029472B4 (en) * | 2000-06-15 | 2004-11-11 | Wilhelm Karmann Gmbh | Convertible car |
US6678782B1 (en) * | 2000-06-27 | 2004-01-13 | International Business Machines Corporation | Flow architecture for remote high-speed interface application |
US6944152B1 (en) * | 2000-08-22 | 2005-09-13 | Lsi Logic Corporation | Data storage access through switched fabric |
US6744765B1 (en) * | 2000-08-24 | 2004-06-01 | Sun Microsystems, Inc. | Mechanism for completing messages in memory |
AU2001292558C1 (en) * | 2000-08-25 | 2008-05-22 | Corvis Corporation | Optical transmission systems including optical protection systems, apparatuses, and methods |
US6947433B2 (en) * | 2000-09-21 | 2005-09-20 | Avici Systems, Inc. | System and method for implementing source based and egress based virtual networks in an interconnection network |
US6760306B1 (en) * | 2000-09-27 | 2004-07-06 | Nortel Networks Limited | Method for reserving network resources using a hierarchical/segment tree for starting and ending times of request |
US6888831B1 (en) * | 2000-09-28 | 2005-05-03 | Western Digital Ventures, Inc. | Distributed resource reservation system for establishing a path through a multi-dimensional computer network to support isochronous data |
US6831916B1 (en) * | 2000-09-28 | 2004-12-14 | Balaji Parthasarathy | Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network |
US6775719B1 (en) * | 2000-09-28 | 2004-08-10 | Intel Corporation | Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network |
US6990528B1 (en) * | 2000-10-19 | 2006-01-24 | International Business Machines Corporation | System area network of end-to-end context via reliable datagram domains |
US6594712B1 (en) * | 2000-10-20 | 2003-07-15 | Banderacom, Inc. | Inifiniband channel adapter for performing direct DMA between PCI bus and inifiniband link |
US20020049878A1 (en) * | 2000-10-23 | 2002-04-25 | Giora Biran | Data communications interfaces |
US20020049875A1 (en) * | 2000-10-23 | 2002-04-25 | Biran Giora | Data communications interfaces |
US6611883B1 (en) * | 2000-11-16 | 2003-08-26 | Sun Microsystems, Inc. | Method and apparatus for implementing PCI DMA speculative prefetching in a message passing queue oriented bus system |
US6622193B1 (en) * | 2000-11-16 | 2003-09-16 | Sun Microsystems, Inc. | Method and apparatus for synchronizing interrupts in a message passing queue oriented bus system |
US6704831B1 (en) * | 2000-11-16 | 2004-03-09 | Sun Microsystems, Inc. | Method and apparatus for converting address information between PCI bus protocol and a message-passing queue-oriented bus protocol |
US6744772B1 (en) * | 2000-11-30 | 2004-06-01 | Western Digital Ventures, Inc. | Converting asynchronous packets into isochronous packets for transmission through a multi-dimensional switched fabric network |
US20020073257A1 (en) * | 2000-12-07 | 2002-06-13 | Ibm Corporation | Transferring foreign protocols across a system area network |
US20020071450A1 (en) * | 2000-12-08 | 2002-06-13 | Gasbarro Dominic J. | Host-fabric adapter having bandwidth-optimizing, area-minimal, vertical sliced memory architecture and method of connecting a host system to a channel-based switched fabric in a data network |
US7161906B2 (en) * | 2000-12-15 | 2007-01-09 | Agere Systems Inc. | Three-stage switch fabric with input device features |
US20020167950A1 (en) * | 2001-01-12 | 2002-11-14 | Zarlink Semiconductor V.N. Inc. | Fast data path protocol for network switching |
US6601148B2 (en) * | 2001-03-01 | 2003-07-29 | International Business Machines Corporation | Infiniband memory windows management directly in hardware |
US6578122B2 (en) * | 2001-03-01 | 2003-06-10 | International Business Machines Corporation | Using an access key to protect and point to regions in windows for infiniband |
US7401126B2 (en) * | 2001-03-23 | 2008-07-15 | Neteffect, Inc. | Transaction switch and network interface adapter incorporating same |
US6917987B2 (en) * | 2001-03-26 | 2005-07-12 | Intel Corporation | Methodology and mechanism for remote key validation for NGIO/InfiniBand™ applications |
US6948004B2 (en) * | 2001-03-28 | 2005-09-20 | Intel Corporation | Host-fabric adapter having work queue entry (WQE) ring hardware assist (HWA) mechanism |
US7013353B2 (en) * | 2001-03-30 | 2006-03-14 | Intel Corporation | Host-fabric adapter having an efficient multi-tasking pipelined instruction execution micro-controller subsystem |
US20020154635A1 (en) * | 2001-04-23 | 2002-10-24 | Sun Microsystems, Inc. | System and method for extending private networks onto public infrastructure using supernets |
US7190667B2 (en) * | 2001-04-26 | 2007-03-13 | Intel Corporation | Link level packet flow control mechanism |
EP1391082A4 (en) | 2001-04-27 | 2008-07-23 | Boeing Co | Method and system for network management |
US20030210685A1 (en) * | 2001-04-27 | 2003-11-13 | Foster Michael S. | Method and system for interswitch deadlock avoidance in a communications network |
JP2005502228A (en) | 2001-04-27 | 2005-01-20 | ザ ボーイング カンパニー | Data communication processing method, computing device, and computer-readable medium |
US20020159437A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for network configuration discovery in a network manager |
GB2378047B (en) * | 2001-07-24 | 2006-02-01 | Sunonwealth Electr Mach Ind Co | Pole plate structure for a motor stator |
US20030058875A1 (en) * | 2001-09-24 | 2003-03-27 | International Business Machines Corporation | Infiniband work and completion queue management via head only circular buffers |
US6773857B2 (en) * | 2001-10-09 | 2004-08-10 | Fuji Xerox Co., Ltd. | Electrophotographic photoreceptor, processes for producing the same, process cartridge, and electrophotographic apparatus |
-
2001
- 2001-10-26 US US10/046,640 patent/US20020159437A1/en not_active Abandoned
- 2001-10-26 US US10/066,159 patent/US7042877B2/en active Active
- 2001-10-26 US US10/066,217 patent/US20020159468A1/en not_active Abandoned
- 2001-10-26 US US10/046,333 patent/US20020188754A1/en not_active Abandoned
- 2001-10-26 US US10/068,329 patent/US20020161887A1/en not_active Abandoned
- 2001-10-26 US US10/039,814 patent/US20020161923A1/en not_active Abandoned
- 2001-10-26 US US10/044,164 patent/US20020167902A1/en not_active Abandoned
- 2001-10-26 US US10/039,784 patent/US6993023B2/en active Active
- 2001-10-26 US US10/039,877 patent/US20020159389A1/en not_active Abandoned
- 2001-10-26 US US10/044,182 patent/US20030204618A1/en not_active Abandoned
- 2001-10-26 US US10/039,703 patent/US20020159458A1/en not_active Abandoned
- 2001-10-26 US US10/062,199 patent/US7068666B2/en active Active
- 2001-10-26 US US10/039,404 patent/US6996058B2/en active Active
- 2001-10-26 US US10/039,505 patent/US20030189927A1/en not_active Abandoned
- 2001-10-26 US US10/062,245 patent/US20040004966A1/en not_active Abandoned
- 2001-10-26 US US10/061,564 patent/US20020159456A1/en not_active Abandoned
- 2001-10-26 US US10/066,014 patent/US20020159453A1/en not_active Abandoned
- 2001-10-26 US US10/046,334 patent/US7068667B2/en active Active
-
2002
- 2002-04-19 US US10/126,487 patent/US7164656B2/en active Active
- 2002-04-19 US US10/126,489 patent/US20020184529A1/en not_active Abandoned
Patent Citations (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4777695A (en) * | 1986-12-23 | 1988-10-18 | Nissan Motor Co., Ltd. | Windshield wiper with means for adjusting force with which wiper blade is pressed against windshield |
US4872160A (en) * | 1988-03-31 | 1989-10-03 | American Telephone And Telegraph Company, At&T Bell Laboratories | Integrated packetized voice and data switching system |
US5303233A (en) * | 1990-05-18 | 1994-04-12 | Nec Corporation | Arrangement favorably carrying out a connection by the use of an intermediate conversion parameter between input and output virtual channel identifiers (VCI's) |
US5247516A (en) * | 1991-03-28 | 1993-09-21 | Sprint International Communications Corp. | Configurable composite data frame |
US6215412B1 (en) * | 1991-03-29 | 2001-04-10 | International Business Machines Corporation | All-node switch-an unclocked, unbuffered, asynchronous switching apparatus |
US5680402A (en) * | 1991-03-29 | 1997-10-21 | International Business Machines Corporation | Priority broadcast and multi-cast for unbuffered multi-stage networks |
US5327426A (en) * | 1991-09-27 | 1994-07-05 | Echelon Corporation | Method and apparatus for preventing unnecessary retransmission of messages in a networked messaging system |
US5548639A (en) * | 1991-10-22 | 1996-08-20 | Fujitsu Limited | Distributed control of telecommunication network for setting up an alternative communication path |
US5339318A (en) * | 1991-10-24 | 1994-08-16 | Fujitsu Limited | VPI and VCI assignment system in ATM system |
US5327552A (en) * | 1992-06-22 | 1994-07-05 | Bell Communications Research, Inc. | Method and system for correcting routing errors due to packet deflections |
US5343473A (en) * | 1992-08-07 | 1994-08-30 | International Business Machines Corporation | Method of determining whether to use preempt/resume or alternate protocol for data transmission |
US5432783A (en) * | 1992-10-21 | 1995-07-11 | Bell Communications Research, Inc. | System and method for providing egress policing for broadband virtual private networks |
US5914953A (en) * | 1992-12-17 | 1999-06-22 | Tandem Computers, Inc. | Network message routing using routing table information and supplemental enable information for deadlock prevention |
US5675807A (en) * | 1992-12-17 | 1997-10-07 | Tandem Computers Incorporated | Interrupt message delivery identified by storage location of received interrupt data |
US5675579A (en) * | 1992-12-17 | 1997-10-07 | Tandem Computers Incorporated | Method for verifying responses to messages using a barrier message |
US5964835A (en) * | 1992-12-17 | 1999-10-12 | Tandem Computers Incorporated | Storage access validation to data messages using partial storage address data indexed entries containing permissible address range validation for message source |
US5751955A (en) * | 1992-12-17 | 1998-05-12 | Tandem Computers Incorporated | Method of synchronizing a pair of central processor units for duplex, lock-step operation by copying data into a corresponding locations of another memory |
US5751932A (en) * | 1992-12-17 | 1998-05-12 | Tandem Computers Incorporated | Fail-fast, fail-functional, fault-tolerant multiprocessor system |
US5867501A (en) * | 1992-12-17 | 1999-02-02 | Tandem Computers Incorporated | Encoding for communicating data and commands |
US5790776A (en) * | 1992-12-17 | 1998-08-04 | Tandem Computers Incorporated | Apparatus for detecting divergence between a pair of duplexed, synchronized processor elements |
US5440547A (en) * | 1993-01-07 | 1995-08-08 | Kabushiki Kaisha Toshiba | Data-transfer routing management for packet-oriented digital communication system including ATM networks |
US5412653A (en) * | 1993-10-15 | 1995-05-02 | International Business Machines Corporation | Dynamic switch cascading system |
US5734719A (en) * | 1993-10-15 | 1998-03-31 | International Business Systems, Incorporated | Digital information accessing, delivery and production system |
US6108708A (en) * | 1993-12-27 | 2000-08-22 | Nec Corporation | Connection-oriented network using distributed network resources and predetermined VPIs for fast VC establishment |
US5818842A (en) * | 1994-01-21 | 1998-10-06 | Newbridge Networks Corporation | Transparent interconnector of LANs by an ATM network |
US5790546A (en) * | 1994-01-28 | 1998-08-04 | Cabletron Systems, Inc. | Method of transmitting data packets in a packet switched communications network |
US5790804A (en) * | 1994-04-12 | 1998-08-04 | Mitsubishi Electric Information Technology Center America, Inc. | Computer network interface and network protocol with direct deposit messaging |
US6216200B1 (en) * | 1994-10-14 | 2001-04-10 | Mips Technologies, Inc. | Address queue |
US5805804A (en) * | 1994-11-21 | 1998-09-08 | Oracle Corporation | Method and apparatus for scalable, high bandwidth storage retrieval and transportation of multimedia data on a network |
US5892923A (en) * | 1994-12-28 | 1999-04-06 | Hitachi, Ltd. | Parallel computer system using properties of messages to route them through an interconnect network and to select virtual channel circuits therewithin |
US5550816A (en) * | 1994-12-29 | 1996-08-27 | Storage Technology Corporation | Method and apparatus for virtual switching |
US5943339A (en) * | 1995-03-24 | 1999-08-24 | Northern Telecom Limited | Digital communications system |
US6034956A (en) * | 1995-06-07 | 2000-03-07 | International Business Machines Corporation | Method of simultaneously attempting parallel path connections in a multi-stage interconnection network |
US5774067A (en) * | 1995-06-07 | 1998-06-30 | International Business Machines Corporation | Flash-flooding multi-stage interconnection network with parallel path seeking switching elements |
US6047323A (en) * | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
US6542739B1 (en) * | 1995-11-30 | 2003-04-01 | Mobile Satellite Ventures, Lp | Priority and preemption service system for satellite related communication using central controller |
US6411806B1 (en) * | 1995-11-30 | 2002-06-25 | Mobile Satellite Ventures Lp | Virtual network configuration and management system for satellite communications system |
US6021263A (en) * | 1996-02-16 | 2000-02-01 | Lucent Technologies, Inc. | Management of ATM virtual circuits with resources reservation protocol |
US5892766A (en) * | 1996-02-22 | 1999-04-06 | Fujitsu, Ltd. | Method and apparatus for coordinating access to an output of a routing device in a packet switching network |
US5809025A (en) * | 1996-03-15 | 1998-09-15 | Motorola, Inc. | Virtual path-based static routing |
US5940596A (en) * | 1996-03-25 | 1999-08-17 | I-Cube, Inc. | Clustered address caching system for a network switch |
US6085238A (en) * | 1996-04-23 | 2000-07-04 | Matsushita Electric Works, Ltd. | Virtual LAN system |
US5917820A (en) * | 1996-06-10 | 1999-06-29 | Cisco Technology, Inc. | Efficient packet forwarding arrangement for routing packets in an internetwork |
US6028863A (en) * | 1996-06-10 | 2000-02-22 | Fujitsu Limited | Method and apparatus for negotiating connection identifier |
US5881246A (en) * | 1996-06-12 | 1999-03-09 | Bay Networks, Inc. | System for generating explicit routing advertisements to specify a selected path through a connectionless network to a destination by a specific router |
US5872783A (en) * | 1996-07-24 | 1999-02-16 | Cisco Systems, Inc. | Arrangement for rendering forwarding decisions for packets transferred among network switches |
US6510151B1 (en) * | 1996-09-19 | 2003-01-21 | Enterasys Networks, Inc. | Packet filtering in connection-based switching networks |
US5898830A (en) * | 1996-10-17 | 1999-04-27 | Network Engineering Software | Firewall providing enhanced network security and user transparency |
US6094712A (en) * | 1996-12-04 | 2000-07-25 | Giganet, Inc. | Computer network interface for direct mapping of data transferred between applications on different host computers from virtual addresses to physical memory addresses application data |
US6021495A (en) * | 1996-12-13 | 2000-02-01 | 3Com Corporation | Method and apparatus for authentication process of a star or hub network connection ports by detecting interruption in link beat |
US5953338A (en) * | 1996-12-13 | 1999-09-14 | Northern Telecom Limited | Dynamic control processes and systems for asynchronous transfer mode networks |
US20010010692A1 (en) * | 1996-12-16 | 2001-08-02 | Juniper Networks | Memory organization in a switching device |
US6430626B1 (en) * | 1996-12-30 | 2002-08-06 | Compaq Computer Corporation | Network switch with a multiple bus structure and a bridge interface for transferring network data between different buses |
US6169742B1 (en) * | 1997-02-14 | 2001-01-02 | Advanced Micro Devices, Inc. | Multiport data network switch having direct media access control link to external management |
US6172991B1 (en) * | 1997-02-14 | 2001-01-09 | Nec Corporation | ATM Network with a filtering table for securing communication |
US6396815B1 (en) * | 1997-02-18 | 2002-05-28 | Virata Limited | Proxy-controlled ATM subnetwork |
US6032205A (en) * | 1997-03-06 | 2000-02-29 | Hitachi, Ltd. | Crossbar switch system for always transferring normal messages and selectively transferring broadcast messages from input buffer to output buffer when it has sufficient space respectively |
US6041049A (en) * | 1997-05-06 | 2000-03-21 | International Business Machines Corporation | Method and apparatus for determining a routing table for each node in a distributed nodal system |
US6275491B1 (en) * | 1997-06-03 | 2001-08-14 | Texas Instruments Incorporated | Programmable architecture fast packet switch |
US6195335B1 (en) * | 1997-06-27 | 2001-02-27 | International Business Machines Corporation | Data switch |
US6563831B1 (en) * | 1997-08-22 | 2003-05-13 | Avici Systems | Router with virtual channel allocation |
US6104700A (en) * | 1997-08-29 | 2000-08-15 | Extreme Networks | Policy based quality of service |
US6381244B1 (en) * | 1997-10-20 | 2002-04-30 | Fujitsu Limited | Connectionless communication method |
US6078963A (en) * | 1998-01-16 | 2000-06-20 | At&T Corp. | Router with de-centralized processing using intelligent ports |
US6216173B1 (en) * | 1998-02-03 | 2001-04-10 | Redbox Technologies Limited | Method and apparatus for content processing and routing |
US6278714B1 (en) * | 1998-02-06 | 2001-08-21 | Sun Microsystems, Inc. | Efficient hardware implementation of virtual circuit bunching |
US6614758B2 (en) * | 1998-02-13 | 2003-09-02 | Broadcom Corp | Load balancing in link aggregation and trunking |
US6301252B1 (en) * | 1998-04-16 | 2001-10-09 | Mantra Communications Incorporated | Control and management of ATM networks from server computers |
US6697379B1 (en) * | 1998-05-18 | 2004-02-24 | Inria Institut National De Recherche En Informatique Et En Automatique | System for transmitting messages to improved stations, and corresponding processing |
US6292488B1 (en) * | 1998-05-22 | 2001-09-18 | Compaq Computer Corporation | Method and apparatus for resolving deadlocks in a distributed computer system |
US6597691B1 (en) * | 1998-09-01 | 2003-07-22 | Ancor Communications, Inc. | High performance switching |
US6262976B1 (en) * | 1998-09-17 | 2001-07-17 | Ordered Networks, Inc. | System and method for network flow optimization using traffic classes |
US6707800B1 (en) * | 1998-10-01 | 2004-03-16 | Hughes Electronics Corporation | ATM network with central call processor |
US6219706B1 (en) * | 1998-10-16 | 2001-04-17 | Cisco Technology, Inc. | Access control for networks |
US6292839B1 (en) * | 1998-12-09 | 2001-09-18 | 3Com Corporation | Method and system for reflexive tunneling |
US6556547B1 (en) * | 1998-12-15 | 2003-04-29 | Nortel Networks Limited | Method and apparatus providing for router redundancy of non internet protocols using the virtual router redundancy protocol |
US6608819B1 (en) * | 1999-01-12 | 2003-08-19 | Mcdata Corporation | Method for scoring queued frames for selective transmission through a switch |
US6760775B1 (en) * | 1999-03-05 | 2004-07-06 | At&T Corp. | System, method and apparatus for network service load and reliability management |
US6400730B1 (en) * | 1999-03-10 | 2002-06-04 | Nishan Systems, Inc. | Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network |
US6539017B1 (en) * | 1999-06-28 | 2003-03-25 | Cisco Technology, Inc. | Method and apparatus for arranging and adjusting a bundle in an ATM network |
US6628610B1 (en) * | 1999-06-28 | 2003-09-30 | Cisco Technology, Inc. | Methods and apparatus for managing a flow of packets using change and reply signals |
US6385197B1 (en) * | 1999-07-09 | 2002-05-07 | Allied Telesyn International Corp. | Virtual port trunking method and apparatus |
US20010030968A1 (en) * | 1999-07-14 | 2001-10-18 | Magnus Hallenstal | Combining narrowband applications with broadband transport |
US6914911B2 (en) * | 1999-07-14 | 2005-07-05 | Telefonaktiebolaget Lm Ericsson | Combining narrowband applications with broadband transport |
US6430154B1 (en) * | 1999-08-13 | 2002-08-06 | Fujitsu Network Communications, Inc. | Supporting multiple application traffic types over connection oriented networks |
US6917614B1 (en) * | 1999-09-17 | 2005-07-12 | Arris International, Inc. | Multi-channel support for virtual private networks in a packet to ATM cell cable system |
US6895006B1 (en) * | 1999-10-01 | 2005-05-17 | Juniper Networks, Inc. | Unicast/multicast system |
US6938169B1 (en) * | 1999-12-10 | 2005-08-30 | Sun Microsystems, Inc. | Channel-specific file system views in a private network using a public-network infrastructure |
US20020031131A1 (en) * | 2000-02-02 | 2002-03-14 | Yechiam Yemini | Method and apparatus for the exchange of data between a dynamically addressed network and a foreign network |
US20020028656A1 (en) * | 2000-02-02 | 2002-03-07 | Yechiam Yemini | Method and apparatus for providing forwarding and replication services on a dynamically addressed network |
US20020029287A1 (en) * | 2000-02-02 | 2002-03-07 | Yechiam Yemini | Method and apparatus for dynamically addressing a circuits based network |
US6535518B1 (en) * | 2000-02-10 | 2003-03-18 | Simpletech Inc. | System for bypassing a server to achieve higher throughput between data network and data storage system |
US6847613B2 (en) * | 2000-03-13 | 2005-01-25 | Hitachi, Ltd. | Method of monitoring quality of communication for each flow |
US20020049778A1 (en) * | 2000-03-31 | 2002-04-25 | Bell Peter W. | System and method of information outsourcing |
US6381242B1 (en) * | 2000-08-29 | 2002-04-30 | Netrake Corporation | Content processor |
US6771673B1 (en) * | 2000-08-31 | 2004-08-03 | Verizon Communications Inc. | Methods and apparatus and data structures for providing access to an edge router of a network |
US20030014544A1 (en) * | 2001-02-15 | 2003-01-16 | Banderacom | Infiniband TM work queue to TCP/IP translation |
US7068645B1 (en) * | 2001-04-02 | 2006-06-27 | Cisco Technology, Inc. | Providing different QOS to layer-3 datagrams when transported on tunnels |
US6901079B1 (en) * | 2001-04-19 | 2005-05-31 | Cisco Technology, Inc | Providing different quality of services (QOS) to different point-to-point sessions |
Cited By (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020167902A1 (en) * | 2001-04-27 | 2002-11-14 | Foster Michael S. | Method and system for performing security via virtual addressing in a communications network |
US6996058B2 (en) | 2001-04-27 | 2006-02-07 | The Boeing Company | Method and system for interswitch load balancing in a communications network |
US20020184529A1 (en) * | 2001-04-27 | 2002-12-05 | Foster Michael S. | Communicating data through a network |
US20020159453A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for label table caching in a routing device |
US20020159456A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for multicasting in a routing device |
US20020159468A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for administrative ports in a routing device |
US20020159389A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for connection preemption in a communications network |
US20020159446A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for interswitch load balancing in a communications network |
US20020159452A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for virtual addressing in a communications network |
US20020159458A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for reserved addressing in a communications network |
US20020159451A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for path building in a communications network |
US20020188754A1 (en) * | 2001-04-27 | 2002-12-12 | Foster Michael S. | Method and system for domain addressing in a communications network |
US20030202536A1 (en) * | 2001-04-27 | 2003-10-30 | Foster Michael S. | Integrated analysis of incoming data transmissions |
US20030204618A1 (en) * | 2001-04-27 | 2003-10-30 | Foster Michael S. | Using virtual identifiers to process received data routed through a network |
US7426553B1 (en) * | 2001-08-02 | 2008-09-16 | At&T Intellectual Property I, L.P. | Provisioning data link connection identifiers in a communications network |
US20030112805A1 (en) * | 2001-12-19 | 2003-06-19 | Stanton Kevin B. | Method and apparatus for providing device-to-device connectivity using shared infiniband NIC device |
US20030204580A1 (en) * | 2002-04-25 | 2003-10-30 | Baldwin Duane Mark | Methods and apparatus for management of mixed protocol storage area networks |
US7398326B2 (en) * | 2002-04-25 | 2008-07-08 | International Business Machines Corporation | Methods for management of mixed protocol storage area networks |
US6934876B1 (en) * | 2002-06-14 | 2005-08-23 | James L. Holeman, Sr. | Registration system and method in a communication network |
US20040052525A1 (en) * | 2002-09-13 | 2004-03-18 | Shlomo Ovadia | Method and apparatus of the architecture and operation of control processing unit in wavelength-division-multiplexed photonic burst-switched networks |
US8660427B2 (en) | 2002-09-13 | 2014-02-25 | Intel Corporation | Method and apparatus of the architecture and operation of control processing unit in wavelenght-division-multiplexed photonic burst-switched networks |
US20040085908A1 (en) * | 2002-10-31 | 2004-05-06 | Brocade Communications Systems, Inc. | Method and apparatus for managing locking of resources in a cluster by use of a network fabric |
US20040170165A1 (en) * | 2003-02-28 | 2004-09-02 | Christian Maciocco | Method and system to frame and format optical control and data bursts in WDM-based photonic burst switched networks |
US7428383B2 (en) | 2003-02-28 | 2008-09-23 | Intel Corporation | Architecture, method and system of WDM-based photonic burst switched networks |
US20040170431A1 (en) * | 2003-02-28 | 2004-09-02 | Christian Maciocco | Architecture, method and system of WDM-based photonic burst switched networks |
US7848649B2 (en) | 2003-02-28 | 2010-12-07 | Intel Corporation | Method and system to frame and format optical control and data bursts in WDM-based photonic burst switched networks |
US20040208171A1 (en) * | 2003-04-16 | 2004-10-21 | Shlomo Ovadia | Architecture, method and system of multiple high-speed servers to network in WDM based photonic burst-switched networks |
US7298973B2 (en) | 2003-04-16 | 2007-11-20 | Intel Corporation | Architecture, method and system of multiple high-speed servers to network in WDM based photonic burst-switched networks |
US7266295B2 (en) | 2003-04-17 | 2007-09-04 | Intel Corporation | Modular reconfigurable multi-server system and method for high-speed networking within photonic burst-switched network |
US20040208172A1 (en) * | 2003-04-17 | 2004-10-21 | Shlomo Ovadia | Modular reconfigurable multi-server system and method for high-speed networking within photonic burst-switched network |
US7526202B2 (en) | 2003-05-19 | 2009-04-28 | Intel Corporation | Architecture and method for framing optical control and data bursts within optical transport unit structures in photonic burst-switched networks |
US20040234263A1 (en) * | 2003-05-19 | 2004-11-25 | Shlomo Ovadia | Architecture and method for framing optical control and data bursts within optical transport unit structures in photonic burst-switched networks |
US20040252995A1 (en) * | 2003-06-11 | 2004-12-16 | Shlomo Ovadia | Architecture and method for framing control and data bursts over 10 GBIT Ethernet with and without WAN interface sublayer support |
US7266296B2 (en) * | 2003-06-11 | 2007-09-04 | Intel Corporation | Architecture and method for framing control and data bursts over 10 Gbit Ethernet with and without WAN interface sublayer support |
US7310480B2 (en) | 2003-06-18 | 2007-12-18 | Intel Corporation | Adaptive framework for closed-loop protocols over photonic burst switched networks |
US20040264960A1 (en) * | 2003-06-24 | 2004-12-30 | Christian Maciocco | Generic multi-protocol label switching (GMPLS)-based label space architecture for optical switched networks |
US7272310B2 (en) | 2003-06-24 | 2007-09-18 | Intel Corporation | Generic multi-protocol label switching (GMPLS)-based label space architecture for optical switched networks |
US20050030951A1 (en) * | 2003-08-06 | 2005-02-10 | Christian Maciocco | Reservation protocol signaling extensions for optical switched networks |
US20050068968A1 (en) * | 2003-09-30 | 2005-03-31 | Shlomo Ovadia | Optical-switched (OS) network to OS network routing using extended border gateway protocol |
US20050089327A1 (en) * | 2003-10-22 | 2005-04-28 | Shlomo Ovadia | Dynamic route discovery for optical switched networks |
US7315693B2 (en) | 2003-10-22 | 2008-01-01 | Intel Corporation | Dynamic route discovery for optical switched networks |
US7340169B2 (en) | 2003-11-13 | 2008-03-04 | Intel Corporation | Dynamic route discovery for optical switched networks using peer routing |
US20050105905A1 (en) * | 2003-11-13 | 2005-05-19 | Shlomo Ovadia | Dynamic route discovery for optical switched networks using peer routing |
US7162580B2 (en) * | 2003-12-16 | 2007-01-09 | Hitachi, Ltd. | Remote copy control method |
US20050132156A1 (en) * | 2003-12-16 | 2005-06-16 | Masaaki Hosouchi | Remote copy control method |
US20050141444A1 (en) * | 2003-12-19 | 2005-06-30 | Fujitsu Limited | Communication device management program |
US8180842B2 (en) * | 2003-12-19 | 2012-05-15 | Fujitsu Limited | Communication device management program |
US7734176B2 (en) | 2003-12-22 | 2010-06-08 | Intel Corporation | Hybrid optical burst switching with fixed time slot architecture |
US20050135806A1 (en) * | 2003-12-22 | 2005-06-23 | Manav Mishra | Hybrid optical burst switching with fixed time slot architecture |
US20050175183A1 (en) * | 2004-02-09 | 2005-08-11 | Shlomo Ovadia | Method and architecture for secure transmission of data within optical switched networks |
US20050177749A1 (en) * | 2004-02-09 | 2005-08-11 | Shlomo Ovadia | Method and architecture for security key generation and distribution within optical switched networks |
US7707280B2 (en) | 2004-11-29 | 2010-04-27 | At&T Intellectual Property I, L.P. | Virtual circuit identifications for hybrid point-to-point networks |
US20060268842A1 (en) * | 2005-05-25 | 2006-11-30 | Sharp Kabushiki Kaisha | Receiving apparatus and transmitting apparatus |
US20100023539A1 (en) * | 2008-07-25 | 2010-01-28 | International Business Machines Corporation | Xml/database/xml layer analysis |
US20100020817A1 (en) * | 2008-07-25 | 2010-01-28 | Fujitsu Limited | Transmission path selecting apparatus and method |
US8165999B2 (en) * | 2008-07-25 | 2012-04-24 | International Business Machines Corporation | XML/database/XML layer analysis |
US20110185241A1 (en) * | 2010-01-22 | 2011-07-28 | Robert Erickson | Method and System for Packet Switch Based Logic Replication |
US8397195B2 (en) | 2010-01-22 | 2013-03-12 | Synopsys, Inc. | Method and system for packet switch based logic replication |
US8638792B2 (en) | 2010-01-22 | 2014-01-28 | Synopsys, Inc. | Packet switch based logic replication |
US20110184717A1 (en) * | 2010-01-22 | 2011-07-28 | Robert Erickson | Method and System for Packet Switch Based Logic Replication |
US9052357B2 (en) | 2010-01-22 | 2015-06-09 | Synopsys, Inc. | Packet switch based logic replication |
US8923277B1 (en) * | 2010-12-15 | 2014-12-30 | Juniper Networks, Inc. | Methods and apparatus related to flexible physical interface naming in a distributed switch fabric system |
Also Published As
Publication number | Publication date |
---|---|
US7068666B2 (en) | 2006-06-27 |
US20020159452A1 (en) | 2002-10-31 |
US6993023B2 (en) | 2006-01-31 |
US20020161887A1 (en) | 2002-10-31 |
US20020159453A1 (en) | 2002-10-31 |
US20020159446A1 (en) | 2002-10-31 |
US20020159468A1 (en) | 2002-10-31 |
US20030202535A1 (en) | 2003-10-30 |
US20020159389A1 (en) | 2002-10-31 |
US20020184529A1 (en) | 2002-12-05 |
US20030202536A1 (en) | 2003-10-30 |
US20020159451A1 (en) | 2002-10-31 |
US20030204618A1 (en) | 2003-10-30 |
US20030189927A1 (en) | 2003-10-09 |
US6996058B2 (en) | 2006-02-07 |
US20020159437A1 (en) | 2002-10-31 |
US20020159458A1 (en) | 2002-10-31 |
US20020159456A1 (en) | 2002-10-31 |
US20020181395A1 (en) | 2002-12-05 |
US7042877B2 (en) | 2006-05-09 |
US20020188754A1 (en) | 2002-12-12 |
US7068667B2 (en) | 2006-06-27 |
US7164656B2 (en) | 2007-01-16 |
US20020161923A1 (en) | 2002-10-31 |
US20020167902A1 (en) | 2002-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20040004966A1 (en) | Using virtual identifiers to route transmitted data through a network | |
US11563681B2 (en) | Managing communications using alternative packet addressing | |
US11150963B2 (en) | Remote smart NIC-based service acceleration | |
WO2002088981A1 (en) | Analysis of incoming data transmissions | |
US7257817B2 (en) | Virtual network with adaptive dispatcher | |
US8108454B2 (en) | Address assignment in Fibre Channel over Ethernet environments | |
US7925737B2 (en) | System and method for dynamic configuration of network resources | |
US7899047B2 (en) | Virtual network with adaptive dispatcher | |
CN102263646B (en) | Multicasting within a distributed control plane of a switch | |
US20110185082A1 (en) | Systems and methods for network virtualization | |
US7532620B2 (en) | Routing table synchronization method, network apparatus, and routing table synchronization program | |
US20110035413A1 (en) | Diameter bus communications between processing nodes of a network element | |
US20110110372A1 (en) | Systems and methods to perform hybrid switching and routing functions | |
US20080205376A1 (en) | Redundant router having load sharing functionality | |
US20220166715A1 (en) | Communication system and communication method | |
Cisco | Glosssary | |
EP1719306B1 (en) | Adaptive router architecture | |
US20040111605A1 (en) | Method for authenticating multiple channels within a single fibre channel link | |
WO2002089384A2 (en) | Using virtual identifiers to route data and process data routed through a network | |
WO2002089418A1 (en) | Method and system for network management | |
JP2006352567A (en) | Service provision device and communication control program | |
Whalley et al. | Custom solutions for complex networks | |
KR20010063094A (en) | An integrated destination name and address resolution method and system for shortcut path of next generation internet | |
JP2002026970A (en) | Path control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: BOEING COMPANY, THE, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FOSTER, MICHAEL S.;DORSETT, MICHAEL A.;REEL/FRAME:012582/0623 Effective date: 20011025 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |