Прежде всего: внимательно прочитайте спецификацию протокола внимательно
Существует несколько реализаций Python Gnutella, я смог найти по крайней мере следующее с помощью быстрого поиска в Google:
Кряк , gnuppy . Проверьте их исходный код для справки.
Модули python, которые могут оказаться полезными для декодирования пакетов протокола и синтаксического анализа сообщений: struct и re . Вам также может понадобиться реализовать какой-то конечный автомат для отслеживания различных обменов.