CN116846707A - 用于提供upnp服务的方法、网关设备、存储介质和程序产品 - Google Patents

用于提供upnp服务的方法、网关设备、存储介质和程序产品 Download PDF

Info

Publication number
CN116846707A
CN116846707A CN202210300235.7A CN202210300235A CN116846707A CN 116846707 A CN116846707 A CN 116846707A CN 202210300235 A CN202210300235 A CN 202210300235A CN 116846707 A CN116846707 A CN 116846707A
Authority
CN
China
Prior art keywords
information
gateway
list
terminal
predetermined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210300235.7A
Other languages
English (en)
Inventor
钮丽杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Arris Enterprises LLC
Original Assignee
Arris Enterprises LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Arris Enterprises LLC filed Critical Arris Enterprises LLC
Priority to CN202210300235.7A priority Critical patent/CN116846707A/zh
Priority to PCT/US2023/015154 priority patent/WO2023183159A1/en
Publication of CN116846707A publication Critical patent/CN116846707A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • H04L41/0809Plug-and-play configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2801Broadband local area networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/2847Home automation networks characterised by the type of home appliance used
    • H04L2012/2849Audio/video appliances

Abstract

本公开内容涉及用于提供UPNP服务的方法、网关设备、存储介质和程序产品。在该方法中,由网关设备获取包括与预定设备类型相关的预定设备类型信息的设备列表;基于终端设备连接到网关设备,由网关设备获取终端设备的终端设备信息,并将终端设备信息与预定设备类型信息进行比较;确定终端设备信息与预定设备类型信息相匹配;以及基于所述确定,由网关设备向终端设备提供UPNP服务。通过网关设备上的UPNP功能的智能化控制,能够兼顾需要UPNP服务的设备的通信需求和网络的安全性。

Description

