view Documentation/networking/ipddp.txt @ 897:329ea0ccb344

balloon: try harder to balloon up under memory pressure.

Currently if the balloon driver is unable to increase the guest's
reservation it assumes the failure was due to reaching its full
allocation, gives up on the ballooning operation and records the limit
it reached as the "hard limit". The driver will not try again until
the target is set again (even to the same value).

However it is possible that ballooning has in fact failed due to
memory pressure in the host and therefore it is desirable to keep
attempting to reach the target in case memory becomes available. The
most likely scenario is that some guests are ballooning down while
others are ballooning up and therefore there is temporary memory
pressure while things stabilise. You would not expect a well behaved
toolstack to ask a domain to balloon to more than its allocation nor
would you expect it to deliberately over-commit memory by setting
balloon targets which exceed the total host memory.

This patch drops the concept of a hard limit and causes the balloon
driver to retry increasing the reservation on a timer in the same
manner as when decreasing the reservation.

Also if we partially succeed in increasing the reservation
(i.e. receive less pages than we asked for) then we may as well keep
those pages rather than returning them to Xen.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Fri Jun 05 14:01:20 2009 +0100 (2009-06-05)
parents 831230e53067
line source
1 Text file for ipddp.c:
2 AppleTalk-IP Decapsulation and AppleTalk-IP Encapsulation
4 This text file is written by Jay Schulist <jschlst@samba.org>
6 Introduction
7 ------------
9 AppleTalk-IP (IPDDP) is the method computers connected to AppleTalk
10 networks can use to communicate via IP. AppleTalk-IP is simply IP datagrams
11 inside AppleTalk packets.
13 Through this driver you can either allow your Linux box to communicate
14 IP over an AppleTalk network or you can provide IP gatewaying functions
15 for your AppleTalk users.
17 You can currently encapsulate or decapsulate AppleTalk-IP on LocalTalk,
18 EtherTalk and PPPTalk. The only limit on the protocol is that of what
19 kernel AppleTalk layer and drivers are available.
21 Each mode requires its own user space software.
23 Compiling AppleTalk-IP Decapsulation/Encapsulation
24 =================================================
26 AppleTalk-IP decapsulation needs to be compiled into your kernel. You
27 will need to turn on AppleTalk-IP driver support. Then you will need to
28 select ONE of the two options; IP to AppleTalk-IP encapsulation support or
29 AppleTalk-IP to IP decapsulation support. If you compile the driver
30 statically you will only be able to use the driver for the function you have
31 enabled in the kernel. If you compile the driver as a module you can
32 select what mode you want it to run in via a module loading param.
33 ipddp_mode=1 for AppleTalk-IP encapsulation and ipddp_mode=2 for
34 AppleTalk-IP to IP decapsulation.
36 Basic instructions for user space tools
37 =======================================
39 To enable AppleTalk-IP decapsulation/encapsulation you will need the
40 proper tools. You can get the tools for decapsulation from
41 http://spacs1.spacs.k12.wi.us/~jschlst/index.html and for encapsulation
42 from http://www.maths.unm.edu/~bradford/ltpc.html
44 I will briefly describe the operation of the tools, but you will
45 need to consult the supporting documentation for each set of tools.
47 Decapsulation - You will need to download a software package called
48 MacGate. In this distribution there will be a tool called MacRoute
49 which enables you to add routes to the kernel for your Macs by hand.
50 Also the tool MacRegGateWay is included to register the
51 proper IP Gateway and IP addresses for your machine. Included in this
52 distribution is a patch to netatalk-1.4b2+asun2.0a17.2 (available from
53 ftp.u.washington.edu/pub/user-supported/asun/) this patch is optional
54 but it allows automatic adding and deleting of routes for Macs. (Handy
55 for locations with large Mac installations)
57 Encapsulation - You will need to download a software daemon called ipddpd.
58 This software expects there to be an AppleTalk-IP gateway on the network.
59 You will also need to add the proper routes to route your Linux box's IP
60 traffic out the ipddp interface.
62 Common Uses of ipddp.c
63 ----------------------
64 Of course AppleTalk-IP decapsulation and encapsulation, but specifically
65 decapsulation is being used most for connecting LocalTalk networks to
66 IP networks. Although it has been used on EtherTalk networks to allow
67 Macs that are only able to tunnel IP over EtherTalk.
69 Encapsulation has been used to allow a Linux box stuck on a LocalTalk
70 network to use IP. It should work equally well if you are stuck on an
71 EtherTalk only network.
73 Further Assistance
74 -------------------
75 You can contact me (Jay Schulist <jschlst@samba.org>) with any
76 questions regarding decapsulation or encapsulation. Bradford W. Johnson
77 <johns393@maroon.tc.umn.edu> originally wrote the ipddp.c driver for IP
78 encapsulation in AppleTalk.