Two general types of data service are currently provided:
Streaming is a guaranteed delivery style of service. A terminal requests a context of X bandwidth (currently 8, 16, 32, 64, 128, or 256 kbit/s) and, if the current spot beam has enough resources available, it is allocated a guaranteed chunk of the available bandwidth. So if it asks for an 8k streaming context, the terminal will at all times be able to send data at 8 kbit/s.
Streaming contexts are billed by time.
Background is a best effort style of service. Each spot beam provides a certain amount of usable bandwidth. The bandwidth which is not in use by Streaming contexts is used for Background contexts. This means that the actual amount of bandwidth you receive with a background context will vary over time. The theoretical maximum bandwidth available is ~400 kbit/s.
Background contexts are billed by volume.