FTP

최근 수정 시각:

파일:나무위키+유도.png   Foil-screened Twisted Pair에 대해서는 연선 케이블 문서를 참조하십시오.


1. 개요

1. 개요[편집]

파일 전송 프로토콜(File Transfer Protocol)의 약자로 TCP/IP 네트워크 상에서 컴퓨터들이 파일을 교환하기 위해 1971년에 최초로 공개된 통신 규약이다. 네트워크에 연결된 컴퓨터끼리 데이터를 원활하게 교환하기 위한 목적으로 개발되었다. 파생형으로 TLS 프로토콜과 결합한 FTPS, SSH 프로토콜과 결합한 SFTP가 있다. FTP와 FTPS는 보통 제어용으로 21번 포트 및 데이터 전송용으로 20번 포트를, SFTP는 보통 22번 포트를 쓰며 FTPS와 SFTP는 보안 전송이라는 특성 상 FTP보다 파일 전송 속도가 느린 편.

네트워크에서 사용하는 프로토콜 중에서는 드물게 제어 채널과 전송 채널이 분리되어 있다. 쉽게 설명하면 전화기 한 대와 팩스 한 대를 가지고 전화기로는 지금 가지고 있는 자료에 대해서 물어보고, 필요한 자료를 요청하면 팩스로 열심히 자료를 전송 받는 형태이다.

FTP를 사용하여 데이터를 주고받기 위해서는 FTP 서버와 FTP 클라이언트가 필요하다. 원래 데이터 교환을 목적으로 개발된 것이기 때문에 안정성과 신뢰성이 보장된다. 그렇기에 회사나 동아리 같은 곳에서 FTP 서버 하나 구축해두면 자료를 공유할 때 상당히 유용한 물건이 된다. 하지만 국내의 경우에는 자료를 공유하기 위한 대안이 많다 보니 있으면 유용하지만 없어도 그만인 수준.

많은 FTP 클라이언트들이 휘황찬란한 GUI 환경을 제공하지만, 본래는 아래 그림과 같이 명령어 입력 방식이다. GUI 환경에서 작동하는 FTP 클라이언트들은 단지 명령어들을 자동으로 전송해 주는 것 뿐이다.

파일:attachment/cmdftp.png[1]

블리자드의 FTP 서버


이런 형태의 FTP 클라이언트는 GUI를 사용하지 못하는 환경에서 아직도 매우 널리 사용된다. 특히 유닉스 계열 서버를 관리하는 관리자들은 telnet/SSH와 함께 필수로 익혀야 하는 기능이다.

많은 사람들이 잘 모르는 사실이지만, 웹 브라우저도 FTP를 지원한다. 위의 명령어 입력 방식이 어려울 경우에는 이 방법을 써도 된다. 인터넷 주소창에서 http:// 대신 ftp:// 를 붙이고 FTP 서버 주소를 치면 ID와 비밀번호를 묻는 화면이 뜨고, 그걸 치고 들어가면 브라우저 화면에 FTP 서버의 파일 목록이 링크 형태로 주르륵 뜬다. 이것은 대용량 파일 전송은 웹에서 사용하는 HTTP 프로토콜보다는 파일 전송용으로 나온 FTP 프로토콜이 유리한 점이 많기 때문에 지원하는 것. 엣지에서는 지원하지 않는다.

1990년대에는 대부분의 소프트웨어 업체나 게임 업체 등이 별도의 FTP 서버를 구축하고 익명의 접속을 허용한 후에 자신들이 개발한 프로그램의 셰어웨어나 데모 버전, 패치 등을 공개하곤 하였다. 사실 그 시절에는 지금처럼 인터넷이 발달한 것이 아니었기에 FTP 말고는 불특정 다수에게 효과적으로 자료를 배포할 수 있는 방법이 거의 없었다. 다만 현재는 자사 웹사이트에 공개하는 게 여러 모로 이득이고, 패치같은 것은 프로그램 내에 패치 업데이트용 프로그램을 내장시키는 추세라서 FTP에 대해 배우는 곳도 많지 않고, 사장되는 추세이다.

외국의 다른 게임 회사들 대부분은 비슷한 방식으로 FTP 서버를 운용하는 곳이 있고 간혹 예전에 발매했던 추억의 게임들을 FTP에서 무료로 받을 수 있는 경우도 있는 경우도 있으니 찾아보는 것도 나쁘지는 않다.

리눅스 배포판과 각종 리눅스의 중요 오픈소스 소프트웨어들은 FTP로 배포되는 경우가 많다. yum이나 apt와 같은 각종 리눅스 저장소도 FTP로 운영되고 있으며, 유명 배포판의 경우에는 전 세계에 저장소 미러링 FTP 서버를 운영하는 경우가 많다. 한국에서는 카이스트, Daum, 네오위즈에서 운영하는 FTP 서버가 유명하다.

아래는 주요 FTP 클라이언트 목록이다.

  • Cute FTP

  • FileZilla - 오픈소스 FTP 클라이언트 및 서버를 지원한다.

  • SmartFTP

  • Sunshine(앱) - PC와 스마트폰, 타블릿의 FTP를 설정해서 파일을 전송하는 앱.

  • Windows 탐색기 - 보통 로컬 파일 열람을 위해 사용되는 프로그램이지만 주소줄에 FTP 주소를 입력하면 FTP 클라이언트처럼 사용이 가능하다. 단 기능은 허접하다. 따로 설치된 클라이언트가 없을 때 잠깐잠깐 사용할 용도로는 좋다.

  • WinSCP

  • WS_FTP

  • Xftp - FTP와 SFTP 프로토콜을 지원하며 사용하기 쉬운 UI 및 Xshell과의 연동 가능. 개인 사용자에 한해 무료이다.

  • 알드라이브 - 이스트소프트에서 개발된 프로그램. 널리 사용되지만 업데이트가 뜸하고 어딘가 문제가 많다.

[1] 명령 프롬프트에서 ftp라고 쳐서 ftp를 실행한 것