diff --git a/src/Controller.java b/src/Controller.java
index 3d5336387acde9c46420223235ad1843e69540bd..e33510a4015ac4f7e5dcd2ce372c7000bc33648d 100644
--- a/src/Controller.java
+++ b/src/Controller.java
@@ -1,5 +1,7 @@
 import java.io.*;
 import java.net.*;
+import java.util.ArrayList;
+import java.util.List;
 
 public class Controller {
 
@@ -20,24 +22,41 @@ public class Controller {
         int rebalance_period = Integer.parseInt(args[3]);
 
         System.out.println("Started");
+        List<Socket> ports = new ArrayList<>();
 
         try {
             ServerSocket socket = new ServerSocket(cport);
-            socket.setSoTimeout(10 * timeout);
             for(;;) {
                 try {
                     if(R > 0) {
-                        Socket client = socket.accept();
+                        System.out.println("waiting for Dstore to join");
+                        Socket client = socket.accept(); // establish a connection between client and server
+                        System.out.print(R + ": ");
+                        ports.add(client);
                         R = R - 1;
-                    } else {
 
+                        BufferedReader in = new BufferedReader(
+                                new InputStreamReader(client.getInputStream()));
+                        String line;
+                        while((line = in.readLine()) != null)
+                            System.out.println(line + " received");
+                        client.close();
+
+                    } else {
+                        break;
                     }
 
+
                 } catch (Exception e1) {
                     System.out.println(e1);
                 }
             }
 
+            /*
+            #TODO
+            - use threads to connect multiple clients to a server
+             */
+
         } catch (IOException e) {
             System.out.println("error" + e);
         }
diff --git a/src/Dstore.java b/src/Dstore.java
index bb258a8c159c2cd95fb34aeb1ec399c64684af56..9dfb9ed5c31b20fe69a632a08112ec4ede8c0e01 100644
--- a/src/Dstore.java
+++ b/src/Dstore.java
@@ -1,3 +1,6 @@
+import java.io.*;
+import java.net.*;
+
 public class Dstore {
 
     public static void main (String[] args) {
@@ -11,6 +14,23 @@ public class Dstore {
         // where to store the data locally
         String file_folder = args[3];
 
-        System.out.println("Adding");
+        InetAddress ip;
+
+        try {
+            ip = InetAddress.getLocalHost();
+            Socket socket = new Socket();
+            socket.connect(new InetSocketAddress(ip, cport), timeout);
+
+            for(;;) {
+                PrintWriter out = new PrintWriter(socket.getOutputStream());
+                out.println("adding Dstore");
+                out.flush();
+                System.out.println("Dstore was added");
+                Thread.sleep(1000);
+            }
+
+        } catch (Exception e) {
+            System.out.println("error " + e);
+        }
     }
 }
\ No newline at end of file