3.5. Настройка FTP
3.5. Настройка FTP
Протокол FTP (File Transfer Protocol) является устоявшимся и достаточно сложным многопортовым протоколом, реализация которого в комплекте распределения нагрузки вызывает определенные сложности. Чтобы понимать характер сложностей, надо понимать основные принципы работы FTP.
3.5.1. Принципы работы FTP
Обычно взаимодействие клиента с сервером происходит так: клиент открывает соединение с определенным портом, а сервер отвечает на запросы через этот порт. При подключении клиента к FTP-серверу будет установлено соединение через порт 21. Затем клиент сообщает серверу тип устанавливаемого соединения — активный или пассивный. Тип определяет дальнейшее поведение сервера и порты для передачи.
Существует два типа соединений:
- Активные соединения
- Сервер сам подключается к клиенту с порта 20 к порту клиента с большим номером. Все данные с сервера передаются через это соединение.
- Пассивные соединения
- Клиент просит сервер указать порт для пассивного соединения, при этом номер порта должен быть больше 10000. Сервер сопоставляет сеансу порт, устанавливает с ним связь на время сеанса и сообщает номер клиенту. Клиент открывает соединение через этот порт. Каждый запрос данных со стороны клиента приводит к созданию отдельного соединения для передачи данных. В большинстве случаев современные клиенты FTP по умолчанию устанавливают пассивные подключения к серверам FTP.
Примечание
Не сервер, а клиент задает тип соединения. Это значит, что для эффективного использования FTP в кластере маршрутизаторы LVS должны поддерживать и активные, и пассивные соединения.
При взаимодействии клиента и сервера может быть открыто большое число портов, о которых Piranha и IPVS могут и не знать.