一种多层网络传输中源信息的获取方法、装置及系统与流程

文档序号:20348559发布日期:2020-04-10 22:48阅读:165来源:国知局
一种多层网络传输中源信息的获取方法、装置及系统与流程

本申请涉及通信技术领域,具体而言,涉及一种多层网络传输中源信息的获取方法、装置及系统。



背景技术:

随着计算机安全产业的发展和信息化的推进,企业对网络安全的需求越来越强烈,获取用户网际协议地址(internetprotocoladdress,ip地址)进行追踪溯源变成了常见的需求,但是用户请求信息在反向代理、负载均衡、内容分发网络(contentdeliverynetwork,cdn)加速等复杂网络以及网关流转的过程中往往会丢失源ip。

目前的解决方案是利用传输控制协议/网际协议(transmissioncontrolprotocol/internetprotocol,tcp/ip)报文的可选项(option)字段实现信息透传,利用协议中的可选项,将源ip信息存放在tcp或ip报文的可选项中。但是,一方面,ip报文的option传输内容有限,且公网路由器对ipoption的检查较为严格,一般都会直接丢弃带有ipoption的报文,另一方面,tcp报文在经过网络地址转换(networkaddresstranslation,nat)设备后,整个tcp报文的头部(包括option字段)都会被统一替换,从而导致源ip信息丢失。



技术实现要素:

本申请实施例的目的在于提供一种多层网络传输中源信息的获取方法、装置及系统,能够在穿透多层网络后,仍可获取到源ip等源信息。

第一方面,本申请提供一种多层网络传输中源信息的获取方法,多层网络包括入口网络设备、至少一个中间网络设备和目标网络设备,所述入口网络设备通过所述至少一个中间网络设备向目标网络设备传输目标报文,所述入口网络设备、所述中间网络设备和所述目标网络设备均与旁路服务器通信连接,所述方法应用于所述旁路服务器,所述方法包括:接收入口网络设备发来的源信息和第一端口号,所述源信息是由所述入口网络设备从目标报文中提取获得,所述第一端口号为所述入口网络设备与下一个中间网络设备通信时使用的信息发送端口的端口号;接收每一个中间网络设备发来的第二端口号,所述第二端口号包括所述中间网络设备与传输路径上的下一个网络设备通信时使用的信息发送端口的端口号和上一个网络设备使用的信息发送端口的端口号,所述源信息与入口网络设备的第一端口号和所有中间网络设备的第二端口号形成具有关联关系的端口链;接收目标网络设备的源信息查询请求,所述源信息查询请求携带目标网络设备的上一个中间网络设备的信息发送端口的端口号;根据携带的所述端口号从对应的端口链中确定出源信息,并向所述目标网络设备发送所述源信息。

在上述方案中,使请求路由过程中所有经过的网络设备主动将完成请求所使用的本地端口同步至旁路服务器,旁路服务器将接收到的端口号组装成端口链,从而目标网络设备可以通过端口从对应的端口链中反查到源信息。

可选的,所述方法还包括:接收入口网络设备和中间网络设备中的任一网络设备发来的标记指令,所述标记指令用于指示将端口链中所述网络设备之前发来的端口号标记为失效,在端口链中的所有端口号均被标记为失效后,所述端口链失效;其中,所述根据携带的所述端口号从对应的端口链中确定出源信息,包括:根据所述端口号从有效的端口链中确定出源信息。

在形成端口链后,由于端口存在循环使用的情况,所以需要在通讯完毕后把端口链设置为失效,避免再次循环使用到该端口时,旁路服务器根据该端口反查到错误的端口链中,获得错误的源信息。

可选的,所述端口链中记录有时间戳,每当所述端口链增加一个端口号后所述时间戳同步更新,所述根据携带的所述端口号从对应的端口链中确定出源信息,包括:当所述端口号对应有多条端口链的情况下,根据所述多条端口链的时间戳确定时间最近的目标端口链,并根据所述端口号从所述目标端口链中确定出对应的源信息。

