“Connection interrupted” technically means that the client is more than 64 (CMD_BACKUP) commands (i.e. usercmd_ts) behind the server, so the onset of high-framerate weirdness depends on your latency to the server. Since the engine generates a client command internally for every frame rendered (even though it doesn’t actually send one every frame.)
For example, if you have 2000ms latency on the dot and you’re getting over 32fps, you’ll end up over 64 commands behind and the client will display “connection interrupted.” Likewise, if you have a 150ms ping (plus 50ms for the worst case inter-snapshot delay = 200ms), the game will stop working properly when you exceed 320fps. When you’re on a network with lots of jitter (e.g. the intarweb), it’s quite easy for things to bounce around enough that you’ll see “connection interrupted” flicker quite a bit at really high framerates even if your ping isn’t all that high.
My personal experience is that I can’t much exceed 200-250fps in online play, because my ping tends to range from 100-ish ms to 250-ish ms, depending on the server. (</3 interleaved DSL, and living in the middle of nowhere.)
Disclaimer: Much of this is from memory from the last time I looked at this problem, which was a good while ago. It’s entirely possible that this isn’t 100% correct (e.g. there may be additional delays, or other factors that trigger the problem at lower pings), but I am almost 100% certain that the more-than-CMD_BACKUP-commands-behind bit is accurate.