Squid (Lusca) + Thunder5 + TOS
Pessoal, to usando o thunder5 como parent do squid. Hoje pesquisando no fórum deles descobri que o squid retira a marcação HIT-TOS que vem do thunder.
Teria alguma maneira de fazer com que o squid não retire essa marcação, que vem do parent?
Desde já obrigado.
Re: Squid (Lusca) + Thunder5 + TOS
Citação:
Postado originalmente por
lrmurad
Pessoal, to usando o thunder5 como parent do squid. Hoje pesquisando no fórum deles descobri que o squid retira a marcação HIT-TOS que vem do thunder.
Teria alguma maneira de fazer com que o squid não retire essa marcação, que vem do parent?
Desde já obrigado.
No próprio forum tem a solução, era um patch no squid. Mas, não vai funcionar pelo TOS do thunder, e sim pelo header. Eu que não achei, senão postava.
(creio que não é ele que tira, e sim o próprio kernel)
Re: Squid (Lusca) + Thunder5 + TOS
o patch seria esse?
Código :
--- squid-ori/src/client_side.c 2008-10-06 18:27:44.000000000 -0300
+++ squid-2.7.STABLE6/src/client_side.c 2009-12-09 18:50:17.000000000 -0200
@@ -2782,14 +2782,21 @@
if (Config.zph_mode != ZPH_OFF) {
int tos = 0;
-
- if (!isTcpHit(http->log_type))
+ HttpHeader *hdr = &rep->header;
+ HttpHeaderEntry *h = httpHeaderFindEntry(hdr,HDR_X_CACHE);
+ if (h) {
+ if ((strncmp(strBuf(h->value),"HIT ",4 ) == 0) && Config.zph_parent) {
+ debug(33, 1) ("ZPH MANGA! (%s)\n",strBuf(h->value));
+ tos = Config.zph_parent;
+ }
+ }
+ else if (!isTcpHit(http->log_type))
tos = 0;
else if (Config.zph_local)
tos = Config.zph_local;
else if (Config.zph_sibling && http->request->hier.code == SIBLING_HIT)/* sibling hit */
tos = Config.zph_sibling;
- else if (Config.zph_parent && http->request->hier.code == PARENT_HIT) /* parent hit */
+ else if (Config.zph_parent && http->request->hier.code == PARENT_HIT) /* parent hit */
tos = Config.zph_parent;
if (conn->tos_priority != tos) {
conn->tos_priority = tos;
Então, coloquei num arquivo .patch, tentei aplicar mas retornou o seguinte:
patching file src/client_side.c
patch: **** malformed patch at line 5: if (Config.zph_mode != ZPH_OFF) }
tentei aplicar no Lusca. será que é por isso que dá erro? por ele ser para o squid 2.7
Re: Squid (Lusca) + Thunder5 + TOS
Citação:
Postado originalmente por
lrmurad
o patch seria esse?
Código :
--- squid-ori/src/client_side.c 2008-10-06 18:27:44.000000000 -0300
+++ squid-2.7.STABLE6/src/client_side.c 2009-12-09 18:50:17.000000000 -0200
@@ -2782,14 +2782,21 @@
if (Config.zph_mode != ZPH_OFF) {
int tos = 0;
-
- if (!isTcpHit(http->log_type))
+ HttpHeader *hdr = &rep->header;
+ HttpHeaderEntry *h = httpHeaderFindEntry(hdr,HDR_X_CACHE);
+ if (h) {
+ if ((strncmp(strBuf(h->value),"HIT ",4 ) == 0) && Config.zph_parent) {
+ debug(33, 1) ("ZPH MANGA! (%s)\n",strBuf(h->value));
+ tos = Config.zph_parent;
+ }
+ }
+ else if (!isTcpHit(http->log_type))
tos = 0;
else if (Config.zph_local)
tos = Config.zph_local;
else if (Config.zph_sibling && http->request->hier.code == SIBLING_HIT)/* sibling hit */
tos = Config.zph_sibling;
- else if (Config.zph_parent && http->request->hier.code == PARENT_HIT) /* parent hit */
+ else if (Config.zph_parent && http->request->hier.code == PARENT_HIT) /* parent hit */
tos = Config.zph_parent;
if (conn->tos_priority != tos) {
conn->tos_priority = tos;
Então, coloquei num arquivo .patch, tentei aplicar mas retornou o seguinte:
patching file src/client_side.c
patch: **** malformed patch at line 5: if (Config.zph_mode != ZPH_OFF) }
tentei aplicar no Lusca. será que é por isso que dá erro? por ele ser para o squid 2.7
Seria esse sim, teria que ver se o Lusca não mudou a implementação (deve ter mudado)
(Lusca tem muito bug, eles ficam só na performance, e esquecem do squid 2.HEAD, o povo que tem que ficar abrindo bug report...)
Re: Squid (Lusca) + Thunder5 + TOS
vou tentar falar com eles.
Muito obrigado pela sua ajuda.
Re: Squid (Lusca) + Thunder5 + TOS
Mas acho que eu to fazendo alguma coisa errada, pq eu baixei o squid2.7stable6, tentei aplicar o patch retornou o mesmo erro. Tentei da seguinte maneira:
de dentro do diretorio do squid, patch -p1 < arquivo.patch . aí dá aquele erro.
tentei tb patch < arquivo.patch , aí ele diz q naum encontrou o arquivo e pede o caminho, eu indico o caminho (client_side.c, seria esse o arquivo?) e retorna o mesmo erro.
Re: Squid (Lusca) + Thunder5 + TOS
Já usei aqui o 2.7stable5 e já veio com ZPH nativo, não precisei aplicar o patch, você tem certeza que esse (stable6) não já vem com patch pronto?
Re: Squid (Lusca) + Thunder5 + TOS
Utilizo o squid 2.7stable5 que ja vem com o ZPH (como mencionou o Squire), junto com o thunder, e marcação HIT-TOS que vem do thunder funciona blz.
Re: Squid (Lusca) + Thunder5 + TOS
Citação:
Postado originalmente por
Squire
Já usei aqui o 2.7stable5 e já veio com ZPH nativo, não precisei aplicar o patch, você tem certeza que esse (stable6) não já vem com patch pronto?
o patch é pra fazer o squid passar com header o que vem com HIT de um parent proxy
Re: Squid (Lusca) + Thunder5 + TOS
Citação:
Postado originalmente por
lrmurad
o patch é pra fazer o squid passar com header o que vem com HIT de um parent proxy
Exatamente, você pode usar o ZPH para fazer a marcação.
Re: Squid (Lusca) + Thunder5 + TOS
PessoALL,
Como fica o parente do Thunder para o LUSCA?
Seria apenas isso:
cache_peer 192.168.10.2 parent 8080 0 proxy-only no-digest
Re: Squid (Lusca) + Thunder5 + TOS
então amigo, eu to usando as mesmas regras que usava com o 3,mas to com um problema sério. Meu lusca não ta desviando o youtube para o parent. Deve alguma coisa errada nessa regras q eu to usando.
Vou desabilitar essa linha (always_direct allow sites_sem_cache) pra ver.
Código :
#============================= ============================== ========#
#Redirecionamento Thunder 3.x - REGEx
#============================= ============================== ========#
acl thunder_lst url_regex -i "/usr/local/thunder/etc/thunder.lst"
cache deny thunder_lst
cache_peer 192.168.10.2 parent 8080 0 proxy-only no-digest
dead_peer_timeout 2 seconds
cache_peer_access 192.168.10.2 allow thunder_lst
cache_peer_access 192.168.10.2 deny all
#============================= ===========================#
#Nega Cache Proxy Local
#============================= ===========================#
acl servercache dstdomain 192.168.10.2
acl sites_sem_cache dstdomain -i "/usr/local/thunder/etc/thunder.lst"
always_direct allow sites_sem_cache
cache deny sites_sem_cache
cache deny servercache
Re: Squid (Lusca) + Thunder5 + TOS
aliás, desculpe pela resposta amigo, acho q entendi errado. vc ta tentando usar o lusca como parent do thunder, é isso?
eu to usando o thunder como parent do lusca.
Se vc puder me alguma dica sobre essas regras q eu citei acima, fico muito agradecido.
Re: Squid (Lusca) + Thunder5 + TOS