"Ko rules" prevent games of Go from degenerating into "non-advancing" situations. Without any ko rules, a single ko is sufficient to lock the game into an infinite loop.

The "simple ko" rule above (artfuldodger's writeup) is sufficient to prevent a game from looping due to a single ko, but insufficient for the general case.

Suppose we have 3 kos:

.............
..xo.........
.xo3o....xo..
..xo....x2xo.
.........xo..
..ox.........
.ox1x........
..ox.........
(The numbered places are blank places, marked for use in the sequel)
Call the two kos where white (o) may play (1) and (2), and call the ko where black (x) may play (3). Assuming it's white's turn to move, the following may ensue:
  1. White plays in (2). Now black could play in (2) or (3).
  2. Forbidden by the "simple ko" rule immediately to respond in (2), black plays (3). Now white could play in (3) or (1).
  3. Forbidden by "simple ko" immediately to play (3), white plays (1)
  4. Forbidden by "simple ko" immediately to play (1), black plays (2)
And the situation repeats: "simple ko" can only prevent one move on the entire board (retaking the last ko), so at every ply, the player has two open kos and can play the ko not blocked by the rule.

A cycle ensues, regardless. And for more kos on the board, the sequence can become even more complicated!

There are several solutions to the problem. Japanese go relies on a referee (who decides based on precedent) to rule for each case; in practice the correct solution is almost always "obvious", but there are some known holes.

Western go players (and, I think, Chinese players of Wei Qi) usually use a more sophisticated ko rule. Call a "position" the state of the goban (board) along with the side whose turn it is to move (the number of stones taken is not part of the position!). Then it is forbidden to make a move that causes a position to repeat. Simple ko is a direct result. But any situation where moves are made with no "progress", such as the sequence above, is (eventually) forbidden.

This is not an empty obsession with unreasonable positions; multiple kos arise in many real games!