<?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>speed &#8211; Avian Bone Syndrome</title>
	<atom:link href="https://www.avianbonesyndrome.com/tag/speed/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.avianbonesyndrome.com</link>
	<description>An exercise in futility by Daniele Nicolucci</description>
	<lastBuildDate>Fri, 03 Sep 2010 08:45:51 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://www.avianbonesyndrome.com/wp-content/uploads/2015/04/cropped-cover-sito-32x32.jpg</url>
	<title>speed &#8211; Avian Bone Syndrome</title>
	<link>https://www.avianbonesyndrome.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">12285558</site>	<item>
		<title>iPhone 3G comes back to life after installing iOS 4.1</title>
		<link>https://www.avianbonesyndrome.com/2010/09/03/iphone-3g-comes-back-to-life-after-installing-ios-4-1/</link>
		
		<dc:creator><![CDATA[Daniele Nicolucci]]></dc:creator>
		<pubDate>Fri, 03 Sep 2010 08:45:13 +0000</pubDate>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[fixed]]></category>
		<category><![CDATA[gold master]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[ios 4.1]]></category>
		<category><![CDATA[iphone 3g]]></category>
		<category><![CDATA[speed]]></category>
		<category><![CDATA[yay]]></category>
		<guid isPermaLink="false">http://www.avianbonesyndrome.com/?p=356</guid>

					<description><![CDATA[As I had predicted, Apple introduced iOS 4.1 at the iPod event last Wednesday. It is officially scheduled for release on September 9th, but there are ways to download the Gold Master that was seeded to the members of the Apple Developer Program. I am not one — not yet, anyway — but I couldn&#8217;t take it anymore. The installation was extremely simple, with no remote activation or anything like that. This is because the GM is essentially the very same that will be pushed to the masses in a week. I simply pressed the option key while clicking on &#8216;update&#8217; in iTunes and I got a dialog window to choose the .ipsw file from the disk. After that, it took its sweet updating time and lo and behold, my two-year-old device was running the latest incarnation of iOS. I am extremely pleased to report that my iPhone 3G has come&#8230;]]></description>
										<content:encoded><![CDATA[<p><a href="https://www.avianbonesyndrome.com/2010/08/30/could-ios-4-1-be-released-on-wednesday/">As I had predicted</a>, Apple introduced iOS 4.1 at the iPod event last Wednesday. It is officially scheduled for release on September 9th, but there are ways to <a href="http://gumballtech.com/2010/09/01/ios-4-1-gm-for-all-device-here/">download the Gold Master</a> that was seeded to the members of the Apple Developer Program. I am not one — not yet, anyway — but <a href="https://www.avianbonesyndrome.com/2010/08/08/can-the-iphone-3g-be-saved/">I couldn&#8217;t take it anymore</a>.</p>
<p>The installation was extremely simple, with no remote activation or anything like that. This is because the GM is essentially the very same that will be pushed to the masses in a week. I simply pressed the option key while clicking on &#8216;update&#8217; in iTunes and I got a dialog window to choose the .ipsw file from the disk. After that, it took its sweet updating time and lo and behold, my two-year-old device was running the latest incarnation of iOS.</p>
<p>I am extremely pleased to report that my iPhone 3G has come back to life. After using it extensively, to the extent of purposefully opening all sorts of apps in rapid succession to make it crumble, it stood strong. I can assure you that this is not placebo: it&#8217;s pleasant to use again. Most importantly, it doesn&#8217;t randomly freeze for a random amount of time in a random fashion in random apps. Sometimes it does take its time when the lock screen comes up (perhaps it does some cleaning when it automatically locks, and it reloads something?), but other than that, it&#8217;s completely different from 4.0.x.</p>
<p>Mind you, this is still a two-year-old phone and there have been two major revisions since it came out, so do not expect The Flash in your iPhone (hey! that&#8217;s a geeky double-entendre! neat!), but it&#8217;s definitely a major improvement. One disappointment stands, though: 3G units just don&#8217;t have the hardware to run the <a href="http://www.engadget.com/2010/09/01/epics-spectacular-unreal-engine-3-tech-demo-free-at-itunes-app/">Epic Citadel</a> demo, but — once again — is anybody really surprised by that?</p>
<p>The real irony is that my iPhone 3G was such a pain to use in the past couple of months (especially with the annoying freezes) that I honestly can&#8217;t even say whether 4.1 makes it as fast as 3.1.2, or if it&#8217;s still slower than that. All I know is that it&#8217;s faster than 4.0.2, and that&#8217;s all I care about.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">356</post-id>	</item>
		<item>
		<title>Speed up connections to IRC servers</title>
		<link>https://www.avianbonesyndrome.com/2010/07/19/speed-up-connections-to-irc-servers/</link>
					<comments>https://www.avianbonesyndrome.com/2010/07/19/speed-up-connections-to-irc-servers/#comments</comments>
		
		<dc:creator><![CDATA[Daniele Nicolucci]]></dc:creator>
		<pubDate>Mon, 19 Jul 2010 09:04:20 +0000</pubDate>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[dcc]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[freenode]]></category>
		<category><![CDATA[ident]]></category>
		<category><![CDATA[irc]]></category>
		<category><![CDATA[speed]]></category>
		<category><![CDATA[tutorial]]></category>
		<guid isPermaLink="false">http://www.avianbonesyndrome.com/?p=166</guid>

					<description><![CDATA[I have recently gone back to IRC — specifically Freenode — and among the delicious problems of the old days, such as the inability to easily establish DCC transfers (more on that later), I have been presented with the inevitable ident check delay during the connection to server. Ident is essentially a protocol that lets the server know what user is effectively connecting from the client machine. It can be very handy, but most people are behind NAT and/or do not run any ident daemon. This translates to a delay while the server patiently waits for an ident reply before giving up and adding a tilde to the username in the hostmask, which effectively means &#8220;this user claims to be called foobar, but I could not verify it.&#8221; In practice, this doesn&#8217;t change anything at all. The ident check timeout depends on how the IRC server is configured. Freenode takes a very&#8230;]]></description>
										<content:encoded><![CDATA[<p>I have recently gone back to <a href="http://en.wikipedia.org/wiki/IRC">IRC</a> — specifically <a href="http://en.wikipedia.org/wiki/Freenode">Freenode</a> — and among the delicious problems of the old days, such as the inability to easily establish DCC transfers (more on that later), I have been presented with the inevitable <a href="http://en.wikipedia.org/wiki/Ident">ident check</a> delay during the connection to server. Ident is essentially a protocol that lets the server know what user is effectively connecting from the client machine. It can be very handy, but most people are behind NAT and/or do not run any ident daemon. This translates to a delay while the server patiently waits for an ident reply before giving up and adding a tilde to the username in the hostmask, which effectively means &#8220;this user claims to be called <em>foobar</em>, but I could not verify it.&#8221; In practice, this doesn&#8217;t change anything at all.</p>
<p><span id="more-166"></span>The ident check timeout depends on how the IRC server is configured. Freenode takes a very conservative approach, using a timeout of 15 seconds. This is what happens:<br />
<code>[08:43:08] --- Looking up irc.freenode.net..<br />
[08:43:08] --- Connecting to chat.freenode.net (2001:6b0:e:2018::172) port 6667..<br />
[08:43:08] --- Connected. Now logging in..<br />
[08:43:08] --- *** Looking up your hostname...<br />
[08:43:08] --- *** Checking Ident<br />
[08:43:08] --- *** Couldn't look up your hostname<br />
[08:43:23] --- *** No Ident response<br />
[08:43:23] --- Welcome to the freenode Internet Relay Chat Network Jollino<br />
<em>...etc...</em></code></p>
<p>Not exactly the fastest thing. The problem here is not that I lack an ident daemon; it&#8217;s that my router filters all ports by default. A filtered port is neither open or closed, so a remote party trying to connect to it is left waiting indefinitely. After all, the lack of an immediate response might be due to a congested network. Indeed, when I tried connecting to port 113 (ident) from a remote shell, here is what happened:<br />
<code>[cyclops]$ time telnet 151.64.126.29 113<br />
Trying 151.64.126.29...<br />
telnet: Unable to connect to remote host: Connection timed out</code></p>
<p><code> </code></p>
<p><code>real    0m21.003s<br />
user    0m0.000s<br />
sys     0m0.000s</code></p>
<p>Linux&#8217;s telnet in this case seems to have a timeout of 21 seconds. Freenode&#8217;s IRC deamon waits 15. It&#8217;s still too much. Compare to what happens with a closed port:<br />
<code>[cyclops]$ time telnet 151.64.126.29 6870<br />
Trying 151.64.126.29...<br />
telnet: Unable to connect to remote host: Connection refused</code></p>
<p><code> </code></p>
<p><code>real    0m0.266s<br />
user    0m0.000s<br />
sys     0m0.004s</code></p>
<p>Much better, isn&#8217;t it? The solution is straightforward: unfiltering port 113. My router however only does that by forwarding a port to an internal machine (that is, I have to selectively pierce the NAT so that incoming connections to port X are forwarded to internal machine a.b.c.d on port Y — X and Y can be the same, of course). Is that a problem? Not really, but the recipient machine has to be active, otherwise you will incur into another connection timeout and you&#8217;re back to square one. Interestingly enough, it turns out that my router is perfectly fine with redirecting ports to itself, so I simply had connections to (external) port 113 to port 113 on itself. Here is the result from the shell:<br />
<code>[cyclops]$ time telnet 151.64.126.29 113<br />
Trying 151.64.126.29...<br />
telnet: Unable to connect to remote host: Connection refused</code></p>
<p><code> </code></p>
<p><code>real    0m0.234s<br />
user    0m0.000s<br />
sys     0m0.000s</code></p>
<p>And here is how it works when connecting to IRC:<br />
<code>[10:59:03] --- Looking up irc.freenode.net..<br />
[10:59:03] --- Connecting to chat.freenode.net (2001:6b0:5:1688::10) port 6667..<br />
[10:59:03] --- Connected. Now logging in..<br />
[10:59:03] --- *** Looking up your hostname...<br />
[10:59:04] --- *** Checking Ident<br />
[10:59:04] --- *** Couldn't look up your hostname<br />
[10:59:04] --- *** No Ident response<br />
[10:59:04] --- Jollino already in use. Retrying with Jollino_..<br />
[10:59:04] --- Welcome to the freenode Internet Relay Chat Network Jollino_<br />
<em>...etc...</em></code></p>
<p>Much better, isn&#8217;t it?</p>
<p>As for <a href="http://en.wikipedia.org/wiki/Direct_Client-to-Client">DCC</a>, the situation is more complex. The protocol works with the recipient connecting to the sender, so opening up specific ports on the router (and redirecting them to the machine where the IRC client is running) and telling the client to use such ports should work. That&#8217;s how I used to work it around years ago. However, it&#8217;s not working anymore. I can connect to myself from a remote shell, but the actual recipient won&#8217;t. In this time and age, though, it<a href="https://www.dropbox.com/referrals/NTg4NjkwMDk">&#8216;s much faster to just upload things to Dropbox and share the link</a>, so I&#8217;m not going to investigate that further.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.avianbonesyndrome.com/2010/07/19/speed-up-connections-to-irc-servers/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">166</post-id>	</item>
	</channel>
</rss>
