PreviousNextIndex
Good Technology

Differential Data

To reduce transmission time, Good Intranet Server supports differential-data transmission. If differential-data transmission is enabled, the server maintains a cache of the documents it sends to individual handhelds.

When a Good Intranet browser on the handheld sends an HTTP request for a document and the response comes back to Good Intranet Server, the server automatically checks its differential-data to see if the document is a newer version of a document previously sent to the handheld. If it is, the server compares the two versions and sends only the changes to the handheld.

A similar process happens when Good Intranet Server receives the updated version of a push message. Before sending it to the handheld, the server compares it to the previous version of the push message and sends only the updated portion of the message to the handheld.

When the Good Intranet handheld receives differential data from the server, it updates the document with new content, so both the server and the handheld have the latest versions. In general, sending differential data reduces transmission time.

The following table lists the properties for setting up differential-data transmission:

Property Name
Default
Description
diff.enable
true
If true, differential-data transmission is enabled.
diff.log.enable
false
If set to true, differential-data logging is enabled.
diff.cache.basedir
diff
The directory under which documents previously sent to handhelds are cached. Documents are cached in binary form.
diff.cache.maxsize
268435456
The maximum size, in bytes, that the cache can reach before the server starts to delete older documents to make space for newer documents. The default is equivalent to 256 megabytes. The server deletes documents until the cache is reduced to the size specified by the diff.cache.optsize property.
diff.cache.optsize
201326592
The "optimal" cache size. The default is equivalent to 192 megabytes. This value should be set large enough to allow for an adequate number of previously cached documents and still leave room for adding new documents up to the maximum cache size specified.

The following is an excerpt from a differential-data log:

2006-03-20 13:41:55 -0800 [Info] [] Diff: Initialize cache
2006-03-20 13:41:55 -0800 [Info] [] Diff: Location: C:\Program Files\Good Technology\
Good Intranet Server\diff
2006-03-20 13:41:55 -0800 [Info] [] Diff: Scanning
2006-03-20 13:41:55 -0800 [Info] [] Diff: Found 126 buckets, 36 files, 461059 bytes
2006-03-20 12:53:51 -0800 [Info] [] Diff: Client doesn't want diff
2006-03-20 12:54:02 -0800 [Info] [] Diff: Client doesn't want diff
2006-03-20 12:54:03 -0800 [Info] [] Diff: Client has version: 86e1be8c96094a5a52adc3b7f8f4b60f
2006-03-20 12:54:03 -0800 [Info] [] Diff: Server has same version
2006-03-20 12:54:03 -0800 [Info] [] Diff: FAILED: Content type mismatch
2006-03-20 12:54:06 -0800 [Info] [] Diff: Client has version: 8849c5640d439bc362cfdebb459ad9cf
2006-03-20 12:54:06 -0800 [Info] [] Diff: FAILED: Server version not found
2006-03-20 12:54:19 -0800 [Info] [] Diff: Client doesn't want diff
2006-03-20 14:19:26 -0800 [Info] [] Diff: Client has version: 62e5af5151492e6d07419c40018325c8
2006-03-20 14:19:26 -0800 [Info] [] Diff: Server has same version
2006-03-20 14:19:26 -0800 [Info] [] Diff: Store version:
6e5d07d5076 b9095 b b137747 e241006b
2006-03-20 14:19:26 -0800 [Info] [] Diff: Content now 5677 bytes (98%) smaller

Good Technology
www.good.com
Voice: 1 866-7-BE-GOOD
sales@good.com
PreviousNextIndex