What does allowhighfees in sendrawtransaction actually does?
The fee is whatever you define in the raw transaction, based on the difference between inputs and outputs.  sendrawtransaction never changes it.  However, as a safety measure, it will normally reject your transaction if the fee exceeds a certain "absurd" threshold, so that you don't accidentally lose a lot of coins by miscalculating your raw transaction.  If you set the allowhighfees parameter, this check is disabled, and you can send a transaction with fees as high as you wish.

The threshold value can be set with the maxtxfee command line / config file option.