+ Responder ao Tópico



  1. #1

    Question 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.

  2. #2
    MODERADOR-CHEFE Avatar de osmano807
    Ingresso
    Aug 2008
    Localização
    Araguari - Minas Gerais
    Posts
    1.980
    Posts de Blog
    5

    Padrão Re: Squid (Lusca) + Thunder5 + TOS

    Citação Postado originalmente por lrmurad Ver Post
    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)

  3. #3

    Padrão 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

  4. #4
    MODERADOR-CHEFE Avatar de osmano807
    Ingresso
    Aug 2008
    Localização
    Araguari - Minas Gerais
    Posts
    1.980
    Posts de Blog
    5

    Padrão Re: Squid (Lusca) + Thunder5 + TOS

    Citação Postado originalmente por lrmurad Ver Post
    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...)

  5. #5

    Padrão Re: Squid (Lusca) + Thunder5 + TOS

    vou tentar falar com eles.

    Muito obrigado pela sua ajuda.

  6. #6

    Padrão 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.

  7. #7

    Padrão 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?

  8. #8

    Padrão 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.

  9. #9

    Padrão Re: Squid (Lusca) + Thunder5 + TOS

    Citação Postado originalmente por Squire Ver Post
    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

  10. #10

    Padrão Re: Squid (Lusca) + Thunder5 + TOS

    Citação Postado originalmente por lrmurad Ver Post
    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.

  11. #11

    Padrã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

  12. #12

    Padrão 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

  13. #13

    Padrão 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.

  14. #14

    Padrão Re: Squid (Lusca) + Thunder5 + TOS

    Me expressei errado