text:
|Publication number
|Publication type
|Application number
|Publication date
|May 2, 2006
|Filing date
|Sep 24, 2001
|Priority date
|Sep 24, 2001
|Fee status
|Also published as
|Publication number
|James L. Jason, Jr.
|Original Assignee
|Intel Corporation
|Export Citation
|BiBTeX, EndNote, RefMan
|Patent Citations (28), Non-Patent Citations (2), Referenced by (30), Classifications (22), Legal Events (3)
|External Links: USPTO, USPTO Assignment, Espacenet
The present application describes systems and techniques relating to load balancing in a data delivery system, for example, balancing server load in a server cluster.
A network is a collection of nodes coupled together with wired or wireless communication links, such as coax cable, fiber optics or radio frequency bands. Each node is capable of communicating with other nodes over the communication links using networking protocols. A node may be any machine capable of communicating using the network protocol. An inter-network is a collection of computer networks coupled together by routers (also known as gateways) and an inter-networking protocol.
A server cluster is a group of independent data servers, or nodes, coupled with a network and managed as a unified data delivery system. The servers in the cluster cooperate in providing data to requesting client devices. A load balancer or redirector may be used to distribute client requests across the servers within the cluster. Distributing load across different servers allows the server cluster to handle large numbers of concurrent requests and large volumes of requested data, while keeping response time to a minimum.
A load balancer commonly performs two interrelated functions: (1) server selection and (2) request translation. Request translation refers to the conversion of a client request directed to the server cluster generally, into a specific request directed to an individual server within the cluster. Server selection involves choosing an individual server to process a particular client request.
A common example of a server cluster is a web server cluster. A web server provides users with access to data, which is typically in the form of HTML (Hypertext Markup Language) documents and software organized into a web site. Each web server in a conventional web server cluster typically stores identical web site content and typically runs mirroring software to maintain the duplicate content across all the servers in the cluster.
With regard to request translation, traditional approaches to load balancing in a web server cluster include a Domain Name Server (DNS) approach and a reverse proxy approach. In the DNS approach, a local DNS distributes server load by dynamically resolving a domain name for the cluster into different Internet Protocol (IP) addresses for the web servers in the cluster. In a reverse proxy approach, a reverse proxy server translates relative Universal Resource Locators (URLs) in client requests into absolute URLs addressed to one of the web servers in the cluster.
With regard to server selection, a traditional approach, referred to as "round robin," assigns each server in the cluster a position in a logical circle. As each new client request comes in, the load balancer directs the request to the server associated with the next position in the logical circle.
Details of one or more embodiments are set forth in the accompanying drawings and the description below. Other features and advantages may be apparent from the description and drawings, and from the claims.
The systems and techniques described here relate to server load balancing. The description that follows discusses server load balancing in the context of IP, but may apply equally in other contexts, for example, any network protocol that uses a connection establishment protocol having a connection request message and a corresponding acknowledgement message. As used herein, the term "message" includes any discrete block of data transmitted over a network, including IP segments, IP packets, and Ethernet frames.
The present inventors developed load-balancing systems and techniques that may better assess server loading and may aid in identifying when a server has crashed. For example, the amount of time taken by each node in a data delivery system to respond to a new connection request, as well as the number of connections being maintained and/or the amount of bandwidth being consumed by each node, may be monitored to determine when a node should be removed from contention for new connection requests and when that node should be reinstated to receive new connection requests. Implementations of the load balancing systems and techniques may include various combinations of the features described below.
The server cluster 100 receives connection requests from multiple access devices 105, which are coupled with an inter-network 110, such as the Internet. A link 115 connects the inter-network 110 with a network system 120, which contains the server cluster 100.
The network system 120 includes one or more networks 130, 140. The network system 120 may be an autonomous system, such as those in the Internet, which are typically managed by a single entity such as a company, educational institution, government agency, etc. At each ingress/egress point in the network system 120, such as the link 115, a load monitor 125 is attached. Each load monitor 125 monitors network traffic directed to or coming from the server cluster 100. Each load monitor 125 may also report server-loading information to a controller 135. Alternatively, each load monitor 125 reports server-loading information to all other load monitors.
In the example of
The network system 120 may consist only of a single load monitor, a single network and two servers. Alternatively, the network system 120 may include many networks, many servers functioning as a virtual server cluster (i.e. the servers within the virtual server cluster are not all connected to the same network but rather are distributed among two or more different networks), and many ingress/egress points to the inter-network 110, with each ingress/egress point having its own load monitor.
Devices inside the network system 120 may also access the server cluster 100. These devices may send messages to the server cluster 100 that do not pass through a load monitor. For example, the controller 135 may have access to the server cluster 100 independently of a data path through a load monitor. Thus, in some implementations, it is unnecessary that all network traffic directed to the server cluster 100 pass through a load monitor.
In addition to monitoring server cluster traffic, the load monitor 125 may also perform server assignment. For example, the network 140 may be an Ethernet or token ring network, and the load monitor 125 may be the only link between the network 140 and all other networks. In this case, the load monitor 125 functions, in part, as a router.
In this example, the load monitor 125 identifies messages directed to the server cluster 100, selects a server in the server cluster 100 for a new connection or identifies the appropriate server in the cluster 100 for an existing connection, and routes the messages to the appropriate servers in the cluster 100 over the Ethernet 140. The individual servers within the server cluster 100 are unknown to devices other than the load monitor 125. For data requesting devices, the server cluster 100 appears to be a single logical machine with a single IP address.
Alternatively, the load monitor 125 reports server-loading information to another device within the network system 120, such as the controller 135 or other machine (e.g., a DNS server or a reverse proxy server), which performs the load balancing based upon the loading information provided. One or more controllers 135 may also be provided to configure one or more load monitors 125 by distribution of policies, and to receive network statistics from one or more load monitors 125. For example, in a large network system 120, multiple controllers 135 may control multiple load monitors 125 and may communicate among themselves in order to gain knowledge regarding the functioning of the entire network system 120 (e.g., information regarding bandwidth capacity, network topology, etc.).
The server cluster 215 responds by sending an acknowledgement message 222. The acknowledgement message 222 has an acknowledgement (ACK) flag set and contains the client's ISN plus one. The acknowledgement message 222 is also a SYN segment containing the server cluster's ISN.
A load monitor 205 measures a time 230 between the synchronization message 220 and the acknowledgement message 222. The manner in which the load monitor measures the time 230 may vary with different implementations. For example, the time 230 may be the difference between a time at which the load monitor 205 sees the synchronization message 220 and a time at which the load monitor 205 sees the acknowledgement message 222. Alternatively, the time 230 may be measured using one or more time stamps within the messages.
Once the client 210 receives the acknowledgement message 222, the client 210 sends a reply acknowledgement message 224 to the server cluster 215. The reply acknowledgement message 224 has the ACK flag set and contains the server cluster's ISN plus one. The sequence numbers are used by the client 210 and the server cluster 215 to identify the established connection. If packets get delayed in the network, they will not be misinterpreted as part of a later connection.
The ISN for the server cluster 215 may or may not be for a specific server 215 a within the cluster 215. For example, the connection request 220 may result in an assignment of a server 215 a, and that server 215 a may then communicate directly with the client 210 through the network, using an ISN generated by the server 215A.
Alternatively, the connection request 220 may result in an assignment of a server 215 a by the load monitor 205, and that server 215 a may then communicate with the client 210 through the load monitor 205. In this later case, the load monitor creates the ISN to be sent to the client 210 in the acknowledgement message 222 and handles any necessary translation of sequence numbers sent by the server 215 a into the sequence numbers sent to the client 210. In some cases, the server 215 a may not provide sequence numbers (e.g., if the server cluster 215 resides on a single Ethernet network and the load monitor 205 handles all communications with requesting clients, then server sequence numbers need not be used).
In this example, both the client 260 and the load monitor 255 are using the same time-out period. However, various time-out periods and combinations of time-out periods may be used. For example, the client 260 may use three time-out periods with three synchronization messages in attempting to establish a connection (a first time-out period (e.g., six seconds) measured from an initial request, a second time-out period (e.g., twelve seconds) measured from the end of the first time-out period, and a third time-out period (e.g., seventy-five seconds) measured from the initial request), while the load monitor 255 may use a single time-out period that is much shorter (e.g., 500 milliseconds).
The client 260 sends a second synchronization message 272 to the server cluster 265 requesting a connection. The server cluster 265 responds with an acknowledgement message 274. The load monitor 255 measures a time 282 between the second synchronization message 272 and the acknowledgement message 274, as described previously. Once the client 260 receives the acknowledgement message 274, the client 260 sends a reply acknowledgement message 276 back to the server cluster 265.
The synchronization message 270 and the second synchronization message 272 may or may not be received by the same server within the server cluster 265. For example, when the load monitor 255 determines that an assigned server 265 a has failed to respond to a connection request within the time-out period 280, the load monitor 255 may cause the server 265 a to be removed from contention for future connection requests. In that case, when the second synchronization message 274 arrives, a different server, e.g., server 265 b, will respond.
Moreover, the assigned server 265 a may be taken out of a connection at other times. For example, if the time-out period 280, used by the load monitor 255, is much shorter than a time-out period used by the client 260, the synchronization message 270 may result in a timeout for a server well before the client timeout. The load monitor 255 may then transmit a new connection request to a different server, and this different server then replies to the client 260 before the client's time-out period expires. Thus, the client's single request results in two requests being received by two separate servers.
Alternatively, the load monitor 255 may determine that a server 265 a, which is in established communication with a client 260, is becoming overloaded or has crashed, and reassign the existing connection to another server 265 b. The load monitor 255 may assess overloading of a server using one or more factors, including the server's response time, the number of connections the server is managing, and the amount of bandwidth the server's connections are consuming.
The connection assignor may be a software process executing in a load monitor or in an entirely separate device. Although
Referring now to
If the client message is a connection termination (e.g., a FIN (finished) segment in IP), a current state of a server handling this connection is checked, a rebalancing message may be sent, and a transition is made back to state S0. Any other type of client message results in a transition back to state S0 with no processing or output. The processes and outputs of state S1 are described in greater detail below in connection with
When a server message is intercepted while the load monitor is in state S0, a transition is made to state S2. In state S2, the server message is input data for the next transition. If the server message is a connection acknowledgment (e.g., a SYN-ACK segment in IP), a connection count is incremented and checked, the server response timer is checked, a rebalancing message may be sent, and a transition is made back to state S0. If the server message contains any other data, a current bandwidth consumption is calculated, and a transition is made back to state S0. The processes and outputs of state S2 are described in greater detail below in connection with
When a timer expires while the load monitor is in state S0, a transition is made to state S3. In state S3, a check is made for any outstanding connection requests that have not been responded to in a timely fashion, a check is made for excessive bandwidth consumption, a rebalancing message may be sent, and a transition is made back to state S0. The timer that expired may be a programmed interrupt timer, such as the server response timer, and/or it may be a periodic interrupt timer that causes state S3 to be entered regularly to make checks including checking a set of server response timers, which may be memory locations storing connection request times.
Referring now to
For example, if servers are assigned in a round robin fashion, the rebalancing message may instruct the connection assignor to remove a particular server from the circle for a specified period of time or until a later rebalancing message indicates otherwise. Thus, a rebalancing message can cause a server to be taken offline for new connections temporarily or indefinitely.
In block 302, a server response timer for this connection request is started. This timer may be implemented as a time stamp stored in a variable or memory location for later checking. Alternatively, the timer may be an actual interrupt timer, which interrupts the other processes after a prescribed period. Following block 302, the process ends.
In block 304, a check is made to determine if the client message is a connection termination message. If not, the process ends. If so, control passes to block 306.
Although connection termination is described here as occurring upon the request of the client, other scenarios are possible. For example, in a full duplex connection, such as TCP, a server considers a connection to be open even after the client has terminated its transmissions. In that case, a server termination message would need to be intercepted to trigger the processes shown in blocks 304–312.
In block 306, a connection counter is decremented for the server handling the client that sent the connection termination request. Then, in block 308, a check is made to determine if this particular server is currently offline for new connections, for example, due to excessive connections or possibly due to a previous failure to respond to a connection request. If not, the process ends. If so, control passes to block 310.
In block 310, a check is made to determine if the current connection count for the server determined to be offline is reasonable. If not, the process ends. If so, control passes to block 312. A number that is considered reasonable will depend on the particular implementation, and/or on the preferences of the system administrator, and may depend upon the underlying reason that the server is offline. For example, if the server is currently offline for new connections because it reached its maximum number of connections, the reasonable number may be set to be a predetermined number less than the maximum, for example, the maximum number minus two. If the server is currently offline for new connections because of a previous failure to respond to a connection request, the reasonable number may be a percentage of the maximum, for example, seventy five percent.
Block 310 may also include checks of current server bandwidth consumption. For example, if the server is currently offline for new connections because of a previous failure to respond to a connection request, a check may be made in block 310 to determine if both the number of connections being handled by the server and the bandwidth being consumed by the server are reasonable.
In block 312, a server available message is sent. This message indicates that the server is now available for new connection requests. Following this, the process ends.
In block 332, the connection counter for the server sending the acknowledgement message is incremented. Then, in block 334, a check is made to determine if the current connection count is excessive, for example, greater than a predetermined number. If so, control passes to block 336, in which a server overloaded message is sent. Then the process ends.
A number that is considered excessive for the connection count will depend on the particular implementation and may also depend upon the current bandwidth consumption for the server. The server overloaded message sent in block 336 indicates that the server is unavailable for new connections. This unavailability may be temporary or indefinite. For example, the server overloaded message may indicate removal of this server from contention for new connections for a specified period of time, or the server overload message may indicate removal of this server from contention for new connections until a future message indicates otherwise.
If the current connection count was determined not excessive in block 334, then a check is made in block 338 to determine if the server response took an excessive amount of time, for example, longer that a predetermined duration. If not, the process ends. If so, control passes to block 340, in which a server overloaded message is sent.
An amount of time to respond that is considered excessive will depend on the particular implementation. For example, if the server resides on a fast Ethernet network, a reasonable response time may be 500 milliseconds or less. Moreover, the reasonable response time may be server dependent. For example, a load monitor may keep historical information for each server that indicates how long on average each server takes to respond. Server overload may then be identified in block 338 upon detecting a response time that is slower than the historical average.
In block 342, a check is made to determine if the server message is a data message. If not, the process ends. If so, control passes to block 344, in which the current bandwidth consumption is recalculated for the server sending the message. Then, the process ends. Alternatively, no check is made in block 342, and all server messages result in a recalculation of server bandwidth consumption.
In block 362, a server overloaded message is sent for each server having outstanding responses. These messages indicate that each server having outstanding responses is unavailable for new connection requests, either temporarily or indefinitely. These messages also may indicate that the outstanding connection requests are to be reassigned to available servers. Following this, control passes to block 364.
In block 364, a check is made to determine if there are servers, other than a server taken offline in block 362 just immediately before, that are offline for new connection requests. If not control passes to block 370. If so, control passes to block 366.
In block 366, a check is made for each server identified in block 364, to determine if the server has experienced a significant drop in bandwidth consumption. An amount of bandwidth consumption that is considered significant will depend on the particular implementation and factors including network capacity and number of servers. If no offline server has experienced a significant drop in bandwidth consumption, control passes to block 370. Otherwise, control passes to block 368.
In block 368, a server available message is sent for each offline server experiencing a significant drop in bandwidth consumption. These messages indicate that each such server is now available for new connection requests. Following this, control passes to block 370.
In block 370, the bandwidth consumption for each server is checked to determine if a server should be taken offline for new connections due to excessive bandwidth consumption. If so, control passes to block 372. If not, the process ends.
In block 372, a server overloaded message is sent for each server consuming excessive bandwidth. These messages indicate that each such server is unavailable for new connection requests, either temporarily or indefinitely. Following this, the process ends.
The processing system 402 is coupled with a bus 404, which provides a set of signals for communicating with the processing system 402 and may include a data channel for facilitating information transfer between storage and other peripheral components of the machine 400.
The machine 400 may include embedded controllers, such as Generic or Programmable Logic Devices or Arrays (PLD, PLA, GAL, PAL), Field Programmable Gate Arrays (FPGA), Application Specific Integrated Circuits (ASIC), single-chip computers, smart cards, or the like, which may serve as the processing system 402.
The machine 400 may include a main memory 406 and one or more cache memories, and may also include a secondary memory 408. These memories provide storage of instructions and data for programs executing on the processing system 402, and may be semiconductor based and/or non-semiconductor based memory. The secondary memory 408 may include, for example, a hard disk drive 410, a removable storage drive 412 and/or a storage interface 420.
The machine 400 may also include a display system 424 for connecting to a display device 426. The machine 400 includes an input/output (I/O) system 430 (i.e., one or more controllers or adapters for providing interface functions) for connecting to one or more I/O devices 432–434. The I/O system 430 may provide a communications interface, which allows software and data to be transferred, in the form of signals 442, between machine 400 and external devices, networks or information sources. The signals 442 may be any signals (e.g., electronic, electromagnetic, optical, etc.) capable of being received via a channel 440 (e.g., wire, cable, optical fiber, phone line, infrared (IR) channel, radio frequency (RF) channel, etc.). A communications interface used to receive these signals 442 may be a network interface card designed for a particular type of network, protocol and channel medium, or may be designed to serve multiple networks, protocols and/or channel media.
Machine-readable instructions (also known as programs, software or code) are stored in the machine 400 and/or are delivered to the machine 400 over a communications interface. As used herein, the term "machine-readable medium" refers to any media used to provide one or more sequences of one or more instructions to the processing system 402 for execution.
Other systems, architectures, and modifications and/or reconfigurations of machine 400 of
|Cited Patent
|Filing date
|Publication date
|Dec 28, 1992
|Apr 9, 1996
|At&T Global Information Solutions Company
|Terminating access of an agent to a shared resource when a timer, started after a low latency agent requests access, reaches a predetermined value
|Aug 5, 1996
|Jun 30, 1998
|Resonate, Inc.
|World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
|Jul 2, 1996
|Aug 25, 1998
|Microsoft Corporation
|Adaptive bandwidth throttling for network services
|Dec 9, 1996
|Aug 17, 1999
|Sun Microsystems, Inc.
|Load balancing and failover of network services
|Mar 17, 1998
|Mar 20, 2001
|Infolibria, Inc.
|Protocol for distributing fresh content among networked cache servers
|Jun 17, 1999
|Feb 4, 2003
|International Business Machines Corporation
|Self-regulated resource management of distributed computer resources
|Nov 25, 1998
|May 13, 2003
|Enron Warpspeed Services, Inc.
|Method and apparatus for providing guaranteed quality/class of service within and across networks using existing reservation protocols and frame formats
|Dec 29, 1997
|Jun 10, 2003
|Novell, Inc.
|Traffic monitoring tool for bandwidth management
|Nov 10, 1998
|Oct 7, 2003
|At&T Corp.
|System and method for providing dynamic bandwidth on demand
|Feb 25, 2000
|Dec 2, 2003
|Sun Microsystems, Inc.
|Method and apparatus for distributing load in a computer environment
|Feb 18, 2000
|Apr 20, 2004
|Netscaler, Inc.
|Apparatus, method and computer program product for guaranteed content delivery incorporating putting a client on-hold based on response time
|Aug 3, 1999
|Jul 20, 2004
|Worldcom, Inc.
|Method and system for load-balanced data exchange in distributed network-based resource allocation
|Aug 20, 1999
|Sep 28, 2004
|Nortel Networks Limited
|Managing calls over a data network
|Dec 18, 2000
|Aug 2, 2005
|Slam Dunk Networks, Inc.
|Archival database system for handling information and information transfers in a computer network
|May 28, 1999
|Nov 29, 2005
|William H. Gates, III
|Method and system for property notification
|Dec 18, 2000
|Oct 18, 2001
|Ganesan Gopal
|Archival database system for handling information and information transfers in a computer network
|Dec 18, 2000
|Nov 15, 2001
|John Mathon
|System for handling information and information transfers in a computer network
|Oct 5, 2001
|Apr 11, 2002
|Christopher Peiffer
|Connection management system and method
|Dec 18, 2000
|Apr 25, 2002
|Kayshav Dattatri
|System for monitoring and managing information and information transfers in a computer network
|May 18, 2001
|May 23, 2002
|Amphus, Inc.
|Dynamic power and workload management for multi-server system
|Nov 29, 2000
|May 30, 2002
|Rhodes David L.
|Collaborative host masquerading system
|Feb 28, 2001
|Aug 29, 2002
|Chellis Eugene C.
|System and method for describing and automatically managing resources
|May 17, 2002
|Sep 26, 2002
|F5 Networks, Inc.
|Simplified method for processing multiple connections from the same client
|May 21, 2001
|Nov 21, 2002
|International Business Machines Corporation
|System and method for providing gracefully degraded services on the internet under overloaded conditions
|Aug 31, 2001
|Mar 6, 2003
|Purpura William J.
|User bandwidth monitor and control management system and method
|May 16, 2003
|Nov 6, 2003
|Kabushiki Kaisha Toshiba
|Server device and communication connection scheme using network interface processors
|Nov 29, 2001
|Jan 22, 2004
|Applied Microsystems Corporation
|Method and system for dynamically incorporating advertising content into multimedia environments
|Aug 8, 2003
|Feb 12, 2004
|Fleming Norman Wayne
|Networks, systems and methods for routing data traffic within a telephone network based on available resources
|Aron et al., "Cluster Reserves: A Mechanism for Resource Management in Cluster-based Network Servers", Department of Computer Science, Rice University, pp. 90-101, ACM, 2000.
|Pai et al, "Locality-Aware Request Distribution in Cluster-based Network Servers", Department of Electrical and Computer Engineering, Rice University, pp. 205-216, ACM, 1998.
|Citing Patent
|Filing date
|Publication date
|Aug 16, 2002
|Mar 31, 2009
|Hitachi, Ltd.
|PPPoE network system that can distribute connection requests from PPPoE client terminals to specific PPPoE servers
|Dec 3, 2004
|Feb 16, 2010
|Crescendo Networks, Ltd.
|System and method for managing multiple connections to a server
|May 30, 2002
|Mar 23, 2010
|Microsoft Corporation
|Method and system for layering an infinite request/reply data stream on finite, unidirectional, time-limited transports
|Jun 1, 2007
|Nov 29, 2011
|Adobe Systems Incorporated
|System and/or method for client-driven server load distribution
|Jan 3, 2008
|Mar 27, 2012
|Adobe Systems Incorporated
|Self organizing peer-to-peer system, method, and/or apparatus
|Nov 24, 2008
|Mar 27, 2012
|At&T Intellectual Property I, Lp
|Detecting hidden shared dependencies through covert channels
|Feb 20, 2008
|May 1, 2012
|Adobe Systems Incorporated
|System, method, and/or apparatus for establishing peer-to-peer communication
|Jul 17, 2007
|Aug 7, 2012
|Adobe Systems Incorporated
|Endpoint discriminator in network transport protocol startup packets
|Aug 29, 2007
|Nov 13, 2012
|Itron, Inc.
|Periodic balanced communication node and server assignment
|May 13, 2008
|Nov 13, 2012
|Adobe Systems Incorporated
|Many-to-one mapping of host identities
|May 13, 2008
|Dec 25, 2012
|Adobe Systems Incorporated
|Interoperable cryptographic peer and server identities
|Jun 1, 2006
|Jun 18, 2013
|Telefonaktiebolaget Lm Ericsson (Publ)
|Arbiter diagnostic apparatus and method
|Jul 25, 2012
|Feb 11, 2014
|Adobe Systems Incorporated
|Endpoint discriminator in network transport protocol startup packets
|Oct 26, 2011
|Oct 27, 2015
|International Business Machines Corporation
|Connection distribution for load balancing in a distributed database
|Nov 28, 2011
|Mar 29, 2016
|Adobe Systems Incorporated
|System and/or method for client-driven server load distribution
|Mar 26, 2002
|May 1, 2003
|Yoshitoshi Kurose
|Data transfer apparatus
|May 21, 2002
|Jun 19, 2003
|Bernhard Honeisen
|Communication of information
|Aug 16, 2002
|Sep 25, 2003
|Minoru Ogushi
|Network system
|Dec 3, 2004
|Jan 26, 2006
|Yiftach Shoolman
|System and method for managing multiple connections to a server
|Jun 6, 2005
|Dec 7, 2006
|International Business Machines Corporation
|Distributing workload among DNS servers
|Jun 1, 2006
|Dec 6, 2007
|Telefonaktiebolaget Lm Ericsson (Publ)
|Arbiter diagnostic apparatus and method
|Aug 29, 2007
|Mar 20, 2008
|Holbrook Kenneth J
|Native network transport
|Aug 29, 2007
|Mar 27, 2008
|Guthrie Kevin D
|Interface between meter and application (IMA)
|Jun 1, 2007
|Dec 4, 2008
|Michael Thornburgh
|System and/or Method for Client-Driven Server Load Distribution
|Jun 28, 2007
|Jan 1, 2009
|Microsoft Corporation
|Client request based load balancing
|Jul 17, 2007
|Jan 22, 2009
|Thornburgh Michael C
|Endpoint discriminator in network transport protocol startup packets
|May 13, 2008
|Nov 19, 2009
|Adobe Systems Incorporated
|Many-to-One Mapping of Host Identities
|Jul 6, 2009
|Jan 28, 2010
|Canon Kabushiki Kaisha
|Workflow processing apparatus
|Nov 24, 2008
|May 27, 2010
|Joshi Kaustubh R
|Detecting Hidden Shared Dependencies Through Covert Channels
|Feb 13, 2008
|Dec 4, 2008
|Adobe Systems Incorporated
|System and/or method for client- driven server load distribution
|U.S. Classification
|718/105, 709/201, 709/224, 709/206, 709/225, 709/238, 709/227, 710/240
|International Classification
|Cooperative Classification
|European Classification
|Sep 24, 2001
Owner name: INTEL CORPORATION, CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:JASON, JAMES L. JR.;REEL/FRAME:012227/0190
Effective date: 20010924
|Oct 28, 2009
|Fee payment
Year of fee payment: 4
|Oct 2, 2013
|Fee payment
Year of fee payment: 8


