On Wednesday, March 28, 2001, at 05:14 PM, Colin Madere wrote:

The whole firewall/NAT thing is a pain too, but normal HTTP requests get through all these so maybe making this tranfer look like one of those would do the trick

Not quite. HTTP requests can get out of firewalls, but not into them. Same goes for NAT. So no one inside a firewall or NAT network can send a file to someone outside, unless some kind of special proxying is done somewhere.

Considering that this includes virtually everyone at a business or school, and a growing number of home users (those with personal firewalls on their DSL/cable modem connections, and/or using internet sharing software, and/or using 802.11 aka AirPort), this is a big problem IMHO.

Another possible solution is to have a "temporary storage" app on a server which would accept files with a randomly generated name which you pass to the receiver client so that they can make that request of the server.� Would work, but means more server load and more to manage.

Yup, this is feasible, and I've been told that this is exactly how file transfers work using the Yahoo protocol (with yahoo.com acting as the temporary server.)

Just to play devil's advocate: Why is it so crucial for file transfers to be out of band, anyway? Jabber's architecture is similar to SMTP, and people send each other large e-mail enclosures all the time. Why can't I just send someone a file as a big CDATA element inside a <message>? Actually, given limitations on XML element lengths and for other reasons, it would probably be necessary to packetize the file into smaller chunks (32kbytes?) which can each be sent in a separate message with a sequence number.

--Jens

Reply via email to