•  
      CommentAuthortravisk
    • CommentTimeJul 5th 2006
     
    Ian Clarke posted on TechCrunch:

    July 5th, 2006 at 12:12 pm

    Travis, as you should know:

    1) I never contracted for Red Swoosh, we talked about it, but it never happened.

    2) Dijjer’s architecture borrows *nothing* from Red Swoosh’s architecture. Recall that I was building content delivery networks long before you and I met (remember Uprizer?), and certainly before I knew anything about your architecture. I respect NDAs.

    3) If Dijjer borrows anything from any P2P architecture, it is Freenet, and Freenet 0.7 actually borrows back from Dijjer.
    •  
      CommentAuthortravisk
    • CommentTimeJul 5th 2006
     
    Red Swoosh response:

    Ian, here's what I do remember from those days of yore, . . . you did a full review of our architecture and some of our code and you signed an IP assignment and confidentiality agreement for the work you did.

    Look Ian, there is a reason why people think that Dijjer is the same as Red Swoosh. . . it's because from a website owner's perspective it's *exactly* the same to implement. It's not a casual similarity. And it was not long after we did this review, the dijjer project gets underway. At the least you could say the optics don't look good.

    Given that, I hope you can at least understand why we might expect some level of attribution. I don't think it's a travesty (no pun intended) that you might have looked at others' work including ours and put it into your own.

    I think dijjer is a fine project, and there is a certain elegance to open-source projects -- we're actually thinking about doing the same with Red Swoosh following in your footsteps.

    Now, I apologize for calling you out in a public forum like I did, but as you can see people were erroneously coming to the conclusion that Red Swoosh was the one who had copied dijjer. Now I know that we both agree that Red Swoosh is a superior CDN technology, but instead of being embarassed to say you looked to others and even Red Swoosh for inspiration, be open to the fact that you may have learned something from other folks.

    We are open to this conversation, but would like to do so without burdening the TechCrunch webboard. What we will do is post all of our comments regarding this thread here: http://www.redswoosh.net/forum/?CategoryID=7. We invite you to post here as well, but if not please send me an email or other location to find your coments and I will post our response accordingly.

    Thanks,

    Travis
    • CommentAuthorianclarke
    • CommentTimeJul 5th 2006
     
    My response, posted to techcrunch:

    Travis,

    I’m happy to take this discussion elsewhere - but since this discussion was started (by you) on this forum, I think I should get the opportunity to respond on this forum too. We can take subsequent discussion elsewhere.

    If you recall, I did sign an NDA with you guys, and I reviewed your architecture as a possible prelude to doing some work for you, but I did not do any work for you, as evidenced by the fact that you never paid me anything (nor did I expect or ask for any payment - because I hadn’t done any work).

    Dijjer incorporates many ideas that existed previously in other P2P applications, its HTTP proxy borrows from Coral Cache, its decentralized nature is from Freenet, its NAT circumvention is similar to STUN etc etc. If I don’t attribute Red Swoosh, it is for the simple reason that Red Swoosh was not the source of any of the ideas implemented in Dijjer. If it was, I wouldn’t be afraid to say so, but it wasn’t. I wish I could say that Red Swoosh had been an inspiration for something in Dijjer, since that would presumably satisfy you and make this silly discussion go away, but it would be a lie. Red Swoosh and Dijjer are *very* different architectures, despite outward appearences.

    I agree that it was erronous for anyone to say that Red Swoosh had copied Dijjer, Red Swoosh certainly pre-dates Dijjer, but the remedy for this is not for you to make the equally erronous claim that Dijjer had copied Red Swoosh.

    It is also true that Red Swoosh has a much more mature technology than Dijjer, which I really haven’t done much work on in quite a while, and it would not surprise me to know that Red Swoosh’s stuff works much more effectively as a result. I think Dijjer is a great starting point for a great piece of software, but it needs work before it could offer anything like Red Swoosh. One of its advantages is that it is open source.

    I am not at all embarassed to say that I looked to others for inspiration, we all stand on the shoulders of giants. I’m just saying that Red Swoosh wasn’t one of them. Since Dijjer is open source you are welcome to poke around and find anything in there that was unique to Red Swoosh at the time Dijjer was implemented. To the best of my knowledge and recollection, you won’t find anything.

    I will continue the discussion on your forum if there is anything more to discuss.
    •  
      CommentAuthortravisk
    • CommentTimeJul 5th 2006 edited
     
    Ian, maybe we should have started here

    We'll let the readers decide.

    Swooshed link (circa 2001):
    http://edn.redswoosh.net/http://www.mysite.com/bigvideo.mpg
    ~~~~~~~~~~~~~~~~~********************************************

    Dijjer link (circa 2004):
    http://dijjer.org/get/http://www.mysite.com/bigvideo.mpg
    ~~~~~~~~~~~~~~******************************************

    Coral link format (circa 2004):
    http://www.mysite.com.nyud.net:8080/bigvideo.mpg
    ***************************~~~~~~~@@****************

    *'s underline original url
    ~'s underline new domain
    @'s underline port# client listens on
    • CommentAuthorianclarke
    • CommentTimeJul 6th 2006
     
    So Red Swoosh's great innovation here is to run your web server on port 80 rather than port 8080? What a giant leap forward for mankind that was... I actually have no idea why Coral Cache decided to run their HTTP proxy on a non-standard HTTP port, but the fact that neither Red Swoosh nor I made this same peculiar decision does not prove that I copied you, we both simply opted for the natural choice, and Coral Cache, for whatever reason, did not.

    The fact that one person makes an obvious choice, and someone else later makes the same obvious choice, does not imply that the second person copied the first.

    I hope you can do better than that.
    • CommentAuthormatt
    • CommentTimeJul 7th 2006
     
    Travis you first link points to a 404 so Ian Wins :P.

    404 Error -- File Not Found
    The page you are looking for (http://mysite.com/bigvideo.mpg) is not here.
    •  
      CommentAuthordbarrett
    • CommentTimeJul 7th 2006 edited
     
    Heh, I guess that settles it.

    But seriously, I think the issue relates to the techniques of:
    1) Creating a link format where one URL is passed in as a parameter to another URL.
    2) Redirecting said link to a localhost proxy for seamless web integration of a P2P network.

    As to (1), this has been done for a while in the CDN space, with Akamai probably being the first (in '98) followed by a host of others. But combining that with (2) is certainly an innovation, and I think Swoosh was clearly first in this area. From what I can tell, the timeline is something like:

    2001, Jan – Red Swoosh founded
    2001, Sep – Red Swoosh launches first customer
    2002, Nov (?) - Ian does full Red Swoosh architectural review
    2004, Jan – Dijjer.org registered

    So Ian certainly knew Swoosh was alive and kicking for years before Dijjer launched. As to whether his internal knowledge of the Swoosh network had any bearing upon him coincidentally recreating a near-identical service a year later, we can only take Ian at his word that it didn't. But it would have been no shame if it did.

    PS: Dijjer's decentralized indexing strategy is, of course, totally different than Swoosh's central index. But the notion of redirecting from a global server to a localhost proxy is nearly identical.
    • CommentAuthorianclarke
    • CommentTimeJul 7th 2006
     
    dbarret, thanks for your input. the redirect from a central server to a local http server was one of the last things I did with Dijjer, it seemed the obvious solution to the challenging problem of how to have a reasonably clean user experience both for users that did, and those that did not have the client installed. We combined this with some Javascript code that can detect whether or not Dijjer is running.

    It is entirely possible that Red Swoosh was one of the first to use this technique, but it wasn't something I noticed during the architectural review because our focus during this review was on what happened after the client had been installed, not before.

    While the bar for what is considered an innovation has been significantly lowered in these days of patenting everything under the sun, I consider this redirect an obvious solution to the problem, that any competent software engineer would come up with under the same circumstances (Uprizer's EDN technology may have done this, but I can't remember whether or not it did).
    •  
      CommentAuthordbarrett
    • CommentTimeJul 9th 2006
     
    As for Uprizer, I've read through what I think is the latest user manual (from the 2.0 release) and I don't that technique being used, but I might have missed it.

    Regarding how the the server-to-localhost redirect made its way into Dijjer, thanks for the background. To clarify, we use the technique both before and after installation, but the Swoosh architecture is rather large so it's understandable that you might have missed that in your review. I agree, it's a great technique, and perhaps your reinvention of it is a sign that it's hard to improve upon.

    -david
    • CommentAuthormfreed
    • CommentTimeJul 20th 2006
     
    Just for disclosure:

    CoralCDN uses port 8080 only because of a limitation of our current deployment platform, PlanetLab (www.planet-lab.org), a network of ~300 servers at university and industry sites worldwide. Unfortunately, port 80 was already taken on these machines by an administrative interface to search each machine's traffic database for auditing, e.g.,

    http://planet2.scs.stanford.edu/

    While it would be nice to change the one line in Coral's web proxy configuration file to port 80, that's not currently a possibility on PlanetLab.

    --mike
    •  
      CommentAuthordbarrett
    • CommentTimeJul 20th 2006
     
    Wow, that's very odd that PlanetLab would reserve port 80 for itself; I'd have thought they'd explicitly move all well-known services (HTTP, SSH, etc) off to random ports in anticipation of testing and development. Thanks for the background.
    • CommentAuthorpassoir
    • CommentTimeSep 20th 2006
     
    I must admit that I have known Dijjer for quite some time and just get to know Red Swoosh today.
    My first impression is Red Swoosh is just like Dijjer.
    After reading this thread, I understand the history between these two.
    It is true that Red Swoosh started earlier than Dijjer in this area.
    But I don't think accusing Dijjer of stealing from Red Swoosh is fair.
    Technology wise, it is p2p and bittorrent, which are both popular and available
    in open source area. Web seeding is nothing new.
    Adding javascript and URL interface for a seed and at client side is not an invention at all.
    Plus, Dijjer is open source and Red Swoosh is not.
    For that, Dijjer has my full respect.
    •  
      CommentAuthordbarrett
    • CommentTimeSep 20th 2006
     
    Hi Passoir, thanks for learning about Red Swoosh. I agree, Dijjer was a great project, and is entirely deserving of respect -- this was never in dispute. We've merely been discussing the history of using a localhost redirect from a global CDN server, and so far as any of us can tell, Swoosh was the leader in this area by a wide margin.
Add your comments
    Username Password
  • Format comments as (Help)