text:
Tri County's Kral signs to golf at Cleary University
HOWELL — Tri County's Taylir Kral will continue her golfing career at the next level.
Kral recently signed her letter-of-intent to play golf in college for Cleary University in Howell.
Cleary women's golf coach expects Kral to be competitive right away.
"Taylir has the talent to step in and help our team be competitive right away," Bob Fillips said. "She was a regional champ and hits the long ball well. She will really help us out."
As a junior, Kral was the Lakes 8 Conference champion and was named to the first team. Kral qualified for state and finished 27th overall after a 12th place regional finish.
Kral was the Vikings' captain as a senior and led the team in average for nine holes (44) and 18 holes (88). She finished first at regionals and again qualified for state and finished 26th. She has a 12 handicap.
"Cleary University will be the place where I will pursue my dream of playing golf and preparing for the next chapter of my life," Kral said. "I chose Cleary because I have the opportunity to play as a freshman, the coaching staff is great and the girls on the team are great."
Tri County coach Roxanne Faber watched Kral's growth on the golf course the past two seasons on varsity.
"In the past year, Taylir has truly grown into a mature golfer," she said. "She has strengthened her technique in minimizing strokes associated with errors and has learned how to use the rules of golf in her favor."
Kral was the team's MVP and earned the most dedicated awards in both her junior and senior seasons.
"I believe Taylir will be very successful at the college level. She absolutely loves the game of golf and goes above and beyond to improve every aspect of her game," Faber said. "Taylir will have the opportunity to learn and incorporate different methods of strategy in her golf game at Cleary University. We wish Taylir the very best and the team will truly miss her next season."
Kral plans to major in business management.
"Cleary offers small class sizes and I can get a degree in business management," she said.
Cleary University reintroduced its collegiate athletic program in 2011 when it formed teams for men's and women's golf and cross country. Cleary's athletic program also includes: men's and women's soccer, baseball, softball and bowling. Baseball and softball are scheduled to begin in 2015.
Cleary is a member of the United States Collegiate Athletic Association (USCAA).
Cleary University is an independent, not-for-profit, multi-campus, specialized business university, committed to the betterment of society through the success of its alumni and their employers. Cleary's mission is to provide a practical, application-based education, which equips students to advance their careers.