用于提供UPNP服务的方法、网关设备、存储介质和程序产品
技术领域
本公开涉及网络通信领域,更具体地,涉及网络通信领域中用于提供通用即插即用(UPNP)服务的方法、网关设备、存储介质和程序产品。
背景技术
随着网络通信技术的发展和信息处理设备性能的提高,处于局域网内的终端设备可能希望通过点对点(peer-to-peer,P2P)通信来与外界设备实现快速的资源共享和信息交换,也可能希望通过UPNP协议在它所处的局域网内与其它终端设备相互交互以快速地实现音乐、视频等的记录和播放。介于上述需求,在网关设备上通常设置有UPNP功能,该功能不仅能够为需要P2P通信的设备动态分配端口以便于它与外界设备的通信,而且能够在网关设备控制的局域网内启用UPNP协议,以使支持UPNP架构的终端设备能够在局域网内部实现快速的信息共享。
网关设备上的UPNP功能通常处于两种设置下。一种设置是UPNP功能被开启,这使得网关设备能够为连接到它的终端设备提供UPNP服务,从而便于终端设备与外界设备的P2P通信以及在局域网内的信息共享等。这种设置虽然便利于终端设备的通信,但是存在一定的安全性问题,容易遭受黑客等的攻击。例如,终端设备可能被病毒感染,该病毒可能会向网关设备发送开启端口的UPNP请求。由于UPNP功能被开启,网关设备将为该病毒的通信自动分配端口,从而外界设备可以通过该端口与终端设备通信,从而破坏或窃取终端设备的信息,甚至通过该终端设备攻击局域网内的其它设备。另一种设置是UPNP功能被关闭,这使得网关设备不能为连接到它的终端设备提供UPNP服务。虽然这种设置是安全的,但是需要与外界设备进行P2P通信和/或需要在局域网内进行信息共享等的终端设备将难以顺畅通信,甚至可能无法通信,这严重影响了通信性能和用户体验。
目前,可以在一些网关设备上进行人工配置,由用户将需要为其开启UPNP功能的终端设备的互联网协议(IP)地址和/或介质访问控制(MAC)地址配置到网关设备中。这样,当网关设备接收到这些设备发送的用于请求端口分配的UPNP请求消息时,可以为其分配端口。但是,由于其中涉及人工配置,大部分用户由于缺少相应知识而难以实现,即便能够实现,也非常不方便并且耗费时间。
因此,希望能够提供一种技术,使得网关设备能够以智能的方式自动向需要UPNP服务的终端设备提供UPNP服务。
发明内容
本公开的一些方面涉及一种网关设备。该网关设备可以包括:存储器,存储有指令;以及处理器,被配置为执行存储在存储器中的指令以使所述网关设备执行以下操作。所述操作包括:获取包括与预定设备类型相关的预定设备类型信息的设备列表;基于终端设备连接到网关设备,获取终端设备的终端设备信息,并将终端设备信息与预定设备类型信息进行比较;确定终端设备信息与预定设备类型信息相匹配;以及基于所述确定,向终端设备提供UPNP服务。
在一些实施例中,所述处理器进一步被配置为执行以下操作:当从终端设备接收到用于端口分配的UPNP请求消息时,向该终端设备提供端口分配。
在一些实施例中,所述处理器进一步被配置为执行以下操作:在网关设备启动时,从预定统一资源定位符(URL)获取设备列表以存储在网关设备中。
在一些实施例中,所述处理器进一步被配置为执行以下操作:周期性地访问该预定URL以检查设备列表的版本;以及当确定检查到的设备列表的版本与所存储的设备列表的版本不同时,从该预定URL获取新的设备列表以覆盖所存储的设备列表。
在一些实施例中,所述设备列表中的每个预定设备类型的信息包括组织唯一标识符(OUI)和设备名称中的至少一项。
在一些实施例中,所述处理器进一步被配置为执行以下操作:当满足以下条件中的一个时,确定终端设备信息与预定设备类型信息相匹配。所述条件包括:终端设备的MAC地址中的一部分与OUI相同;终端设备的设备名称与设备列表中的信息中包含的设备名称匹配;以及终端设备的MAC地址中的一部分与OUI相同并且终端设备的设备名称与设备列表中的信息中包含的设备名称匹配。
在一些实施例中,所述预定设备类型指示需要进行点对点通信的设备和需要在所处局域网内通过UPNP协议进行通信的设备中的至少一种。
本公开的其他方面涉及一种用于提供通用即插即用UPNP服务的方法、非暂态计算机可读介质和计算机程序产品。它们均可以实现上述网关设备可执行的操作。
附图说明
为了更好地理解本公开,并示出如何实现本公开,现在将以举例的方式参照附图描述,其中:
图1是根据本公开实施例的包含具有UPNP功能的网关设备以及连接到它的终端设备的网络的示意图。
图2是根据本公开实施例的图1中的网关设备的示例性配置框图。
图3是根据本公开实施例的用于提供UPNP服务的方法的流程图。
图4是根据本公开实施例的设备列表的示例。
图5是根据本公开实施例的用于提供UPNP服务的方法的另一流程图。
具体实施方式
参考附图进行以下详细描述,并且提供以下详细描述以帮助全面理解本公开的各种示例实施例。以下描述包括各种细节以帮助理解,但是这些细节仅被认为是示例,而不是为了限制本公开,本公开是由随附权利要求及其等同内容限定的。在以下描述中使用的词语和短语仅用于能够清楚一致地理解本公开。另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
首先参考图1,描述根据本公开实施例的包含具有UPNP功能的网关设备以及连接到它的终端设备的网络的示意图。
如图1所示,网关设备110可以是诸如家庭网关的接入设备或接入点,其可以位于用户的诸如住房、工厂、办公室等的住所中,从而可以形成家庭网络等各种局域网。所述局域网可以采用802.11协议等实现,例如可以是Wi-Fi网络。通过网关设备110,不仅可以控制终端设备120-1至120-n对外部网络130的接入,而且可以使终端设备120-1至120-n能够在网关设备覆盖的局域网内彼此通信。网关设备110可以以有线的方式连接到外部网络130以往来于外部网络130收发数据。外部网络130可以是包含诸如互联网、私有网之类的分组数据网络的网络。能够连接到外部网络130的设备可以与网关设备110交互,也可以经由网关设备110与终端设备120-1至120-n交互。
终端设备120-1至120-n可以通过采用802.11协议等以无线方式连接到网关设备110,也可以通过线缆等以有线方式连接到网关设备110。这些终端设备可以是智能电话、平板电脑、笔记本电脑、桌面电脑、智能电视机、联网游戏机、打印机、启用互联网功能的其它信息处理设备等。它们经由网关设备110可以享受外部网络130提供的网络服务,也可以经由网关设备110彼此通信。
图1中的网关设备110可以具有图2所示的示例性配置。尽管在本文中将用于使终端设备接入外部网络的设备称为网关设备,但是网关设备110可以是例如可以组合调制解调器、接入点和/或路由器的功能的硬件电子设备。本公开还设想网关设备110可以包括但不限于能够解码音频/视频内容并播放越过(OTT)提供商或多系统运营商(MSO)提供的内容的智能媒体设备(SMD)或IP/QAM机顶盒(STB)的功能。
如图2所示,网关设备110包括用户接口20、网络接口21、电源22、广域网(WAN)接口23、存储器24和控制器26。用户接口20可以包括但不限于推动按钮、键盘、小键盘、液晶显示器(LCD)设备、阴极射线管(CRT)设备、薄膜晶体管(TFT)设备、发光二极管(LED)设备、高清(HD)设备或其他类似显示设备,包括具有触摸屏能力的显示设备,以允许用户和网关设备110之间的交互。网络接口21可以包括各种网卡以及以软件和/或硬件实施的电路,以使得能够使用一个或多个无线协议来实现与无线扩展器设备和客户端设备的通信,所述无线协议例如是任何电气电子工程师协会(IEEE)802.11Wi-Fi协议、蓝牙协议、蓝牙低功耗(BLE)、或根据无线技术标准工作以使用任何许可或未许可频段在短距离上交换数据的任何短距离协议、消费电子射频(RF4CE)协议、ZigBee协议、Z波协议或IEEE802.15.4协议,所述许可或未许可频段例如是市民宽带无线电服务(CBRS)频段、2.4GHz频段、5GHz频段、或6GHz频段。
电源22通过内部总线27向网关设备110的内部组件供电。电源22可以是独立式电源,例如电池组,其具有通过连接到插座(例如,直接或通过其他设备)的电气充电器供电的接口。电源22还可以包括可拆卸以允许替换的可充电电池,例如镍镉(NiCd)、镍金属氢化物(NiMH)、锂(Li)离子或Li聚合物电池。如果网关设备110是调制解调器或网关设备,则其可以包括WAN接口23,WAN接口23可以包括各种网卡以及以软件和/或硬件实现的电路,以实现路由器设备与互联网服务提供商或MSO之间的通信。
存储器24包括单个存储器或一个或多个存储器或存储器位置,包括但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、只读存储器(ROM)、电可擦除只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、现场可编程门阵列(FPGA)的逻辑块、硬盘或存储器层次结构的任何其他各层。存储器24可以用于存储任何类型的指令、软件或算法,包括用于控制网关设备110的一般功能和操作的软件25。
控制器26控制网关设备110的一般操作,并执行与网络中的其他设备(例如扩展器和客户端设备)有关的管理功能。控制器26可以包括但不限于中央处理单元(CPU)、硬件微处理器、硬件处理器、多核处理器、单核处理器、微控制器、专用集成电路(ASIC)、数字信号处理器(DSP)、或根据本公开中描述的实施例的能够执行用于控制网关设备110的操作和功能的任何类型的指令、算法或软件的其他类似处理设备。诸如处理器之类的控制器26可以包括在计算系统中执行功能的数字电路、模拟电路、或混合信号(模拟和数字的组合)电路的各种实现。控制器26可以包括例如诸如集成电路(IC)之类的电路、单个处理器核的部分或电路、整个处理器核、单个处理器、诸如FPGA之类的可编程硬件设备、和/或包括多个处理器的系统。
可以使用内部总线27在网关设备110的组件(例如20-22、24和26)之间建立通信。
返回图1,网关设备110可以具有UPNP功能。当UPNP功能开启时,网关设备110能够为连接到它的终端设备提供UPNP服务,使得在终端设备上运行的应用程序请求网关设备110分配诸如传输控制协议(TCP)端口或用户数据报协议(UDP)端口之类的端口以便于与外部网络130上的设备通信时,网关设备110能够向该终端设备分配相应的端口。被分配端口的终端设备进而可以与外部网络130上的设备进行通信,例如进行P2P通信。此外,开启UPNP功能的网关设备110还可以使得局域网内支持UPNP架构的设备能够通过UPNP协议彼此通信,从而实现局域网内的信息共享,例如在终端设备120-1中的文件被设置为共享时,局域网内的其它终端设备可以访问该文件。
尽管UPNP功能的开启有助于与外界的通信和局域网内部的通信,但是可能造成网络安全问题,使得非法设备可能通过网关设备经由UPNP服务开启的端口访问局域网内的设备。另一方面,尽管用户可以人工配置需要网关设备为其开启UPNP功能的终端信息,但是非常不方便和耗时。于是,本公开实施例提供了一种用于提供UPNP服务的方法来使得网关设备110能够在提供安全性的情况下自动确定是否为终端设备开启UPNP功能。
下面结合图3来描述用于提供UPNP服务的方法300的流程。该方法可以由网关设备110执行,以实现对UPNP功能的智能化控制,使得可以仅为需要UPNP服务的终端设备开启UPNP功能。
在S310中,由网关设备获取包括与预定设备类型相关的信息的设备列表。
预定设备类型是根据实际应用而需要网关设备为其提供UPNP服务的设备的类型,其通常可以包括诸如联网游戏机(例如Xbox、Nintendo Switch等)之类的需要P2P通信的设备、以及诸如音频/视频播放器(例如ROKU系列TV)之类的需要在所处局域网内通过UPNP协议进行通信来共享信息的设备。当这些类型的设备连接到包括家庭网关的网关设备时,由于这些设备顺畅通信的需要,网关设备优选的是为这些设备提供UPNP服务。对于其它通常不需要UPNP服务的设备,出于安全性的考虑,网关设备可以不为它们提供UPNP服务。
与预定设备类型相关的信息可以存储在设备列表中。设备列表可以包括与每种预定设备类型相关的信息,例如属于该预定设备类型的设备的组织唯一标识符(OUI)、属于该预定设备类型的设备的设备名称等。OUI可以对应于MAC地址的一部分,例如属于预定设备类型的设备的MAC地址的头三个字节,也可以是专门为属于该设备类型的设备设置的具有全球唯一性的其它标识符。设备名称可以是用于指示属于预定设备类型的设备的字符串,例如Xbox系列的游戏机的设备名称可以是Xbox 360、Xbox Series S、Xbox Series X等,ROKU系列的智能电视的设备名称可以是ROKU xx TV(其中,“xx”指示不同系列的不同标号)。
在不同的实施例中,与设备类型相关的信息可以仅包含OUI,也可以仅包含设备名称,还可以包含OUI和设备名称两者。此外,在上述每种情形下,还可以将额外信息添加到与设备类型相关的信息中,而不管这些额外信息是否供网关设备用于UPNP服务的提供判断。额外信息例如可以是设备制造商名称、上网许可标识等。
在图4中示出了包括数条预定设备类型信息的设备列表的一个示例。每条预定设备类型信息包含与预定设备类型有关的OUI(在图中以16进制表示)和与预定设备类型有关的设备名称。本领域技术人员可以理解,设备列表也可以仅包含OUI和设备名称之一,还可以包含额外信息。如图4所示,在图4的每一行中记录有与每个预定设备类型有关的预定设备类型信息,第一行记录有与XBOX系列的联网游戏机有关的预定设备类型信息,第二行记录有与ROKU系列的智能电视有关的预定设备类型信息,第三行记录有与iPad系列的平板电脑有关的预定设备类型信息。每条预定设备类型信息包含有相应预定设备类型的OUI和设备名称。图4中给出的OUI和设备名称仅是出于示例而非限制性的目的,并且设备列表可以记录有更多或更少的设备类型的信息。当出现新的需要UPNP服务的设备类型时,可以向设备列表中添加相关的信息。当原本需要UPNP服务的设备类型由于技术进步等不再使用时,可以从设备列表中删除对应的信息。
这样的设备列表可以存储在远程服务器(例如,位于外部网络130的远程服务器、由网关设备制造商管理的服务器等)上,并由维护人员根据新设备类型的添加和/或旧设备类型的删除而对其进行更新。网关设备可以从这样的远程服务器获取设备列表。例如,当网关设备启动时,网关设备可以从预定的统一资源定位符(URL)获取设备列表。该预定URL指向存储有设备列表的远程服务器,并可以预先存储在网关设备中。这样,网关设备在网关设备启动时可以读取该预定URL以从远程服务器获取设备列表。获取的设备列表可以存储在网关设备中以供UPNP服务的提供判断。
根据本公开的实施例,当网关设备存储有设备列表之后,网关设备可以周期性地访问所述预定URL,以检查设备列表的版本,从而确定设备列表是否有更新。当确定根据所述预定URL检查到的设备列表的版本与存储在网关设备中的设备列表的版本不同时,网关设备从所述预定URL获取新的设备列表以覆盖所存储的设备列表。这样,可以确保网关设备中存储的是最新的设备列表,从而可以更准确地为不同终端设备提供UPNP服务。
在S320中,基于终端设备连接到网关设备,由网关设备获取终端设备的信息,并将终端设备的信息与设备列表中的信息进行比较。
当终端设备通过有线或无线方式连接到网关设备时,网关设备将从终端设备获取其信息,这些信息包括终端设备的MAC地址、设备名称等。例如,终端设备在连接到网关设备时,将向网关设备发送请求消息以请求网关设备向其分配IP地址。在该请求消息中包含MAC地址、设备名称等,由此网关设备将获取终端设备的信息。
然后,网关设备可以将获取的终端设备的信息与在S310中获取的设备列表中的信息进行比较。例如,在一个实施例中,网关设备可以将从终端设备接收到的OUI与设备列表中的OUI进行比较。当在设备列表中发现相同的OUI时,确定终端设备的信息与设备列表中的信息匹配。在另一个实施例中,网关设备可以将从终端设备接收到的设备名称与设备列表中的设备名称进行比较。当设备名称与接收到的设备列表的设备名称匹配时,例如,设备列表中存在相同的设备名称或者接收到的设备名称符合设备列表中设备名称的格式(例如设备名称“ROKU12345TV”符合“ROKU xx TV”或“ROKUxxTV”的格式)时,确定终端设备的信息与设备列表中的信息匹配。在再一个实施例中,网关设备可以将从终端设备接收到的OUI和设备名称两者与设备列表中的OUI和设备名称两者进行比较。当两者都匹配时,即OUI相同并且设备名称匹配时,确定终端设备的信息与设备列表中的信息匹配。
在确定信息匹配的过程中,不一定使用设备列表中记录的所有信息,只要根据网关设备的配置(例如,仅比较OUI,仅比较设备名称,或者比较这两者)对相应的信息进行比较即可。例如,设备列表中可能同时记录有OUI和设备名称,但是网关设备的配置要求在进行UPNP服务提供判断时仅比较OUI,那么网关设备将仅比较接收到的终端设备的信息中的OUI和设备列表的信息中的OUI而忽略设备名称,由此判断是否向终端设备提供UPNP服务。
在S330中,如果终端设备的信息与设备列表中的信息相匹配,则由网关设备向终端设备提供UPNP服务。
在本公开的实施例中,网关设备的UPNP功能默认是关闭的,即,网关设备在启动之后,对所有连接到到它的终端设备都不提供UPNP服务。但是,这不是永久的,而可以通过S320中的比较过程所得的结果来改变。如上所述,当基于OUI和设备名称中的至少一个的比较确定终端设备的信息与设备列表中的信息相匹配时,网关设备可以自动为该终端设备开启UPNP功能以为其提供UPNP服务。这样,在网关设备接收到该终端设备发送的分配端口的UPNP请求消息时,网关设备可以自动为该终端设备分配相应的端口或向该终端设备提供端口分配,并将分配的端口通知给该终端设备,以便于该终端设备的通信。
如果S320中的比较过程所得的结果指示终端设备的信息与设备列表中的信息不匹配,那么当网关设备从终端设备接收到用于向其分配端口的UPNP请求消息时,网关设备拒绝端口的分配,并可以将拒绝消息发送给终端设备。
根据上述技术方案,网关设备通过获取记录有与需要UPNP服务的设备类型的信息有关的设备列表,并在终端设备连接到它时将终端设备的信息与提前获取的设备列表中的信息进行比较,可以确定是否为终端设备提供UPNP服务。这样,可以自动为需要UPNP服务的终端设备开启UPNP功能,并为其它终端设备保持UPNP功能关闭,从而可以实现UPNP功能是否开启的智能化控制,既可以为网关设备控制接入的局域网带来安全性,又可以使需要P2P通信和/或需要视频音频共享等的终端设备顺畅通信。
在图5中示出了根据本公开实施例的更完整的用于提供UPNP服务的方法500的流程图。图5的描述将结合图1来进行。
在S510中,响应于网关设备110的启动,网关设备110根据预先存储的预定URL从外部网络130上的服务器获取设备列表。设备列表包括与需要UPNP服务的设备类型相关的信息,关于每种设备类型的信息包括OUI和设备名称中的至少一项。网关设备110中的UPNP功能默认是关闭的。此外,网关设备110可以周期性访问该服务器以在设备列表更新时更新本地存储的设备列表。
在S520中,当新的终端设备(例如终端设备120-n)连接到网关设备110时,根据从终端设备120-n接收到的用于分配IP地址的请求消息,网关设备110获取终端设备120-n的包括MAC地址和设备名称的信息,并基于MAC地址确定终端设备120-n的OUI。
在S530中,网关设备110根据其配置将终端设备120-n的信息与存储的设备列表进行比较,以确定终端设备120-n的信息中的OUI和设备名称中的至少一项与存储的设备列表中的OUI和设备名称中的对应项是否匹配。如果存在匹配,方法500前进到S540,否则前进到S550。
在S540中,网关设备110向终端设备120-n提供UPNP服务。从而,网关设备110在从终端设备120-n接收到UPNP请求消息时,为终端设备120-n分配对应的端口,以使得终端设备120-n可以通过网关设备110进行P2P通信或与所处局域网内的其它支持UPNP协议的设备进行通信。
在S550中,网关设备110不向终端设备120-n提供UPNP服务。从而,网关设备110在从终端设备120-n接收到UPNP请求消息时,拒绝为终端设备120-n分配对应的端口,针对该终端设备120-n的UPNP功能保持关闭。
通过方法500的执行,网关设备110可以自动对于连接到它的终端设备进行是否为其提供UPNP服务的智能化控制,从而既可以为网关设备控制接入的局域网带来安全性,又可以使需要P2P通信和/或需要视频音频共享等的终端设备顺畅通信。
本公开可以被实现为装置、系统、集成电路和非瞬时性计算机可读介质上的计算机程序的任何组合。可以将一个或多个处理器实现为执行本公开中描述的部分或全部功能的集成电路(IC)、专用集成电路(ASIC)或大规模集成电路(LSI)、系统LSI,超级LSI或超LSI组件。
本公开包括软件、应用程序、计算机程序或算法的使用。可以将软件、应用程序、计算机程序或算法存储在非瞬时性计算机可读介质上,以使诸如一个或多个处理器的计算机执行上述步骤和附图中描述的步骤。例如,一个或多个存储器以可执行指令存储软件或算法,并且一个或多个处理器可以关联执行该软件或算法的一组指令,以根据本公开实施例提供的方案,通过网关设备上的UPNP功能的智能化控制,兼顾需要UPNP服务的设备的通信需求和网络的安全性。
软件和计算机程序(也可以称为程序、软件应用程序、应用程序、组件或代码)包括用于可编程处理器的机器指令,并且可以以高级过程性语言、面向对象编程语言、功能性编程语言、逻辑编程语言或汇编语言或机器语言来实现。术语“计算机可读介质”是指用于向可编程数据处理器提供机器指令或数据的任何计算机程序产品、装置或设备,例如磁盘、光盘、固态存储设备、存储器和可编程逻辑设备(PLD),包括将机器指令作为计算机可读信号来接收的计算机可读介质。
举例来说,计算机可读介质可以包括动态随机存取存储器(DRAM)、随机存取存储器(RAM)、只读存储器(ROM)、电可擦只读存储器(EEPROM)、紧凑盘只读存储器(CD-ROM)或其他光盘存储设备、磁盘存储设备或其他磁性存储设备,或可以用于以指令或数据结构的形式携带或存储所需的计算机可读程序代码以及能够被通用或专用计算机或通用或专用处理器访问的任何其它介质。如本文中所使用的,磁盘或盘包括紧凑盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘和蓝光盘,其中磁盘通常以磁性方式复制数据,而盘则通过激光以光学方式复制数据。上述的组合也包括在计算机可读介质的范围内。
在一个或多个实施例中,词语“能”、“能够”、“可操作为”或“配置为”的使用是指被设计成能够以指定方式使用的一些装置、逻辑、硬件和/或元件。提供本公开的主题作为用于执行本公开中描述的特征的装置、系统、方法和程序的示例。但是,除了上述特征之外,还可以预期其他特征或变型。可以预期的是,可以用可能代替任何上述实现的技术的任何新出现的技术来完成本公开的部件和功能的实现。
另外,以上描述提供了示例,而不限制权利要求中阐述的范围、适用性或配置。在不脱离本公开的精神和范围的情况下,可以对所讨论的元件的功能和布置进行改变。各种实施例可以适当地省略、替代或添加各种过程或部件。例如,关于某些实施例描述的特征可以在其他实施例中被结合。
类似地,虽然在附图中以特定次序描绘了操作,但是这不应该被理解为要求以所示的特定次序或者以顺序次序执行这样的操作,或者要求执行所有图示的操作以实现所希望的结果。在某些情况下,多任务处理和并行处理可以是有利的。

