On one hand, you have tcp, which already allows you to multiplex multiple streams, every bit of software understands it, and your back office web application servers fully support it. Yes, it has limitations (slow start applying to individual streams instead of all the streams between two computers seems to be the primary one), but instead of trying to fix it (which admittedly would take a lot of work and would be a slow process), you take a single tcp stream and implement multiplexing all over again, now you have to work support into all your applications from top to bottom. Not surprisingly, this also takes a lot of work and is slow process.