мой вопрос просто касается разницы в производительности между сокетом в C и в Python. Так как моя сборка Python является CPython, я предполагаю, что это подобно, но мне любопытно, есть ли у кого-то на самом деле "реальные" сравнительные тесты или по крайней мере мнение, это - базирующееся доказательство.
Мои логики как таковы:
Я уверен, что кто-то захочет знать или для контекста или для любопытства. Я планирую создать своего рода прокси для меня (не для интернет-просмотра, анонимности, и т.д.) и свяжу приложение, которое я хочу использовать с ним для определенного порта. Затем все пакеты на упомянутом порте будут поставлены в очередь, заголовок адреса, измененный, и затем отправили, и т.д., и т.д.
Заранее спасибо.
В общем, сокеты в Python работают нормально. Например, эталонная реализация сервера отслеживания BitTorrent написана на Python.
При выполнении сетевых операций скорость сети обычно является ограничивающим фактором. То есть любая возможная крошечная разница в скорости между кодом сокета C и Python полностью затмевается тем фактом, что вы выполняете сеть какого-то рода.
Однако ваше описание того, что вы хотите сделать, указывает, что вы хотите проверить и изменить отдельные IP пакеты . Это выходит за рамки возможностей стандартных сетевых библиотек Python и, в любом случае, очень зависит от ОС. Вместо того, чтобы спрашивать "что быстрее?" вам нужно сначала спросить «возможно ли это?»
Я бы подумал, что C будет быстрее, но python будет намного проще в управлении и использовании.
разница будет настолько мала, что вам это не понадобится, если вы не попытаетесь для отправки большого количества данных (что-то глупое, например, 1 миллион гигабайт в секунду, смех)
Джо