This file is indexed.

/usr/share/doc/HOWTO/fr-html/LBX.html is in doc-linux-fr-html 2013.01-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for Linux (vers 25 March 2009), see www.w3.org">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.69">
<title>Mini-HOWTO LBX</title>
</head>
<body>
<h1>Mini-HOWTO LBX</h1>
<h2>Paul D. Smith, <code><a href=
"mailto:psmith@baynetworks.com">psmith@baynetworks.com</a></code>,
trad. : <a href="mailto:xglattard@aol.com">Xavier Glattard</a></h2>
v1.04, 11 D&eacute;cembre 1997, trad. Juin 1997
<hr>
<em>LBX (Low Bandwidth X, X Faible Bande-passante) est une
extension du serveur X qui effectue une compression du protocole X.
En d'autres termes, elle permet, dans le cas d'applications X et
d'un serveur X s&eacute;par&eacute;s par une connexion
r&eacute;seau lente, d'acc&eacute;l&eacute;rer l'affichage et de
r&eacute;duire les temps de r&eacute;ponse.</em>
<hr>
<h2><a name="s1">1. Introduction</a></h2>
<p><em>Low-Bandwidth X</em> (LBX) prend en compte le fait que de
nos jours tout le monde ne travaille pas qu'&agrave; une ou deux
connexions rapides du serveur sur lequel tournent ses
applications.</p>
<p>Le protocole X peut g&eacute;n&eacute;rer un trafic
extraordinaire sur votre r&eacute;seau, en particulier pour des
choses apparemment simples telles que la cr&eacute;ation de
nouvelles fen&ecirc;tres. Quiconque aura essay&eacute; d'utiliser X
&agrave; travers une connexion modem &agrave; 28,8 (ou m&ecirc;me
mieux) vous le dira : cr&eacute;er de nouvelles fen&ecirc;tres X
n&eacute;cessite une patience &agrave; toute &eacute;preuve.</p>
<p>Le principe est le suivant : LBX est un syst&egrave;me de
compression et de cache con&ccedil;u pour minimiser le trafic X
g&eacute;n&eacute;r&eacute; entre deux syst&egrave;mes.</p>
<h2><a name="s2">2. Quel est le statut de LBX ?</a></h2>
<p>En tant que composant de la publication X11R6.3 du Consortium X
datant de d&eacute;cembre 1996, LBX est une authentique extension
du protocole X. Pour les utilisateurs de XFree86, cela correspond
&agrave; XFree86 version 3.3.</p>
<h2><a name="s3">3. Pourquoi utiliser LBX ?</a></h2>
<p>Si vous utilisez un modem pour vous connecter &agrave; un
prestataire de service, et que vous ex&eacute;cutez des
applications X sur des machines distantes, l'affichage (variables
DISPLAYs) &eacute;tant dirig&eacute; sur votre machine (et vice
versa), alors LBX acc&eacute;l&eacute;rera la connexion. De
m&ecirc;me, si vous redirigez l'affichage d'autres syst&egrave;mes
&agrave; travers des r&eacute;seaux &eacute;tendus (d'autres pays,
par exemple) ou &agrave; travers des connexions lentes, LBX peut
vous &ecirc;tre utile.</p>
<h2><a name="s4">4. Pourquoi ne pas utiliser LBX ?</a></h2>
<p>LBX est inutile, naturellement, si vous ex&eacute;cuter des
applications localement, ou si vous n'utilisez pas X.</p>
<p>De m&ecirc;me, si vous travaillez sur un r&eacute;seau local
rapide, LBX ne vous sera pas d'une grande utilit&eacute;. Certains
disent : "si LBX r&eacute;duit le trafic r&eacute;seau, ne
pourrait-on pas l'utiliser sur des r&eacute;seaux locaux rapides ?"
On pourrait, si le but est de r&eacute;duire le trafic sur le
r&eacute;seau. N&eacute;anmoins, cela introduirait du cache et de
la compression, qui consomment des ressources &agrave; chaque
extr&eacute;mit&eacute;s (de la m&eacute;moire
suppl&eacute;mentaire pour le cache, et du temps CPU pour la
d&eacute;compression). Si votre liaison est plut&ocirc;t
performante, LBX causera sans doute un ralentissement global du
r&eacute;seau.</p>
<h2><a name="s5">5. Comment fonctionne LBX ?</a></h2>
<p>LBX fonctionne en introduisant un <em>serveur proxy</em> du
c&ocirc;t&eacute; du client, lequel se charge du cache et de la
compression. Le serveur X sait que le client utilise un serveur
proxy, et d&eacute;compresse en cons&eacute;quence.</p>
<p>Voici un exemple de configuration classique pour des clients X
distants. Dans la suite, LOCAL repr&eacute;sentera toujours la
station qui se trouve en face de vous, et dont vous regardez le
moniteur, et DISTANT sera la station distante, sur laquelle votre
application est ex&eacute;cut&eacute;e.</p>
<blockquote>
<hr>
<pre>
<code>    DISTANT                               LOCAL
 +-----+                                             +-----+
 | APP |-\          R&eacute;seau            +-----------+  |     |\
 +-----+  \--------------------------&gt;| SERVEUR X |=&gt;|     ||
 +-----+  /     (Protocole X)         +-----------+  +-----+\
 | APP |-/                                          /_____//
 +-----+