Claims (20)

1.一种网关设备,包括:
存储器,存储有指令;以及
处理器,被配置为执行存储在存储器中的指令以使所述网关设备执行以下操作:
获取包括与预定设备类型相关的预定设备类型信息的设备列表;
基于终端设备连接到网关设备,获取终端设备的终端设备信息,并将终端设备信息与预定设备类型信息进行比较;
确定终端设备信息与预定设备类型信息相匹配;以及
基于所述确定,向终端设备提供通用即插即用UPNP服务。
2.根据权利要求1所述的网关设备,其中,所述处理器进一步被配置为执行以下操作:
当从终端设备接收到用于端口分配的UPNP请求消息时,向该终端设备提供端口分配。
3.根据权利要求1所述的网关设备,其中,所述处理器进一步被配置为执行以下操作:
在网关设备启动时,从预定统一资源定位符URL获取设备列表以存储在网关设备中。
4.根据权利要求3所述的网关设备,其中,所述处理器进一步被配置为执行以下操作:
周期性地访问所述预定统一资源定位符URL以检查设备列表的版本;以及
当确定检查到的设备列表的版本与所存储的设备列表的版本不同时,从所述预定统一资源定位符URL获取新的设备列表以覆盖所存储的设备列表。
5.根据权利要求1所述的网关设备,其中,所述设备列表中的每个预定设备类型的信息包括组织唯一标识符OUI和设备名称中的至少一项。
6.根据权利要求5所述的网关设备,其中,所述处理器进一步被配置为执行以下操作:
当满足以下条件中的一个时,确定终端设备信息与预定设备类型信息相匹配:
终端设备的介质访问控制MAC地址中的一部分与OUI相同;
终端设备的设备名称与设备列表中的信息中包含的设备名称匹配;以及
终端设备的MAC地址中的一部分与OUI相同并且终端设备的设备名称与设备列表中的信息中包含的设备名称匹配。
7.根据权利要求1所述的网关设备,其中,所述预定设备类型指示需要进行点对点通信的设备和需要在所处局域网内通过UPNP协议进行通信的设备中的至少一种。
8.一种用于提供通用即插即用UPNP服务的方法,包括:
由网关设备获取包括与预定设备类型相关的预定设备类型信息的设备列表;
基于终端设备连接到网关设备,由网关设备获取终端设备的终端设备信息,并将终端设备信息与预定设备类型信息进行比较;
确定终端设备信息与预定设备类型信息相匹配;以及
基于所述确定,由网关设备向终端设备提供UPNP服务。
9.根据权利要求8所述的方法,还包括:
当从终端设备接收到用于端口分配的UPNP请求消息时,由网关设备向该终端设备提供端口分配。
10.根据权利要求8所述的方法,其中,获取设备列表包括:
在网关设备启动时,由网关设备从预定统一资源定位符URL获取设备列表以存储在网关设备中。
11.根据权利要求10所述的方法,还包括:
由网关设备周期性地访问所述预定统一资源定位符URL以检查设备列表的版本;以及
当确定检查到的设备列表的版本与所存储的设备列表的版本不同时,由网关设备从所述预定统一资源定位符URL获取新的设备列表以覆盖所存储的设备列表。
12.根据权利要求8所述的方法,其中,所述设备列表中的每个预定设备类型的信息包括组织唯一标识符OUI和设备名称中的至少一项。
13.根据权利要求12所述的方法,其中,当满足以下条件中的一个时,确定终端设备信息与预定设备类型信息相匹配:
终端设备的介质访问控制MAC地址中的一部分与OUI相同;
终端设备的设备名称与设备列表中的信息中包含的设备名称匹配;以及
终端设备的MAC地址中的一部分与OUI相同并且终端设备的设备名称与设备列表中的信息中包含的设备名称匹配。
14.根据权利要求8所述的方法,其中,所述预定设备类型指示需要进行点对点通信的设备和需要在所处局域网内通过UPNP协议进行通信的设备中的至少一种。
15.一种非暂态计算机可读介质,存储有指令,所述指令在被处理器执行时使处理器执行包括以下的操作:
获取包括与预定设备类型相关的预定设备类型信息的设备列表;
基于终端设备连接到网关设备,获取终端设备的终端设备信息,并将终端设备信息与预定设备类型信息进行比较;
确定终端设备信息与预定设备类型信息相匹配;以及
基于所述确定,向终端设备提供通用即插即用UPNP服务。
16.根据权利要求15所述的非暂态计算机可读介质,其中,所述指令在被处理器执行时使处理器进一步执行包括以下的操作:
当从终端设备接收到用于端口分配的UPNP请求消息时,向该终端设备提供端口分配。
17.根据权利要求15所述的非暂态计算机可读介质,其中,所述指令在被处理器执行时使处理器进一步执行包括以下的操作:
在网关设备启动时,从预定统一资源定位符URL获取设备列表以存储在网关设备中;
周期性地访问所述预定统一资源定位符URL以检查设备列表的版本;以及
当确定检查到的设备列表的版本与所存储的设备列表的版本不同时,从所述预定统一资源定位符URL获取新的设备列表以覆盖所存储的设备列表。
18.根据权利要求15所述的非暂态计算机可读介质,其中,所述设备列表中的每个预定设备类型的信息包括组织唯一标识符OUI和设备名称中的至少一项。
19.根据权利要求18所述的非暂态计算机可读介质,其中,所述指令在被处理器执行时使处理器进一步执行包括以下的操作:
当满足以下条件中的一个时,确定终端设备信息与预定设备类型信息相匹配:
终端设备的介质访问控制MAC地址中的一部分与OUI相同;
终端设备的设备名称与设备列表中的信息中包含的设备名称匹配;以及
终端设备的MAC地址中的一部分与OUI相同并且终端设备的设备名称与设备列表中的信息中包含的设备名称匹配。
20.一种计算机程序产品,包括计算机指令,其特征在于,所述计算机指令被处理器执行时实现根据权利要求8-14中任一项所述的方法。
CN202210300235.7A 2022-03-24 2022-03-24 用于提供upnp服务的方法、网关设备、存储介质和程序产品 Pending CN116846707A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210300235.7A CN116846707A (zh) 2022-03-24 2022-03-24 用于提供upnp服务的方法、网关设备、存储介质和程序产品
PCT/US2023/015154 WO2023183159A1 (en) 2022-03-24 2023-03-14 Method for providing upnp service, gateway device, storage medium and program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210300235.7A CN116846707A (zh) 2022-03-24 2022-03-24 用于提供upnp服务的方法、网关设备、存储介质和程序产品

