<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>delx &#187; Internet</title>
	<atom:link href="http://delx.net.au/blog/tag/internet/feed/" rel="self" type="application/rss+xml" />
	<link>http://delx.net.au/blog</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Thu, 01 Jul 2010 11:59:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Australian Internet Filter (again)</title>
		<link>http://delx.net.au/blog/2010/07/australian-internet-filter-again/</link>
		<comments>http://delx.net.au/blog/2010/07/australian-internet-filter-again/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 11:49:35 +0000</pubDate>
		<dc:creator>delx</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[australia]]></category>
		<category><![CDATA[censorship]]></category>
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://delx.net.au/blog/?p=202</guid>
		<description><![CDATA[I just realised that my previous post on this was 18 months ago. That&#8217;s depressing. Well, the situation has mostly stayed the same since then. It&#8217;s good that it has not become worse! This post is a slightly edited version of an email I sent to my local representative about the matter. See my previous [...]]]></description>
			<content:encoded><![CDATA[<p>I just realised that my previous post on this was 18 months ago. That&#8217;s depressing. Well, the situation has mostly stayed the same since then. It&#8217;s good that it has not become worse!<br />
This post is a slightly edited version of an email I sent to my local representative about the matter.<br />
<span id="more-202"></span></p>
<p>See my <a href="/blog/2008/11/internet-censorship-in-australia">previous post</a> from November 2008. Oh, and if you plan to write your own letter to somebody about this matter, feel free to use my references, but please write your own content. I doubt it&#8217;s effective to spam busy politicians with duplicates that waste their time.</p>
<p>Firstly, I resent Stephen Conroy&#8217;s repeated assertion that those who oppose his plan to filter the internet are interested in &#8220;opting in to child porn&#8221; <a href="http://www.itwire.com/opinion-and-analysis/whiskey-tango-foxtrot/40057-senator-conroy-says-qim-not-into-opting-into-child-pornq?start=1">[1]</a>. There have been many other occasions where Stephen Conroy has made such remarks. For example: &#8220;If people equate freedom of speech with watching child pornography, then the Rudd-Labor Government is going to disagree.&#8221; <a href="http://www.abc.net.au/news/stories/2007/12/31/2129471.htm">[2]</a>. Nobody is trying to suggest that child pornography is acceptable, these kind of statements are inflammatory, and framing the debate in such a way is offensive and unhelpful.</p>
<p>It is also disturbing to see him outright mislead the public in so many respects, just one example was claiming that most ISPs support his filter plan <a href="http://www.smh.com.au/technology/technology-news/filter-goes-ahead-regardless-20100529-wmg7.html">[3]</a>, both iiNet<a href="http://www.iinet.net.au/customers/iinews/internet-filtering.html">[4]</a> and Telstra<a href="http://www.theaustralian.com.au/business/news/isp-filtering-a-pipe-dream-telstra/story-e6frg90f-1111118234565">[5]</a> have been on record in the past as saying that the filter plan is a bad idea, so this was an outright falsehood that he definitely should have been aware of the facts before making such a statement. This is particularly irritating because he on so many occasions accuses others of misleading the public.</p>
<p>For the record, the rest of the industry is also against the plan, including Google, Yahoo, the US government <a href="http://www.smh.com.au/technology/technology-news/toxic-net-filters-shelved-until-after-election-20100618-ykvj.html">[6]</a> and even the &#8220;Save the Children&#8221; organisation <a href="http://www.computerworld.com.au/article/330087/child_groups_slam_conroy_isp_filtering_plans/">[7]</a>. There are good reasons why there is such widespread disapproval, which I will now cover.</p>
<p>The filter plan seems to have no concrete goals:</p>
<ul>
<li>Clearly it cannot protect those children who are actually suffering child abuse. Hiding the problem does not make it go away.</li>
<li>Will it protect ordinary law abiding citizens browsing the internet at home? Considering the goal is to have a blacklist of less than 10,000 of the 1,000,000,000,000+ websites on the internet, I think it&#8217;s easy to see that it cannot possibly hope to make much of a difference to the chance of you coming across a website that may offend you. If Australians were interested in such things, they already have the option of signing up to an ISP like WebShield that offers this service at a small premium to anybody who can get ADSL through the Telstra wholesale network (that&#8217;s everybody who can get ADSL)</li>
<li>It will not stop people trading this content via email, peer 2 peer file sharing networks, instant messaging chat software and private encrypted websites, or using virtual private networks. This means it will be trivial for anybody who desires to bypass the filter. The report that Stephen Conroy published on the filter testing acknowledged this.</li>
</ul>
<p>So the filter will not help abused children, protect casual internet users, or reduce criminal activity. What exactly will it do? Here are some negatives that it will do:</p>
<ul>
<li>Add cost to ISPs, that will be passed on to all users</li>
<li>Become an extra point of failure that will make our internet connections are less reliable <a href="http://apcmag.com/internet_filter_stuffup_cuts_off_wikipedia.htm">[8]</a></li>
<li>Noticeably slow down access to high traffic websites if it is used to block any pages on them</li>
<li>Provide a false sense of security to the Australian public, due to Stephen Conroy advertising that it will protect children online</li>
<li>Introduces a sinister secret censorship blacklist that is not subject to review by the Australian public</li>
</ul>
<p>All these negatives, all this time and money spent on it, and no positives to show? All it allows is for the government to say &#8220;We tried!&#8221;. If your best try will have no positive effect and many negatives, then perhaps a better option would be to do nothing. After all, is there really a huge outcry in the public for the government to protect us from the big bad internet? For those who are interested in such protection, options do exist, such as WebShield at the ISP level and countless more downloadable packages.</p>
<p>Thanks for reading :)</p>
]]></content:encoded>
			<wfw:commentRss>http://delx.net.au/blog/2010/07/australian-internet-filter-again/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Who wants Hulu?</title>
		<link>http://delx.net.au/blog/2009/03/who-wants-hulu/</link>
		<comments>http://delx.net.au/blog/2009/03/who-wants-hulu/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 13:15:37 +0000</pubDate>
		<dc:creator>delx</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[censorship]]></category>
		<category><![CDATA[hulu]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[tv]]></category>

		<guid isPermaLink="false">http://delx.net.au/blog/?p=128</guid>
		<description><![CDATA[Update: Improved proxying of RTMP Update: Compatibility with unmetered and local content Update: Automatic /etc/hosts update Hulu is a website that offers commercial-supported streaming video of TV shows and movies from NBC, Fox and many other networks and studios. Currently Hulu is only available from within the United States of America. If you want to [...]]]></description>
			<content:encoded><![CDATA[<p><i>Update: Improved proxying of RTMP</i><br />
<i>Update: Compatibility with unmetered and local content</i><br />
<i>Update: Automatic /etc/hosts update</i></p>
<p>Hulu is a website that offers commercial-supported streaming video of TV shows and movies from NBC, Fox and many other networks and studios. Currently Hulu is only available from within the United States of America.</p>
<p>If you want to be notified of updates to this post, subscribe to the <a href="feed">comments feed</a>.</p>
<p><span id="more-128"></span></p>
<p>This is kind of lame. One of the fundamental principles of the internet is global access. That&#8217;s why we have the <i>world wide</i> web, not the America-web.</p>
<p>So, in that spirit, here&#8217;s how to make Hulu fully functional on your local network and accessible from any ordinary web browser.</p>
<h4>Requirements</h4>
<ul>
<li>A machine in the US that you can run programs and serve web pages from.</li>
<li>A Linux machine at home that shares your net connection</li>
</ul>
<h4>For my friends</h4>
<p>You can skip the USA proxy configuration and just use <tt>72.232.203.84</tt> everywhere you would put that server&#8217;s IP.<br />
Make sure you email me and I&#8217;ll add your local IP address to the allow list for the RTMP proxy.</p>
<h4>USA Proxy Configuration</h4>
<p>First we need to set up your US server to forward some selected HTTP sites as well as the Flash RTMP video streams. Do these steps on the server in the US:</p>
<ul>
<li>Create a file, hulu_proxy.ini with these contents:
<pre>
[proxy]
mode = proxy
listen_port = 9997

[allowed]
host1 = YOUR_LOCAL_IP_OR_DOMAIN
</pre>
<li>Download <a href="http://delx.net.au/hg/jamesstuff/raw-file/tip/scripts/proxy.py">proxy.py</a> and run this command to start forwarding requests on port 9997 from the allowed hosts.
<pre>proxy.py -d hulu_proxy.ini</pre>
</li>
<li>Create an HTTP virtual server for these domains: <tt>releasegeo.hulu.com</tt></li>
<li>Download <a href="http://delx.net.au/hg/cgiproxy/raw-file/tip/ruby/proxy.rb">proxy.rb</a> and <a href="http://delx.net.au/hg/cgiproxy/raw-file/tip/ruby/path.cgi">path.cgi</a> to these virtual hosts.</li>
<li>Edit path.cgi to end with
<pre>proxyTo "http://" + ENV["HTTP_HOST"], False</pre>
</li>
<li>
<li>Now set up a rewrite rule to forward <tt>/</tt> to <tt>/path.cgi</tt> for each of these virtual hosts.</li>
</ul>
<h4>Local network</h4>
<p>If you have a Linux router you can configure it to forward all packets destined for Hulu from inside your network to your US server.<br />
Follow these steps on your LAN&#8217;s router or your on any Linux computer:</p>
<ul>
<li>Add this to your <tt>/etc/hosts</tt> file (these addresses may be out of date, see the last section in this blog):
<pre>
XXX.YYY.ZZZ.AAA releasegeo.hulu.com
205.241.224.55 cp41752.edgefcs.net # HULU
205.241.224.45 cp39465.edgefcs.net # HULU
205.241.224.158 cp51756.edgefcs.net # HULU
205.241.224.37 cp47346.edgefcs.net # HULU
</pre>
<p>where <tt>XXX.YYY.ZZZ.AAA</tt> is the IP address of your US server.</li>
<li>If you&#8217;re using dnsmasq for your LAN&#8217;s DNS server ensure that it reads these addresses from your and resolves them for hosts on your network.</li>
<li>Add this to your firewall config for Linux:
<pre>
grep 'HULU$' /etc/hosts | awk '{print $1;}' | while read huluip; do
    iptables -t nat -A PREROUTING -i eth0 -p tcp \
        --destination "$huluip"  --dport 1935 -j REDIRECT --to-ports 9997
    iptables -t nat -A OUTPUT -p tcp \
        --destination "$huluip" --dport 1935 -j REDIRECT --to-ports 9997
done
</pre>
</li>
<li>Add this to your firewall config for OSX:
<pre>
grep 'HULU$' /etc/hosts | awk '{print $1;}' | while read huluip; do
    ipfw add 50000 fwd 127.0.0.1,9997 \
        tcp from any to "$huluip" dst-port 1935
done
</pre>
</li>
<li>Create a file, hulu_interceptor.ini with these contents:
<pre>
[proxy]
mode = interceptor
listen_port = 9997
host = XXX.YYY.ZZZ.XXX
port = 9997
</pre>
</li>
<li>Download <a href="http://delx.net.au/hg/jamesstuff/raw-file/tip/scripts/proxy.py">proxy.py</a> and run this command to start capturing and forwarding the Flash RTMP port to your US server.
<pre>proxy.py -d hulu_interceptor.ini</pre>
</li>
</ul>
<p>Some ISPs in Australia (Internode, iiNet and others) override the DNS entries for Akamai servers. This is why the modification to <tt>/etc/hosts</tt> is needed. Note that using the rules above, only traffic to specific Akamai Flash RTMP servers will go through your US server. So unmetered ABC iView content will remain unmetered. However, if Hulu adds new servers to this list, or if I&#8217;ve missed some, then some videos may not work and the hosts file will need updating.</p>
<p>If you are having difficulty viewing videos and you suspect that this is the issue, try running this tcpdump command to see whether your connections are being sent to a server within your ISPs address range:</p>
<pre># tcpdump -i INTERFACE port 1935</pre>
<p>You&#8217;ll then need to find the corresponding domain name and the &#8216;correct&#8217; IP to add to <tt>/etc/hosts</tt></p>
<h4>Automatic <tt>/etc/hosts</tt> updating</h4>
<p>The <tt>/etc/hosts</tt> file is used to know which IP addresses to route over the tunnel to USA. My USA server resolves the Hulu video hosts that I know about and makes them available at this URL: <a href="http://delx.net.au/files/huluhosts.txt">http://delx.net.au/files/huluhosts.txt</a>. This is automatically updated every hour.</p>
<p>I use a daily cronjob on my client machines in order to keep their hosts file up to date. Adapt this to your needs.</p>
<pre>
#!/bin/bash

cp /etc/hosts /etc/hosts.hulubak &#038;&#038;
grep -v HULU /etc/hosts > /etc/_hosts.new &#038;&#038;
curl -s http://delx.net.au/files/huluhosts.txt >> /etc/_hosts.new &#038;&#038;
chmod 0644 /etc/_hosts.new &#038;&#038;
mv /etc/_hosts.new /etc/hosts &#038;&#038;

# Ensure you clear the previous Hulu firewall rules and restart your
# DNS server (if you use one)
/root/hulutables
/etc/init.d/dnsmasq restart > /dev/null
</pre>
]]></content:encoded>
			<wfw:commentRss>http://delx.net.au/blog/2009/03/who-wants-hulu/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Linux Traffic Control &#8211; QoS</title>
		<link>http://delx.net.au/blog/2008/12/linux-traffic-control-qos/</link>
		<comments>http://delx.net.au/blog/2008/12/linux-traffic-control-qos/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 17:30:59 +0000</pubDate>
		<dc:creator>delx</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[shaping]]></category>
		<category><![CDATA[voip]]></category>

		<guid isPermaLink="false">http://delx.net.au/blog/?p=17</guid>
		<description><![CDATA[I recently started using VoIP, using NodePhone with Internode. This post describes how I implemented QoS on my router to make VoIP work well. It also allows me to prioritise some traffic on my network, such as SSH, while deprioritising others, such as BitTorrent and SFTP. Background You may want to skip this section initially [...]]]></description>
			<content:encoded><![CDATA[<p>I recently started using <acronym title="Voice over Internet Protocol">VoIP</acronym>, using <a href="http://www.internode.on.net/residential/nodephone">NodePhone</a> with <a href="http://www.internode.on.net">Internode</a>. This post describes how I implemented <acronym title="Quality of Service">QoS</acronym> on my router to make VoIP work well. It also allows me to prioritise some traffic on my network, such as SSH, while deprioritising others, such as BitTorrent and SFTP.</p>
<p><span id="more-17"></span></p>
<h3>Background</h3>
<p>You may want to skip this section initially and refer back to it if you come across a concept that you do not fully understand later in the document.</p>
<p>I assume that you have a working understanding of networking. This means you must know what an IP address is, what TCP is, and what the relationship of these to application level protocols HTTP and SSH is. IPv6 is not covered here but probably will be in the future.</p>
<p>QoS, or Quality of Service, is any mechanism for guaranteeing a particular amount of throughput or latency for some type of traffic.</p>
<p>VoIP is basically about making phone calls over your internet connection. NodePhone uses the SIP standard for this. It supports incoming and outgoing calls to the PSTN by giving you an extra phone number. Internode recommends getting a QoS equipped router, but I use a Linux PC as my router and was unwilling to switch for various reasons. Using VoIP without QoS is much like talking on a mobile phone while going through a subway. The call is jittery with frequent voice dropouts.</p>
<p>IP packets have a Type-Of-Service (TOS) field in them. Applications can set this field to values such as Minimise-Delay, or Maximise-Throughput. This allows applications such as BitTorrent to signal that they are more interested in throughput than latency, while an interactive SSH session (think typing at a shell) could signal the opposite. The default is for normal service.</p>
<p>Shaping is when we prioritise outgoing traffic. It is possible to do this really well because our router is in full control of what data is sent out onto the internet. It is possible to specify what rate packets should be sent at and in what order. Eg, VoIP packets before BitTorrent is a sensible rule.</p>
<p>Policing is attempting to enforce rules upon incoming data. This is not possible because we cannot directly influence how much data other computers will send our way. Instead what we do is drop packets that are coming in too fast in the hope that the sender will slow down. Thankfully this is exactly what TCP is designed to do, so this strategy works reasonably well. The aim here is to make your router into a bottleneck that is slightly slower than your internet connection so you influence over the rate at which different classes of packets come in.</p>
<h3>Goal</h3>
<p>I needed to set up QoS to prioritise the VoIP traffic on my network. The existing documentation is not exactly plentiful and while it was invaluable, I found it difficult to understand. There don&#8217;t seem to be any turnkey solutions that do QoS for Linux in the way that I wanted.</p>
<p>I have four categories of traffic.</p>
<ol>
<li>VoIP traffic &#8211; guaranteed 64Kbit, highest priority</li>
<li>High priority &#8211; interactive SSH sessions (not SFTP)</li>
<li>Normal priority &#8211; the default</li>
<li>Low priority &#8211; bulk data transfers like SFTP or BitTorrent</li>
</ol>
<p>If I&#8217;m on a phone call, that traffic absolutely needs priority over everything else. The packets from the VoIP phone call should never be dropped or delayed.</p>
<p>Immediately after that comes other high priority traffic. This is anything with the Minimise-Delay TOS bit set in the IP header. SSH sets Minimise-Delay for interactive shells, but not for SFTP/SCP. Very convenient. Be aware that if you use ControlMaster to piggyback SFTP on an existing SSH connection that the TOS bits are set per TCP connection. I also put ACK packets in here; one of these is sent for every packet that you download. If you&#8217;re doing a large upload then these tiny packets can get delayed, causing your download to slow down. I find it works well to give them a high priority.</p>
<p>Next priority is general traffic, this is the default bucket. By default all traffic goes in here. This includes web traffic, instant messaging, email, etc</p>
<p>Finally we have the data that we don&#8217;t care about at all. I&#8217;m a little nasty and dump any traffic with the Maximise-Throughput TOS bit set in here. That includes my BitTorrents (using <a href="http://libtorrent.rakshasa.no">rtorrent</a>) and SFTP/SCP traffic. This means that the traffic doesn&#8217;t really get it&#8217;s throughput maximised at all, but it works well for my purposes.</p>
<h3>Linux Traffic Control</h3>
<p>This is all done using the Linux Traffic Control system. It&#8217;s made up of a tree of queues, each with a specific algorithm for dequeuing packets.</p>
<p>Have a look at the <a href="http://delx.net.au/hg/jamesstuff/file/b005ac01417d/scripts/shaper">shaper script</a>. All of the rates in this file are specified in Kilobits/sec. You may need to read this text more than once.</p>
<p>I&#8217;m using the Hierarchical Token Bucket (HTB) for each of the four categories mentioned above. Each bucket has an associated rate, maximum rate and priority. The available outgoing bandwidth is measured and divided up amongst the different categories of traffic. The bucket gets a minimum throughput specified by &#8216;rate&#8217;, and a maximum specified by &#8216;ceil&#8217;. This maximum could be reached if one of the other buckets is not using its allowance. For example, while there is no VoIP traffic other buckets can use that 64Kbit allowance. Packets are dequeued from the buckets in order of the priority that each is given. Lower priorities first.</p>
<p>Next we add a Stochastical Fairness Queue (SFQ) to each bucket. The SFQ organises all packets it receives into sessions, like TCP connections, using a hashing algorithm. It dequeues packets from these sessions in a round-robin fashion. This means that if you have two connections they each receive an equal share of the available resources.</p>
<p>Packets are assigned to a particular queue/bucket by inspecting their header for source/dest addresses/ports as well as the TOS field.</p>
<p>Finally, some basic policing is applied to incoming traffic. Incoming VoIP traffic is never policed, but all other incoming traffic is policed at slightly less than the link&#8217;s maximum throughput. This forces the router to be the bottleneck and encourages the sender of any traffic that has been dropped to slow down.</p>
<p>QoS on incoming traffic really needs to be handled by your ISP, and while Internode claims that they do this, I found that I needed these policing rules for VoIP to work while large downloads were occurring. I suspect this is due to Internode not being able to provide proper QoS for my ADSL1 connection on a 1.5Mbit Telstra port.</p>
<h3>References</h3>
<ol>
<li><a href="http://delx.net.au/hg/jamesstuff/raw-file/tip/scripts/shaper">Shaper script</a> &#8211; latest version</li>
<li><a href="http://delx.net.au/hg/jamesstuff/file/b005ac01417d/scripts/shaper">Shaper script</a> &#8211; original version</li>
<li><a href="http://lartc.org/howto/">Linux Advanced Routing &amp; Traffic Control HOWTO</a></li>
<li><a href="http://rfc.sunsite.dk/rfc/rfc1349.html">RFC1349 &#8211; Type of Service in the Internet Protocol Suite</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://delx.net.au/blog/2008/12/linux-traffic-control-qos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internet Censorship in Australia</title>
		<link>http://delx.net.au/blog/2008/11/internet-censorship-in-australia/</link>
		<comments>http://delx.net.au/blog/2008/11/internet-censorship-in-australia/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 08:22:44 +0000</pubDate>
		<dc:creator>delx</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[australia]]></category>
		<category><![CDATA[censorship]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[politics]]></category>

		<guid isPermaLink="false">http://delx.net.au/blog/?p=8</guid>
		<description><![CDATA[The Australian government is planning to filter the internet to protect children. The idea is to have two tiers of filtering. The first tier is enabled by default for all internet connections and blocks all material considered unsafe for children. Adults will have the option to move to the second tier which is designed to [...]]]></description>
			<content:encoded><![CDATA[<p>The Australian government is planning to filter the internet to protect children. The idea is to have two tiers of filtering. The first tier is enabled by default for all internet connections and blocks all material considered unsafe for children. Adults will have the option to move to the second tier which is designed to only block illegal material.</p>
<p><span id="more-8"></span></p>
<p>This illegal material is initially to be defined as child pornography, but once a system such as this has come into place you can bet that this definition will be stretched. Senator Nick Xenophon is already pushing to block online gambling sites. Others want to block access to information about euthanasia, abortion and other sensitive topics. Additionally any material that is Refused Classification by the OFLC is illegal to distribute in Australia.</p>
<p>In government trials the filter slowed internet access by up to 80%, while still having false positives and false negatives up 1-3%. That&#8217;s 1 in every 100 web pages you visit blocked for no reason. As you would expect, the filters with higher blocking accuracy were slower. It&#8217;s a trade-off that the government will make on your behalf.</p>
<p>Finally, this just won&#8217;t work! The task that the government is attempting to tackle is an impossible one. Doomed to failure for technical and social reasons.</p>
<p>Firstly, and most importantly, Australia does not need this. Parents that wish to rely on filtering software to protect their children already have the option to acquire, free of charge, software that runs on their computer to filter undesirable websites. See <a href="http://netalert.gov.au">NetAlert</a>. The lack of public interest in this scheme should provide some clue to the government about Australia&#8217;s lack of interest in web censorship.</p>
<p>Secondly, attempting to place ratings on the billions of web pages that already exist today would seriously tax the resources of any government department. The only reliable way of censoring all the &#8220;bad&#8221; web pages would be to have an explicit whitelist of &#8220;good&#8221; pages. This is undesirable for too many reasons to list. This leaves the option of blacklisting pages that are considered &#8220;inappropriate&#8221;. The government is left with the impossible task of finding all these pages and adding them to a blacklist. Artificial intelligence has not advanced to the point where this can be automated without resulting in a substantial number of false positives. When a website does find itself on the blacklist it can simply move to another host and wait for itself to be blacklisted again.</p>
<p>Finally, from a technical point of view, this scheme completely goes against the spirit of the Internet, which is why it cannot work. China, a government which has also decided against the will of its citizens to implement censorship of the web, fails to do so. What makes the Australian government think that it will do any better? Will this filtering scheme stop anybody who can type http://www.anonymizer.com into a web browser? No, but it will cost a great deal of money and inconvenience all Australians who use the web. What about websites like YouTube that have mixtures of content? What about Google, it might index illegal content, does it get blocked too? Does this plan even consider the non-web parts of the Internet? Illegal content will still be available over encrypted P2P like BitTorrent. This is impossible to stop unless you plan to disable all connectivity on the Internet except for web browsing. And even then there are (inefficient) work-arounds.  Does the government perhaps think that Australians (criminal or not) are not intelligent enough to work around this filter if we want to? Or is this scheme some misguided attempt to protect the population of Australia from Internet &#8220;nasties&#8221; that they, as adults, are incapable of dealing with alone?  </p>
<p>In summary, this &#8220;clean feed&#8221; is not needed to protect children because parents already have sufficient options to do so. As anybody familiar with networking would say, it is technically impossible to implement reliably and *trivial* for people with minimal technical background to work around. In the best case it would cause minimal inconvenience and cost a great deal of money. In the worst case it would cost a great deal more money and render the Internet useless and Australia&#8217;s government the laughing-stock of the technical world, while still only causing minimal inconvenience.</p>
<p>References:</p>
<ul>
<li><a href="http://yro.slashdot.org/yro/08/10/24/0224239.shtml">Australian Government Censorship &#8216;Worse Than Iran&#8217;</a></li>
<li><a href="http://www.smh.com.au/news/technology/biztech/labors-net-gag-worse-than-iran/2008/10/23/1224351430987.html">Sydney Morning Herald &#8211; Filtering out the fury: how government tried to gag web censor critics</a></li>
<li><a href="http://www.pokernewsdaily.com/internet-gambling-may-be-censored-in-australia-613/">Internet Gambling May be Censored in Australia</a></li>
<li><a href="http://nocleanfeed.com/">EFA&#8217;s No Clean Feed</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://delx.net.au/blog/2008/11/internet-censorship-in-australia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
