一种互访信息的获取方法及装置与流程

文档序号:11778306阅读:222来源:国知局
一种互访信息的获取方法及装置与流程

本发明涉及数据通信领域,尤其涉及一种互访信息的获取方法及系统。



背景技术:

业务支撑系统是各大电信运营商提供全网业务运营的支撑系统,一般是从互为备份的负载均衡设备起始,经过多台web服务器、多台中间件服务器以及多台数据库服务器,最后进入数据存储网络。随着业务支撑系统的日益复杂,虚拟化资源之间的动态分配技术和高可用技术都得到了快速的发展,获取不同服务器之间、服务器与负载均衡设备之间、以及不同服务器上运行的软件之间的互访信息就变得越来越困难;其中,所述互访信息包括源ip地址、目标ip地址、源端口和目标端口。

配置项(configurationitem,ci)可以指负载均衡设备、web服务器、中间件服务器或数据库服务器等硬件设备,也可以指在上述硬件设备中运行的软件对象,例如数据库、应用或进程等。配置项节点是指配置项所在的网络节点,所以,当配置项为负载均衡设备、中间件服务器或数据库服务器等硬件设备时,所述配置项节点就是硬件设备本身,当配置项为数据库、应用或进程等软件对象时,所述配置项节点即为运行该软件对象的硬件设备。获取业务支撑系统中配置项之间的互访信息可以实现以下常见的功能:1)、确定业务支撑系统中哪些业务节点不可用,从而提醒网络维护人员尽快修复这些不可用节点;而且还可以通过配置项之间的互访信息,准确评估网络故障的影响范围;2)、确定业务支撑系统中哪些业务节点需要变更或者是上线发布,配置项之间的互访信息也是重要的参考依据。所以获取配置项之间的互访信息就变得非常重要。

为了获取配置项之间的互访信息,通常采用如下两种方法:

第一种,首先,负载均衡配置服务器获取负载均衡设备的静态配置信息,节点自动发现服务器利用节点自动发现技术获取除负载均衡设备以外的其他配置项节点的静态互访信息;然后,将负载均衡配置服务器获取到的静态配置信息和节点自动发现服务器获取到的静态互访信息结合起来进行聚合分析,从而获得业务支撑系统中全部配置项之间的互访信息。

第二种,首先通过业务支撑系统中各个配置项节点中的日志记录每个配置项节点的互访信息,然后日志服务器采集各个配置项节点的日志,通过分析获得业务支撑系统中全部配置项之间的互访信息。

在实现本发明的过程中,发明人发现现有技术中至少存在如下问题:

在现有第一种互访信息的获取方法中,通过负载均衡配置服务器和节点自动发现服务器分别获取到的配置信息和互访信息都是静态的,也就是说,该互访信息只能表示某一个时段内配置项之间的互访关系,因此现有第一种互访信息的获取方法不能实时地获取业务支撑系统中配置项之间的互访信息。并且,在现有第二种互访信息的获取方法中,通过日志服务器获取到的日志也是静态的,该日志也只能表示某一个时段内配置项之间的互访关系,因此,现有第二种互访信息的获取方法也不能实时地获取业务支撑系统中配置项之间的互访信息。由此可见,由于现有的两种互访信息的获取方法都不能实时地获取配置项之间的互访信息,所以,当业务支撑系统中配置项之间的互访信息发生变化时,利用现有的两种互访信息的获取方法就不能准确地获知当前配置项之间的互访关系。

更进一步的,在现有的两种互访信息的获取方法中,都是通过配置项节点获取配置项之间的互访信息,由于业务支撑系统中的配置项节点数量较多,因此利用现有的互访信息的获取方法花费时间比较长,而且流程比较复杂,可推广性较差。



技术实现要素:

为解决上述技术问题,本发明实施例期望提供一种互访信息的获取方法及 装置,能够实时地获取配置项之间的互访信息。

本发明的技术方案是这样实现的:

本发明实施例提供一种互访信息的获取方法,包括:

