Computer networks are growing ever more important in our daily lives, as witnessed, for example, by the enormous growth of the Internet and its applications. Networks (wired or wireless) connect not only the now established players in the networked arena, such as PC's, workstations, laptops, routers, firewalls and servers, but also increasingly less conventional devices such as cars, digital televisions, kitchen appliances, office equipment and mobile phones. This trend, together with the fact that these devices have growing processing capabilities and memory capacities, leads to a large increase in the number of available distributed platforms, where all these devices are integrated in interesting applications such as electronic commerce, electronic banking, virtual enterprises, remote diagnosis of cars, etc. Protocol stacks, being the software systems that drive the network, are at the heart of these developments. Given the diversity of the networked devices on the one hand, and of ..