Publications (1)

Publication Number Publication Date
CN116846707A true CN116846707A (zh) 2023-10-03

Family

ID=85800854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210300235.7A Pending CN116846707A (zh) 2022-03-24 2022-03-24 用于提供upnp服务的方法、网关设备、存储介质和程序产品

Country Status (2)

Country Link
CN (1) CN116846707A (zh)
WO (1) WO2023183159A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100796865B1 (ko) * 2001-12-31 2008-01-22 엘지전자 주식회사 이동 통신 단말기와 이를 이용한 네트웍 접속 시스템 및그 방법
US7751321B2 (en) * 2006-03-09 2010-07-06 Samsung Electronics Co., Ltd. Method and system for remote access to universal plug and play devices
US8307093B2 (en) * 2008-06-25 2012-11-06 Microsoft Corporation Remote access between UPnP devices
KR20120064916A (ko) * 2010-12-10 2012-06-20 주식회사 케이티 전화번호를 이용한 홈 네트워크 접근 제어 장치 및 그 방법과 그 시스템
CN102510371B (zh) * 2011-09-30 2017-12-22 中兴通讯股份有限公司 一种控制数字移动网络联盟内容的方法及装置
US11496435B2 (en) * 2016-10-28 2022-11-08 The Nielsen Company (Us), Llc Systems, methods, and apparatus to facilitate mapping a device name to a hardware address

