Nets of cellular robots are robots that consist of many interconnected robot elements. Such robots can become versatile, due to the large numbers of degrees of freedom and the variety of ways they can be interconnected. However, one has to be careful when connecting two elements, in order not to lose versatility by introducing unnecessary kinematical constraints through the joint. For instance, a cellular robot connected as a linear structure should be able to move a region of its body, while the rest of the robot remains in place. The problem is simple in two dimensions, when joints are bending joints, but considerably harder in three dimensions, where joints are universal joints with two degrees of freedom. We will discuss several essential properties of joints for `snake' robots, derived from physical constraints, and tasks that the robot is expected to perform. We will also give examples of tasks that robots conforming to these requirements can perform.