在流量采集设备发送的以太网包数据流中获取当前以太网包;

所述当前以太网包包括ip协议包时,在所述ip协议包中获取互访信息的源ip地址和目标ip地址;

所述ip协议包中包括tcp协议包时,在所述tcp协议包中获取所述互访信息的源端口和目标端口。

上述实施例中,在所述tcp协议包中获取所述互访信息的源端口和目标端口之后,所述方法还包括:当所述tcp协议包中的同步序列号(synchronizesequencenumber,syn)为1且确认ack比特为0时,判定所述当前以太网包的发送方向为客户端到服务器;当所述tcp协议包中的syn为1且所述ack比特为1时,判定所述当前以太网包的发送方向为服务器到客户端。

上述实施例中,在所述tcp协议包中获取所述互访信息的源端口和目标端口之后,所述方法还包括:获取所述tcp协议包数据中的报文类型;根据所述报文类型确定所述当前以太网包的发送方向。

上述实施例中,在所述tcp协议包中获取所述互访信息的源端口和目标端口之后,所述方法还包括:统计所述源ip地址和所述源端口相同,且所述目标ip地址或目标端口不同的以太网包的第一数量;当所述第一数量大于第一预设阈值时,判定所述当前以太网包的发送方向为服务器到客户端。

在上述实施例中,所述方法还包括:当所述第一数量不大于所述第一预设阈值时,统计所述源ip地址或所述源端口不同,且所述目标ip地址和所述目标端口相同的以太网包的第二数量;当所述第二数量大于第二预设阈值时,判定所述当前以太网包的发送方向为客户端到服务器。

本发明实施例提供一种互访信息的获取装置,包括:

接收单元,用于接收流量采集设备发送的以太网包数据流,将所述以太网包数据流发送给获取单元;

所述获取单元,用于从所述以太网包数据流中获取当前以太网包,当所述当前以太网包包括ip协议包时,在所述ip协议包中获取互访信息的源ip地址和目标ip地址,还用于当所述ip协议包中包括tcp协议包时,在所述tcp协议包中获取所述互访信息的源端口和目标端口。

在上述实施例中,所述装置还包括:判断单元;

所述获取单元,还用于获取所述tcp协议包中的syn和确认ack比特,并将所述syn和所述ack比特发送给所述判断单元;所述判断单元,用于当所述syn为1且所述ack比特为0时,判定所述当前以太网包的发送方向为客户端到服务器,还用于当所述tcp协议包中的syn为1且所述ack比特为1时,判定所述当前以太网包的发送方向为服务器到客户端。

在上述实施例中,所述装置还包括:所述获取单元,还用于获取所述tcp协议包数据中的报文类型,将所述报文类型发送给所述判断单元;所述判断单元,还用于根据所述报文类型确定所述当前以太网包的发送方向。

在上述实施例中,所述装置还包括:统计单元;

所述获取单元,还用于将所述源ip地址、所述目标ip地址、所述源端口和所述目标端口发送给所述统计单元;所述统计单元,用于统计所述源ip地址和所述源端口相同,且所述目标ip地址或目标端口不同的以太网包的第一数量,将所述第一数量发送给所述判断单元;所述判断单元,还用于当所述第一数量大于第一预设阈值时,判定所述当前以太网包的发送方向为服务器到客户端。

在上述实施例中,所述装置还包括:

所述统计单元,还用于当所述第一数量不大于所述第一预设阈值时,统计所述源ip地址或所述源端口不同,且所述目标ip地址和所述目标端口相同的以太网包的第二数量,将所述第二数量发送给所述判断单元;所述判断单元,还用于当所述第二数量大于第二预设阈值时,判定所述当前以太网包的发送方向为客户端到服务器。

