Creo que para tener un camino más o menos productivo deberías empezar por añadir un IC separado de spi a ethernet, como el ENC28J60 y mejorar desde ahí. Dicho chip abstraerá Capas OSI 1 y 2.
Una vez que tengas el hardware creo que ciertamente la programación será la parte más desafiante, ya que tendrás que entender los detalles de la IP, TCP y cualquier protocolo que vayas a utilizar.
Probablemente prefieras aprender con el ejemplo antes de profundizar en todos los detalles teóricos, así que creo que echar un vistazo a lo que se hace en sitios como tuxgraphics ( artículo sobre el servidor web avr, con código - de código abierto), incrustado en el mercado ( compruebe su manual de usuario para los esquemas ). Compruebe también este entrada del blog.
Seguramente necesitarás toda la RAM y EEPROM que puedas, puedes hacerlo con un dispositivo de la familia de los 8 bits.
Tampoco olvides que puedes empezar con algo bastante sencillo (sin servidor web, sólo una conexión tipo telnet, o raw (simplemente transfiriendo tu actual interfaz serie a una basada en sockets), y utilizar software como masilla para conectarse a él).
Por último, en caso de que necesites una solución rápida, también puedes utilizar un convertidor para tu puerto de comunicación serie/ttl. Hay versiones para consumidores (digi one SP, moxa Nport5150, etc) y otras para integrar en tu proyecto (desde moxa , hw-grupo y otros). Estos abstraen completamente las capas osi 1, 2, 3, 4. Bueno, lo abstraen todo.
Espero que esto te ayude a ponerte en marcha.