Sie sind nicht angemeldet.

1

20.02.2006, 11:55

squid und download abbruch

Hallo.

Wenn ich Squid als Cache-Server einsetze und mir während eines "grösseren" Downloads (z.B. ein mail attachment) die Verbindung abbricht, gibt es eine Möglichkeit den Download an dieser Stelle fortzusetzen und ihn nicht wieder neu starten zu müssen??

Ich habe mir als erste Idee mal die Log-Dateien angeschaut aber nichts gefunden, was explizit auf den Begin oder das Ende eines Downloads hindeutet.

Danke schon mal im vorraus!

2

20.02.2006, 15:28

hi MrOz,

die 'quick_abort-*' - optionen beeinflussen das verhalten von squid bei abbruch

Quellcode

1
2
3
quick_abort_min
quick_abort_max  
quick_abort_pct

siehe squid-handbuch

gruß epikur
wie soll ich wissen, was ich denke?
... bevor ich hoere, was ich sage
... bevor ich lese, was ich schreibe

3

22.02.2006, 14:00

Nochmals Hallo.

Ich hab die "quick_abort"-Option mal getestet - funktioniert reibungslos!

Allerdings habe ich noch ein weiteres Problem:
Wie kann ich squid dazu bringen, einen Download auch dann fertig zu laden, wenn sich während des Downloads die IP des Squid-Rechners ändert?

Ich habe einen parent-squid, einen child-squid, dessen IP sich ändert und über wlan sind die clients mit dem child-squid verbunden.

Es geht darum, dass ich über 2 Interfaces ins Internet gehen kann und diese Interfaces je nach Situation automatisch gewechselt werden. Daher wechselt auch jedesmal die IP. Normales surfen funktioniert (Firefox), allerdings hängen sich Downloads bei dem Wechsel auf.

Vielleicht fällt jemandem auch dazu irgendetwas ein, ich bin ehrlich gesagt etwas ratlos!?! :keineahnung:

Ich habe mal die quick_abort Option beim parent eintragen, damit der die Datei fertig, aber das hat nicht geklappt...

4

22.02.2006, 18:42

hi MrOz,

... jetzt noch auf dem child-proxy die direktive

never_direct allow|deny [!]aclname

z.B.: never_direct allow all

... damit erzwingst du den connect ueber den cache-peer oder parent-proxy ... dann sollte es gehen.

siehe squid-handbuch / 6.12 Sonstige Optionen

gruß epikur
wie soll ich wissen, was ich denke?
... bevor ich hoere, was ich sage
... bevor ich lese, was ich schreibe

5

24.02.2006, 11:27

Das Problem ist aber doch, dass wenn ich eine Datei von 10 Mb am downloaden bin und nach 4 Mb der Download abbricht, ich die 4 MB zwar lokal auf meinem Client, aber weder auf dem child- noch auf dem parent-squid habe. Oder irre ich mich da? :?

Wenn die 4 Mb sich doch auf einem squid befinden, könnte squid ja den Download dort fortsetzen - auch mit neuer IP... Die interne IP vom Client zum child-squid bleibt ja gleich.

6

24.02.2006, 14:52

hi MrOz,

bist du dir sicher, dass nichts am proxy vorbeilaeuft bzw. der proxy ueber eine no_cache - anweisung den file nur durchreicht?

zum thema squid-verhalten bei wechselnder abgehender IP [wusste gar nicht dass er das mitmacht] habe ich keine ahnung :?

hier nochmal aufgelistet, wann dieses verhalten meiner meinung nach auftreten kann bzw. wodurch du es konfigurieren kannst

.... wenn:

- der proxy eine directive auswertet dateien dieses typs nicht zu cachen [no_cache deny ACL]
- der proxy den download bei verbindungsabbruch durch den client beendet [quick-abort_*] ... das hatten wir schon
- der browser eine moeglichkeit nutzt am proxy vorbei zu kommen [browser-einstellung: no proxy for]
- der child-proxy die datei holt ohne ueber den parent-proxy zu gehen [cache_peer & never_direct]

wenn du mit deinem client immer zuerst am child-proxy anfraegst und dort die quick-abort_* direktiven setzt koennte es gehen ... ?? ... empirisch ermitteln =D

gruß epikur
wie soll ich wissen, was ich denke?
... bevor ich hoere, was ich sage
... bevor ich lese, was ich schreibe

7

02.03.2006, 13:02

Zitat

Original von epikur
bist du dir sicher, dass nichts am proxy vorbeilaeuft bzw. der proxy ueber eine no_cache - anweisung den file nur durchreicht?


Also laut den log-files werden normale http-Anfragen auf beiden squid gespeichert. Eine "no_cache"-Anweisung hab ich nicht in meiner squid.conf. Allerdings scheint sich der Download nur lokal abzuspielen; also die Datei wird nur beim Client gespeichert und nicht noch zusätzlich beim squid. Von daher weiss ich auch nicht, wie ich eine angefangene Datei mit neuer IP fertig downloaden kann.

Ein Auszug aus meiner squid.conf:

quick_abort_min -1 KB

acl parent dst xxx.xxx.xxx.xxx
...
acl CONNECT method CONNECT
never_direct allow parent
never_direct deny all
...


Allerdings ohne Erfolg :-/

Der child-squid läuft als transparenter Proxy, im Browser wird also an den Proxyeinstellungen nichts geändert und http-Anfragen werden mittels iptables auf den squid umgeleitet.

8

13.03.2006, 11:18

Keiner irgendeine Idee?

Hab gerade etwas über Mobile IP gelesen. Kennt sich damit evtl jemand aus?
Ich werde mir das Thema mal etwas genauer vornehmen...

Thema bewerten