Abstract:
A diagnostic unit which detects instances of misconfiguration of a subscriber&#39;s PC is presented. Many problems experienced by PC subscribers attempting to access a network are related to misconfiguration of the subscriber&#39;s PC. The diagnostic unit is able to communicate with the subscriber&#39;s misconfigured PC through Fault Tolerant Protocol stacks. The diagnostic unit emulates services such as log-in, authentication, e-mail and the Internet to the subscriber. The diagnostic unit examines the traffic sent by the subscriber to detect instances of misconfiguration and reports the detected configuration of the subscriber&#39;s PC.

Description:
RELATED APPLICATIONS 
     This is a continuation-in-part of U.S. application Ser. No. 09/322,107 filed May 28, 1999, now U.S. Pat. No. 6,654,914. 
    
    
     BACKGROUND OF THE INVENTION 
     This invention relates generally to networks such as communication and data networks and more particularly to isolating faults in a subscriber&#39;s PC configuration as they attempt to access such networks. Communication and data networks are rapidly growing in use and complexity. For example, the number of persons using the Internet to transmit and receive data grows on a daily basis. Also, the persons already using the Internet are increasing their usage as more web sites are added, and as they become increasingly comfortable using more services available on-line such as buying goods, instead of just accessing information. The addition of sources of information and services, such as the ever-increasing number of web sites, increases the complexity of the Internet. As the use and complexity of networks increases, so does the number of problems experienced by subscribers, especially by subscribers who tend to be non-technical in nature. 
     Network service providers want to reduce the impact of network problems on the subscribers, and the cost of network problems to the service providers. Reducing the impact of problems, such as downtime and inability to access the network or particular information or services in the network, increases the subscribers&#39; desire to use a particular network service provider. Ideally, subscribers never want to have problems with the network. Preferably, they want problems to occur infrequently, and when problems do occur, the subscribers want to have the problem corrected quickly. Reducing the cost to the service provider allows the provider to increase profits and/or services to the subscribers. Costs to the network service providers can be reduced in at least three ways: (1) reducing the cost and time of isolating a problem, (2) reducing the frequency of the problem, and (3) reducing the cost to correct the problem. 
     One current technique for isolating problems with communication networks is to have the subscriber call a troubleshooting help line or call center. The subscriber calls the help line and describes the subscriber&#39;s problem, e.g., what operations the subscriber is unable to perform and what error messages, if any, the subscriber is receiving. A technician analyzes the information provided by the subscriber. The technician can tell the subscriber what the problem is for some problems not requiring tests to diagnose. If diagnosing the problem requires testing, then the technician performs any needed tests on the network. The technician may have to coordinate with other persons, including the subscriber, to perform the needed tests. The technician relays to the subscriber any action that the subscriber needs to take to correct the problem, and/or any information as to what the problem is and how long it will take to correct the problem, either by the subscriber or by the network service provider. Many of the problems a user calls into a call center with are related to the user&#39;s PC settings being misconfigured. Some configuration problems may actually isolate the PC from most test tools. The user may be suffering from effects such as an inability to connect, the PC taking a long time to connect, or the user experiencing unreliable connections. It would be desirable to have a device that can communicate with a user&#39;s misconfigured PC and determine accurate configuration information relating to the misconfigured PC. This information can then be forwarded to the call center to aid the technician in diagnosing the user&#39;s problem. It would be further desirable to have the problem corrected in a minimal amount of time, and with minimal action required by the user. 
     SUMMARY OF THE INVENTION 
     With the foregoing background in mind, it is an object of the present invention to provide an apparatus and method for diagnosing a problem experienced by a subscriber interacting with the network. Further, this is accomplished without requiring an application resident on the subscriber&#39;s PC. When the subscriber experiences a network problem, the subscriber connects to a Diagnostic Unit (DU). Data is transferred between the DU and the subscriber, with the DU utilizing Fault Tolerant Protocol stacks in order to communicate with the misconfigured subscriber. By way of the communications with the subscriber, the DU determines the subscriber&#39;s configuration and provides this information to a network call center application or database. The call center technician utilizes this information as an aid in diagnosis of the user&#39;s problem. In general, in another aspect, the invention provides a computer program including instructions for causing the DU to: accept data from a source in a source protocol inconsistent with a network element protocol of a selected network element; establish a communication link with the source; and send an indication of the data received from the source to a selected network element in a protocol consistent with the network element protocol. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The invention will be better understood by reference to the following more detailed description and accompanying drawings in which: 
         FIG. 1  is a block diagram of a network including the fault analysis system of the present invention; 
         FIG. 2  is a flow chart of a first method of analyzing a configuration of a subscriber; and 
         FIG. 3  is a flow chart of a second method of analyzing a configuration of a subscriber. 
     
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The presently disclosed method and apparatus provides for improved fault isolation and fault reduction. Many of the calls to an Internet Service Provider (ISP) technical support line or call center are from subscribers having trouble accessing a network or accessing a particular site on a network. Many of these problems are caused by the subscriber&#39;s PC being misconfigured. The presently disclosed method and apparatus includes the utilization of a Diagnostic Unit (DU) which can communicate with the subscriber to determine a problem or symptom experienced by the subscriber. Through communications with the subscriber the DU can determine the configuration information of the subscriber. The DU can then forward this information to a third party such as the network service provider for further diagnosis. 
     Referring now to  FIG. 1 , a communications or data network  10  is shown. The network  10  includes a customer premises  12 , a Public Switched Telephone Network (PSTN)  13 , a Point of Presence (POP)  14 , a Diagnostic Unit  15 , an Internet Service Provider (ISP)  20 , a call center  24 , the Internet  26 , an enterprise  28  and a web site  22 . 
     The customer premises  12  include a variety of possibilities for subscribers&#39; terminals to connect to local loop  30 . For example, a personal computer (PC) may connect through an analog modem to a telephone line that connects to a line in the local loop  30 . While the use of a PC at the user&#39;s premises is described, it should be appreciated that devices such as a Palm Pilot, cellular phone or other non-PC devices could also be utilized by the subscriber. The presently disclosed method and apparatus is able to handle such diverse user devices since the present invention does not include an application that must be resident on the user&#39;s PC. A PC may connect through Network Termination Equipment (NTE) to a telephone line in the local loop  30  or through an ISDN connection. A subscriber interface device that includes a PC, a phone, and video capabilities, may connect to a Service Hub (SH), that is an integrated on-demand network, that connects to a line in the local loop  30 . A PC may connect to a Digital Subscriber Line (DSL) modem. The modem and a phone are coupled to a line in the local loop  30  through a multiplexer. The lines in the local loop are the connections, typically pairs of copper wires, between the subscriber, e.g., the subscribers&#39; home or place of business, and the local telephone company. As used herein, the term “subscriber” can indicate the person interacting with the network  10  and/or the device(s), e.g., a PC, that the subscriber uses to interact with the network  10 . The local loop lines are part of the Public Switched Telephone Network (PSTN)  13 . The PSTN  13  provides communication between the premises  12  and the POP  14 . 
     The ISP  20  provides for communication to and from the POP  14  and the Internet  26 . While an ISP  20  is shown, the present invention could also be used in a non-ISP environment, for example a subscriber attempting to dial in to a company network from home. The Internet  24  is the well-known international communication network of networks providing electronic communication links between, e.g., computer systems. The Internet  26  connects to an enterprise  28  or website  22  to form a link between the subscriber and the enterprise  28  or website  22  The link allows information from the subscriber to be passed to the enterprise  28  or website  22 , and information from the enterprise or website to pass to the subscriber. In a working environment the subscriber at the subscriber premises  12  is able to communicate with the desired enterprise  28  or website  22  through the PSTN  13 , the POP  14 , the ISP  20 , and the Internet  26 . 
     The Diagnostic Unit (DU)  15  comprises hardware such as a computer with associated software programs. The DU of the present invention is related to the Internet Diagnostic Unit disclosed in commonly owned patent application Ser. No. 09/322,107, filed May 28, 1999, the disclosure of which is incorporated by reference herein. The software programs include instructions for directing the hardware to perform functions to help capture the configuration information of the subscriber, even if the configuration information is incorrect for the subscriber. The subscriber can communicate with the DU independent of the other portions of the network  10 . The DU further contains software for implementing Fault Tolerant Protocol stacks. The Fault Tolerant Protocol stacks allow the DU to establish communications with the subscriber even if the subscriber is attempting to communicate with the network using an improper protocol or configuration. The DU can communicate with subscribers that are supplying a protocol or protocol element that is inconsistent with a protocol of an element of the network with which the subscriber wants to communicate. 
     The Fault Tolerant Protocol stacks allow communication with an improperly configured subscriber by adapting to the subscriber&#39;s protocol or configuration. Using the Fault Tolerant Protocol stack, a DU adapts to the subscriber&#39;s setup to allow connections to be made and communication to proceed between the subscriber and the DU. Protocols include indications of transaction steps, data format, and data, e.g., an Internet Protocol (IP) address. Thus, for example, during Internet Protocol Control Protocol (IPCP) negotiations the DU can accept an IP address if the subscriber insists on one, or can assign an IP address if the subscriber does not insist on one. The DU also logs information about the subscriber&#39;s behavior and/or setup. By communication with the subscriber and the remainder of the network, the DU  15  can serve as a network access server, at least during diagnosis of network problems. 
     Referring now to  FIG. 2 , a flow chart of a method  100  of the present invention is shown. At a first step  110  the subscriber has determined that help is needed. For example, the subscriber may be attempting to connect to a POP, a web site or other enterprise and continuously failing to access the desired POP, web site or enterprise. 
     At the next step, step  120 , the subscriber calls the ISP help desk or call center. The ISP call center is generally the first place the subscriber will call, regardless of where the fault may lie. Alternately, the subscriber may call the DU directly, skipping forward to step  140 . When the subscriber calls the ISP call center, the subscriber may be placed into the ISP Interactive Voice Response/Automatic Call Distribution (IVR/ACD) system where the subscriber can select the option of connecting to the diagnostic unit without speaking with a technical support person. Alternately, a technician at the help desk talks with the subscriber in an attempt to resolve the problem the subscriber is experiencing. To assist with the isolation and resolution of the problem the technician instructs the subscriber to call a diagnostic number, as shown in step  130 . 
     At step  140 , the subscriber dials the number or otherwise connects to the DU as instructed. The DU answers the subscriber&#39;s call such that appropriate actions can take place to establish communication between the subscriber and the DU. 
     At step  150  the DU obtains configuration information of the subscriber. For example, appropriate modem training and Point to Point Protocol (PPP) negotiating, with corresponding data logging and analysis, occurs until the subscriber and the DU can communicate. If the subscriber cannot access the DU, then the technician can perform a guided diagnostic session to diagnose a fault or faults causing the subscriber&#39;s problem(s). Some faults may not be able to be isolated using this guided session. For example, problems relating to connectivity to a POP may not be diagnosable due to the subscriber&#39;s inability to connect to the DU. If the subscriber was locked to an X2 protocol and the subscriber&#39;s call was answered by a standard NAS that only supported KFlex, V.90, and slower protocols, then the connection between the NAS and the subscriber may fail. The Fault Tolerant Protocol stacks of the DU, however, are able to communicate with a wide variety of protocols in order to negotiate a compatible protocol between the DU and the subscriber. Also, the DU and the subscriber negotiate a Link Control Protocol (LCP). Again, if a standard NAS is used in place of the DU, this negotiation may fail, e.g., if the subscriber&#39;s PPP requires Password Authentication Protocol (PAP) while the NAS may only allow CHAP. The DU, however, will allow many options to accommodate different subscriber requirements. 
     As shown at step  160 , after communication between the subscriber and the DU has been established and the appropriate configuration information obtained, the DU disconnects from the subscriber. At step  170  the configuration information obtained in step  150  is forwarded to the call center, to the subscriber, or to both. The configuration information can be forwarded to the appropriate party by any conventional manner, for example by e-mail. 
     The ISP call center typically includes a trouble ticket system for managing incoming calls from subscribers reporting problems. When a subscriber calls in to the network service provider&#39;s call center the subscriber is entered into the system and assigned a trouble ticket for tracking the subscriber through the call center&#39;s procedure for correcting the subscriber&#39;s problem. After the DU has acquired the subscriber&#39;s configuration information, the DU forwards the configuration information to the call center and preferably directly into the trouble ticket system. Additionally, since the subscriber has already taken steps to help resolve the problem by communicating with the DU, the subscriber&#39;s call may be prioritized in the system, in order to most quickly and efficiently correct the subscriber&#39;s problem. 
     Referring now to  FIG. 3  a similar method  200  is shown but includes providing Internet access for a subscriber experiencing network problems. At step  210  the subscriber has determined that help is needed. For example, the subscriber may be attempting to connect to a web site and continuously failing to access the desired web site. 
     At the next step, step  220 , the subscriber calls the ISP help desk or call center. The subscriber may be placed into the ISP IVR/ACD system where the subscriber can select the option of connecting to the diagnostic unit without speaking with a technical support person. Alternately, the subscriber can elect to speak with an operator at the help desk. The operator talks with the subscriber in an attempt to resolve the problem the subscriber is experiencing. As shown in step  230 , to assist with the isolation and resolution of the problem the operator instructs the subscriber to call the diagnostic number to connect to a Diagnostic Web site. 
     At step  240 , the subscriber dials and connects to the diagnostic web site as instructed. The DU provides access for the subscriber to the diagnostic web site. During this step DU-to-subscriber authentication (“Out”) and DU-to-ISP Net authentication (“In”) occurs. The DU looks out toward the subscriber to authenticate the subscriber&#39;s password for use with the DU. Data are logged and analyzed. Additionally, the DU looks in to the network  10  ( FIG. 1 ) toward the ISP Net  20  to authenticate the password supplied by and captured from the subscriber for use with the ISP Net  22 . IPCP negotiating occurs between the DU and the subscriber, and data are logged and analyzed (e.g., an Internet Protocol address/netmask is assigned). If a standard NAS is used instead of the DU, then this negotiation may fail, e.g., if the subscriber&#39;s IP stack is configured for static IP and the NAS is configured for dynamic allocation. The Fault Tolerant Protocol stacks of the DU, however, can allow for different IP addresses to support (and detect) misconfigured subscribers to help ensure that the negotiation succeeds. 
     At step  250  the subscriber launches the subscriber&#39;s browser, e.g., an Internet browser. The browser, DU, and subscriber enter into a series of transactions to establish communication between the subscriber and the DU. For example, the subscriber&#39;s browser sends a DNS request to the DU, which responds to the browser with a DNS response. While a system with a standard NAS may fail if the subscriber uses an improper DNS server, or the DNS server is down, the Fault Tolerant DU is able to provide DNS service. The browser sends a Hypertext Transfer Protocol (HTTP) request to the DU, which responds to the browser with an HTTP response, forwarding the browser to a canonical URL (e.g., http://www.diag.com/Start/). The browser sends a DNS request for the canonical URL and the DU sends a DNS response for the canonical URL to the browser. The browser establishes a Transmission Control Protocol (TCP) connection with the DU and sends an HTTP request to the DU for the canonical URL. The DU forwards the HTTP request to the subscriber link, which sends an HTTP response of an initial subscriber link page to the DU. Next the DU forwards the HTTP response to the browser; e.g., to display a diagnostic web page on the subscriber&#39;s terminal. The subscriber may also be requested to input information such as name, phone number, etc., for confirmation that the subscriber has been correctly identified. 
     At step  260 , the subscriber is directed to send email; e.g. to “test@st.com”, and wait for a reply. At step  280  the subscriber receives an e-mail from the diagnostic unit. From this exchange of e-mail between the diagnostic unit and the subscriber additional information relating to the POP and SMTP configuration is obtained, as shown at step  290 . At step  300  the subscriber&#39;s configuration is validated. 
     At the next step, step  310 , the subscriber is provided with a session ID and a priority technical support number. The session ID is for tracking purposes within the ISP&#39;s trouble ticket system within the call center. The priority technical support number is used since the subscriber has previously used the diagnostic web site in an attempt to remedy his problem. This allows the subscriber to get immediate priority within the call center for resolution of the problem, either through the IVR/ACD option or by speaking directly with a technician. 
     At step  320  the DU terminates whatever connection it currently has e.g., a POP connection. At step  330 , the results of the session are sent to the call center. Preferably the log becomes part of the trouble ticket which was previously assigned to the subscriber or becomes otherwise available as shown in step  340 . Additionally, comparison of the subscriber configuration may be compared to a known good configuration and any mismatches are identified and included as part of the message sent to the call center. 
     At step  350  the subscriber calls the priority technical support number with the session ID. By this time the session log has been forwarded to the technician. At step  360  the technician, by way of the session log, guides the subscriber to resolve any configuration problems the subscriber has. At step  370 , the problem has been resolved. 
     A further embodiment includes the DU acting as a temporary Internet Service Provider (ISP). In the instance where a subscriber has a pressing need to access the Internet but is otherwise unable to do so, the subscriber can establish a communications link with the DU through the Fault Tolerant Protocol stack of the DU. The DU can then provide access to the Internet for the subscriber. Thus, even though the subscriber is unable to access the Internet through conventional means due to the subscriber&#39;s PC being misconfigured, the subscriber is able to access the network through the DU, in order to address the pressing need of the subscriber. 
     Having described preferred embodiments, numerous alternative embodiments or variations might be made. For example, the DU  15  was described in terms of software instructions for hardware to perform operations. Due to the nature of software, the functionality of the software could be accomplished using hardware, firmware, hard wiring, or combination of these. Also, analysis functions could be performed in the DU  15 . Further, the network  10  shown in  FIG. 1  including the local loop is illustrative only and not limiting. Different networks are within the scope of the invention and the appended claims, including networks such as cable TV networks, that do not include a local loop. For example, a Hybrid Fiber Coax (HFC) system, or a wireless system can replace the local loop in  FIG. 1 . Therefore, the invention should be limited only by the spirit and scope of the appended claims.