I still think the answer is that nostr works as a public handshake layer, you can post on it but its like making a layer 1 transaction. Layer 2 would be like simplex for DMs, keet.io for streams/nests etc. I (without true experience in the topic) feel like I could post a embed from a keet server to nostr, and clients could go straight to the keet server for the meat of the data, rather than relying solely on relays to host everything.