由此可见,在本发明实施例的技术方案中,首先,实时地在流量采集设备 发送的以太网包数据流中获取当前以太网包,然后,通过对该以太网包数据流中的每一个当前以太网包进行判断和分析,就可以实时地获取包括源ip地址、目标ip地址、源端口和目标端口的互访信息;而且,在本发明实施例的技术方案中,无需在业务支撑系统中部署负载均衡配置服务器和节点自动发现服务器,也无需各个配置项节点通过日志记录互访信息。而在现有技术中,需要在业务支撑系统中部署负载均衡配置服务器和节点自动发现服务器,或者需要各个配置项节点通过日志记录互访信息;而且,在现有的互访信息的获取方法中只能获取配置项之间的静态互访信息。因此,和现有技术相比,本发明实施例提出的互访信息的获取方法和装置,不仅能够实时地获取配置项之间的互访信息;并且,实现起来简单方便,便于普及,适用范围更广。

附图说明

图1为本发明实施例中互访信息的获取方法的实现流程示意图;

图2为现有技术中以太网包的组成结构示意图;

图3为本发明实施例中确定当前以太网包发送方向的第一种实现方法流程示意图;

图4为本发明实施例中确定当前以太网包发送方向的第二种实现方法流程示意图;

图5为本发明实施例中确定当前以太网包发送方向的第三种实现方法流程示意图;

图6为本发明实施例中互访信息的获取装置的组成结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

图1为本发明实施例中互访信息的获取方法的实现流程示意图,如图1所示,互访信息的获取方法包括以下步骤:

步骤101、在流程采集设备发送的以太网包数据流中获取当前以太网包。

在本发明的具体实施例中,可以在业务支撑系统中设置一个配置服务器。在本步骤中,所述配置服务器可以实时地接收流量采集设备发送的以太网包的数据流。具体地,所述流量采集设备可以是业务支撑系统中的以太网交换机,也可以是在业务支撑系统中设置的其他流量采集设备。

目前,端口镜像(portmirroring)是一种监控和分析进出网络的所有数据包的方法,广泛应用于信息安全,故障定位,以及数据测试中。因此在本发明的具体实施例中,以太网交换机可以应用端口镜像技术将进出该以太网交换机一个或多个端口的以太网包都进行复制并发送到配置服务器中。

在本步骤中,配置服务器首先从接收到的以太网包数据流中获取当前以太网包。具体地,配置服务器可以按照先进先出的原则在以太网包数据流中获取当前以太网包,也可以按照其他预设的选择策略从以太网包数据流中获取当前以太网包。

步骤102、当前以太网包包括ip协议包时,在ip协议包中获取互访信息的源ip地址和目标ip地址。

在本步骤中,配置服务器判断当前以太网包是否包括ip协议包,当所述当前以太网包包括ip协议包时,在ip协议包中获取互访信息的源ip地址和目标ip地址;否则,丢弃当前以太网包。图2为现有技术中以太网包的组成结构示意图,如图2所示,一个以太网包由5个字段组成,分别为:目的mac地址、源mac地址、类型、数据和帧检验序列。其中,第三个字段是2个字节的类型字段,用来标志上一层使用的是什么协议,例如,当类型字段的值为0x0800时,就表示上层使用的是ip协议,此时配置服务器可以判断出所述当前以太网包包括ip协议包,配置服务器在ip协议包中获取互访信息的源ip地址和目标ip地址;否则,丢弃当前以太网包。

在tcp/ip标准中,一个ip协议包由首部和数据两部分组成。其中,首部的前一部分是固定部分,共20字节,是所有ip协议包必须具有的。所述固定部分的第13~16个字节为源ip地址,第17~20个字节为目标ip地址。因此, 在本步骤中,配置服务器可以根据ip协议包的数据格式,在ip协议包中获取互访信息的源ip地址和目标ip地址。需要说明的是,此时获取到的ip地址是一个4字节的32位的整型,通过每8位的移位运算可以获取可读的ip地址,例如,10.70.240.72。

步骤103、ip协议包中包括tcp协议包时,在tcp协议包中获取互访信息的源端口和目标端口。

