Simultaneous transfer between Server and Client Using Socket Programming Through UDP
Socket Programming Through UDP
Simultaneous transfer between Server and Client
Program:
Server End
import java.net.*;
import java.io.*;
import java.util.*;
public class Server
{
public static void main(String arr[]) throws Exception
{
DatagramSocket ss=new DatagramSocket(12345);
byte[] sd=new byte[1024];
byte[] rd=new byte[1024];
boolean val=true;
while(val)
{
DatagramPacket rc=new DatagramPacket(rd,rd.length);
ss.receive(rc);
String str=new String(rc.getData());
System.out.println("FROM Client: "+str);
str="";
InetAddress addr = rc.getAddress();
int port = rc.getPort();
Scanner sc=new Scanner(System.in);
System.out.print("Enter text: ");
str=sc.nextLine();
sd=str.getBytes();
DatagramPacket snd=new DatagramPacket(sd,sd.length,addr,port);
ss.send(snd);
}
ss.close();
}
}
Client End
import java.net.*;
import java.io.*;
import java.util.*;
public class Client
{
public static void main(String arr[]) throws Exception
{
Scanner sc=new Scanner(System.in);
DatagramSocket cs=new DatagramSocket();
byte[] rd=new byte[1024];
byte[] sd=new byte[1024];
boolean val=true;
while(val)
{
InetAddress addr = InetAddress.getByName("localhost");
System.out.print("Enter text: ");
String str=sc.nextLine();
sd=str.getBytes();
DatagramPacket snd=new DatagramPacket(sd,sd.length,addr,12345);
cs.send(snd);
DatagramPacket rc=new DatagramPacket(rd,rd.length);
cs.receive(rc);
str=new String(rc.getData());
System.out.println("FROM Server: "+str);
cs.send(snd);
}
cs.close();
}
}
Output
Server side:
$ javac Server.java
$ java Server
FROM Client: 1
Enter text: 2
FROM Client: 3
Enter text: 4
FROM Client: 6
Enter text: 5
Enter text: 7
FROM Client: 6
Enter text: 8
FROM Client: 10
Enter text: 9
FROM Client: 22
Enter text: 14
FROM Client: 13
Client Side:
$ javac Client.java
$ java Client
Enter text: 1
FROM Server: 2
Enter text: 3
FROM Server: 4
Enter text: 6
FROM Server: 5
Enter text: 6
FROM Server: 7
Enter text: 10
FROM Server: 8
Enter text: 22
FROM Server: 9
Enter text: 13
FROM Server: 14
Tags:
Socket Programming
0 comments