基于sdn的数据传输的方法及装置制造方法

文档序号:7824511阅读:127来源:国知局
基于sdn的数据传输的方法及装置制造方法
【专利摘要】本申请提供一种基于软件定义网络SDN的数据传输方法及装置,该方法包括:接收所述虚拟交换机发送的流表项请求报文;从所述虚拟交换机的出端口中选择一个出端口作为目标出端口;将所述目标出端口的端口标识添加到第一流表项中;向所述虚拟交换机下发所述第一流表项,以使所述虚拟交换机将所述虚拟机发送的数据报文通过与所述目标出端口相连的网卡以及对应的隧道终端设备传输。本申请可以实现多个数据传输通道的互相备份,实现数据传输过程中的负载分担,提高虚拟机与外界的通信效率。
【专利说明】基于SDN的数据传输的方法及装置

【技术领域】
[0001] 本申请涉及网络通信【技术领域】,尤其涉及基于SDN的数据传输的方法及装置。

【背景技术】
[0002] SDN(Software Defined Networks,软件定义网络)是一种新型的网络创新架构, 通过将控制平面和数据平面分离,实现网络流量的灵活控制。
[0003] 在采用虚拟化技术的SDN网络中,主要包括控制器、虚拟交换机以及虚拟机。通常 在一台物理服务器中配置多台虚拟机和一台虚拟交换机,虚拟交换机通过网卡与隧道终端 设备连接,再通过隧道终端设备与外界通信。现有技术中,每台物理服务器安装一块网卡, 当该网卡或与其连接的隧道终端设备发生故障时,服务器中的虚拟机将无法与外界通信。
[0004] 申请内容
[0005] 有鉴于此,本申请提供了一种基于软件定义网络SDN的数据传输方法,所述SDN网 络包括控制器、虚拟机以及虚拟交换机,所述虚拟机和所述虚拟交换机位于服务器上,所述 服务器包括多块网卡,每块网卡分别与一台隧道终端设备相连,该方法应用于所述控制器 上,包括:
[0006] 接收所述虚拟交换机发送的流表项请求报文,所述流表项请求报文为所述虚拟交 换机接收所述虚拟机向目的主机发送的数据报文时向所述控制器发送的请求报文,所述目 的主机为非所述虚拟机所在的本地服务器中的主机;
[0007] 从所述虚拟交换机的出端口中选择一个出端口作为目标出端口,所述出端口为与 所述网卡连接的端口;
[0008] 将所述目标出端口的端口标识添加到第一流表项中;
[0009] 向所述虚拟交换机下发所述第一流表项,以使所述虚拟交换机将所述虚拟机发送 的数据报文通过与所述目标出端口相连的网卡以及对应的隧道终端设备传输。
[0010] 本申请还提供了一种基于软件定义网络SDN的数据传输装置,其特征在于,所述 SDN网络包括控制器、虚拟机以及虚拟交换机,所述虚拟机和所述虚拟交换机位于服务器 上,所述服务器包括多块网卡,每块网卡分别与一台隧道终端设备相连,该装置应用于所述 控制器上,该装置包括:
[0011] 接收单元,用于接收所述虚拟交换机发送的流表项请求报文,所述流表项请求报 文为所述虚拟交换机接收所述虚拟机向目的主机发送的数据报文时向所述控制器发送的 请求报文,所述目的主机为非所述虚拟机所在的本地服务器中的主机;
[0012] 选择单元,用于从所述虚拟交换机的出端口中选择一个出端口作为目标出端口, 所述出端口为与所述网卡连接的端口;
[0013] 添加单元,用于将所述目标出端口的端口标识添加到第一流表项中;
[0014] 下发单元,用于向所述虚拟交换机下发所述第一流表项,以使所述虚拟交换机将 所述虚拟机发送的数据报文通过与所述目标出端口相连的网卡以及对应的隧道终端设备 传输。
[0015] 本申请在服务器中安装多块网卡,且每块网卡分别与一台隧道终端设备连接。当 服务器中的虚拟机发送数据报文与外界通信时,由虚拟交换机向控制器请求该数据报文的 流表项,控制器在下发的流表项中携带为该数据报文选择的出端口,通过与该出端口连接 的网卡以及对应的隧道终端设备进行数据传输。通过本申请可以实现多个数据传输通道的 互相备份,实现数据传输过程中的负载分担,提高虚拟机与外界的通信效率。

