What Are the Main Differences between the Original GetWork Protocol and the Stratum Protocol?
GetWork was the original Bitcoin mining protocol, which was inefficient because it required the pool to send a new, large block header to the miner for every single hash attempt. Stratum is a much more efficient, low-overhead protocol.
It sends a single block template and allows miners to iterate on the nonce and timestamp, only requiring a new template when a new block is found. Stratum also supports variable difficulty (vardiff).