Articles of sockets de

No se puede enlazar a la dirección después de que el progtwig de socket falla

Si mi progtwig se bloquea antes de que se cierre un socket, la próxima vez que lo ejecute, aparece un error similar al siguiente; socket.error: [Errno 48] Address already in use Cambiar el puerto soluciona el problema. ¿Hay alguna forma de evitar esto, y por qué sucede esto (cuando el progtwig sale, no se debe […]

Servidor Python “Normalmente solo se permite un uso de cada dirección de socket”

Estoy tratando de crear un servidor muy básico en Python que escucha en un puerto, crea una conexión TCP cuando un cliente intenta conectarse, recibe datos, envía algo de vuelta, luego escucha de nuevo (y repite el proceso indefinidamente). Esto es lo que tengo hasta ahora: from socket import * serverName = “localhost” serverPort = […]

Python Sockets: habilitando el modo promiscuo en Linux

Sabemos que Python permite habilitar el modo promiscuo en Windows a través de s.ioctl(socket.SIO_RCVALL, socket.RCVALL_ON) Sin embargo, el RCVALL_ * y SIO_ * solo están disponibles en Windows. Usando C socket api, en Linux, uno puede usar: ethreq.ifr_flags |= IFF_PROMISC; ioctl(sock, SIOCSIFFLAGS, &ethreq); oa través de setsockopt(sock, SOL_PACKET, PACKET_ADD_MEMBERSHIP, PACKET_MR_PROMISC) ¿Hay alguna opción en la […]

¿Cuándo vuelve socket.recv (recv_size)?

De la prueba, llegué a la conclusión de que en los siguientes tres casos, el socket.recv(recv_size) volverá. Después se cerró la conexión. Por ejemplo, el lado del cliente llamado socket.close () o cualquier error de socket ocurrió, devolvería una cadena vacía. Algunos datos vienen, el tamaño de los datos es más que recv_size . Algunos […]

Enviar cadena a través de socket (python)

Tengo dos scripts, Server.py y Client.py. Tengo dos objectives en mente: Para poder enviar datos una y otra vez al servidor desde el cliente. Para poder enviar datos del servidor al cliente. Aquí está mi Server.py: import socket serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) host = “192.168.1.3” port = 8000 print (host) print (port) serversocket.bind((host, port)) serversocket.listen(5) […]

error socket.accept 24: a muchos archivos abiertos

Tengo un problema con los archivos abiertos en mi Ubuntu 9.10 cuando ejecuto un servidor en Python2.6. El principal problema es que no sé por qué. he puesto ulimit -n = 999999 net.core.somaxconn = 999999 fs.file-max = 999999 y lsof me da unos 12000 archivos abiertos cuando el servidor se está ejecutando. Y también estoy […]

Enviar un archivo a través de sockets TCP en Python

He podido copiar el contenido del archivo (imagen) a un nuevo archivo. Sin embargo, cuando bash lo mismo a través de sockets TCP, estoy enfrentando problemas. El bucle del servidor no está saliendo. El bucle del cliente se cierra cuando alcanza el EOF, sin embargo, el servidor no puede reconocer el EOF. Aquí está el […]

Múltiples escrituras se manejan como una sola

Tengo un problema aquí con este código. Abro un zócalo, luego lo escucho con un bucle while. Envío datos desde un script php con socket_write($sock, $test, $len); Funciona muy bien, pero cuando envío varias escrituras seguidas, la secuencia de comandos de Python maneja algunas de las escrituras como una sola escritura. import socket HOST = […]

Python sock.listen (…)

Todos los ejemplos que he visto de sock.listen(5) en la documentación de python sugieren que debería establecer el número de registro máximo en 5 . Esto está causando un problema para mi aplicación ya que estoy esperando un volumen muy alto (muchas conexiones simultáneas). Lo puse en 200 y no he visto ningún problema en […]

Bloques de socket TCP de Python en el método recv

Actualmente estoy tratando de pasar por un tutorial básico sobre redes y noté que un progtwig cliente / servidor rudimentario se congelaría en el servidor que intentaba leer más datos del cliente cuando se reciben todos los datos. Básicamente el código se ve así: def recv_all(sock,length): data=” while len(data)<length: more=sock.recv(length-len(data)) if not more : raise […]