FTP has nothing to do with port triggering and everything to do with a statically forwarded port. Its the algorithm in the router that handles the random upper level ports that are used by the server software. Initial negotiation is done by a user outside on the WAN who can access the server because port 21 is forwarded (an open door if you will). Then the software authenticates the user (name/password, however you have set it up) and then starts to manage the request, which means opening up data ports for the actual transfer, the router handles all of this properly so that the outgoing is sent to the originator etc....)
Port triggering is different in that its designed to allow dynamic port forwarding An outgoing request by a user ON THE LAN, tells the router (by means of the port being used on the outgoing request) to open or forward a port or range of ports for a limited period of time, so that incoming traffic on different ports (those opened) can get through the router NAT and to the sender.
In order to use the same service on a different LAN computer, you have to manually replace the LAN computer's IP address in the forwarding port with another LAN computer's IP address.
Trigger port forwarding solves this problem by allowing computers on the LAN to dynamically take turns using the service. The router records the IP address of a LAN computer that sends traffic to the WAN to request a service with a specific port number and protocol (a "trigger" port). When the router's WAN port receives a response with a specific port number and protocol ("incoming" port or port range as designated by the end user), the router forwards the traffic to the LAN IP address of the computer that sent the request. After that computer's connection for that service closes, another computer on the LAN can use the service in the same manner. This way you do not need to configure a new IP address each time you want a different LAN computer to use the application.
For example:
Jane requests a file from the Real Audio server (port 7070).
Port 7070 is a "trigger" port and causes the router to record Jane's computer IP address.
The router associates Jane's computer IP address with the "incoming" port range of 6970-7170 because that what has been set up in the port triggering menu!!
The Real Audio server responds to Janes request and uses the expected port or ports ranging between 6970-7170.
The ZyWALL forwards the traffic to Jane's computer IP address.
Only Jane can connect to the Real Audio server until the connection is closed or times out. The router times out depending on the brand in use, both UDP and TCP. Should be configurable or at least known.
Port forwarding (static) is the process of opening a door in the router,
by the user, so that an outside person/entity can access a PC or server
behind the router.
The door is always open and requires no action by the users on the LAN.
Port
triggering is based on an OUTGOING request by a user on the LAN. It
allows dynamic port forwarding to temporarily occur, so that the user
can access services (REAL AUDIO) or gaming etc..... It assists the
users behind the PC. A method of sharing a port or port forwarding
range.
FTP algorithm is port negotiation between the FTP software
and the router. Initial communication is done by an outside (WAN side)
PC/user, using the open door/port 21. A standard port forwarding case.
The
FTP program then selects random ports and communicates that with the
WAN side user. The router firmware detects which ports are being used
and ensures that traffic from the WAN user reaches the FTP server, on
the high numbered ports.
This traffic is normally uploading by the
WAN User and thus the ports need to be open so that the return packets
(Ack) which communicate progress of the upload can reach the FTP server.
The other traffic would be in the case of downloading data to the
server by the WAN side user.
It is not triggering of a set range
of identified ports, its a negotiation of randomly assigned ports
between the router and FTP software.
REFERENCES
http://www.dslreports.com/forum/remark,14446487
http://en.wikipedia.org/wiki/Port_triggering
Port triggering is different in that its designed to allow dynamic port forwarding An outgoing request by a user ON THE LAN, tells the router (by means of the port being used on the outgoing request) to open or forward a port or range of ports for a limited period of time, so that incoming traffic on different ports (those opened) can get through the router NAT and to the sender.
In order to use the same service on a different LAN computer, you have to manually replace the LAN computer's IP address in the forwarding port with another LAN computer's IP address.
Trigger port forwarding solves this problem by allowing computers on the LAN to dynamically take turns using the service. The router records the IP address of a LAN computer that sends traffic to the WAN to request a service with a specific port number and protocol (a "trigger" port). When the router's WAN port receives a response with a specific port number and protocol ("incoming" port or port range as designated by the end user), the router forwards the traffic to the LAN IP address of the computer that sent the request. After that computer's connection for that service closes, another computer on the LAN can use the service in the same manner. This way you do not need to configure a new IP address each time you want a different LAN computer to use the application.
For example:
Jane requests a file from the Real Audio server (port 7070).
Port 7070 is a "trigger" port and causes the router to record Jane's computer IP address.
The router associates Jane's computer IP address with the "incoming" port range of 6970-7170 because that what has been set up in the port triggering menu!!
The Real Audio server responds to Janes request and uses the expected port or ports ranging between 6970-7170.
The ZyWALL forwards the traffic to Jane's computer IP address.
Only Jane can connect to the Real Audio server until the connection is closed or times out. The router times out depending on the brand in use, both UDP and TCP. Should be configurable or at least known.
Port forwarding (static) is the process of opening a door in the router,
by the user, so that an outside person/entity can access a PC or server
behind the router.
The door is always open and requires no action by the users on the LAN.
Port
triggering is based on an OUTGOING request by a user on the LAN. It
allows dynamic port forwarding to temporarily occur, so that the user
can access services (REAL AUDIO) or gaming etc..... It assists the
users behind the PC. A method of sharing a port or port forwarding
range.
FTP algorithm is port negotiation between the FTP software
and the router. Initial communication is done by an outside (WAN side)
PC/user, using the open door/port 21. A standard port forwarding case.
The
FTP program then selects random ports and communicates that with the
WAN side user. The router firmware detects which ports are being used
and ensures that traffic from the WAN user reaches the FTP server, on
the high numbered ports.
This traffic is normally uploading by the
WAN User and thus the ports need to be open so that the return packets
(Ack) which communicate progress of the upload can reach the FTP server.
The other traffic would be in the case of downloading data to the
server by the WAN side user.
It is not triggering of a set range
of identified ports, its a negotiation of randomly assigned ports
between the router and FTP software.
REFERENCES
http://www.dslreports.com/forum/remark,14446487
http://en.wikipedia.org/wiki/Port_triggering