└── slidsender.java /slidsender.java: -------------------------------------------------------------------------------- 1 | //SENDER PROGRAM 2 | 3 | import java.net.*; 4 | import java.io.*; 5 | import java.rmi.*; 6 | public class slidsender 7 | { 8 | public static void main(String a[])throws Exception 9 | { 10 | ServerSocket ser=new ServerSocket(10); 11 | Socket s=ser.accept(); 12 | DataInputStream in=new DataInputStream(System.in); 13 | DataInputStream in1=new DataInputStream(s.getInputStream()); 14 | String sbuff[]=new String[8]; 15 | PrintStream p; 16 | int sptr=0,sws=8,nf,ano,i; 17 | String ch; 18 | do 19 | { 20 | p=new PrintStream(s.getOutputStream()); 21 | System.out.print("Enter the no. of frames : "); 22 | nf=Integer.parseInt(in.readLine()); 23 | p.println(nf); 24 | if(nf<=sws-1) 25 | { 26 | 27 | System.out.println("Enter "+nf+" Messages to be send\n"); 28 | for(i=1;i<=nf;i++) 29 | { 30 | sbuff[sptr]=in.readLine(); 31 | p.println(sbuff[sptr]); 32 | sptr=++sptr%8; 33 | } 34 | sws-=nf; 35 | System.out.print("Acknowledgment received"); 36 | ano=Integer.parseInt(in1.readLine()); 37 | System.out.println(" for "+ano+" frames"); 38 | sws+=nf; 39 | } 40 | else 41 | { 42 | System.out.println("The no. of frames exceeds window size"); 43 | break; 44 | } 45 | System.out.print("\nDo you wants to send some more frames : "); 46 | ch=in.readLine(); p.println(ch); 47 | } 48 | while(ch.equals("yes")); 49 | s.close(); 50 | } 51 | } 52 | 53 | --------------------------------------------------------------------------------