Sie sind auf Seite 1von 36

DEPARTMENT OF COMPUTER SCIENCE

Page No

One Way Communication Using Server Socket SERVER:


import java.io.*; import java.net.*; class onewayserver { public static void main(String args[]) throws IOException { try { String x; InputStreamReader inpst=new InputStreamReader(System.in); BufferedReader bufred=new BufferedReader(inpst); ServerSocket sersoc=new ServerSocket(3000); Socket soc=sersoc.accept(); System.out.println("\n\t\tServer Window"); System.out.println("\nServer Client Connection was Established"); OutputStream outst=soc.getOutputStream(); DataOutputStream doutst=new DataOutputStream(outst); System.out.println("\nEnter the Message ---> Type End to Exit"); while(true) { x=bufred.readLine(); if(x.equalsIgnoreCase("End")) break; dos.writeUTF(x); } } catch(Exception e) { } } }

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

CLIENT: import java.io.*; import java.net.*; class onewayclient { public static void main(String args[]) throws IOException { try { Socket soc=new Socket("LocalHost",3000); InputStream inpst=soc.getInputStream(); DataInputStream din=new DataInputStream(inpst); System.out.println("\n Received from Server"); while(true) { System.out.println(din.readUTF()); } } catch(Exception e) { } } }

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE SCREENSHOT : Server Window

Page No

Client Window

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

Two Way Communication Using Server Socket SERVER:


import java.io.*; import java.net.*; class tcp_twowayserver { public static void main(String args[]) { try { String str; ServerSocket sersoc=new ServerSocket(2000); Socket soc=sersoc.accept(); BufferedReader bufred=new BufferedReader(new InputStreamReader(System.in)); InputStream inpst=soc.getInputStream(); DataInputStream dinpst=new DataInputStream(inpst); OutputStream outst=soc.getOutputStream(); DataOutputStream doutst=new DataOutputStream(outst); System.out.println("\t\tSERVER WINDOW"); while(true) { System.out.println("TO CLIENT ENTER THE STRING:"); str=bufred.readLine(); if(str.equalsIgnoreCase("end")) break; dos.writeUTF(str); System.out.println("\t\tFROM CLIENT"); System.out.println(dinpst.readUTF()); } } catch(IOException e) { System.out.println("CLIENT TERMINATED"); }} }
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE CLIENT:

Page No

import java.io.*; import java.net.*; class tcp_twowayclient { public static void main(String args[])throws IOException { try { String str; Socket soc=new Socket("127.0.0.1",2000); BufferedReader bufred=new BufferedReader(new InputStreamReader(System.in)); InputStream inpst=soc.getInputStream(); DataInputStream dinpst=new DataInputStream(inpst); OutputStream outst=soc.getOutputStream(); DataOutputStream doutst=new DataOutputStream(outst); System.out.println("\t\tCLIENT WINDOW"); while(true) { System.out.println("\t\tFROM SERVER:"); System.out.println(dinpst.readUTF()); System.out.println("\t\t TO SERVER ENTER THE STRING:"); str=bufred.readLine(); if(str.equalsIgnoreCase("end")) break; doutst.writeUTF(str); } } catch(IOException e) { System.out.println("SERVER TERMINATED"); } } }

SCREENSHOT :
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE Server Window

Page No

Client Window

One Way Communication Using User-Datagram Protocol(UDP)


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE SERVER:

Page No