通过设置时间戳使得每条端口链能够持久化,能够便于目标网络设备在通讯完毕后做到事后查询。

可选的,在向所述目标网络设备发送所述源信息后,所述方法还包括:删除所述端口号对应的端口链。

当目标网络设备已获取到源信息后,旁路服务器可以将对应的端口链删除,从而减少资源占用和查询耗时,也能有效避免端口循环使用带来的端口链重复的问题。

可选的,所述源信息包括所述目标报文携带的源ip地址。

第二方面,本申请提供一种多层网络传输中源信息的获取装置,多层网络包括入口网络设备、至少一个中间网络设备和目标网络设备,所述入口网络设备通过所述至少一个中间网络设备向目标网络设备传输目标报文,所述入口网络设备、所述中间网络设备和所述目标网络设备均与旁路服务器通信连接,所述装置配置于所述旁路服务器,所述装置包括:第一接收模块,用于接收入口网络设备发来的源信息和第一端口号,所述源信息是由所述入口网络设备从目标报文中提取获得,所述第一端口号为所述入口网络设备与下一个中间网络设备通信时使用的信息发送端口的端口号;第二接收模块,用于接收每一个中间网络设备发来的第二端口号,所述第二端口号包括所述中间网络设备与传输路径上的下一个网络设备通信时使用的信息发送端口的端口号和上一个网络设备使用的信息发送端口的端口号,所述源信息与入口网络设备的第一端口号和所有中间网络设备的第二端口号形成具有关联关系的端口链;查询响应模块,用于接收目标网络设备的源信息查询请求,所述源信息查询请求携带目标网络设备的上一个中间网络设备的信息发送端口的端口号;根据携带的所述端口号从对应的端口链中确定出源信息,并向所述目标网络设备发送所述源信息。

第三方面,本申请提供一种多层网络传输中源信息的获取方法,多层网络包括入口网络设备、至少一个中间网络设备和目标网络设备,所述入口网络设备通过所述至少一个中间网络设备向目标网络设备传输目标报文,所述入口网络设备、所述中间网络设备和所述目标网络设备均与旁路服务器通信连接,所述方法应用于所述入口网络设备,所述方法包括:从接收的目标报文中提取出源信息;向旁路服务器发送所述源信息和第一端口号,所述第一端口号为所述入口网络设备与下一个中间网络设备通信时使用的信息发送端口的端口号。

可选的,所述向旁路服务器发送所述源信息和第一端口号,包括:在所述入口网络设备与下一个中间网络设备建立通信连接的握手阶段,向旁路服务器发送所述源信息和第一端口号。

第四方面,本申请提供一种多层网络传输中源信息的获取方法,多层网络包括入口网络设备、至少一个中间网络设备和目标网络设备,所述入口网络设备通过所述至少一个中间网络设备向目标网络设备传输目标报文,所述入口网络设备、所述中间网络设备和所述目标网络设备均与旁路服务器通信连接,所述方法应用于任一所述中间网络设备,所述方法包括:接收传输路径上的上一个网络设备发来的目标报文,并从所述目标报文中获取上一个网络设备使用的信息发送端口的端口号;向旁路服务器发送第二端口号,所述第二端口号包括所述中间网络设备与传输路径上的下一个网络设备通信时使用的信息发送端口的端口号和所述上一个网络设备使用的信息发送端口的端口号。

