Beruflich Dokumente
Kultur Dokumente
1. The message entered in the client is sent to the server and the server encodes
the message and returns it to the client. Encoding is done by replacing a
character by the character next to it i.e. a as b, b as c z as a. This process is
done using the TCP/IP protocol. Write a Java program for the above.
SERVER:
import java.io.*;
import java.net.*;
class server {
public static void main(String argv[]) throws Exception
{
String no1;
ServerSocket welcomeSocket = new ServerSocket(6788);
while(true) {
Socket connectionSocket = welcomeSocket.accept();
BufferedReader inFromClient =
new BufferedReader(new
InputStreamReader(connectionSocket.getInputStream()));
DataOutputStream outToClient =
new DataOutputStream(connectionSocket.getOutputStream());
no1 = inFromClient.readLine();
int n=no1.length();
int i;
String zz="";
char d;
char c[]=no1.toCharArray();
for(i=0;i<n;i++)
{
if(c[i]=='z')
d='a';
else
{int num=(int)c[i];
num++;
d=(char)num;
}zz=zz+d;
}
outToClient.writeBytes(zz+'\n');
}}}
CLIENT:
import java.io.*;
import java.net.*;
class client{
public static void main(String argv[]) throws Exception
{
String no1;
String mod;
BufferedReader inFromUser =
3. Illustrate with the help of Socket programming that how a Server can Run in
Infinite Loop handling Multiple Client Requests, one at a time
SERVER:
import java.io.*;
import java.net.*;
class server2 {
BufferedReader inFromClient =
new BufferedReader(new
InputStreamReader(connectionSocket.getInputStream()));
DataOutputStream outToClient =
new DataOutputStream(connectionSocket.getOutputStream());
no1 = inFromClient.readLine();
no2 = inFromClient.readLine();
int m=Integer.parseInt(no1);
int b=Integer.parseInt(no2);
int sum=m+b;
int sub=m-b;
int mul=m*b;
int div=m/b;
String z=String.valueOf(sum);
String x=String.valueOf(sub);
String c=String.valueOf(mul);
String v=String.valueOf(div);
cap = z+' '+x+' '+c+' ' +v+ '\n';
outToClient.writeBytes(cap);
}
}
}
CLIENT 1:
import java.io.*;
import java.net.*;
class client1 {
BufferedReader inFromUser =
new BufferedReader(new InputStreamReader(System.in));
DataOutputStream outToServer =
new DataOutputStream(clientSocket.getOutputStream());
BufferedReader inFromServer =
new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
System.out.println("Enter 2 numbers\n");
no1=inFromUser.readLine();
no2=inFromUser.readLine();
outToServer.writeBytes(no1 + '\n');
outToServer.writeBytes(no2 + '\n');
mod = inFromServer.readLine();
clientSocket.close();
}
}
CLIENT 2:
import java.io.*;
import java.net.*;
class client2 {
DataOutputStream outToServer =
new DataOutputStream(clientSocket.getOutputStream());
BufferedReader inFromServer =
new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
System.out.println("Enter 2 numbers\n");
no1=inFromUser.readLine();
no2=inFromUser.readLine();
outToServer.writeBytes(no1 + '\n');
outToServer.writeBytes(no2 + '\n');
mod = inFromServer.readLine();
clientSocket.close();
}
}
OUTPUT:
iteBytes(us+'\n');
sr=inFromServer.readLine();
System.out.println("Ser: "+sr+'\n');
}while(us!=""||us!="\n");
clientSocket.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}
OUTPUT:
3. Illustrate with the help of Socket programming that how a Server can Run in
Infinite Loop handling Multiple Client Requests, one at a time
SERVER:
import java.io.*;
import java.net.*;
class server2 {
BufferedReader inFromClient =
new BufferedReader(new
InputStreamReader(connectionSocket.getInputStream()));
DataOutputStream outToClient =
new DataOutputStream(connectionSocket.getOutputStream());
no1 = inFromClient.readLine();
no2 = inFromClient.readLine();
int m=Integer.parseInt(no1);
int b=Integer.parseInt(no2);
int sum=m+b;
int sub=m-b;
int mul=m*b;
int div=m/b;
String z=String.valueOf(sum);
String x=String.valueOf(sub);
String c=String.valueOf(mul);
String v=String.valueOf(div);
outToClient.writeBytes(cap);
}
}
}
CLIENT 1:
import java.io.*;
import java.net.*;
class client1 {
BufferedReader inFromUser =
new BufferedReader(new InputStreamReader(System.in));
DataOutputStream outToServer =
new DataOutputStream(clientSocket.getOutputStream());
BufferedReader inFromServer =
new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
System.out.println("Enter 2 numbers\n");
no1=inFromUser.readLine();
no2=inFromUser.readLine();
outToServer.writeBytes(no1 + '\n');
outToServer.writeBytes(no2 + '\n');
mod = inFromServer.readLine();
clientSocket.close();
}
}
CLIENT 2:
import java.io.*;
import java.net.*;
class client2 {
BufferedReader inFromUser =
new BufferedReader(new InputStreamReader(System.in));
DataOutputStream outToServer =
new DataOutputStream(clientSocket.getOutputStream());
BufferedReader inFromServer =
new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
System.out.println("Enter 2 numbers\n");
no1=inFromUser.readLine();
no2=inFromUser.readLine();
outToServer.writeBytes(no1 + '\n');
outToServer.writeBytes(no2 + '\n');
mod = inFromServer.readLine();
clientSocket.close();
}
}
******************
CYCLESHEET3
14bit0173
Akshat Pradhan
Prof. Sudha.s
Network Programming lab
L31 L32
11-02-2017
CODE
Server
import java.util.*;
import java.net.*;
import java.io.*;
}catch(Exception e){
System.out.println("Not a spam");
}
ServerSocket server;
Socket connection;
ObjectInputStream input;
try{
server = new ServerSocket(6789,100);
connection = server.accept();
input = new
ObjectInputStream(connection.getInputStream());
String cstring =(String) input.readObject();
InetAddress clientip = InetAddress.getByName(cstring);
byte[] spamchk=clientip.getAddress();
String revip="";
for(int i=spamchk.length;i>0;i--){
if((int) spamchk[i-1]<0){
int n = spamchk[i-1]+256;
revip=revip+n;
revip=revip+".";
System.out.println(revip);
}
else{
revip=revip+spamchk[i-1];
revip=revip+".";
System.out.println(revip);
}
}
server x = new server(revip);
x.start();
x.join();
server.close();
connection.close();
input.close();
}catch(Exception e){
e.printStackTrace();
}
Client
import java.io.*;
import java.net.*;
import java.util.*;
public class client {
try{
connection = new Socket("127.0.0.1", 6789);
output = new
ObjectOutputStream(connection.getOutputStream());
output.writeObject("207.87.34.17");
output.flush();
output.close();
connection.close();
}catch(Exception e){
e.printStackTrace();
}
}
Output
a.
Web server logs track the hosts that access a website. By default, the log reports
the
IP addresses of the sites that connect to the server. However, you can often get
more
information from the names of those sites than from their IP addresses. Most web
servers have an option to store hostnames instead of IP addresses, but this can
hurt
performance because the server needs to make a DNS request for each hit. It is
much
more efficient to log the IP addresses and convert them to hostnames at a later
time.
Create a file named logfile with some details of 10 clients with the following
data for
each client.
A typical line in the common logfile format looks like this:
site logName fullName [date:time GMToffset] "req file proto" status length
205.160.186.76 unknown - [17/Jun/2013:22:53:58 -0500] "GET /bgs/greenbg.gif HTTP
1.0" 200 50
Write a program called Weblog that reads a web server logfile and prints each line
with IP addresses converted to hostnames.
filelog.txt
site logName fullName [date:time GMToffset] "req file proto" status length
<205.160.186.76> unknown - [17/Jun/2013:22:53:58 -0500] "GET /bgs/greenbg.gif HTTP
1.0" 200 50
site logName fullName [date:time GMToffset] "req file proto" status length
<205.160.186.76> unknown - [17/Jun/2013:22:53:58 -0500] "GET /bgs/greenbg.gif HTTP
1.0" 200 50
site logName fullName [date:time GMToffset] "req file proto" status length
<205.160.186.76> unknown - [17/Jun/2013:22:53:58 -0500] "GET /bgs/greenbg.gif HTTP
1.0" 200 50
site logName fullName [date:time GMToffset] "req file proto" status length
<205.160.186.76> unknown - [17/Jun/2013:22:53:58 -0500] "GET /bgs/greenbg.gif HTTP
1.0" 200 50
site logName fullName [date:time GMToffset] "req file proto" status length
<205.160.186.76> unknown - [17/Jun/2013:22:53:58 -0500] "GET /bgs/greenbg.gif HTTP
1.0" 200 50
site logName fullName [date:time GMToffset] "req file proto" status length
<205.160.186.76> unknown - [17/Jun/2013:22:53:58 -0500] "GET /bgs/greenbg.gif HTTP
1.0" 200 50
Code
import java.io.*;
import java.net.*;
importjava.util.*;
publicclass client {
while((c=(char)in.read())!='\0'){
if(c=='<'){
chare;
String address="";
while((e =(char)in.read())!='>'){
address=address+e;
}
InetAddress add =
InetAddress.getByName(address);
System.out.println("IP address:
"+add.getHostAddress()+"Host name: "+add.getHostName());
}
}catch(Exception e){
e.printStackTrace();
}
}
}
Output
Rewrite the program by using Muiltithread concept, such that One main thread
can read the logfile and pass off individual entries to other threads for
processing
Code
importjava.util.*;
import java.net.*;
import java.io.*;
}catch(Exception e){
e.printStackTrace();
}
try{
FileInputStream in = new FileInputStream("filelog.txt");
charc;
while((c=(char)in.read())!='\0'){
if(c=='<'){
chare;
String address="";
while((e =(char)in.read())!='>'){
address=address+e;
}
server a = new server(address);
a.start();
a.join();
}
}
}catch(Exception e){
e.printStackTrace();
}
}
Output
Write a program that displays the details of all the network interfaces of a host
Code
Import java.io.*;
import java.net.*;
import java.util.*;
publicclass client {
try{
Enumeration<NetworkInterface>interfaces =
NetworkInterface.getNetworkInterfaces();
while (interfaces.hasMoreElements()) {
NetworkInterface ni = interfaces.nextElement();
System.out.println(ni);
}
}catch(Exception e){
e.printStackTrace();
}
}
}
Output
Write a test code that would check whether the server socket on port 4444 was
accessible
via all interfaces.
Code
importjava.io.*;
import java.net.*;
import java.util.*;
publicclass client {
try{
ServerSocket server = new ServerSocket(4444);
Enumeration<NetworkInterface>interfaces =
NetworkInterface.getNetworkInterfaces();
while (interfaces.hasMoreElements()) {
NetworkInterface ni = interfaces.nextElement();
Enumeration<InetAddress>adder = ni.getInetAddresses();
Socket checker;
InetAddress ninet;
while(adder.hasMoreElements()){
ninet = adder.nextElement();
try{
}
}catch(Exception e){
e.printStackTrace();
}
}
}
SUBA SHANTINI
1. import java.io.*;
import java.net.*;
import java.util.*;
class URLConnect
{
public static void main(String [] args)throws MalformedURLException
{
try {
URLConnection uc = u.openConnection();
int c;
2.import java.io.*;
import java.net.*;
import java.util.*;
class SpecificHeader
{
public static void main(String [] args)throws MalformedURLException
{
try {
URL u = new URL("http://www.vit.ac.in");
URLConnection uc = u.openConnection();
String contentType = uc.getContentType();
int contentLength = uc.getContentLength();
String contentEncoding = uc.getContentEncoding();
Date documentSent = new Date(uc.getDate());
Date documentLastModified= new Date(uc.getLastModified());
Date documentExpired= new Date(uc.getExpiration());
System.out.println("Content Type :"+contentType+"\nContent Length
:"+contentLength+"\nContent Encoding :"+contentEncoding+
"\nDate Document Sent :"+documentSent+"\nLast Modified
"+documentLastModified+"\nExpiry Date :"+documentExpired);
}
catch (IOException e)
{
System.out.println(e);
}
}
}
b.
import java.io.*;
import java.net.*;
import java.util.*;
class ArbitraryHeader
{
public static void main(String [] args)throws MalformedURLException
{
try {
URLConnection uc = u.openConnection();
String contentType = uc.getContentType();
String contentType1 = uc.getHeaderField("content-type");
String header = uc.getHeaderFieldKey(5);
Date now = new Date(uc.getHeaderFieldDate("date", 0));
Date now1 = new Date(uc.getHeaderFieldInt("date", -1));
System.out.println("Header Field: "+ contentType1+"\nHeader Field Key:
"+header+"\nHeader Field Date: "+now+"\nHeader Field Int: "+now1);
}
catch (IOException e)
{
System.out.println(e);
}
}
}
3.
import java.io.*;
import java.net.*;
import java.util.*;
class HTTPHeader
{
public static void main(String [] args)throws MalformedURLException
{
try {
URL u = new URL("http://www.vit.ac.in");
URLConnection uc = u.openConnection();
try{
uc.setRequestProperty("Cookie","session=100678945");
System.out.println("Request Property: "+uc.getRequestProperty("Cookie"));
}
catch (IllegalArgumentException e)
{
System.out.println(e);
}
}
catch (IOException e)
{
System.out.println(e);
}
}
}
Server CODE:
import java.io.*;
import java.net.*;
import java.util.StringTokenizer;
while(true) {
String send = "", receive = "";
//receive = dis.readUTF();
Client CODE:
import java.io.*;
import java.net.*;
while(true) {
DataInputStream dis = new DataInputStream(s.getInputStream());
DataOutputStream dos = new DataOutputStream(s.getOutputStream());
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
} catch(Exception e) {
System.out.println("This is catch block");
System.err.println(e);
} finally {
try{
s.close();
} catch(Exception e) {
}
}
}
}
SSL SOCKET
SLServer :
import java.io.*;
import javax.net.ssl.SSLSocket;
import javax.net.ssl.*;
dos.writeUTF(receive);
server.close();
} catch(Exception ex) {
System.err.println(ex);
}
}
}
SSLClient :
import javax.net.ssl.*;
import java.io.*;
MultiSend :
import java.net.*;
import java.io.*;
SINGLE DOC
import java.io.*;
import java.net.*;
class Ucli {
public static void main(String args[]) throws Exception
{
BufferedReader inFromUser =
new BufferedReader(new InputStreamReader(System.in));
DatagramSocket clientSocket = new DatagramSocket();
InetAddress IPAddress = InetAddress.getByName("localhost");
byte[] sendData = new byte[1024];
byte[] receiveData = new byte[1024];
String sentence = inFromUser.readLine();
sendData = sentence.getBytes();
DatagramPacket sendPacket =
new DatagramPacket(sendData, sendData.length, IPAddress, 9876);
clientSocket.send(sendPacket);
DatagramPacket receivePacket =
new DatagramPacket(receiveData, receiveData.length);
clientSocket.receive(receivePacket);
String modifiedSentence =
new String(receivePacket.getData());
System.out.println("FROM SERVER:" + modifiedSentence);
clientSocket.close();
}
}
---
import java.io.*;
import java.net.*;
import java.util.*;
class User {
public static void main(String args[]) throws Exception
{
DatagramSocket serverSocket = new DatagramSocket(9876);
byte[] receiveData = new byte[5];
byte[] sendData = new byte[5];
while(true)
{
DatagramPacket receivePacket =
new DatagramPacket(receiveData, receiveData.length);
serverSocket.receive(receivePacket);
String sentence = new String(receivePacket.getData());
char c[]=sentence.toCharArray();
int n=c.length;
int i;
char zu;
String str="";
for(i=0;i<n;i++)
{
if(c[i]=='z')
{
zu='a';
}
else{
int num=(int)c[i];
num++;
zu=(char)num;
}
str=str+zu;
sendData = str.getBytes();
DatagramPacket sendPacket =
new DatagramPacket(sendData, sendData.length, IPAddress,
port);
serverSocket.send(sendPacket);
}
}
}
-----------------------------------------------
import java.io.*;
import java.net.*;
class UDPClient {
sendData = sentence.getBytes();
DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length,
IPAddress, 9876);
clientSocket.send(sendPacket);
-------
import java.io.*;
import java.net.*;
class UDPServer {
int i;
char c,cc;
while(true){
System.out.println(receivePacket.getOffset());
System.out.println(receivePacket.getLength());
System.out.println(receivePacket.getSocketAddress());
}
EXTRA
import java.io.*;
import java.util.*;
import java.util.concurrent.*;
// Start printing the results. This blocks each time a result isn't ready.
for (LogEntry result : results) {
try {
System.out.println(result.future.get());
} catch (InterruptedException | ExecutionException ex) {
System.out.println(result.original);
}
}
executor.shutdown();
}
// gui authenticator
import javax.mail.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public MailAuthenticator() {
this("");
}
//url parts
import java.net.*;
try {
URL u = new URL("http://www.java2s.com");
System.out.println("The URL is " + u);
System.out.println("The protocol part is " + u.getProtocol());
System.out.println("The host part is " + u.getHost());
System.out.println("The port part is " + u.getPort());
System.out.println("The file part is " + u.getFile());
System.out.println("The ref part is " + u.getRef());
} // end try
catch (MalformedURLException e) {
System.err.println("not a URL I understand.");
}
} // end main
//ip characteristics
import java.net.*;
try {
InetAddress address = InetAddress.getByName(args[0]);
if (address.isAnyLocalAddress()) {
System.out.println(address + " is a wildcard address.");
}
if (address.isLoopbackAddress()) {
System.out.println(address + " is loopback address.");
}
if (address.isLinkLocalAddress()) {
System.out.println(address + " is a link-local address.");
} else if (address.isSiteLocalAddress()) {
System.out.println(address + " is a site-local address.");
} else {
System.out.println(address + " is a global address.");
}
if (address.isMulticastAddress()) {
if (address.isMCGlobal()) {
System.out.println(address + " is a global multicast address.");
} else if (address.isMCOrgLocal()) {
System.out.println(address
+ " is an organization wide multicast address.");
} else if (address.isMCSiteLocal()) {
System.out.println(address + " is a site wide multicast
address.");
} else if (address.isMCLinkLocal()) {
System.out.println(address + " is a subnet wide multicast
address.");
} else if (address.isMCNodeLocal()) {
System.out.println(address
+ " is an interface-local multicast address.");
} else {
System.out.println(address + " is an unknown multicast
address type.");
}
} else {
System.out.println(address + " is a unicast address.");
}
} catch (UnknownHostException ex) {
System.err.println("Could not resolve " + args[0]);
}
}
}