根据tcp/ip标准,在ip协议包的首部中,除了包括源ip地址和目标ip地址之外,还包括:版本、首部长度、服务类型、总长度、标识、标志、片偏移、生存空间、协议和首部校验和。其中,协议字段指出此ip协议包携带的数据是使用哪种协议,以便使目的主机的ip层知道应将数据部分上交给哪个过程处理。例如,当协议字段的值为0x06时,就表示上层使用的是tcp协议。因此,配置服务器可以根据ip协议包中的协议字段判断ip协议包中是否包括tcp协议包。当ip协议包中包括tcp协议包时,配置服务器在tcp协议包中获取互访信息的源端口和目标端口;否则,丢弃当前以太网包。

根据tcp/ip标准,一个tcp协议包包括首部和数据两部分。其中,tcp协议包首部的前20个字节是固定的。源端口和目标端口各占2个字节。源端口占第0~1个字节,目标端口占第2~3个字节。因此,在本步骤中,配置服务器可以根据tcp协议包的数据格式,在tcp协议包中获取互访信息的源端口和目标端口。

在本发明的具体实施方式中,互访信息包括:以太网包的源ip地址、目标ip地址、源端口和目标端口。由此可见,通过上述的步骤,配置服务器可以获取到配置项之间的互访信息。例如,假设节点1的ip地址为a,端口为x,节点2的ip地址为b,端口为y。当节点1访问节点2时,通过本发明的技术方案可以得到:a:x->b:y。反之,当节点2访问节点1时,可以得到:b:y->a:x。

根据上述的描述可知,由于配置服务器是实时地在流量采集设备发送的以太网包数据流中获取当前以太网包,然后通过对该以太网数据流中的每一个当前以太网包进行判断和分析,就可以实时地获取包括源ip地址、目标ip地址、 源端口和目标端口的互访信息。而且,在本发明实施例的技术方案中,无需在业务支撑系统中部署负载均衡配置服务器和节点自动发现服务器,也无需各个配置项节点通过日志记录互访信息,因此,本发明实施例提出的互访信息的获取方法,不仅能够实时地获取配置项之间的互访信息;并且,实现起来简单方便,便于普及,适用范围更广。

在本发明的具体实施例中,配置服务器在获取到当前以太网数据包的源ip地址、目标ip地址、源端口和目标端口之后,就可以获知哪两个配置项之间存在互访关系。但是通过上述的步骤101~步骤103,还无法确定当前以太网包的发送方向,即无法确定当前以太网包是服务器(server)发送给客户端(client)的,还是客户端发送给服务器的。例如:假设节点1的ip地址为a,端口为x,节点2的ip地址为b,端口为y。当节点1访问节点2时,通过本发明的技术方案可以得到:a:x->b:y。但是此时还无法确定节点1和节点2谁是服务器,谁是客户端。

较佳地,在本发明的具体实施例中,配置服务器在tcp协议包中获取到互访信息的源端口和目标端口之后,配置服务器还可以确定当前以太网包的发送方向。图3为本发明实施例中确定当前以太网包发送方向的第一种实现方法流程示意图,如图3所示,在本发明的具体实施例中,确定当前以太网包发送方向的方法进一步包括如下步骤:

步骤301、当tcp协议包中的syn为1时,判断tcp协议包中的确认ack比特是否为0,若是,执行步骤302;否则,执行步骤303。

在tcp/ip标准中,tcp是面向连接的协议,tcp连接的建立和释放是每一次面对连接的通信中必不可少的过程。因此,整个tcp连接可以分为三个阶段:连接建立、数据传输和连接释放。其中,tcp连接的建立采用客户端服务器的方式。主动发起连接建立的应用进程叫做客户端,而被动等待连接建立的应用进程叫做服务器。具体地,在连接建立阶段,客户端向服务器发送syn,等待服务器确认,即当syn=1,而ack=0时,表明这是一个连接请求报文。服务器若同意建立连接,则应在响应的报文中使syn=1和ack=1。客户端收 到服务器发送的syn+ack后,向服务器发送确认信号ack。如此完成三次握手,建立连接。

