A portion of the disclosure of this patent document contains material to which a claim of copyright protection is made. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but reserves all other rights whatsoever.
The present invention pertains in general to routing devices and in particular to aspects of accessing routing devices.
State of the art routing devices for routing traffic on digital data networks typically provide a web or other network accessible user interface and possibly print server, file store or other network services that can be accessed, for example, from a client computing device within the network. Accordingly access to the user interface and/or other optional network services of a routing device is required for viewing and changing configuration data of the routing device as well as to enable optional other network services.
Remote access in state of the art digital data networks requires knowledge of the network address or the network name of the routing device. Network addresses are generally not considered intuitive and are often perceived as difficult to remember. Different routing devices are often configured with different network addresses making it even more difficult to identify the network address of a routing device.
Network access by network name, however, requires network name services for resolving the network name into a network address. Network name service including domain name service (DNS) or the name service provided by the Network Basic Input/Output System (NetBIOS), for example, require additional network components such as name servers and configuration which can further complicate network administration.
Network access to wireless routing devices can be further complicated as wireless devices additionally require further information including at least a network identifier and possibly access codes for establishing a wireless connection.
Therefore there is a need for a solution that aids in the simplification of network administration.
This background information is provided to reveal information believed by the applicant to be of possible relevance to the present invention. No admission is necessarily intended, nor should be construed, that any of the preceding information constitutes prior art against the present invention.
An object of the present invention is to provide a routing device and method of configuration for network name resolution of same. In accordance with an aspect of the present invention, there is provided a routing device configured for operatively interconnecting a first digital data network (DDN) and a second DDN, the routing device comprising: a first interface for operative connection with the first DDN and for transferring data packets associated with the first DDN; a second interface for operative connection with the second DDN and for transferring data packets associated with the second DDN; and a processing system for processing the data packets and for transferring the data packets between the first interface and the second interface based upon address information encoded in the data packets; the processing system configured with a routing device designation for identifying the routing device; the processing system further configured with a network address associated with the first DDN, upon initial activation of the routing device the processing system configured to return the network address in response to a network name resolution request which uses the routing device designation (RDD) which is encoded in one or more first data packets characterized by one or more predetermined network protocols received from the first DDN.
In accordance with another aspect of the present invention there is provided a method for configuring a routing device for operatively interconnecting a first digital data network (DDN) and a second DDN, the routing device comprising a first interface for operative connection with the first DDN and for transferring data packets associated with the first DDN; a second interface for operative connection with the second DDN and for transferring data packets associated with the second DDN; and a processing system for processing the data packets and for transferring the data packets between the first interface and the second interface based upon address information encoded in the data packets; the method comprising: configuring the processing system with a routing device designation (RDD) for identifying the routing device; configuring the processing system to provide, upon initial activation of the routing device, a network address associated with the first DDN in response to a network name resolution request for the RDD that is encoded in one or more first data packets characterized by one or more predetermined network protocols received from the first DDN; whereby the RDD corresponds with the network name of the routing device.
In accordance with another aspect of the present invention, there is provided a computer readable memory having recorded thereon statements and instructions for execution by a computer to carry out the method for resolving a network name of a routing device configured for operatively interconnecting a first digital data network (DDN) and a second DDN, the routing device comprising a first interface for operative connection with the first DDN and for transferring data packets associated with the first DDN; a second interface for operative connection with the second DDN and for transferring data packets associated with the second DDN; and a processing system for processing the data packets and for transferring the data packets between the first interface and the second interface based upon address information encoded in the data packets; the method comprising: configuring the processing system with a routing device designation for identifying the routing device; configuring the processing system to provide, upon activation of the routing device, a network address associated with the first DDN in response to a network name resolution request for the routing device designation that is encoded in one or more first data packets characterized by one or more predetermined network protocols received from the first DDN; whereby the routing device designation corresponds with the network name of the routing device.
As used herein, the term routing device designation “RDD” refers to a name or identifier associated with a routing device. The RDD can be a network name such as a host name, partially or fully qualified domain name, service set identifier (SSID), a predetermined name, random name or other name. The RDD may include one or more letters from one or more alphabets such as alphanumeric characters including characters from the Latin alphabet, or letters from other alphabets, symbols, digits, numbers or a combination thereof.
As used herein, the term “network name” can refer to a name of a device or to a name of a network depending on the context.
As used herein, the term “about” refers to a +/−10% variation from the nominal value. It is to be understood that such a variation is always included in a given value provided herein, whether or not it is specifically referred to.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.
A routing device according to the present invention can route digital network traffic and is configured to provide access to the routing device, for example for configuration, via a remotely accessible user interface without requiring knowledge of a first network address for association of the routing device with a first network and/or a second network address for association of the routing device with a second network by a user.
Each of the DDNs 10 and 20 may be a wireless or wired local area network. The second DDN 20 may correspond with the Internet or a portion thereof and the first DDN 10 may correspond with a local area network (LAN). The routing device 100 may be configured to provide an up-link of a local area network to the Internet. The routing device 100 may be used without connection to the second DDN 20, in which case, the function of the routing device 100 may facilitate communication within the first DDN 10 without providing an operative connection with the second DDN 20. A routing device 100 according to embodiments of the present invention may provide all or a number of functions described herein irrespective of whether the routing device 100 is operatively associated with the second DDN 20.
According to an embodiment of the present invention, the processing system is configured with a routing device designation (RDD) for identifying the routing device. The processing system is also configured to return a network address associated with the routing device in response to a network name resolution request from a computing device wherein the network name resolution request is at least in part based on the routing device designation together with one or more associated network protocols. According to an aspect of the present invention, the above network name resolution may be employed in network devices other than a routing device, for example, a camera, printer, file server, computing device or other device that can be operatively associated with a DDN. In some embodiments of the present invention, a display associated with the routing device, for example a display screen, can be used to identify or display the routing device designation of the routing device, thereby providing a potential user of the routing device with the “name” that can be used by their computing device for configuring a network name resolution request.
A name resolution request may be encoded in one or more first data packets characterized by one or more predetermined network protocols received by the routing device from the first DDN 10. The name resolution request may be performed using a number of network protocols, for example, using domain name resolution (DNS), NetBIOS or other protocol. This mechanism for obtaining a network address of the routing device can be used in a number of ways to enable and/or facilitate access to functions such as configuration data of the routing device, files or other functions provided by the routing device, for example, without requiring knowledge of the specific network address of the routing device. Once the network address of the routing device has been resolved, it may be used by the computing device that originally submitted the network name resolution request to address the routing device.
The processing system may comprise a number of components including hardware such as one or more microprocessors and/or microcontrollers, volatile and/or non-volatile memory, and other components, as well as software and/or firmware for controlling the operation of the processing system and/or routing device. The operation of the routing device includes the control of flow of data packets and may at least in part be controlled based on configuration data stored in the routing device. The configuration data may be viewed and/or changed via one or more user interfaces.
According to an embodiment of the present invention, the processing system is configured to allow changing configuration data of the routing device including the routing device designation by a user via interaction with a user interface. The user interface may provide predetermined functions to facilitate access to the configuration data and/or changes thereof. Depending on the embodiment, the user interface may be configured as a web-based user interface. Furthermore, configuration data may be accessible via configuration text files, for example, from a command-line oriented user interface. The user interface may be accessible from the routing device directly or remotely from a computing device or terminal operatively connected to the routing device via the first DDN and/or the second DDN. The user interface may be accessible via one or more of a number of network protocols including http, https, ssh, telnet, bootp, tftp, ftp or other network programming interface technologies, for example.
According to an embodiment of the present invention, the configuration data includes the routing device designation. The routing device designation may be a name or identifier including one or more letters from one or more alphabets such as alphanumeric characters including characters from the Latin alphabet, or letters from other alphabets, symbols, digits, numbers or combinations thereof. The routing device designation may correspond with the network name or service set identifier (SSID) associated with the routing device, for example.
Depending on the embodiment, the routing device designation is determined in response to predetermined events, by software, firmware or hardware, during manufacture, or it may be otherwise determined. The routing device designation may be stored in the routing device, for example, in non-volatile and/or volatile memory within the processing system or elsewhere within the routing device. A routing device designation and/or network name of the routing device determined during or in effect of predetermined events such as during manufacture, may be saved in special, for example, read-only, otherwise-protected or other memory to prohibit it from being overwritten or to complicate the process of overwriting or changing it. Such memory may be one or more non-volatile memory including read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable PROM, flash, dielectric, magnetic, or uninterruptedly-powered volatile memory, or other memory, for example. Depending on the embodiment, a routing devices designation may be saved in one or more locations in the routing device. For example, a factory default RDD may be stored in a location and/or memory different from an RDD operatively associated with the routing device at a given instance.
Depending on the embodiment, a determination of the RDD may or may not have an effect on one or more network names with which the routing device is associated in one or more DDNs. For example, a network name may refer to a DNS or NetBIOS name of the routing device in a given DDN. Depending on the embodiment, the routing device may be configured to derive parts or all of a network name of the routing device from the routing device designation or leave a network name as is. For this purpose the routing device may be configured with corresponding configuration data that can enable or disable a predetermined correlation between one or more network names of the routing device and the routing device designation or vice versa. Corresponding configuration data may be accessible by a user via a corresponding setting in the user interface. According to an embodiment of the present invention, the routing device may be configured to use equal terms for the RDD and a network name. For example, the routing device may be configured to use and/or copy the RDD into configuration data that corresponds with one or more network names, or read or derive the RDD and one or more of the network names from a common source item in the configuration data.
Depending on the embodiment, the routing device designation is determined arbitrarily by a user, or dynamically, or randomly, or independently of or based on other configuration data of the routing device or other information, and/or in another manner with or without interaction by a user, or by a combination thereof. The routing device designation may be determined by software, firmware or hardware within the routing device or within another device associated with the routing device. According to one embodiment, the routing device designation may be partially or fully derived from a model, make, type, serial number, Media Access Control (MAC) address or other qualifier associated with the routing device or combination thereof. According to one embodiment, the routing device designation may be determined based upon consideration of routing device designations associated with other routing devices. According to an embodiment, routing device designations of other routing devices may be determined by the instant routing device based on received radio signals or be determined otherwise. For example, an SSID of the routing device may be determined so all or part thereof is different from corresponding parts of sensed SSIDs of other devices that may have been discovered upon scanning for wireless networks by the routing device. The routing device designation may be determined based on a back-up routing device designation stored within memory within the routing device in effect of a partial or full reset to default, factory-default or other settings, for example.
Depending on the embodiment, if/when the routing device is configured to determine certain one or more network names associated therewith independent of the RDD, the routing device may be configured to determine these network names in a predetermined manner, upon occurrence of one or more predetermined events, or in likewise but independent and/or different manners as noted herein with respect to the RDD, for example.
Depending on the embodiment, the routing device may be configured to associate one or more network addresses with one or more network names of the routing device in the first and/or second DDN. According to an embodiment of the present invention, one or more network addresses of the routing device for association with the first DDN and/or the second DDN may be determined upon activation of the routing device or occurrence of predetermined events. According to an embodiment, the first network address may be selected from a predetermined set of network addresses and/or formats based on the type of the first DDN, for example an Internet Protocol Version 4 or Version 6 (IPv4 or IPv6) address. The first network address may be selected from a subset of IPv4 or IPv6 network addresses, for example, from a public IP network or a private IP network address space as defined by the Internet Engineering Task Force (IETF) memoranda RFC 1918 and RFC 4193. The first network address may be retained within the routing device 100 during deactivation of the routing device. The first network address may be stored in non-volatile memory within the processing system or elsewhere within the routing device. The routing device 100 may be associated with the first network address upon activation of the routing device.
A routing device in accordance with embodiments of the present invention may be configured so that a network name resolution process based on the RDD of the routing device can be successfully carried out by a computing device that is operatively associated with the routing device without requiring modification of the computing device. A routing device according to embodiments of the present invention may be configured to support network name resolution conforming to IETF guidelines. It is noted that corresponding steps may be performed in sequences as described herein or in other sequences depending on the configuration of the computing device, for example, without affecting the ability of the routing device to process network name resolution requests.
In general, network name resolution may be commenced when a network service request occurs. Network service requests may be invoked in a number of network devices including a computing device, a routing device according to embodiments of the present invention and/or other network devices, for example. Network service requests may be invoked by a user or occur as a consequence of invocations of software applications. A number of network service requests may cause generation of a network name resolution request. Different computing devices may invoke network service requests at different times. Furthermore, different network service requests may be dependent or independent of one another. Example network service requests that may cause a network name resolution request may include a http, https, ssh, telnet, remote execution, or NetBIOS service request or other request. As described herein, a network name resolution request may first be processed within the computing device and escalated if not resolved. If the network name resolution request cannot be successfully resolved within the computing device, the computing device may escalate the request to the routing device, and if required the routing device will escalate the request for processing by one or more adequately configured devices in one or more networks with which the routing device is operatively associated. Adequately configured devices may include one or more domain name servers (DNS) or Windows™ Internet Name Service (WINS) servers, for example.
According to an embodiment of the present invention, a routing device that provides a wireless network interface may be configured with a RDD corresponding to its SSID. This configuration may reduce the amount of information required to be memorized by a user and thereby simplify access to a wireless routing device. According to an embodiment of the present invention, a routing device may be configured with a mnemonic RDD. It is further noted that a routing device may be configured to return its network address in response to a network name resolution request configured using its RDD via one or more of its network interfaces. It is further noted that a routing device according to an embodiment of the present invention, may return the network address with which it is associated via the network interface through which the routing device receives a network name resolution request configured using its RDD.
The invention will now be described with reference to a specific example. It will be understood that the example is intended to describe aspects of some embodiments of the invention and is not intended to limit the invention in any way.
The DHCP server application 411, the DNS server application 413, and the NetBIOS server 415 are configured to obtain predetermined network configuration data including the domain name, DNS and NetBIOS hostname for association of the routing device 410 with the first DDN from database server application 417, for example during initialization or as a consequence of reconfiguration of the routing device 410. As the routing device 410 is configured with a RDD corresponding to its SSID, the DNS and NetBIOS hostname correspond with the SSID. The routing device 410 is configured to obtain the network configuration data by submitting requests 491, 493 and 495 to database server 417, which is configured to return corresponding answers in its replies 492, 494 and 496 to the requests 491, 493 and 495 as illustrated in
The example network name resolution process may involve invocation of a number of steps in a requesting CCD and in the routing device with which the requesting CCD is operatively associated in a networked fashion. It is noted that the number of steps that need to be carried out in order to resolve and complete the network name resolution request at least in part using the RDD of a routing device may be different for different CCDs and/or for different network name resolution requests for the same CCD and/or for different CCDs.
Step 310, shown in
Step 310 may further include obtaining an IP address and other network address configuration data for use by the CCD. The network address configuration data may be obtained by the CCD using a dynamic host configuration protocol (DHCP) from the DHCP server application 411 of the routing device 410 or using static network configuration stored within the CCD. Once the CCD has been configured with the network configuration data, the CCD can formulate adequately formatted headers for IP packets.
The DHCP server application 411 may provide various network configuration data for use by a CCD upon completion of a successful DHCP request including an IP address, gateway address, one or more DNS server addresses, a netmask, DHCP lease time and/or other network configuration data as would be readily understood by a person skilled in the art. Respective addresses may be formatted according to IP Version 4 or IP Version 6 depending on the configuration of the corresponding network.
Step 320 includes generation of a need for a network name resolution on the CCD. This may include entering “NAME” in the address bar of a web or file browser, for example, or invoking various kinds of application software on the CCD with “NAME” as a parameter that is intended to refer to a network name of a network device. The need may cause generating a network name resolution request based on “NAME”. A network name resolution request may seek to resolve the network name “NAME” or a network name based on “NAME” that may further include other elements, which may be added by application software or operating system routines of the CCD as part of the generation of a network name resolution request.
Step 325 includes determination of whether the CCD has a valid network address associated with the network name “NAME” entered in Step 320. This may be performed in a number of ways, for example, by the application software with which the need for the network name resolution was generated, by name resolution software that may be invoked on the CCD as a consequence of Step 320, by the operating system on the CCD, or by other software, firmware, or hardware. If the CCD determines a valid network address for “NAME” internally without submitting a name resolution request to the network, the name resolution process proceeds to submitting a network service request with the determined network address in Step 327. If it doesn't, the name resolution process proceeds to Step 330.
If the name resolution process proceeds to Step 330, the CCD generates and submits a network name resolution request in form of a query for a fully qualified domain name (FQDN) corresponding to “NAME.DHCP-domain” via DNS. In accordance with the network name resolution process 300, the DHCP-domain may have been determined in Step 310, for example, from a response to a DHCP request by the CCD or from other information retained by the CCD.
In Step 335 it is determined if the network name encoded in the DNS request submitted in Step 330 corresponds with the RDD. This step is performed in the routing device and controlled by DNS server application software 413. If the network name resolution request corresponds with the RDD, the routing device 410 will return its network address to the requesting CCD and the CCD will submit a corresponding network service request with the discovered network/IP address in Step 337. If the network name resolution request does not correspond with the RDD, the routing device will not directly answer the request, but forward the network name resolution request in a preconfigured manner according to IETF DNS guidelines, for example. If the network name resolution request of Step 330 is not resolved, the network name resolution process proceeds to Step 340.
In Step 340 a network name resolution request similar to the one of Step 330 is generated by the CCD. Step 340, differs from Step 330 in that the domain portion of the FQDN used in the network name resolution request corresponds with the PC-domain instead of the DHCP-domain. That is the FQDN of Step 340 corresponds with “NAME.PC-domain”. The PC-domain may correspond with a domain with which the CCD is associated through means other than by its interaction with a DHCP server, for example, through association with a Windows™ Internet Name Service (WINS) or other network name service. The actions performed in subsequent Steps 345 and 347 correspond with the actions performed in respective Steps 335 and 337 described herein. If the network name resolution request of Step 340 is not resolved, the network name resolution process proceeds to Step 350.
As shown in Step 350, the CCD may generate another network name resolution request similar to the one of Step 330. Step 350, differs from Step 330 in that, a network name resolution request based on “NAME” (as illustrated), a FQDN (not illustrated) or another domain name (not illustrated) based on “NAME”, for example, is generated by the CCD and submitted via NetBIOS as a NetBIOS Name Service (NBNS) request to the routing device 410.
In Step 355 it is determined if the network name encoded in the NBNS request submitted in Step 350 corresponds with the RDD. This step is performed in the routing device 410 by corresponding NetBIOS server application 415. If the network name of the NBNS request corresponds with the RDD, the routing device will return its network address to the requesting CCD as a NBNS response and the CCD will submit a corresponding network service request with the discovered network/IP address in Step 357. If the NBNS request does not correspond with the RDD, the routing device will not further process the request, but may forward the NBNS request in a preconfigured manner according to NBNS guidelines, for example. If the network name resolution request of Step 350 is not resolved the network name resolution process remains unsuccessful as indicated by 490 in
For illustrative purposes, the routing device 410 is configured with the SSID 510 set to “myhotspot” and the “Link SSID and Hostname” checkbox 520 activated, which may be default settings of the routing device 410 in effect of a factory setting, for example. In addition to
The routing device 410 may further be configured to use the SSID as a NetBIOS name of the routing device (not illustrated). In this case, the routing device 410 may be configured to enable/disable linkage of the NetBIOS name to the SSID similarly to the linkage between the Hostname and the SSID described herein. It is noted that the mapping of the SSID to the NetBIOS name may be employed within limitations, because NetBIOS names are case insensitive whereas SSIDs are case sensitive.
The routing device 410 may further be configured to provide Common Internet File System (CIFS) services. CIFS, which is also referred to as Server Message Block (SMB) may be provided based on the NetBIOS network interface including NetBIOS name resolution. CIFS/SMB services, however, do not require NetBIOS. It is noted that a routing device may be configured to provide CIFS/SMB services but not provide NetBIOS name resolution. The routing device 410 may be configured to provide CIFS/SMB services including file, printer, WINS or other CIFS/SMB services.
The user interface illustrated in
It will be appreciated that, although specific embodiments of the invention have been described herein for purposes of illustration, various modifications may be made without departing from the spirit and scope of the invention. In particular, it is within the scope of the invention to provide a computer program product or program element, or a program storage or memory device such as a transmission medium, magnetic or optical wire, tape or disc, or the like, for storing signals readable by a machine, for controlling the operation of a computer according to the method of the invention and/or to structure its components in accordance with the system of the invention.
Further, each step of the method may be executed on any general computer, such as a personal computer, server or the like and pursuant to one or more, or a part of one or more, program elements, modules or objects generated from any programming language, such as C, C++, Java, Perl, PL/1, or the like. In addition, each step, or a file or object or the like implementing each said step, may be executed by special purpose hardware or a circuit module designed for that purpose.
It is obvious that the foregoing embodiments of the invention are examples and can be varied in many ways. Such present or future variations are not to be regarded as a departure from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art are intended to be included within the scope of the following claims.
This application claims priority to U.S. Provisional Patent Application No. 61/256,196 filed Oct. 29, 2009, the content of which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61256196 | Oct 2009 | US |