第五方面,本申请提供一种多层网络传输中源信息的获取系统,所述系统包括入口网络设备、至少一个中间网络设备、目标网络设备以及旁路服务器,所述入口网络设备通过所述至少一个中间网络设备向目标网络设备传输目标报文,所述入口网络设备、所述中间网络设备和所述目标网络设备均与所述旁路服务器通信连接;其中,所述入口网络设备用于从接收的目标报文中提取出源信息;并向所述旁路服务器发送所述源信息和第一端口号,所述第一端口号为所述入口网络设备与下一个中间网络设备通信时使用的信息发送端口的端口号;任一所述中间网络设备用于接收传输路径上的上一个网络设备发来的目标报文,并从所述目标报文中获取上一个网络设备使用的信息发送端口的端口号;以及向旁路服务器发送第二端口号,所述第二端口号包括所述中间网络设备与传输路径上的下一个网络设备通信时使用的信息发送端口的端口号和所述上一个网络设备使用的信息发送端口的端口号;所述旁路服务器用于将所述源信息与入口网络设备的第一端口号和所有中间网络设备的第二端口号形成具有关联关系的端口链;所述目标网络设备用于向所述旁路服务器发起源信息查询请求,所述源信息查询请求携带目标网络设备的上一个中间网络设备的信息发送端口的端口号;所述旁路服务器还用于根据源信息查询请求中携带的所述端口号从对应的端口链中确定出源信息,并向所述目标网络设备发送所述源信息。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例中的多层网络的结构示意图;

图2为本申请实施例中一种具体的网络结构示意图;

图3为本申请实施例提供的源信息的获取方法的流程图;

图4为本申请实施例中网络设备建立tcp连接时的三次握手的示意图;

图5为本申请实施例中网络设备断开tcp连接时的四次握手的示意图;

图6为本申请实施例提供的源信息的获取装置的示意图;

图7为本申请实施例提供的旁路服务器的示意图。

图标:101-入口网络设备;102-中间网络设备;103-目标网络设备;104-旁路服务器。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

本申请实施例提供一种多层网络传输中源信息的获取方法,其中,如图1所示,多层网络包括入口网络设备101、至少一个中间网络设备102和目标网络设备103。入口网络设备101用于接收公网传来的目标报文,并通过路由请求将目标报文传输至目标网络设备103。入口网络设备101、中间网络设备102和目标网络设备103配置在同一局域网内,入口网络设备101设置在局域网入口并与公网连接,在传输目标报文时,目标报文依次通过该至少一个中间网络设备102到达目标网络设备103。中间网络设备102可以是nat设备、路由器、网关等网络设备。

在本实施例的获取方法中,多层网络中的每一个网络设备均与旁路服务器104通信连接,通信方式包括但不限于tcp通信或者用户数据报协议(userdatagramprotocol,udp)通信等。每一个网络设备在与传输路径上的下一个网络设备通信时,同时向旁路服务器104同步端口信息(入口网络设备101还同步从目标报文中提取的源信息),从而旁路服务器104根据每个网络设备发来的端口信息组装端口链,使得目标网络设备103通过端口能够从端口链中反查到所需的源信息。

以图2为例,入口网络设备通过两个中间网络设备将目标报文转发到目标网络设备。在传输路径上,入口网络设备的下一个网络设备为中间网络设备1,中间网络设备1的下一个网络设备为中间网络设备2,中间网络设备的下一个网络设备为目标网络设备。

本实施例中所指的源信息可以涵盖任何在代理转发过程中可能存在丢失或者替换的信息,包括源ip地址或者目标报文中的附加信息。在具体的实施过程中,入口网络设备向旁路服务器同步何种源信息,可在业务层面进行具体设定,如果只需要获取源ip,那么在业务层同步时只同步源ip即可,因此,本实施例对源信息的具体类型不做限定。

本实施例可以应用在需要进行安全控制的局域网络,例如a公司的某台设备遭到入侵,那么a公司的安全部门可通过对源ip的查询确定黑客是通过公司哪一台设备(连接了公网的设备)进入到公司内部网络的,从而可以及时对该设备进行特殊处理。

本实施例以图2所示网络为例,对本实施例中的源信息的获取方法进行具体介绍,请参照图3,该方法包括如下步骤:

步骤201:入口网络设备从接收的目标报文中提取出源信息。

入口网络设备与公网连接,能够接收公网发来的目标报文。入口网络设备从目标报文的option字段中提取出源信息,或者从目标报文中的其他字段中提取出所需的任意信息。

