<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://blog.torproject.org" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>privoxy</title>
 <link>http://blog.torproject.org/category/tags/privoxy</link>
 <description>The taxonomy view with a depth of 0.</description>
 <language>en</language>
<item>
 <title>Investigating http proxy performance with Tor</title>
 <link>http://blog.torproject.org/blog/investigating-http-proxy-performance-tor</link>
 <description>&lt;p&gt;A while ago there was a thread on &lt;a href=&quot;http://archives.seul.org/or/talk/&quot; rel=&quot;nofollow&quot;&gt;OR-TALK&lt;/a&gt; that devolved into&lt;br /&gt;
&lt;blockquote&gt;&quot;why does Tor still ship ancient privoxy?&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt; and&lt;br /&gt;
&lt;blockquote&gt;&quot;why are you shipping polipo with the Tor Browser Bundle instead of current privoxy?&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;For those interested, the thread is here, &lt;a href=&quot;http://archives.seul.org/or/talk/Jul-2009/msg00063.html&quot; title=&quot;http://archives.seul.org/or/talk/Jul-2009/msg00063.html&quot; rel=&quot;nofollow&quot;&gt;http://archives.seul.org/or/talk/Jul-2009/msg00063.html&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Scott had a good argument for why we should update the bundles to the latest privoxy, and I agree, we should.  But then I started thinking about why we needed a proxy at all.  Almost all browsers support socks5 direct, isn&#039;t that faster than a middleman proxy?&lt;/p&gt;
&lt;p&gt;This got me thinking about why polipo is in the TBB, but not the other packages.  The TBB &quot;feels faster&quot; when using Tor than using the installed Tor, Vidalia, and Privoxy.  However, I couldn&#039;t find any actual testing of performance of polipo vs. privoxy vs. socks5 direct.  &lt;/p&gt;
&lt;p&gt;So I did it myself, in a loose manner.  I wanted to quantify &quot;feels faster&quot;.&lt;/p&gt;
&lt;p&gt;The raw data from all the testing is :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tamper Data as xml,&lt;/li&gt;
&lt;li&gt;proxy config files, &lt;/li&gt;
&lt;li&gt;and results in a spreadsheet.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is all contained in &lt;a href=&quot;http://freehaven.net/~phobos/polipo-v-privoxy.tar.gz&quot; title=&quot;http://freehaven.net/~phobos/polipo-v-privoxy.tar.gz&quot; rel=&quot;nofollow&quot;&gt;http://freehaven.net/~phobos/polipo-v-privoxy.tar.gz&lt;/a&gt; {.asc).  There is a README as well.  And yes, the ruby script is a quick and dirty hack.&lt;/p&gt;
&lt;p&gt;I tested a few scenarios:&lt;/p&gt;
&lt;p&gt;1) native &lt;a href=&quot;http://www.pps.jussieu.fr/~jch/software/polipo/&quot; rel=&quot;nofollow&quot;&gt;polipo&lt;/a&gt; and &lt;a href=&quot;http://www.privoxy.org/&quot; rel=&quot;nofollow&quot;&gt;privoxy&lt;/a&gt; without using Tor.&lt;br /&gt;
2) polipo and privoxy forwarding to Tor localhost:9050.&lt;br /&gt;
3) firefox socks5 direct to Tor via localhost:9050.&lt;/p&gt;
&lt;p&gt;The summary of results:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Native polipo is 54.5% faster on average than native privoxy.  This could be due to polipo&#039;s caching, http 1.1 pipelining, and it can serve bits as fast as they come in from the network.  Privoxy needs to load the whole page, scan it, and then send it to the client.  Even if privoxy filtering is disabled, it still works the same way.&lt;/li&gt;
&lt;li&gt;Polipo caching shines with Tor usage.  Performance is still about 40% faster with polipo than privoxy.  Common images are cached, and served from the memory cache in single-digit millisecond ranges.  Privoxy needs to wait for Tor to wholly deliver the bits.  Caching is faster, this we know already.  However, from a user perspective, it&#039;s just faster to load pages.&lt;/li&gt;
&lt;li&gt;socks5 in Firefox 3.5.2 did better than I expected.  It was about twice as slow as polipo, but still twice as fast as privoxy.  I chalk this up to the tor circuit variability more than anything else.&lt;/li&gt;
&lt;li&gt;I tried testing a click to a second page to see how much polipo caching helps people reading different pages on the same site.  It helps, but not as much as I expected.  Polipo ranged from slower than privoxy to 40-100% faster. Too much variability to make a real determination.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Caveats:  Testing under tor is highly variable.  I used the same circuits for both the polipo and privoxy tests to minimize variability.  However, I can&#039;t control node load and congestion.&lt;/p&gt;
&lt;p&gt;Out of 23 get requests for the Torproject.org/index.html.en, 17 are for the country flags.   Perhaps we should load these last at the bottom of the page, or do something else to speed up the torproject page load.&lt;/p&gt;
&lt;p&gt;As I was doing this, I kept thinking of other ways to do it better;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;time requests and bits between tor, the http proxy, and the browser.  How long does each request take to get from the browser, to the proxy, to tor and back across each layer?  how much latency does each piece of software add to the request and delivery?&lt;/li&gt;
&lt;li&gt;automate testing and let it run on a normal tor client over weeks. This will average out tor network variability and show &quot;typical&quot; user experience.&lt;/li&gt;
&lt;li&gt;Pick a sampling of the top 100 websites by visits worldwide and measure their performance with the three methods, fully instrumented as in #1.&lt;/li&gt;
&lt;li&gt;Do user experience measurements.  Pay/ask/bribe people to sit in front of a computer, video record their browsing and feedback, and ask for a rating of each configuration (socks5, polipo, privoxy, and a placebo).&lt;/li&gt;
&lt;li&gt;re-run #2 and run gcov to watch the code paths used in each piece of software, and figure out what can be optimized for performance.&lt;/li&gt;
&lt;li&gt;test various &quot;private browsing modes&quot; through tor to see which browser is faster; firefox, safari, chromium, torfox, or torora.&lt;/li&gt;
&lt;li&gt;how can we better tune polipo caching dynamically based on system ram config?  Does having 1GB of cache provide significant benefits over the default?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I&#039;m sure there are lots of things wrong with my measurements, minimal analysis, and results.&lt;/p&gt;
&lt;p&gt;Constructive criticism is welcome.&lt;/p&gt;
</description>
 <comments>http://blog.torproject.org/blog/investigating-http-proxy-performance-tor#comments</comments>
 <category domain="http://blog.torproject.org/category/tags/caching">caching</category>
 <category domain="http://blog.torproject.org/category/tags/faster-firefox">faster firefox</category>
 <category domain="http://blog.torproject.org/category/tags/faster-tor">faster tor</category>
 <category domain="http://blog.torproject.org/category/tags/open-research">open research</category>
 <category domain="http://blog.torproject.org/category/tags/performance">performance</category>
 <category domain="http://blog.torproject.org/category/tags/polipo">polipo</category>
 <category domain="http://blog.torproject.org/category/tags/privoxy">privoxy</category>
 <category domain="http://blog.torproject.org/category/tags/socks5">socks5</category>
 <category domain="http://blog.torproject.org/category/tags/tor-browser-bundle">tor browser bundle</category>
 <category domain="http://blog.torproject.org/category/tags/vidalia-bundle">vidalia bundle</category>
 <pubDate>Wed, 19 Aug 2009 14:57:17 -0700</pubDate>
 <dc:creator>phobos</dc:creator>
 <guid isPermaLink="false">171 at http://blog.torproject.org</guid>
