udp反向代理,可以理解为端口转发,如:
ip1:p1 => (ipD:pD ===> ipS:pS)
代理服务器要解决的问题:
(1)接收:用recvfrom,接收一个包,记录来源端口pSrc
(2)准备发送包:创造一个socket,bind任意端口,然后调用getsockname获得绑定的端口,pProxy
(3)建立映射关系pSrc<=>pProxy
(4) 向服务器发送包,用ipProxy:portProxy
(5)调用异步接收WSARecvFrom
(6)异步接收完毕后:根据socket绑定的pProxy,找到pSrc,发送回包给客户端,解除pSrc<=>pProxy关联