>> >> I set up squid on a remote system so I can browse the internet from
>> >> that IP address.  It works but it stalls frequently.  I had similar
>> >> results with ziproxy.  I went over this with the squid list but we got
>> >> nowhere as it seems to be some kind of a system or network problem.
>> >>
>> >> http://squid-web-proxy-cache.1019090.n4.nabble.com/squid-3-3-5-hangs-the
>> >> -en tire-system-td4660893.html
>> >>
>> >> Can anyone here help me figure out what is wrong?  I'm not sure where to
>> >> start.
>> >>
>> >> - Grant
>> >
>> > Just a quick pointer in case it applies to you:  if you tunnel into the
>> > proxy machine (using ssh, VPN, proxychains and what not) you would
>> > suffer from packet fragmentation, which could quickly snowball.  In this
>> > case try reducing your mtu to lower values, than the default ethernet
>> > 1500 byte packets, to cater for the overhead of the larger tunnelling
>> > headers.
>>
>> I've tried disconnecting from my SSH tunnel and changing the mtu on my
>> laptop and on the remote proxy server via ifconfig and there is some
>> kind of an improvement but I can't narrow it down.  I've tried mtu
>> down to 1000 on both systems but the proxy server still stalls
>> sometimes.  Any tips for narrowing this down further?
>>
>> - Grant
>
> Now that you mentioned using ssh, I don't think that you can improve this.  An
> mtu at 1000 bytes is lower than I thought might have helped.  The problem is
> caused by stacking tcp packets (tcp within tcp) each of which is using its own
> timeout for failed fragments.

I think I may have misunderstood you.  I do SSH into the machine
running squid, but I don't tunnel through that connection in order to
use the proxy.  I connect to the remote squid instance directly via my
browser and I also happen to SSH into the same machine to run
commands.  Do any of your recommendations apply in this scenario?

- Grant


> The problem is explained here (tcp meltdown):
>
>   http://sites.inka.de/~W1011/devel/tcp-tcp.html
>
> and here (useful relevant references to other works are also made):
>
>   http://publications.lib.chalmers.se/records/fulltext/123799.pdf
>
>
> There are some suggested solutions like increasing buffer size, but I don't
> know this might work in a real world use case.  You can experiment with
> different buffer sizes as suggested here and see if it makes a difference:
>
>    http://www.cyberciti.biz/faq/linux-tcp-tuning/
>
>
> If the interruptions are not acceptable to you, you could consider using a
> different tunnel method.  A network layer VPN, like IPSec (you can use
> StrongSwan which also offers IKEv2 and MOBIKE for your laptop, or ipsec-tools
> with racoon for IKEv1 only) should work without such problems.  You will be
> tunnelling tcp in udp packets.  If you tunnel to your home router you will
> need to configure an IPSec tunnel mode connection, otherwise you would use an
> IPSec transport mode connection directly to your server after you allow IP
> protocol 50 packets through your router.

Reply via email to