import java.io.*; import java.net.*; class dgm_onewayserver { public static void main(String args[])throws IOException { try { int cport=999; int sport=666; String s; DatagramSocket datasoc=new DatagramSocket(sport); InputStreamReader inpstr=new InputStreamReader(System.in); BufferedReader bufred=new BufferedReader(inpstr); System.out.println("ENTER THE MESSAGE:"); while(true) { s=bufred.readLine(); byte b[]=s.getBytes(); InetAddress iadd=InetAddress.getLocalHost(); DatagramPacket datapac=new DatagramPacket(b,b.length,iadd,cport); datasoc.send(datapac); if(s.equalsIgnoreCase("end")) break; } } catch(Exception e) { e.printStackTrace(); } } } CLIENT:
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE import java.io.*; import java.net.*; class dgm_onewayclient { public static void main(String args[])throws IOException { try { int cport=999; int sport=666; byte b[]=new byte[100]; DatagramSocket datasoc=new DatagramSocket(cport); while(true) { DatagramPacket datapac=new DatagramPacket(b,b.length); datasoc.receive(datapac); String s=new String(datapac.getData(),0,datapac.getLength()); System.out.println("FROM SERVER:"); System.out.println(s); if(s.equalsIgnoreCase("end")) { System.exit(0); } } } catch(Exception e) { e.printStackTrace(); } } }

Page No

SCREENSHOT : Server Window


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

Client Window

Two Way Communication Using User-Datagram Protocol(UDP)


SERVER:
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

import java.io.*; import java.net.*; class dgm_twowayserver { public static void main(String args[])throws IOException { System.out.println("SERVER WINDOW"); while(true) { try { int cport=2010; InputStreamReader inpstr=new InputStreamReader(System.in); BufferedReader bufred=new BufferedReader(inpstr); System.out.println("TO CLIENT, ENTER YOUR MESSAGE:"); String s=bufred.readLine(); byte b[]=s.getBytes(); InetAddress iadd=InetAddress.getByName("LocalHost"); DatagramSocket datasoc=new DatagramSocket(); DatagramPacket datapac=new DatagramPacket(b,b.length,iadd,2010); datasoc.send(datapac); datasoc.close(); if(s.equalsIgnoreCase("end")) break; //TO RECEIVE int sport=2000; byte b1[]=new byte[100]; DatagramSocket datasoc1=new DatagramSocket(2000); DatagramPacket datapac1=new DatagramPacket(b1,b1.length); datasoc1.receive(datapac1); String s1=new String(datapac1.getData(),0,datapac1.getLength()); System.out.println("FROM CLIENT");

System.out.println(s1); datasoc1.close(); }
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE catch(IOException e) { System.out.println("CLIENT TERMINATED"); } } } } CLIENT: import java.io.*; import java.net.*; class dgm_twowayclient { public static void main(String args[]) throws IOException { while(true) { try { //RECEIVING MESSAGE int cport=2010; byte b[]=new byte[100]; DatagramSocket datasoc=new DatagramSocket(cport); DatagramPacket datapac=new DatagramPacket(b,b.length); datasoc.receive(datapac); String s=new String(datapac.getData(),0,datapac.getLength()); System.out.println("FROM SERVER"); System.out.println(s); datasoc.close(); if(s.equalsIgnoreCase("end")) break;

Page No

//SENDING MESSAGE int sport=2000; InputStreamReader inpstr=new InputStreamReader(System.in); BufferedReader bufred=new BufferedReader(inpstr);
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE Page No System.out.println("TO SERVER, ENTER THE MESSAGE:"); String s1=bufred.readLine(); byte b1[]=s1.getBytes(); InetAddress iadd=InetAddress.getByName("LocalHost"); DatagramSocket datasoc1=new DatagramSocket(); DatagramPacket datapac1=new DatagramPacket(b1,b1.length,iadd,2000); datasoc1.send(datapac1); datasoc1.close(); } catch(IOException e) { e.printStackTrace(); } } } }

SCREENSHOT : Server Window

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

Client Window

One-bit Sliding Window Protocols


SERVER:
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

