Internet Filtering in China in 2004 2005
content was successfully accessed or was inaccessible. If an error occurs, the HTTP protocol returns codes
that indicate the type of error in the header. Thus, by analyzing the headers captured during testing, we
seek to distinguish between errors caused by Internet filtering and more mundane, unintentional network
connection errors.
We classify results in one of four categories:
URL was accessible both through the local connection and the remote computer (not filtered);
URL was accessible through the local connection but inaccessible through the remote computer,
which returned a different HTTP response code (possibly filtered);
URL was accessible through the local connection but inaccessible through the remote computer
due to a network connection error (possibly filtered, but not definitive); or
URL was accessible through the local connection but inaccessible through the remote computer;
the remote computer returned a block page (filtered).
If a URL is inaccessible through both the local connection and the remote computer, we consider
it dead and remove it from the results. This result indicates that the URL's content was not available to
Internet users generally at the time of our testing, making the URL irrelevant for our testing.
The ONI team analyzes blocked, unblocked, and uncertain URLs both at an aggregate level (to
estimate the overall level of filtering) and at a category level (to indicate what types of content the state
seeks to control). We publish state specific studies, such as this one on China, that provide background
on a state's political and legal system, lists of tested sites, and analysis of results to reveal and analyze, to
the greatest extent we can given the data we are able to collect, what information a state blocks and how it
does so. We note, however, that our results and analysis capture a snapshot of a state's filtering system
for a specific point or period of time; governments can and do alter the content they block dynamically.
C. Methods Specific to China
We tested China's Internet filtering through four methods. First, we were able to deploy an
internally developed application within China to test what content was, and was not, blocked by the state's
system. Volunteers used this application, along with manual checking of Web sites, to probe China's
filtering from a number of access points inside the country. Second, we accessed proxy servers in China to
duplicate and augment this in state testing. Third, we created content on Web logs ( blogs ) on three of
China's most popular blog providers to evaluate the services' keyword filtering mechanisms. Finally, we
sent a series of test e mail messages to, and from, accounts hosted by several Chinese ISPs.
China's sophisticated filtering system makes testing its blocking difficult. For most states in
which we test, an attempt to access a filtered site returns a block page indicating the requested site is
prohibited and, occasionally, offering general reasons for this ban and an opportunity to request
reconsideration of the decision to block access to the given site. In China, however, a request for a filtered
Web page returns a network timeout; testing from a remote location via a proxy server in China generally
returns any one of a series of HTTP error codes.
151
In some cases, this included an error indicating the
151
See generally R. Fielding et al., HTTP/1.1: Status Code Definitions, available at
http://www.w3.org/Protocols/rfc2616/rfc2616 sec10.html (June 1999).
21