CN105593820A - Producer system partitioning among leasing agent systems - Google Patents

Producer system partitioning among leasing agent systems Download PDF

Info

Publication number
CN105593820A
CN105593820A CN201480045484.XA CN201480045484A CN105593820A CN 105593820 A CN105593820 A CN 105593820A CN 201480045484 A CN201480045484 A CN 201480045484A CN 105593820 A CN105593820 A CN 105593820A
Authority
CN
China
Prior art keywords
producer
lease
agency
consumer
virtual machine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201480045484.XA
Other languages
Chinese (zh)
Other versions
CN105593820B (en
Inventor
维莎尔·帕拉科
安东·如布兰·卡纳瓦提
穆库尔·维贾伊·卡尔尼克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/927,929 external-priority patent/US9369518B2/en
Priority claimed from US13/927,933 external-priority patent/US9843631B2/en
Priority claimed from US13/927,892 external-priority patent/US9350801B2/en
Priority claimed from US13/927,995 external-priority patent/US9780993B2/en
Application filed by Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of CN105593820A publication Critical patent/CN105593820A/en
Application granted granted Critical
Publication of CN105593820B publication Critical patent/CN105593820B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Signal Processing (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Educational Administration (AREA)
  • General Engineering & Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Processes and systems are disclosed for partitioning a number of producer systems among a number of leasing agents. A leasing agent can identify a set of available producer systems within an environment and can partition the producer systems among each of the number of leasing agents. The leasing agent can then inform the other leasing agents of the producer systems assigned to each of the leasing agents. As the number of available producer systems change, the partitioning process can be repeated to rebalance the assignment of producer systems among the leasing agents.

Description

Producer's system divides in the middle of lease agency plant
Related application
The application relates to application below: on June 26th, 2013 submits to and title is“MANAGINGCLIENTACCESSTOAPLURALITYOFCOMPUTINGSYSTEMS " U. S. application number 13/927,892; On June 26th, 2013 submit to and markBe entitled as " PRODUCERSYSTEMPARTITIONINGAMONGLEASINGAGENTSYSTEMS " U. S. application number 13/927,929; On June 26th, 2013 submits toAnd title be the U. S. application number of " PRODUCERSYSTEMSELECTION "13/927,933; And on June 26th, 2013 submit to and title be " PRODUCERSYSTEMPARTITIONINGAMONGLEASINGAGENTSYSTEMS "U. S. application number 13/927,995, the open of these applications is all incorporated to this hereby by referenceLiterary composition.
Background
Computational resource and service are usually provided by multiple computing systems. These computational resources and/orService can be consumed by multiple extra computing systems. Under many circumstances, several computing systems willProvide identical resource or the access of service. Each computing system one of resource or service is providedAs be limited in the quantity of the request that can process within a period of time in system.
In order to help to provide service to the computer system of request, some enterprises utilize to follow the tracks of and carryFor service or each system of resource integrated system. By using integrated system,Provide load in system providing in the middle of several computing systems of service or resource eachBalance. Such integrated system is hardware load balancer. Hardware load balancer canHelp in the middle of the computing system that service or resource are provided, to distribute request, thus providing in enterpriseIn the middle of system, make balancing the load.
Accompanying drawing summary
In whole accompanying drawings, reference number is reused for the phase of instruction between marked elementYing Xing. Accompanying drawing is provided to illustrate working of an invention scheme as herein described instead of limits its modelEnclose.
Figure 1A illustrates for providing the service by the trustship of producer's system to Consumer SystemThe embodiment of the network environment of access.
Figure 1B illustrates for providing the service by the trustship of producer's system to Consumer SystemAccess for the network of producer's system health information is provided to one or more leases agencyThe embodiment of environment.
Fig. 2 illustrates for providing the service by the trustship of producer's system to Consumer SystemThe optional view of the embodiment of the network environment of access.
Fig. 3 illustrates for accessing the embodiment in the process of the service at producer's system place.
Fig. 4 illustrates the reality for the process of the lease of producer's system is provided to Consumer SystemExecute scheme.
Fig. 5 illustrates the embodiment of producer's system update process.
Fig. 6 illustrates the embodiment of the partition process for dividing one group of producer's system.
Fig. 7 illustrates the enforcement of producer's system registry process of seeing from the angle of producer's systemScheme.
Fig. 8 illustrates the enforcement side of producer's system registry process of seeing from lease agency's angleCase.
Fig. 9 illustrates that lease agency repartitions the embodiment of process.
Figure 10 illustrates the embodiment of the producer's selection course based on lagging behind.
Figure 11 illustrates for providing the service by the trustship of producer's system to Consumer SystemThe embodiment of the overlay network environment of access.
Figure 12 illustrates for accessing the embodiment in the process of the service at producer's virtual machine place.
Figure 13 illustrates the process in the request of the service at producer's virtual machine place for the treatment of accessEmbodiment.
Figure 14 illustrates the embodiment of the process for leasing the access to producer's virtual machine.
Figure 15 illustrates the condition management table that can be used for being convenient to the communication in overlay network environmentExample.
Describe in detail
Introduce
Although hardware load balancer can be used for helping prevent the access providing service or resourceComputing system (it can be called as producer's system) become overburden from request to serviceOr the request of the computing system of the access of resource (it can be called as Consumer System), hardware is negativeLotus balancer may suffer a lot of shortcomings. For example, hardware load balancer provides single trouble point.In other words,, if hardware load balancer breaks down, relevant enterprise system becomes notAddressable, because service request can no longer be forwarded to producer's system. In addition, hardware is negativeLotus balancer can be expensive opaque hardware component, and it becomes them and makes business systemThe unappealing solution of balancing the load.
To use to disperse to bear to the problem relevant to hardware load balancer solutionLotus balancer. But, although scatteredload balancer will be processed and use hardware load balancerRelevant multiple problems, but scatteredload balancer suboptimum often, because they do not haveThe global view of business system, and each load balancer is generally limited to serve consumer and ShengThe regulation subset of product person system.
The disclosure has been described and has been utilized one group of lease agency to distribute in the middle of multiple producer's systemsFrom the system of service request and the embodiment of process of multiple Consumer Systems. Lease agencyCan monitor and divide access or the lease of the subset of pairing producer system, simultaneously in most of situationUnder know whole multiple producer's system. In addition, for each service request, single consumerSystem can be acted on behalf of and multiple producer's system interaction effect in some cases with several leases. ThisGroup lease agency can be used as amalgam load balancer in certain embodiments, because balancing the loadProcess can be distributed in the middle of one group of system based on distributed hardware, each lease agency carry outThe balancing the load of the subset of producer's system.
Advantageously, in certain embodiments, by divide producer system in the middle of lease agencySystem maintains at least son about the information of each producer's system each lease Agency simultaneouslyCollection, the advantage of hardware load balancer and scatteredload balancer can be implemented and not carry aboveThe shortcoming arriving. In addition, in certain embodiments, by Consumer System not being assigned to spyFixed lease agency and/or producer's system, and be divided into the producer's system separaant systemSystematic comparison, can be along with the mistake of time by the load of the each processing in multiple producer's systemsGo more balance.
In some cases, the system realizing on producer's system and/or Consumer System andApplication is modified that lease agency is worked. For example, as will be described further below,Consumer System can be modified to lease the access to producer's system and maintain producer's systemStatus information.
In some embodiments, system and method for the present disclosure can with one group of computation host itOne or more overlay networks of upper realization use together, and computation host is can trustship consumer virtualMachine and producer's virtual machine. Advantageously, in certain embodiments, system of the present disclosure and sideMethod can realize in the networking infrastructure of consumer's main frame and producer's main frame, thereby makes leaseProcess can occur and not from the interference of consumer and/or producer's virtual machine.
In the time that embodiment of the present disclosure realizes in overlay network, not in the middle of lease agencyDivide producer's system, the producer virtual machine relevant to each overlay network can be lease agencyIn the middle of divided individually. In addition, when to consumer's virtual machine lease producer virtual machine,Lease agency can select to be assigned to identical with consumer's virtual machine (lease to it is requested)Producer's virtual machine of overlay network.
Network environment general introduction
Figure 1A illustrates for providing by producer's system to Consumer System 104A-CThe embodiment of the network environment 100 of the access of the service of 106A-D trustship. Conventionally network,Environment 100 represents individual data center. But in some cases, network environment 100 beSystem can be distributed in the middle of multiple data centers.
Network environment 100 can comprise multiple producer's system 106A-D, and (it can be at this paper odd numberGround is called as " producer's system 106 " or is called as plurally " producer's system 106 ")(it can be called as oddly herein " a Consumer System with Consumer System 104A-C104 " or be plurally called as " Consumer System 104 "). Although four producer's systems are shown106 and three Consumer Systems 104, but network environment 100 can comprise any amount of lifeProduct person system 106 and Consumer System 104. In addition, although network environment 100 above byBe described as representing one or more data centers, but in some embodiments, at least someConsumer System 104 can be independent of data center. For example, in some embodiments, networkEnvironment 100 can be relevant to specific entity or tissue. In such embodiments, at least oneA little Consumer Systems 104 can represent that user or the consumer that can communicate by letter with network environment 100 calculateSystem, but it can be separately or the entity separating instead of relevant to network environment 100 beUnder the control of the remainder of system.
Conventionally, each producer's system 106 can to Consumer System 104 provide service and/Or computer resource. In some cases, producer's system 106 can be each can be to consumerSystem 104 provides identical service and/or resource. In other cases, at least some productionsPerson's system 106 may can provide service and/or the money different from other producer's system 106Source. These services that provided by producer's system 106 and/or resource can comprise any typeService and/or computational resource. For example, service and/or computer resource can comprise: data storageAccess; Visiting from outside (for example access to internet); Internal resource (is for example accessedThe access of the database to the entity management by identical with network environment 100); To the service of editing and recordingAccess; To the access of directory service; To the access of application; For example, to processing service (orderOr request distributed treatment) access; Route service (such as network route service) etc.In order to simplify discussion, except having the term " service " of its ordinary meaning herein, these public affairsThe remainder of opening also will use term " service " refer to service, computer resource or can by or warpAny other resource being provided by producer's system 106.
Producer's system 106 can comprise the computing system of any type. For example producer's system106 can comprise FTP client FTP, server (such as application server, web server etc.),Laptop computer, desktop PC, Database Systems, standby system, catalog system,Two subsystems, storage system etc. Similarly, Consumer System 104 can comprise any typeComputing system. For example Consumer System 104 can comprise FTP client FTP, server, on kneeComputer, desktop PC, tablet PC, mobile phone, game station, television setDeng. In some embodiments, Consumer System 104 also can be used as producer's system, otherwiseAs the same. For example, an addressable producer's system 106 of Consumer System 104 is to obtain data(being for example used as producer's system of Database Systems or storage system). Identical consumer systemSystem 104 also can be used as life to the application access of another Consumer System 104 by for example providingProduct person system. In some cases, Consumer System 104 and producer's system 106 can be distinguishedBe considered client and server system. But, as discussed above, Consumer System104 and producer's system 106 be not limited as mentioned above.
Whenever Consumer System 104 expects maybe to need the service to being provided by producer's system 106Access time, 102A-102D (its acted on behalf of in the addressable one or more leases of Consumer System 104Can be called as oddly herein " a lease agency 102 " or be called as plurally " lease generationReason 102 ") to ask the access of the producer's system 106 to service can be provided. Conventionally, disappearThe producer system of certain subset of expense person's system 104 access lease agencies 102 to obtain accessingThe identity of system 106 is with fulfillment service request. Lease agency 102 subset can be selected from randomly canWith leasing agency 102 and comprising several available leases agencies 102. For example, access producer systemSystem 106 request can be provided in the available lease agency of four shown in Figure 1A threeIndividual. But in some cases, Consumer System 104 can be assigned to specific lease generationReason 102. In addition, in some cases, Consumer System 104 can be to single lease agency 102Or provide the access producer system to the each existing lease agency 102 in network environment 100106 request.
Figure 1A is illustrated in lease agency 102, Consumer System 104 and producer's system 106Between an example of communication. As seen in Figure 1A, each Consumer System 104Communicate by letter for three that act on behalf of in 102 with four available leases. As indicated by dotted arrow, thisCommunication can comprise control information, and the service being provided by producer's system 106 with access is for example providedRequest and/or the relevant control information of request of access producer system 106. In addition, asBy the solid arrow instruction of subset that Consumer System 104 is connected to producer's system 106,Communication can comprise with producer's system 106 provides consumer 104 service request relevant data.In addition, lease agency 102 can be in the middle of their itself communication for example to provide and lease agency102 and/or the relevant status information of producer's system 106. It should be noted that the network at Figure 1AIntercommunication shown between the various systems of environment 100 is only at Consumer System 104, rawAn example of the communication between product person system 106 and lease agency 102, and do not advisedBe decided to be restrictive. About being described in more detail in net herein about the process described in Fig. 3-10Communication between the various systems of network environment 100.
Figure 1B illustrates for providing by 106 trustships of producer's system to Consumer System 104Service access and for providing producer's system strong to one or more leases agency 102The embodiment of the network environment 100 of health information. As shown in Figure 1B, in some cases,Data can be provided to Consumer System 104 and from Consumer System from producer's system 106104 are provided to producer's system 106. In other words, in some cases, data communication canBeing two-way.
In addition, producer's system 106 can provide health and fitness information to lease agency 102, thereby makesLease agency 102 can follow the tracks of which producer's system 106 is just being moved and which producer systemSystem 106 has the resource that can be used for being assigned to Consumer System 104. In some cases, rawProduct person system 106 can provide health and fitness information in the arranged time. In other cases, leaseAgency 102 can ask or ping producer's system 106 to obtain health and fitness information. Each producerSystem 106 is usually assigned with single lease agency 102, as by producer's system 106A-106CShown. But in some embodiments, producer's system 106 can be assigned to multipleLease agency 102, as being exactly to producer's system 106D situation.
Although Figure 1A and 1B illustrate different data and control channel, network environment 100May realize some or all of data and the control channel shown in Figure 1A and 1B. Therefore, thoughSo Figure 1B is not illustrated in the channel between Consumer System 104 and lease agency 102, butBe general, control channel is present between Consumer System 104 and lease agency 102, asShown in Figure 1A. In addition, some or all of channels can be unidirectional, and one of them isSystem request data or control information, and another system provides data or control information. Alternatively orIn addition, some or all of channels can be two-way, and wherein two systems in communication all canAsk and provide data or control information.
Fig. 2 illustrates for providing to Consumer System 104 by 106 trustships of producer's systemThe optional view of the embodiment of the network environment 100 of the access of service. As shown in Figure 2, netEach system of network environment 100 can communicate with one another via network 202. Network 202 can comprise appointsWired or wireless network or its combination of what type. For example, network 202 can comprise LAN(LAN), wide area network (WAN), cellular network, the network based on Ethernet, WiFi netNetwork, WiLAN network etc. In addition, in some cases, network 202 can comprise internet.
As shown in Figure 2, each system of describing in Figure 1A can comprise multiple subsystems, itsCan in hardware or software, realize. For example, Consumer System 104 can comprise lease requester240, block of state 242, link block 244 and resource requestor 246. Lease requester240 can be configured to from the one or more producer's systems of one or more lease agency 102 request106 lease. In some cases, lease requester 240 can ask especially to the producer beThe access of system 106. In other situation, lease requester 240 can be with or without clearly pleaseAsk the access of request to service in the situation of the access to producer's system 106.
Once lease requester 240 obtains the identity of one or more producer's systems 106, connectsConnection module 244 just can be attempted to set up and the some or all of producers that identified by lease agency 102The communication of system 106. After being established with being connected of producer's system 106, resource requestDevice 246 can be from producer's system 106 request resource or service, and Consumer System 104 successfullySet up and being connected of producer's system 106.
Block of state 242 can obtain the status information relevant with producer's system 106. This informationCan then be provided to lease agency 102 so that lease agency 102 in response to from consumerProducer's system 106 is selected in request system 104, access producer system 106. ThisIndividual information can be provided to lease agency 102 corresponding block of state 228. In certain situationUnder, success or the one-tenth of block of state 242 based in the time setting up with being connected of producer's system 106The shortage of merit obtains status information. In other cases, by inquiry producer system 106And/or the corresponding state module 262 that is included as the part of producer's system 106 obtains shapeState information. Status information can comprise about with producer's system 106 be connected and/or by producingPerson's system 106 provides any information of service. For example, status information can comprise about setting upSuccess when communication between Consumer System 104 and producer's system 106 or the letter of its shortageBreath. As another example, status information is accessed producer system during can being included in section preset timeThe quantity of the Consumer System 104 of system 106. Other example can comprise and producer's system 106Response, producer's system 106 capacity, have in the available resource in producer's system place etc.The information of closing.
As shown in Figure 2, producer's system 106 can comprise Registering modules 260 and block of state 262.As described previously, block of state 262 can be to the request state relevant with producer's system 106The Consumer System 104 of information provides the status information relevant with producer's system 106. In addition,In some cases, block of state 262 can due to own itself or in response to from lease agency102 request and provide status information to lease agency 102.
Registering modules 260 is configured to the 102 registration producer systems 106 to lease agency. At certainIn a little embodiments, in the time that producer's system 106 is activated for the first time, Registering modules 260 canAuto registration producer system 106 is as the part of initialization routine. In other embodiments,Registering modules 260 can be in response to registering producer's system 106 from the order of user or application.In some cases, determining its lease distributing agency when producer's system 106 no longer canUsed time, the registrable producer's system 106 of Registering modules 260.
As previously described, lease agency 102 also can comprise block of state 228. Block of state228 can be from Consumer System 104 and producer's system 106 one or two receive aboutThe status information of the state of producer's system 106. In addition, block of state 228 can be rented to anotherThe agency 102 that rents provides the status information relevant to producer's system 106. In addition, in some feelingsUnder condition, block of state 228 can come from other lease agency 102 status information by requestCarry out other lease agency 102 health examination. For example, block of state 228 can be based on healthWhether the request that checks is answered and is determined whether lease agency 102 is no longer can by lease agency 102With. In some cases, block of state 228 can be by request from producer's system 106Status information carry out the health examination of producer's system 106.
Except block of state 228, lease agency 102 also can comprise producer's thesaurus 220,Dividing system 222, leasing system 224 and Registering modules 226. Producer's thesaurus 220 canComprise any type for storing the information relevant with producer's system 106 database, depositBank or memory. For example, producer's thesaurus 220 can comprise and producer's system 106 phasesThe identity of status information, producer's system 106 of closing and with in the middle of lease agency 102, produceThe distribution of person's system 106 or divide relevant information. In some embodiments, replace or removeBeyond producer's thesaurus 220, be stored in the some or all of of producer's thesaurus 220 placesInformation also can be stored in 206 places, proxies store storehouse.
Dividing system 222 can comprise and can in the middle of the lease agency 102 of network environment 100, divideAny system of available producer's system 106. Conventionally, dividing system 222 is by the available producerSystem 106 is divided into non-overlapped or non-equivalent subset, and then a subset is assigned to eachLease agency 102. Therefore, if having four lease agencies 102, producer's system 106Can be divided into four subsets, a subset is relevant to each lease agency 102. But in some feelingsUnder condition, subset can be overlapping. Under these circumstances, producer's system 106 can be dividedJoin multiple lease agencies 102 or relevant to multiple lease agencies 102. When network environment 100 quiltsWhile initialization for the first time, the process of dividing producer's system 106 in the middle of lease agency 102 canOccur. In addition, this process can periodically reappear. For example,, whenever having in available productionWhen the quantitative variation of person's system 106, maybe ought there is the threshold value in available producer's system 106When variation, the process of dividing producer system 106 can occur, and no matter still delete by addingExcept available producer's system 106.
Whenever Consumer System 104 is from lease agency 102 visits of request to producer's system 106While asking, leasing system 224 can (for example comprise and producer's system 106 phases based on multiple factorsThe position of status information, producer's system 106 of closing (for example geographical position, data center,Server rack etc.) and producer's system 106 whether access Consumer System 104 just seeking visitThe resource of asking) identify producer's system 106 to lease to Consumer System 104. Once rentThe system of renting 224 identifies producer's system, and leasing system 224 just can be given the consumer system of requestSystem 104 provides the identity of producer's system 106. In addition leasing system 224 in some cases,The authorized access producer of Consumer System 104 system 106 is provided can to Consumer System 104The lease time. Alternatively or in addition, leasing system 224 provide to Consumer System 104Some other can consume the amount of resource or tolerance. For example, can consume resource can be computation cycles,Currency, disk storage, connection request etc.
Registering modules 226 can be used as the counter pair of the Registering modules 260 of producer's system 106.When receive the request of registering to lease agency 102 from producer's system 106, lease agency102 Registering modules 260 can determine whether producer's system 106 is assigned to lease agency102. If so, the registrable producer's system 106 of Registering modules 226, it can wrapDraw together the usability status of storage producer system 106 and with at for example producer's thesaurus 220The relevant status information of producer's system 106 at place. If Registering modules 226 on the other hand,Determine that producer's system 106 is unallocated to lease agency 102, Registering modules 226 can be identifiedBe assigned to another lease agency 102 of producer's system 106, and can be to producer's system 106Notice is assigned to the lease agency's 102 of producer's system 106 identity.
In certain embodiments, network environment 100 can comprise proxies store storehouse 206 and/orDividing system 204. Proxies store storehouse 206 can comprise about or be included in network environment 100In lease agency 102 and/information of producer's system 106. Be stored in proxies store storehouse 206In information can be by lease agency 102, Consumer System 104 and producer's system 106One or more uses. For example, in some cases, lease agency 102 can use agency to depositBank 206 is determined quantity and/or the identity of producer's system 106 of network environment 100. MakeUse this information, lease agency 102 can determine how to divide producer's system 106. At someIn situation, Consumer System 104 can be determined producer's system 106 with proxies store storehouse 206Identify after being accessed by Consumer System 104 and where be positioned at by leasing agency 102 at it.As another example that uses proxies store storehouse 206, in some cases, producer's system106 addressable proxies store storehouses to determine in the time that for example producer's system 106 is activated for the first timeThe lease agency's 102 who accesses identity.
In some embodiments, dividing system 204 can be carried out for working as lease agency 102The process of middle division producer system 106. In such embodiments, lease agency 102Can not comprise their dividing system 222.
In some embodiments, be included in Fig. 2 shown at least some modules in system canWith the application being provided by system and/or resources integration. For example, the state of producer's system 106Module 262 can with the application and/or the resources integration that are provided by producer's system 106. Similarly,Block of state 242 can or be served integrated with application by Consumer System 104 trustships.
For accessing the instantiation procedure in the service at producer's system place
Fig. 3 illustrates for accessing the enforcement in the process 300 of the service at producer's system 106 placesScheme. Process 300 can be by obtaining accessing producer's system 106 by acting on behalf of 102 from leaseLease or the interim service or the computer resource that visit at producer's system 106 places of authorizingAny system realize. For example, process 300 whole or in part can by Consumer System 104,Lease requester 240, link block 244, resource requestor 246 and block of state 242 are (onlyGive some instances) realize. Although any amount of system whole or in part can implementation procedure300, but in order to simplify discussion, the part of process 300 is described with reference to specific system.
Process 300 starts at piece 302, at piece 302, for example lease requester 240 produce rightThe lease request of access producer system 106. In some cases, lease is asked to comprise and is disappearedThe computer of access is wished in the user of expense person's system 104 or the application on Consumer System 104The identity of resource or service. In other cases, lease request comprises access producer system106 request, will be accessed by Consumer System 104 and be not defined in producer's system 106 placesService.
At piece 304, lease requester 240 is to the lease generation being included in network environment 100The subset of reason 102 provides lease request. In some cases, lease requester 240 can be to oneA little or all available lease agencies 102 provide lease request. Lease requester 240 can be by visitingAsk that proxies store storehouse 206 identifies available lease agency 102, proxies store storehouse 206 can compriseEach lease agency's 102 of network environment 100 identity. In other cases, work as initializationOr At All Other Times any while activating or in operating period of Consumer System 104, consumer systemSystem 104 can eachly dispose lease agency 102 identity. For example, user (for example keeper)Lease agency 102 identity is provided can to Consumer System 104. Lease agency 102 markCan comprise lease agency 102 title, lease agency 102 address (for example Internet protocol(IP) address or other network address) and/or can be used for being identified in the rent in network environment 100Rent and act on behalf of any out of Memory of 102. In some embodiments, carry to lease agency 102Can comprise to lease agency 102 and providing and one or more producer's systems 106 for lease requestRelevant status information, before Consumer System 104 and producer's system 106 reciprocations.
At piece 306, Consumer System 104 is from being provided the lease generation of lease request at piece 304Each subset of reason 102 receives the mark of producer's system 106. In some cases, consumptionPerson's system 104 receives the mark of producer's system 106 from some subsets of lease agency 102.For example, Consumer System 104 can connect from, two of lease agency 102 or whole subsetReceive the mark of producer's system 106. Do not receive any producer's system at Consumer System 104In the situation of 106 identity, process 300 can finish, to piece 302 and/or 304 relevant behaviourWork can repeat, and/or for example keeper of user can be warned. In some cases, receive lifeThe mark of product person system 106 comprises the authorized access producer of Consumer System 104 system that receives106 or the time span of the access of lease to producer's system 106. From lease agency 102The each lease agency 102 of subset the identity of single producer's system 106 can be provided. ButEach lease agency 102 of the subset of acting on behalf of from lease in some cases, can provide multipleThe identity of producer's system 106. As lease agency 102 identity, producer's system106 identity can comprise to be identified producer's system 106 or access is provided Consumer System 104Any information of the method for producer's system 106. For example, the identity of producer's system 106 canComprise being used in to be for example stored in the table at 206 places, proxies store storehouse or data structure and find outTitle, address (for example IP address) or the identifier of producer's system 106.
In some cases, piece 306 can comprise that the each subset receiving by lease agency 102 knowsThe status information of other producer's system 106. This status information can be used for helping consumer to beSystem 104 determines to access which producer's system 106. In some cases, status information canObtained by the lease agency 102 who communicates by letter with producer's system 106. Alternatively or in addition, can be fromThe Consumer System 104 of communicating by letter with producer's system 106 in the past obtains status information. Institute receivesStatus information can comprise independent set or the son of lease agency's 102 available status informationsCollection. In some cases, the status information receiving can or can not act on behalf of 102 with leaseAvailable status information is intersected.
Each producer that link block 244 attempts to initiate with identifying at piece 306 at piece 308 isThe connection of system 106. In some cases, link block 244 can attempt initiate with at piece 306The connection of the subset of producer's system 106 of identification. Attempt to initiate to connect can comprise for attemptingOpen any process with the communication channel of producer's system 106. For example, attempt to initiate to connectCan comprise connection request grouping is sent to producer's system 106. Conventionally, work as Consumer System104 while receiving the identity of producer's system 106, and link block 244 can attempt to set up with rawThe connection of product person system 106. Because Consumer System 104 may be seldom from multiple lease agencies102 receive response simultaneously, because for example lease agency 102 can be positioned at from Consumer System 104Different distances maybe can have different loads, and link block 244 may seldom be attempted simultaneouslyInitiation is connected with multiple producer's systems 106. Alternatively, initiate and producer's system 106The attempt of connection can interlock, even in very little degree. But, in some enforcement sidesIn case, link block 244 can attempt to initiate and being connected of multiple producer's systems 106 simultaneously.For example, in some cases, consumer's module 104 can be waited for, until lease agency's 102Till each subset is made response, or in some cases, response can be simultaneously from multiple lease generationReason 102 is received.
At piece 310, resource requestor 246 from first producer's system 106 access or ask rightThe access of service or computer resource, link block 244 is successfully set up and the first producer systemThe connection of system 106. In some cases, successfully set up and being connected of producer's system 106Can comprise from producer's system 106 confirmations of receipt (" ack ") groupings etc. Due to as above closeIn the similar reason described in piece 308, with being connected of producer's system 106 can be with staggered sideFormula is established. But, link block 244 simultaneously or the substantially identical time successfullySet up with in the situation about being connected of more than one producer's system 106, resource requestor 246 canSelect randomly producer's system 106, ask the access to service from this producer's system 106.Alternatively, which producer's system is resource requestor 246 can determine from selection algorithm106 request services. Selection algorithm is not limited, and for example can comprise round-robin method, recentlyFew selection algorithm that uses (LRU) or any other type. In some embodiments, disappearExpense person's system 104 can be asked the access to service from some or all of producer's systems 106, withCommunication connection or the communication channel of producer's system 106 are established. In some cases, serviceCan there is identical type. In other cases, Consumer System 104 can be from each producerSystem 106 is asked the access to difference service.
In addition, with need to be compared with the Consumer System of particular point in time 104 and more lifeIn the situation that the connection of product person system is successfully set up, Consumer System 104 can allow leaseWith one or more extra producer's systems 106. Alternatively, Consumer System 104 can be byThe lease of extra producer's system 106 is maintained in lease pond, and can be maintained to extra productionThe connection of person's system 106. Under these circumstances, if with extra producer's system 106Leasing period during certain time Consumer System 104 need to be to the access of extra-service,Consumer System 104 can utilize the service of one of extra producer's system 106, the extra producerThe lease of system 106 is maintained in lease pond.
At piece 312, block of state 242 receives shape from the first producer's system 106 connectingState metadata. In some cases, block of state 242 can connect from each producer's system 106Receipts state metadata, link block 244 is successfully set up the letter of communicating by letter with producer's system 106Road. In addition, block of state 242 can obtain state metadata from producer's system 106, connectsModule 244 fails to set up and the communication channel of this producer's system 106. For example, link block244 fail to set up with the fact of the communication channel of specific manufacturer system 106 can be included as withThe state metadata that producer's system 106 is relevant. State metadata is not limited, and can wrapDraw together the information relevant with being connected of producer's system 106 with foundation, with maintain the system with the producerThe relevant information of 106 connection, the information relevant with the response of producer's system 106 and withThe available relevant information of service at producer's system 106 places. For example, state metadata can be wrappedDraw together in the time being connected to producer's system 106 time quantum that disappears, to producer's system 106Time delay in connection, the necessary weight of available processes resource, request at producer's system 106 placesNewly send to producer's system 106 (for example, due to the grouping losing) number of times and can with productionThe data of any other type that the state of person's system 106 is correlated with.
In some embodiments, can be before piece 310 execution block 312. In such situationUnder, block of state 242 can be from each connected producer's system 106 receiving status informations.Consumer System 104 can be selected to produce based on received status information under these circumstancesPerson's system 106 is with access services.
At decision block 314, use the Consumer System 104 of for example resource requestor 246 to determineWhether the access of another service is expected. This another service can be different service,Or it can be the service of same type. For example in some cases, a service can be to useIn accesses network application, and another service can be (for example, by network for down loading network resourceImage or the video of for example webpage trustship of the page). Alternatively, under these two services all can be used forCarry Internet resources. For example, user can download two Webpages or download from two WebpagesResource. If so, link block 244 is initiated and the producer system identifying at piece 308The connection of system 106. In some cases, link block 244 is initiated and producer's system 106Connection, producer's system 106 is identified in the lease pond relevant to Consumer System 244.Lease pond can comprise that the current Consumer System 104 that leased to is for providing the access to resourceThe identity of producer's system 106. In some cases, lease pond comprises and is leased to consumptionProducer's system 106 of person's system 104, does not access the producer but Consumer System 104 is currentSystem 106. If lease pond does not comprise any lease, Consumer System 104 can exampleAs lease requester 240 and carry out again implementation 300. In some embodiments, decision blockThe 314th, optional. For example,, if do not have producer's system 106 to be leased to Consumer System104, process 300 can start repetition with piece 302.
In some embodiments, process 300 can be used for former lease to be updated to the producerSystem 106. Under these circumstances, the lease request producing at piece 302 can comprise consumerThe identity of producer's system 106 of access before system 104. In addition, lease request can compriseRequest is the instruction of update request. More fresh tenancy request can then be provided at first to consumerSystem 104 is identified the lease agency 102 of producer's system 106. Suppose that lease agency 102 is trueDetermining producer's system 106 remains available and/or has for carrying to Consumer System 104For the capacity of service, lease agency 102 can indicate update request to go through and can be to consumerSystem 104 provides the time span of fresh tenancy more as the part of piece 306. At Consumer System104 by with the lease of one or more extra producer's systems 106 maintain lease pond in andLeasing period extra producer's system 106 is passed and Consumer System 104 unfavorable be used in extraThe situation of service at producer's system 106 places under, Consumer System 104 can allow lease streamDie and lease update request do not sent to the lease corresponding to extra producer's system 106Agency 102.
In some cases, the process that request lease is upgraded can occur in the time that existing lease expires.In other cases, use the Consumer System 104 of for example resource requestor 246 to determine rightAccess is being leased in the existing service request of the service at one or more producer's systems 106 placesTime expires before the complete probability not becoming. If meeting, this probability upgrades threshold value, consumerSystem 104 can be before existing lease expires certain time point request producer system 106The renewal of lease, thus reduce or prevent due to the lease service disruption causing that expires.
In certain embodiments, lease can comprise to one the access of producer's system 106Individual or multiple producer's systems 106 and/or lease agency 102 relevant tissue or entities providePay. For example, producer's system 106 can become and can be used as the part that pays access services.Alternatively, lease may be without any need for the payment of type to the access of producer's system 106.In such embodiments, lease refer to the access to producer's system 106 occasional nature andIt not financial lease.
For the instantiation procedure of the lease of producer's system is provided to Consumer System
Fig. 4 illustrates the mistake for the lease of producer's system 106 is provided to Consumer System 104The embodiment of journey 400. Process 400 can be by providing the producer to be can to Consumer System 104Any system of the identity of system 106 realizes. In addition, process 400 can be by can be to Consumer SystemAny system of 104 access of lease to producer's system 106 realizes. For example, process 400Can be whole or in part by lease agency 102, leasing system 224 and block of state 228 (onlyGive some instances) realize. Although any amount of system whole or in part can implementation procedure400, but in order to simplify discussion, the part of process 400 is described with reference to specific system.
Process 400 starts at piece 402, at piece 402, and for example lease agency's 102 lease systemSystem 224 receives the request of the access of lease to producer's system 106 from Consumer System 104.In some instances, request can comprise that Consumer System 104 seeks at producer's system 106 placesThe special services of access or the identity of computational resource. As described at chapters and sections above, oneIn a little situations, lease request can comprise to be upgraded existing by the consumer 104 of producer's system 106The request of lease.
At piece 404, block of state 228 can receive one or more lifes from Consumer System 104The state metadata of product person system 106. The state metadata that this receives can comprise and consumerSystem 104 attempted communicate by letter or access from one with one or more producer's systems 106 in the pastOr the relevant data of the service of multiple producer's systems 106. For example, the state unit number receivingAccording to can comprise Delay, with the request to producer's system 106 by Consumer System 104The data that response is relevant or former about any out of Memory described in piece 312. In addition institute,The state metadata receiving can comprise the number that Consumer System 104 receives from producer's system 106According to and/or the reciprocation of Consumer System 104 based on it and producer's system 106 and producingData mode metadata. In some embodiments, piece 404 can be optional. For example,If request is the first request receiving from Consumer System 104, Consumer System 104 canThere is no to be provided to any state metadata of lease agency 102.
At piece 406, the state metadata updates of block of state 228 based on receiving at piece 404 is rawProduct person system status information. In some cases, upgrading producer's system status information can compriseUpgrade the entry relevant to producer's system 106 in producer's thesaurus 220. At someIn embodiment, piece 406 can be optional.
This external 408, block of state 228 provides at piece 404 and receives to the second lease agencyAt least some state metadata. For example, the lease of implementation 400 agency 102 can determineSome state metadata are for the producer's system 106 that is assigned to different lease agencies 102.Under these circumstances, lease agency 102 can be to the lease generation that is assigned to producer's system 106Reason 102 provides status information. In other cases, lease agency 102 can be to all leases generationReason 102 (lease agency 102 communicates by letter with all lease agencies 102) provides state metadata,Lease agency 102 can be the some or all of lease agencies 102 of network environment 100. AnyThe transfer of data of type, copy and/or synchronizing process can the interior realization of network environment 100 withShared state metadata in the middle of lease agency 102. For example, the filling algorithm (floodfill that floodsAlgorithm) or general woods algorithm share data in the middle of being used in lease agency 102. BelowApplication in described can be herein for sharing the extra of data in the middle of lease agency 102System and method: on December 28th, 2010 submits to and title is " DATAREPLICATIONFRAMEWORK " U. S. application number 12/980,133; 2010 12The moon 28 was submitted to and title is the U.S. of " DATAREPLICATIONFRAMEWORK "State's application number 12/980,153; On December 28th, 2010 submits to and title is " DATAREPLICATIONFRAMEWORK " U. S. application number 12/980,193; And 2010Submit on December 28, in and title is " DATAREPLICATIONFRAMEWORK "U. S. application number 12/980,258. Each hereby by drawing in these above-mentioned applicationsWith being all incorporated to.
In some embodiments, piece 408 is optional. For example, in some embodiments,104 of Consumer Systems for the producer's system 106 that is assigned to lease agency 102 to leaseAgency 102 provides state metadata, and lease agency 102 receives request at piece 402.
At piece 410, leasing system 224 based on be assigned or be assigned to lease agency's 102Producer's status information that each producer's system 106 is relevant is selected producer's system. OneIn a little situations, the information of producer's status information based on being provided by Consumer System 104 (for exampleThe state metadata receiving at piece 404). In other cases, producer's status information can baseIn lease agency 102 information that obtain by communicating by letter with producer's system 106. For example, leaseAgency 102 can carry out the health of the each producer's system 106 that is assigned to lease agency 102Or status checkout. These health examination can comprise ping producer's system 106, and request comes spontaneousThe renewal of the Resource Availability of product person system 106 or for obtaining and the shape of producer's system 106Any other process of the relevant information of state. In addition, producer's status information can be based on from otherThe information that lease agency 102 receives.
In certain embodiments, select producer system 106 can be at least in part based on notThe same relevant weight of producer's system 106. These weights can be come based on producer's status informationProduce. For example, instruction producer's system 106 in the time communicating by letter with Consumer System 104 has lowProducer's status information of time delay and low error rate can cause producer's system 106 to be weightedHigher and therefore more may be selected at piece 410 places. On the contrary, usually lose Consumer SystemProducer's system 106 of 104 connection can be weighted lowlyer and be therefore more impossible at piece410 places are selected.
In some cases, the selection of producer's system 106 can based on any amount of extra because ofElement, for example position of the producer system 106 relevant with Consumer System 104. Positional informationCan comprise for example whether producer's system 106 is arranged in the data identical with Consumer System 104In the heart or identical server rack. Select the producer system 106 in some cases can be based onThe service of being asked by Consumer System 104. In other situation, producer's system 106Selection can be based in part on by Consumer System 104 and ask and/or be assigned in the past consumerThe quantity of the lease time of system 104. In some cases, leasing system 224 can be selected extremelyThe producer's system 106 being loaded into less. In other cases, leasing system 224 can be from one groupProducer's system 106 selects to have the producer's system 106 lower than the load of threshold value. At someIn embodiment, in the time selecting, the load of selected producer's system 106 is confirmed as increasing, andDo not consider whether Consumer System 104 is set up and being connected of selected producer's system 106. FavourableGround, in some embodiments, by recording the load of the increase of selecting producer's system 106And the consumer who sets up who does not consider producer's system connects, same producer's system 106During a period of time, be selected and reduced more than the probability of threshold number, although because the producerThe actual load of system 106 may be low, but pre-to what connect the future of Consumer System 104Phase load is considered in the time selecting producer's system.
In some cases, select producer's system 106 to comprise at piece 410 and select to have phaseFor example, for the minimum load of one or more loads tolerance (connection, processor utilization etc.)Producer's system 106. Alternatively, select producer system 106 to comprise to be chosen in to have lowProducer's system 106 in the middle of one group of producer's system 106 of the load of threshold load.From thering are this group producer system 106 central producers of selection lower than the load of load threshold valueSystem 106 can be random, pseudorandom or for example, based on selection algorithm (nearest minimum makingWith, shoulder load etc.). Advantageously, in some embodiments, by from one group of producerSystem 106 is selected producer's system 106 instead of is always selected to have the life of minimum loadProduct person system 106, the probability of load swing and/or occur reducing. In addition load bubble or negative,The appearance of lotus focus, for example to compare with high load capacity relevant than the remainder of network environment 100The appearance of subset of system, advance and reduced through network environment 100.
At piece 412, leasing system 224 is for producer's system 106 of selecting at piece 410 is to disappearingExpense person's system 104 provides information of lease. This information of lease can comprise producer's system 106Identity and the in some cases rent of the authorized access producer of Consumer System 104 system 106The rent quantity of time. As previously described, the identity of producer's system 106 can comprise and can be convenient toLocate and access any information of producer's system 106, for example network address. In some enforcementIn scheme, provide the identity of producer's system 106 to comprise to provide certificate or PKI be convenient toProducer's system 106 is communicated by letter.
As indicated above, in some cases, process 400 can be used for leasing update request.Under these circumstances, piece 410 can comprise definite producer's system 106 (Consumer System 104Request is upgraded the lease of producer's system 106) whether still can be used for leasing. Determine and produceWhether person's system 106 still can be used for lease can comprise whether definite producer's system 106 hasContinue to serve the resource capacity of Consumer System 104. In addition, determine producer's system 106Whether still can be used for lease and can comprise definite producer shape relevant to producer's system 106Whether one or more tolerance of state information meet available threshold. For example, determine and can comprise inspectionWhether the error rate relevant to producer's system 106 be lower than threshold value error rate. If producer systemSystem 106 can be used for lease to be upgraded, and lease agency 102 sends to Consumer System 104The more fresh tenancy of producer's system 106. If lease agency 102 determines producer's system 106Be not useable for lease and upgrade, lease agency 102 can report and/or provide optional production equallyThe information of lease of person's system 106.
Example producer's system update process
Fig. 5 illustrates the embodiment of producer's system update process 500. Process 500 can be by canUpgrade the availability of producer's system 106 and can in the middle of lease agency 102, repartition productionAny system of person's system 106 realizes. For example, process 500 whole or in part can be by leasingAgency 102, dividing system 222, dividing system 204, Registering modules 226 and block of state228 (only giving some instances) realizes. Although any amount of system whole or in part can be realExisting process 500, but in order to simplify discussion, the part of process 500 is with reference to specific systemBe described.
Process 500 starts at decision block 502, at piece 502, and for example lease agency 102 shapeMorphotype piece 228 determines whether state renewal is received from producer's system 106. State upgradesCan be in response to sending to the request of producer's system 106 by lease agency 102 and being acted on behalf of by lease102 expections. Alternatively, due to the renewal scheduling relevant to each producer's system 106, shapeMorphotype piece 228 can upgrade by expecting state. For example in some cases, each producer's system106 can be configured to the lease agency 102 who distributes from trend on basic in per hour or every dayPing or provide state upgrade. Be received if state upgrades, process 500 turns back to certainlyPlan piece 502 upgrades to wait for NextState. In addition, block of state 228 renewable with produceThe relevant producer's shape of producer's system 106 at thesaurus 220 and/or 206 places, proxies store storehouseState information.
On the other hand, if upgrading, state is not received state mould at decision block 502Piece 228 upgrades producer's system 106 state at piece 504 is with instruction producer system 106Unavailability. The state of renewal producer system 106 can comprise can not by producer's system 106For the instruction that is leased to Consumer System 104 be stored in producer's thesaurus 220 and/orIn proxies store storehouse 206. In some cases, even if being updated in decision block 502, state connectReceive, the state that block of state 228 also can upgrade producer's system at piece 504 is with instruction productionPerson's system 106 is not available. For example,, if the status information receiving instruction producer systemSystem 106 breaks down, serves and ask or exceed threshold value error rate to produce mistake with threshold rates,The renewable producer's thesaurus 220 of block of state 228 and/or proxies store storehouse 206 are with instructionProducer's system 106 is no longer available. In some embodiments, upgrade producer's systemProducer's status information of 106 can comprise that with the loss of availability of indicating it alert management person is rawProduct person system 106 is no longer available. About Figure 10, more new production is described in more detail belowThe status information of person's system 106.
At decision block 506, producer's system 106 of dividing system 222 definite threshold quantity isNoly become unavailable. If no, process 500 turns back to decision block 502 to wait for next shapeState is upgraded. If dividing system 222 is in producer's system of decision block 506 definite threshold quantity106 become unavailable, and dividing system 222 is carried out the producer at piece 508 and repartitioned process.Be described in more detail this producer's system about Fig. 6 below and repartition process. In some enforcementIn scheme, one or two in decision block 506 and piece 508 carried out by dividing system 204.
Example division process
Fig. 6 illustrates the enforcement side of the partition process 600 for dividing one group of producer's system 106Case. Process 600 can be by following the tracks of variation in the quantity of available producer's system 106 canAny system of repartitioning producer's system 106 in the middle of lease agency 102 realizes. For example,Process 600 whole or in part can be by lease agency 102, dividing system 222, dividing system204, Registering modules 226 and block of state 228 (only giving some instances) are realized. Although appointThe system of what quantity whole or in part can implementation procedure 600, but in order to simplify discussion, mistakeThe part of journey 600 is described with reference to specific system.
Process 600 starts at piece 602, and at piece 602, for example block of state 228 is followed the tracks of availableThe delta of producer's system 106. In some cases, block of state 228 is followed the tracks of available productionThe absolute change of the quantity of person's system 106. Alternatively or in addition, follow the tracks of can for block of state 228With the rate of change of the quantity of producer's system 106. Delta in available producer's system 106Change can be based on new production person's system 106 interpolation or in the availability of producer's system 106In loss. In some embodiments, process 500 can be used for being identified in producer's systemLoss in 106 availability. In addition, determining of available producer's system 106 can be based on fingerThe user who loses or add who shows producer's system 106 upgrades. And, can be based on the producerThe registration of system 106 attempts following the tracks of the interpolation of producer's system 106. In some cases, canInformation based on being provided by Consumer System 104 is determined the availability of producer's system 106.In addition, can be according to actual quantity or according to the percentage in the availability of producer's system 106Change delta or the variation of following the tracks of the available producer.
In some embodiments, producer's system 106 and/or available producer's system 106Delta can be followed the tracks of by each lease agency 102. Alternatively, each lease agency 102 followsTrack is assigned to available producer's system of lease agency 102. In addition available life or alternatively,The counting of product person system 106 and/or delta are followed the tracks of by for example dividing system 204 of autonomous system.
At decision block 604, dividing system 222 is determined the delta of available producer's system 106Whether meet threshold value. This delta can be absolute value. In other words, producer's system 106Interpolation or reduce can be tracked. In certain embodiments, the interpolation of producer's system 106Can be tracked independently with minimizing, independent threshold value is to each relevant. Therefore in some cases,One or two threshold value can be satisfied, even always available producer's system be changed to zero or discontentedFoot combined threshold value. In some cases, delta can represent percentage change and/rate of change. ?In such situation, threshold value can be percentage threshold and/or rate of change threshold value.
If delta does not meet threshold value, if or neither one delta meet corresponding threshold value,Block of state 228 is in the piece 602 continuation available producer's systems 106 of tracking or in available productionVariation in person's system 106. On the other hand, if delta meets threshold value or delta meets phaseThe threshold value of answering, dividing system 222 is to other lease agency's 102 notice implementations 600Lease agency 102 is just initiating the division of producer's system 106 or is repartitioning process at piece 606.Advantageously, in certain embodiments, by notifying implementations to other lease agency 102600 lease agency 102 is just initiating partition process, and process 600 avoids making multiple lease agencies102 carry out partition process simultaneously, this can be for example due to the counting in producer's system 106 with drawPoint in race condition and cause non-optimum. In some embodiments, piece 606 canOptional. For example, in some embodiments, with lease agency 102 dividing systems that separate204 can carry out division or repartition process.
At piece 608, dividing system 222 obtains the identity of available producer's system 106. DivideSystem 222 can be by access producer thesaurus 220 and/or by access agent thesaurus 206Obtain the identity of available producer's system 106. In some cases, dividing system 222 canObtain the identity of available producer's system 106 by contacting other lease agency 102.
At piece 610, dividing system 222 is divided the available producer and is in the middle of lease agency 102System 106. Dividing system 222 can be divided producer's system with the partitioning algorithm of any type106. Conventionally, in the middle of lease agency 102, the division of producer's system 106 produces and can be dividedBe fitted on producer's system 106 of non-overlapped or non-equivalent group of lease agency 102. But oneIn a little situations, division can be overlapping. In addition, in some cases, subset can be notBalance. In other words, some lease agencies 102 can be than other lease agency 102 quilts pointJoin more producer's system 106. Be in unbalanced situation in subset, be assigned to specificLease agency 102 the quantity of producer's system 106 or percentage can be at least in part based onLease agency 102 and/or to be assigned to producer's system 106 of lease agency 102 accessibleThe quantity of request. For example, comparable another lease of the first lease agency 102 agency 102 is assigned withProducer's system still less, if be assigned with can be than other producer's system for the first lease agency106 process producer's system 106 of the request of the larger quantity of Consumer System 104.
In addition, can provide the clothes different from other producer's system in some producer's systems 106In the embodiment of business, producer's system 106 can be divided, and each lease agency is dividedJoin the producer of specific service can be provided system. The life of specific service can be provided alternatively,Product person system 106 can be divided in the middle of lease agency 102 selection subsets.
At piece 612, in the time that piece 610 completes, the lease agency 102 of implementation 600 drawsSubsystem 222 use be assigned to each lease agency 102 producer's system 106 identity moreEach in new other lease agency 102 in network environment 100. In some embodimentsIn, piece 612 can comprise the producer who uses the lease agency 102 who is assigned to implementation 600The identity of system 106 is upgraded the lease agency 102 of implementation 600. By producer's system 106Identity more fresh tenancy agency 102 can comprise the table or the number that are updated in producer's thesaurus 220 placesAccording to storehouse. In some cases, because lease agency 102 implementations 600, so piece 612Optionally and only with respect to being included in network environment 100 with respect to lease agency 102Other is leased agency 102 and is performed.
In some embodiments, process 600 can be used for providing in the middle of lease agency 102The initial division of producer's system 106. For example, in the time that network environment 100 is configured for the first time,In the time that available producer's system 106 is activated, the delta of available producer's system 106 mayMeet the threshold value of decision block 604. Alternatively or in addition, user can be in network environment 100 firstWhen inferior being configured or in office what manually activate At All Other Times partition process.
Process 600 is divided producer's system 106 in the middle of being described as be in lease agency 102. SoAnd process 600 is not limited by this way. In some cases, process 600 canCan be provided to Consumer System 104 for accessing the life in the middle of lease agency 102 for dividingThe lease of product person system 106. For example, lease agency 102 or dividing system 222 can identify oneOrganize available producer's system and determine that this each producer's system of organizing available producer's system canWith multiple leases. The lease agency 102 of implementation 600 can be the first lease agency 102With detect can with lease in change threshold value can be maybe designated carry out lease divideLease agency 102. Lease agency 102 can for example, based on (existing from each producer's system 106The period of registration of producer's system 106) receive status information identify multiple available leases.Alternatively or in addition, type that can be based on producer's system 106 or based on from producer's system106 or the configuration information that receives of user (for example keeper) determine the quantity of available lease.
Lease agency 102 can be by giving the each lease agency from multiple lease agencies 102102 distribution are drawn from the lease subset of each producer's system 106 adoptable multiple leasesDivide the adoptable multiple leases of each producer's system 106 in the middle of multiple leases agencies 102.Multiple leases can equate or in fact equally in the middle of lease agency 102, be divided. At someIn situation, because the quantity of lease is not the multiple of lease agency 102 quantity, at least someLease agency 102 can be assigned with one more or less lease. In addition, in some cases,Lease can equally not divided, due to for example in some lease agencies 102 and/or someConfiguration variance in the middle of producer's system 106. In some cases, each lease agency 102Be assigned with one group of non-overlapped lease. Alternatively, at least some leases can be assigned to multiple rentsAgency 102 rents. In some embodiments, lease is divided into the many of producer's system 106Individual lease agency 102 can be lease agency 102 subset. For example in some cases, rentAgency's 102 the subset of renting can be assigned to the subset of producer's system 106.
Divide after multiple leases or time, act on behalf of for each lease generation of 102 for multiple leasesReason 102, the lease agency 102 of implementation 600 provides to lease agency 102 and be assigned withTo the subset of leasing the lease of acting on behalf of 102. Provide lease to comprise to each lease agency 102Multiple leases are provided from the each producer's system 106 that is assigned to each lease agency 102To each lease agency 102. Alternatively or in addition, provide lease to each lease agency 102Can comprise the identity that each distributed lease is provided to lease agency 102. In addition, provide rentRent and can comprise and be provided for communicating by letter with producer's system 106 and/or for utilizing producer's systemThe link information of 106 lease.
Advantageously, in some embodiments, be divided in every in the middle of multiple leases agency 102The adoptable multiple leases of individual producer's system 106 realize in the middle of multiple lease agencies 102The balance of live load. In some cases, the lease of implementation 600 agency 102 is ownNeedn't provide the subset of the lease that is assigned to itself, because its positive implementation 600. But,In some cases, lease agency 102 can provide lease to itself. For example, draw in executionThe lease agency's 102 who divides subsystem (dividing system 222) and reception and/or tracking are assigned withIn the different situation of the subsystem of leasing the lease of acting on behalf of 102, the lease of implementation 600Agency 102 can be to its identity of the lease distributing is provided itself.
In some cases, process 600 can be used for dividing producer's system 106 and with leaseThe relevant lease of each producer's system 106 in the middle of agency 102.
Example producer's system registry process
Fig. 7 illustrates producer's system registry process 700 of seeing from the angle of producer's system 106Embodiment. Process 700 can be by can be to lease agency's 102 registration producer systems 106Any system realizes. For example, process 700 whole or in part can by producer's system 106,Registering modules 260 and block of state 262 (only giving some instances) are realized. Although any quantitySystem whole or in part can implementation procedure 700, but in order to simplify discussion, process 700Part be described with reference to specific system.
Whenever producer's system 106 is after inactive period or system restart firstInferior being activated or initialization or deexcitation or while reinitializing, process 700 can occur. OneIn a little situations, the lease the distributing agency 102 who determines it whenever producer's system 106 no longerWhen available, process 700 can occur or reappear. The lease agency 102 who distributes is no longerAvailable definite for example information based on receiving, obtain from proxies store storehouse 206 from user,If or provide state to upgrade for example about the state renewal described in Fig. 5 in producer's system 106ACK does not receive from distributed lease agency 102 afterwards.
Process 700 starts at piece 702, at piece 702, for example Registering modules 260 access fromFor example one of proxies store storehouse 206 group of lease agency's 102 identity. In some cases, rawProduct person system 106 can be from this group lease agency's 102 of internal memory accesses identity. For example,Producer's system 106 can be preconfigured one group of lease agency's 102 identity. In other feelingsUnder condition, user can specify the lease agency 102 that will access.
At piece 704, Registering modules 260 these group lease agency 102 choosings from identifying at piece 702Select a lease agency 102. Registering modules 260 can or pass through to use randomly any other choosingFor example round-robin method of selection method or least recently used method are selected lease agency 102. In this groupIn lease agency 102 situations about being classified, Registering modules 260 can be chosen in classified groupThe first lease agency 102. In certain embodiments, piece 704 can be optional. ExampleAs, piece 704 is unwanted in the situation that user specifies lease to act on behalf of 102.
At piece 706, Registering modules 260 is initiated or is attempted to initiate and the lease of selecting at piece 704Agency 102 connection. In some cases, attempt to initiate to act on behalf of with lease 102 the bag that is connectedDraw together to the attempt of lease agency 102 registrations.
At piece 708, Registering modules 260 receives connection response from lease agency 102. Registration mouldPiece 260 decision block 710 determine connection response whether confirm producer's system 106 registration orInstruction the second lease agency's 102 identity. If Registering modules 260 is determined at decision block 710Connection response is confirmed the registration of producer system 106, block of state 262 at piece 712 to rentThe agency 102 that rents provides the status information relevant with producer's system 106. This status information canComprise any information relevant to the state of one or more tolerance or situation, one or more degreeMeasure relevant to producer's system 106. For example, status information can comprise one or more calculating moneyThe availability in source (such as memory, processor, the network bandwidth, application etc.), consumer systemSystem 104 (its service request is by the processing of producer's system) quantity and with producer's system 106The relevant any out of Memory of state.
In the time that Registering modules 260 determines that connection response is confirmed the registration of producer's system 106, withThe process that piece 712 is relevant can occur. Alternatively or in addition, the process relevant to piece 712 can beCertain time after a while occurs. In addition the process relevant to piece 712 in some embodiments,Can be in continuous foundation, on intermittent basis, occur, or can be in response to from lease agency 102The state to producer's system 106 renewal request and occur. In other embodiments,Whenever have changes of threshold in the state of producer's system 106 or situation time, relevant to piece 712Process can occur. For example,, when the availability of the processing resource of producer's system 106 drops toWhen threshold level, the process relevant to piece 712 can occur.
If Registering modules 260 is determined the connection response bag receiving at piece 708 at decision block 710Draw together the second lease agency's mark, Registering modules 260 is initiated and the second lease generation at piece 714The connection of reason. As by about as described in process 800, the second lease agency can comprise the first leaseAgency (the lease agency who for example identifies at piece 704) is confirmed as and producer's system 106 phasesThe lease agency of closing.
At piece 716, block of state 262 provides status information to the second lease agency. At someIn embodiment, piece 716 can comprise above about the one or more enforcement sides described in piece 712Case. In certain embodiments, the connection response instruction producer system receiving at piece 708Whether 106 registration is successful and any extra lease agency of nonrecognition. In such feelingsUnder condition, if the registration of producer's system 106 is not that successfully producer's system 106 canAnother lease generation that this group lease of attempting to register or initiate and next comfortable piece 702 is identified is acted on behalf ofThe connection of reason, and alternatively can repeatable block 704,706,708 and 710, until lease agencyTill the registration of 102 confirmation producer systems 106.
In some embodiments, the second lease agency who identifies at decision block 710 is by randomlySelection and/or not necessarily relevant to producer's system 106. Under these circumstances, piece 714Can comprise carry out above about described in piece 708 and 710 but act on behalf of relevant one with the second leaseIndividual or multiple embodiments. In other words, can form the circulation from piece 714 to piece 708. ?In such situation, decision block 710 can be identified the 3rd lease agency, if from the second leaseAgency's connection response identifies the 3rd lease agency instead of confirmation producer system 106Registration. This circulation repeats serially, until producer's system 106 is to lease agency 102Successfully till registration. Alternatively, circulation can be performed threshold number. If threshold value is satisfiedAnd producer's system 106 is not successfully registered, warning can produce. For example, can notify(for example via e-mail or eject warning) keeper producer's system 106 is failed to leaseAgency's 102 registrations. In some cases, for example unexpected system failure, producer's system106 may fail to one group of lease agency, 102 registrations or upgrade their registration. SuchIn situation, the Cache of the addressable link information of Consumer System 104 or lease, to tryFigure access producer system 106. Advantageously, in certain embodiments, by using possibilityOverdue Cache information, can be reduced in some cases the fault time of resource accessOr eliminate.
Example producer's system registry process
Fig. 8 illustrates producer's system registry process 800 of seeing from lease agency 102 angleEmbodiment. Process 800 can be by registering appointing of producer's systems 106 lease agency 102What system realizes. For example, process 800 whole or in part can be by lease agency 102, registrationModule 226 and block of state 228 (only giving some instances) are realized. Although any amount of systemSystem whole or in part can implementation procedure 800, but in order to simplify discussion, the portion of process 800Divide with reference to specific system and be described.
Process 800 starts at piece 802, and at piece 802, Registering modules 226 is from producer's system106 receive registration request. In some embodiments, registration request can comprise with the producer and is106 relevant certificate or the encryption keys of uniting. Registering modules 226 is determined and is produced at decision block 804Whether person's system 106 is assigned to lease agency 102. Determine producer's system 106 whether byBe assigned to lease agency 102 and can comprise access producer's thesaurus 220 and/or proxies store storehouse206 to determine whether producer's system 106 is assigned to lease agency 102. In addition, oneIn a little situations, determine whether producer's system 106 is assigned to lease agency 102 and can comprises exampleAs the identifier being received, certificate or encryption key based on relevant to producer's system 106 comeChange the identity of producer's system 106.
If Registering modules 226 determines that producer's system 106 is assigned to lease and acts on behalf of 102,Registering modules 226 is confirmed the registration of producer's system 106 at piece 806. Confirm producer systemSystem 106 registration can comprise notify producer's system 106 it to lease agency 102 registrations. ThisOutward, in some cases, piece 806 can comprise renewal producer thesaurus 220 and/or agencyThesaurus 206 is available with instruction producer system 106 and registers to lease agency 102.In addition, in some embodiments, piece 806 can comprise to producer's system 106 provide toLease certificate or encryption key that agency 102 is correlated with and/or is assigned to producer's system 106Access. This certificate and/or encryption key are used in producer's system 106 and lease generationOther communication between reason 102. And certificate and/or encryption key are used in productionCommunication between person's system 106 and Consumer System 104, for example, with checking producer system 106Identity or the data transmitted between these two systems of protection.
At piece 808, block of state 228 is from producer's system 106 receiving status informations. ThisStatus information can comprise above about the some or all of enforcements described in the status information of piece 712Scheme. Block of state 228 is at piece 810 state based on receiving at piece 808 at least in partInformation is upgraded producer's status information of producer's system 106. Upgrade producer's status informationCan comprise and upgrade entry or at one of producer's thesaurus 220 and/or 206 places, proxies store storehouseIndividual or multiple tolerance is with the state of reflection producer system 106.
If Registering modules 226 determines that at decision block 804 producer's system 106 is not assigned withTo lease agency 102, Registering modules 226 is identified producer's system 106 quilts point at piece 812Another lease agency who joins. At piece 814, Registering modules 226 can be carried to producer's system 106The lease agency's 102 who is assigned to for producer's system 106 identity, makes producer's system 106Can contact the lease agency 102 who identifies at piece 812. In certain embodiments, piece 812With piece 814 can be optional. For example in some cases, Registering modules 226 can be notified lifeIt is not relevant to lease agency 102 for product person system 106, and the note therefore receiving at piece 802Volume request is unsuccessful, and does not notify producer's system 106 to be divided to producer's system 106The optional lease agency 102 who is fitted on.
Lease agency repartitions process
Fig. 9 illustrates that lease agency repartitions the embodiment of process 900. Process 900 can be byCan redistribute any system of the one group of producer's system 106 that is assigned to lease agency 102Realize. For example, process 900 whole or in part can be by lease agency 102, dividing system 222Realize with dividing system 204 (only giving some instances). Although any amount of system all orPartly can implementation procedure 900, but in order to simplify discussion, the part of process 900 with reference toSpecific system is described.
Process 900 starts at piece 902, wherein for example acts on behalf of 102 relevant drawing to the first leaseSubsystem 222 receives another or the second lease agency 102 is no longer available instruction. Can be based onFor example ping or status checkout determine that the second lease agency 102 is no longer available instruction.In other cases, in the time that message is not confirmed by the second lease agency 102, dividing system 222Can determine that lease agency 102 is no longer available. In other other embodiment, userIt is no longer available can specifying the second lease agency. In some instances, process 900 can be by drawingSubsystem 204 is carried out.
At piece 904, dividing system 222 identifications are assigned to the lease agency 102 that no longer can useProducer's system 106. Can be by access producer's thesaurus 220 and/or proxies store storehouse206 identify producer's system 106. At piece 906, dividing system 222 is all the other lease agenciesIn the middle of 102, be divided in producer's system 106 that piece 904 is identified. In some cases, piece 906Can comprise and notify all the other lease agency 102 partition process just to occur, thereby prevent multiple lease generationsReason is simultaneously as producer's system 106 of being identified about division as described in piece 610 above.
In some embodiments, piece 906 can comprise that repartitioning all available producers isSystem 106 and be not only those producers systems that are assigned to the lease agency 102 that no longer can useSystem 106. In such embodiments, piece 904 can comprise all available producers of identificationSystem 106. As previously mentioned, the division of producer's system 106 can be overlapping, non-overlapped, equivalence, non-equivalent and/or can be based on producer's type. Therefore in some enforcement sidesIn case, piece 906 can comprise above about the some or all of embodiments described in piece 610. ThisIn some cases, be assigned to producer's system 106 of the second lease agency 102 outward,The division type based on the second lease agency 102 at least in part. For example,, if the second rentThe agency 102 that rents is distributed producer's system 106 that stores service is provided exclusively, is assigned withProducer's system 106 to the second lease agency 102 can also be assigned with exclusively storage is being providedIn the middle of the lease agency's 102 of producer's system 106 of service or resource subset, repartitioned.
At piece 908, dividing system 222 use are up-to-date is assigned to each lease agency that still can useThe identity of producer's system 106 of 102 is upgraded all the other lease agencies 102.
In some embodiments, process 900 can be used for lease agency 102 interpolation or leaseAgency 102 replacement. Under these circumstances, piece 904 can be identified for dividing at piece 906All available producer's system 106. In some cases, available producer's system 106 canTo be the identical producer's system 106 that can use in the time period early. In other cases,This group producer system 106 can losing or producer's system 106 due to producer's system 106Interpolation and change. In the case of the replacement one to one that has lease agency 102, fresh tenancyAgency can be assigned with producer's system 106 of the lease agency that it is just replacing. In such situationUnder, piece 906 can be optional, and piece 908 can comprise that leasing agent advertisement to other newly rentsThe agency that rents is assigned with producer's system 106 of old lease agency now.
The producer selection course of example based on lagging behind
Figure 10 illustrates the embodiment of the producer's selection course 1000 based on lagging behind. Process1000 can be by revising the selection weight relevant to producer's system 106 so that the amendment producerThe selection of for example producer's system 106 of the selection of system is as any system of the part of piece 410Realize. For example, process 1000 whole or in part can be by lease agency 102, block of state228 and leasing system 224 (only giving some instances) realize. Although any amount of system is completePortion or partly can implementation procedure 1000, but in order to simplify discussion, the part of process 1000Be described with reference to specific system.
Process 1000 starts at piece 1002, wherein for example block of state 228 from Consumer System104 receive the state metadata relevant to producer's system 106. This state metadata can be wrappedDraw together the information and the Consumer System that are provided to Consumer System 104 by producer's system 106104 reciprocations based on it and producer's system 106 and definite information. For example, stateMetadata can comprise the information relevant with the response time of producer's system 106, producer's systemQuantity, producer's system 106 of 106 Consumer Systems 104 of serving in preset time existThe quantity of the Consumer System 104 of on average serving in a period of time etc. In some embodimentsIn, piece 1002 can comprise above about the some or all of embodiments described in piece 404.
In addition, in some cases, block of state 228 can be last since Consumer System 104Once to since lease agency 102 communications receive and one group of state that producer's system 106 is relevantMetadata, Consumer System 104 is communicated by letter with this group producer system 106. State metadata canReceived from Consumer System 104 as the part of update request, for to producer's system106 the access of renewal. In other cases, state metadata can be used as fresh tenancy requestPart is received from Consumer System 104.
At piece 1004, the corresponding state metadata of block of state 228 based on receiving at piece 1002Upgrade producer's status information of one or more producer's systems 106. Alternatively or in addition,Block of state 228 can determine at least some state metadata that receive be for another rentProducer's system 106 that the system of renting 102 is relevant, and therefore can be to being assigned to producer's system106 lease agency 102 provides status information. In some cases, with piece 1002 and 1004Relevant process can be used as a class " chat algorithm ", because Consumer System 104 is given lease agency102 provide each mutual about in Consumer System 104 and multiple producer's systems 106The information of effect, and do not consider whether lease agency 102 is assigned to multiple producer's systemsEach in 106. In other words, lease agency 102 can obtain about being assigned to another rent" chat " of the producer's system 106 of acting on behalf of 102 of renting. Lease agency 102 can be then by the " spare timeMerely " expand to the lease agency 102 who is assigned to producer's system 106. Advantageously, at someIn embodiment, by using this " chat algorithm ", lease agency 102 can be from producer's system106 obtain the state metadata between arranged state upgrades. By from Consumer System104 and producer's system 106 obtain state metadata, with do not use " chat algorithm " beSystem relatively, can be further optimised for the selection of producer's system 106 of leasing. 2009Submit on August 20, in and title is " DECENTRALIZEDREQUESTROUTING " U. S. application number 12/544,517 in described for obtaining for selecting meterCalculation system is to provide the extra enforcement side of " chat " of service or the system and method for feedback informationCase, this application is all incorporated to hereby by reference. In some embodiments, piece 1002Can comprise above the some or all of embodiments of describing about piece 406 and/or piece 408.
At decision block 1006, whether the definite producer's status information upgraded of block of state 228The variation of instruction in the load tolerance relevant to producer's system 106. Load tolerance can compriseBe selected for any feature of producer's system 106 of monitoring. This load tolerance can with canThe load of being processed by producer's system 106 is relevant. In some cases, load tolerance can compriseAny tolerance relevant with the health of producer's system. Some non-limitative examples of load toleranceCan comprise error rate, memory utilization rate, with counting being connected of Consumer System etc. IfProducer's status information of upgrading is not indicated the variation in load tolerance at decision block 1006,Process 1000 turns back to piece 1002 to wait for the new state unit number from Consumer System 104According to.
In some embodiments, decision block 1006 can relate to alternatively or in addition determine beNo have to one or more other measure the variation of relevant value, producer's system 106 and oneOr multiple other tolerance is relevant. For example, block of state 228 can be determined producer's state of renewalWhether information is indicated by the variation of the response time of producer's system 106 or is passed through the producerThe variation of the available resources of system 106. In some cases, decision block 1006 can comprise ratioCompared with the degree of loading measurement amount of the renewal of producer's system 106 and the production in network environment 100Person's system 106 or the average load tolerance that is assigned to producer's system of lease agency 102 are surveyedAmount.
If the instruction of producer's status information of upgrading has the degree of loading in producer's system 106Variation in amount, block of state 228 at piece 1008 at least in part based on changed negativeLotus tolerance is measured and is revised the selection weight relevant to producer's system 106. Weight is selected in amendmentCan comprise whether the variation based on error rate indicates the error rate of increase or the error rate of reductionIncrease or reduce to select weight. In some embodiments, producer's system 106 not with selectionWeight is relevant. In such embodiments, if the degree of loading detecting at decision block 1006Amount or the variation of other tracked tolerance meet or exceed corresponding threshold value, block of state228 can be by producer's system identification for breaking down or disabled. Under these circumstances,If load tolerance reach with producer's system 106 is identified as no longer can with or break downRelevant threshold value, can warn such as keeper of user. In addition, in some cases, ifLoad tolerance or select weight changes number of thresholds and do not consider the available of producer's system 106Property, can warn user.
In certain embodiments, the selection weight relevant to producer's system 106 can be used for justIn selecting available producer's system 106 to lease to Consumer System as with foregoingThe part of the piece 410 that process 400 is relevant. The selection weight of producer's system 106 and/or availableSexual state can be stored in producer's thesaurus 220 and/or 206 places, proxies store storehouse.
Overlay network environment general introduction
Figure 11 illustrates for providing the service by the trustship of producer's system to Consumer SystemThe embodiment of the overlay network environment 1100 of access. Overlay network environment 1100 can comprise canProvide appointing of one or more overlay networks or virtual network to one or more tissues or entityThe system of what type. These overlay networks can be hard in the calculating that can form physics or non-virtual networkOn part, realize. The U. S. application number 12/827,268 of submitting on June 30th, 2010 (nowBe United States Patent (USP) 8,296,459) covering that can use together with the disclosure or virtual has been described inSome examples of network, the open of this application is all incorporated to hereby by reference.
Overlay network environment 1100 comprises lease agency 102, consumer's main frame 1104 and producesPerson's main frame 1106, wherein each can communicating with one another via network 202. Each lease agency 102Can comprise about shown in Fig. 2 and described some or all of subsystems. Therefore for example lease agency102 can comprise producer's thesaurus 220, dividing system 222, leasing system 224, registration mouldPiece 226 and block of state 228. Although each in these subsystems of lease agency 102 canComprise with in the past about the identical function described in Fig. 2, but these subsystems in some casesSystem can comprise that revised or extra ability. For example, except or replace and receiving and consumer systemThe status information that system 104 is relevant with producer's system 106, block of state 228 can receive and disappearThe person's of expense main frame 1104, producer's main frame 1106, consumer's virtual machine 1142 and the producer are virtualOne or more relevant status information in machine 1162. Similarly, producer's thesaurus 220Can comprise and consumer's main frame 1104, producer's main frame 1106, consumer's virtual machine 1142 andOne or more relevant information in producer's virtual machine 1162.
In some cases, dividing system 222 is used in the rent of overlay network environment 1100The central producer of the division virtual machine 1162 of the agency 102 that rents. In addition, with specific overlay network phaseIt is virtual that the producer's virtual machine 1162 closing can be independent of the producer relevant to other overlay networkMachine 1162 and being divided. Therefore, can be independent of the producer virtual for for example producer's virtual machine B 'Machine B " be divided into and lease agency 102. In some cases, available lease agency's 102 sonCollection can be relevant to specific overlay network. Under these circumstances, with specific overlay network phaseThe producer's virtual machine 1162 closing can be restricted to by communicating by letter available rent with consumer's virtual machine 1142Rent and act on behalf of 102 subset.
In addition, leasing system 224 can be selected producer's virtual machine 1162 based on overlay networkTo lease to consumer's virtual machine 1142, producer's virtual machine 1162 and consumer's virtual machine1142 is relevant to this overlay network. In some cases, select producer's void based on overlay networkPlan machine 1162 can about selection producer system 106 to lease to consumer be in addition with in the pastFactor described in system 104 is relevant. And Registering modules 226 can be used for to lease agency 102Registration producer virtual machine 1162.
Although single consumer's main frame 1104 is only shown in Figure 11, overlay network environmentCan comprise multiple consumer's main frames 1104. Each consumer's main frame 1104 can comprise multiple consumptionPerson's virtual machine 1142. Some consumer's virtual machines 1142 can with hold in the palm with consumer's main frame 1104The different overlay network of other consumer's virtual machine 1142 of pipe is correlated with. For example, consumer masterMachine 1104 comprises two consumer's virtual machines 1142, and each from different overlay networks is relevant.Consumer's virtual machine A ' can be relevant to first overlay network that also can comprise producer's virtual machine B ',And consumer's virtual machine A " can with also can comprise producer's virtual machine B " the second nerve of a coveringNetwork is relevant.
Except consumer's virtual machine 1142, consumer's main frame 1104 can comprise overlay networkAgency 1114, lease requester 1130, virtual machine mapping thesaurus 1150 and block of state 1132.Overlay network agency 1114 can comprise the service request that can process from consumer's virtual machine 1142And can be provided for the clothes of processing to producer's main frame 1106 of trustship producer virtual machine 1162Any system of business request. In some embodiments, receive from consumer's virtual machine 1142Service request can comprise that believe with producer's virtual machine 1162 or consumer's virtual machine 1142 canProcess the relevant virtual address of non-existent system of its service request. There is void when receivingWhile intending the service request of address, overlay network agency 1114 can identify for service is providedIn the identical overlay network of consumer's virtual machine 1142 of request, process the producer of service requestVirtual machine 1162. Overlay network agency 1114 can then use identified producer's virtual machine1162 address replaces virtual address. As described in more detail below, can from service is providedKnow in the pond of producer's virtual machine 1162 of leasing that consumer's virtual machine 1142 of request is correlated withOther producer's virtual machine 1162. In addition, overlay network agency 1114 can be with identifying crecheProducer's main frame 1106 of producer's virtual machine 1162 of identification is also identified consumer's main frame 1104Header or outside header is packed or packing service request.
Virtual machine mapping thesaurus 1150 can be stored the life that represents that consumer's virtual machine 1142 is leasedThe pond of product person virtual machine 1162. In addition it is raw that, virtual machine mapping thesaurus 1150 can be stored trustshipThe identity of corresponding producer's main frame 1106 of product person virtual machine 1162. Storage producer virtual machine1162 and the identity of producer's main frame 1106 can comprise that storage is for accessing producer's virtual machine1162 and the addressing information of producer's main frame 1106.
In order to represent that consumer's virtual machine 1142 is leased, consumer's main frame 1104 can compriseCan represent by consumer's virtual machine 1142 of consumer's main frame 1104 trustships and produce lease requestLease requester 1118. Lease requester 1118 can be identified specific overlay network and/or specificConsumer's virtual machine 1142, for it, the lease of producer's virtual machine 1162 is requested.
Block of state 1132 can comprise describe about block of state 242 some or all of aboveEmbodiment. In addition, block of state 1132 can based on producer's virtual machine 1162 and produceThe communication of person's main frame 1106 provides producer's virtual machine 1162 and/or producer's main frame 1106Status information.
As consumer's main frame 1104, overlay network environment 1100 can comprise any quantityProducer's main frame 1106, wherein each comprise relevant to one or more overlay networksOne or more producer's virtual machines 1162. In addition, each producer's main frame 1106 can compriseOverlay network agency 1116, virtual machine mapping thesaurus 1152 and block of state 1134.
Be similar to overlay network agency 1114, overlay network agency 1116 can comprise for the treatment ofThe service request receiving from consumer's main frame 1104 for the treatment of the service request to receivedAny system of response. In the time receiving service request, overlay network agency 1116 can baseInformation in the header that is included in service request determines that producer's virtual machine 1162 is to processService request. In addition, in some cases, service request can be identified specific overlay network,It can be used for being convenient to identify producer's virtual machine 1162 to process service request.
Which producer's virtual machine 1162 of identification and which virtual machine mapping thesaurus 1152 can storeA little relevant information of overlay network. In addition, virtual machine mapping thesaurus 1152 can be stored and be convenient toIdentify the information of the specific consumer's virtual machine 1142 of which consumer's main frame 1104 trustship. ThisIndividual Information Availability in definite consumer's main frame 1104 so that the response to service request to be provided.
As block of state 1132, block of state 1134 can comprise above about state mouldOne or more embodiments described in piece 262. In addition, block of state 1134 can be to leaseAgency 102 provides the status information relevant with producer's virtual machine 1162.
As indicated by the dotted line of consumer's main frame 1104 and producer's main frame 1106, realizeThe fundamental system of process disclosed herein can with form consumer (for example client) and the producerThe virtual machine of one or more overlay networks of (for example server or ISP) separates.In some cases, fundamental system (for example overlay network agency 1114 and 1116) can be by realityIt is now the part of the networking infrastructure of consumer's main frame 1104 and producer's main frame 1106. HaveProfit ground, in certain embodiments, by separating fundamental system and virtual machine, lease structure canBe implemented, maintain and revise, and not affecting overlay network.
In some embodiments, consumer's main frame 104 can trustship consumer virtual machine 1142With producer's virtual machine 1162. In addition, in some cases, producer's main frame 1106 can hold in the palmPipe consumer's virtual machine 1142 and producer's virtual machine 1162. And, although consumer is virtualMachine 1142 and producer's virtual machine 1162 are described to virtual machine, but they are not by as aboveDescribed restriction. In some embodiments, overlay network can be assigned with hardware resource and/or softPart resource, it is as the part of consumer's main frame 1104 and producer's main frame 1106 or by consumingPerson's main frame 1104 and producer's main frame 1106 are carried out. These resources can replace virtual machine make forProducer's system and Consumer System are embodied as to the part of overlay network.
In some cases, can about the one or more processes described in network environment 100 beforeBe performed or be modified to carry out about overlay network environment 1100. Therefore, for example, process900 can be performed to repartition the lease agency in overlay network environment 1100. AsTwo examples, process 700 and 800 can be performed with the rent in overlay network environment 1100The agency 102 that rents registers producer's virtual machines 1162.
Be used for the instantiation procedure of the service of accessing producer's virtual machine
Figure 12 illustrates for accessing the enforcement in the process 1200 of the service at producer's virtual machine placeScheme. Process 1200 can be by processing from the request of consumer's virtual machine with access by producingAny system of the service that person's virtual machine provides realizes. For example, process 1200 is all or part ofGround can be by consumer's main frame 1104, lease agency 102, overlay network agency 1114 and leaseRequester 1118 (only giving some instances) is realized. Although any amount of system is whole or portionPoint ground can implementation procedure 1200, but in order to simplify discussion, the part of process 1200 with reference toSpecific system is described.
In some cases, process 1200 can be used for making consumer's virtual machine can access by giving birth toThe service that product person system provides. Similarly, in some embodiments, process 1200 can be usedCan access in making Consumer System the service being provided by producer's virtual machine. But, for letterChange and discuss, the service of attempting to access producer's virtual machine about consumer's virtual machine was describedJourney 1200.
Process 1200 starts at piece 1202, at piece 1202, and for example consumer's main frame 1104 (examplesAs consumer's host A) overlay network agency 1114 from consumer's virtual machine 1142 (for exampleConsumer's virtual machine A ') receive the request of access in the service at producer place. Alternatively or thisOutward, the request receiving at piece 1202 can be the packet that is provided to the producer. For example,Packet can be service that use in conjunction with service or for being convenient to locate the producerThe data that use, consumer's virtual machine has been set up the access to this service. In some enforcementIn scheme, request can comprise have indication request or grouping from consumer's virtual machine 1142 phasesThe address A closing is addressed to the grouping of the header of virtual address X. What for example, receive dividesGroup can be as follows: and A ', X, data }, designation data sends to X from A '. The data field of groupingCan comprise request and/or the data of being convenient to carry out at producer's virtual machine 1162 places request or operation.In certain embodiments, consumer's virtual machine 1142 can not know that address X is virtuallyLocation, but can alternatively think that address X refers to physics producer system. And, as carried aboveArrive, in some embodiments, overlay network can comprise be different from or except consumer virtualConsumer System beyond machine. In such embodiments, piece 1202 can comprise from disappearingOn the person's of expense main frame 1104, realize or receive and visit by the Consumer System of consumer's main frame 1104 trustshipsAsk the request in the service at producer place. Similarly, producer's main frame can comprise and is different from or removesCan be configured to provide the producer beyond producer's virtual machine of service system to Consumer SystemSystem.
At decision block 1204, overlay network agency 1114 has determined whether the virtual machine with consumer1142 relevant any untapped producer's virtual machine leases. Determine whether the void with consumerThe 1142 relevant any untapped producer's virtual machine leases of plan machine can comprise accesses virtual machineMapping thesaurus 1150 is to determine whether the lease pond relevant to consumer's virtual machine 1142.In addition, in some cases, decision block 1204 can comprise determines whether lease pond comprises and disappearAny untapped lease of producer's virtual machine that the person's of expense virtual machine 1142 is relevant.
If overlay network agency 1114 determines do not have and consumer's virtual machine at decision block 12041142 relevant any untapped producer's virtual machine leases, lease requester 1130 and existPiece 1206 obtains multiple leases with access producer virtual machine. Retouch more in detail about Figure 14 belowState for obtaining one or more leases to access the mistake of one or more producer's virtual machinesThe example of journey.
At piece 1208, the institute that overlay network agency 1114 attempts to set up with obtaining at piece 1206 rentsThe connection of producer's virtual machine 1162 of renting. In some cases, piece 1208 can comprise storageThe information of lease relevant to producer's virtual machine of each lease, overlay network is acted on behalf of 1114 pinsProducer's virtual machine is successfully connected.
The company of producer's virtual machine of setting up and lease at piece 1208 overlay network agency 1114After connecing, if or overlay network agency 1114 define the void with consumer at decision block 1204Untapped producer's virtual machine lease that plan machine 1142 is relevant, process 1200 is proceededTo piece 1210. At piece 1210, overlay network agency 1114 selects the producer who leases virtualMachine 1162, the service of being asked by consumer's virtual machine 1142 from its access. Can use any classFor example round-robin method of the selection algorithm of type or the least recently used producer's virtual machine 1162 of selecting.In other cases, can be based on coming with the order being established being connected of producer's virtual machine 1162Select producer's virtual machine 1162. In other other situation, can select at random and/or baseSelect producer's virtual machine 1162 in the service request receiving at piece 1202. Alternatively, existUnder certain situation, overlay network act on behalf of 1114 addressable virtual machines mapping thesaurus 1150 so thatIn selecting producer's virtual machine 1142. For example, overlay network is acted on behalf of 1114 addressable lease ponds,It can be stored as the available producer's virtual machine 1162 of identification table, be stored in virtual machine mappingThesaurus 1150 places.
In some cases, overlay network agency 1114 can select to have the load lower than threshold valueProducer's virtual machine 1162 of leasing. Under these circumstances, overlay network agency 1114Can select randomly from having lower than producer's virtual machine 1162 of the load of threshold value. This is negativeLotus can refer to any measurable tolerance relevant with the utilization rate of producer's virtual machine 1162.For example, load can finger processor load, network connected load, with producer's virtual machine 1162The quantity that connects of consumer, minimum-time lag in connection, producer's virtual machine 1162The measurement of performance etc.
In addition, in some cases, each lease can be relevant to cost. For example, can be to oftenSecond use, every Mbytes to the data transmitting or process or to producer's virtual machine 1162Each computation cycles to consumer or the entity relevant to consumer charge. In such situationUnder, producer's virtual machine 1162 of leasing that overlay network agency 1114 can be based on availableThe producer's virtual machine 1162 that becomes original selection to lease.
At piece 1212, overlay network agency 1114 is used in the production of leasing that piece 1210 is selectedThe address of person's virtual machine 1162 replaces the life being for example included in, in request header (inner header)Product person's address (for example virtual address X). Therefore the grouping for example, receiving at piece 1202 is existingCan be as follows: A ', B ', data }. In some embodiments, piece 1212 can be optional. For example, in some embodiments, each leased producer's virtual machine 1162 canRelevant to port. Therefore not, to use the address of leased producer's virtual machine 1162 to replaceVirtual address X, grouping can be via the port relevant to leased producer's virtual machine 1162Be passed to the trustship producer. As the second example, grouping can be passed to producer's main frame,And producer's main frame can be determined leased producer's virtual machine based on for example virtual address X1162 to receive grouping.
At piece 1214, overlay network agency 1114 identifies and leased producer's virtual machine phaseThe producer's main frame 1106 closing. Can be stored in virtual machine mapping thesaurus 1150 places by accessState table identify producer's main frame 1106.
Overlay network agency 1114 is identified in piece 1214 in piece 1216 use and identifies producer masterThe outside header of machine 1106 and the consumer main frame 1104 relevant to consumer's virtual machine 1142Carry out package request. Therefore for example, grouping now can be as follows: { A, B{A ', B ', data } }, refer toShow that grouping sends to producer's host B from consumer's host A. Alternatively, in some cases,The identity of producer's main frame 1106 and consumer's main frame 1104 can with receive at piece 1202 pleaseThe request header of asking is included in together or is added to this request header, and grouping can be as follows:{ A, B, A ', B ', data }, instruction grouping is sent to producer's main frame from consumer's host AB. Under these circumstances, after the process relevant to piece 1216 completes, request comprises listIndividual header instead of two headers (it comprises inner header and outside header). In some enforcementIn scheme, piece 1216 can comprise and consumer's virtual machine 1142 that request is provided at piece 1202The identity of the overlay network relevant with producer's virtual machine 1162 of identifying at piece 1210. ThereforeFor example grouping can indication request to ' or the first overlay network relevant, with " or the second overlay network phaseRight, as follows: A, B, ', A ', B ', data }, instruction grouping sends to from consumer's host AProducer's host B, and service request send to from consumer's virtual machine be included in ' nerve of a coveringProducer's virtual machine in network. Advantageously, in some embodiments, by by overlay networkIdentity be included in service request together with and service request is made to response, address can be in differenceOverlay network in the middle of be reused. But, in each virtual machine and each system and uniqueIn the relevant situation in address, the identity that overlay network is provided can be optional.
In some embodiments, overlay network agency 1114 can be identified for from being stored in voidThe address information of the condition managing table access producer virtual machine at plan machine mapping thesaurus 1150 places.This condition management table can comprise producer's void of leasing of selecting at piece 1210 for accessingThe link information of plan machine 1162. In addition, condition management table can comprise that virtual address arrives the producerThe mapping of virtual machine address. In addition, condition management table can comprise that producer's virtual machine 1162 arrivesThe mapping of their corresponding producer's main frame. Shown in Figure 15 by virtual address map to rawThe example of such condition management table of product person virtual machine.
At piece 1218, overlay network agency 1114 carries to producer's main frame of identifying at piece 1214For request. This request can be provided to producer's main frame 1106 via network 202.
Instantiation procedure for the treatment of access in the request of the service at producer's virtual machine place
Figure 13 illustrates the process in the request of the service at producer's virtual machine place for the treatment of access1300 embodiment. Process 1300 can exist by processing the access receiving from consumer's main frameAny system of the request of the service at producer's virtual machine place is carried out. For example, process 1300 is completePortion or partly can be virtual by producer's main frame 1106, overlay network agency 1116 and the producerMachine 1162 (only giving some instances) is realized. Although any amount of system whole or in partCan implementation procedure 1300, but in order to simplify discussion, the part of process 1300 is with reference to specificSystem be described.
In some cases, process 1300 can be used for making producer's virtual machine can provide by disappearingThe service of the person's of expense system request. Similarly, in some embodiments, process 1300 can be usedIn making producer's system that the service by the request of consumer's virtual machine can be provided. But, for letterChange and discuss, by the producer's void about the access to the service by the request of consumer's virtual machine is providedPlan machine is described process 1300.
Process 1300 starts at piece 1302, at piece 1302, and for example producer's main frame 1106 (examplesAs producer's host B) overlay network agency 1116 receive request from consumer's main frame 1104.This request can be for example formatted as follows: and A, B, ', A ', B ', data }, instruction grouping is from disappearingThe person's of expense host A is received and for the production of person's host B, and service request is from consumer's voidPlan machine to being included in ' producer's virtual machine in overlay network. Under many circumstances, receiveRequest be the request of access by the service of producer's virtual machine 1162 trustships, the producer is virtualMachine 1162 is by 1106 trustships of producer's main frame. But in some cases, what receive pleaseAsk is to be alternately configured to provide data so that carry out service to producer's virtual machine 1162Packet, to the access of this service by the hosted consumption of consumer's main frame 1104Person's virtual machine 1142 is set up.
At piece 1304, overlay network agency 1116 determines that producer's virtual machine 1162 is (for example rawProduct person virtual machine B ') receive request. In some embodiments, piece 1304 can comprise byThe outside header decapsulation of the request that next comfortable piece 1302 receives. Under these circumstances, divideGroup can be as follows: and A ', B ', data }, instruction grouping receives and uses from consumer's virtual machine A 'In producer's virtual machine B '. Under these circumstances, overlay network act on behalf of 1116 addressable inStandard laid down by the ministries or commissions of the Central Government head is with identification producer virtual machine 1162. Alternatively or in addition, overlay network agency 1116Can identify producer's virtual machine 1162 to receive request by accessing outside header.
In some cases, overlay network agency 1116 is to producer's void of identifying at piece 1304Plan machine 1162 provides the request that there is no outside header. Therefore, grouping can be as follows: and A ', B ', numberAccording to. But in other cases, request can be provided as receiving from consumer's main frame 1104,Comprise and there is outside header, if together with being included in received request. Therefore, grouping canAs receive at piece 1302 (for example A, B, ', A ', B ', data }).
At piece 1308, overlay network agency 1116 is from being addressed to consumer's virtual machine 1142Producer's virtual machine 1162 receive response, it is produced the request receiving at piece 1302.In some embodiments, response can be addressed to different consumer's virtual machines. For example, comeCan be file to be transferred to another from producer's virtual machine disappear from the request of consumer's virtual machineThe request of the person's of expense virtual machine. This grouping can be similar to the grouping that receives at piece 1202 can be asUnder: B ', A ', data }, just (for example, in response to service request) of instruction producer virtual machine B 'Data are sent to consumer's virtual machine A '. At piece 1310, overlay network agency 1116 identificationsThe consumer main frame 1104 relevant to consumer's virtual machine 1142. Can be by access at virtual machineThe mapping table at mapping thesaurus 1152 places is identified consumer's main frame 1104. This mapping table canConsumer's virtual machine 1142 is mapped to consumer's main frame of trustship consumer virtual machine 11421104. Generally, each consumer's main frame 1104 can the multiple consumer's virtual machines 1142 of trustship.But in some cases, one or more consumer's main frames 1104 can the single consumption of trustshipPerson's virtual machine 1142.
Overlay network agency 1116 piece 1312 use identify consumer's main frames 1104 and with productionThe outside header encapsulation response of producer's main frame 1106 that person's virtual machine 1162 is relevant. Therefore,Grouping can be as follows: { B, A{B ', A ', data } }. As described about piece 1216, at someIn situation, the identity of consumer's main frame 1104 and producer's main frame 1106 can with at piece 1308The existing header of response receiving is included in together or adds existing header to. Therefore, grouping canAs follows: { B, A, B ', A ', data }. Similarly, as described in about piece 1216, responseOutside header or header (if only having a header to exist) can comprise the virtual machine with the producerThe identity of 1162 overlay networks relevant with consumer's virtual machine 1142. Therefore, grouping can be asUnder: B, A, ', B ', A ', data }.
Producer's main frame 1106 provides response at piece 1314 to consumer's main frame 1104. OneIn a little embodiments, producer's main frame 1106 can provide response via network 202.
In some embodiments, consumer's main frame 1104 can implementation 1300 or similarProcess is to provide to corresponding consumer's virtual machine 1142 response receiving at piece 1308. In additionIn some cases, the overlay network of consumer's main frame 1104 agency 1114 can identify for woundVirtual address (for example virtual address of the initial request being provided by consumer's virtual machine 1142 is providedX). Use this virtual address identifying, overlay network agency 1114 can be for woundThe virtual address that the initial request being provided by consumer's virtual machine 1142 is provided replaces in identification producesAddress in the response receiving of person's virtual machine 1162. Therefore be for example provided in groupingAfterwards, grouping can form consumer's virtual machine A ' as follows again: { X, A ', data }, instruction responseFrom system X instead of received from producer's virtual machine B ', in fact it can produce and be included inData in grouping.
For leasing the instantiation procedure of the access to producer's virtual machine
Figure 14 illustrates the enforcement side of the process 1400 for leasing the access to producer's virtual machineCase. Process 1400 can by obtaining accessing producer's virtual machine 1162, (for example the producer be virtualMachine B ') any system of lease realize. For example, process 1400 whole or in part can be byConsumer's main frame 1104, lease requester 1130, lease agency 102, overlay network agency1114 and leasing system 224 (only giving some instances) realize. Although any amount of system is completePortion or partly can implementation procedure 1400, but in order to simplify discussion, the part of process 1400Be described with reference to specific system.
Process 1400 starts at piece 1402, at piece 1402, for example lease request 1130 be withThe relevant consumer's virtual machine of overlay network 1142 produces and obtains producer's virtual machine 1162The request of lease. In the time that consumer's virtual machine 1142 initializes, the process relevant to piece 1402Can occur. Alternatively or in addition, piece 1402 can be in response to not and consumer's virtual machine 1142Determining of relevant untapped producer's virtual machine lease and occur (for example, as can with mistakeThe decision block 1204 that journey 1200 is relevant is determined).
At piece 1404, lease requester 1130 provides request to multiple lease agencies 102. ?In some embodiments, multiple leases agency 102 can comprise and is included in overlay network environmentThe subset of lease agency 102 in 1100. In addition, in some cases, request can be providedTo single lease agency 102.
At piece 1406, the each reception of lease requester 1130 from multiple lease agencies 102The producer virtual machine 1162 relevant with the overlay network identical with consumer's virtual machine 1142Identity, for consumer's virtual machine 1142, request produces at piece 1402. Generally, multiple rentsEach identity that single producer's virtual machine 1162 is provided of renting in agency 102. But oneIn a little situations, one or more lease agencies 102 can provide multiple producer's virtual machines 1162Identity. In addition, lease agency 102 may provide the identity of zero producer's virtual machine 1162.For example,, if the each producer virtual machine relevant to specific lease agency 102 1162 surpassesCross threshold value utilization rate and be utilized, lease agency 102 can not provide producer's virtual machine 1162Identity. Under these circumstances, lease agency 102 can to user for example keeper's warning withEach producer's virtual machine 1162 quilt profit on threshold value utilization rate that lease agency 102 is relevantWith.
In some embodiments, except receiving the identity of producer's virtual machine 1162,Also can receive the information of lease relevant to lease producer virtual machine 1162 at piece 1406. ThisInformation of lease can comprise address, the trustship producer void for accessing producer's virtual machine 1162Identity and/or the address of producer's main frame 1106 of plan machine 1162 and/or be assigned to consumptionPerson's virtual machine 1142 is for the production of the consumed money of the some of the lease of person's virtual machine 1162The identity of the consumed resource in source. This can be consumed resource and can comprise for measuring the producer virtualThe resource of any type of the leasing period of machine 1162. For example, resource can be consumed and one section can be comprisedTime, multiple operation, processed and/or from producer's virtual machine 1162 by producer's virtual machine 1162Receive data quantity or for measuring consumer's virtual machine 1142 to producer's virtual machineAny other tolerance of 1162 utilization.
At piece 1408, overlay network agency 1114 attempts to represent that consumer's virtual machine 1142 accessesEach producer's virtual machine 1162 of identifying at piece 1406. In some embodiments, piece 1408Can comprise and attempt to set up and being connected of each producer's virtual machine 1162. In other embodimentIn, piece 1408 can comprise attempt by with producer's virtual machine 1162 set up be connected comeCommunicate. At piece 1410, overlay network agency 1114 storage and each institute in lease pondThe relevant link information of connection of setting up. This link information can comprise for identify connect and asWhat uses the information connecting with access services. For example, link information can comprise as piece 1406The received any information of part, for example producer master of trustship producer virtual machine 1162The identity of the consumed resource of the identity of machine 1106. In some embodiments, lease pond and/Or link information can be stored in virtual machine mapping thesaurus 1150 places.
Be similar to process 300, in some embodiments, process 1400 can be used for more newbornThe lease of product person virtual machine 1162. In such embodiments, piece 1402 can comprise generationUpgrade the request of the lease of the existing or former existence of producer's virtual machine. Update request can be wrappedDraw together the identity of existing producer's virtual machine lease. In addition, piece 1406 can comprise that receiving renewal asksThe no instruction being granted of Seeking Truth, and in some cases, have with the extra permission that can consume resourceThe information of lease (for example leasing time or processor uses) of closing.
The example of condition management table
Figure 15 illustrates the condition management table that can be used for being convenient to communication in overlay network environment 1100A non-limitative example of 1500. Condition management table 1500 can comprise is convenient to the void consumerMany information of communication between plan machine 1142 and producer's virtual machine 1162. For example, state pipeReason table 1500 can comprise that source overlay address 1502, source cover port 1504, virtual address 1506Row with destination overlay address 1508. As some the table marks by condition management table 1500Topic (for example source overlay address 1502) instruction, address can be Internet protocol (IP)Location. But address is not limited as mentioned above and can takes other form or follows other associationView.
In the example of Figure 15, part and consumer's virtual machine shown in condition management table 1500A ' is relevant. As shown in the row in virtual address 1506, consumer's virtual machine A ' can useMultiple virtual address X and Y. In addition, each virtual address can with multiple destinations overlay addressRelevant, destination overlay address is relevant to multiple producer's virtual machines. For example, virtual address YCan be relevant with producer's virtual machine with address M ' to producer's virtual machine with address K '.Because multiple destination-address can be mapped to virtual address, so overlay network agency 1114Also can identify port, as indicated with by packet in covered in source in the row of port 1504Be directed to correct destination. Therefore, for service request being sent to producer's virtual machine K ',Overlay network agency 1114 replaces the address with K ' virtual address Y and uses port P1. ClassLike, for service request being sent to producer's virtual machine M ', overlay network agency 1114Address with M ' is replaced to virtual address Y and uses port P2.
Under many circumstances, can use the 3rd layer of open system interconnection (OSI) model and/Or the 4th layer realized overlay network. Generally, using the 3rd layer and/or the 4th layer to realize coveringIn the situation of network, networking infrastructure is not known the application of communicating by letter in the middle of whole network. ThisIt is more challenging can making balancing the load, because a priori expect that how many data will be consumerIt is more difficult between virtual machine and producer's virtual machine, to be transmitted.
A solution is the association that creates the 7th layer of realization that uses at least in part osi modelView perception load balancing system. In such system, overlay network agency 1114 can be oneIn a little embodiments, check that the grouping of being transmitted by consumer's virtual machine 1142 is to determine consumer's voidPlan machine 1142 attempt the type of service of access or the protocol type relevant to service request andWhether service request is for single service or multiple service of identical or different type. Therefore for example,If determining consumer's virtual machine, overlay network agency 1114 just asking using HTTP requestThe access of website, and each HTTP request is for the different characteristic of different webpage or webpage,Overlay network agency 1114 can send to different requests different producer's virtual machines1162 for the treatment of and consumer's virtual machine 1142 do not know request by different system processing.Therefore in some cases, single connection can be decomposed by multichannel on one group of connection. Nerve of a coveringNetwork agency 1114 can be separated to a series of requests multiple producer's virtual machines 1162 please to increaseAsk processed efficiency or speed. In addition, if overlay network agency 1114 determines consumerVirtual machine 1142 produces a lot of loads on producer's virtual machine 1162, overlay network agency1114 commutative producer's virtual machines 1162, it processes request and/or virtual multiple producersDetach request in the middle of machine 1162. Exchange producer virtual machine 1162 can pass through in some casesMake that request identifier is relevant to service request to be realized. For example,, as the request mark at Figure 15Shown in the row of symbol 1510, the grouping with request identifier l1 can have the void with the producerThe virtual address X of the address exchange of plan machine B '. Equally, there is the grouping of request identifier l2Can there is the virtual address X exchanging with the address of producer's virtual machine D '.
Can embodiment of the present disclosure be described in view of clause below:
Clause 1: a kind of lease to the access of producer's system to obtain by the holder of producer's systemThe method of the access of the service of pipe, method comprises:
By comprising the Consumer System of one or more processors:
Produce lease request to access the service of one of multiple producer's systems;
Provide lease request to multiple lease agencies;
Receive the identity of one or more producer's systems from independent lease agency;
Attempt to initiate and being connected of at least some producer's systems of being identified by multiple leases agency;And
In response to first producer who successfully sets up with from least some producer's systems beThe connection of system, the service that access is provided by first producer's system.
Clause 2: the method for clause 1, wherein receives one or more from independent lease agencyThe identity of producer's system comprises from least two leases of multiple lease agencies to be acted on behalf of and receives notWith the identity of producer's system.
Clause 3: the method for clause 1 to 2, wherein at least some of multiple leases agency are independentLease agency relevant to one group of non-equivalent producer's system.
Clause 4: the method for clause 1 to 3, wherein from independent lease agency receive one orThe identity of multiple producer's systems comprise receive at least some producer's systems of identifying canConsumption resource.
Clause 5: the method for clause 4, wherein can consume resource and can comprise lease time, one groupComputation cycles, money budget or the disk storage relevant to the use of identified producer's system,And wherein the lease time comprises the clothes of the authorized access of Consumer System at producer's system placeA period of time of business.
Clause 6: the method for clause 5, wherein in response to producing from meeting first of lease threshold valueThe consumed resource of the some of the consumed resources left of person's system, method also comprises:
Determine and will can not disappear in the existing service request of the service at the first producer place to accessThe probability completing before expense resource expires;
Meet and upgrade threshold value in response to definite probability, the more fresh tenancy request that produces is to access firstThe service at producer's system place; And
Provide more fresh tenancy request to the multiple rents of identity from first producer's system is providedThe lease agency who acts on behalf of rents.
Clause 7: the method for clause 6, wherein in response to providing more fresh tenancy to ask to lease agencyAsk, method also comprises the consumed resource of the renewal quantity of first producer's system that receives.
Clause 8: the method for clause 6 to 7, wherein rent in response to providing to upgrade to lease agencyThe request of renting, method also comprises the consumed resource of the new quantity that receives new production person's system, new lifeProduct person system is different from first producer's system.
Clause 9: the method for clause 1 to 8, wherein in response to successfully set up with from leastThe connection of first producer's system of some producer's systems, method also comprises from first producerSystem obtains metadata, and wherein at least some metadata comprise relevant with first producer's systemStatus information.
Clause 10: the method for clause 9, its also comprise provide at least some metadata to fromMultiple lease agencies' of the identity of first producer's system lease agency is provided.
Clause 11: the method for clause 9 to 10, its also comprise to multiple leases agency provide toFewer metadata.
Clause 12: the method for clause 1 to 11, wherein in response to successfully set up with from extremelyThe connection of second producer's system of fewer producer's systems, access is in second producer's systemThe second service at place.
Clause 13: the method for clause 12, wherein service and second service are identical services.
Clause 14: the method for clause 12 to 13, is wherein used data and the use of service accessThe data difference of second service access.
Clause 15: a kind of lease to the access of producer's system to obtain by producer's systemThe system of the access of the service of trustship, system comprises:
Consumer System, it comprises one or more processors, Consumer System also comprises leaseRequester, it is configured to:
Produce the service of lease request with access producer system;
Provide lease request to multiple lease agencies; And
At least some from multiple lease agencies receive the identity of producer's system;
Consumer System also comprises link block, its be configured to attempt initiate with by multiple lease generationThe connection of at least some producer's systems of reason identification; And
Consumer System also comprises resource requestor, and it is configured in response to link block successfullySet up and access in first of at least some producer's systems with being connected of first producer's systemThe service at producer's system place.
Clause 16: the system of clause 15, wherein lease requester and be also configured to receive at least oneThe lease time of a little producer's systems of identifying, the lease time comprises that Consumer System is authorizedAccess is in a period of time of the service at producer's system place.
Clause 17: the system of clause 16, wherein link block is also configured to first producerSystem provides the lease time relevant to first producer's system.
Clause 18: the system of clause 16 to 17, wherein:
Resource requestor is also configured in response to first producer's system from meeting lease threshold valueRemaining a certain amount of lease time of lease time and determine access at the first producer placeThe existing service request of service by the probability not completing before the lease time expires; And
Lease requester is also configured to:
In response to definite probability meet upgrade threshold value and the more fresh tenancy request that produces with access theThe service at one producer's system place; And
Provide more fresh tenancy request to the multiple rents of identity from first producer's system is providedThe lease agency who acts on behalf of rents.
Clause 19: the system of clause 15 to 18, it also comprises block of state, it is configured to:
Obtain metadata from first producer's system, wherein at least some metadata comprise and firstThe status information that producer's system is relevant; And
Provide at least some status informations to identity many from first producer's system is providedIndividual lease agency's lease agency.
Clause 20: a kind of lease to the access of producer's system to provide by producer's systemThe system of the access of the service of trustship, system comprises:
The first lease agency, it comprises the first leasing system, the first lease agency is comprising calculatingIn the computer system of machine hardware, realize, the first leasing system is configured to:
Receive first from Consumer System and ask to lease the access to service, service is by multiple lifesProduct person system provides;
At least in part based on relevant to independent producer's system of more than first producer's systemProducer's status information identify the first producer system from more than first producer's systemSystem, wherein more than first producer's system comprises the first subset of multiple producer's systems; And
In response to identifying first producer's system, provide the first producer system to Consumer SystemThe identity of system; And
The second lease agency, it comprises the second leasing system, the second leasing system is configured to:
Receive second from Consumer System and ask to lease the access to service;
At least in part based on relevant to independent producer's system of more than second producer's systemProducer's status information identify the second producer system from more than second producer's systemSystem, wherein more than second producer's system comprises the second subset of multiple producer's systems, multipleThe second subset of producer's system is not identical with the first subset of multiple producer's systems; And
In response to identifying second producer's system, provide the second producer system to Consumer SystemThe identity of system, thus Consumer System can be produced from least the first producer's system and secondThe access of person's system request to service, thus, the identification of producer's system is to be distributed at least theDistributed process between one lease agency and the second lease agency.
Clause 21: the system of clause 20, wherein the first leasing system is also configured to consumerSystem provided for the first lease time, and the first lease time comprised the authorized access of Consumer System theA period of time of one producer's system, and wherein the second leasing system is also configured to consumerSystem provided for the second lease time, and the second lease time comprised the authorized access of Consumer System theA period of time of two producer's systems.
Clause 22: the system of clause 20 to 21, wherein:
The first lease agency also comprises the first block of state, and the first block of state is configured to:
Receive the first new state information more of first producer's system; And
At least in part based on first more new state information upgrade first producer's systemProducer's status information; And
The second lease agency also comprises the second block of state, and the second block of state is configured to:
Receive the second new state information more of second producer's system; And
At least in part based on second more new state information upgrade second producer's systemProducer's status information.
Clause 23: the system of clause 22, wherein first more new state information and second is moreNew state information is received from Consumer System.
Clause 24: the system of clause 22, wherein first more new state information from the first productionPerson's system is received, and second more new state information is received from second producer's system.
Clause 25: the system of clause 20 to 24, wherein the first lease agency is also configured to:
Receive the first lease update request to obtain first producer's system from Consumer SystemThe extra lease time;
Producer's status information based on first producer's system determines whether at least in partGrant the first lease update request; And
Grant the first lease update request in response to determining, provide the first production to Consumer SystemFirst of person's system is leased update time.
Clause 26: the system of clause 25, wherein in response to determining that not granting the first lease upgradesRequest, the first lease agency is also configured to:
At least in part based on relevant to each producer's system of more than first producer's systemProducer's status information identify the 3rd producer system from more than first producer's systemSystem; And
In response to identifying the 3rd producer's system, provide the 3rd producer system to Consumer SystemThe identity of system.
Clause 27: a kind of for divide producer's system in the middle of multiple lease agency plantsMethod, method comprises:
By comprising the first lease agency plant of one or more processors:
Determine the first group producer system available in very first time section;
Be identified in second group of producer's system that the second time period can use, wherein the second time period existedBefore very first time section, occur;
Calculate quantitative between first group of producer's system and second group of producer's systemDifference;
Determine whether difference meets threshold value; And
Meet threshold value in response to definite difference:
Distribute the different subsets of first group of producer's system by the lease agency plant to independentIn the middle of multiple lease agency plants, divide first group of producer's system; And
For the independent rent of the multiple lease agency plants except the first lease agency plantThe agency plant of renting, provides from first group of producer's system assignment to rent to lease agency plant separatelyRent the identity of subset of producer's system of agency plant so that from first group of producer's systemDifferent producer's systems can provide service to different Consumer Systems, thus, multipleThe division of first group of producer's system in the middle of lease agency plant realizes different consumers and isThe balance of the distribution of the service being provided by first group of producer's system in the middle of system.
Clause 28: the method for clause 27, it also comprises to from multiple lease agency plantsOne group of lease agency plant notifies the first lease agency plant just dividing first group of producer's system,Make this group lease agency plant suppress to attempt to divide first group of producer's system, the first lease simultaneouslyAgency plant is just being divided first group of producer's system.
Clause 29: the method for clause 27 to 28, wherein second group of available producer's system andTwo time periods comprised in the time that the first lease agency plant is activated after inactive period guaranteesDifference meets the value of threshold value.
Clause 30: the method for clause 27 to 29, wherein first group of producer's system is included inThe sum of the producer's system that can use of one time period, and wherein second group of producer's system comprisesThe sum of the producer's system that can use in the second time period.
Clause 31: the method for clause 27 to 30, it also comprises:
Receive at least one in multiple lease agency plants at the 3rd disabled finger of time periodShow;
Be identified in the 3rd group of producer's system that the 3rd time period can use;
Be identified in one group of lease agency plant that the 3rd time period can use;
This group that can use in the 3rd time period is divided the 3rd group of producer in the middle of leasing agency plantSystem; And
For the independent lease agency in this group lease agency plant that can use in the 3rd time periodSystem, provides the son from producer's system of the 3rd group of producer's system to lease agency plantThe identity of collection, the subset of producer's system is the institute based on second group of producer's system at least in partState division and determined.
Clause 32: the method for clause 31, wherein the 3rd group of producer's system and first group of productionPerson's system is identical system.
Clause 33: the method for clause 27 to 32, wherein in the middle of multiple lease agency plants, drawDivide and comprise first group of producer's system in first group of available producer's system of very first time sectionBe divided into the non-overlapped subset of producer's system.
Clause 34: the method for clause 27 to 33, it also comprises:
Determine from the first subset of producer's system that is assigned to the first lease agency plantProducer's system be no longer available; And
The counting that upgrades available producer's system is no longer available with reflection producer system, itsIn determine in the available first group of producer's system of very first time section at least in part based on availableThe counting of producer's system.
Clause 35: the method for clause 34, wherein determine that producer's system is no longer available bagDrawing together and receiving producer's system from Consumer System is unresponsive notice.
Clause 36: the method for clause 34 to 35, wherein determine that producer's system is no longer availableComprise determine producer's system to the status request being provided by the first lease agency plant without insteadShould.
Clause 37: the method for clause 27 to 36, it also comprises:
Receive to the request of the first lease agency plant registration from producer's system;
Determine whether producer's system is included in the life that is assigned to the first lease agency plantIn the subset of product person system; And
Be assigned to the first lease agency plant in response to determining that producer's system is included inIn the subset of producer's system, in the first lease agency plant place registration producer system.
Clause 38: the method for clause 37, is not wherein included in response to definite producer's systemIn the subset of producer's system that is assigned to the first lease agency plant, method also comprises:
Identification from be assigned to producer's system multiple lease agency plants second leaseAgency plant; And
The identity of the second lease agency plant is provided to producer's system.
Clause 39: the method for clause 27 to 38, wherein from the consumption of different Consumer SystemsPerson's system is the different producer's systems from multiple producer's systems in different time period access.
Clause 40: a kind of for divide the system of producer's system in the middle of multiple lease agencies,System comprises:
Multiple lease agencies, it comprises the first lease agency, wherein from multiple lease agencies'Separately lease agency comprises one or more processors, and the first lease agency also comprises and being configured to reallyFix on one group of available producer's system and available in this group of the second time period of very first time sectionWhether the difference between producer's system meets the dividing system of threshold value; And
Dividing system, it is also configured to meet threshold value in response to definite difference:
The counting of the quantity that the lease based on being included in multiple lease agencies is acted on behalf of is by thisGroup producer system divides becomes multiple subsets of producer's system to attempt to make the user by differentSystem is roughly evenly distributed in multiple producer's systems to the access of multiple producer's systems and works asIn; And
For multiple lease agencies' independent lease agency, provide and be included in life to lease agencyThe identity of the producer's system in one of subset of product person system.
Clause 41: the system of clause 40, wherein multiple subsets of producer's system are corresponding to quiltBe included in the counting of the quantity of the lease agency in multiple lease agencies.
Clause 42: the system of clause 40 to 41, dividing system is also configured to independent leaseAgency provides the different subsets that are included in from producer's system of the subset of producer's systemIn the identity of producer's system.
Clause 43: the system of clause 40 to 42, wherein dividing system is also configured to multiple rentsThe one or more lease agencies that rent in agency, do not comprise the first lease agency, and warning first is rentedThe dividing system of acting on behalf of of renting is just being divided this group producer system.
Clause 44: the system of clause 40 to 43, wherein in response to receiving from multiple leasesThe second lease agency of agency is just dividing the warning of this group producer system, the first lease agency'sDividing system is also configured to suppress to divide this group producer system.
Clause 45: the system of clause 40 to 44, wherein the first lease agency also comprises registration mouldPiece, it is configured to:
Receive the request to the first lease agency of trademark registration from producer's system;
Determine whether producer's system is included in the producer who is assigned to the first lease agencyIn the subset of system;
In response to determining that producer's system is included in the production that is assigned to the first lease agencyIn the subset of person's system, register producer's system the first lease Agency; And
In response to determining that producer's system is not included in the production that is assigned to the first lease agencyIn the subset of person's system, identification from be assigned to producer's system multiple leases agency theTwo lease agencies, and the second lease agency's identity is provided to producer's system.
Clause 46: a kind of for divide the method for lease in the middle of multiple lease agency plants,Method comprises:
By comprising the first lease agency plant of one or more processors:
Identify one group of available producer's system;
Multiple leases that definite independent producer's system that this is organized to available producer's system can be used;
By being distributed from right from the independent lease agency plant of multiple lease agency plantsThe subset of the lease of multiple leases that producer's system can be used is separately comeIn the middle of system, divide the multiple leases that can use independent producer's system; And
For the independent lease agency plant of multiple lease agency plants, carry to lease agency plantFor the subset that is assigned to the lease of leasing agency plant, thus, at multiple lease agency plantsThe division of the central multiple leases that can use independent producer's system realizes multiple leases agenciesThe balance of the live load in the middle of system.
Clause 47: the method for clause 46, wherein lease separately agency plant and be assigned with leaseNon-overlapped subset.
Clause 48: the method for clause 46 to 47, lease is provided wherein to lease agency plantSubset does not comprise to the first lease agency plant provides the lease that is assigned to lease agency plantSubset.
Clause 49: the method for clause 46 to 48, provide wherein to lease agency plant and be assigned withComprise to lease agency plant and providing for multiple lifes to the subset of lease of lease agency plantIndependent producer's system of product person system is assigned to multiple leases of lease agency plant.
Clause 50: the method for clause 46 to 49, provide wherein to lease agency plant and be assigned withComprise to lease agency plant and provide and be assigned to rent to the subset of lease of lease agency plantThe rent identifier of independent lease of agency plant.
Clause 51: the method for clause 46 to 50, wherein in the middle of multiple lease agency plants, drawPoint to independent producer's system can with multiple leases be included in the middle of multiple lease agency plantsIn fact equally divide the multiple leases that can use independent producer's system.
Clause 52: the method for clause 46 to 51, wherein multiple lease agency plants comprise one groupThe subset of lease agency plant.
Clause 53: the method for clause 52, wherein multiple lease agency plants comprise the first leaseAgency plant.
Clause 54: the method for clause 46 to 53, wherein this organize that available producer's system comprises canBy the subset of producer's system.
Clause 55: the method for clause 46 to 54, wherein said multiple lease agency plants work asMultiple leases that middle division can be used independent producer's system are in response to organize the available producer at thisIn the middle of system, the quantity of available total lease relatively changes in very first time section and the second time periodThreshold quantity and occurring.
Clause 56: a kind of for selecting producer's system to provide right from multiple producer's systemsThe method of the access of service, method comprises:
By comprising the first lease agency plant of one or more processors:
Receive the status information of multiple producer's systems, wherein the independent life of multiple producer's systemsProduct person system and right to choose re-correlation, and wherein at least some status informations reflect by least oneDetermining of the state of individual Consumer System at least one producer's system;
Status information based on received is revised the life of multiple producer's systems at least in partProduct person status information, producer's status information of revising comprises about mutual with Consumer SystemOne group of tolerance of the performance of effect and multiple producer's systems;
The first tolerance based on from this group tolerance is revised and multiple producers at least in partThe selection weight that system is relevant;
Receive request access to one of multiple producer's systems with lease from Consumer System; WithAnd
Request in response to receiving the access of lease to one of multiple producer's systems:
At least in part based on relevant to the independent producer's system in multiple producer's systemsCorresponding selection weight selects producer's system to serve consumer from multiple producer's systemsSystem;
To the Consumer System that the request of leasing the access to one of multiple producer's systems is providedThe identity of selected producer's system is provided; And
Provide the producer state letter relevant to selected producer's system to Consumer SystemBreath, wherein at least some producer's status informations obtain from the second Consumer System.
Clause 57: the method for clause 56, wherein multiple producer's systems comprise producer's systemSubset.
Clause 58: the method for clause 56 to 57, wherein amendment is relevant to multiple producer's systemsThe described selection of selection weight warning producer system select the probability of specific producer's system.
Clause 59: the method for clause 56 to 58, wherein status information is from least one consumerSystem receives.
Clause 60: the method for clause 59, wherein at least one Consumer System comprises provides rentThe rent Consumer System of request of the access to one of multiple producer's systems.
Clause 61: the method for clause 56 to 60, wherein status information is from multiple producer's systemsReceive.
Clause 62: the method for clause 56 to 60, wherein status information is from the second lease agency systemSystem receives.
Clause 63: the method for clause 56 to 63, it also comprises:
Determine and revise accordingly for first producer's system from multiple producer's systemsSelect weight whether to meet and remove threshold value; And
Select weight whether to meet and remove threshold value in response to revising, from available producer's systemList removes the identity of first producer's system, the list of available producer's system comprise corresponding toFrom the available producer's system of producer's system that can be used for multiple producer's systems of selectingIdentity.
Clause 64: the method for clause 63, wherein said from multiple producer's systems selection productionPerson's system comprises from the list of available producer's system selects producer's system.
Clause 65: the method for clause 63 to 64, it also comprises:
Follow the tracks of the counting of the producer's system removing from the list of available producer's system; And
Meet and reduce threshold value in response to counting, in the middle of multiple lease agency plants, repartitioning canUse producer's system, multiple lease agency plants comprise the first lease agency plant.
Clause 66: the method for clause 63, wherein removes threshold value based on multiple producer's systemsThe mean value of the first tolerance.
Clause 67: the method for clause 56 to 66, is wherein provided to the production of Consumer SystemPerson's status information comprises the adoptable independently one group of producer's state of the first lease agency plantInformation, and wherein independently this group producer status information make the Consumer System can be from multipleProducer's system of leasing is selected still less to utilize with other producer's systematic comparison of leasingProducer's system.
Clause 68: the method for clause 56 to 67, wherein select to produce from multiple producer's systemsPerson's system also comprises first group of life selecting to have the load lower than second group of producer's systemOne of product person system.
Clause 69: the method for clause 68, wherein selected producer's system is not with minimum negativeLotus is relevant, thereby reduces the frequency of the appearance of load vibration.
Clause 70: a kind of for selecting producer's system to provide right from multiple producer's systemsThe system of the access of service, system comprises:
The first lease agency of multiple leases agency, the first lease agency comprises and is configured to realize shapeOne or more processors of morphotype piece and leasing system;
Block of state is configured to:
Receive the status information of first producer's system of multiple producer's systems, from multiple lifesIndependent producer's system and the right to choose re-correlation of product person system; And
Status information based on received is revised and first producer's system phase at least in partThe selection weight of closing; And leasing system is configured to:
Receive the request of one of multiple producer's systems of access; And
Phase based on relevant to independent producer's system of multiple producer's systems at least in partShould select weight to come to select producer's system from multiple producer's systems, comprise the first producer systemSystem, with the request of serving.
Clause 71: the system of clause 70, wherein status information the first lease Agency by rentingThe system of renting receives, and wherein leasing system is also configured to provide status information to block of state.
Clause 72: the system of clause 70 to 71, wherein block of state is also configured to:
Determine whether first producer's system is assigned to the first lease agency; And
Be not assigned to the first lease agency in response to definite first producer, block of state is also joinedBe set to:
Identification is assigned to the second lease agency of first producer; And
Provide received status information to the second lease agency.
Clause 73: the system of clause 70 to 72, wherein block of state is also configured to:
Determine the whether satisfied threshold value that removes of the selection weight of revising; And
In response to revised selection weight meet remove threshold value and make first producer's system withMultiple producer's system independence connection.
Clause 74: the system of clause 73, wherein the first lease agency also comprises dividing system,It is configured in response to multiple producer's systems and the satisfied multiple producer's systems that reduce threshold valueHave nothing to do and repartition multiple producer's systems in the middle of multiple leases agencies.
Clause 75: the system of clause 70 to 74, wherein leasing system is also configured to providing rightThe Consumer System of accessing the request of one of multiple producer's systems provides the body of producer's systemPart.
Clause 76: the system of clause 70 to 75, wherein selected producer's system comprisesOne producer's system.
Clause 77: a kind of non-interim physical computer storage that comprises computer executable instructionsDevice, executable instruction guides computing system from multiple in the time realizing in one or more processorsProducer's system selects producer's system so that the visit to service to be provided by least following operationAsk:
In response to the first producer system for multiple producer's systems the first lease AgencySystem receives status information, determines whether first producer is the first subset of producer's systemMember, the first subset of producer's system is relevant to the first lease agency, wherein from multiple lifesIndependent producer's system and the right to choose re-correlation of product person system, multiple producer's system divides becomeMultiple subsets of producer's system;
Be the member of the first subset of producer's system in response to definite first producer's system, repairChange the selection weight relevant to first producer's system; And
In response to the request that receives access producer system, at least in part based on come spontaneousThe selection weight that producer's system of the subset of product person system is relevant is come from the of producer's systemOne subset is selected the supplier of second producer's system with the request of serving.
Clause 78: the non-interim physical computer memory of clause 77, wherein second producerSystem and first producer's system are identical.
Clause 79: the non-interim physical computer memory of clause 77 to 78, wherein in response toDetermine that first producer's system is not the member of the first subset of producer's system, the method is also wrappedDraw together:
Identification comprises the second subset of producer's system of first producer's system;
The second lease agency that identification is relevant to the second subset of producer's system; And
Provide status information to the second lease agency.
Clause 80: the service that a kind of access is provided by the producer's virtual machine in overlay networkMethod, the method comprises:
By comprising the Consumer System main frame of one or more processors, Consumer System main frameBe configured to the one or more consumer's virtual machines of trustship, wherein at least one consumer's virtual machine withThe first overlay network is relevant;
Receive the request of access in the service of producer's system, consumer from consumer's virtual machineVirtual machine is by Consumer System hosting, and wherein request comprises inner header, inner header bagDraw together consumer virtual machine address and the target virtual address relevant to consumer's virtual machine;
Access the lease pond relevant to consumer's virtual machine, lease pond comprises that to represent consumer virtualOne group of producer's virtual machine of leasing of machine lease;
Select from lease pond producer's virtual machine of leasing, from its access services;
Replace interior with producer's virtual machine address relevant to leased producer's virtual machineTarget virtual address in standard laid down by the ministries or commissions of the Central Government head;
Identify the producer system host relevant to leased producer's virtual machine, producer systemSystem host configuration becomes the one or more producer's virtual machines of trustship, wherein at least one producer's voidPlan machine is relevant to the first overlay network;
With comprise the producer system host address relevant to producer's system host and with consumptionThe outside header package request of the Consumer System host address that person's system host is relevant; And
Provide request via network to producer's system host, thereby make producer's system host energyEnough processing asked.
Clause 81: the method for clause 80, wherein select producer's virtual machine of leasing to comprise:
Determine whether lease pond comprises producer's virtual machine of leasing that at least one is available; WithAnd
In response to determining that lease pond comprises producer's virtual machine of leasing that at least one is available,That selects available producer's virtual machine of leasing removes the available of selection from lease pond in the lumpProducer's virtual machine of leasing.
Clause 82: the method for clause 81, wherein in response to determining that lease pond does not comprise availableProducer's virtual machine of leasing, the method also comprises:
Represent that consumer's virtual machine obtains being included in one group of producer in the first overlay networkThe lease of virtual machine;
Independent producer's virtual machine of producer's virtual machine of initiating and lease from this groupConnect; And
The connection of setting up for independent success, adds corresponding producer's virtual machine to lease pond,
Wherein select producer's virtual machine of leasing also to comprise to select to be added to lease pondOne of producer's virtual machine and from lease pond remove selected producer's virtual machine.
Clause 83: the method for clause 82, wherein obtains the lease to this group producer virtual machineComprise:
Produce and obtain being included in the producer in the first overlay network for consumer's virtual machineThe request of the lease of virtual machine;
Provide this to ask to obtain the lease of producer's virtual machine to one group of lease agency; And
For at least some the lease agencies in this group lease agency, receive producer's virtual machineInformation of lease, thereby make can be initiated with being connected of producer's virtual machine.
Clause 84: the method for clause 83, wherein this group lease agency is included in the rent in networkRent agency subset.
Clause 85: the method for clause 80 to 84, it also comprises:
Receive the response to service request from producer's system host;
Remove by removing the outside header of response that packing service responds to obtain to responseThe access of inner header;
Inside header based on response is determined recipient consumer's virtual machine, recipient consumerVirtual machine is one of consumer's virtual machine by Consumer System hosting; And
The service response of removing encapsulation is provided to recipient consumer's virtual machine.
Clause 86: the method for clause 85, wherein recipient consumer's virtual machine and consumer's voidPlan machine is identical.
Clause 87: the method for clause 85 to 86, it also comprises:
The inside header identification source virtual address relevant to source producer's virtual machine based on response,Source producer's virtual machine is relevant to response; And
With source virtual machine address replace included in standard laid down by the ministries or commissions of the Central Government head with source producer's virtual machine phaseThe address of closing.
Clause 88: the method for clause 87, wherein source producer virtual machine is rented corresponding to selected instituteProducer's virtual machine of renting, source virtual address is corresponding to target virtual address, and recipient disappearsThe person's of expense virtual machine is corresponding to consumer's virtual machine.
Clause 89: the method for clause 80 to 88, wherein at least one consumer's virtual machine andTwo overlay networks are relevant.
Clause 90: the method for clause 80 to 89, wherein at least one producer's virtual machine andTwo overlay networks are relevant.
Clause 91: the method for clause 80 to 90, it also comprises:
Second request that receives is with access services;
Whether the load of determining producer's virtual machine of leasing meets load threshold value; And
Meet load threshold value in response to the load of determining producer's virtual machine of leasing:
Select second producer's virtual machine of leasing from lease pond, from its access services; And
Second producer's system host of producer's virtual machine of leasing to trustship second providesThe second request.
Clause 92: the method for clause 91, wherein in response to determining that the producer who leases is virtualThe load of machine meets load threshold value, and the method also comprises and is terminated to leased producer's virtual machineConnection.
Clause 93: a kind of for accessing by the service providing the producer of overlay networkSystem, this system comprises:
Consumer System main frame, it comprises one or more processors, Consumer System main frame is joinedBe set to the one or more consumers of trustship, Consumer System main frame comprises:
Mapping thesaurus, it is configured to store the mapping of the producer to producer's system host; WithAnd
Overlay network agency, it is configured to:
From received the service of access the producer by the consumer of Consumer System hostingRequest;
Select the producer who leases, from its access services, the producer who leases represents consumptionPerson is leased;
Access map thesaurus is with the identification producer system master relevant to the producer who is leasedMachine, producer's system host is configured to the one or more producers of trustship; And
Request is sent to producer's system host.
Clause 94: the system of clause 93, wherein:
Mapping thesaurus is also configured to the lease pond that storage is relevant to consumer, and lease pond comprises generationOne group of producer who leases of table consumer lease; And
Overlay network agency be also configured to:
Determine whether lease pond comprises the producer who leases that at least one is available; And
In response to determining lease pond to comprise the producer who leases that at least one is available from canWith the producer who leases select the producer who leases, from its access services.
Clause 95: the system of clause 94, wherein in response to determining that lease pond does not comprise at least oneThe individual available producer who leases, overlay network agency be also configured to:
For consumer produces the request that obtains the lease to the producer;
Provide this to ask to obtain the lease to the producer to one group of lease agency; And
For at least some the lease agencies in this group lease agency, receive the producer's leaseInformation.
Clause 96: the system of clause 95, wherein shine upon thesaurus and be also configured to information of leaseBe stored in the lease pond relevant to consumer.
Clause 97: the system of clause 93 to 95, wherein overlay network agency is also configured to:
Receive the response to request from producer's host computer system;
Inside header based on response is determined recipient consumer, and recipient consumer comprises and disappearingFei Zhe; And
Provide response to consumer.
Clause 98: the system of clause 97, wherein overlay network agency is also configured to:
Identify the source virtual address relevant to the leased producer; And
Before providing response to consumer, replace and being included in standard laid down by the ministries or commissions of the Central Government head by source virtual addressThe relevant address of the producer to leased.
Clause 99: the system of clause 93 to 97, wherein overlay network agency is also configured to bagDraw together the producer system host address relevant to producer's system host and with Consumer System masterThe outside header package request of the Consumer System host address that machine is relevant.
Clause 100: a kind of non-interim physical computer storage that comprises computer executable instructionsDevice, indicates computing system to pass through at least when executable instruction is carried out in one or more processorsThe service being provided by the producer's virtual machine in overlay network is provided in following operation:
Receiving access in response to the consumer's virtual machine from by Consumer System hosting is giving birth toThe request of the service at product person system place, this request comprises target virtual address, from consumer's voidProducer's virtual machine of leasing is selected in the lease pond that plan machine is relevant, from its access services, and leasePond comprises the link information of the producer's virtual machine that represents the lease of consumer's virtual machine;
Replace and asking with producer's virtual machine address relevant to leased producer's virtual machineTarget virtual address in the header of asking;
Determine the producer system host relevant to leased producer's virtual machine; And
Make request be sent to producer's virtual machine that producer's system is leased to be provided to, fromAnd make to lease producer's virtual machine and can process the request of access services.
Clause 101: the non-interim physical computer memory of clause 100, wherein from consumptionThe lease pond that person's virtual machine is relevant selects producer's virtual machine of leasing to comprise:
Determine whether lease pond comprises at least one institute that the current consumer's of can't help virtual machine usesThe link information of producer's virtual machine of lease; And
At least one in response to determining that lease pond does not comprise that the current consumer's of can't help virtual machine usesIndividual leased producer's virtual machine, computer executable instructions also comprises instruction computing system:
Represent that consumer's virtual machine obtains being included in one group of producer's void in overlay networkThe lease of plan machine;
Independent producer's virtual machine of producer's virtual machine of initiating and lease from this groupConnect; And
The connection of setting up for success, adds the link information of corresponding producer's virtual machine toLease pond.
Clause 102: the non-interim physical computer memory of clause 101, wherein from consumptionThe lease pond that person's virtual machine is relevant selects producer's virtual machine of leasing also to comprise selection productionOne of person's virtual machine, its link information is added to lease pond.
Term
In whole this discloses, multiple computing systems are described. The description of these systems unawarenessWish limits instruction of the present disclosure or applicability. For example, custom system as herein described can be commonComprise any computing equipment, for example desktop PC, laptop computer, video-game are put downPlatform, TV set-top box, television set (for example internet TV), computerization electrical equipment and wireless movingMoving equipment (such as smart phone, PDA, tablet PC etc.), only gives some instances. ThisOutward, custom system as herein described may be dissimilar equipment, to comprise different applicationOr otherwise differently configured. In addition, custom system as herein described can comprise any typeOperating system (" OS "). For example, mobile computing system as herein described can be realized AndroidTMOS、OS based on Linux or Unix etc.
The processing of the various parts of system in addition, can be distributed in multiple machines, network and itsIn the middle of its computational resource. In addition the less assembly of two or more assemblies one-tenth capable of being combined of system.For example, the various systems that are illustrated as lease agency 102 part can be distributed in multiple computing systemsIn the middle of or be combined into single computing system. The various parts of system in addition, can be at one orIn multiple virtual machines instead of in dedicated computer hardware system, realize. Equally, data shown inThesaurus can represents physical and/or logical data store, comprise for example storage area network orOther distributed memory system. And, in some embodiments, shown between partsConnect the possible path of representative of data flow, instead of actual connection between hardware. Although showGo out some examples that may connect, but in various realizations, shown in any subset of parts canCommunicate by letter with any other subset of parts.
According to embodiment, some action of any algorithm as herein described, method or process,Event or function can be carried out by different orders, can be added, merge or omit together (exampleIf action or event as described in not all are all necessary to the enforcement of algorithm). And, at certainIn a little embodiments, action or event can for example be processed by multithreading processing, interruption or be manyIndividual processor or processor core or on other parallel architecture simultaneously instead of continuouslyBe performed.
Each various shown in system can be implemented as be programmed or configured to carry out as herein describedThe computing system of various functions. Computing system can comprise by network and communicating and mutual operationWith carry out the multiple different computer of described function or computing equipment (for example physical server,Work station, storage array etc.). Each such computing equipment generally comprises to carry out and is stored inProgrammed instruction in reservoir or other non-interim computer-readable recording medium or the processing of moduleDevice (or multiple processor). Various function disclosed herein may be embodied in such programmed instructionIn, although some or all of disclosed function can be alternatively at the Special electric of computer systemFor example, in road (ASIC or FPGA), realize. Comprise multiple computing equipments at computing systemOccasion, these equipment can but need not be and be positioned at same place. Can pass through physical storeFor example solid-state memory chip of equipment and/or disk convert different states to and store enduringlyThe result of disclosed method and task. Described each process can be established by one or more calculatingStandby one or more physical servers of for example programming with associated server code are realized.
Conditional statement used herein for example especially " can (can) ", " can (might) "," can (may) ", " for example ", unless special provision or as the context being used in additionInterior understanding in addition, be conventionally intended to pass on some embodiment to comprise, and other embodiment is notComprise some speciality, element and/or state. Therefore, such conditional statement is not conventionallyBe intended to imply that feature, element and/or state to one or more embodiments are by any wayNeed or one or more embodiments must comprise for be with or without user input orThe situation of prompting is made decision whether these features, element and/or state are included or will be anyThe logic being performed in specific embodiment. Term " comprises (comprising) ", " comprises(including) ", " having " etc. be synonym and comprise opening mode and be included use, andDo not get rid of extra element, feature, action, operation etc. In addition, term "or" is at Qi BaoDraw together (instead of in its exclusive meaning) in the meaning comprising and used, make for example to useIn the time of the list of Connection Element, term "or" means, some or all of unit in listPart. In addition, article " a " or " an " should be interpreted as meaning " one or more " or " at least one ",Unless otherwise prescribed.
Unless special provision in addition, connects for example phrase of language " at least one in X, Y and Z "Otherwise be understood to that as being generally used for reception and registration project, item etc. can be the context of X, Y or Z.Therefore, such connection language conventionally and be not intended to imply that some embodiment needs at least oneX, at least one Y and at least one Z make each existence.
Although detailed description is above illustrated, describes and points out as being applied to various embodimentsNovel feature, but will understand, shown in can being made in the form and details of equipment or algorithmVarious omissions, substitute and change and do not depart from spirit of the present disclosure. Therefore, in aforementioned descriptionIn do not have anything to be intended to imply that any specific feature, characteristic, step, module or piece are necessaryOr indispensable. As will be recognized, process as herein described may be embodied in and not provideIn all features of setting forth herein and the form of benefit, because some features can be divided with further featureTurn up the soil and used or put into practice. Protection domain limits by claims instead of by aforementioned description.The all changes that appear in meaning and the scope of equivalents of claim should be included inIn their scope.

Claims (15)

1. for divide a system for producer's system, described system in the middle of multiple lease agenciesTurnkey is drawn together:
Multiple lease agencies, it comprises the first lease agency, wherein from described multiple lease generationsThe independent lease agency of reason comprises one or more processors, and described the first lease agency also comprisesBe configured to determine in one group of available producer's system of very first time section with in the second time periodWhether the difference between described group of available producer's system meets the dividing system of threshold value; And
Described dividing system, it is also configured to meet described threshold value in response to definite described difference:
The meter of the quantity that the lease based on being included in described multiple lease agency is acted on behalf ofNumber becomes multiple subsets of producer's system to attempt described group of producer's system dividesMake by different custom systems to the access of described multiple producer's systems roughly equablyBe distributed in the middle of described multiple producer's system; And
For described multiple lease agencies' independent lease agency, carry to described lease agencyFor the identity that is included in the producer's system in one of described subset of producer's system.
2. the system as claimed in claim 1, described dividing system is also configured to independent rentThe agency that rents provides and is included in from producer's system of the described subset of producer's system notWith the described identity of the producer's system in subset.
3. the system as claimed in claim 1, wherein said dividing system is also configured to describedOne or more lease agencies in multiple lease agencies, do not comprise described the first lease agency,Warn described the first lease agency's described dividing system just dividing described group of producer's system.
4. the system as claimed in claim 1, wherein in response to receiving from described multiple rentsThe agency's second that rents leases and acts on behalf of the warning of just dividing described group of producer's system, and described first rentsThe described dividing system of acting on behalf of of renting is also configured to suppress to divide described group of producer's system.
5. the system as claimed in claim 1, wherein said the first lease agency also comprises registrationModule, described Registering modules is configured to:
Receive to the request of described the first lease agency of trademark registration from producer's system;
Determining whether described producer's system is included in is assigned to described the first lease agencyThe subset of producer's system in;
Be included in and be assigned to described the first lease generation in response to definite described producer's systemIn the described subset of producer's system of reason, register described production described the first lease AgencyPerson's system; And
Be not included in and be assigned to described the first lease generation in response to definite described producer's systemIn the described subset of producer's system of reason, identification is from being assigned to described producer's systemThe second lease agency of described multiple lease agency, and provide described the to described producer's systemTwo lease agencies' described identity.
6. for divide a method for producer's system, institute in the middle of multiple lease agency plantsThe method of stating comprises:
By comprising the first lease agency plant of one or more processors:
Determine the first group producer system available in very first time section;
Be identified in second group of producer's system that the second time period can use, wherein said secondTime period occurred before described very first time section;
Calculate described first group of producer's system and described second group of producer's system itBetween quantitative difference;
Determine whether described difference meets threshold value; And
Meet described threshold value in response to definite described difference:
Distribute described first group of production by the lease agency plant to independentThe different subsets of person's system are divided institute in the middle of multiple lease agency plantsState first group of producer's system; And
For except described multiple agency plant of described the first leaseThe independent lease agency plant of lease agency plant, gives described independent lease generationReason system provides from described first group of producer's system assignment to described leaseThe identity of the described subset of producer's system of agency plant is so that from instituteDifferent producer's systems of stating first group of producer's system can be to differentConsumer System provides service, thus, and at described multiple lease agency plantsThe described division of central described first group of producer's system realizes describedIn the middle of different Consumer Systems, provided by described first group of producer's systemThe balance of distribution of described service.
7. method as claimed in claim 6, it also comprises:
Receive at least one in described multiple lease agency plant unavailable in the 3rd time periodInstruction;
Be identified in the 3rd group of producer's system that described the 3rd time period can use;
Be identified in one group of lease agency plant that described the 3rd time period can use;
In the middle of described group of lease agency plant can using in described the 3rd time period, divide described theThree groups of producer's systems; And
For the independent rent in described group of lease agency plant can using in described the 3rd time periodThe agency plant of renting, provides from described the 3rd group of producer's system to described lease agency plantThe described identity of the subset of producer's system, at least part of ground of described subset of producer's systemIn the described division of described second group of producer's system and determined.
8. method as claimed in claim 6, wherein works as at described multiple lease agency plantsIn be divided in the available described first group of producer's system of described very first time section and comprise describedFirst group of producer's system divides becomes the non-overlapped subset of producer's system.
9. method as claimed in claim 6, it also comprises:
Determine from be assigned to described first lease agency plant producer's system firstProducer's system of subset is no longer available; And
Upgrade the counting of available producer's system to reflect that described producer's system is no longer available, wherein determine the described first group producer system at least portion available in described very first time sectionDivide the described counting of ground based on available producer's system; And
Wherein determine that described producer's system is no longer that available comprising from Consumer System receivesDescribed producer's system is unresponsive notice or determines that described producer's system is to by described theDuring one status request that provides of lease agency plant is reactionless one.
10. method as claimed in claim 6, it also comprises:
Receive to the request of described the first lease agency plant registration from producer's system;
Determining whether described producer's system is included in is assigned to described the first lease agencyIn the described subset of producer's system of system;
Be included in and be assigned to described the first lease generation in response to definite described producer's systemIn the described subset of producer's system of reason system, in described the first lease agency plant place registrationDescribed producer's system;
Be not included in and be assigned to described the first lease in response to definite described producer's systemIn the described subset of producer's system of agency plant, described method also comprises:
Identification from the described multiple lease agencies that are assigned to described producer's system isThe second lease agency plant of system; And
The described identity of described the second lease agency plant is provided to described producer's system.
11. 1 kinds for dividing the method for lease, described side in the middle of multiple lease agency plantsMethod comprises:
By comprising the first lease agency plant of one or more processors:
Identify one group of available producer's system;
Determine can use independent producer's system of described group of available producer's system manyIndividual lease;
Distribute to come by giving from the independent lease agency plant of multiple lease agency plantsSubset from the lease of the described multiple leases that can use independent producer's system is come in instituteIn the middle of stating multiple lease agency plants, divide can use independent producer's system described manyIndividual lease; And
For the independent lease agency plant of described multiple lease agency plants, give described rentThe agency plant of renting provides the described subset of the lease that is assigned to described lease agency plant,The institute that can use independent producer's system in the middle of described multiple lease agency plants thus,The described division of stating multiple leases realizes the work in the middle of described multiple lease agency plantsThe balance that work is loaded.
12. methods as claimed in claim 11, wherein lease separately agency plant and are assigned with rentThe non-overlapped subset of renting.
13. methods as claimed in claim 11, provide rent wherein to described lease agency plantThe described subset of renting does not comprise to described the first lease agency plant to be provided and is assigned to described rentThe rent described subset of lease of agency plant.
14. methods as claimed in claim 11, wherein give described lease agency plant provide byThe described subset that is assigned to the lease of described lease agency plant comprises one of following operation: (1)Provide for the independent producer of described multiple producer's systems to described lease agency plant and beSystem is assigned to described multiple leases of described lease agency plant, or (2) give described leaseAgency plant provides the identifier of the independent lease that is assigned to described lease agency plant.
15. methods as claimed in claim 11, wherein work as at described multiple lease agency plantsMiddle division to independent producer's system can with described multiple leases be included in described multiple leaseIn the middle of agency plant, in fact equally divide can use independent producer's system described multipleLease.
CN201480045484.XA 2013-06-26 2014-06-24 Producer's system in rental agency system divides Active CN105593820B (en)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US13/927,929 2013-06-26
US13/927,929 US9369518B2 (en) 2013-06-26 2013-06-26 Producer system partitioning among leasing agent systems
US13/927,995 2013-06-26
US13/927,933 2013-06-26
US13/927,892 2013-06-26
US13/927,933 US9843631B2 (en) 2013-06-26 2013-06-26 Producer system selection
US13/927,892 US9350801B2 (en) 2013-06-26 2013-06-26 Managing client access to a plurality of computing systems
US13/927,995 US9780993B2 (en) 2013-06-26 2013-06-26 Producer computing system leasing on behalf of consumer computing system
PCT/US2014/043939 WO2014210053A2 (en) 2013-06-26 2014-06-24 Producer system partitioning among leasing agent systems

Publications (2)

Publication Number Publication Date
CN105593820A true CN105593820A (en) 2016-05-18
CN105593820B CN105593820B (en) 2019-04-19

Family

ID=51212983

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201480045484.XA Active CN105593820B (en) 2013-06-26 2014-06-24 Producer's system in rental agency system divides
CN201480045521.7A Active CN105612539B (en) 2013-06-26 2014-06-24 Producer system partitioning among leasing agent systems
CN201480036547.5A Active CN105556472B (en) 2013-06-26 2014-06-24 It manages and the client of multiple computing systems is accessed

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201480045521.7A Active CN105612539B (en) 2013-06-26 2014-06-24 Producer system partitioning among leasing agent systems
CN201480036547.5A Active CN105556472B (en) 2013-06-26 2014-06-24 It manages and the client of multiple computing systems is accessed

Country Status (5)

Country Link
EP (3) EP3014442A2 (en)
JP (3) JP6243528B2 (en)
CN (3) CN105593820B (en)
CA (3) CA2916265C (en)
WO (3) WO2014210058A2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9780993B2 (en) 2013-06-26 2017-10-03 Amazon Technologies, Inc. Producer computing system leasing on behalf of consumer computing system
US9843631B2 (en) 2013-06-26 2017-12-12 Amazon Technologies, Inc. Producer system selection
US9369518B2 (en) 2013-06-26 2016-06-14 Amazon Technologies, Inc. Producer system partitioning among leasing agent systems
US9350801B2 (en) 2013-06-26 2016-05-24 Amazon Technologies, Inc. Managing client access to a plurality of computing systems
US10592064B2 (en) 2013-09-17 2020-03-17 Amazon Technologies, Inc. Approaches for three-dimensional object display used in content navigation
WO2019100366A1 (en) * 2017-11-27 2019-05-31 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for distributing on-demand service requests
US20230071047A1 (en) * 2021-09-08 2023-03-09 Microstrategy Incorporated Systems and methods for virtual machine resource distribution
WO2024069846A1 (en) * 2022-09-29 2024-04-04 楽天モバイル株式会社 Dynamic change of resource allocation for virtual network function

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965974B1 (en) * 1997-11-14 2005-11-15 Agere Systems Inc. Dynamic partitioning of memory banks among multiple agents
US8615764B2 (en) * 2010-03-31 2013-12-24 International Business Machines Corporation Dynamic system scheduling
CN103870580A (en) * 2014-03-24 2014-06-18 深圳市众鸿科技股份有限公司 Objected-based dynamic-attribute cloud management platform and system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9508283D0 (en) * 1995-02-07 1995-06-14 British Telecomm Information services provision and management
JP3711866B2 (en) * 2000-04-10 2005-11-02 日本電気株式会社 Framework having plug and play function and reconfiguration method thereof
JP2006235837A (en) * 2005-02-23 2006-09-07 Nec Corp Load balancing system, load balancer management server, switching method for load balancer and program
US8145760B2 (en) * 2006-07-24 2012-03-27 Northwestern University Methods and systems for automatic inference and adaptation of virtualized computing environments
US8635349B2 (en) * 2007-02-20 2014-01-21 Oracle America, Inc. Method and system for managing computing resources using an electronic broker agent
US9106540B2 (en) * 2009-03-30 2015-08-11 Amazon Technologies, Inc. Providing logical networking functionality for managed computer networks
US8364819B2 (en) * 2010-05-28 2013-01-29 Red Hat, Inc. Systems and methods for cross-vendor mapping service in cloud networks
JP2012234236A (en) * 2011-04-28 2012-11-29 Hitachi Ltd Load distribution system
US9137304B2 (en) * 2011-05-25 2015-09-15 Alcatel Lucent Method and apparatus for achieving data security in a distributed cloud computing environment
CN107071086B (en) * 2011-08-17 2020-06-05 Nicira股份有限公司 Logical L3 routing
CN102955456A (en) * 2011-08-26 2013-03-06 北京安翔动力科技有限公司 Bus communication based small unmanned aerial vehicle control system
CN103049245B (en) * 2012-10-25 2015-12-02 浪潮电子信息产业股份有限公司 A kind of software performance optimization method based on central processor CPU multi-core platform

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965974B1 (en) * 1997-11-14 2005-11-15 Agere Systems Inc. Dynamic partitioning of memory banks among multiple agents
US8615764B2 (en) * 2010-03-31 2013-12-24 International Business Machines Corporation Dynamic system scheduling
CN103870580A (en) * 2014-03-24 2014-06-18 深圳市众鸿科技股份有限公司 Objected-based dynamic-attribute cloud management platform and system

Also Published As

Publication number Publication date
CN105556472A (en) 2016-05-04
JP2016527623A (en) 2016-09-08
CA2916261A1 (en) 2014-12-31
JP2016527780A (en) 2016-09-08
CN105612539A (en) 2016-05-25
WO2014210053A2 (en) 2014-12-31
CN105593820B (en) 2019-04-19
EP3014441A2 (en) 2016-05-04
CN105612539B (en) 2020-05-05
WO2014210058A3 (en) 2015-02-26
WO2014210054A3 (en) 2015-02-26
EP3014442A2 (en) 2016-05-04
WO2014210058A2 (en) 2014-12-31
WO2014210054A2 (en) 2014-12-31
CA2916265C (en) 2018-04-10
CA2916258C (en) 2019-01-29
WO2014210053A3 (en) 2015-02-26
CA2916261C (en) 2018-04-10
CA2916265A1 (en) 2014-12-31
JP2016526723A (en) 2016-09-05
JP6200080B2 (en) 2017-09-20
CA2916258A1 (en) 2014-12-31
EP3014537A2 (en) 2016-05-04
JP6243528B2 (en) 2017-12-06
JP6165978B2 (en) 2017-07-19
CN105556472B (en) 2019-07-26

Similar Documents

Publication Publication Date Title
CN105593820A (en) Producer system partitioning among leasing agent systems
US11108856B2 (en) Methods and apparatus for performing distributed computing using blockchain
JP7304118B2 (en) Secure, consensual endorsements for self-monitoring blockchains
CN111213340B (en) Selecting attestation delegation for cryptographic functions and making it secure
CN104011701A (en) Content delivery network
US20200228629A1 (en) Api hybrid multi-tenant routing method and system, and api gateway
JP2021520539A (en) Computing systems, methods, and computer programs for managing the blockchain
US20200092084A1 (en) System and methods for operating a blockchain network
US20220006641A1 (en) Distribution of Blockchain Validation
CN103516777A (en) A method of provisioning in a cloud compute environment
CN109495592A (en) Data collaborative method and electronic equipment
CN112685159B (en) Federal learning calculation task processing scheme based on FPGA heterogeneous processing system
WO2015167713A1 (en) System and method for supporting a bypass-domain model and a proxy model and updating service information for across-domain messaging in a transactional middleware machine environment
US11128698B2 (en) Producer system registration
CN101128827A (en) Method and apparatus for distributed data management in a switching network
US20150019727A1 (en) Managing client access to a plurality of computing systems
Fuerst et al. Virtual network embedding with collocation: Benefits and limitations of pre-clustering
US20150019732A1 (en) Producer system partitioning among leasing agent systems
US9780993B2 (en) Producer computing system leasing on behalf of consumer computing system
Guerrero et al. Optimization policy for file replica placement in fog domains
Gupta et al. Trust & fault in multi layered cloud computing architecture
US20200183586A1 (en) Apparatus and method for maintaining data on block-based distributed data storage system
KR20220147613A (en) Multi-level cache-mesh-system for multi-tenant serverless environments
Guo et al. Improving transaction succeed ratio in payment channel networks via enhanced node connectivity and balanced channel capacity
US20220360646A1 (en) Apparatus and method to perform synchronization services in a switch

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant