Wednesday, October 18, 2006

Ease of iChat AV?

I had to work late tonight, and I was IM'ing with my wife. I wanted to initiate a Video chat, and iChat failed to establish the connection.  The error message stated "Chat ended with error -8", which probably means that there is a NAT problem.

This is a real problem for iChat.  When attempting an audio or video session, or a file transfer session iChat attempts a direct connection between the computers.  This is a problem when both computer are behind firewalls that use NAT.  By default, firewalls will reject any incoming connections, so when either computer attempts a connection with the other computer, the connection will fail.

When iChat AV first came out, I think that it was pretty likely that one of these computers wasn't behind a hardware firewall, but directly connected to the broadband modem.  This would mean that the connection could be established to the computer not behind the hardware firewall.

Now there are pages that describe the port forwarding/triggering that is required to get this to work.  This is harder than necessary.  There are a couple of things that Apple could do to make this easier.

  1. Support UPnP – This would allow routers to automatically be configured to allow this traffic through.

  2. Distributed network – Skype works around this problem by using using this mechanism.