Olin TCPy:A Python 3 implementation of the Internet by Olin College and Needham High School students

Alex Morrow

Audience level:


Olin TCPy Students from Olin College of Engineering and Needham High School will demonstrate and explain a working implementation of the Internet they have developed on Raspberry pi computers with Python 3. The implementation interoperates with other stacks but is also standalone, with its own physical and data link layers. RFCs implemented include SMTP, SSL, TCP, TFTP, UDP and IPv4.


All layers of TCPy are implemented in Python 3 with the exception of minor modifications to otherwise standard Python 3 Linux library modules to unify event models. Each protocol was implemented by students working from either the IETF RFC library or, in the case of the physical and data link layers, from the Raspberry Pi datasheets and websites. Some of the students focused on common problems such as translation of wire formats to Python 3 classes. The goal of the effort is to demystify the implementation of a computer network. TCPy was funded by a generous grant to Olin College from Juniper Networks.