subset: commoncrawl


text:
Categories > Pumps & Pump Systems > Centrifugal Pumps > Motor Driven Pumps > Close Coupled Centrifugal Pumps> 1/2 - 5 HP Stainless Steel Centrifugal Pump / Motor Units, Straight
1/2 - 5 HP Stainless Steel Centrifugal Pump / Motor Units, Straight
For Chemical Solutions Transfer
Series NPE Stainless Steel Centrifugal Pumps from Goulds Pumps. The ideal choice for chemical solutions transfer. Close-coupled pump/motor units or pedestal mount designs in 316SS construction for added corrosion resistance. All standard pumps are fitted with type 21 mechanical carbon/silicon carbide/Viton® seals. Motors are totally enclosed fan cooled, 1-phase or 3-phase. (ODP and explosion-proof also available). Maximum temperature is 250 Deg. F. Pumps can be mounted in horizontal or vertical position.


text:
Oregon Historical County Records Guide
Grant County Scenic Images
Dewitt Museum
buy high resolution copy | next image
The Dewitt Museum in Prairie City. (Photo No. graDB6025)
About this image
Dimensions: 4326 x 2872 pixels (300 dpi version); Date created: May 2012; Camera: Nikon D7000 Digital SLR; Lens: Nikon AF-S DX Nikkor 18-200mm F/3.5-5.6G ED VR II; Photographer citation: Gary Halvorson, Oregon State Archives; Keywords/Tags: horizontal, Oregon, Grant County, Prairie City, Dewittt Museum, history, historic building, train, railroad, artifacts, blue sky, park, U.S. flag, lawn, grass, trees.
buy high resolution copy | next image
County guide home | Scenic images home