步骤202:入口网络设备向旁路服务器发送源信息和第一端口号。

入口网络设备向传输路径上的下一个网络设备发起连接建立请求,并在建立通信连接的握手阶段向旁路服务器同步源信息和第一端口号,比如tcp连接。入口网络设备与中间网络设备1建立tcp连接,以tcp通讯向中间网络设备转发目标报文。入口网络设备与中间网络设备1建立tcp连接包括三次握手阶段。

图4示出了三次握手的示意图,入口网络设备向中间网络设备1发送同步序列编号(synchronizesequencenumbers,syn)报文,表示请求建立tcp连接,中间网络设备1收到syn报文,向入口网络设备发送syn+确认字符(acknowledgecharacter,ack)报文,表示确认,入口网络设备收到syn+ack报文后,向中间网络设备1发送ack报文,此报文发送完毕,入口网络设备与中间网络设备1成功建立tcp连接,完成三次握手。入口网络设备在发出syn报文且接收到中间网络设备1的ack报文后,向旁路服务器同步源信息和第一端口号。

其中,第一端口号包括入口网络设备与下一个中间网络设备通信时使用的信息发送端口的端口号。

在入口网络设备与中间网络设备1通信的过程中,通信双方使用的端口有两个,一个是入口网络设备的信息发送端口,一个是中间网络设备1的信息接收端口。信息接收端口通常来说是固定的,例如nginx默认固定80端口,ssh默认固定22端口。而信息发送端口通常是不固定的,设备在建立网络连接时需要重新开一个本地端口,每个tcp连接独占一个端口,新开端口不会使用之前使用过的端口,直到端口用尽。端口的数量是有限的,例如端口号在0-65535之间分配,如果第一次连接占用端口号为3333的端口(用完会释放),下次连接占用端口号为3334的端口(用完会释放),直至端口号为65535的端口(用完会释放)被占用,然后重新从低位到高位依次查找当前可用没有被占用的端口。

在图2中,入口网络设备的端口(port0)是接收目标报文时使用的信息接收端口,端口(port1)是与中间网络设备1通信时使用的信息发送端口,则入口网络设备向旁路服务器同步ip(源信息)和port1。

步骤203:中间网络设备向旁路服务器发送第二端口号。

其中,第二端口号包括中间网络设备与传输路径上的下一个网络设备通信时使用的信息发送端口的端口号,以及上一个网络设备使用的信息发送端口的端口号。多层网络中的任意一个中间网络设备接收传输路径上的上一个网络设备转发的目标报文,并从目标报文中获取上一个网络设备使用的信息发送端口的端口号。

在图2中,中间网络设备1通过信息接收端口(port2)接收入口网络设备转发的目标报文,从目标报文中获取入口网络设备的端口号port1。中间网络设备1新开一个本地端口(信息发送端口port3)与下一个中间网络设备2建立tcp连接,中间网络设备1在发出syn报文且接收到中间网络设备2的ack报文后,向旁路服务器同步端口号port1和port3。

中间网络设备2通过信息接收端口(port4)接收中间网络设备1转发的目标报文,从目标报文中获取中间网络设备1的端口号port3。中间网络设备2新开一个本地端口(信息发送端口port5)与目标网络设备建立tcp连接,中间网络设备2在发出syn报文且接收到目标网络设备的ack报文后,向旁路服务器同步端口号port3和port5。

步骤204:旁路服务器接收入口网络设备发来的源信息和第一端口号,以及每个中间网络设备发来的第二端口号,将源信息和端口号组装成具有关联关系的端口链。

入口网络设备向旁路服务器同步ip和port1,中间网络设备1向旁路服务器同步port1和port3,中间网络设备2向旁路服务器同步port3和port5,因此,在旁路服务器中将多个端口号首尾相接,形成一条端口链:ip->port1->port3->port5。

步骤205:目标网络设备向旁路服务器发起源信息查询请求,源信息查询请求携带目标网络设备的上一个中间网络设备的信息发送端口的端口号。

