Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 89222 invoked from network); 7 Mar 2009 13:32:13 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 7 Mar 2009 13:32:13 -0000 Received: (qmail 73964 invoked by uid 500); 7 Mar 2009 13:32:11 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 73922 invoked by uid 500); 7 Mar 2009 13:32:11 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 73911 invoked by uid 99); 7 Mar 2009 13:32:11 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Mar 2009 05:32:11 -0800 X-ASF-Spam-Status: No, hits=1.4 required=10.0 tests=FS_REPLICA,RCVD_IN_DNSWL_LOW,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [209.68.5.9] (HELO relay00.pair.com) (209.68.5.9) by apache.org (qpsmtpd/0.29) with SMTP; Sat, 07 Mar 2009 13:32:01 +0000 Received: (qmail 8619 invoked from network); 7 Mar 2009 13:31:38 -0000 Received: from 96.33.90.152 (HELO ?192.168.1.195?) (96.33.90.152) by relay00.pair.com with SMTP; 7 Mar 2009 13:31:38 -0000 X-pair-Authenticated: 96.33.90.152 Message-Id: <4E04C368-DDA2-4B47-BFA9-1F9232AAB115@apache.org> From: Damien Katz To: user@couchdb.apache.org In-Reply-To: <682AC08E-95FF-4847-9373-CF9268AE0323@apache.org> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Subject: Re: Peer to peer replication Date: Sat, 7 Mar 2009 08:31:38 -0500 References: <56a83cd00903070158yb0eac89xaa433c6f120ee667@mail.gmail.com> <6B20EBBA-8AB4-4D1A-93A2-90A1FAFBCEEC@apache.org> <56a83cd00903070221h407c4478oa32a053741d149fb@mail.gmail.com> <682AC08E-95FF-4847-9373-CF9268AE0323@apache.org> X-Mailer: Apple Mail (2.930.3) X-Virus-Checked: Checked by ClamAV on apache.org On Mar 7, 2009, at 5:41 AM, Jan Lehnardt wrote: > > On 7 Mar 2009, at 11:21, David Van Couvering wrote: >>> - What protocol is used for replication across nodes? I'm >>> assuming it's >>>> HTTP but just checking. In a peer-to-peer system, this sounds >>>> like it >>>> means >>>> that each participant has to open up their HTTP port for >>>> replication to >>>> work. Is that correct? >>> >>> Yes. >> >> Hm. I am concerned that your Average Joe does not like the idea of >> opening >> up their HTTP port, and probably doesn't know how to. Folks used >> to hacking >> with BitTorrent maybe, but that's not the target user I was really >> considering. >> >> I was thinking of maybe piggybacking replication messages on a >> protocol that >> already supports push over the Internet and works for most users - >> like >> XMPP. >> >> But I'm not an expert in network protocols/security, and before I >> jump into >> that, I am wondering if there are simpler solutions so that it's >> Very Easy >> for Mr. Average Joe or Jill to install a CouchDB app where peer-to- >> peer >> replication Just Works. > > This an open issue, you're right. I don't think the protocol matters > as much. > The "common trick" is to setup an intermediate server machine that > all peers > can push to and pull from (replication is both, push and pull). I > don't think > XMPP magically opens ports for users :) 1+ Peers who cannot connect to one another can replicate to a publicly accessible server to achieve the same thing. Also, with a publicly available server, the peers can sync without being online at the same time. -Damien > > That said, there are a couple ways around this problem and the best > is to > combine them all which I believe is what Skype does which in my > experience > works quite well in this regard. > > [And then I start writing about the technique and when I was looking > for > references, I found these, so I just give you the links and spare > you my > ramblings :)] > > http://www.h-online.com/security/How-Skype-Co-get-round-firewalls--/features/82481 > http://sebsauvage.net/punching/ > > Searching for "firewall punching" gives you some more resources. > > Cheers > Jan > -- >