由于syn是在连接建立时用来同步序号的,因此,当syn=1而ack=0时,表明这是一个连接请求的报文,即该报文是客户端发送给服务器的。在本发明的具体实施例中,当tcp协议包中的syn为1时,判断tcp协议包中的ack是否为0,若是,执行步骤302;否则,执行步骤303。

步骤302、判定当前以太网包的发送方向为客户端到服务器,结束当前处理流程。

在本发明的具体实施例中,当前以太网包的发送方向包括:客户端到服务器,以及服务器到客户端。

在本步骤中,当syn=1且ack=0时,表明这是一个客户端请求服务器建立连接的报文,因此可以判定当前以太网包的发送方向为客户端到服务器,此时结束当前处理流程。

步骤303、判定当前以太网包的发送方向为服务器到客户端。

在本步骤中,当syn=1且ack=1时,表明这是一个服务器响应客户端的报文,因此可以判定当前以太网包的发送方向为服务器到客户端。

图4为本发明实施例中确定当前以太网包发送方向的第二种实现方法流程示意图,如图4所示,在本发明的具体实施例中,确定当前以太网包发送方向的方法进一步包括如下步骤:

步骤401、获取tcp协议包数据中的报文类型。

在本发明的具体实施例中,当配置服务器根据tcp协议包首部中的字段无法判断出当前以太网包的发送方向时,配置服务器还可以获取tcp协议包数据中的报文类型。其中,所述报文类型包括:请求报文和响应报文。以常见的http(hypertexttransferprotocol,超文本传输协议)为例,http有两种报文:请求报文和响应报文。http的请求报文和响应报文都是由三部分组成,即:开始行、首部行和实体主体(entitybody)。其中,开始行是用于区分是请求报文还是响应报文。在请求报文中的开始行叫做请求行,而在响应报文中的开始行 叫做状态行。其中,请求行包括:方法、url和版本;而状态行包括:版本、状态码和短语。

步骤402、根据报文类型确定当前以太网包的发送方向。

在本发明的具体实施例中,当报文类型为请求报文时,确定当前以太网包的发送方向为客户端到服务器;当报文类型为响应报文时,确定当前以太网包的发送方向为服务器到客户端。

根据上述的描述可知,当配置服务器根据tcp协议包首部中的字段无法判断出当前以太网包的发送方向时,在本发明的具体实施例中,配置服务器还可以获取tcp协议包数据中的报文类型,然后根据tcp协议包数据中的报文类型,确定当前以太网包的发送方向。

图5为本发明中实施例确定当前以太网包发送方向的第三种实现方法流程示意图,如图5所示,在本发明的具体实施例中,确定当前以太网包发送方向的方法进一步包括如下步骤:

步骤501、统计源ip地址和源端口相同,且目标ip地址或目标端口不同的以太网包的第一数量。

在本步骤中,配置服务器统计源ip地址和源端口相同,且目标ip地址或目标端口不同的以太网包的第一数量。例如,配置服务器可以统计源ip地址均为a,源端口均为x,且目标ip地址或目标端口不同的以太网包的第一数量。

步骤502、判断第一数量是否大于第一预设阈值,若是,执行步骤503;否则,执行步骤504。

在本步骤中,当第一数量大于第一预设阈值时,执行步骤503;否则,执行步骤504。

步骤503、判定当前以太网包的发送方向为服务器到客户端,结束当前处理流程。

通常情况下,服务器的端口是固定的,而客户端的端口则是随机分配的,因此在本发明的具体实施例中,配置服务器可以统计源ip地址和源端口相同,且目标ip地址或目标端口不同的当前以太网包的第一数量,当第一数量大于第 一预设阈值时,判定当前以太网包的发送方向为服务器到客户端。

步骤504、统计源ip地址或源端口不同,且目标ip地址和目标端口相同的以太网包的第二数量。

在本步骤中,配置服务器统计源ip地址或源端口不同,且目标ip地址和目标端口相同的以太网包的第二数量。例如,配置服务器可以统计目标ip地址均为b,目标端口均为y,且源ip地址或源端口不同的以太网包的第二数量。