text:
Hotel Atenea Port Barcelona Mataro
Select your stay dates to check availability at Hotel Atenea Port Barcelona Mataro
Hotel Atenea Port Barcelona Mataro
About the Hotel
Property Location
With a stay at Hotel Atenea Port Barcelona Mataro in Mataro, you'll be connected to the airport and minutes from Port De Mataro, and close to Argentona Water Jug Museum. This 4-star aparthotel is within the vicinity of Illa Fantasia and Palau Foundation.
Make yourself at home in one of the 105 air-conditioned rooms featuring minibars and plasma televisions. Rooms have private balconies. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Bathrooms have complimentary toiletries and hair dryers.
Pamper yourself with a visit to the spa, which offers massages, body treatments, and facials. You're sure to appreciate the recreational amenities, including an outdoor pool, an indoor pool, and a steam room. Additional features at this aparthotel include complimentary wireless Internet access, babysitting/childcare (surcharge), and an arcade/game room.
Grab a bite to eat at the aparthotel's restaurant, where you can take in a garden view, or stay in and take advantage of room service (during limited hours). While enjoying a refreshing dip in the aparthotel pool, you can order your favorite drink at the poolside bar.
Business, Other Amenities
Featured amenities include a business center, complimentary newspapers in the lobby, and dry cleaning/laundry services. Event facilities at this aparthotel consist of a conference center and meeting rooms. Self parking (subject to charges) is available onsite.
Hotel Facilities
- Garden
- Total number of rooms - 105
- Free newspapers in lobby
- Luggage storage
- Number of floors - 4
- Number of buildings/towers - 1
- Tours/ticket assistance
- Arcade/game room
- Breakfast available (surcharge)
- Restaurant
- Pool sun loungers
- Year Built 2012
- Library
- Conference center
- Terrace
- Full-service spa
- Outdoor pool
- Accessible bathroom
- Fitness facilities
- Free WiFi
- Self parking (surcharge)
- Indoor pool
- Multilingual staff
- Spa services on site
- Poolside bar
- Steam room
- Babysitting or childcare (surcharge)
- Computer station
- Dry cleaning/laundry service
- Meeting rooms 6
- Babysitting or childcare
- Wedding services
- Turkish bath/Hammam
- Business center
Room Facilities
- Free WiFi
- Satellite TV service
- Free toiletries
- In-room climate control (air conditioning)
- Plasma TV
- Free wired high-speed Internet
- Room service (limited hours)
- Free cribs/infant beds
- Daily housekeeping
- Desk
- Dial-up Internet access (surcharge)
- In-room safe (laptop compatible)
- Minibar
- Connecting/adjoining rooms available
- Premium TV channels
- Yard
- Hair dryer
Hotel Policy
Know Before You Go
- Cash transactions at this property cannot exceed EUR 2500, due to national regulations. For further details, please contact the property using information in the booking confirmation.
- Reservations are required for massage services and spa treatments. Reservations can be made by contacting the aparthotel prior to arrival, using the contact information on the booking confirmation.
- The property has connecting/adjoining rooms, which are subject to availability and can be requested by contacting the property using the number on the booking confirmation.
- Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
The following fees and deposits are charged by the property at time of service, check-in, or check-out.
- Fee for buffet breakfast: EUR 10.50 for adults and EUR 5.50 for children (approximately)
- Self parking fee: EUR 9 per day
- Rollaway bed fee: EUR 20 per stay
The above list may not be comprehensive. Fees and deposits may not include tax and are subject to change.
Mandatory Fees and Taxes
You'll be asked to pay the following charges at the property:
- New Year's Eve (31 December) Gala Dinner per adult: EUR 120
- A tax is imposed by the city: EUR 0.99 per person, per night, up to 7 nights. This tax does not apply to children under 17 years of age.
We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.Show all hotel policy Show less hotel policy


