I just want to know if anybody can comment following text. Any comments are welcomed:
Becuse there's NAT on GGSN and after your mobile phone has established PDP context it has assigned IP address from operator private (10.xxx.xxx.xxx typically or 192.168.xxx.xxx) pool it's not possible from outer world behind the operator firewall to access the phone (send UDP packet or establish TCP connection). The only possibility is to establish permanent TCP connection from mobile device to the server located in the network mobile(public Internet in this case).
After establishing such connection, server knows mobile IP address and can distribute it to the other users in some way (SIP for example). If other mobile wants to communicate with me it uses its established TCP connection (or establish new one, leaving one connection for "controlling" only- as FTP or RTCP protocol are doing...) and send data to the server. Server just simply connect originator TCP conectoion with receiver TCP connection and routes the TCP data stream to the other side... In other words it just resend the data form one end to the other.
Thanks a lot for reading.