About updates downloaded from Symantec Liveupdate Server (Internet):
This is always a full definition (except 12.1.6, where the client can be let to download smaller updates from Symantec Liveupdate Server).
About updates downloaded from SEPM:
I hope that you are already aware that the SEPM can be set to keep older definition revisions. The purpose of keeping the older revisions is to compare the latest revision with the older revision to create a differential update, on request by a SEP client.
On every heartbeat (connection) between the SEP client and SEPM, the client receives the details of the latest definition available with SEPM. If the client sees that there is a newer revision available in SEPM, then the client sends a request to SEPM asking for a link from where it can download the update (along with that the details of the revision that is currently installed in the client is also sent to the SEPM). The SEPM will check if the revision that is currently installed in the client is part of its definition store. If YES, the SEPM compares it with the latest revision to create a differential update and then creates a link (depending on whether the client is set to download updates from SEPM or GUP) and sends the link to the client. If NO, the SEPM won't be able to create a differential update as the current revision on the client si not available in SEP for comparission with the latest revision to create differential update. Hence the SEPM sends a link of the FULL.zip to the client.
About updates downloaded from GUP:
The GUP is just a medium between the SEP clients and SEPM. GUP doesn't have the capablity to create or merge differential updates. The Advantage of using GUP that it helps in avoiding multiple downloads of the same update file.