目标网络设备通过信息接收端口(port6)接收中间网络设备2转发的目标报文,从目标报文中获取中间网络设备2的端口号port5,根据port5向旁路服务器发起源信息查询请求。

需要说明的是,在tcp连接中,信息接收端口port6是固定端口,由于其他的目标网络设备也都使用相同的端口号进行信息接收,因此port6具有较高的重复性,不能够用于端口链的反查。而不同tcp连接的port5端口是不相同的,且目标网络设备可以获知每个与port6进行tcp通信的上游端口port5,因此目标网络设备使用port5进行反查。

步骤206:旁路服务器根据源信息查询请求中携带的端口号从对应的端口链中确定出源信息。

步骤207:旁路服务器向目标网络设备发送该源信息。

目标网络设备发起源信息查询请求,该源信息查询请求包括中间网络设备2使用的信息发送端口的端口号port5。在旁路服务器中形成有一条对应的端口链:ip->port1->port3->port5,因此旁路服务器根据port5能够反查到端口链最初的源ip信息,然后将该源ip返回给目标网络设备。

需要说明的是,在图2中,port0、port2、port4、port6是设备使用的信息接收端口(固定端口),port1、port3、port5是设备使用的信息发送端口(随机端口)。在向旁路服务器同步端口信息时,可以仅同步随机端口port1、port3、port5,也可以将随机端口和固定端口port0、port2、port4、port6一起同步到旁路服务器中。例如,以中间网络设备1为例,当前信息接收端口为固定端口port2,下次信息传递时将使用随机端口port3,且根据tcp协议可确定与port2端口通信的上游端口为port1,所以中间网络设备1具有三个端口信息:随机port1、固定port2和随机port3。中间网络设备1可以向旁路服务器同步port1和port3,或者同步port1、port2和port3,同步上述两个或者三个端口最终形成的端口链都是相同的,同步三个端口能够确保端口链的正确性。此外,目标网络设备也可以向旁路服务器同步端口port5和port6。

可选的,在形成端口链后,由于端口存在循环使用的情况,所以需要在通讯完毕后及时断开端口链或者把端口链设置为失效,避免再次循环使用到该端口时,旁路服务器根据该端口反查到错误的端口链中,导致获得错误的源ip地址,因此,可以在端口链中设置是否有效标记,用于反映端口链的当前状态为有效或是失效。

tcp连接在建立时包括三次握手,在断开时包括四次握手,入口网络设备和中间网络设备中的任一网络设备在与传输路径上的下一个网络设备断开tcp连接的握手阶段,向旁路服务器发送使端口链断开或者设置端口链为失效的指示。

图5示出了断开tcp连接时的四次握手的示意图,入口网络设备在断开与中间网络设备1的tcp连接时,入口网络设备向中间网络设备1发送结束报文(fin报文),表示断开tcp连接,中间网络设备1向入口网络设备返回ack报文以及fin报文,入口网络设备收到fin报文后,向中间网络设备1发送ack报文,表示确认关闭连接。入口网络设备(或者任一中间网络设备)在发出fin报文且收到下一个网络设备的fin报文后,向旁路服务器指示将之前发送的端口号从端口链中断开或者在端口链中将之前发送的端口号标记为失效。

可选的,入口网络设备向旁路服务器发送标记指令,该标记指令用于指示旁路服务器将端口链中的port1标记为失效。中间网络设备1向旁路服务器发送标记指令,该标记指令用于指示旁路服务器将端口链中的port1和port3标记为失效。中间网络设备2向旁路服务器发送标记指令,该标记指令用于指示旁路服务器将端口链中的port3和port5标记为失效。当端口链中存在未被标记为失效的端口号时,该条端口链仍为有效状态;在端口链中的所有端口号均被标记为失效后,则该条端口链失效。