text:
Completely restored noew JASPER 454 hp(2)in 2013 Boat very clean and well maintained. Included bridge enclosure, dvd player, microwave oven, elect rangw, 6cu ft refrig, 6 gal water heater, F/F D/F. radar 16 mile, ac and heat 12,000btu, dual batteries w/switch, swim platform with ladder, vac. flush head w/ holding tank, windlas
5724 N. Route 9
New Gretna, NJ 08224
United States


text:
DIY Guide: Coolant System! Bleeding, Leaks, Hoses & Expansion Tank Explained!
View Single Post
Registered User
Join Date: Apr 2010
Location: Melbourne, Australia
Posts: 534
My Ride: 330CiC
View My Garage
All good advice and I completed the DIY around two months ago. Only thing different in the DIY was that I found that in step 43 my bolt was actually an 8mm hex and not a T50 torx. I found that removing the expansion tank (ET) was one of the hardest parts (same difficulty as the lower radiator hose) and found that it helped to ask someone to pull from the top while I pushed from the bottom - before getting a face full of coolant from whatever was left in the ET.
I also made a pdf version of the
DIY so I had big pictures to quickly refer to while under my car (8.5mb):
Unfortunately a leak has sprung above the ET and I cannot seem to find where it could be coming from for the life of me. The top ridge of my ET is a little wet with coolant, but when I reach my fingers under the two hoses above the ET (hose to ET and hose to radiator) I can't feel any wet coolant. It's also not coming from the bleed valve on top of my upper radiator hose as there are no coolant stains there.
Do you have any ideas on where or why I might be getting coolant wetness around the top of my ET? When I first found it, there was so much coolant that there was a small puddle that splashed through my splash guard! Now it's more like what the pictures look like:
Last edited by dan_1337; 11-08-2011 at
View Public Profile
Find more threads by dan_1337
Find More Posts by dan_1337
Leave feedback for dan_1337 (0)


