Program 10 (Java)



10.   Write a program on datagram socket for client/server to display the messages on client side, typed at the server side.


A datagram socket is the one for sending or receiving point for a packet delivery service. Each packet sent or received on a datagram socket is individually addressed and routed. Multiple packets sent from one machine to another may be routed differently, and may arrive in any order.

Udps.java

package udps;



import java.util.Scanner;

import java.net.*;

import java.io.*;



public class Udps {

    public static void main(String[] args) {

        DatagramSocket skt = null;

        String ch;

        Scanner input = new Scanner(System.in);

        try {

           skt = new DatagramSocket(6788);  

            byte[] buffer = new byte[1000];     
            while (true) {          

                DatagramPacket request = new DatagramPacket(buffer, buffer.length);

                skt.receive(request);

                System.out.print("enter the data:  ");

                ch = input.nextLine();

                byte[] sendMsg = (ch + " -> server processed").getBytes();

               

                DatagramPacket reply = new DatagramPacket(sendMsg, sendMsg.length, request.getAddress(), request.getPort());

                skt.send(reply);

            }

       } catch (Exception ex) {



        }

    }

}

Udpc.java

package udpc;

import java.util.Scanner;

import java.net.*;

import java.io.*;



public class Udpc {

    public static void main(String[] args) {

        DatagramSocket skt;

        try {

            skt = new DatagramSocket();

            String msg = "text message";

            byte[] b = msg.getBytes();

            InetAddress host = InetAddress.getByName("127.0.0.1");

            int serverSocket = 6788;

            DatagramPacket request = new DatagramPacket(b, b.length, host, serverSocket);

            skt.send(request);

            byte[] buffer = new byte[1000];

            DatagramPacket reply = new DatagramPacket(buffer, buffer.length);

            skt.receive(reply);

            System.out.println("Client received: " + new String(reply.getData()));

            skt.close();

        } catch (Exception ex) {

        }

    }

}

No comments:

Post a Comment