Applique la méthode de Descartes : découper le problème complexe en plusieurs problèmes plus simples.
Le sniffer doit analyser le trafic, puis l'afficher. Donc tu vas écrire des classes qui décrivent une trame ; par ailleurs, tu vas écrire des classes pour écouter un port donné, et transformer ce qu'il écoute en instances de tes classes Trame ; enfin, tu auras besoin de classes pour afficher une collection de trames à l'écran.
Voilà : tu as un plan d'analyse de ton problème en 3 grandes phases.