컴퓨터 네트워크
FTP: File Transfer Protocol
kiki1875
2023. 4. 1. 10:49
FTP 란?
- 컴퓨터 간에 파일을 전송하기 위한 표준 인터넷 프로토콜
- Client - Server 모델
- Client: 파일 업로드/다운로드
- Server: 파일 전송 요청
- TCP 사용하여 통신 -> 신뢰성 있는 연결

- Client 가 Server 에게 port 21번으로 TCP 연결 요청을 보낸다
- Client 는 원격 디렉토리를 브라우징 권한을 받고/ 전송 요청
- Server는 전송 요청을 받았을 때, server는 2번째 TCP data 연결을 시작한다 (port 20)
- Server는 파일 하나를 전송한 뒤 data 연결을 종료한다
- Server는 다른 파일 을 전송할 때, 새로운 TCP data 연결을 한다
- FTP Server는 state 를 유지한다.
PASV & EPSV

Active Mode
- Client 가 Server 접속 (port 21 사용), Data channel 로 port 5151 을 사용한다 명시
- Server 가 Client의 port 5150 에 응답 메세지를 보냄
- Server의 Data channel을 client의 port 5151에 연결
- Client 응답
Passive Mode
- Client 가 Server에 접속 (PASV 모드임을 명시)
- Server 가 응답 메세지와 함께, 데이터 전송을 위한 포트를 알려줌
- Client 는 data channel 에 데이터 요청
- Server 응답