import java.lang.System; import java.net.*; import java.io.*; class bitserver { public static void main(String[] args) { try { BufferedInputStream bufin; ServerSocket sersoc=new ServerSocket(2000); System.out.println("WAITING FOR CONNECTION"); Socket client=sersoc.accept(); System.out.println("RECEIVED REQUEST FOR SENDING FRAMES"); bufin=new BufferedInputStream(client.getInputStream()); DataOutputStream dout=new DataOutputStream(client.getOutputStream()); int p=bufin.read(); System.out.println("SENDING.........."); for(int i=1;i<=p;++i) { System.out.println("SENDING FRAME NUMBER:"+i); dout.write(i); dout.flush(); System.out.println("WAITING FOR A ACKNOWLEDGEMENT"); Thread.sleep(3000); int a=in.read(); System.out.println("RECEIVED ACKNOWLEDGEMENT FOR FRAME NUMBER:"+i+ "as" +a); } dout.flush(); bufin.close();

dout.close(); client.close(); sersoc.close();


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE System.out.println("QUITING"); } catch(IOException e) { System.out.println(e); } catch(InterruptedException e) { } } } CLIENT:

Page No

import java.lang.System.*; import java.net.*; import java.io.*; import java.math.*; class bitclient { public static void main(String a[]) { try { InetAddress iaddr=InetAddress.getByName("LocalHost"); System.out.println(addr); Socket connection=new Socket(iaddr,2000); DataOutputStream dout=new DataOutputStream(connection.getOutputStream()); BufferedInputStream in=new BufferedInputStream(connection.getInputStream()); BufferedInputStream inn=new BufferedInputStream(connection.getInputStream()); int flag=0;

System.out.println("CONNECT"); BufferedReader bufred=new BufferedReader(new InputStreamReader(System.in)); System.out.println("ENTER THE NUMBER OF FRAMES TO BE REQUESTED TO SERVER:");
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE Page No int c =Integer.parseInt(bufred.readLine()); dout.write(c); dout.flush(); int i,j=0; while(j<c) { i=in.read(); System.out.println("RECEIVED FRAME NUMBER:"+i); System.out.println("SENDING ACKNOWLEDGEMENT FOR FRAME NUMBER:"+i); dout.write(i); dout.flush(); j++; } dout.flush(); in.close(); dout.close(); System.out.println("QUITING"); } catch(Exception e) { System.out.println(e); } } }

SCREENSHOT: SERVER WINDOW:

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

CLIENT WINDOW:

CYCLIC REDUNDANCY CHECK


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE SOURCE CODE:

Page No

import java.io.*; import java.lang.*; public class crc { public static void main(String args[])throws IOException { int f[]=new int[25]; int gen[]=new int[10]; int rem[]=new int[10]; int flen,glen,rlen,i,j,sum,p,irem,iframe,igen; String data; BufferedReader in=new BufferedReader(new InputStreamReader(System.in)); System.out.print("\nENTER THE FRAME:"); data=in.readLine(); flen=data.length()-1; for(i=0;i<data.length();i++) f[i]=(int)(data.charAt(i))-48; System.out.print("\nENTER THE GENERATOR:"); data=in.readLine(); glen=data.length()-1; for(i=1;i<=glen;i++) f[flen+i]=0; flen=flen+glen; for(i=0;i<data.length();i++) gen[i]=((int)(data.charAt(i)-48)); p=0; sum=0; for(i=flen;i>=0;i--) { sum=sum+(f[i]*(int)Math.pow(2,p)); p=p+1; }

iframe=sum;
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE p=0; sum=0; for(i=glen;i>=0;i--) { sum=sum+(gen[i]*(int)Math.pow(2,p)); p=p+1; } igen=sum; irem=iframe%igen; irem=igen-irem; i=0; while(iframe>0) { f[i]=iframe%2; iframe=iframe/2; i++; } if(iframe==1) f[i]=iframe; System.out.println("\nTRANSMITTED STRING:"); for(i=flen;i>=0;i--) System.out.println(f[i]); System.out.print("\n ENTER THE RECEIVED STRING:"); data=in.readLine(); flen=data.length()-1; for(i=0;i<data.length();i++) f[i]=((int)(data.charAt(i)))-48; p=0; sum=0; for(i=flen;i>=0;i--) { p=p+1;

Page No

} iframe=sum; irem=iframe%igen;
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

if(irem==0) System.out.println("\n MESSAGE RECEIVED WITH NO ERROR"); else System.out.println("\n MESSAGE RECEIVED WITH ERROR"); } }