在通信过程中,目标网络设备通过port5向旁路服务器查询源ip,旁路服务器根据端口号port5查找对应的端口链,当对应的端口链有多条的情况下,由于极大部分端口链已被标记为失效,仅有当前通信过程中形成的端口链仍处于有效状态,因此旁路服务器能够从多条端口链中确定出唯一一条以port5为末尾的有效端口链,从而根据该有效的端口链准确溯源到所需的源ip。

上述方案能够有效保证目标网络设备及时获取到目标报文对应的源ip。

另一种实施方式为,在端口链上记录通信时间戳,每当端口链上增加一个端口号后,端口链上的时间戳也同步更新,即旁路服务器每收到一个端口号,则更新端口链上的时间戳,最终形成的端口链上的时间戳能够反映目标网络设备的最后通信时间。当目标网络设备发起查询请求后,旁路服务器能够查询到与port5对应的所有端口链。该方案使生成的每条端口链持久化,能够便于目标网络设备在通讯完毕后做到事后ip查询,目标网络设备通过port5和当时通信的时间可准确查询到对应的端口链,获得源ip。

同时,在具体实施时,旁路服务器可以根据端口号port5从对应的所有端口链中确定出时间最近的目标端口链,并根据port5从该目标端口链中确定出对应的源信息,同样能够保证目标网络设备及时获取到源ip。

上述将端口链标记为失效和在端口链中设置时间戳的两种方案可以择一进行实施。当目标网络设备已获取到源信息后,旁路服务器可以将port5对应的端口链删除,从而减少资源占用和查询耗时,也能有效避免上述端口循环使用带来的端口链重复的问题。

本申请实施例基于如今大多数安全市场项目的需求,通过一种借助旁路服务器和组装端口链的方式,将链路层网络设备的端口信息写入旁路服务器,从而可在穿透多层网络后,仍可获取到原始ip信息和附加信息,解决了现有技术在多层网络转发时,原始ip信息丢失的问题,且由于不是在ip协议上进行修改,能够降低编程难度,使得方案易于实施。

进一步的,本申请实施例还提供一种多层网络传输中源信息的获取系统,如图1所示的网络结构,该系统包括入口网络设备101、至少一个中间网络设备102、目标网络设备103以及旁路服务器104,入口网络设备101通过至少一个中间网络设备102向目标网络设备103传输目标报文,入口网络设备101、中间网络设备102和目标网络设备103均与旁路服务器104通信连接。

具体的,入口网络设备101用于从接收的目标报文中提取出源信息;并向旁路服务器104发送源信息和第一端口号,其中,第一端口号为入口网络设备与下一个中间网络设备通信时使用的信息发送端口的端口号。

任一中间网络设备102用于接收传输路径上的上一个网络设备发来的目标报文,并从目标报文中获取上一个网络设备使用的信息发送端口的端口号;以及向旁路服务器104发送第二端口号;其中,第二端口号包括中间网络设备与传输路径上的下一个网络设备通信时使用的信息发送端口的端口号和上一个网络设备使用的信息发送端口的端口号。

旁路服务器104用于将源信息与入口网络设备的第一端口号和所有中间网络设备的第二端口号形成具有关联关系的端口链。

目标网络设备103用于向旁路服务器104发起源信息查询请求,其中,源信息查询请求携带目标网络设备的上一个中间网络设备的信息发送端口的端口号。

旁路服务器104还用于根据源信息查询请求中携带的端口号从对应的端口链中确定出源信息,并向目标网络设备发送该源信息。

基于同一发明构思,本申请实施例还提供一种多层网络传输中源信息的获取装置,其中,多层网络包括入口网络设备、至少一个中间网络设备和目标网络设备,入口网络设备通过至少一个中间网络设备向目标网络设备传输目标报文,入口网络设备、中间网络设备和目标网络设备均与旁路服务器通信连接,该装置配置于旁路服务器。请参照图6,该装置包括:

第一接收模块301,用于接收入口网络设备发来的源信息和第一端口号,其中,源信息是由入口网络设备从目标报文中提取获得,第一端口号为入口网络设备与下一个中间网络设备通信时使用的信息发送端口的端口号;

