Street Fighter IV does that, only advances when both clients have advanced. There's never bullshit surprises. It does suck on a bad connection, but that's just how it has to work. Street Fighter V has rollbacks and it's absolutely terrible.
Given delay based netcode, or rollback netcode, I'll always pick rollback. Played alot of SF4 purely online and in a game with plenty of 1-2 frame links, delay based netcode really advantages the player mashing reversal within your string.