如何向服务器发送ACK / NACK

时间:2016-12-12 04:28:55

标签: java tcp network-programming

下面是我写的客户端和服务器程序。现在我很困惑如何在我的程序中发送ack / nack。 我在stackoverflow上看到了一些答案,但我仍然感到困惑。您能否使用java

给出TCP协议中的ACK / NACK示例

客户端

public class Client {

public static void main(String args[]) {

    try {
        Socket client = new Socket("localhost", 2222);
        PrintWriter pw = new PrintWriter(client.getOutputStream(), true);
        Scanner input = new Scanner(System.in);
        boolean a = true;
        while (a) {

            //receving
            BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream()));
            System.out.println(br.readLine());
            if (input.equals("q")) {
                a = false;
                client.close();
            }

            pw.println("Client0: " + input.nextLine());
            System.out.println(pw);
            // System.out.println("Request sent successfully");


        }
    } catch (Exception ex) {
        System.out.println(ex);
    }
}

}

服务器

public class Server {

    public static void main(String args[]) {

        try {

            ServerSocket ss = new ServerSocket(2222);
            System.out.println("Waiting for client request");
            Socket client = ss.accept();
            System.out.println("Accepted connection request");
            Scanner input = new Scanner(System.in);
            while (true) {

                // receving
                InputStreamReader isr = new InputStreamReader(client.getInputStream());
                BufferedReader br = new BufferedReader(isr);
                String str = br.readLine();

                // sending
                PrintStream ps = new PrintStream(client.getOutputStream());
                ps.println("Server1: " + input.nextLine());
                System.out.println(ps);

            }
        } catch (Exception e) {
            System.out.println(e);
        }
    }
}

谢谢

0 个答案:

没有答案