Abstract:
A method is provided for distributing limited resources. The method comprising the following steps. A plurality of limited resources about to expire on a given day is determined. The plurality of limited resources is made available simultaneously. Resource requests from a plurality of clients for a registration period are allowed starting at a predetermined time. The resource requests are processed after the registration period by correlating the limited resources with the received resource requests.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of earlier application Ser. No. 13/541,993 filed Jul. 5, 2012 which is a continuation of earlier application Ser. No. 11/532,061 filed Sep. 14, 2006 now U.S. Pat. No. 8,234,379, granted on Jul. 31, 2012. The disclosure of which is hereby incorporated by reference in it&#39;s entirety. 
         [0002]    The present invention relates generally to the distribution of limited resources, and specifically to a server and method for facilitating the distribution of such resources. 
     
    
     BACKGROUND 
       [0003]    A domain name is a name that can be entered into a computing device in order to access a web-site, for example. The domain name is looked up in a global Domain Name System (DNS) which informs the computing device of the Internet Protocol (IP) address for that domain name. The computing device can then access the web-site by contacting a server at the received IP address. 
         [0004]    Although assigned to a “domain holder” or “registrant”, domain names are controlled by domain name registries. Typically registration of a domain name is described as follows. Each registry is assigned one or more top-level domains, such as .com, .org, and the like. Most domain registries implement a registry-registrar model for registering the domain names. In this model, the registry only has to manage its relationship with the registrars. In turn, each registrar maintains its relationship with the registrants. 
         [0005]    The registrant purchases a domain name from the registrar. The registrar registers the purchase with the registry. The registry updates the DNS to reflect the IP address of the registrant for the purchased domain name. In order to maintain rights to use the domain names, the registrant pays an renewal fee before an annual expiration date. 
         [0006]    If the registrant does not renew the domain name by the expiration date, the domain name becomes expired. A grace period is often provided by the registrar before sending a delete request to the registry. 
         [0007]    After the grace period, the registrar requests deletion of the domain name from the registry. Upon request of the deletion, the domain name enters a redemption grace period. The redemption grace period, typically 30 days, allows the registrar (and registrant) to restore the domain name from a pending deletion status and further allows them to renew the domain name. However, during this period all Internet services associated the domain name are disabled. 
         [0008]    After the redemption grace period, the domain name becomes locked and enters a redemption hold period. The redemption hold period typically lasts for five days. On the last day, the domain name is officially dropped from the registry database and becomes available for registration on a “first-come, first-served” basis. 
         [0009]    Due to the proliferation of the Internet, domain names can be extremely valuable marketing tools. Specifically, domain names that are intuitive can be very useful for a person or company wishing to make information available to the general public. This is a concept that is well known in the art and has led to practices such as domain name speculation. 
         [0010]    Accordingly, when a previously used, but desirable domain name becomes available, registrants and, more typically, registrars that are involved in domain name speculation have a great incentive to apply a heavy load on the corresponding registry. Specifically, since domain names are awarded on a first-come, first-served basis, a speculator with the fastest access to the registry, or most number of connections that access the registry, stands the best chance of being the first to register a previously used domain name. 
         [0011]    It is desirable for registries to provide relatively equivalent or equal access to previously used domain names that does not favour either large or incumbent registrars in the industry. However, using the first-come, first served model described above rewards registrars with the most powerful equipment or the most number of connections into the registry via multiple proxy registrars. Accordingly, this has resulted in an escalating “arms” race, with competing registrars applying constantly increasing loads against the registry, thereby threatening the ongoing performance and stability of the registry. 
         [0012]    For example, the load generated on the registry when registrars attempt to acquire a previously used domain name via the current process is many times greater than that generated during regular registry operations. Therefore, the registry has to be maintained to accommodate a peak bandwidth that is significantly greater than it would typically require for normal operation. Continuing to increase resources at the registry to address this small percentage of competing registrars is an inadequate solution as it provides a continuously escalating additional cost to the registry. 
         [0013]    Further, the current process limits fair and equivalent access to the list of previously used domain names being deleted by the registry on a daily basis, as smaller registrars are less likely to have the resources to compete with larger registrars. 
         [0014]    Accordingly, it is an object of the present invention to provide a mechanism for acquiring previously used domain names that obviates or mitigates at least some of the problems described above. 
       SUMMARY 
       [0015]    In accordance with an aspect of the present invention there is provide a method for distributing limited resources, the method comprising the steps of: determining a plurality of limited resources about to expire on a given day; making the plurality of limited resources available simultaneously; allowing resource requests from a plurality of clients for a registration period starting at a predetermined time; and processing the resource requests after the registration period by correlating the limited resources with the received resource requests. 
         [0016]    In accordance with a further aspect of the present invention there is provide a system for distributing limited resources, the system comprising: a main server configured to provide standard application server functionality; a drop zone server configured to receive resource requests for the limited resource; and a drop zone control module configured determine when the limited resource expires from the main server, parse the drop zone server for corresponding resource requests, and distribute the limited resource accordingly. 
         [0017]    In accordance with a further aspect of the present invention there is provided a computer readable medium comprising instructions which, when executing by a computer, cause the computer to implement the steps of: determining a plurality of limited resources about to expire on a given day; making the plurality of limited resources available simultaneously; allowing resource requests from a plurality of clients for a registration period starting at a predetermined time; and processing the resource requests after the registration period by correlating the limited resources with the received resource requests. 
         [0018]    In the system described above, the drop zone server may further be configured to make a plurality of limited resources available simultaneously. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0019]    Embodiments of the present invention will now be described by way of example only with reference to the following drawings in which: 
           [0020]      FIG. 1  is block diagram of a drop zone infrastructure; 
           [0021]      FIG. 2  is a flow chart illustrating a registration process for previous used domain names that become available; 
           [0022]      FIG. 3  is a flow chart illustrating the registration request process of  FIG. 2  in greater detail; and 
           [0023]      FIG. 4  is a flow chart illustrating the registration fulfillment process of  FIG. 2  in greater detail. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0024]    For convenience, like numerals in the description refer to like structures in the drawings. Referring to  FIG. 1 , a drop zone infrastructure is illustrated generally by numeral  100 . The drop zone infrastructure  100  includes one or more registrars  102 , one or more drop zone servers  104 , one or more main registry servers  106 , and a drop zone control module  108 . 
         [0025]    The registrars  102  are in communication with both the drop zone server  104  and the main registry server  106  via a communication network  110 . As will be appreciated, the communication network  110  may be a wide-area network (WAN), such as the Internet, or a local-area network (LAN). 
         [0026]    The drop zone server  104  is in communication with the drop zone control module  108 , which is in communication with the main registry servers  106 . Although the drop zone control module  108  is illustrated as a separate device, it will be appreciated that it can be incorporated as part of either the drop zone server  104  or the main registry server  106 . Further, the registrars  102  have a corresponding account set up with either the drop zone server  104  or main registry server  106 , or both, to facilitate payment of services. Different configurations of the drop zone infrastructure  100  will become apparent to a person of ordinary skill in the art. 
         [0027]    Effectively, the drop zone server  104  provides a limited registry system. Accordingly, the drop zone server supports a limited number of commands. In the present embodiment, the drop zone server  104  supports three primary commands: Login; Domain Create; and Extensible Provisioning Protocol (EPP) Hello. EPP provides a standard Internet domain name registration protocol for use between the registrars  102  and the main registry server  106 . EPP is well known in the art and need not be described in detail. The Login command is used by the registrars  102  to access the drop zone server  104 . Domain Create is used to request a domain name. EPP Hello is used to verify connectivity by the registrars  102  to the drop zone servers  104 . 
         [0028]    The drop zone control module  108  controls the distribution of requested domain names in accordance with available domain names and registration requests submitted to the drop zone servers  104 , as will be described. Accordingly, it will be appreciated that the main registry servers  106  can be used primarily for tasks such as maintaining the DNS registry and servicing DNS resolution queries. Connectivity to the drop zone server  104  can be highly limited and equivalent between registrars. For example, each registrar  102  can be limited to three connections to the drop zone server  104 . This affords scalability and the ability to maintain separate connectivity policies for the drop zone server  104  and the main registry server  106 . 
         [0029]    Further, it can be seen that the drop zone server  104  provides a segregated system from the main registry server  106  for managing a synchronized full release of previously used domain names that have reached the end of their redemption hold periods. Registrars  102  will be less likely and will have less incentive to maintain a high number of connections to the main registry server  106  for catching a domain name when previously used domain names are released, or dropped via the drop zone server  104 . 
         [0030]    Referring to  FIG. 2 , a flow diagram illustrating a process for registering a domain name using the drop zone infrastructure  100  is shown generally by numeral  200 . In step  202  the registrars submit registration requests to the drop zone server  104  for previously used domain names available for registration. In step  204 , the drop zone control module  108  parses the registration requests received by the drop zone server  104  and assigns the previously used domain names accordingly. Both of these steps  202  and  204  are described in greater detail with reference to  FIGS. 3 and 4 . 
         [0031]    Referring to  FIG. 3 , a flow diagram illustrates the step  202  of requesting registration of a previously used domain name in greater detail. In step  302 , the registrars  102  connect with the drop zone server  104 . The registrars  102  are initially able to test their connectivity to the drop zone server  104  using the EPP Hello command. However, an attempt to register a previously used domain name at this point, using the Domain Create command, would result in an error. 
         [0032]    In step  304 , a plurality of previously used domain names for which the redemption hold period is expiring that day is made accessible for registration simultaneously to all registrars. In the present embodiment, the term day refers to a calendar day, although it will be appreciated that it can be any predefined time period. Further, in the present embodiment, all previously owned domain names for which the redemption hold period is expiring that day are made accessible. 
         [0033]    In step  306 , at a predefined time that allows the registrars  102  to have established a connection with the drop zone server  104 , a change is made to the status of the drop zone server  104  and it is opened for domain name registrations. Once the drop zone server  104  opens, the registrars  102  can submit registration requests for desired domain names. The registrars  102  may only register for previously used domain names listed for release that day. This information is made available to each of the registrars  102  by a daily published redemption hold period domain reports, provided to all registrars  102 . 
         [0034]    At step  308 , the drop zone server  104  records the received registration requests and maintains them in the order in which they are received. As will be appreciated by a person skilled in the art, this can be achieved in a number of different ways. For example, the registration requests may be maintained in a first-in-first-out (FIFO) queue. Alternatively, the time the registration request is received is stored along with the registration request. In this example, the resolution of the time is sufficient to distinguish between consecutive registration requests. Accordingly, since the order of the registration requests is maintained, the drop zone server  104  accepts duplicate registration requests. 
         [0035]    In the present embodiment, it is the responsibility of the registrar  102  to ensure that the registration request is for an available previously used domain name. If the registrar  102  submits an incorrect registration request, for example, for a domain name not in the published report, the request results in an error and is not processed by the drop zone control module  108 . Optionally, the registrar is advised of the error via an error message from the drop zone server  104 . 
         [0036]    In step  310 , after a predefined time a change is made to the status of the drop zone server  104  and it is closed to domain name registrations for that day. As an example, the drop zone server  104  remains open for two hours. However, it will be appreciated that since all previously owned domain names available for registration are released simultaneously, they will likely be spoken for within several minutes. 
         [0037]    Referring to  FIG. 4 , a flow diagram illustrates the step  204  of assigning a previously owned domain name in greater detail. In step  402 , the drop zone control module  108  determines which previously owned domain names maintained by the main registry server  106  are completing their redemption hold period that day. 
         [0038]    At step  404 , as the redemption hold period expires for each previously used domain name, the drop zone control module  108  determines if a corresponding registration request was submitted to the drop zone server  104 . If no corresponding registration request was received for the previously used domain name, the process continues to step  406 . In step  406 , the previously used domain name is deleted from the main registry server  106  and released in a manner that is standard in the art. 
         [0039]    If a corresponding registration request was received for the previously used domain name, the process continues to step  408 . In step  408 , the drop zone control module  108  retrieves the first received registration request for the previously used domain name. In step  410 , the drop zone control module  108  determines whether or not the registrar  102  that submitted the registration request has sufficient funds in its corresponding account to pay for the registration request. 
         [0040]    If there are sufficient funds in the account, the drop zone control module  108  continues to step  412 . In step  412 , the drop zone control module  108  processes the registration request. That is, old registration information for the previously used domain name is deleted and replaced with new registration information provided by the registrar  102 . The registrar&#39;s corresponding account is charged for the registration. 
         [0041]    If, however, there are insufficient funds in the account, the drop zone control module  108  continues to step  414 . In step  414 , the drop zone control module  108  determines if there are any further registration requests for the previously used domain name. 
         [0042]    If there are no further registration requests for the previously used domain name, the drop zone control module  108  continues to step  406  and the previously used domain is released as described above. If, however, there are further registration requests for the previously used domain name, the drop zone control module  108  continues to step  416 . In step  416 , the drop zone control module  108  retrieves the next sequential registration request from the drop zone server  104 . 
         [0043]    As previously described, in the present embodiment, the sequence in which the duplicate registration requests are received by the drop zone server  104  is maintained. The drop zone control module  108  returns to step  410  to determine whether or not the registrar  102  that submitted the next sequential registration request has sufficient funds in its corresponding account to pay for the registration request. This process is implemented for the previously used domain names listed in the daily redemption hold period report for that particular day. 
         [0044]    The registrar  102  is informed that the registration request was successful via a daily result report. The daily result report lists the results following the completion of the distribution process described above. In the present embodiment, the daily result report is private to each registrar  102 . After this point the registrar  102  can confirm the registration of the previously used domain name with the main registry server  106 . 
         [0045]    Accordingly, it will be appreciated that registration of previously used domain names as described above improves the fairness in which the domain names are distributed. Specifically, since the number of connections per registrar  102  can be significantly limited and a plurality of domain names become available simultaneously, the registrars  102  have to prioritize the previously used domain names for which they will attempt to register. This feature increases the odds that previously used domain names will be distributed more evenly amongst the registrars. 
         [0046]    Although the previous embodiment relates specifically to the distribution of previous used domain names, a person skilled in the art will appreciate that the invention need not be so limited. Rather, the same solution may be implemented to solve similar problems. That is, when there are a number of different bidders competing for limited resources the solution described above may be implemented. 
         [0047]    For example, consider the case where the limited resources are newly released domain names. This may occur with the release of a new top-level domain or with the release of previously withheld domain names for an existing top-level domain. Such a release would result in a similar problem as the release of previously used domain names. Accordingly, the system and method described above could be implemented to facilitate distribution of these domain names. 
         [0048]    As another example, consider the case when the limited resources are auction items rather than previously used domain names. The drop zone server  104  can open to bids on all items for which the auction is expiring during a given time period. Similarly to the embodiment described above, bidders would have to prioritize their bid, rather than being able to focus on each auction item. This, in turn, increases the likelihood that more bidders will be successful in at least one bid. 
         [0049]    Although the invention has been described with reference to certain specific embodiments, various modifications thereof will be apparent to those skilled in the art without departing from the scope of the invention as defined by the appended claims.