There are four major groups of ancient Greek dialects:
- Ionic, of which Attic is a subbranch
- North-Western, of which Doric and Achaean are subbranches
- Aeolic
- Arcado-Cypriot
I’ve ranked them in impressionistic order of archaicness.
The easiest explanation for the spread of the North-Western group is as a wave of settlement, that you might as well associate with Dorian invasions. You can similarly make sense of Ionic as a different wave of settlement. And you can make sense of Aeolic as what was left over in between the two waves of settlement; bear in mind that anything Ionic north of Lesbos resulted from later colonial activity.
Now, notice where Arcado-Cypriot is spoken. Some mountains in the middle of the Peloponnese, and Cyprus, which is very very far away.
The default assumption here is that the Dorian invasion pushed the previous Greek speakers of the Peloponnese up into the mountains. And that Cyprus had been settled by Greek speakers speaking that dialect, before the Dorians cut them off from the sea. In other words: that Arcado-Cypriot was a continuation of the original Mycenaean version of Greek. And there are bits of Arcado-Cypriot and Aeolic embedded in the mishmash language of Homer, although it is basically an archaic Ionic.