Targets

... -j LOG --log-prefix "KMF: "

The Target of a rule defines what to do if a packet matches the rule. The target is defined by the -j <target> [target-options] option at the end of the filtering/manipulation options at the end of the rule. There are two different types of targets terminating and non-terminating. If a target is terminating the packet will not be passed to rules after the matching one.

A good example for a terminating target is ... -j DROP. The DROP target that tell the kernel to drop (delete) the matching packet which means that it will not reach it's destination. And it's quiet logical that you don't want to check the packet against the other (later in the chain) defined rule as you already know what to do with it.

For a non-terminating target have a look at the code snip above. The here used LOG target lets the kernel log the packets matching this rule to the syslog. It wouldn't be very useful if the packets would stop here therefore the packets continue the way through the kernel.