After the client connects, the server sends a response to the client, either accepting or rejecting the connection. This initial response is called the greeting . If the server accepts the connection, the client sends zero or more requests to the server. The server sends one or more responses to the client. The last response either accepts or rejects the request.
Previous responses are marks .
Similarly, the server is permitted to send the above strings at any moment, and the client must interpret them the same way. A request is a string of bytes. RFC 959 states in the text that multiple spaces are allowed before the parameter, but it states in the formal syntax that only one space is allowed before the parameter. Implementors generally agree that the formal syntax is correct. I am not aware of any clients that send two spaces.