Design of a discrete event simulator of a network having hosts, routers, network interfaces, network links, queues and applications generating packets