SIP - how is it working ? documentation?

Hello

I want to make several nat rules on my SIP (control and RTP ) traffic.
But i can’t find any good documentation. How is it working for voice and asterisk ?

After initialisation session with server (SIP invite and ACK):
Is it sending UDP datagrams with the destination IP in payload (in SIP package?)?
How RTP traffic is created/initiated ?

My communication model looks like SIP_client1->SIP_server->…
Could anybody describe what’s going one after the SIP invite/ack phase ?

Thanx

Refer rfc 3261 documents.

Thanks,
Suresh