第二接收模块302,用于接收每一个中间网络设备发来的第二端口号,其中,第二端口号包括中间网络设备与传输路径上的下一个网络设备通信时使用的信息发送端口的端口号和上一个网络设备使用的信息发送端口的端口号,源信息与入口网络设备的第一端口号和所有中间网络设备的第二端口号形成具有关联关系的端口链;

查询响应模块303,用于接收目标网络设备的源信息查询请求,其中,源信息查询请求携带目标网络设备的上一个中间网络设备的信息发送端口的端口号;并根据携带的端口号从对应的端口链中确定出源信息,并向目标网络设备发送源信息。

可选的,该装置还包括:第三接收模块,用于接收入口网络设备和中间网络设备中的任一网络设备发来的标记指令,该标记指令用于指示将端口链中该网络设备之前发来的端口号标记为失效,在端口链中的所有端口号均被标记为失效后,该端口链失效;查询响应模块303具体用于:根据源信息查询请求携带的端口号从有效的端口链中确定出源信息。

可选的,端口链中记录有时间戳,每当端口链增加一个端口号后时间戳同步更新,查询响应模块303具体用于:当源信息查询请求携带的端口号对应有多条端口链的情况下,根据多条端口链的时间戳确定时间最近的目标端口链,并根据该端口号从目标端口链中确定出对应的源信息。

可选的,该装置还包括:删除模块,用于在查询响应模块向目标网络设备发送源信息后,删除端口号对应的端口链。

上述提供的源信息的获取装置与前一方法实施例的基本原理及产生的技术效果相同,为简要描述,本实施例部分未提及之处,可参考上述的方法实施例中的相应内容,在此不做赘述。

图7示出了本申请实施例提供的旁路服务器400的一种可能的结构。请参照图7,旁路服务器400包括:处理器410、存储器420以及通信接口430,这些组件通过通信总线440和/或其他形式的连接机构(未示出)互连并相互通讯。

其中,存储器420包括一个或多个(图中仅示出一个),其可以是,但不限于,随机存取存储器(randomaccessmemory,简称ram),只读存储器(readonlymemory,简称rom),可编程只读存储器(programmableread-onlymemory,简称prom),可擦除只读存储器(erasableprogrammableread-onlymemory,简称eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,简称eeprom)等。处理器410以及其他可能的组件可对存储器420进行访问,读和/或写其中的数据。

处理器410包括一个或多个(图中仅示出一个),其可以是一种集成电路芯片,具有信号的处理能力。上述的处理器410可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、微控制单元(microcontrollerunit,简称mcu)、网络处理器(networkprocessor,简称np)或者其他常规处理器;还可以是专用处理器,包括数字信号处理器(digitalsignalprocessor,简称dsp)、专用集成电路(applicationspecificintegratedcircuits,简称asic)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

通信接口430包括一个或多个(图中仅示出一个),可以用于和其他设备进行直接或间接地通信,以便进行数据的交互。通信接口430可以是以太网接口;可以是移动通信网络接口,例如3g、4g、5g网络的接口;还是可以是具有数据收发功能的其他类型的接口。

在存储器420中可以存储一个或多个计算机程序指令,处理器410可以读取并运行这些计算机程序指令,以实现本申请实施例提供的源信息的获取方法的步骤以及其他期望的功能。

可以理解,图7所示的结构仅为示意,旁路服务器400还可以包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。图7中所示的各组件可以采用硬件、软件或其组合实现。于本申请实施例中,旁路服务器400接收入口网络设备的源信息和第一端口号,以及接收每个中间网络设备的第二端口号,形成端口链,然后,响应目标网络设备发起的源信息查询请求,并将反查到的源信息反馈给目标网络设备。

本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被计算机的处理器读取并运行时,执行本申请实施例提供的源信息的获取方法的步骤。例如,计算机可读存储介质可以实现为图7中旁路服务器400中的存储器420。

在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

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