2009-08-11 5 views
3

FTP RFC (RFC959)를 읽었을 때 필자는 사용 된 적이없는 몇 가지 모드를 확인했으며, 널리 사용되는 FTP 소프트웨어 (예 : vsftpd)에 의해 구현되지 않은 것 같습니다. 특히, STRU 명령의 경우 파일 모드 "STRU F"만 일반적으로 사용되며 MODE 명령의 경우 "MODE S"스트림 모드 만 일반적으로 사용됩니다.어떤 FTP 전송 모드가 널리 사용됩니까?

그래서 질문입니다, 상호 운용 가능한 FTP 클라이언트와 서버 소프트웨어를 개발하기위한 가장 좋은 방법은 다음과 같은 경우 :

  • 는 다른 STRU 옵션 (기록 페이지)를 지원하는 데 유용을? 이들은 아주 오래된 구식처럼 보입니다.
  • 다른 모드 옵션 (블록 및 압축)을 지원하는 것이 유용합니까? 나는 압축 된 점을 볼 수 있지만, 나는 어떤 클라이언트/서버가 블록이있을 것으로 기대하는지 궁금하다.
  • 기존 FTP 구현이 어떤 옵션을 지원하는지에 대한 설문 조사가 있습니까?

(모드 1에서 왜 압축이 유용한 지 알 수 있습니다. 클라이언트/서버가 블록 모드를 기대하는지 궁금합니다.)

답변

3

사용자 지정 FTP 서버를 유지 관리하고 이러한 종류의 질문에 대해서는 http://cr.yp.to/ftp.html을 정기적으로 참조하십시오. 구체적으로, TYPE/MODE/STRU에 대한 제안을 http://cr.yp.to/ftp/type.html에 따라 수행했지만 지금까지 아무런 문제가 없었습니다.

연결자가 "STRU F"외에도 STRU 요청을 보낸 것을 본 클라이언트가 없습니다. 마찬가지로 "MODE S"만 보았습니다.

0

오픈 소스 FTP 클라이언트와 서버 (특히 적극적으로 업데이트되는 서버)를 검색하고 이들 중 얼마나 많은 사람들이 이러한 "폐기 된"전송 모드를 구현하는지 살펴 보겠습니다.

한 번 (약 7 년 전) FTP 클라이언트를 만들었고 가장 기본적인 전송 모드 (ASCII와 이진, 올바르게 기억한다면)를 구현했습니다. 서버를 사용할 때 어떤 서버에도 문제가 없었습니다.

+0

ASCII는 전송 모드가 아니며 표현 유형입니다. 전송 모드 또는 MODE는 S, B, C (스트림, 블록, 압축) 중 하나입니다. –

0

당신은 대부분 상호 운용성에 관심이있는 것 같습니다. 대답은 클라이언트와 서버간에 약간 다릅니다.

서버의 경우 클라이언트가 사용하는 기본 모드를 구현해야합니다. 모든 클라이언트에 대해 최소 하나의 구성을 지원해야하므로 조합 수가 상대적으로 적어야합니다. 최소 이상으로 액티브 -와 - 수동 모드를 지원하는 것이 아마도 중요한 추가 일 것입니다 (모질라 커뮤니티는 오랫동안 수동적 지원을 원했고 it is probably never going to happen).

클라이언트 인 경우 URL을 제대로 지원하고 날짜/시간을 처리하는 것이 가장 큰 장벽 일 수 있습니다.

관련 문제