TL;DR synopsis in a protocol analogy:
It’s hard to develop an app on TCP/IP or UDP as changing the protocol for my app is next to impossible.
What we need is diversity, and a layered approach gives us this. That’s why I’ve created SMTP/Telnet/DNS/FTP which runs on top. Now we can build diverse apps, free from the tyranny of TCP/IP and UDP, anyone of which is probably doomed because we wont be able to change those protocols easily.