The two primary techniques that I'm familiar with are Port Triggering and Port Forwarding.
Port triggering is basically a method of opening ports on an "as needed" or "on demand" basis.
I think port triggering is most applicable for applications and softphones that are running on your PC and only need to access the Internet on a periodic basis.
Port forwarding is more applicable when you have devices that need to be listening for incoming traffic on a continuous basis. If you had an VoIP ATA phone adapter that has an associated phone number and needed to be always listening for incoming calls, then using port forwarding may be more applicable to your situation.
With port forwarding, your specified forwarded ports will be open 24/7, whereas with port triggering you are only allowing specified ports to be open on an as needed basis and are otherwise closed.