Aplicação UDP com sequenciamento de pacotes e retransmissão

Olá pessoal, vou directo ao assunto. É assim: tenho que fazer uma aplicação cliente/servidor usando UDP em que:

  • servidor envia pacotes sequenciados ao cliente
  • cliente recebe pacotes e verifica se os recebeu todos e se estão em ordem, caso não, deve pedir ao servidor para reenviar os pacotes que faltam.

Sinceramente eu já parti o crânio com isto mas não tou a ver maneira de aplicar, já vi diversos exemplos pra tentar tirar ideias inclusive esta aqui mas eu depois perdi-me a tentar entender o código(com todo o respeito mas não percebi patavina do código :???: ou se calhar é porque já faz 30 hrs que não durmo). De qualquer forma, peço que me ajudem, qualquer esclarecimento eu dou.
Nota: isto faz parte de um trabalho que tenho que fazer e é muito mais extenso que isto, o resto está pronto só me falta esta parte e já estou bem atrasada na entrega. Se quiserem ver o enunciado avisem que eu mando o link.

Thanx

D.