text:
- Description
- Reviews
- Q and A
- Related Products
This traditional style paper page scrapbook album has a leatherette solid color cover with gold accents.
See also:
- Includes: 25 heavy white paper pages (50 sides)
- Screwpost binding allows pages to lie flat and accepts unlimited White Paper Refill Pages or Magnetic Style Refill Pages
- Overall Dimensions: 11-5/8"W x 12-1/4"H x 1" Thick
- Page size: 11-1/4" x 11-3/4"
- Optional side loading, clear plastic slip-on Sheet Protectors sold separately
- Archival, acid free, photo safe
See also:
- Lineco Peel-Stick Clear Pockets in a variety of sizes.
Write a review
The Best
Feb 17, 2017 | By Marti
I've been using these scrapbooks for years. Just needed more and extra pages and posts. I did look at scrapbook in supplies in a couple stores, but nothing is as adaptable as these. And the shipping was fast
Was this review helpful?
Adding to Scrapbook
Nov 8, 2016 | By Lawrence KAHLER
Very pleased to have found the Pioneer SB-700 scrapbook at Get SMART Products .Purchased this same model some decades ago and now I can continue and expand my scrap-booking efforts with the identical model. Thanks.
Was this review helpful?
Great for photo albums
Aug 20, 2016 | By Suzanne Hutton
I have tried several styles of photo albums. The sticky back with mylar overlay affected the photos. Spines on some eventually fell apart. The only albums I saw that lasted were the kind my mother had from the 2949s or 50s - heavy construction paper in covers held together with robust string. The posts should hold up over the years and the large paper allows different configurations of multiple photos.
Was this review helpful?
Jul 20, 2016 | By Ilah Turner
Love the expandable feature
Was this review helpful?
Pioneer SB-700 Scrapbooks
Jan 19, 2016 | By Larry Jones
I've been using the Pioneer SB-700 scrapbooks for a number of years. Each time we go to Japan I put together a scrapbook of the trip when we return. I have a good size stack of scrapbooks covering such trips. They are all in good shape, therefore I have plan to continue to use them. The scrapbooks are good, Get Smart is very prompt in filling my orders and the website is easy to use.
Was this review helpful?
Customers Also Bought
Pioneer 622500 High Capacity 500 Pocket Photo AlbumPrice
Pioneer STC-504 3-Ring Photo AlbumPrice
MCS 8x10 Solid Wood Value FramePrice


