Source: http://www.irisa.fr/prive/bcousin/Cours/03-UDP.fm.pdf