当前位置: 首页 > 专利查询>索尼公司专利>正文

通信设备、通信系统、通信设备的控制方法以及程序技术方案

技术编号:10486513 阅读:131 留言:0更新日期:2014-10-03 15:47
本发明专利技术公开了通信设备、通信系统、通信设备的控制方法。所述通信设备包括:发送源映射算法获取部,其获取作为发送源映射算法的算法,该算法将外部地址和外部端口号分配给发送源的内部地址和内部端口号;目的地映射算法获取部,其获取作为目的地映射算法的算法,该算法将外部地址和外部端口号分配给目的地的内部地址和内部端口号;以及生成部,其在所述发送源映射算法比所述目的地映射算法更复杂的情况下生成被重新分配给所述目的地的内部地址和内部端口号的外部端口号。所述控制方法包括步骤:获取发送源映射算法;获取目的地映射算法;生成外部端口号。所述通信系统包括服务器和上述通信设备。根据本发明专利技术,能够提高各装置间直接通信成功的可能性。

【技术实现步骤摘要】
通信设备、通信系统、通信设备的控制方法以及程序
本专利技术涉及通信设备、通信系统、通信设备的控制方法以及程序。具体来说,本专利技术涉及与其它通信设备进行直接通信的通信设备、通信系统、通信设备的控制方法以及程序。
技术介绍
在相关技术中,使用NAT (Network Address Translat1n,网络地址转换)功能来暂时避免IPv4 (Internet Protocol vers1n4,互联网协议版本4)地址枯竭的问题。NAT功能表示将IP (Internet Protocol,互联网协议)地址转换为另一 IP地址的功能。近年来,经常使用能够转换IP地址以及端口号的NAPT (Network Address Port Translat1n,网络地址端口转换)或者被称作“ IP伪装”的NAT功能。 在NAPT中,例如,将外部IP地址和外部端口号分配给LAN(Local Area Network,局域网)内的内部IP (Internet Protocol,互联网协议)地址和内部端口号。由于诸如路由器的NAT设备能够分配多个外部端口号,因此,能够通过NAPT将多个内部IP地址和一个外部IP地址相互转换。以此方式,LAN内的多个装置可利用一个外部IP地址,且同时与外部装置进行通信。 这里,在NAT设备将外部端口号动态分配给LAN内的装置的情况下,LAN外部的装置难以获取与LAN内的装置对应的外部端口号。为解决这种问题,使外部装置在NAT设备的控制下访问装置被称作“NAT穿越”。 作为实现NAT穿越的方法,虽然存在使用者手动进行将外部端口号分配(即端口映射)给内部IP地址的方法,但由于使用者必须具有专门的知识,因此难以实行。因此,为自动进行端口映射,利用诸如UPnP (Universal Plug and Play,通用即插即用)和STUN(Simple Traversal of UDP through NATs, UDP对NAT的简单穿越)的协议。在这些协议中,在UPnP中仅能够进行静态端口映射,而且,除非NAT设备和装置适应UPnP,否则不适用,因此缺乏通用性。 同时,在STUN中,如果装置适应STUN,则可不依赖于NAT设备来进行NAT穿越。在STUN中,装置S能够调查关于通信对象的装置D的端口映射的算法。而且,在利用这种STUN的通信系统中,经常使用称作“打洞(hole punching)”的技术。在打洞过程中,例如,装置D通过装置D侧的NAT设备向装置S发送打洞包。通过这种打洞包,在装置D侧的NAT设备中注册(换言之,释放)能够用于与装置S通信的端口号。然而,如果在装置S侧也存在NAT设备,则该打洞包无法到达装置S。这是因为,此时,在装置S侧的NAT设备中未释放能够用于与装置D通信的端口号。 由于打洞包无法到达装置S,因此,装置S不可能获取在装置D侧的NAT设备中释放的端口号。因此,装置S根据通过STUN调查到的端口映射的算法来预测释放的端口号,并将包发送到该端口号。通过利用这些STUN和打洞,不同LAN内的装置相互间能够进行直接通信。通过进行装置间的直接通信,降低了服务器与装置间的通信量以及服务器的负荷。 为进行这样的直接通信,由于装置S和装置D必须预先获取对方的IP地址和端口号,因此,提出了这样一种通信系统,其中,服务器将IP地址等通知给上述各装置(参照专利文献 JP2005-45678A)。
技术实现思路
然而,在上述相关技术中,存在着直接通信失败的担忧。例如,当用于生成打洞包的装置D与另一装置S’进行通信时,装置S所预测的外部端口号可能被用在与所述装置S’的通信中。在此情况下,由于装置S所预测的端口号与打洞实际释放的端口号的值不同,因此装置S发送的包无法到达装置D。因此,直接通信失败。 鉴于这种状况进行了本专利技术,期望提高装置间直接通信成功的可能性。 根据本专利技术的第一实施例,提供了一种通信设备、一种通信设备的控制方法以及一种用于使计算机执行所述方法的程序。所述通信设备包括:发送源映射算法获取部,所述发送源映射算法获取部获取作为发送源映射算法的算法,该算法将外部地址和外部端口号分配给发送源的内部地址和内部端口号;目的地映射算法获取部,所述目的地映射算法获取部获取作为目的地映射算法的算法,该算法将外部地址和外部端口号分配给目的地的内部地址和内部端口号;以及生成部,所述生成部在所述发送源映射算法比所述目的地映射算法更复杂的情况下生成被重新分配给所述目的地的内部地址和内部端口号的外部端口号。这导致了这样的效果:在所述发送源映射算法比所述目的地映射算法更复杂的情况下生成被重新分配的外部端口号。 根据本专利技术的第一实施例,所述发送源映射算法获取部可以包括:映射调查请求包发送部,所述映射调查请求包发送部向多个不同的目的地发送作为映射调查请求包的多个包,所述多个包用于请求关于分配给所述发送源的内部地址和内部端口号的所述外部地址和所述外部端口号的通知;和映射调查应答包接收部,所述映射调查应答包接收部接收关于所述映射调查请求包的映射调查应答包,并且根据由所述映射调查应答包通知的外部地址和外部端口号来获取所述发送源映射算法。这导致了这样的效果:根据由所述映射调查应答包通知的外部地址和外部端口号获取所述发送源映射算法。 根据本专利技术第一实施例,所述通信设备可以还包括:发送源过滤算法获取部,其获取作为发送源过滤算法的算法,该算法判断是否使指向所述发送源的内部地址和内部端口号的包通过;和目的地过滤算法获取部,其获取作为目的地过滤算法的算法,该算法判断是否使指向所述目的地的内部地址和内部端口号的包通过。所述生成部在所述发送源过滤算法比所述目的地过滤算法更复杂的情况下,或者在所述发送源过滤算法和所述目的地过滤算法相同并且所述发送源映射算法比所述目的地映射算法更复杂的情况下可以生成所述外部端口号。这导致了这样的效果:在所述发送源过滤算法比所述目的地过滤算法更复杂的情况下,或者在所述发送源过滤算法和所述目的地过滤算法相同并且所述发送源映射算法比所述目的地映射算法更复杂的情况下生成所述外部端口号。 根据本专利技术的第一实施例,所述通信设备还可以包括:表,所述表被构造用来存储这样的标志,所述标志示出了:对于所述发送源映射算法和所述目的地映射算法的每种组合,所述发送源映射算法是否比所述目的地映射算法更复杂;和算法判定部,所述算法判定部根据与所述发送源映射算法和所述目的地映射算法的组合相对应的所述标志来判断所述发送源映射算法是否比所述目的地映射算法更复杂。所述生成部在所述算法判定部判定所述发送源映射算法比所述目的地映射算法更复杂的情况下可以生成所述外部端口号。这造成了这样的效果:根据对于所述发送源映射算法和所述目的地映射算法的各种组合存储在表中的标志,判断所述发送源映射算法是否比所述目的地映射算法更复杂。 根据本专利技术的第一实施例,所述通信设备还可以包括:同一内部网络地址判定部,所述同一内部网络地址判定部被构造用来判断所述发送源的内部地址和所述目的地的内部地址是否是同一局域网内的地址。所述算法判定部在所述发送源的内部地址和所述目的地的内部地址是位于不同局域网内的地址的情况下可以判断本文档来自技高网
...

