发明名称 基于UDP的穿越NAT设备的方法及系统
摘要 本发明公开了一种基于UDP的穿越NAT设备的方法,包括:客户端通过位于公网的探测服务器获取经过NAT映射后的IP地址和端口,并探测自身的NAT类型,NAT类型包括:开放型、防火墙型、堵塞型、对称型、全锥型、IP限制锥型及端口限制锥型;发送方客户端将经过NAT映射后的IP地址和端口及NAT类型通过位于公网的SIP服务器发送给接收方客户端;接收方客户端根据双方的NAT类型决策出双方各自的穿越策略,并将穿越策略通过所述SIP服务器发送给发送方客户端;发送方客户端和接收方客户端根据穿越策略进行穿越,以建立双方客户端的UDP连接。本发明还公开了一种基于UDP的穿越NAT设备的系统。本发明在不同类型NAT之间建立UDP通路,在传输大文件时减小服务器的负荷。
申请公布号 CN101938532B 申请公布日期 2013.07.24
申请号 CN201010284135.7 申请日期 2010.09.17
申请人 北京神州泰岳软件股份有限公司 发明人 崔晓宇;马昭
分类号 H04L29/12(2006.01)I;H04L29/06(2006.01)I 主分类号 H04L29/12(2006.01)I
代理机构 北京路浩知识产权代理有限公司 11002 代理人 王莹
主权项 一种基于UDP的穿越NAT设备的方法,其特征在于,包括以下步骤:S1:客户端通过位于公网的探测服务器获取经过NAT映射后的IP地址和端口,并探测自身的NAT类型,其中所述客户端获得自身的经过NAT映射后的IP地址和端口在登录服务器时进行;S2:发送方客户端将经过NAT映射后的IP地址和端口及NAT类型通过位于公网的SIP服务器发送给接收方客户端;S3:所述接收方客户端根据双方的NAT类型决策出双方各自的穿越策略,并将穿越策略通过所述SIP服务器发送给发送方客户端;S4:发送方客户端和接收方客户端根据穿越策略进行穿越,以建立发送方客户端和接收方客户端的UDP连接;其中,所述步骤S4中根据穿越策略穿越过程中,当客户端A的NAT为开放型,客户端B的NAT为除了堵塞型的其它类型时,包括以下步骤:B端向A端发送探测包,等待探测回应;A端收到探测包后向B端发送探测回应;B端收到探测回应后,探测结束;或,所述步骤S4中根据穿越策略穿越过程中,当客户端A的NAT为全锥型或IP限制锥形,客户端B的NAT为除了堵塞型的其它类型时,包括以下步骤:A端向B端任一端口发送打洞包,以在NAT设备上建立A到B的路由表;B端向A端发送探测包,等待探测回应;A端收到探测包后向B端发送探测回应;B端收到探测回应后,探测结束;或,所述步骤S4中根据穿越策略穿越过程中,当客户端A和B的NAT都为端口限制锥型或防火墙时,包括以下步骤:B端向A端对应的应用程序端口发送打洞包,以在NAT设备上建立B到A的路由表;A端向B端发送探测包,等待探测回应;B端收到探测包后向A端发送探测回应;A端收到探测回应后,探测结束;或,当客户端A的NAT为端口限制锥形或防火墙型,客户端B的NAT为对称型时,包括以下步骤:A端向B端对应的应用程序端口及所述应用程序端口的临近端口发送打洞包,以在NAT设备上建立A到B的路由表,所述临近端口为按端口号顺序在所述应用程序端口的前后各5个端口;B端向A端发送探测包,等待探测回应;A端收到探测包后向B端发送探测回应;B端收到探测回应后,探测结束。
地址 100089 北京市海淀区万泉庄路28号万柳新贵大厦A座5层