【专利附图】

【附图说明】
[0016] 图1是为现有技术中虚拟SDN网络示意图;
[0017] 图2是本申请一种服务器与隧道终端设备的连接示意图;
[0018] 图3是本申请一种实施例中基于SDN的数据传输方法的处理流程图;
[0019] 图4是本申请一种实施例中虚拟SDN网络示意图;
[0020] 图5是本申请一种实施例中基于SDN的数据传输装置的基础硬件示意图;
[0021] 图6-1是本申请一种实施例中的基于SDN的数据传输装置的结构示意图;
[0022] 图6-2是本申请另一种实施例中的基于SDN的数据传输装置的结构示意图。

【具体实施方式】
[0023] 为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图对本申请所述 方案作进一步地详细说明。
[0024] 如图1所示,为现有技术中虚拟SDN网络的示意图。该SDN网络包括控制器、虚拟 交换机(OVS1、OVS2)以及虚拟机(VM1?VM6),其中,VM1?VM3以及OVS1位于服务器1 上,通过网卡1与隧道终端设备VTEP1连接;VM4?VM6以及OVS2位于服务器2上,通过网 卡2与隧道终端设备VTEP2连接。隧道终端设备为VXLAN (Virtual extensible LAN,可扩 展虚拟局域网络)网络的边缘设备。通过VXLAN网络可以实现虚拟局域网的扩展,虚拟机 发送的数据报文在VXLAN网络中通过隧道传输。虚拟机发送的数据报文在经过VXLAN网络 后可以通过外网网关GW发送给外网主机(PC1)。从该示意图可以看出,服务器1和服务器 2均通过单一网卡与外界相连,当服务器的网卡或隧道终端设备出现故障时,服务器内的虚 拟机将无法与外界通信。
[0025] 针对上述问题,本申请实施例提出一种基于SDN的数据传输方法,该方法在服务 器中安装多块网卡,每块网卡分别与一台隧道终端设备连接。当服务器中的虚拟机发送数 据报文与外界通信时,由虚拟交换机向控制器请求该数据报文的流表项,控制器在下发的 流表项中携带为该数据报文选择的出端口,通过与该出端口连接的网卡以及对应的隧道终 端设备进行数据传输。
[0026] 参见图2,为本申请中服务器与隧道终端设备的连接示意图。通常在一台物理服务 器中可以插入多块物理网卡,本申请利用该物理特性为每一块网卡配置了一台隧道终端设 备,建立多条数据通道进行数据传输。例如,图2所示,服务器1的虚拟机可以通过三条数 据通道与外界通信,分别为网卡11与VTEP11之间的数据通道,网卡12与VTEP12之间的数 据通道,网卡13与VTEP13之间的数据通道。同时,将VTEP11、VTEP12以及VTEP13组成一 个备份保护组,当某一个数据通道出现故障时,可通过其它数据通道进行数据传输。本申请 实施例通过在每一个隧道终端设备上运行VRRP(VirtualRouter Redundancy Protocol,虚 拟路由冗余协议)协议,生成隧道终端设备的备份保护组,该备份保护组对外表现为一台 虚拟的隧道终端设备VTEP1,配置该虚拟隧道终端设备的IP地址,将该虚拟隧道终端设备 作为服务器中多块物理网卡的网关。
[0027] 参见图3,为本申请基于SDN的数据传输方法的一个实施例流程图,该实施例对基 于SDN的数据传输的处理过程进行描述。
[0028] 步骤310,接收所述虚拟交换机发送的流表项请求报文,所述流表项请求报文为所 述虚拟交换机接收所述虚拟机向目的主机发送的数据报文时向所述控制器发送的请求报 文,所述目的主机为非所述虚拟机所在的本地服务器中的主机。
[0029] 当服务器内的虚拟机向非本服务器内的目的主机发送数据报文时,与该虚拟机相 连的虚拟交换机接收该数据报文,并查询本地是否有该数据报文对应的流表项。虚拟交换 机在未查询到对应流表项的情况下,向控制器发送流表项请求报文,请求控制器下发该数 据报文的流表项,以指导虚拟交换机进行数据报文转发。控制器接收虚拟交换机上送的流 表项请求报文进行后续处理。
[0030] 步骤320,从所述虚拟交换机的出端口中选择一个出端口作为目标出端口,所述出 端口为与所述网卡连接的端口。
[0031] 控制器接收虚拟交换机上送的流表项请求报文后,为虚拟机发送的数据报文构建 流表项,其中,该流表项中的一个重要信息为出端口标识,该出端口标识用于指导虚拟交换 机将虚拟机的数据报文从该出端口进行转发。在前述描述中已提到,本申请在服务器中配 置了多块网卡,并为每一块网卡配置了对应的隧道终端设备,从而形成了多条可以与外界 通信的数据传输通道。其中,每一块网卡连接在虚拟交换机的一个端口上,本申请中将与网 卡连接的端口称为出端口,例如,出端口 S11、S12以及S13。控制器接收到虚拟交换机的流 表项请求报文后,可以从虚拟交换机的所有出端口中选择一个出端口作为目标出端口,指 导虚拟交换机将虚拟机发送的数据报文从该目标出端口转发,具体处理过程如下:
[0032] 控制器从虚拟交换机上获取已下发的流表项,并根据每一个流表项的表项信息统 计虚拟交换机的每一个出端口的流量,其中,该表项信息可以为报文统计信息。虚拟交换机 在按照控制器下发的流表项进行数据报文转发时,会对转发的数据报文进行统计计数,不 断更新流表项,因此,控制器可以通过从虚拟交换机上获取流表项,按照出端口进行数据报 文统计,从而知道虚拟交换机的每一个出端口当前的流量情况。从多个出端口中选择统计 的流量最少的出端口作为目标出端口,假设出端口 S11的流表最小,则将S11作为目标出端 口,指导虚拟交换机将数据报文从该流量最少的出端口进行转发。可见,本申请实施例中的 目标出端口的选择方式可以实现负载分担,充分利用虚拟交换机的每一个出端口,可以提 高数据传输的效率。
[0033] 步骤330,将所述目标出端口的端口标识添加到第一流表项中。
[0034] 控制器在确定了进行数据报文转发的目标出端口后,构建第一流表项,将目标出 端口的端口标识添加到第一流表项中。
[0035] 步骤340,向所述虚拟交换机下发所述第一流表项,以使所述虚拟交换机将所述虚 拟机发送的数据报文通过与所述目标出端口相连的网卡以及对应的隧道终端设备传输。
[0036] 控制器向虚拟交换机下发第一流表项,该第一流表项中的出端口标识为目标出端 口的端口标识。虚拟交换机接收到该第一流表项后,从该第一流表项中获取出端口标识,将 虚拟机发送的数据报文从该出端口转发,即通过与该出端口相连的网卡以及与该网卡对应 的隧道终端设备进行数据报文传输,假设第一流表项中的出端口标识为S11,则虚拟交换机 向S11端口转发数据报文,该数据报文通过网卡11和隧道终端设备VTEP11进行数据报文 传输。
[0037] 从前述描述可知,虚拟机发送的数据报文通过VXLAN网络进行传输,因此,需要对 数据报文进行隧道封装,该隧道封装工作由虚拟交换机完成,具体为根据控制器下发的第 一流表项中的表项信息进行隧道封装。控制器在向虚拟交换机下发第一流表项之前,将数 据报文的隧道封装信息添加到第一流表项中,具体处理过程如下:
[0038] 控制器从虚拟交换机发送的流表项请求报文中获取目的主机的IP地址,根据该 IP地址判断目的主机的位置信息,例如,SDN网络内的虚拟机的IP地址段为60. 10. 1. 1/16, 假设控制器从流表项请求报文中获取的目的主机的IP地址为80. 1. 20. 12,则控制器可以 确认该目的主机为外网主机。控制器根据确认的目的主机的位置信息分以下两种情况向第 一流表项中添加隧道封装信息。
[0039] 当目的主机位于外网时,在第一流表项中添加第一隧道封装信息,该第一隧道封 装信息的源IP地址为虚拟隧道终端设备的IP地址,第一隧道封装信息的目的IP地址为外 网网关的IP地址,其中,虚拟隧道终端设备为与本地服务器网卡相连的多台隧道终端设备 共同虚拟出来的一台隧道终端设备,例如,图2中的虚拟VTEP1。虚拟交换机接收控制器下 发的第一流表项后,根据第一流表项中携带的第一隧道封装信息对虚拟机发送的数据报文 进行隧道封装,并通过虚拟隧道终端设备与外网网关之间的隧道将数据报文发送给位于外 网中的目的主机。
[0040] 当目的主机位于其它服务器时,在第一流表项中添加第二隧道封装信息,该第二 隧道封装信息的源IP地址为本地服务器中的虚拟交换机的环回口的IP地址,第二隧道封 装信息的目的IP地址为其它服务器中的虚拟交换机的环回口的IP地址。由于不同的服务 器可能共用同一个隧道终端设备备份保护组,即同一个虚拟隧道终端设备,当不同服务器 之间进行数据报文传输时,无法通过虚拟隧道终端设备建立隧道进行数据报文传输,因此, 本申请通过启动虚拟交换机的环回口,在不同服务器的虚拟交换机之间建立隧道,通过虚 拟交换机之间的隧道进行数据报文传输。其中,该环回口的IP地址与网卡的IP地址以及 虚拟隧道终端设备的IP地址属于同一网段。本地服务器中的虚拟交换机接收控制器下发 的第一流表项后,根据第一流表项中携带的第二隧道封装信息对本地服务器中的虚拟机发 送的数据报文进行隧道封装,并通过虚拟交换机之间的隧道将数据报文发送给位于其它服 务器中的目的主机。
[0041] 上述处理过程为本地服务器中的虚拟机向非本地服务器中的目的主机发送数据 报文的处理过程,当上述目的主机向本地服务器中的虚拟机发送数据报文时,同样通过隧 道传输,隧道的目的IP地址为本地服务器的虚拟交换机的环回口的IP地址,至于通过哪一 个数据通道进行传输则由VXLAN网络根据等价路由选择。数据报文到达本地服务器的虚拟 交换机后,由虚拟交换机进行隧道解封装后转发给本地虚拟机。
[0042] 在服务器与外界通信的多个数据通道中,当某一数据通道发生故障时,例如,网卡 故障或与网卡连接的隧道终端设备故障,该数据通道不可用。虚拟交换机通过对与该数据 通道连接的出端口进行检测,获知该出端口发生故障,并向控制器上报出端口故障信息。
[0043] 控制器接收虚拟交换机上报的出端口故障信息,从该出端口故障信息中获取发生 故障的故障出端口标识。从虚拟交换机中获取已下发的流表项,如前所述,可以根据流表项 中的报文统计信息统计虚拟交换机的每一个非故障出端口的流量,选择流量最少的非故障 出端口作为新的目标出端口。将已下发的故障出端口标识对应的流表项的出端口标识更新 为新的目标出端口的端口标识,并向虚拟交换机下发更新后的流表项。虚拟交换机接收新 的流表项后,按照新的流表项进行数据报文转发,数据报文的出端口为更新后的目标出端 口,即通过新的数据通道进行数据报文传输。可见,本申请不仅可以实现负载分担,当某一 数据通道发生故障时,其它数据通道可以作为备份通道进行数据报文传输,以保证服务器 中的虚拟机正常与外界通信。
[0044] 现以图4所示虚拟SDN网络示意图为例,详细介绍基于SDN的数据传输方法的处 理过程。
[0045] 服务器1中包括虚拟机VM11?VM13、虚拟交换机OVS1以及网卡11?网卡13,月艮 务器1通过虚拟隧道终端设备VTEP1接入VXLAN网络,其中,VTEP1由3台物理隧道终端设 备VTEP11?VTEP13组成;服务器2中包括虚拟机VM21?VM23、虚拟交换机OVS2以及网 卡21?网卡23,服务器2通过虚拟隧道终端设备VTEP2接入VXLAN网络,其中,VTEP2由3 台物理隧道终端设备VTEP21?VTEP23组成。VXLAN网络通过外网网关GW与外网主机PC1 连接。控制器负责向SDN网络中的虚拟交换机下发流表项,指导虚拟交换机对虚拟机发送 的数据报文进行转发。
[0046] 首先,在每一个物理隧道终端设备上启动VRRP协议,各物理隧道终端设备通过交 互VRRP协议报文生成VTEP备份保护组,该VTEP备份保护组通过一个虚拟隧道终端设备表 示,且为该虚拟隧道终端设备分配IP地址。假设虚拟VTEP1的IP地址为10. 1. 10. 1,虚拟 VTEP2 的 IP 地址为 10. 1. 20. 1。
[0047] 假设服务器1中的虚拟机VM11 (IP地址为60. 10. 1. 11)向外网主机PCI (IP地址 为80. 1. 20. 12)发送数据报文。OVS1接收该数据报文后,查询本地是否保存了该数据报文 的转发流表项,当未找到对应的流表项时,向控制器发送流表项请求报文请求该数据报文 的转发流表项。
[0048] 控制器接收OVS1发送的流表项请求报文后,从OVS1上读取已下发的流表项,根据 流表项中的报文统计信息(OVS1每次对数据报文进行转发时,都会更新对应流表项中的报 文统计信息)分别统计出端口 S11?S 13的流量,假设统计的S11?S 13的流量如表1 所示。
[0049]
[0050] 表 1
[0051] 由表1可知,出端口 S11的报文转发数量最少,控制器选择S11作为VM11发送的

