- support multiple client connections at the same time - first client has control - additional clients can see the traffic - read-only: requests from controlling client and responses from tty device - need to avoid unintentional lock up if controlling client stays connected but user goes away and forgets about it - additional clients should be able to force disconnecting controlling client - first additional client that forces this becomes controlling client - require username when connecting to the server - allows tracking users - makes the feature above (forcing disconnect) easier to use - username can be connected to a person easier than an IP address