Changeset 28


Ignore:
Timestamp:
Aug 21, 2012 12:30:35 PM (5 years ago)
Author:
psaiteja
Message:

Working VSN server implementation. It runs a UDP server to listen to client UDP hello messages (to register their IP and port numbers), and to send VSN PUSH updates. It runs a TCP server to handle the web requests of the users. It also takes in udp and tcp port numbers, a alpha parameter (as stated in the VSN paper) and the expected max number of users at the server as command line parameters.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • VSNServer/src/ServerProxy.java

    r26 r28  
    3636                int port = 5556; 
    3737                int udp_port = 5601; 
     38                double alpha_main =  21969.6; 
     39                int maxusers_main = 100; 
     40                 
     41                if(args.length >= 1){ 
     42                        port = Integer.parseInt(args[0]); 
     43                } 
     44                if(args.length >= 2){ 
     45                        udp_port = Integer.parseInt(args[1]); 
     46                } 
     47                if(args.length >= 3){ 
     48                        alpha_main = Double.parseDouble(args[2]); 
     49                } 
     50                if(args.length >= 4){ 
     51                        maxusers_main = Integer.parseInt(args[3]); 
     52                } 
     53 
    3854                 
    3955                // create and start the ServerProxy thread, using a 5 second timeout 
    4056                // value to keep the threads from piling up too much 
    4157                System.err.println("  **  Starting Server on port " + port + ". Press CTRL-C to end.  **\n"); 
    42                 ServerProxy sp = new ServerProxy(port,udp_port, 5); 
     58                ServerProxy sp = new ServerProxy(port,udp_port, 5, alpha_main, maxusers_main); 
    4359                sp.setDebug(1, System.out);              
    4460                sp.start(); 
     
    7086                thisPort = port; 
    7187                UDPport = udp_port; 
    72         } 
    73          
    74         public ServerProxy (int port, int udp_port, int timeout) 
     88                setMThreshold(); 
     89        } 
     90         
     91        public ServerProxy (int port, int udp_port, int timeout, double alphamain, int maxusersmain) 
    7592        { 
    7693                thisPort = port; 
    7794                UDPport = udp_port; 
    7895                ptTimeout = timeout; 
     96                alpha = alphamain; 
     97                max_users = maxusersmain; 
     98                setMThreshold(); 
     99        } 
     100         
     101        public void setMThreshold(){ 
     102                m_threshold = (int)((70*max_users+1.206*(alpha*0.1+70))/(0.14004*alpha+70*2.4004)); 
    79103        } 
    80104         
     
    383407         
    384408        public void sendhashtoall(String newhash, boolean exclude){ 
     409                System.out.println("Added the entry "+newhash+" to push list and sending it to all users"); 
    385410                String clientip; 
    386411                int port; 
Note: See TracChangeset for help on using the changeset viewer.