Skip to main content

Implement a ping server program using TCP socket

Implement a ping server program using a TCP socket



Server-side


import java.net.*;
import java.io.*;
import java.net.SocketException;
import java.util.*;
import java.lang.*;
class pingtcpserver
{
public static void main(String args[]) throws Exception
{
ServerSockets=null;
Socketsoc=null;
String smsg="";
PrintWriter pw;
try
{
s=new ServerSocket(5219);
System.out.println("Connecting with client ....... ");
soc=s.accept();
System.out.println("Connection Established");
BufferedReader brin=new BufferedReader(new InputStreamReader(soc.getInputStream()));
for(int i=0;i<5;i++)
{
pw=new PrintWriter(soc.getOutputStream(),true);
smsg=brin.readLine();
if(i==3)
Thread.sleep(100);
pw.println(smsg);
}}
catch(SocketException e)
{
System.out.println(e);
}
finally
{
s.close();
soc.close();
}}}




Client-side


import java.io.*;
import java.net.*;
import java.net.SocketException;
import java.util.*;
class pingtcpclient
{
public static void main(String args[]) throws Exception
{
Socketsoc=null; try
{
String str="";
String ip="127.0.0.1";
String cmsg="Ping Testing";
intsendcount=0,recvcount=0,lost=0;
long diff=0,avg=0,min=0,max=0,tottime=0;
soc=new Socket("localhost",5219);
BufferedReader in=new BufferedReader( new InputStreamReader(soc.getInputStream())); PrintWriter
pw=new PrintWriter(soc.getOutputStream(),true);
System.out.println("");
System.out.println("Pinging"+" "+ ip+" "+"with"+" "+cmsg.length()+" "+"bytes of data:");
System.out.println("");
for(int i=0;i<5;i++)
{
Date senddate=new Date();
sendcount=sendcount+1;
pw.println(cmsg);
str=in.readLine();
Date receivedate=new Date();
if (!str.equals(""))
{
recvcount=recvcount+1;
}
lost=recvcount-sendcount;
diff=((receivedate.getTime())-(senddate.getTime()));
if(recvcount==1)
{
min=diff;
}
tottime=tottime+diff;
if(diff<min)
{
min=diff;
}
if(diff>max)
{
max=diff;
}
avg=(tottime/recvcount);
if (diff > 2000)
System.out.println("Timeout");
else
System.out.println("Reply from "+ ip +": "+"bytes=" +str.length() +" "+"time<"+diff+ "ms TTL=128");
}//
for System.out.println("");
System.out.println("Ping statistics for "+ip+":");
System.out.println (" Packets: Sent = "+cmsg.length()+", Received= "+str.length() +", Lost= "+
lost+"("+(lost/sendcount)*100+"%loss),");
System.out.println("Approximate round trip times in milli-seconds:");
System.out.println(" Minimum= "+min+"ms, Maximum= "+max+"ms, Average= "+avg+"ms");
}//try
catch(Exception e)
{
System.out.println(e);
}
finally
{
soc.close();
}}}

Comments

Popular posts from this blog

creating object invoking various methods

Define a class named College as described below:  Data Members: 1) collegeName 2) principalName 3) place Methods : 1) constructor. 2) display() to display the collegeName, principalName, and the place. Test this class by creating an object and then invoking the various methods. class collegeName{  public String collegeName;  public String PrincipalName;  public String place;  public collegeName(){  }  public void display(){  System.out.println("College name is "+this.collegeName);  System.out.println("Principal name is "+this.PrincipalName);  System.out.println("Place is "+this.place);  }  }  class displayName{  public static void main(String[] args) {  collegeName c = new collegeName();  c.collegeName="Siliguri Institute of Technology";  c.PrincipalName="Dr. Mithun Chakraborty";  c.place="Siliguri";  c.display();  }  } OUTPUT: College name is Siliguri Institute of Technology Princip...

Networking Interview Questions and Answers

Networking Interview Questions and Answers 1) What is a Network? Answer: The network is defined as a set of devices connected to each other through a physical transmission medium. For example, a computer network is a group of computers connected to each other to communicate and share information and resources such as hardware, data, and software. In a network, nodes are used to connect two or more networks. 2) What is a Node? Answer: Two or more computers are directly connected by fiber optics or any other cable. A node is a point where a connection is established. It is a network component used to send, receive, and forward electronic information. A device connected to a network is also called a Node. Let us consider that in a network there are 2 computers, 2 printers, and a server connected, then we can say that there are five nodes in the network. 3) What is Network Topology? Answer:  Network topology is a physical layout of the computer network and defines how computers,...

Draw the transition diagram of a finite state automation that accepts all strings over {0, 1}

Draw the transition diagram of a finite state automation that accepts all strings over {0, 1} (a) having odd number of 0’s (b) having even number of 0’s and even number of 1’s. Ans.  (a) ( having odd number of 0’s ) Ans.  (b) ( having even number of 0’s and even number of 1’s )