1. The Field of the Invention
The present invention generally relates to network diagnostic systems and methods and, in particular, network diagnostic systems and methods for collecting data from network nodes.
2. The Relevant Technology
Computer and data communications networks continue to proliferate due to declining costs, increasing performance of computer and networking equipment, and increasing demand for communication bandwidth. Communications networks—including wide area networks (“WANs”), local area networks (“LANs”), metropolitan area networks (“MANs”), and storage area networks (“SANs”)—allow increased productivity and use of distributed computers or stations through the sharing of resources, the transfer of voice and data, and the processing of voice, data and related information at the most efficient locations. Moreover, as organizations have recognized the economic benefits of using communications networks, network applications such as electronic mail, voice and data transfer, host access, and shared and distributed databases are increasingly used as a means to increase user productivity. This increased demand, together with the growing number of distributed computing resources, has resulted in a rapid expansion of the number of installed networks. A variety of network diagnostic systems and methods have been developed to test these networks.
One aspect is a system that may comprise a network diagnostic device that may be configured to instantiate objects of any of a plurality of data collection classes. The plurality of data collection classes may inherit an interface object from an ancestor data collection class. The interface object may be configured to use a first protocol to collect data from nodes of a network. The first plurality of a data collection classes may comprise a first node-specific data collection class configured to use the inherited interface object to collect data from nodes of a first node type; and a second node-specific data collection class configured to use the inherited interface object to collect data from nodes of a second node type.
Another aspect is a system that may comprise a network diagnostic device configured to automatically detect a node type associated with a node of a network. The network diagnostic device may also be configured to instantiate a node-specific data collection object associated with the node type. The node-specific data collection object may be configured to collect data from nodes of the node type.
Yet another aspect is a system that may comprise a network diagnostic device configured to automatically detect a node type associated with a node of a network. The network diagnostic device may also be configured to instantiate a node-specific data collection object associated with the node type. The node-specific data collection object may be configured to collect data from nodes of the node type at intervals less than or equal to fifteen seconds.
For purposes of summarizing, some aspects, advantages and features of a few of the embodiments of the invention have been described in this summary. Some embodiments of the invention may include some or all of these summarized aspects, advantages and features. However, not necessarily all of (or any of) these summarized aspects, advantages or features will be embodied in any particular embodiment of the invention. Thus, none of these summarized aspects, advantages and features are essential. Some of these summarized aspects, advantages and features and other aspects, advantages and features may become more fully apparent from the following detailed description and the appended claims.
These and other objects and features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter.
To further clarify the above and other advantages and features of the present invention, a more particular description of the invention will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. It is appreciated that these drawings depict only illustrated embodiments of the invention and are therefore not to be considered limiting of its scope. The invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
Certain embodiments relate generally to networking systems, including the testing of high speed data transmission systems and components. Embodiments of the invention may be used in other contexts unrelated to testing systems and components and/or in other contexts unrelated to high speed data transmission.
The networking system 10 shown in
The nodes may use a signal (such as, an optical signal) to send and/or receive network messages over at least a portion of the networking system 10. As used herein, a “network message” includes, but is not limited to, a packet; a datagram; a frame; a data frame; a command frame; an ordered set; any unit of data capable of being routed (or otherwise transmitted) through a network; and the like. In one embodiment, a network message may comprise transmission characters used for data purposes, protocol management purposes, code violation errors, and the like. Also, an ordered set may include, a Start of Frame (“SOF”), an End of Frame (“EOF”), an Idle, a Receiver_Ready (“R_RDY”), a Loop Initialization Primitive (“LIP”), an Arbitrate (“ARB”), an Open (“OPN”), and Close (“CLS”)—such as, those used in certain versions of Fibre Channel. Of course, any ordered sets and/or any network messages of any other size, type, configuration and/or protocol may be used.
The nodes may communicate using any suitable network protocol, including, but not limited to, serial protocols, physical layer protocols, channel protocols, packet-switching protocols, circuit-switching protocols, Ethernet, Fast Ethernet, Gigabit Ethernet, 10 Gigabit Ethernet, Fibre Channel, Fibre Channel Arbitrated Loop (“FC-AL”), Small Computer System Interface (“SCSI”), High Performance Parallel Interface (“HIPPI”), Serial Attached SCSI (“SAS”), Serial ATA (“SATA”), SAS/SATA, Serial SCSI Architecture (“SSA”), and the like.
As shown in
In further detail, as shown in
As shown in
Significantly, the data collection classes 24 may be node-specific data collection classes configured to collect data from different types of nodes. The node-specific data collection classes may, for instance, be configured to use the inherited interface object 26 to collect data from nodes of different types of nodes. For example, the data collection classes 24 may include a first node-specific data collection class 24 and a second node-specific data collection class 24. The first node-specific data collection class 24 may be configured to use the inherited interface object 26 to collect data from nodes of a first node type; and the second node-specific data collection class 24 may be configured to use the inherited interface object 26 to collect data from nodes of a second node type.
Thus, in one such instance, the first node-specific data collection class 24 may be a first switch-specific data collection class configured to use the inherited interface object 26 to collect data from switches of a first switch type, and the second node-specific data collection class 25 may be a second switch-specific data collection class configured to use the inherited interface object 26 to collect data from switches of a second switch type. In another such instance, the first node-specific data collection class 24 may be a first switch-specific data collection class configured to use the inherited interface object 26 to collect data from switches of a first switch type, and the second node-specific data collection class 24 may be a first storage-device-specific data collection class configured to use the inherited interface object 26 to collect data from storage devices of a first storage device type. In yet another such instance, the first node-specific data collection class 24 may be a first storage-device-specific data collection class configured to use the inherited interface object 26 to collect data from storage devices of a first storage device type, and the second node-specific data collection class 24 may be a second storage-device-specific data collection class configured to use the inherited interface object 26 to collect data from storage devices of a second storage device type. The data collection classes 24, however, may include any number of node-specific data collection classes 24 that may be configured to use the inherited interface object 26 to collect data from any number and/or combination of different types nodes including, but not limited to, servers or hosts, clients or storage devices, switches (such as physical layer switches or other type of switches), hubs, routers and/or other types of nodes.
As shown in
In some embodiments, a node's World Wide Name (WWN) may be used to identify the manufacturer of the node, which in turn may be used to infer that the node is of a particular type. For example, the network diagnostic device 12 may, at block 34, use a node's WWN to identify the manufacturer of the node and automatically infer that the device is of a particular type, and the network diagnostic device 12 may, at block 36, instantiate a node-specific data collection object 28 associated with the inferred node type. For instance, if the manufacturer is primarily a manufacturer of storage devices, the network diagnostic device 12 may, at block 34, automatically infer that the node is a storage device and may, at block 36, instantiate a node-specific data collection object 28 associated with storage devices generally or, if desired, storage devices manufactured by that particular manufacturer. If this auto-detection is not correct, a user may reconfigure the network diagnostic device 12 to instantiate a node-specific data collection object 28 associated with the correct type of node.
As shown in
In some embodiments, the data collection classes 24 may advantageously be configured to periodically collect data from nodes 14 at relatively small intervals, such as intervals less than or equal to fifteen seconds. In particular, as discussed below, the data collection classes 24 may use the inherited interface object 26 to quickly and easily collect this data such relatively small intervals. Of course, the data collection classes 24 may be configured to collect data from nodes in any other suitable manner and/or at smaller or larger intervals, if desired.
As shown in
As mentioned above, a node 14 may store and/or maintain data, such as performance data 16, configuration data 18 and/or other data relating to node communication. For example, a node 14 may be a switch that may store and/or maintain performance data 16, such as Class3Discards, InvalidCRC, LinkFailures, LossOfSignal, LossOfSynchronization, ReceivedBytes, ReceiveLinkResets, ReceivedFrames, TransmittedBytes, TransmitLinkResets, TransmittedFrames, and/or other performance data 16. Also, for example, a node 14 may be a switch that may store and/or maintain configuration data 18, such as port configuration data (e.g., the port's World Wide Name (WWN); the port's speed; the port's port type, such as NPort, FPort, EPort, etc.); node configuration data for nodes connected to a port (e.g., the connected node's WWN; the connected node's FCID); and/or other configuration data. The node 14, of course, need not be a switch and may store and/or maintain any other suitable data.
The methods and systems described above require no particular component or function. Thus, any described component or function—despite its advantages—is optional. Also, some or all of the described components and functions described above may be used in connection with any number of other suitable components and functions.
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
This application claims the benefit of U.S. Provisional Patent Application Ser. No. 61/024,406 entitled NETWORK DIAGNOSTIC SYSTEMS AND METHODS FOR COLLECTING DATA FROM NETWORK NODES, filed Jan. 29, 2008, and incorporated herein in its entirety by this reference.
Number | Date | Country | |
---|---|---|---|
61024406 | Jan 2008 | US |