【权利要求】
1. 一种基于软件定义网络SDN的数据传输方法,其特征在于,所述SDN网络包括控制 器、虚拟机以及虚拟交换机,所述虚拟机和所述虚拟交换机位于服务器上,所述服务器包括 多块网卡,每块网卡分别与一台隧道终端设备相连,该方法应用于所述控制器上,包括: 接收所述虚拟交换机发送的流表项请求报文,所述流表项请求报文为所述虚拟交换机 接收所述虚拟机向目的主机发送的数据报文时向所述控制器发送的请求报文,所述目的主 机为非所述虚拟机所在的本地服务器中的主机; 从所述虚拟交换机的出端口中选择一个出端口作为目标出端口,所述出端口为与所述 网卡连接的端口; 将所述目标出端口的端口标识添加到第一流表项中; 向所述虚拟交换机下发所述第一流表项,以使所述虚拟交换机将所述虚拟机发送的数 据报文通过与所述目标出端口相连的网卡以及对应的隧道终端设备传输。
2. 如权利要求1所述的方法,其特征在于,所述从所述虚拟交换机的出端口中选择一 个出端口作为目标出端口,包括: 从所述虚拟交换机上获取已下发的流表项; 根据所述已下发的流表项中的表项信息统计所述虚拟交换机的每一个出端口的流 量; 选择流量最少的出端口作为目标出端口。
3. 如权利要求1所述的方法,其特征在于,所述向所述虚拟交换机下发所述流表项请 求报文的第一流表项之前,还包括: 从所述流表项请求报文中获取所述目的主机的IP地址; 根据所述目的主机的IP地址判断所述目的主机的位置信息; 当所述目的主机位于外网时,将第一隧道封装信息添加到所述第一流表项中,所述第 一隧道封装信息的源IP地址为虚拟隧道终端设备的IP地址,所述第一隧道封装信息的目 的IP地址为外网网关的IP地址,所述虚拟隧道终端设备为与所述本地服务器网卡相连的 多台隧道终端设备共同虚拟出来的一台隧道终端设备,以使所述虚拟交换机根据所述第一 隧道封装信息对所述虚拟机发送的数据报文进行隧道封装后通过所述目标出端口向所述 目的主机传输。
4. 如权利要求3所述的方法,其特征在于: 当所述目的主机位于其它服务器时,将第二隧道封装信息添加到所述第一流表项中, 所述第二隧道封装信息的源IP地址为所述本地服务器中的虚拟交换机的环回口的IP地 址,所述第二隧道封装信息的目的IP地址为所述其它服务器中的虚拟交换机的环回口的 IP地址,以使所述本地服务器中的虚拟交换机根据所述第二隧道封装信息对所述本地服务 器中的虚拟机发送的数据报文进行隧道封装后通过所述目标出端口向所述目的主机传输。
5. 如权利要求1至4任一所述的方法,其特征在于,所述方法还包括: 接收所述虚拟交换机上报的出端口故障信息; 从所述出端口故障信息中获取故障出端口标识; 从所述虚拟交换机上获取已下发的流表项; 根据所述已下发的流表项中的表项信息统计所述虚拟交换机的每一个非故障出端口 的流量; 选择流量最少的非故障出端口作为新的目标出端口; 将已下发的所述故障出端口标识对应的流表项的出端口标识更新为所述新的目标出 端口的端口标识; 向所述虚拟交换机下发更新后的流表项,以使所述虚拟机发送的数据报文通过与所述 新的目标出端口相连的网卡以及对应的隧道终端设备传输。
6. -种基于软件定义网络SDN的数据传输装置,其特征在于,所述SDN网络包括控制 器、虚拟机以及虚拟交换机,所述虚拟机和所述虚拟交换机位于服务器上,所述服务器包括 多块网卡,每块网卡分别与一台隧道终端设备相连,该装置应用于所述控制器上,该装置包 括: 接收单元,用于接收所述虚拟交换机发送的流表项请求报文,所述流表项请求报文为 所述虚拟交换机接收所述虚拟机向目的主机发送的数据报文时向所述控制器发送的请求 报文,所述目的主机为非所述虚拟机所在的本地服务器中的主机; 选择单元,用于从所述虚拟交换机的出端口中选择一个出端口作为目标出端口,所述 出端口为与所述网卡连接的端口; 添加单元,用于将所述目标出端口的端口标识添加到第一流表项中; 下发单元,用于向所述虚拟交换机下发所述第一流表项,以使所述虚拟交换机将所述 虚拟机发送的数据报文通过与所述目标出端口相连的网卡以及对应的隧道终端设备传输。
7. 如权利要求6所述的装置,其特征在于,所述选择单元,包括: 流表获取模块,用于从所述虚拟交换机上获取已下发的流表项; 流量统计模块,用于根据所述已下发的流表项中的表项信息统计所述虚拟交换机的每 一个出端口的流量; 端口选择模块,用于选择流量最少的出端口作为目标出端口。
8. 如权利要求6所述的装置,其特征在于,所述装置还包括: 获取单元,用于在所述下发单元向所述虚拟交换机下发所述流表项请求报文的第一流 表项之前,从所述流表项请求报文中获取所述目的主机的IP地址; 判断单元,用于根据所述目的主机的IP地址判断所述目的主机的位置信息; 所述添加单元,还用于当所述目的主机位于外网时,将第一隧道封装信息添加到所述 第一流表项中,所述第一隧道封装信息的源IP地址为虚拟隧道终端设备的IP地址,所述第 一隧道封装信息的目的IP地址为外网网关的IP地址,所述虚拟隧道终端设备为与所述本 地服务器网卡相连的多台隧道终端设备共同虚拟出来的一台隧道终端设备,以使所述虚拟 交换机根据所述第一隧道封装信息对所述虚拟机发送的数据报文进行隧道封装后通过所 述目标出端口向所述目的主机传输。
9. 如权利要求8所述的装置,其特征在于: 所述添加单元,还用于当所述目的主机位于其它服务器时,将第二隧道封装信息添加 到所述第一流表项中,所述第二隧道封装信息的源IP地址为所述本地服务器中的虚拟交 换机的环回口的IP地址,所述第二隧道封装信息的目的IP地址为所述其它服务器中的虚 拟交换机的环回口的IP地址,以使所述本地服务器中的虚拟交换机根据所述第二隧道封 装信息对所述本地服务器中的虚拟机发送的数据报文进行隧道封装后通过所述目标出端 口向所述目的主机传输。
10.如权利要求6至9任一所述的装置,其特征在于,所述装置还包括: 所述接收单元,还用于接收所述虚拟交换机上报的出端口故障信息; 所述获取单元,还用于从所述出端口故障信息中获取故障出端口标识; 所述选择单元,还用于从所述虚拟交换机上获取已下发的流表项;根据所述已下发的 流表项中的表项信息统计所述虚拟交换机的每一个非故障出端口的流量;选择流量最少的 非故障出端口作为新的目标出端口; 所述添加单元,还用于将已下发的所述故障出端口标识对应的流表项的出端口标识更 新为所述新的目标出端口的端口标识; 所述下发单元,还用于向所述虚拟交换机下发更新后的流表项,以使所述虚拟机发送 的数据报文通过与所述新的目标出端口相连的网卡以及对应的隧道终端设备传输。
【文档编号】H04L12/801GK104506408SQ201410855987
【公开日】2015年4月8日 申请日期:2014年12月31日 优先权日:2014年12月31日
【发明者】杨碧辉, 黄李伟, 王海 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1