The. best. job. ever. – build Skype 2.0 in a year.

August 2, 2009 at 3:26 pm 7 comments

The perfect project has surfaced. I almost certainly won’t get to do it,
but a man can dream….

It has everything – VoIP, hard deadlines, massive users, adequate resources, well defined requirements, most (but not all) of the necessary components already exist.

Rebuild Skype in a year.

The original founders of Skype have held onto some of the core technology and Skype may not be able to continue using it.

So Skype may need to re-engineer their technology in a hurry.

What a brilliant opportunity for them, and for the engineers who get to work on it!
It’s like Apple moving to OSX or Microsoft moving to the Windows NT kernel.
A chance to fix all the weaknesses and create a product that better fits the niche they have carved themselves.

So what do they need to keep (in no particular order):

  • 3 media : voice,  text, video
  • peer to peer (One look at YouTube’s bandwidth costs tell you why)
  • encryption
  • simple naming/addressing
  • zero cost to new users
  • firewall and NAT traversal
  • wideband audio
  • the userbase

What do they need to loose:

  • secret protocol – there are many businesses that can’t permit Skype
  • because they can’t manage or record the protocol.
  • distributed storage – currently your data is stored ‘somewhere’ – (for an EU company, that isn’t good enough, legally we have to know if data is being exported outside the EU and get permission from the person concerned)
  • bloat – the skype client is big and heavy – netbooks and smartphones need something lighter

What they should add:

  • defined data storage zones EU – Americas – APAC perhaps ?
  • defined (and ideally standardized) protocols
  • 3rd party access to the platform.
  • more browser friendliness – you should be able to embed skype in a web page.
  • support for stereo
  • support for ‘local’ proxies – allowing enterprises to control their internal network traffic.

According to some, they have a year in which to do this.

It’s difficult but do-able. The trick is to find the right protocol(s) and then build
an architecture around them.

I’m biassed by my experience at, but I’d say IAX and DUNDI would go a _very_ long way to solving the problem.

IAX is an encrypted VOIP protocol that supports very good NAT and firewall traversal, it’s documented (if not a standard), it supports voice, video and text
and peer-to-peer. It’s lightweight, and easy to implement.

DUNDI is a companion protocol (also from Diguim inc) which provides for user
discovery in a mesh of VoIP agents.

As far as the rest of the architecture goes, I think a more ‘conventional’ setup
of a raft of LAMP clustered servers in the 3 regions could support all the data storage, web service and persistence requirements.

They could use the Skype for Asterisk technology to gateway between the old
and new versions to provide a transition arrangement.

Time to get talking with Digium and Skype I think 🙂


Entry filed under: VoIP. Tags: , , , .

The end of the phone number is in sight The HD bandwagon

7 Comments Add your own

  • […] Visit link: The. best. job. ever. – build Skype 2.0 in a year. […]

  • 2. Ruben  |  August 3, 2009 at 10:02 am

    I believe that you are quite right in your assessment of the situation – and even if I am a great fan of IAX I seriously doubt that this will be a considered. The reason for this is very simple: SIP (with RTP) has become a industry standard, and with the SSL based OpenVPN protocol, it is possible to avoid a lot of firewall issues.

    On a end user point, it is perhaps more important for Skype to fix their churn rate (reported by some to be between 70 and 95 percent). Some believe that the churn rate will be dramatically reduced when SIP for Skype and Skype for Asterisk is being released – but if we take a look at this stance it does really not make much sense.


    • 3. babyis60  |  August 3, 2009 at 12:07 pm

      I think DUNDI is probably more interesting to Skype than IAX,
      it solves a big chunk of their JoltID problem in an interesting way.

      • 4. Ruben Olsen  |  August 3, 2009 at 6:21 pm

        I am no DUNi™ expert – or will even pretend to say anything sensible about the solution, but as far as I have understood DUNDi™, it is a distributed “locator” service.

        In the Skype model (current) there is, as noted by John Todd, a need for a so called “super node” – and that this may also be needed in a model where DUNDi™ is the designated locator service.

        What is unclear at the current point in time with regards to the Joltid license, is if it the “peer” part in the P2P also include the locator service – or only the data transfer part.

        If we, just for the sake of argument, believe that Skype both needs to replace the locator service and the data transfer service – it could be a quick fix for them to choose IAX2 as the voice transfer protocol. However, IAX2 is not really a P2P protocol per se – so this component is still missing from the equation.

        It would of course be pretty cool for Digium if Skype did in fact license some of their technology. Unfortunately Skype have their heads long into the proprietary way of doing things – just take some inventory on how long they have used to get out of beta on Skype for Asterisk and SIP for Skype.

        It will be pretty interesting to see what route they are going to choose.

        One really interesting thing I will keep a close eye on, is how they are going to migrate all their existing users into a new client version with the “new and improved” protocols in place. There is a lot of old clients out there, not only software clients – but also dedicated hardware clients.

        People hate to upgrade, and will not be amused if their old hardware suddenly does not work any more.


  • 5. Michael Graves  |  August 3, 2009 at 3:03 pm

    So then, does Skype simply buy Digium in order to get this done?

    • 6. babyis60  |  August 3, 2009 at 3:12 pm

      Might be worth it if Digium have defensible IP in DUNDI

  • 7. John Todd  |  August 3, 2009 at 3:44 pm

    I’ll leave well enough alone on most of the speculative questions – I have no idea about any of it, and I’d prefer to stay that way.

    As for IAX2, it’s an RFC (5456) but DUNDi has not, to my knowledge, had any IETF work done on it even though it was submitted as a draft in 2004. There’s more information and a general overview here including the draft:

    I’d be interested in hearing thoughts from anyone on how DUNDi might scale with such large numbers of endpoints, each being a unique item in the mesh. That wasn’t quite the goal of DUNDi – it was designed to announce aggregate addresses, not necessarily single items. Notably, the topology would still need to have some sort of “supernode” concept; a full mesh obviously is impossible at scale, and significant work would have to be done on the protocol to suit the specific and somewhat unusual needs of a network of nodes like Skype. Development of automatic discovery and re-assignment to supernodes would have to be created as a part of the protocol, or added as an additional layer.

    Perhaps possible, but requires a lot more thought and engineering. Perhaps more than would be worth it. You’d have to ask the folks at Skype, assuming that this whole storm is more than just a negotiating tactic.

    Asterisk Community Guy, Digium Inc.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed

Follow me on Twitter

%d bloggers like this: