Companion to my Practical Network Programming course at boolan.com