步骤505、判断第二数量是否大于第二预设阈值,若是,执行步骤506;否则,执行步骤507。

在本步骤中,当第二数量大于第二预设阈值时,执行步骤506;否则,执行步骤507。

步骤506、判定当前以太网包的发送方向为客户端到服务器,结束当前处理流程。

在本步骤中,当第二数量大于第二预设阈值时,配置服务器判定当前以太网包的发送方向为客户端到服务器。

步骤507、结束确定当前以太网包发送方向的流程。

本发明实施例提出的互访信息的获取方法,不仅可以实时地获取包括源ip地址、目标ip地址、源端口和目标端口的互访信息,而且无需在业务支撑系统中部署负载均衡配置服务器和节点自动发现服务器,也无需各个配置项节点通过日志记录互访信息。因此,和现有技术相比,本发明实施例提出的互访信息的获取方法,不仅能够实时地获取配置项之间的互访信息;并且,实现起来简单方便,便于普及,适用范围更广。

图6为本发明实施例中互访信息的获取装置的组成结构示意图,如图6所示,该获取装置包括:接收单元601、获取单元602;其中,

接收单元601,用于接收流量采集设备发送的以太网包数据流,将所述以太网包数据流发送给所述获取单元602;

所述获取单元602,用于从所述以太网包数据流中获取当前以太网包,当所述当前以太网包包括ip协议包时,在所述ip协议包中获取互访信息的源ip 地址和目标ip地址,还用于当所述ip协议包中包括tcp协议包时,在所述tcp协议包中获取所述互访信息的源端口和目标端口。

进一步的,该装置还包括:判断单元603;

所述获取单元602,还用于获取所述tcp协议包中的同步序列号syn和确认ack比特,并将所述syn和所述ack比特发送给所述判断单元603;

所述判断单元603,用于当所述syn为1且所述ack比特为0时,判定所述当前以太网包的发送方向为客户端到服务器,还用于当所述syn为1且所述ack比特为1时,判定所述当前以太网包的发送方向为服务器到客户端。

进一步的,所述获取单元602,还用于获取所述tcp协议包数据中的报文类型,将所述报文类型发送给所述判断单元603;

所述判断单元603,还用于根据所述报文类型确定所述当前以太网包的发送方向。

进一步的,该装置还包括:统计单元604;

所述获取单元602,还用于将所述源ip地址、所述目标ip地址、所述源端口和所述目标端口发送给所述统计单元604;

所述统计单元604,用于统计所述源ip地址和所述源端口相同,且所述目标ip地址或目标端口不同的以太网包的第一数量,将所述第一数量发送给所述判断单元603;

所述判断单元603,还用于当所述第一数量大于第一预设阈值时,判定所述当前以太网包的发送方向为服务器到客户端。

进一步的,所述统计单元604,还用于当所述第一数量不大于所述第一预设阈值时,统计所述源ip地址或所述源端口不同,且所述目标ip地址和所述目标端口相同的以太网包的第二数量,将所述第二数量发送给所述判断单元603;

所述判断单元603,还用于当所述第二数量大于第二预设阈值时,判定所述当前以太网包的发送方向为客户端到服务器。

在实际应用中,所述接收单元601、获取单元602、判断单元603和统计单 元604均可由位于配置服务器的中央处理器(cpu)、微处理器(mpu)、数字信号处理器(dsp)、或现场可编程门阵列(fpga)等实现。

本发明实施例提出的互访信息的获取装置,不仅可以实时地获取包括源ip地址、目标ip地址、源端口和目标端口的互访信息,而且无需在业务支撑系统中部署负载均衡配置服务器和节点自动发现服务器,也无需各个配置项节点通过日志记录互访信息。因此,和现有技术相比,本发明提出的互访信息的获取装置,不仅能够实时地获取配置项之间的互访信息;并且,实现起来简单方便,便于普及,适用范围更广。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个 流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1