I submit to your court the data transfer model from the web service to the client - the data in the banner. The
Compression using Canvas and PNG article published on ajaxian.com back in 2008 pushed me to this idea.
Essence: the client requests any data from the web service, the answer comes not to json / xml, but png advertising banner, part of which is a block with data. The web service supplies a library for working with its data banners (request, display, unpacking).
Banner example:

In the example, I specifically made the data pixels more contrast, but in the real example they will be invisible to the client.
Each pixel can store up to 3 bytes of information (RGB - data carriers, A - always 0). In my example, 720x21x3 = 45360.
The volume of the data block can be adjusted dynamically. More and nothing to add.
')

An alternative type of income.

No banner - no data. The client is obliged to load the banner, hi adBlock.

Only client-side

Only modern browsers with Canvas.getImageData support

Perhaps a long time unpacking data (client)

Perhaps a long time packing data (server)

The service client can use the service data bypassing the banner display.
Unfortunately, I am far from online advertising, I would like to hear your opinion on the applicability of this method of data delivery. Are there any such solutions?