1. Field of the Invention
The present invention generally relates to computer networks and, more particularly, to monitoring network connectivity between a home network device and a network.
2. Description of the Related Art
Network devices for the home or small office/home office (SOHO) environment (hereinafter referred to as “home network devices”) typically monitor the physical connection to devices with which they communicate. That is, a home network device monitors the cables, connectors, modem circuitry, and the like that form a physical circuit, as well as the transmission protocol used to physically transmit signals over the physical circuit. The physical circuit and the transmission protocol used to transmit signals over the physical circuit are referred to herein as a “physical data link” or “data link”. For example, a router for the SOHO environment may include a light-emitting diode (LED) to verify the integrity of twisted pair cable (e.g., category 5 cable) connection between the router and a modem, and the functionality of the transmission protocol (e.g., 10Base-T or 100Base-T) used to transmit signals over the twisted pair cable. Likewise, a modem for the SOHO environment may include an LED to verify the integrity of the twisted pair cable or coaxial cable connection between the modem and a service provider, and the functionality of the digital subscriber line (DSL) or Data Over Cable Service Interface Specification (DOCSIS) transmission protocol.
The LEDs that indicate physical connectivity status may be misleading to the typical user of a home network device. For example, the LED on a router that monitors physical connectivity status is typically identified with the label WAN, which stands for wide area network. The user may mistakenly believe the WAN LED on the router indicates the status of an Internet connection or a connection to the wide area network of an Internet Service Provider (ISP) (hereinafter referred to as a “network connection”). A network connection is typically implemented using a transmission control protocol/internet protocol (TCP/IP) that is encapsulated by the transmission protocol of the physical data link. The network connection facilitates communication between the various hosts of the wide area network/Internet and the user's the local area network (e.g., routing, bridging, transmission, and control of data packets). In contrast, the physical transmission protocol is solely concerned with the physical transmission of signals over the transmission medium (e.g., modulation of signals and representation of data bits).
The user may be unaware that the WAN LED is only associated with the physical data link between the router and the modem, and not the network connection to the ISP. This may lead to confusion, especially when the physical data link between the router and the modem is functioning, but the wide area network of the ISP is out-of-service (e.g., the TCP/IP connection is not functioning). Moreover, present home network devices, such as routers, modems, and the like, do not monitor the network connection to networks with which they communicate and do not display such network connectivity to the user. Accordingly, there exists a need in the art for a method and apparatus that monitors network connectivity between a home network device and a network.
A method and apparatus for monitoring network connectivity between a home network device and a network is described. In one embodiment of the invention, status of a network connection on a physical data link between the home network device and the network is determined. For example, the network connection may be implemented using transmission control protocol/internet protocol (TCP/IP). A visual indicator is generated at the home network device indicative of the status of the network connection. For example, the visual indicator may be displayed using one or more light-emitting diodes on the home network device. In another example, the visual indicator may be displayed by configuring one or more web pages stored within the home network device.
So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
To facilitate understanding, identical reference numerals have been used, wherever possible, to designate identical elements that are common to the figures.
The network device 100 comprises an interface 106, a processor 108, support circuitry 110, a memory 112, and display circuitry 114. The processor 108 may be any type of microprocessor or microcontroller known in the art. The support circuitry 110 includes conventional cache, power supplies, clock circuits, data registers, and the like. In addition, the support circuitry 110 may include one or more of routing circuitry, modem circuitry, switching circuitry, bridging circuitry, and the like to facilitate operation of the interface 106. The memory 112 may include one or more of random access memory (RAM), read only memory (ROM), magneto-resistive read/write memory, optical read/write memory, cache memory, magnetic read/write memory, and the like, as well as signal-bearing media. The interface 106 enables communication between the LAN 104 and the WAN 102, and provides data to the processor 108.
In particular, the interface 106 is coupled to the WAN 102 via a data link 116. The data link 116 may comprise any type of wired transmission medium known in the art, such as coaxial cable, optical fiber, or twisted copper pair(s), or may comprise a wireless transmission medium. Data may be physically transmitted across the data link 116 using any type of transmission protocol known in the art, such as a 10Base-T, 100Base-T, 1000Base-T, xDSL, ISDN, DOCSIS, DS1, DS3, or frame relay transmission protocols, as well as various types of wireless transmission protocols known in the art (e.g., cellular or satellite).
The interface 106 is also coupled to the LAN 104 via a local data link 120. The local data link 120 may comprise any type of wired transmission medium known in the art, such as coaxial cable, optical fiber, or twisted pair cable, or may comprise a wireless transmission medium. Data may be physically transmitted across the data link 120 using any type of transmission protocol known in the art, such as a 10Base-T, 100Base-T, or 1000Base-T protocols, as well as various types of wireless transmission protocols known in the art, such as IEEE 802.11a, IEEE 802,11b, or IEEE 802.11g protocols.
local host 122X of the LAN 104 may be a computer, illustratively comprising a central processing unit (CPU) 124, a memory 126, an input/output (I/O) interface 127, support circuits 129, and a display 128. The CPU 124 may be any type of microprocessor known in the art. The memory 126 may include one or more of random access memory (RAM), read only memory (ROM), magneto-resistive read/write memory, optical read/write memory, cache memory, magnetic read/write memory, and the like, as well as signal-bearing media. The I/O interface 127 may be directly coupled to the memory 126 or coupled through the CPU 124. The I/O interface 127 may be coupled to various input devices and output devices, such as a conventional keyboard, mouse, printer, display, and the like. The support circuitry 129 includes conventional cache, power supplies, clock circuits, data registers, and the like. The display 128 may be any type of visual display, such as a video monitor. The local host 122X may be programmed with an operating system, such as OS/2, Java Virtual Machine, Linux, Solaris, Unix, Windows, Windows95, Windows98, Windows NT, and Windows2000, WindowsME, and WindowsXP, among other known platforms. At least a portion of an operating system may be disposed in the memory 128.
The network device 100 monitors network connectivity to networks with which the network device 100 communicates (e.g., WAN 102 or LAN 120). Notably,
At step 204, a visual indicator is generated at the home network device that is indicative of the status of the network connection. For example, the network device 100 may use the display circuitry 114 to display the visual indication of network connectivity status. In one embodiment of the invention, the display circuitry 114 comprises at least one light-emitting diode (LED). In another embodiment of the invention, the network device 100 may configure the visual indicator for display on the display 128 of the local host 122X. For example, the network device 100 may store one or more web pages 130 in the memory 112. The web pages 130 may be used to display and modify various attributes of the network device 100 on the display 128. Thus, the network device 100 may configure one or more of the web pages 130 to display the visual indication of network connectivity status.
Returning to
The router 302 illustratively comprises a WAN interface 312, a LAN interface 314, control circuits 316, LEDs 318, and memory 320. The WAN interface 312 is coupled to the modem 304 via a data link 305. The LAN interface 314 is coupled to one or more computers 306 (e.g., two are shown) via a data link 309. The data link 305 and the data link 309 may be any of the types of data links described above with respect to
At step 404, a determination is made as to whether an echo reply is received over the network connection at the home network device. For example, upon receiving an echo request, the internet gateway 310 or the DNS 308 will send an echo reply over the network connection to the router 302. In one embodiment of the invention, the echo reply is sent using ICMP. If the internet gateway 310 or the DNS 308 is out-of-service, or if the network connection is not functioning for some other reason, no echo reply will be returned to the router 302. If an echo reply is received, the process 400 proceeds to step 406, where a visual indication of in-service network connectivity is generated. For example, the router 302 may configure the LEDs 318 to display an in-service network indication. An exemplary configuration for the LEDs 318 is described below.
Alternatively, or in addition to configuring the LEDs 318, the router 302 may configure one or more of the web pages 332 stored within the memory 320 to display an in-service network indication. A visual indicator on a web page may comprise a graphical attribute, a textual attribute (e.g., “Internet OK” or “Internet out-of-service”), or both. For example, the visual indicator may be a graphical representation of the LEDs 318 on the router 302. In addition, the visual indicator on the web page may be static (e.g., the visual indicator will not change state unless the user clicks on a button the web page), or may be dynamic (e.g., the visual indicator will change state without user intervention). A dynamic visual indicator may be implemented using Javascript, for example. Utilizing the web pages 332 to display the network connectivity status reduces or eliminates the need for a user to physically examine the router 302.
In yet another embodiment, the router 302 may generate the visual indication using other types of electronic formats, besides the web pages 332. For example, the router 302 may deliver the network connectivity status right to the user's computer such that the visual indication appears on the display 330. In one embodiment, network connectivity status may be delivered to the computer 306 via a universal plug-and-play (UPnP) message so that the computer 306. This allows the router 302 to notify the user of network connectivity status without the user examining the LEDs 318 or logging onto the router 302 to view the configuration web pages 332. Those skilled in the art will appreciate that one or more of the above visual display embodiments (LEDs, configuration web pages, UPnP messages, etc) may be employed to display network connectivity status to the user.
If no echo reply is received, the process 400 proceeds to step 412, where a visual indication of out-of-service network connectivity is generated. Similar to the in-service visual indicator, the out-of-service visual indication may be shown using the LEDs 318, one or more of the web pages 332, electronic messages, or any combination thereof. The process 400 may be repeated periodically. For example, the process 400 may be a background task that periodically sends echo requests to the primary host in order to determine network connectivity status (e.g., once every ten seconds). The period of repetition may be selected as desired to reduce the amount of bandwidth used to check network connectivity.
In another embodiment of the invention, if an echo reply is not received at step 404 from the primary host, the process proceeds to optional step 408, where an echo request is sent over the network connection from the home network device to a secondary host on the network. For example, the primary host may be one of the internet gateway 310 and the DNS 308 and the secondary host may be the other of the internet gateway 310 and the DNS 308. Similar to the primary host, the IP address of the secondary host may be obtained via DHCP or user configured data. At optional step 410, a determination is made as to whether an echo reply has been received over the network connection from the secondary host at the home network device. If so, the process proceeds to step 406. Otherwise, the process proceeds to step 412. Checking network connectivity with a secondary host avoids false alarms. Thus, as long as one of the internet gateway 310 and the DNS 308 is in-service, the network connection may be deemed as in-service.
At step 504, a determination is made as to whether data traffic is present on the network connection. If so, the process proceeds to step 506, where a visual indication of in-service network connectivity is generated. The in-service indication of network connectivity may be displayed substantially as described above with respect to the process 400. If there is no data traffic present on the network connection, the process 500 proceeds to step 508, where the process 400 is executed. That is, if there is no data traffic, then the home network device will send an echo request to the primary host and/or the secondary host as described above to determine network connectivity. Monitoring data traffic on the network connection reduces wasted bandwidth by reducing the amount of echo requests to be transmitted to the internet gateway 310, the DNS 308, or both. If data traffic is being communicated over the network connection, then the network connection may be deemed as being in-service.
Returning to
Although the process 300 and the process 400 have been described as being operative to determine network connectivity status on the WAN side of the router 302, those skilled in the art will appreciate that the processes 300 and 400 may be used to determine network connectivity on the LAN side of the router 302 (e.g., monitor network connectivity between the router 302 and one or more of the computers 306). Furthermore, although the processes 300 and 400 have been described with respect to a router-modem system, those skilled in the art will appreciate that the processes 300 and 400 may be used in any type of home network device or system, include a modem, a bridge, a switch, a router, or any combination thereof. For example, if a user employs only a single computer, then the user may dispense with the router and employ only a modem. Thus, the modem may employ the processes and methods described above to display network connectivity status to the user (e.g., the modem may include one or more LEDs to indicate network connectivity, or may store web pages to show network connectivity status). Moreover, although the home network system 300 has been shown as being separate from the computers 306, those skilled in the art will appreciated that the home network system 300 or any portion thereof may be part of a computer (e.g., a peripheral component interface (PCI) card plugged into the backplane of the computer).
The LEDs 318 may display network connectivity status in various configurations. In one embodiment of the invention, the LEDs 318 comprise a dual colored LED capable of displaying red, green, and amber (when both red and green are emitted). The dual colored LED may be labeled with the designation WAN for wide area network and can be used to indicate network connectivity status, as well as physical connectivity status if desired. For example, if the WAN interface 312 is not connected to the modem 304, or if the modem is not operational, the router 302 may cause the dual colored LED to be turned off. If the WAN interface 312 is connected to an active 10Base-T interface on the modem 304, the router 302 may cause the dual colored LED to be amber, which may be made to blink if data traffic is present. If the WAN interface 312 is connected to an active 100Base-T interface on the modem 304, then the router 302 may cause the dual colored LED to be green, which may be made to blink if data traffic is present. If the WAN interface 312 is disabled by the router configuration (e.g., through the web pages 332), then the router 302 may cause the dual colored LED to be red. If a determination has been made that the network connection is out-of-service, then the router 302 may cause the dual colored LED to blink in red. In another embodiment, the LEDs 318 may comprise two dual colored LEDs, one to indicate 10Base-T connectivity with the modem 304, and one to indicate 100Base-T connectivity with the modem 304. In such an embodiment, if the network connection is determined to be out-of-service, then the LEDs can be made to alternately blink, or simultaneously blink at a pre-defined frequency. Those skilled in the art will appreciate that the LEDs 318 may display network connectivity in many other configurations defined by at least one of a color configuration and a frequency of light emission.
The processes and methods described above may be implemented as a computer readable carrier. Program(s) of the computer readable carrier define functions of embodiments and can be contained on a variety of signal-bearing media, which include, but are not limited to: (i) information permanently stored on non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM or DVD-ROM disks readable by a CD-ROM drive or a DVD drive); (ii) alterable information stored on writable storage media (e.g., floppy disks within a diskette drive or hard-disk drive or read/writable CD or read/writable DVD); or (iii) information conveyed to a computer by a communications medium, such as through a computer or telephone network, including wireless communications. The latter embodiment specifically includes information downloaded from the Internet and other networks. Such signal-bearing media, when carrying computer-readable instructions that direct functions of the invention, represent embodiments of the invention.
While the foregoing is directed to illustrative embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.