text:
Hotel La Boheme, Amsterdam Översikt
Jämför priser och boknings tillgänglighet Hotel La Boheme, Amsterdam
Hotel La Boheme, Amsterdam Detaljer
Hotel La Boheme Hotell Översikt
This environment friendly hotel is located in the city centre of Amsterdam, near the Vondelpark, Leidseplein and Museumplein.
Please notify the hotel if you check-in after 16:00.
Hela anläggningen är rökfri, Stadskartor, Tv i lobbyn
Barnvakt, Bagageförvaring, Tvättservice, Turistinformation, Utflykts/biljettassistans
Avgiftsbelagd parkering finns nära hotellet.
Trådlöst internet (Wi-Fi) utan extra kostnad i alla rum och allmänna områden (lobby/reception mm)
1) From Schiphol Airport: From the airport you can take bus nr. 197 directly to the 'Leidseplein' stop, which is a minute's walk from the hotel. Additionally, a train runs from the airport to Amsterdam Central Station every 20 minutes. When you arrive at the airport, go to the central hall, there is a big sign with the train information. The trains to the central station run from 05:40 to 00:30 (go to step 2).
2) From Amsterdam Central Station: You can take tram nr. 1, 2 or 5 from the square in front of the station to 'Prinsengracht/Leidsestraat'. From there you can walk to the hotel in approximately 3 minutes. The trams in Amsterdam normally run from 07:00 to 01:00.
Hotel La Boheme, Amsterdam Hotelldetaljer
Hotel La Boheme Amsterdam is centrally located near the Leidseplein entertainment area, which is an ideal starting point to explore the bustling nightlife of Amsterdam. In the vicinity of this square is a wide variety of charming restaurants, bars, coffee shops and famous clubs. Also easily reached on foot is Museumplein, featuring some of the city's most important museums, including the Van Gogh Museum, Rijks Museum and Stedelijk museum. Thanks to its central location, the hotel is surrounded by the beautiful canals of Amsterdam, shopping streets, Vondelpark and Jordaan.
A Greenkey certificated hotel since 2012, Hotel La Boheme takes care of the environment and serves ecological friendly products. The staff of this small and friendly property is very helpful and provides all tourist information and can book any kind of tour for you. The hotel's bar is open daily until 23:00, you can have a drink and chat with the staff or you can watch TV or play a game. The hotel also serves small snacks and they can order meals for you. In addition, complimentary wireless Internet is accessible throughout the property and parking is available at the nearby Europarking.
Offering bedrooms for all types of travelers, Hotel La Boheme Amsterdam features single and double rooms with either a shared or a private bathroom. The 18 non-smoking bedrooms have a sober décor and enjoy practical amenities such as a safe, direct dial telephone, alarm clock and a television. Some rooms enjoy a garden view and all are cleaned daily.


text:
Mumbai: Unexpected and unwanted news for the beautiful actress Aishwaria Rai has surfaced. It seems that the Bollywood super star is no longer wanted by the L'Oreal Company to promote their products in India. The rumors are that Ash has been replaced by Freida Pinto as the Indian face of the international firm.
The end of this time in the advertisement world has finally arrived for the ex Miss World, who also happens to be one of the most popular celebrities in the Bollywood film industry. The newest face of the company is question is Freida Pinto who already featured in a TV ad for the New Year.
Aishwaria Rai has been the face of the cosmetic giant since the year 2005. Freida Pinto, the super star from the film 'Slumdog Millionaire' has been representing the L'Oreal Company only for a short time, since 2009.
Aishwaria Rai has not made any comment on this. The actresses' spokesperson has stated that they don't have an official comment, as they have to find out first what happened.


text:
Partnering with clients to provide on-demand contract lawyers, giving in-house legal teams the confidence to be agile.
There are many instances where a Chapter 6 takeover bid commences on a 'hostile' basis but ultimately becomes 'friendly', with the bidder securing the support of the target's board - typically only once the bidder improves the price and/or conditionality of its bid to a level that is acceptable to the target's board. In these situations, the bidder will usually maintain its initial Chapter 6 bid structure, with the target's board issuing a Target's Statement recommending that shareholders 'Accept' the improved offer. But what if, after the initial hostilities cease and the target's board agrees to recommend the bidder's improved offer, the bidder wants to abandon its Chapter 6 bid structure and proceed with a scheme instead? Can this be done? The short answer is 'Yes, subject to ASIC relief'. This situation is demonstrated by the current SAB Miller/Foster's scheme. SAB Miller initially sought to engage with the Foster's board by submitting an indicative, non-binding proposal at $4.90 per share. This preliminary approach was publicly disclosed and rejected by the Foster's Board on 21 June 2011. On 17 August 2011, SAB Miller announced its intention to make a hostile takeover bid at the same price of $4.90 per share, less any dividend or distribution paid or declared by Foster's. Approximately one month later, SAB Miller succeeded in securing the support and recommendation of the Foster's Board after:
The improved offer was structured as a scheme between Foster's and its shareholders. In other words, SAB Miller abandoned its initial Chapter 6 bid in favour of a scheme. From a bidder's perspective, one important point to appreciate when shifting from a publicly announced Chapter 6 takeover to a scheme of arrangement is that a bidder must apply to ASIC for relief from its statutory obligation to proceed with the takeover offer within 2 months after the takeover bid was publicly announced. The relief granted by ASIC to SAB Miller is conditional on SAB Miller fulfilling its statutory obligation to proceed with its earlier announced takeover offer if the scheme of arrangement fails. So, if the scheme is not approved by shareholders on 1 December 2011 or if the scheme otherwise fails, SAB Miller will be required to follow through with its original bid as announced on 17 August 2011 (ie. $4.90 per share less the final dividend of 13.25 cents and subject to the announced defeating conditions).From a purist's viewpoint, the condition attached to ASIC's relief is appropriate – after all, SAB Miller's desire to change to a scheme should not deprive Foster's shareholders of the offer for their shares that the takeover provisions of the Corporations Act promise. However, from a practical perspective, the conditional nature of ASIC's relief arguably makes less sense. The hostile bid first announced was at $4.90 less any dividend or distribution and was subject to a 90% minimum acceptance condition. The scheme proposed is at $5.10 plus the 13.25 cent final dividend plus a 30 cent capital return. Therefore, the scheme offers Foster's shareholders substantially more funds in their hands than the originally announced takeover bid. Viewed in this light, it is difficult to conceive of a situation where, if the scheme fails to achieve 75% approval, SAB Miller (which would then be compelled by ASIC to follow through with its initial hostile bid at the lower price and on the announced terms) would secure sufficient acceptances to fulfil the 90% minimum acceptance condition. Similarly, if the Foster's scheme is approved by shareholders but fails because of a 'material adverse change' or other non-fulfilled condition before the second court hearing, it is likely that the same circumstances would enliven one or more of the conditions attached to SAB Miller's originally announced bid. Therefore, requiring SAB Miller to follow through with its original takeover bid is unlikely to provide much protection for Foster's shareholders if the scheme fails: any acceptances of offers received under SAB Miller's 'enforced' original bid would only create a conditional contract between SAB Miller and each accepting shareholder. SAB Miller could maintain the condition(s) and wait for the offer period to end, at which point the conditional contracts would lapse.
The legislative requirement that a party who announces an intention to make a takeover bid must proceed to make offers within two months on the same or substantially no less favourable terms than those announced serves an important public policy purpose. Similarly, ASIC has a legitimate point in ensuring that target shareholders are not disadvantaged if a bidder wishes to change from a bid structure to a scheme structure, However, with due respect to these two considerations, our view is that it is time for ASIC to concede that if an announced takeover does not have any prospect of success due to a supervening event or other subsequent development, it is appropriate to free bidders unconditionally from the barren obligation to make offers within two months of the announcement.
This article is from our November 2011 edition of Mergers & Acquisitions newsletter.