【技术保护点】
一种通信设备,其包括:发送源映射算法获取部,所述发送源映射算法获取部获取作为发送源映射算法的算法,该算法将外部地址和外部端口号分配给发送源的内部地址和内部端口号;目的地映射算法获取部,所述目的地映射算法获取部获取作为目的地映射算法的算法,该算法将外部地址和外部端口号分配给目的地的内部地址和内部端口号;以及生成部,所述生成部在所述发送源映射算法比所述目的地映射算法更复杂的情况下生成被重新分配给所述目的地的内部地址和内部端口号的外部端口号。

【技术特征摘要】
2013.03.29 JP 2013-0723621.一种通信设备,其包括: 发送源映射算法获取部,所述发送源映射算法获取部获取作为发送源映射算法的算法,该算法将外部地址和外部端口号分配给发送源的内部地址和内部端口号; 目的地映射算法获取部,所述目的地映射算法获取部获取作为目的地映射算法的算法,该算法将外部地址和外部端口号分配给目的地的内部地址和内部端口号;以及 生成部,所述生成部在所述发送源映射算法比所述目的地映射算法更复杂的情况下生成被重新分配给所述目的地的内部地址和内部端口号的外部端口号。2.如权利要 求1所述的通信设备, 其中,所述发送源映射算法获取部包括: 映射调查请求包发送部,所述映射调查请求包发送部向多个不同的目的地发送作为映射调查请求包的多个包,所述多个包用于请求关于被分配给所述发送源的内部地址和内部端口号的所述外部地址和所述外部端口号的通知;和 映射调查应答包接收部,所述映射调查应答包接收部接收关于所述映射调查请求包的映射调查应答包,并且根据由所述映射调查应答包通知的外部地址和外部端口号来获取所述发送源映射算法。3.如权利要求1所述的通信设备,还包括: 发送源过滤算法获取部,其获取作为发送源过滤算法的算法,该算法判断是否使指向所述发送源的内部地址和内部端口号的包通过;和 目的地过滤算法获取部,其获取作为目的地过滤算法的算法,该算法判断是否使指向所述目的地的内部地址和内部端口号的包通过; 其中,所述生成部在所述发送源过滤算法比所述目的地过滤算法更复杂的情况下,或者在所述发送源过滤算法和所述目的地过滤算法相同并且所述发送源映射算法比所述目的地映射算法更复杂的情况下生成所述外部端口号。4.如权利要求1至3中任一项所述的通信设备,还包括: 表,所述表被构造用来存储这样的标志,所述标志示出了:对于所述发送源映射算法和所述目的地映射算法的每种组合,所述发送源映射算法是否比所述目的地映射算法更复杂;和 算法判定部,所述算法判定部根据与所述发送源映射算法和所述目的地映射算法的组合相对应的所述标志来判断所述发送源映射算法是否比所述目的地映射算法更复杂; 其中,所述生成部在所述算法判定部判定所述发送源映射算法比所述目的地映射算法更复杂的情况下生成所述外部端口号。5.如权利要求4所述的通信设备,还包括: 同一内部网络地址判定部,所述同一内部网络地址判定部被构造用来判断所述发送源的内部地址和所述目的地的内部地址是否是同一局域网内的地址; 其中,所述算法判定部在所述发送源的内部地址和所述目的地的内部地址是位于不同局域网内的地址的情况下判断所述发送源映射算法是否比所述目的地映射算法更复杂。6.如权利要求4所述的通信设备,还包括: 地址类型判定部,地址类型判定部被构造用来判断被分配的地址是否是所述内部地址;其中,所述算法判定部在所述被分配的地址是所述内部地址的情况下判断所述发送源映射算法是否比所述目的地映射算法更复杂。7.如权利要求4所述的通信设备,还包括: 转换装置判定部,所述转换装置判定部被构造用来判断发送源转换装置是否与目的地转换装置相同,所述发送源转换装置执行所述发送源映射算法并且将所述发送源的内部地址和内部端口号转换为外部地址和外部端口号,所述目的地转换装置执行所述目的地映射算法并且将所述目的地的内部地址和内部端口号转换为外部地址和外部端口号; 其中,所述算法判定部在所述发送源转换装置与所述目的地转换装置不同的情况下判断所述目的地映射算法是否比所述发送源映射算法更复杂。8.如权利要求7所述的通信设备,还包括: 环回判定部,所述环回判定部被构造用来判断所述发送源转换装置是否进行环回处理,所述环回处理将来自被分配给所述发送源的内部地址的外部地址的包转送至与所述发送源的所述内部地址相对应的外部地址; 其中,所述算法判定部在所述发送源转换装置与所述目的地转换装置不同的情况下,或者在所...

【专利技术属性】
技术研发人员:佐原保徳初川健介岩崎拓史菅原崇行吉村英明
申请(专利权)人:索尼公司
类型:发明
国别省市:日本;JP

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1