</code>
</pre>
<hr></blockquote>
<p>Lors de l'utilisation de LBX, un serveur proxy
(<code>lbxproxy</code>) est introduit du c&ocirc;t&eacute; distant,
et les applications communiquent avec ce processus et non plus
directement avec le serveur LOCAL. Ce processus se charge alors du
cache et de la compression des requ&ecirc;tes X et les transmet.
Cela ressemble &agrave; &ccedil;a :</p>
<blockquote>
<hr>
<pre>
<code>     DISTANT                                     LOCAL
                                                           +-----+
 +-----+  +-------+        R&eacute;seau           +-----------+  |     |\
 | APP |-&gt;| PROXY |------------------------&gt;| SERVEUR X |=&gt;|     ||
 +-----+  +-------+    (LBX/Protocole X)    +-----------+  +-----+\
 +-----+   /                                              /_____//
 | APP |--/
 +-----+
</code>
</pre>
<hr></blockquote>
<p>Le d&eacute;tail des fonctions de cache et de compression de LBX
sort du cadre de ce document.</p>
<h2><a name="s6">6. De quoi ai-je besoin pour utiliser LBX
?</a></h2>
<p>Vous avez besoin sur votre syst&egrave;me LOCAL d'un serveur X
compil&eacute; avec l'extension LBX. A moins que vous n'ayez
explicitement demand&eacute; le contraire, les serveurs X11R6.3
incluent automatiquement LBX &agrave; la compilation. Par
cons&eacute;quent, tous les serveurs XFree86 3.3 incluent LBX par
d&eacute;faut.</p>
<p>Vous pouvez utiliser la commande <code>xdpyinfo</code> afin de
v&eacute;rifier si votre serveur dispose de l'extension LBX :
ex&eacute;cutez <code>xdpyinfo</code> et v&eacute;rifiez la liste
qui suit "number of extensions" (nombre d'extensions); vous devez
voir "LBX" dans cette liste.</p>
<p>Ensuite, vous avez besoin d'un programme <code>lbxproxy</code>
compil&eacute; pour le syst&egrave;me DISTANT. C'est le point le
plus d&eacute;licat. Si le syst&egrave;me distant n'est pas du
m&ecirc;me type que votre syst&egrave;me local, le
<code>lbxproxy</code> de votre syst&egrave;me local ne sera pas
bon, &eacute;videment.</p>
<p>Malheureusement, aucune distribution de <code>lbxproxy</code>
n'a jamais &eacute;t&eacute; publi&eacute;e. Par cons&eacute;quent,
vous devez soit (a) obtenir et compiler la majeure partie, sinon la
totalit&eacute;, de X11R6.3 pour le syst&egrave;me distant, soit
(b) trouver quelque part un ex&eacute;cutable <code>lbxproxy</code>
pr&eacute;compil&eacute; pour votre syst&egrave;me. Cette
derni&egrave;re solution est naturellement la plus simple.</p>
<p><code>lbxproxy</code> est constitu&eacute; d'un unique fichier
ex&eacute;cutable. Aucun fichier de configuration, de ressources,
etc. ne lui est associ&eacute;.</p>
<h2><a name="s7">7. De quoi n'ai-je pas besoin pour utiliser LBX
?</a></h2>
<p>Le syst&egrave;me DISTANT <b>n'a pas</b> besoin d'un nouveau
serveur X (dans tous les cas, le syst&egrave;me DISTANT n'a besoin
d'ex&eacute;cuter <em>aucun</em> serveur X).</p>
<p>L'application que vous voulez ex&eacute;cuter <b>n'a pas</b>
besoin d'&ecirc;tre li&eacute;e &agrave; une version
sp&eacute;ciale de X, ou &agrave; une biblioth&egrave;que
sp&eacute;ciale; j'utilise r&eacute;guli&egrave;rement des
applications commerciales X11R5 &agrave; travers LBX sans aucun
souci.</p>
<p>Vous <b>n'avez pas</b> besoin de droits d'acc&egrave;s "root" ou
privil&eacute;gi&eacute;s sur le syst&egrave;me DISTANT; le
processus <code>lbxproxy</code> utilise vos droits d'acc&egrave;s
normaux. De plus, vous pouvez l'ex&eacute;cuter depuis votre
r&eacute;pertoire personnel : il n'a pas besoin d'&ecirc;tre
install&eacute; &agrave; un endroit particulier.</p>
<h2><a name="s8">8. Comment je d&eacute;marre LBX ?</a></h2>
<p>Bon, nous y voil&agrave;... apr&egrave;s tout, rien de bien
compliqu&eacute; jusqu'&agrave; pr&eacute;sent. Remplacez dans la
suite LOCAL et DISTANT respectivement par les noms d'h&ocirc;te de
votre station locale et du syst&egrave;me distant (ne
m&eacute;langez pas tout!).</p>
<p>Sur LOCAL :</p>
<ol>
<li>D&eacute;marrez votre serveur X.</li>
<li>Donnez les droits d'acc&egrave;s du syst&egrave;me distant
aupr&egrave;s de votre serveur X. Avec la m&eacute;thode de la
liste d'h&ocirc;tes, tapez <code>xhost +DISTANT</code>. Si vous
utilisez <code>xauth</code> cela risque de ne pas &ecirc;tre
suffisant; consultez le manuel <em>xauth(1)</em> pour plus
d'informations. Vous pourriez consulter efficacement le mini howto
<a href=
"http://www.freenix.fr/linux/HOWTO/mini/Remote-X-Apps.html">Remote
X Apps</a> si vous n'&ecirc;tes pas familier avec la configuration
des droits d'acc&egrave;s distants sous X.</li>
</ol>
<p>Sur DISTANT :</p>
<ol>
<li>D&eacute;marrez <code>lbxproxy</code> en pr&eacute;cisant la
redirection vers le serveur X LOCAL, comme cela :
<blockquote>
<pre>
<code>  $ lbxproxy -display LOCAL :0 :1 &amp;
</code>
</pre></blockquote>
Cette commande indique &agrave; <code>lbxproxy</code> d'utiliser
l'&eacute;cran ("display") <code>:1</code> sur le syst&egrave;me
DISTANT; si ce syst&egrave;me dispose d&eacute;j&agrave; de plus
d'un &eacute;cran, vous pouvez choisir <code>:2</code>, ou
n'importe quoi d'autre.</li>
<li>D&eacute;finissez votre variable d'environnement DISPLAY afin
qu'elle pointe vers l'&eacute;cran g&eacute;r&eacute; par
<code>lbxproxy</code>, au lieu de l'&eacute;cran habituel :
<blockquote>
<pre>
<code>  $ DISPLAY= :1
  $ export DISPLAY
</code>
</pre></blockquote>
Ou, si vous utilisez csh ou un de ses clones :
<blockquote>
<pre>
<code>  % setenv DISPLAY :1
</code>
</pre></blockquote>
</li>
<li>Si vous utilisez <code>xauth</code>, vous aurez &agrave;
v&eacute;rifier que votre "cookie" est accessible localement.
Consultez le mini howto <a href=
"http://www.freenix.fr/linux/HOWTO/mini/Remote-X-Apps.html">Remote
X Apps</a> pour plus d'informations &agrave; ce propos.</li>
<li>D&eacute;marrez vos applications X!</li>
</ol>
<p>Voil&agrave;; toute application d&eacute;marr&eacute;e vers
l'&eacute;cran <code>:1</code> utilisera LBX. Naturellement, il n'y
a aucune raison pour que vous ne puissiez pas &eacute;galement
d&eacute;marrer des applis X vers <code>LOCAL :0</code> et les
utiliser simultan&eacute;ment.</p>
<h2><a name="s9">9. Probl&egrave;mes</a></h2>
<p>Voici quelques probl&egrave;mes courants :</p>
<dl>
<dt><b>Q)</b></dt>
<dd>
<p><code>lbxproxy</code> se termine avec l'erreur "access denied"
("acc&egrave;s refus&eacute;").</p>
</dd>
<dt><b>R)</b></dt>
<dd>
<p>Cela signifie que le syst&egrave;me LOCAL n'accepte pas les
connexions en provenance du syst&egrave;me DISTANT pour des raisons
d'autorisation. Consultez le mini howto <a href=
"http://www.freenix.fr/linux/HOWTO/mini/Remote-X-Apps.html">Remote
X Apps</a> pour plus de d&eacute;tails &agrave; ce sujet.</p>
<p>En guise de test simple, essayez de lancer sur DISTANT une appli
simple, comme <code>xclock</code>, en l'affichant sur le
syst&egrave;me local, sans utiliser <code>lbxproxy</code> :</p>
<blockquote>
<pre>
<code>  $ xclock -display LOCAL :0
</code>
</pre></blockquote>
<p>Si cela ne marche pas, le probl&egrave;me vient de
<code>xhost</code>, ou d'une simple anomalie de X, pas de LBX.</p>
</dd>
</dl>
<h2><a name="s10">10. Documentation</a></h2>
<p>La seule documentation fournie avec une distribution X standard
est probablement la page de manuel de <em>lbxproxy(1)</em>.</p>
<p>Si vous pouvez consulter l'arborescence des sources de X, de
tr&egrave;s int&eacute;ressantes informations sont disponibles
l&agrave; :</p>
<ul>
<li><code>xc/doc/specs/Xext/lbx.mif</code> (Framemaker MIF)</li>
<li><code>xc/doc/hardcopy/Xext/lbx.PS.Z</code> (Postscript
compress&eacute;)</li>
<li><code>xc/doc/hardcopy/Xext/lbxTOC.html</code> (HTML)</li>
</ul>
<p>Une discussion plus pr&eacute;cise &agrave; propos des
algorithmes sp&eacute;cifiques &agrave; LBX est disponible
l&agrave; :</p>
<ul>
<li><code>xc/doc/specs/Xext/lbxalg.mif</code> (Framemaker MIF)</li>
<li><code>xc/doc/specs/Xext/lbxalg.PS.Z</code> (Postscript
compress&eacute;)</li>
</ul>
<p>Si vous n'avez pas acc&egrave;s &agrave; l'arborescence des
sources de X11, vous pouvez obtenir ces fichiers depuis <a href=
"ftp%20://ftp.x.org/pub/R6.3/xc/doc/">le site FTP du Consortium
X</a>.</p>
<h2><a name="s11">11. Alternatives</a></h2>
<p>Si, pour quelque raison, vous n'aimez pas <code>lbxproxy</code>
: vous n'&ecirc;tes pas satisfait des performances, ou bien
&ccedil;a ne marche pas pour vous, ou vous ne voulez pas vous
casser la t&ecirc;te &agrave; cr&eacute;er un lbxproxy pour le
syst&egrave;me distant, ou encore vous avez tout simplement envie
d'essayer d'autres solutions, alors il existe au moins un autre kit
de compression du protocole X (quelqu'un en conna&icirc;t
d'autres?)</p>
<h2><a name="ss11.1">11.1 dxpc - Differential X Protocol
Compressor</a></h2>
<ul>
<li>Auteur initial : <a href="mailto:brianp@cnet.com">Brian Pane
&lt;brianp@cnet.com&gt;</a></li>
<li>Actuel responsable : <a href=
"mailto:lightborn@mail.utexas.edu">Zachary Vonler
&lt;lightborn@mail.utexas.edu&gt;</a></li>
</ul>
<p><code><a href=
"http://ccwf.cc.utexas.edu/~zvonler/dxpc/">dxpc</a></code>
(Differential X Protocol Compressor, Compresseur
Diff&eacute;rentiel de protocole X) fonctionne pour l'essentiel de
la m&ecirc;me mani&egrave;re que LBX. Cependant, afin
d'&eacute;viter d'avoir &agrave; impl&eacute;menter une extension X
et &agrave; modifier le code du serveur X, <code>dxpc</code>
utilise <b>deux</b> proxys : le premier s'ex&eacute;cute sur le
syst&egrave;me DISTANT, comme <code>lbxproxy</code>, et l'autre
s'ex&eacute;cute sur l'h&ocirc;te LOCAL.</p>
<p>Le proxy de l'h&ocirc;te DISTANT intervient dans la
communication entre les clients X et le proxy de l'h&ocirc;te
LOCAL, tandis que le proxy de l'h&ocirc;te LOCAL intervient dans la
communication entre le serveur X et le proxy de l'h&ocirc;te
DISTANT.</p>
<p>Ainsi, &agrave; la fois pour les clients X et pour le serveur X,
cela ressemble &agrave; une connexion X normale.</p>
<h3>Avantages</h3>
<ul>
<li>Comme il s'agit d'une application compl&egrave;tement
ind&eacute;pendante qui n'utilise aucune particularit&eacute; de X,
elle est plus simple &agrave; compiler et &agrave; installer.</li>
<li>Elle est maintenue s&eacute;par&eacute;ment, aussi vous n'avez
pas &agrave; attendre la publication par l'OSF de nouvelles
versions de X pour profiter d'am&eacute;liorations ou de
corrections.</li>
<li>Elle fournie des informations et des statistiques plus
nombreuses et plus compl&egrave;tes que <code>lbxproxy</code>.</li>
</ul>
<h3>Inconv&eacute;nients</h3>
<ul>
<li>Ce n'est pas un composant standard de X; vous devez l'obtenir
et l'installer s&eacute;par&eacute;ment.</li>
<li>dxpc est l&eacute;g&egrave;rement plus complexe &agrave;
configurer, puisqu'un proxy est n&eacute;cessaire sur LOCAL, en
plus du proxy DISTANT.</li>
</ul>
<h3>O&ugrave; obtenir dxpc?</h3>
<p>Le code source de dxpc est disponible &agrave; <a href=
"ftp%20://ftp.x.org/contrib/utilities/">ftp.x.org</a>.</p>
<p>Une page web sur dxpc donne beaucoup d'informations
int&eacute;ressantes, y compris des liens vers la liste de
diffusion dxpc, un acc&egrave;s au code source, et un certain
nombre d'ex&eacute;cutables pr&eacute;compil&eacute;s pour
diff&eacute;rentes plates-formes :</p>
<p><a href=
"http://ccwf.cc.utexas.edu/~zvonler/dxpc/">http://ccwf.cc.utexas.edu/~zvonler/dxpc/</a></p>
<h2><a name="ss11.2">11.2 Ssh (Secure Shell)</a></h2>
<p><a href="mailto:lbxhowto@sizone.org">Ken Chase
&lt;lbxhowto@sizone.org&gt;</a> pr&eacute;cise que <code><a href=
"http://www.cs.hut.fi/ssh/">ssh</a></code> peut &ecirc;tre
utilis&eacute; pour la compression. Bien que sa principale fonction
soit de s&eacute;curiser, il compresse &eacute;galement les
donn&eacute;es qu'il envoie.</p>
<p>Ainsi, si vous utilisez X &agrave; travers une connexion
<code>ssh</code>, vous obtiendrez automatiquement un certain taux
de compression.</p>
<h2><a name="ss11.3">11.3 Lequel choisir ?</a></h2>
<p>Je ne sais pas. LBX et <code>dxpc</code> apportent certainement
tous les deux une meilleure compression que <code>ssh</code>. Bien
s&ucirc;r, <code>ssh</code> a pour lui l'avantage de la
s&eacute;curisation. Et bien s&ucirc;r, il n'y a aucune raison pour
que vous ne puissiez pas utiliser &agrave; la fois <code>ssh</code>
et l'un des deux autres, afin d'obtenir une bonne compression et
une s&eacute;curisation.</p>
<p>Il ne devrait pas &ecirc;tre tr&egrave;s difficile de
r&eacute;aliser un test comparatif de ces diff&eacute;rentes
solutions, afin de disposer de mesures statistiques et subjectives
des performances. Mais je ne l'ai pas fait, et je ne connais
personne qui l'ait fait.</p>
</body>
</html>