telnet 만들고 있는데요...

dltkddyd의 이미지

지금 원격지에서 AF_INET 이라는 도메인 유형으로 클라이언트에서 서버로 접속해 명령을 실행하고 그 결과를 클라이언트에서 받는 프로그램을 만들고 있습니다. 이른바 소켓 프로그램이고요. telnet과 동일한 프로그램을 만들고 싶었는데, 몇 가지 문제가 발생합니다. 클라이언트와 서버간에 접속은 원활한 편입니다. 접속이 성공적으로 된 상태에서

ls -l
rm -f file

과 같은 명령은 서버에서 실행되 그 결과를 클라이언트가 제대로 돌려받지만,

cd ..

와 같이 디렉토리를 옮기는 명령을 실행하면 그 다음부터는 ls, rm과 같은 명령이 제대로 실행되지 않습니다. 구조는 다음과 같습니다.

클라이언트가 실행될 명령을 send 함수로 보내고
서버는 그 명령을 recv 함수로 받아서 내부에서 명령을 실행해 그 결과를 파일에 저장한다.
그리고 그 파일을 읽은 내용을 send 함수로 클라이언트로 내보낸다.
그러면 클라이언트는 그 정보를 recv로 받아서 출력한다.

왜 cd ..

다음부터는 다른 명령을 실행되지 않는 것인지 궁금합니다. 소켓을 이용해서 서버의 다른 디렉토리로 옮기는 것이 불가능한 것인가요?