SCREENSHOT:

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

IMPLEMENTATION OF REMOTE COMMAND EXECUTION


SERVER:
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE import java.io.*; import java.net.*; import java.lang.*; class RCEserver { public static void main(String a[])throws IOException,UnknownHostException,InterruptedException { ServerSocket sersoc=new ServerSocket(1000); Socket soc=sersoc.accept(); Runtime rt =Runtime.getRuntime(); Process pro=null; InputStream inpst=soc.getInputStream(); DataInputStream dinpst=new DataInputStream(inpst); String s=dinpst.readLine(); System.out.println(s); pro=rt.exec(s); pro.waitFor(); } } CLIENT:

Page No

import java.io.*; import java.net.*; import java.lang.*; public class RCEclient { public static void main(String a[])throws UnknownHostException,IOException { Socket soc=new Socket("LocalHost",1000);

System.out.println("\nENTER THE COMMAND:"); DataInputStream dinpst=new DataInputStream(System.in); String s=dinpst.readLine(); OutputStream outst=soc.getOutputStream();
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE DataOutputStream doutst=new DataOutputStream(outst); doutst.write(s.getBytes()); doutst.close(); dinpst.close(); soc.close(); } }

Page No

SCREENSHOT: SERVER WINDOW

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

CLIENT WINDOW

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

File Client Server


SERVER:
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE import java.io.*; import java.net.*; class fileserver { public static void main(String args[])throws IOException { Fserver fser=new Fserver(); fser.start(); } } class Fserver extends Thread { public void run() { try { System.out.println("\n SERVER WINDOW"); String response=""; ServerSocket sersoc=new ServerSocket(3000); String ch; boolean flag=true; while(flag) { Socket soc=ss.accept(); InputStream inpst=soc.getInputStream(); DataInputStream dinpst=new DataInputStream(inpst); String filename=dinpst.readLine(); soc.close(); File f=new File(filename); if(f.isFile() && f.canRead()) {

Page No

BufferedReader bufred=new BufferedReader(new FileReader(filename)); String temp; while((temp=bufred.readLine())!=null)


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE { response=response+temp; response=response+"\n"; soc.close(); } System.out.println("\n File found displayed"); } else { response="Invalied filename"; } soc=sersoc.accept(); PrintStream prst=new PrintStream(soc.getOutputStream()); prst.print(response); soc.close(); System.out.println("\n Do you want to continue:-------->y----n"); DataInputStream dinpst=new DataInputStream(System.in); ch=dinpst.readLine(); if((ch.equals("n"))||(ch.equals("N"))) flag=false; } } catch(Exception e) { System.out.println("Error from exception"); } } }

Page No

CLIENT: import java.io.*; import java.net.*;


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

class fileclient { public static void main(String srgs[])throws IOException { String ch; try { System.out.println("\n\t\tClient Window"); System.out.println("Enter the filename : "); Socket soc=new Socket("LocalHost",3000); DataInputStream dinpst=new DataInputStream(System.in); String filename=dinpst.readLine(); PrintStream prst=new PrintStream(soc.getOutputStream()); prst.print(filename); soc.close(); soc=new Socket("LocalHost",3000); DataInputStream dd1=new DataInputStream(soc.getInputStream()); String result; System.out.println("\n Here is ur file content \n"); while((result=dd1.readLine())!=null) System.out.println(result); soc.close(); } catch(Exception e) { e.printStackTrace(); } } }

SCREENSHOT : Server Window

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

Client Window

Simple Encryption and Decryption