text:
I came across this great tutorial at a blog called Kiwi at Heart.
Very cute and super easy to follow tutorial.
I love to chat so please leave me a comment or ask a question.Don't stress if your comment doesn't appear immediately - sometimes I have to moderate comments thanks to spam visitors, but the comments from real readers will always get published. Scroll down to add your thoughts or ask a question.
That is adorable (who doesn't love a yoyo). Perfect for my desk. Thanks for posting this.
Oh this is totally cute!! So darn cute!!!
That's what I thought!
I'm thinking I'll use various sizes of cups and bowls to trace my circles straight onto fabric, rather than creating the templates like the tutorial suggests.


text:
Click on a thumbnail to go to Google Books.
Dreams of Desire (Sensual Destiny - Book 3)
by Cheryl Holt
Work details
Dreams of Desire by Cheryl Holt
No current Talk conversations about this book.
I reviewed this book for Romance Reader At heart website.
RRAH's THOUGHTS AND PONDERINGS:
I'm perplexed as to where to start with my review of DREAMS OF DESIRE. I was stunned that I liked it. There was no 'history' in this historical; what I did feel was chemistry between all the players. Secondary players and sexual tension abound in this tale of passion and love, sprinkled with a dose of magic. I laughed, I yelled, and the ending brought me to tears.
Our heroine is Lily Lambert, an orphaned spinster that has dreams and expectations like any other woman of her time. She wants a steady home, someone to love, and children to rear. But Lily is also a very astute and realistic female of her time. She comes to accept the fact that Prince Charming is just not in the cards for her. Working for a living is something she is meant to do for the rest of her life, so she takes a position of companion to eighteen-year-old twins, who are the wards of John Middleton, the Earl of Penworth.
Our hero is John Middleton, the Earl of Penworth, a man who was abandoned by his mother at the age of two and brought up by his stepmother. He is always cool, calm, and collected, and by most the word 'boor' would describe him best. His father brought him up to respect his position in life and to adhere to its principles and protocols. There was no room for play or laughter in his life, let alone love. Attending to his duties is all he knows about, and one of those is to make sure he chooses a suitable bride. Lady Violet Howard, a Duke's daughter of eighteen years of age, is the best candidate John picked himself, thinking she'd suite him best.
Then we have Phillip Dubois, or Phillip Dudley, our Gypsy extraordinaire, who apparently is the glue to all three books. He's a restless young man that's been traveling all his life with his sister throughout rural England, selling his remedies and potions, and that's something our heroine, smart as she is, practical as she is, ends up buying—hoping against hope that maybe, just maybe, it might work and bring her love.
As much as our hero was arrogant and selfish at times, I came to like his charm and wit. I enjoyed his interaction with everyone, especially with Lily, who was strong, clever, and quick with her retorts. Her common sense and wit come in handy when she has to deal with not just her employee, but also with his crazy stepmother and her spoiled son Edward, the twins from Hell, Melanie and Miranda, and his 'meek' and suitable fiancée. The only sane person in this menagerie was his real mother, Barbara, who 'infiltrates' the group and makes the 'bedlamites' squirm.
In order for you to like this story, you need to accept it for what it is and not for what you expected it to be. This is a lighthearted, fast-paced, silly romantic comedy, and I, for one, was ready for it. It was kind of refreshing to read something like it after so many romances that pulled at my heartstrings.
So, if you want your funny bone tickled and your passions stirred, head to the nearest bookstore and get yourself all three 'Spinster's Curse Regency' novels. TASTE OF TEMPTATION and PROMISE OF PLEASURE just joined my TBR shelf.
References to this work on external resources.
Wikipedia in English
Amazon.com Product Description (ISBN 0425239187, Mass Market Paperback)
The third Novel of Sensual Destiny tells the intoxicating story of an innocent lady's companion, who drinks a magical potion-and is swept into a dangerous relationship of decadent desire.
(retrieved from Amazon Thu, 12 Mar 2015 18:16:01 -0400)
Every instinct is telling Lily Lambert to run from Penworth Hall as fast as she can, but there is something about handsome, daunting John Middleton the Earl of Penworth, that keeps her in his employ. It certainly isnt his twin wards, eevil little vixens who will do anything in their power to have Lily fired as their chaperone. And the love potion isnt helping...… (more)
(summary from another edition)
Amazon Kindle (0 editions)
Audible (0 editions)
CD Audiobook (0 editions)
Project Gutenberg (0 editions)
Google Books — Loading...
Is this you?
Become a LibraryThing Author.


text:
Review links from your group.
1. animalplanet
You can play lots of cool games here!!
2. travelpet
Are you going on a trip ?? Take your buddy along too!! You can Book here!!
3. Petsmart
petsmart has cool bling for you puppy Girl/Boy
tips and some games to play some videos on animalland too!!
5. harrisonk9
Do you like German Shepards they cost alot ( becasue they attack on command and understand different languges)
6. Planet Dog
buy some cool toys for your friends ( canine) based on the chew -o -meter!! cute toys too!!
7. Pets911
adpot another friend ?? try here!!
8. Petfinder
Looking for a new play pal... purebreed? , Mix ?, help save a life adopt!
9. Pettags
Looking for a gold tag??? Look here! Or are you looking for a leash, coller with your dogs info on it?? Or even a Taz or BugsBunny Tag Look here!!
These new comers need friends!! Try to invite they into our group!! Some of these pups only have 5 to little or no friends!!
11. Engadget
Help Prevent a lost dog with a GPS system and a bouns!!
Help save these animals from being killed! They (some) have only minitues left to live! Tell others! Please tell others, and potential adopters!
13. Mbif
You can get cool cursers, backgound etc from here! This is where I got the backgound and curser for my (Milo) page!