The octave buttons are used to shift the keyboard up or down in one octave increments. This extends the range of the keyboard in either direction, which lets you play notes that lie outside the number of keys available.
Transpose buttons are used for moving a collection of notes (pitches or pitch classes) up or down in pitch by a constant interval, usually in semitone increments.
The button is used to select independent banks of continuous controllers. Effectively, this allows you to control more independent parameters with the knobs, faders and buttons. The bank selector button is used to switch among the available banks.
The more buttons the device has, the more complex the input can be.
The transport controls are used to control playback, set the position of the playhead, start recording, activate the cycle region, or to move to the project start or end.
Faders can be either channel volume faders, pitch sliders, crossfaders or even EQs.