Read the CMC documentation. It outlines the process of corrections.
But in general the server compares each savemove against it’s own move for the same action/inputs. If it differs by a set margin it’ll send a correction. Otherwise it’ll send an ACK for the move.
The correction is applied in one of two ways. Small offsets will use interpolation of many frames to smooth it out. Large offsets use teleport.
You need a beefier host machine. Ensuring the server has enough resources to begin with is solid first step.