Przymusowy w3cache krakowskiego Cyfronetu

Autor: Wojciech Palacz (wojtek_at_virgo.ii.uj.edu.pl)
Data: Wed 24 Feb 1999 - 18:31:27 MET


Witam!

Nie jestem uczestnikiem tej grupy, ale Szymon Sokol prosil abym
podeslal tutaj moj list z obserwacjami na temat WWW cache,
ktory ostatnio zostal uruchomiony w Krakowie.
Ponizej zalaczam kopie listu, ktory poszedl wczoraj do ludzi
z Cyfronetu oraz kilku znajomych adminow, w tym do Szymona Sokola
jako do osoby zarzadzajacej w3cache.uci.agh.edu.pl.

Wojciech Palacz
wojtek_at_virgo.ii.uj.edu.pl

--------- utnij tutaj ---------

Szanowni Panstwo,

oto moje uwagi na temat serwera 149.156.9.243, ktory od czwartku
18 lutego 1999 dziala jako przymusowy WWW cache dla krakowskiego MANu.

Wedlug informacji udzielonych mi w Cyfronecie jest to specjalizowany
produkt Cisco, Cache Engine. Dziala w polaczeniu z routerami Cisco
i automatycznie przechwytuje wszystkie polaczenia TCP wychodzace
z sieci miejskiej na port 80. Ma zaimplementowany HTTP/1.1.

O ile sam pomysl z cache'em jest dobry, to w praktyce jednak
sa zgrzyty. Moze pomogloby zainstalowanie najnowszej wersji
oprogramowania?

Zaobserwowane problemy:

Poniewaz cache przechwytuje polaczenia TCP, serwer WWW z ktorym
sie probowalismy polaczyc zobaczy zamiast naszego adresu IP
adres cache'a. Zazwyczaj nie ma to znaczenia, niekiedy jednak
tak - jak np. w przypadku dostepu do platnych baz danych, gdzie
autoryzacja odbywa sie wlasnie poprzez adres IP klienta.
Przyklad: baza danych Math Review, do ktorej Uniwersytet Jagiellonski
wykupil abonament, i z ktorej niestety sie nie da obecnie skorzystac.
Na ten problem nie pomoze nic poza wylaczeniem cache'a lub
skonfigurowaniem w nim tablicy adresow, ktorych przechwytywac
nie nalezy (o ile oprogramowanie udostepnia taka mozliwosc).

Cache wydaje sie nie zauwazac, ze sciagnal tylko czesc danych
zanim urwalo sie polaczenie z serwerem WWW. Gdy uzytkownik
naciska klawisz "Reload", cache zamiast ponowic probe sciagniecia
dokumentu zwraca ten sam niekompletny fragment, co za pierwszym
razem. Wielokrotne naciskanie "Reload", SHIFT-"Reload" czy nawet
uruchomienie drugiego Netscape'a na komputerze obok nie pomaga.
To byly obserwacje z niedzieli - we wtorek SHIFT-"Reload" dzialalo.

Cache nie obsluguje sciagania dokumentow we fragmentach (pole 'Range'
w naglowku HTTP). Ta technika jest naprawde bardzo popularna juz
od ladnych paru lat, i pozwala sciagac na raty dokumenty z wolnych
badz przeciazonych serwerow. Korzysta z niej Netscape, oraz takie
programy jak wget (Unix), GetRight, WebSuck (Win95) i masa innych.
Jest wpisana do standardu HTTP/1.1 - podobno ten cache mial miec
zaimplementowane HTTP/1.1 w swoim oprogramowaniu?
Jak by nie bylo, efekt jest taki ze nie da sie obecnie sciagnac
z sieci niczego co jest wieksze niz 200-300 KB.

Kilka prob ktore przeprowadzilem podaje w watpliwosc stabilnosc
implementacji protokolu HTTP. Na koncu listu dolaczam odpowiedz
cache'a na polecenie HEAD - jak mozna zobaczyc, dostalem caly
dokument. O dziwo, nastepne HEAD zostaly obsluzone poprawnie.
Prosze tez zwrocic uwage na pole 'Date' w naglowku odpowiedzi,
a konkretnie na wielkosc liter - po tym mozna poznac ze
obslugiwal nas cache, a nie serwer WWW z ktorym sie probowalismy
polaczyc.

Cache czasami zamiast wyslac komunikat o niemoznosci polaczenia
sie z serwerem WWW po prostu zamyka polaczenie.

Rzeczy, ktorych nie sprawdzilem, a ktore z duzym prawdopodobienstwem
moga byc zrodlem kolejnych problemow:

Obsluga cookies.
Poprawnosc obslugi dokumentow wysylanych w odpowiedzi na formularze.
'Content negotiation', opisane w HTTP/1.1.

To juz wszystkie uwagi, ktore mam w tej chwili do przekazania.

Z powazaniem,
 Wojciech Palacz
 admin serwera www.uj.edu.pl

------------------------------------------------------------
[wojtek_at_amber wojtek]$ telnet www.apache.org 80
Trying 209.133.83.18...
Connected to www.apache.org.
Escape character is '^]'.
HEAD / HTTP/1.1
Host: www.apache.org
Connection: close

HTTP/1.1 200 OK
Server: Apache/1.3.5-dev (Unix) PHP/3.0.6
Content-Location: index.html
Vary: negotiate
TCN: choice
Cache-Control: max-age=86400
Expires: Wed, 24 Feb 1999 11:52:31 GMT
Content-Type: text/html
Date: TUE, 23 FEB 1999 15:27:51 GMT
Connection: close

<HTML>
<HEAD>
<TITLE>Apache Project</TITLE>
</HEAD>

<BODY
 BGCOLOR="#FFFFFF"
 TEXT="#000000"
 LINK="#0000FF"
 VLINK="#000080"
 ALINK="#FF0000"
>

[ *** ciach co niepotrzebne *** ]

</BODY>
</HTML>
Connection closed by foreign host.
------------------------------------------------------------



To archiwum zostało wygenerowane przez hypermail 2.1.7 : Wed 19 May 2004 - 16:19:43 MET DST