The MIT version supported several internetworking layer protocols:
which could be included in any combination. A number of physical networks were supported, including:
- MIT Experimental 1Mbit/second ring
- Experimental Ethernet
- Proteon 10 Mbit/second ring
- Asynchronous serial line
again, in essentially any configuration. The Address Resolution Protocol was implemented for use on the Ethernet.
It ran under the MOS operating system, and was written in C (hence the name - it was likely the first packet switch of the Internet project written in C; the 'Gateway' is because it predates the adoption of the term 'router'). The code used a set of macros for type definitions which allowed it to later be easily made portable.
The C Gateway originally ran on QBUS PDP-11's; initially the LSI-11/2. It was later enhanced to use the KDF11-A CPU, and in particular use the PDP-11 Memory Management available on that machine to support more packet buffers, and leave all the low memory available for use by the C Gateway's code and data. It was eventually moved to run on the Intel 80286; the Proteon product ran on the Motorola MC68000, and later the AMD 29000.