SERVER:
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE import java.io.*; import java.net.*; public class enserver { public static void main(String args[]) throws IOException { ServerSocket sersoc; Socket soc; PrintWriter pw; BufferedReader bufred; String y=""; String st=""; try { sersoc=new ServerSocket(1234); soc=sersoc.accept(); bufred=new BufferedReader(new InputStreamReader(System.in)); System.out.println("Enter the Message : "); st=bufred.readLine(); System.out.println("\n Plain Text ; " +st); int l=st.length(); char c[]; c=st.toCharArray(); int n[]=new int[50]; try { for(int i=0;i<l;i++) { n[i]=(int)(c[i])+3; y+=(char)(n[i]); } }

Page No

catch(Exception e) { System.out.println(e); }
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE Page No pw=new PrintWriter(new OutputStreamWriter(soc.getOutputStream())); pw.println(y); pw.flush(); System.out.println("Encrypted Message : "+y); } catch(Exception e) { System.out.println(e); } } } CLIENT: import java.io.*; import java.net.*; public class enclient { public static void main(String args[])throws IOException { String st; Socket soc; BufferedReader bufred; String y=""; try { soc=new Socket(InetAddress.getLocalHost(),1234); bufred=new BufferedReader(new InputStreamReader(soc.getInputStream())); st=bufred.readLine(); System.out.println("Received Cipher text : "+st);

int l=st.length(); try { char c[]=new char[10]; c=st.toCharArray();


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE int n[]=new int[50]; for(int i=0;i<l;i++) { n[i]=(int)(c[i])-3; y+=(char)(n[i]); } System.out.println("\n Decrypted Message : "+y); } catch(Exception e) { System.out.println(e); } } catch(Exception e) { System.out.println(e); } } }

Page No

SCREENSHOT : Server Window

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

Client Window

IMPLEMENTATION OF CONGESTION CONTROL


KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE SOURCE CODE: //Leaky Bucket Algorithm for Network Congestion Control

Page No

import java.util.*; public class congestion_con { public static void main(String[] args) { Scanner my = new Scanner(System.in); int no_groups,bucket_size; System.out.print("\n ENTER THE BUCKET SIZE : \t"); bucket_size = my.nextInt(); System.out.print("\n ENTER THE NUMBER OF GROUPS : \t"); no_groups = my.nextInt(); int no_packets[] = new int[no_groups]; int in_bw[] = new int[no_groups]; int out_bw,reqd_bw=0,tot_packets=0; for(int i=0;i<no_groups;i++) { System.out.print("\n ENTER THE NUMBER OF PACKETS FOR GROUP : " + (i+1) + "\t"); no_packets[i] = my.nextInt(); System.out.print("\n ENTER THE INPUT BANDWIDTH FOR THE GROUP : " + (i+1) + "\t"); in_bw[i] = my.nextInt(); if((tot_packets+no_packets[i])<=bucket_size) { tot_packets += no_packets[i]; } else { do { System.out.println(" BUCKET OVERFLOW "); System.out.println(" ENTER VALUE LESS THAN: " + (bucket_sizetot_packets));
KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE no_packets[i] = my.nextInt(); }while((tot_packets+no_packets[i])>bucket_size); tot_packets += no_packets[i]; } reqd_bw += (no_packets[i]*in_bw[i]);

Page No

} System.out.println("\nTHE TOTAL REQURIED BANDWITH IS: " + reqd_bw); System.out.println("ENTER THE OUTPUT BANDWIDTH: "); out_bw = my.nextInt(); int temp=reqd_bw; int rem_pkts = tot_packets; while((out_bw<=temp)&&(rem_pkts>0)) { System.out.println("Data Sent \n" + (--rem_pkts) + " packets remaining"); System.out.println("Remaining Bandwidth " + (temp -= out_bw)); if((out_bw>temp)&&(rem_pkts>0)) System.out.println(rem_pkts + " Packet(s) Discarded Due to Insufficient Bandwidth"); } } }

SCREENSHOT:

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

DEPARTMENT OF COMPUTER SCIENCE

Page No

KANCHI MAMUNIVAR CENTRE FOR POST -GRADUATE STUDIES, PUDUCHERRY

Das könnte Ihnen auch gefallen