GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

[RESOLVIDO] Dúvida Sockets

java
programação
Tags: #<Tag:0x00007f852c9fdfe0> #<Tag:0x00007f852c9fdbf8>

#1

public static void main(String[] args) {
ServerSocket s = new ServerSocket(4444);
while (true) {
Socket ns = s.accept();
DataInputStream in = new DataInputStream(ns.getInputStream());
DataOutputStream out = new DataOutputStream(ns.getOutputStream());
while (true) {
String fromClient = in.readUTF();
out.writeUTF(protocol protocol protocol.processLine(fromClient));
if (fromClient.equals(“Bye”)) break;
}
in.close();
out.close();
ns.close()
}
s.close();
}

Galera to em dúvida sobre a conexão no protocolo TCP, no código acima NS e S adotam a mesma porta ?


#2

Sim. Não tem nenhum problema nisso, porque uma conexão TCP é identificada por 4 valores: IP e porta locais e IP e porta remotos.

Um exemplo disso são servidores HTTP. Imagina quantos clientes estão conectados na mesma porta 80 (ou melhor, 443) do Facebook.


#3

Ou seja, em nenhum caso haverá de NS e S adotarem portas distintas, certo ?


#4

Nesse código que você mostrou, ns e s sempre terão a mesma porta local.


#5

Entendi, valeuzão!