Also Published As

Publication number Publication date
WO2023183159A1 (en) 2023-09-28

Similar Documents

Publication Publication Date Title
US9154534B1 (en) Multiple media device infrastructure
CN110036619B (zh) 用于iot协议标识和管理的方法和装置
US7840688B2 (en) Information processing device, server client system, method, and computer program
KR100823705B1 (ko) 네트워크 디바이스들 사이에서 데이터 전송을 최적화하는방법 및 시스템
US10476686B2 (en) Wireless communication device, program, and wireless communication system
JP4882036B1 (ja) 電化製品の種別を決定する情報処理装置、方法、サーバ
KR20070101465A (ko) 디.엘.엔.에이 네트워크를 이용한 컨텐츠 공유 방법
US9992188B2 (en) Methods and systems for single sign-on while protecting user privacy
CN1617515A (zh) 网络设备的简易动态配置
US10744407B2 (en) Dynamic network storage for cloud console server
CN112153088A (zh) 一种用于物联网设备的控制系统
EP2707993B1 (en) Method and system for sharing device capabilities of universal plug and play (upnp) devices with a service network entity
US20080133723A1 (en) Extended home service apparatus and method for providing extended home service on p2p networks
CN111787540A (zh) 接入物联网的方法、装置、电子设备及可读存储介质
US8873527B2 (en) System and method for managing routers and communication interfaces on a computing device
CN109218994B (zh) 基于网关的等价设备蓝牙通信方法和装置
JP2012059304A (ja) 電化製品の種別に応じてプログラム又はページを送信する情報処理装置、方法、プログラム
US20120117190A1 (en) Method and apparatus for providing service using personal network
CN116846707A (zh) 用于提供upnp服务的方法、网关设备、存储介质和程序产品
US9386074B2 (en) Method and apparatus for providing cloud service, and system having the same
KR20080066126A (ko) 홈 서버 및 인증절차 수행 방법
CN115622723A (zh) 设备访问控制方法及装置、电子设备及存储介质
US8756303B2 (en) Method and apparatus for determining object updates in a home network
US20120106411A1 (en) Portable router
KR20130041607A (ko) 콘텐츠 공유를 위한 콘텐츠 정보 제공 장치 및 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication