|
vicodin drug The LBX Mini-HOWTO Paul D. Smith, psmith@baynetworks.com v1.04, 11 December 1997 LBX (Low Bandwidth X) is an X server extension which performs compres sion vicodin drug n the X protocol. It is meant to be used in conjunction with X applications and an X server which are separated by a slow network connection, to improve displ vicodin drug y and response time. ______________________________________________________________________ Table of Contents 1. Introduction 2. What's The Status Of LBX? 3 vicodin drug Who Can Benefit From LBX? 4. Who Doesn't Need LBX? 5. How Does LBX Work? 6. What Do I Need To Use LBX? 7. What Don't I Need To Use LBX? 8. How Do I Start L vicodin drug X? 9. Problems 10. Documentation 11. Alternatives 11.1 dxpc - The Differential X Protocol Compressor 11.1.1 Advantages 11.1.2 Disadvantages vicodin drug 11.1.3 Where Can I Get dxpc? 11.2 Ssh (Secure Shell) 11.3 Which Is Better? ______________________________________________________________________ vicodin drug 1. Introduction Low-Bandwidth X (LBX) attempts to recognize that in this day and age, not everyone will be a fast LAN hop or two away from the system that th vicodin drug y are running their applications on. The X protocol can generate an extraordinary amount of traffic, especially for simple-seeming things such as creating new vicodin drug indows. As anyone who has tried to use X over a dial-in modem at 28.8 or even higher can attest, creating new X windows can involve an excruciating wait. LB vicodin drug is fundamentally a compression and caching scheme designed to minimize the amount of X traffic generated between two systems. 2. What's The Status Of LBX? A vicodin drug of the X Consortium's release of X11R6.3 in December, 1996, LBX is a full extension to the X protocol. For XFree86 folks, that's XFree86 version 3.3. 3. Wh vicodin drug Can Benefit From LBX? If you use a modem to dial into a service provider, then run X applications on remote machines with their DISPLAYs set to your local ma vicodin drug hine (or vice versa), LBX will speed up that connection. Also if you set DISPLAYs from systems across WANs (other countries, for example) or other slow links, vicodin drug LBX can help. 4. Who Doesn't Need LBX? LBX is useless, of course, if you're only running applications locally, or if you're not running X at all. Also, if y vicodin drug u're running on a fast LAN, LBX won't be much help. Some people say "if LBX cuts down on network traffic, wouldn't it be good to use even on fast LANs?" It m vicodin drug ght be, if your goal is to reduce network traffic. But if your goal is to get better response time LBX probably isn't what you want. Although it does introdu vicodin drug e caching and compression, that comes at a cost on both ends (extra memory for caching, and extra CPU for decompression). If your link is fairly speedy LBX w vicodin drug ll probably result in an overall slowdown. 5. How Does LBX Work? LBX works by introducing a proxy server at the client side, which performs caching and compr vicodin drug ssion. The X server knows that the client is using a proxy server, and decompresses accordingly. Here's a normal setup for remote X clients. In our discussio vicodin drug , LOCAL is always the workstation sitting in front of you, whose monitor you're looking at, and REMOTE is the remote workstation, where the actual application vicodin drug is running. ______________________________________________________________________ REMOTE LOCAL +-----+ vicodin drug +-----+ | APP |-\ Network +----------+ | |\ +-----+ \---------------------------> vicodin drug X SERVER |=>| || +-----+ / (X Protocol) +----------+ +-----+\ | APP |-/ /_____// vicodin drug +-----+ ______________________________________________________________________ When using LBX, a proxy server (lbxproxy) is introduced on the remote si vicodin drug e, and the applications talk to that process instead of directly to the LOCAL server. That process then performs the caching and compression of X requests and vicodin drug forwards them. It looks like this: ______________________________________________________________________ REMOTE vicodin drug OCAL +-----+ +-----+ +-------+ Network +----------+ | |\ | APP |-> vicodin drug PROXY |----------------------------->| X SERVER |=>| || +-----+ +-------+ (LBX/X Protocol) +----------+ +-----+\ +-----+ / vicodin drug /_____// | APP |--/ +-----+ ______________________________________________________________________ Details on exactly wh vicodin drug t caching and compression LBX does is beyond the scope of this document. 6. What Do I Need To Use LBX? You need an X server on your LOCAL system which has th vicodin drug LBX extension compiled in. Unless you explicitly told it not to when building it, X11R6.3 servers automatically enable LBX. Also, all XFree86 3.3 servers h vicodin drug ve LBX enabled by default. You can use the xdpyinfo command to see if your server has the LBX extension: run xdpyinfo and look at the list just under "number o vicodin drug extensions"; you should see "LBX" listed there. Next, you need to get an lbxproxy program compiled for the REMOTE system. This is the tricky part. If the r vicodin drug mote system is not the same type as your local system, the lbxproxy on your local system will do you no good, of course. There is unfortunately no "broken out vicodin drug distribution of lbxproxy, so you will have to either (a) get and build most, if not all, of X11R6.3 for the remote system, or (b) find someplace to get a pre- vicodin drug ompiled lbxproxy binary for your system. The latter is much simpler of course. The lbxproxy is simply a single executable. There are no configuration files vicodin drug resource files, etc. associated with it. 7. What Don't I Need To Use LBX? The REMOTE system does not need a new X server (as always, the REMOTE system doesn vicodin drug t need any X server running). The application you want to run does not need to be linked with any special version of X, or any special libraries; I regularly u vicodin drug e commercial X11R5 apps over LBX with no trouble. You do not need root or other privileged access on the REMOTE system; the lbxproxy process runs under your n vicodin drug rmal access permissions. Further, you can run it right from your home directory: it does not have to be installed anywhere. 8. How Do I Start LBX? OK, here vicodin drug t is... after all that it's actually quite simple. Replace LOCAL and REMOTE below with the hostnames of your local workstation and remote system, respectively vicodin drug (don't get them mixed up!) On LOCAL: 1. Start your X server. 2. Tell your X server that the remote system is allowed access. Using the host-list method, vicodin drug ype xhost +REMOTE. If you use xauth you may need to do more than this; see the xauth(1) man page for more information. You should consult the Remote vicodin drug X Apps Mini-HOWTO if you're not familiar with remote X access permission setup. On REMOTE: 1. Start lbxproxy vicodin drug nd tell it to forward to the LOCAL X server, like this: $ lbxproxy -display LOCAL:0 :1 & This tells lbxproxy to use display :1 on the REMOTE system; vicodin drug if that system has >1 display already you can use :2 or whatever instead. 2. Set your DISPLAY environment variable to point to the display that lbxproxy is vicodin drug providing, instead of the normal display: $ DISPLAY=:1 $ export DISPLAY Or, if you use csh or clones: % setenv DISPLAY :1 3. If you're vicodin drug sing xauth you will need to ensure that your cookie is available locally. See the Remote X Apps Mini-HOWTO for vicodin drug more information on this. 4. Start your X applications! That's it; all X apps that are started up pointing to :1 will use LBX. Of course, there's no reaso vicodin drug you couldn't also start X apps pointing to LOCAL:0 and have both running at the same time. 9. Problems Here are some common problems: Q) lbxproxy exits with an "access denied" error. A) This means the LOCAL system isn't accepting connections from the REMOTE system due to permissions errors. See the Remote X Apps Mini-HOWTO for details on these issues. As a simple trouble-shooting measure, try running a simple X app like xclock on REMOTE and have it display on the local system without using lbxproxy: $ xclock -display LOCAL:0 If that doesn't work, it's xhost or some other basic X problem, not LBX. 10. Documentation The only documentation available in a standard X distribution may be the lbxproxy(1) man page.
|