I went to a great presentation by Paul Fremantle about building an ESB using Synapse. Paul is a co-founder of and VP at WSO2 and very sharp. He did a great job distilling down the key pieces of Synapse and what it looks like to define service endpoints and do transformations. Synapse deals in various messaging formats like a good ESB, but made the interesting decision to internally treat everything as a SOAP message. If you make a REST call into the ESB, it internally gets wrapped as a SOAP message so you can add headers, reply tos, etc. Probably makes for a more sane server-side model.
But an audience member at the end asked what I consider to be a very prescient question about overlap with capabilities that are continually being added to routers - things like content based routing and filtering. Depending on who you talk to, BPM is supposed to be handled outside the ESB and the ESB should focus on lower level services like routing, filtering, and transformation. I can't help but think that ESBs are hot for that right now mainly because it's much easier to innovate and collaborate in the software domain. It seems to me that ESBs are almost commodity out of the gates, and these needs will ultimately be met in the firmware/hardware domain.
Could smarter routers just end up being the deployment node for more elaborate ESB-like routing and filtering logic? Will ESBs (if they are limited to that low level) survive much longer when the hardware can ultimately do it faster?