</item>
<item>
 <title>False Positives in 0.2.0.30:  RISING found Trojan.PSW.Win32.Undef.adp</title>
 <link>http://blog.torproject.org/blog/false-positives-0.2.0.30%3A-rising-found-trojan.psw.win32.undef.adp</link>
 <description>&lt;p&gt;I&#039;ve noticed a &lt;a href=&quot;https://blog.torproject.org/blog/june-2008-progress-report#comment-154&quot; rel=&quot;nofollow&quot;&gt;few comments&lt;/a&gt; about a Chinese anti-virus program, RISING, reporting that Vidalia.exe and Privoxy.exe are infected with Trojan.PSW.Win32.Undef.adp.    In both cases, I suspect that RISING is reporting false positives.  These executables as packaged and available on the Tor download page are not infected.&lt;/p&gt;
&lt;p&gt;I&#039;ve looked at the MD5 and SHA-1 sums of these programs as included in the Vidalia bundle and they match what the source packages produce as executables.  The privoxy.exe included in the bundles is the exact same one as found at the &lt;a href=&quot;http://downloads.sourceforge.net/ijbswa/privoxy_setup_3_0_6.exe?modtime=1164015760&amp;amp;big_mirror=0&quot; rel=&quot;nofollow&quot;&gt;Sourceforge Privoxy Download Page&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The Vidalia.exe is the same as the one included in the &lt;a href=&quot;http://www.vidalia-project.net/dist/vidalia-0.1.7.exe&quot; rel=&quot;nofollow&quot;&gt;Vidalia Download Page&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Feel free to confirm this is true for you.  Better yet, let us know if these individual packages (Vidalia.exe from Vidalia and Privoxy.exe from Sourceforge) also show up as infected.&lt;/p&gt;
</description>
 <comments>http://blog.torproject.org/blog/false-positives-0.2.0.30%3A-rising-found-trojan.psw.win32.undef.adp#comments</comments>
 <category domain="http://blog.torproject.org/category/tags/false-positives">false positives</category>
 <category domain="http://blog.torproject.org/category/tags/privoxy">privoxy</category>
 <category domain="http://blog.torproject.org/category/tags/trojan">trojan</category>
 <category domain="http://blog.torproject.org/category/tags/vidalia">vidalia</category>
 <category domain="http://blog.torproject.org/category/tags/virus">virus</category>
 <category domain="http://blog.torproject.org/category/tags/windows-bundles">windows bundles</category>
 <pubDate>Tue, 05 Aug 2008 20:09:46 -0700</pubDate>
 <dc:creator>phobos</dc:creator>
 <guid isPermaLink="false">45 at http://blog.torproject.org</guid>
</item>
</channel>
</rss>
