Abstract:
A system, method and program storage device for providing wireless connectivity to a user on a communications network including a plurality of users, each user having wireless connection capability and wired connection capability to a network server, including determining if a valid wired address is assigned to a first user; determining if a valid wireless address is assigned to the first user; responsive to the first user having both a valid wired address assigned and a valid wireless address assigned, the first user releasing one of the valid addresses for assignment to a second user. Requests from a user for first or second priority level address assignment are selectively granted by releasing and reassigning third or second priority level address assignments.

Description:
FIELD OF THE INVENTION  
       [0001]     This invention relates to the optimization of assignment of wireless connectivity.  
       BACKGROUND OF THE INVENTION  
       [0002]     Locations that use both wireless and wired intranet and/or Internet connectivity may suffer from wireless IP address capacity issues for those users that are connected to a hard-wire (Ethernet) connection, and also have a wireless network card. In these cases, the wired network card is assigned an IP address, while the wireless card is assigned a different IP address. Those users who use wired connections and are also assigned wireless IP addresses may limit the connectivity of wireless-only users, depending on the total number of wireless IP addresses available.  
         [0003]     In some instances where the total number of potential wireless users exceeds the number of wireless IP addresses, some wireless users cannot obtain IP addresses until a logged user disconnects from the network (that is, the computer hibernates, reboots, and so forth.)  
         [0004]     A solution to this problem is to purchase more wireless routers and assign more wireless IP addresses, but this can be cost and/or personnel intensive. A solution is needed that allows optimization of current wireless connectivity, potentially resulting in reduced wireless IP address capacity needs.  
       SUMMARY OF THE INVENTION  
       [0005]     A system, method and program storage device for providing wireless connectivity to a user on a communications network including a plurality of users, each user having wireless connection capability and optionally wired connection capability to a network server, including determining if a valid wired address is assigned to a first user; determining if a valid wireless address is assigned to the first user; responsive to the first user having both a valid wired address assigned and a valid wireless address assigned, the first user releasing one of the valid addresses for assignment to a second user.  
         [0006]     Other features and advantages of this invention will become apparent from the following detailed description of the presently preferred embodiment of the invention, taken in conjunction with the accompanying drawings. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0007]      FIG. 1  is a system diagram illustrating an exemplary embodiment of the invention.  
         [0008]      FIG. 2  is a flow chart illustrating steps executed by a user computer to facilitate optimization of wireless connectivity.  
         [0009]      FIG. 3  is a flow chart illustrating steps executed by a router to facilitate optimization of wireless connectivity.  
         [0010]      FIG. 4  is a diagrammatic representation of a table, database, or equivalent collection of information used in the process of the invention for optimization of wireless connectivity.  
         [0011]      FIG. 5  is a system diagram illustrating a program storage device for controlling the structure and operation of a computer according to the invention.  
     
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0012]     In accordance with an embodiment of the invention, the presence of a wireless IP address is detected in a user device which has wired connectivity, and the wireless IP address associated with the wired card is released. This action reduces the number of wireless IP addresses needed in a multi-user configuration by exactly the number of users connected to a wired connection.  
         [0013]     Determining or estimating the number of users connected to a wired connection as compared with the total number of users (wired and wireless) dictates the necessary number of wireless IP addresses and allows optimization of wireless network routing hardware. This optimization may result in reduced need for wireless routers.  
         [0014]     It may be possible, for those instances where connection continuity is essential, to “reserve” a wireless IP address on a wired computer. This IP address reservation carries a lower connection priority than that for a wireless-only user, but allows a wired user to disconnect from the network and not lose connectivity during a wireless address assignment delay.  
         [0015]     Referring to  FIG. 1 , user computers  30 ,  32 ,  34  are shown in various stages of connection with network server computer  20  through wireless router  22  and wired router  24 . Computer  20  and routers  22  and  24  in combination comprise and may be referred to hereafter as a network server  20 . The current state of these connections are summarized in the table of  FIG. 4 , as follows. Wired I/O port  36  of user  30  is connected over line  71  to wired I/O port  62  of router  24 . Wireless I/O port  50  has been reserved, as is represented by line  73  to wireless I/O port  38 , to user  30 , but no request  39  for such a wireless connection  73  has been requested by user  30 . Wired I/O port  42  of user  32  is in active connection through wireless I/O port  52  of router  22 , as is represented by line  75 . Wired I/O port  44  of user  34  is in active connection over line  79  with wired I/O port  66   
         [0016]     of router  24 , and responsive to a request  39  of user  34 , wireless port  54  has been reserved to user  34  as is represented by line  77  and port  46 . Wireless port priority levels are assigned to various connection scenarios as follows:  
         [0017]     Priority 1: a wireless connection is active or has been requested by a user which does not have an active wired connection to router  24 . Wireless address  52  assigned to user  32  is an example of a priority level 1 wireless address assignment.  
         [0018]     Priority 2: a wireless connection is requested by a user which holds an active wired connection to router  24 . Such a connection may be requested by a user in anticipation of terminating the wired connection and hoping to go wireless without losing connectivity to computer  20 . Wireless address  54  assigned to user  34  is an example of a priority level 2 wireless address assignment.  
         [0019]     Priority 3: a wireless connection is reserved to a user which holds an active wired connection to router  24  and has no pending request for a wireless connection. Wireless address  50  reserved or assigned to user  30  is an example of a priority level 3 wireless assignment.  
         [0020]     In this embodiment, wireless router  22  maintains connections queue  56  and connections table  58 , and wired router  24  maintains connections table  60 . Tables  58  and  60  are represented by table  59  of  FIG. 4 , with table  58  including columns: user  31 , wireless port  33 , wireless port priority  35 , and pending requests  39 , and table  60  provides wired port  37  for users  31 . Connections queue  56  provides a record of level 1 requests which have been received but not granted because there were, at the time of the request, no wireless port priority level 2 or 3 ports available for assignment.  
         [0021]     Routers  22  and  24  may be combined in a single router if such accommodates both wired and wireless connections.  
         [0022]     Referring to  FIG. 2 , a user computer  80  with at least one wireless connection capability (such as port  38  of user  30 ) and at least one wired connection capability (such as port  36  of user  30 ) executes the following process. In step  82 , user  80  determines if a valid wired address is assigned to it. If so, and in step  84  it determines that it also has an active wireless connection, in step  90  user  80  releases its wired connection. If user  80  does not have a wired address assigned to it, in step  88  it determines if it has a wireless address. If so, processing ends at step  96 , but if not, user  80  may, if it desires connectivity, request a priority level 1 wireless address assignment. In the event that user  80  has a wired address assigned and no wireless address assigned, user  80  may determine in step  86  that it intends to go to wireless operation and in step  92  request a priority level 2 wireless address in order to maintain connectivity to computer  20  when it drops its wired connection without experiencing an address assignment delay while wireless connectivity is established.  
         [0023]     In this manner, user  80  on its own initiative operates to relinquish wireless addresses, making them available for assignment to other users.  
         [0024]     Referring to  FIG. 3 , wireless router  22  assigns wireless IP addresses according to the following process. In steps  100  and  110 , router  22  awaits a connection request from a user.  
         [0025]     In step  100 , a priority level 1 connection request is received from a user which has no wired connection and desires to establish a wireless connection. Router  22  searches table  59  for a lowest priority level  35  wireless connection with which to satisfy request  100 . In step  102 , it determines if any priority level 3 wireless connections have been reserved. If one is found, in step  104  that priority level 3 connection reservation is released and the address assigned to this user. If no reserved priority level 3 wireless connection is found in table  59 , in step  106  the table is searched for a wireless connection of priority level 2. If such is found, that connection is released and reassigned to this user as a priority 1 connection. If no level 2 connection is found, request  100  cannot be satisfied without taking a priority level 1 assignment. That is not generally done, and optionally in step  114  request  100  may be queued in connection queue  56 . That queue may be periodically checked on a FIFO or LIFO or  
         [0026]     some other basis as new priority level 2 or 3 connections are detected by router  22  or computer  20 .  
         [0027]     Responsive to a priority level 2 connection request  110 , in step  112  router  22  determines if any priority level 3 wireless connections have been reserved. If one is found, in step  104  that priority level 3 connection reservation is released and the address assigned to this user. If not, request  110  may be queued in step  114  as previously described. Processing ends in step  116 , which may include further processing to manage queue  56  as is described with respect to step  114 .  
         [0028]     In this manner, router  22  operates to grant or reserve wireless addressability or connectivity to requests from users by releasing and reassigning lowest available priority level connections.  
         [0029]     Typically, some number (say, 256) of wired addresses and a separate number of wireless addresses are reserved by routers that have both wired and wireless capabilities. In this case, typically, wired connections cannot be released to provide wreless connectivity. In the case of static wired IP addresses, there is no benefit in releasing a wired  
         [0030]     connection. However, in the case where wired IP addresses are assigned dynamically, a method for applying a similar test/optimization on the wired connection side may be executed where there is a shortage of wired connections.  
         [0031]     While three levels of priority have been described, each of these levels may be further subdivided on additional considerations such as user ID or type. In general, requests for a higher priority level wireless or wired connection are satisfied by releasing and reassigning the lowest priority level connection available.  
         [0032]     It is an advantage of the invention that there is provided a system and method for optimization of wireless connectivity.  
         [0033]     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. Referring to  FIG. 5 , 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 solid or fluid transmission medium  
         [0034]      17 , magnetic or optical wire, tape or disc  16 , or the like, for storing signals readable by a machine, for controlling the operation of a computer  18  according to the method of the invention and/or to structure its components in accordance with the system of the invention.  
         [0035]     Further, each step of the method may be executed on any general computer  18 , such as IBM Systems designated as zSeries, iSeries, xSeries, and pSeries, 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++, Java, PI/1, Fortran or the like. And still further, each said 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.  
         [0036]     Accordingly, the scope of protection of this invention is limited only by the following claims and their equivalents.