Ted Goddard wrote: > Without multiplexing, I expect we will see each Ajax component > in each page opening its own socket, and multiple pages open > to the same server is very common (users often forget that > they already have a window open in their browser) so a hundred > connections to a single server would not be unexpected. Yes, this is exactly what I expect to happen. (I'll add that deliberately opening multiple tabs to the same server is quite common too. Like, when you want to read 10 different articles from the same news/blog site, many people open 10 tabs by right-clicking from the headline page, let the pages load in the background, and work their way through them) Sharing WebSockets between components on different pages is difficult for the simple reason that browser tabs are quite independent. (But I haven't seen anyone advocate that they should use separate HTTP connections...) On a single page, Ajax component authors _could_ cooperate so their components share connections, but how likely is that? Even with good intentions, it's technically *quite hard* to share connections between independent components on a single page. That's because one component sending a large message can block progress of all other components on the page, if they share. And one component taking a long time to accept messages can block all the others even if it's a short message. But if they all have separate connections, they do not block each other, so there's a strong motivation to do that. It is, after all, easier to program as well. That is why I advocate a slightly more advanced multiplexing, akin to interleaved HTTP chunks, where no component can block the progress of any others, and chunks can be interleaved in a fair, orderly and network-efficient manner. I'm pretty sure that would improve the browser experience unequivocally for almost everyone. -- Jamie
Note Well: Messages sent to this mailing list are the opinions of the senders and do not imply endorsement by the IETF.