Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191] helo=mx.sourceforge.net) by sfs-ml-1.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from <decker.christian@gmail.com>) id 1Qoca7-0006Ne-VK for bitcoin-development@lists.sourceforge.net; Wed, 03 Aug 2011 14:37:59 +0000 Received-SPF: pass (sog-mx-1.v43.ch3.sourceforge.com: domain of gmail.com designates 209.85.210.42 as permitted sender) client-ip=209.85.210.42; envelope-from=decker.christian@gmail.com; helo=mail-pz0-f42.google.com; Received: from mail-pz0-f42.google.com ([209.85.210.42]) by sog-mx-1.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1Qoca6-0002HH-Ph for bitcoin-development@lists.sourceforge.net; Wed, 03 Aug 2011 14:37:59 +0000 Received: by pzk37 with SMTP id 37so158023pzk.1 for <bitcoin-development@lists.sourceforge.net>; Wed, 03 Aug 2011 07:37:53 -0700 (PDT) Received: by 10.142.247.15 with SMTP id u15mr5025964wfh.307.1312382272135; Wed, 03 Aug 2011 07:37:52 -0700 (PDT) MIME-Version: 1.0 Received: by 10.68.52.98 with HTTP; Wed, 3 Aug 2011 07:37:12 -0700 (PDT) In-Reply-To: <CAJ1JLttf+h5J8ehmx1j5P1GiGYAUiLN=fGjSV_dLoy72XQohfA@mail.gmail.com> References: <CANEZrP1-BaNmKhSPXSe2sjH0-DPm62_=OQ_S6aCT3-nLdFLLGA@mail.gmail.com> <CAJ1JLtuRhqwcCWjv+H2XUjsX-Za9ZkSkOsH3t=JaUu1581RGUA@mail.gmail.com> <CANEZrP2Cr1mVcj3CQQNx6BeWSb=hzxawva2Lz=sAbjx4AwYdmw@mail.gmail.com> <CAJ1JLttf+h5J8ehmx1j5P1GiGYAUiLN=fGjSV_dLoy72XQohfA@mail.gmail.com> From: Christian Decker <decker.christian@gmail.com> Date: Wed, 3 Aug 2011 16:37:12 +0200 Message-ID: <CALxbBHU=hBPLNCfjdfJNgO=mUd14MVJpZGA0J14OE6uZgk1k3Q@mail.gmail.com> To: Bitcoin Dev <bitcoin-development@lists.sourceforge.net> Content-Type: multipart/alternative; boundary=00504502cc3423e34904a99acff4 X-Spam-Score: 1.3 (+) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for sender-domain 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (decker.christian[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 1.7 URIBL_WS_SURBL Contains an URL listed in the WS SURBL blocklist [URIs: bitcoin.org.uk] 1.0 HTML_MESSAGE BODY: HTML included in message 0.3 HTML_FONT_FACE_BAD BODY: HTML font face is not a word -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Headers-End: 1Qoca6-0002HH-Ph Subject: Re: [Bitcoin-development] DNS seeds returning gone peers X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: <bitcoin-development.lists.sourceforge.net> List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>, <mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe> List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development> List-Post: <mailto:bitcoin-development@lists.sourceforge.net> List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help> List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>, <mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe> X-List-Received-Date: Wed, 03 Aug 2011 14:38:00 -0000 --00504502cc3423e34904a99acff4 Content-Type: text/plain; charset=ISO-8859-1 I'm curious whether my Non-Blocking network stack (BitDroid) isn't better suited for detecting and tracking available peers. I have implemented several benchmarks, including a simple peer counter listener, which would have to be adapted to fit the DNS needs (open and check if a real peer is listening). Being non-blocking it can open several hundreds of connections to check reachability of the peers and at the same time keep a pool of peers connected to listen for address broadcasts, with minimal overhead (single thread, close to no context switches). Just an idea :-) Regards, Chris On Wed, Aug 3, 2011 at 4:18 PM, Rick Wesson <rick@support-intelligence.com>wrote: > Starting from bitcoinj, I have plenty of ways to publish DNS. Why sort them > by version? Ordering from highest to lowest? > > how about publishing addresses under version.example.com if you version > has a perfrence? > > -rick > > > On Wed, Aug 3, 2011 at 7:10 AM, Mike Hearn <mike@plan99.net> wrote: > >> There's no project currently :-) >> >> Starting from Matts code is probably the way to go. It's written in PHP. >> Alternatively, you could write a Java app for it, as there are drop-in DNS >> serving libraries you could link with BitCoinJ+sqlite. It probably wouldn't >> be that hard. You'd want to sort nodes by version, how long they've been >> observed to exist, the last polling time, etc. >> >> On Wed, Aug 3, 2011 at 4:00 PM, Rick Wesson < >> rick@support-intelligence.com> wrote: >> >>> Mike, >>> >>> I think I can contribute to your DNS seeding project. Could you help >>> define long-lived peers? >>> >>> -rick >>> >>> >>> On Wed, Aug 3, 2011 at 3:04 AM, Mike Hearn <mike@plan99.net> wrote: >>> >>>> This is expected to happen from time to time of course as it's >>>> inherently racy, but there are a *lot* of bad nodes appearing in the >>>> DNS seeds. >>>> >>>> $ nmap -oG /tmp/x -p 8333 `dig +short bitseed.bitcoin.org.uk >>>> dnsseed.bluematt.me bitseed.xf2.org` >>>> ... >>>> Nmap done: 48 IP addresses (25 hosts up) scanned in 9.80 seconds >>>> >>>> $ grep -c 'closed' /tmp/x >>>> 6 >>>> >>>> So of 48 IPs returned only 19 are actually usable. This is slowing down >>>> peer bringup for the Android apps, which don't currently save the addresses >>>> of last-used peers (yes, I know we should fix this). >>>> >>>> I was talking to a friend a few days ago about Bitcoin, he seemed >>>> interested. I'm hoping he might take on DNS seeding as a project. A custom >>>> DNS server that watches the network to find long-lived peers that run the >>>> latest version would be helpful for resolving this kind of thing. >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA >>>> The must-attend event for mobile developers. Connect with experts. >>>> Get tools for creating Super Apps. See the latest technologies. >>>> Sessions, hands-on labs, demos & much more. Register early & save! >>>> http://p.sf.net/sfu/rim-blackberry-1 >>>> _______________________________________________ >>>> Bitcoin-development mailing list >>>> Bitcoin-development@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/bitcoin-development >>>> >>>> >>> >> > > > ------------------------------------------------------------------------------ > BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA > The must-attend event for mobile developers. Connect with experts. > Get tools for creating Super Apps. See the latest technologies. > Sessions, hands-on labs, demos & much more. Register early & save! > http://p.sf.net/sfu/rim-blackberry-1 > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > --00504502cc3423e34904a99acff4 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable I'm curious whether my Non-Blocking network stack (BitDroid) isn't = better suited for detecting and tracking available peers. I have implemente= d several benchmarks, including a simple peer counter listener, which would= have to be adapted to fit the DNS needs (open and check if a real peer is = listening). Being non-blocking it can open several hundreds of connections = to check reachability of the peers and at the same time keep a pool of peer= s connected to listen for address broadcasts, with minimal overhead (single= thread, close to no context switches).<br> <br>Just an idea :-)<br><br>Regards,<br>Chris<br><br><div class=3D"gmail_qu= ote">On Wed, Aug 3, 2011 at 4:18 PM, Rick Wesson <span dir=3D"ltr"><<a h= ref=3D"mailto:rick@support-intelligence.com">rick@support-intelligence.com<= /a>></span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex;">Starting from bitcoinj, I have plenty of wa= ys to publish DNS. Why sort them by version? Ordering from highest to lowes= t?=A0<div> <br></div><div>how about publishing addresses under <a href=3D"http://versi= on.example.com" target=3D"_blank">version.example.com</a> if you version ha= s a perfrence?</div> <div><br></div><font color=3D"#888888"><div>-rick</div></font><div><div></d= iv><div class=3D"h5"><div><br><br><div class=3D"gmail_quote">On Wed, Aug 3,= 2011 at 7:10 AM, Mike Hearn <span dir=3D"ltr"><<a href=3D"mailto:mike@p= lan99.net" target=3D"_blank">mike@plan99.net</a>></span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> There's no project currently :-)=A0<div><br></div><div>Starting from Ma= tts code is probably the way to go. It's written in PHP. Alternatively,= you could write a Java app for it, as there are drop-in DNS serving librar= ies you could link with BitCoinJ+sqlite. It probably wouldn't be that h= ard. You'd want to sort nodes by version, how long they've been obs= erved to exist, the last polling time, etc.</div> <div><div></div><div> <div><br><div class=3D"gmail_quote">On Wed, Aug 3, 2011 at 4:00 PM, Rick We= sson <span dir=3D"ltr"><<a href=3D"mailto:rick@support-intelligence.com"= target=3D"_blank">rick@support-intelligence.com</a>></span> wrote:<br><= blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px= #ccc solid;padding-left:1ex"> Mike,<div><br></div><div>I think I can=A0contribute=A0to your DNS seeding p= roject. Could you help define long-lived peers?=A0</div><div><br></div><div= >-rick</div><div><br><br><div class=3D"gmail_quote"><div><div></div><div> On Wed, Aug 3, 2011 at 3:04 AM, Mike Hearn <span dir=3D"ltr"><<a href=3D= "mailto:mike@plan99.net" target=3D"_blank">mike@plan99.net</a>></span> w= rote:<br> </div></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bo= rder-left:1px #ccc solid;padding-left:1ex"><div><div></div><div>This is exp= ected to happen from time to time of course as it's inherently racy, bu= t there are a <i>lot</i>=A0of bad nodes appearing in the DNS seeds.<div> <br></div><div><div><div><font face=3D"'courier new', monospace">$ = nmap -oG /tmp/x -p 8333 `dig +short <a href=3D"http://bitseed.bitcoin.org.u= k" target=3D"_blank">bitseed.bitcoin.org.uk</a> <a href=3D"http://dnsseed.b= luematt.me" target=3D"_blank">dnsseed.bluematt.me</a> <a href=3D"http://bit= seed.xf2.org" target=3D"_blank">bitseed.xf2.org</a>`</font></div> </div></div><div><font face=3D"'courier new', monospace">...</font>= </div><div><div><font face=3D"'courier new', monospace">Nmap done: = 48 IP addresses (25 hosts up) scanned in 9.80 seconds</font></div> </div><div><font face=3D"'courier new', monospace"><br></font></div= ><div><font face=3D"'courier new', monospace">$ grep -c 'closed= ' /tmp/x</font></div> <div><font face=3D"'courier new', monospace">6<br></font><br></div>= <div>So of 48 IPs returned only 19 are actually usable. This is slowing dow= n peer bringup for the Android apps, which don't currently save the add= resses of last-used peers (yes, I know we should fix this).</div> <div><br></div><div>I was talking to a friend a few days ago about Bitcoin,= he seemed interested. I'm hoping he might take on DNS seeding as a pro= ject. A custom DNS server that watches the network to find long-lived peers= that run the latest version would be helpful for resolving this kind of th= ing.</div> <br></div></div><div>------------------------------------------------------= ------------------------<br> BlackBerry&reg; DevCon Americas, Oct. 18-20, San Francisco, CA<br> The must-attend event for mobile developers. Connect with experts.<br> Get tools for creating Super Apps. See the latest technologies.<br> Sessions, hands-on labs, demos & much more. Register early & save!<= br> <a href=3D"http://p.sf.net/sfu/rim-blackberry-1" target=3D"_blank">http://p= .sf.net/sfu/rim-blackberry-1</a><br>_______________________________________= ________<br> Bitcoin-development mailing list<br> <a href=3D"mailto:Bitcoin-development@lists.sourceforge.net" target=3D"_bla= nk">Bitcoin-development@lists.sourceforge.net</a><br> <a href=3D"https://lists.sourceforge.net/lists/listinfo/bitcoin-development= " target=3D"_blank">https://lists.sourceforge.net/lists/listinfo/bitcoin-de= velopment</a><br> <br></div></blockquote></div><br></div> </blockquote></div><br></div> </div></div></blockquote></div><br></div> </div></div><br>-----------------------------------------------------------= -------------------<br> BlackBerry&reg; DevCon Americas, Oct. 18-20, San Francisco, CA<br> The must-attend event for mobile developers. Connect with experts.<br> Get tools for creating Super Apps. See the latest technologies.<br> Sessions, hands-on labs, demos & much more. Register early & save!<= br> <a href=3D"http://p.sf.net/sfu/rim-blackberry-1" target=3D"_blank">http://p= .sf.net/sfu/rim-blackberry-1</a><br>_______________________________________= ________<br> Bitcoin-development mailing list<br> <a href=3D"mailto:Bitcoin-development@lists.sourceforge.net">Bitcoin-develo= pment@lists.sourceforge.net</a><br> <a href=3D"https://lists.sourceforge.net/lists/listinfo/bitcoin-development= " target=3D"_blank">https://lists.sourceforge.net/lists/listinfo/bitcoin-de= velopment</a><br> <br></blockquote></div><br> --00504502cc3423e34904a99acff4--