On Fri, 9 Sep 2011 09:05:55 -0400, Dennis Nezic wrote: > On Fri, 9 Sep 2011 13:00:30 +0100, Matthew Toseland wrote: > > On Wednesday 07 Sep 2011 21:35:44 Dennis Nezic wrote: > > > On Wed, 7 Sep 2011 17:50:36 +0100, Matthew Toseland wrote: > > > > On Friday 02 Sep 2011 15:34:30 Dennis Nezic wrote: > > > > > On Fri, 2 Sep 2011 14:40:22 +0100, Matthew Toseland wrote: > > > > > > On Friday 02 Sep 2011 13:20:39 Dennis Nezic wrote: > > > > > > > On Fri, 2 Sep 2011 00:23:00 -0400, Dennis Nezic wrote: > > > > > > > > On Wed, 31 Aug 2011 15:02:14 -0400, Dennis Nezic wrote: > > > > > > > > > On Wed, 31 Aug 2011 09:44:17 -0400, Dennis Nezic > > > > > > > > > wrote: > > > > > > > > > > netstat (netstat -pnat | grep java) shows 213 > > > > > > > > > > connections to my fproxy at 127.0.0.1:8888, in a > > > > > > > > > > "CLOSE_WAIT" state. I only noticed this after I > > > > > > > > > > could no longer access fproxy > > > > > > > > > > -- probably because of some thread or connection > > > > > > > > > > limit. I'm not exactly sure how to reproduce this -- > > > > > > > > > > it's not simply a matter of opening a connection to > > > > > > > > > > fproxy. > > > > > > > > > > > > > > > > > > False alarm. I think my freenet wget spider got out of > > > > > > > > > control. Apologies. > > > > > > > > > > > > > > > > Upon further consideration, I think it might actually > > > > > > > > be a bug. For one thing, this never happened with > > > > > > > > earlier pre-1401ish versions. For another thing, why > > > > > > > > are there so many sockets open, when my wget client has > > > > > > > > long since closed and exited? (it has been about half > > > > > > > > an hour now > > > > > > > > -- I'll provide updates if they ever do close.) > > > > > > > > CLOSE_WAIT apparently means fproxy got the FIN signal > > > > > > > > from my wget, but didn't close it's end? > > > > > > > > > > > > > > > > I'm still not sure exactly how this bizarre behavior (of > > > > > > > > not closing sockets) starts -- because if I restart > > > > > > > > freenet, and do a simple wget transaction, the socket > > > > > > > > does get properly closed. > > > > > > > > > > > > > > All those "HTTP socket handlers" are still open and > > > > > > > consuming freenet threads. They were initiated by "wget > > > > > > > localhost:8888/USK..." type calls > > > > > > > -- and they probably failed because the sites were old. > > > > > > > Normal browser access to control localhost:8888 does still > > > > > > > close the socket properly. > > > > > > > > > > > > Well what are they doing then? Still running the requests? > > > > > > This is a fundamental problem with fetching stuff over HTTP > > > > > > from Freenet with a low timeout - if your tool moves on to > > > > > > add more requests, the old requests haven't failed, they are > > > > > > still going. > > > > > > > > > > They will go on forever? Fproxy will never close them? (Sounds > > > > > pretty easy to DDOS that?) And why didn't this happen before? > > > > > > > > No, they go on until they complete. There is a limit on the > > > > total number of connections handling requests, iirc the default > > > > is 100. > > > > > > Well, I just checked -- all the 80 connections that were opened a > > > week ago are still open and still in CLOSE_WAIT. What does "until > > > they complete" mean? > > > > The thread on Freenet's side will continue until it fetches the > > data. After that it *should* close the socket. > > So, to DOS freenet, I simply need to ask it to fetch old / > not-fully-existent content? > > > > > > Also, if I kept my wget spider running, it could easily > > > use 213 or over, like it did when I first reported the problem, > > > and eventually not let me back into fproxy :s. How does that fit > > > into the 100 request limit? > > > > Fproxy stops accepting more connections after 100 are running. > > How does that explain the 213 I originally saw? And why wasn't I able > to access fproxy, without restarting my node? And why didn't this > happen to me before with earlier builds -- I've had my spider running > for months. > > > > > (Why isn't there a time limit, or an hop-limit again?) > > > > There is. > > ? > > > > > > > > Having said that it may eventually be possible to detect > > > > > > connection closed - in 0.5 there was a hack for it. > > > > > > > > > > I think tcp's CLOSE_WAIT means fproxy should have already > > > > > gotten a "close" signal, no? > > > > > > > > Surprisingly enough, we are not directly generating TCP packets > > > > here... > > > > > > Huh? I meant, (I'm guessing), didn't my wget already send a "FIN" > > > tcp message to fproxy at some point, which is what put those > > > connections into CLOSE-WAIT? (a la > > > http://www.tcpipguide.com/free/t_TCPConnectionTermination-2.htm ), > > > or am I missing something? > > > > As I said before, we are not writing TCP packets directly. We are > > using a socket API. It is therefore somewhat painful to get notified > > when the socket is closed, if we are not actually reading from it - > > which we won't be while handling a request.
I believe things have been fixed in 1404. (Many threads (~50) do linger for a while -- I'm not sure if this occurred before as well, but they do eventually close. With the past few builds they remained open forever!) _______________________________________________ Support mailing list Support@freenetproject.org http://news.gmane.org/gmane.network.freenet.support Unsubscribe at http://emu.freenetproject.org/cgi-bin/mailman/listinfo/support Or mailto:support-requ...@freenetproject.org?subject=unsubscribe