Articles of prese

Perché lanciamo sockaddr_in a sockaddr quando chiamiamo bind ()?

La funzione bind () accetta un puntatore a un sockaddr , ma in tutti gli esempi che ho visto, viene usata invece una struttura sockaddr_in , che viene lanciata su sockaddr : struct sockaddr_in name; … if (bind (sock, (struct sockaddr *) &name, sizeof (name)) < 0) … Non riesco a spiegarmi perché è stata […]

Il modo più veloce per scansionare le porte con Java

Ho realizzato uno scanner di porte molto semplice, ma funziona troppo lentamente, quindi sto cercando un modo per farlo scansionare più velocemente. Ecco il mio codice: public boolean portIsOpen(String ip, int port, int timeout) { try { Socket socket = new Socket(); socket.connect(new InetSocketAddress(ip, port), timeout); socket.close(); return true; } catch (Exception ex) { return […]

perché select () restituisce sempre 0 dopo il primo timeout

Ho un problema con la funzione select quando ho lavorato su un programma socket Linux. La funzione select ha funzionato bene come dice la pagina man se il client ha collegato il lato server nell’intervallo di tempo configurato dal server. Se si verifica il timeout, la funzione di selezione restituirà 0 per sempre. A quel […]

Chiudere correttamente SSLSocket

Voglio implementare un proxy SSL in Java. Fondamentalmente apro due socket browser-proxy , proxy-server , ed eseguo due thread che scriverebbero a proxy-server ciò che leggono da browser-proxy e viceversa. Ogni thread è simile a questo: while (true) { nr = in.read(buffer); if (nr == -1) System.out.println(sockin.toString()+” EOF “+nr); if (nr == -1) break; out.write(buffer, […]

Invio di un valore dal server al client con socket

Sto usando i seguenti progetti per creare una comunicazione asincrona tra server e socket client . Quando eseguo questi progetti, invio un messaggio dal client al server, quindi ho ricevuto il messaggio: Dati: registrazione EOF, inviati 14 byte al client. Quello che voglio ottenere è inviare una variabile booleana dal server al client con i […]

Come inviare e ricevere oggetti serializzati nel canale socket

Voglio trasmettere un object serializzato su un canale socket. Voglio rendere la stringa “Ciao amico” come object serializzato e quindi scrivere questo object nel canale socket mentre nell’altra estremità voglio leggere lo stesso object e recuperare i dati. Tutte queste cose che voglio fare usando Java SocketChannel . Come fare questo? Ho provato come sotto, […]

Semplice programma client / server Java

Sto scrivendo il mio primo programma client / server java che stabilisce solo una connessione con il server che invia una frase e il server restituisce la frase in maiuscolo. Questo è in realtà un esempio appena uscito dal libro, e funziona bene e bene quando sto eseguendo il client e il server sulla stessa […]

Un semplice server Http con Java / Socket?

Attualmente sto creando un piccolo server HTTP che restituisce una pagina statica Hello! … Ho provato con i socket con Java: public static void main(String[] args) throws Exception { // création de la socket int port = 1989; ServerSocket serverSocket = new ServerSocket(port); System.err.println(“Serveur lancé sur le port : ” + port); // repeatedly wait […]

Creazione di un server socket che consente più connessioni tramite thread e Java

Sto cercando di adattare il mio semplice server socket in modo che possa avere più connessioni TCP, tramite multithreading, ma non riesco a farlo funzionare. Il mio codice finora è il seguente, non sono sicuro di dove andare da qui: import java.net.*; import java.io.*; public class DoSomethingWithInput implements Runnable { private final Socket clientSocket; //initialize […]

Socket accetta – “Troppi file aperti”

Sto lavorando a un progetto scolastico in cui ho dovuto scrivere un server multi-thread e ora lo sto confrontando con Apache eseguendo alcuni test su di esso. Sto usando Autobench per aiutarti, ma dopo aver eseguito alcuni test, o se ho dato una frequenza troppo alta (circa 600+) per effettuare le connessioni, ricevo un errore […]