Хорошо, пожалуйста, не убивайте меня, чтобы спросить об этом. В настоящее время я разрабатываю 2D-многопользовательский многопользовательский шутер. Да, это круто. У меня большая часть игры написана с несколькими ошибками и неоптимизирована, но я застрял, когда дело доходит до сетей. Я использовал PyGame, поэтому я попытался использовать кучу библиотек Python для работы в сети. Вы называете это, я думаю, что я посмотрел на все основные. Вот PyEnet - думал, что он имеет внутренний контроль перегрузки, ugh MasterMind - не асинхронный PodSixNet - это даже UDP? Legume - в настоящее время застрял с сервером, дающим мне исключение, ожидая ответа в списке рассылки. Выглядит совершенно великолепно иначе. Не могу вспомнить все остальные, которые я пробовал. В любом случае, мне нужен UDP (верьте мне, мне нужен UDP) и еще один надежный протокол для чата, masterserver, информации о новом игроке и всех пакетов, которые я не могу себе позволить потерять. Я где-то читал, что TCP и UDP, используемые одновременно, не были хорошей идеей, поэтому я попытался найти надежные реализации UDP в Python, поэтому все мои блуждания по этим неясным библиотекам. По пути я научился самостоятельно обманывать сокеты, поэтому у меня есть два четких пути. 1) Когда люди спрашивали, были ли UDP и TCP вместе плохой идеей, возможно, они имели в виду, что они будут использовать один и тот же порт для обоих протоколов. Насколько это плохо, если я использую два разных порта? Часть TCP будет простаивать большую часть времени, в любом случае, возможно, 0-20 пакетов за 10 секунд для занятого сервера. 2) Напишите свой собственный надежный UDP. Фу, это то, от чего я прятался. Если все не удастся, я думаю, мне нужно это сделать.Python сети с UDP для экшн-игр
ответ
Короче говоря, да. Я использую Python/Scapy для тестирования сетевого оборудования все время. Я предполагаю, что вы будете использовать Threads для двух отдельных каналов связи. Если ваш процессор может справиться с этим, нет причин, по которым вы не можете этого сделать, и, конечно, количество трафика, генерируемого сетевыми играми, обычно недостаточно для значительного использования современных процессоров.
Насколько я люблю Скапи, я не понимаю, почему вы упоминаете в качестве ответа. Если у вас есть что поделиться, рассмотрите комментарий вместо этого. Это мне совсем не помогает. – dc5553
Я дал отличный ответ на его вопрос. Scapy можно использовать для этой цели. Не всегда приходится гадать с сокетами, когда производительность не является проблемой. Если производительность является проблемой, следует использовать c вместо Python. С другой стороны, вы, сэр, не дали веских оснований, почему вы не верите, что мой ответ недостаточно хорош. Пожалуйста, прекратите бросать вниз голоса без четкого понимания того, что подразумевает ответ. – wookie919
Я понимаю жуткий, и я понимаю, что сокеты видят мои ответы, если вы сомневаетесь во мне. Я не использую downvotes либерально, это просто неправильная библиотека для использования в этом случае. – dc5553
- 1. Упаковка сообщений для UDP сети
- 2. Python UDP Связь по неопознанной сети
- 3. UDP сети с несколькими сетевыми
- 4. Ошибка привязки в сети UDP
- 5. UDP-пакеты с python
- 6. Python asyncore с UDP
- 7. Подписка на многоадресную рассылку UDP с Python
- 8. принудительное распространение UDP по сети (отключить loopback)
- 9. Отправка пакета UDP всем в локальной сети?
- 10. UDP сокеты в специальной сети (Ubuntu 9.10)
- 11. Отправлять UDP-пакеты узлу в другой сети
- 12. UDP «sendto» за пределами локальной сети
- 13. потока аудио в сети WiFi через UDP
- 14. Эффект трафика UDP на производительность сети
- 15. UDP-пакет для определенного IP-адреса в локальной сети
- 16. Широковещательное сообщение UDP в локальной сети для обнаружения IP-камер
- 17. UDP-клиент и сервер с Twisted Python
- 18. с использованием Python/Pexpect для обхода сети
- 19. UDP-клиент на Android в локальной сети
- 20. Python/Tensorflow: Заставка для сети
- 21. Сжатие сети для Python/Mongo
- 22. UDP для межпроцессного взаимодействия
- 23. Python udp performance
- 24. UDP-сервер, работающий на android для локальной сети
- 25. Отправка объектов по всей сети с использованием UDP в Java
- 26. Получите нестандартный python UDP broadcast
- 27. Усиление UDP-сервера python
- 28. Многоклиентский UDP-сервер python
- 29. UDP vs TCP в локальной сети с системой уровня приложения
- 30. Python отправить пакет UDP
Короче говоря, может ли скрипт Python управлять UDP и TCP одновременно через два разных порта без какого-либо отставания? – Ohmnivore