报文的处理方法及装置与流程

文档序号:18374148发布日期:2019-08-07 01:58阅读:143来源:国知局
报文的处理方法及装置与流程
本发明涉及通信
技术领域
,尤其涉及一种报文的处理方法及装置。
背景技术
:随着网络的发展以及电子商务、远程办公的普及,SSL(SecureSocketsLayer,安全套接层)VPN(VirtualPrivateNetwork,虚拟局域网)技术由于其强大的功能和实施的方便性得到了广泛的应用。SSLVPN是以HTTPS(HyperTextTransferProtocoloverSecureSocketLayer,利用安全套接层进行加密的超文本传输协议)为基础的VPN技术,它可以利用SSL协议提供的基于证书的身份认证、数据加密和消息完整性验证机制,为用户远程访问公司内部网络提供安全保证。在相关技术中,SSLVPN设备在接收同一对端设备发送的报文时,需要在应用层选择一端口接收该对端设备发送的控制报文,并在应用层对控制报文进行处理,以及在传输层选择另一端口接收该对端设备发送的数据报文,并在传输层对数据报文进行处理。由此可见,相关技术中,SSLVPN设备在处理同一对端发送的报文时,需要占用两个端口,因此,相关技术中,SSLVPN设备对端口资源的利用率低。技术实现要素:有鉴于此,本发明提供一种报文的处理方法及装置,来解决相关技术中SSLVPN设备对端口资源的利用率低的问题。具体地,本发明是通过如下技术方案实现的:根据本发明实施例的第一方面,提供一种报文的处理方法,应用于安全套接层SSL虚拟局域网VPN设备,所述方法包括:针对接收到的报文进行解析,基于解析获得的所述报文的报文属性信息确定发送所述报文的对端设备的套接字信息;其中,所述报文的报文属性信息包括所述报文携带的五元组信息;基于发送所述报文的对端设备的套接字信息确定对应的数据标识;判断所述数据标识是否为指定标识;若所述数据标识为指定标识,转发所述报文;若所述数据标识不为指定标识,将所述报文上送至应用层处理。可选的,所述方法还包括:在与对端设备成功建立SSLVPN连接后,接收对端设备发送的用于通知传输数据报文的通知报文;在接收到所述通知报文后,将本地生成的与所述对端设备一致的套接字信息对应的数据标识设置为指定标识。可选的,所述方法还包括:若所述数据标识为指定标识,保存发送所述报文的对端设备的套接字信息与所述报文的内层源IP地址的对应关系;针对接收到的对应于所述报文的响应报文进行解析,获得所述响应报文的目的IP地址;基于所述响应报文的目的IP地址匹配保存的报文的源IP地址,并在匹配成功后,从保存的所述对应关系中获取发送所述报文的对端设备的套接字信息;基于发送所述报文的对端设备的套接字信息将所述响应报文转发至发送所述报文的对端设备。可选的,所述数据标识包括vpn_channel。根据本发明实施例的第二方面,提供一种报文的处理装置,应用于安全套接层SSL虚拟局域网VPN设备,其特征在于,所述装置包括:解析模块,用于针对接收到的报文进行解析,基于解析获得的所述报文的报文属性信息确定发送所述报文的对端设备的套接字信息;其中,所述报文的报文属性信息包括所述报文携带的五元组信息;确定模块,用于基于发送所述报文的对端设备的套接字信息确定对应的数据标识;判断模块,用于判断所述数据标识是否为指定标识;处理模块,用于若所述数据标识为指定标识,转发所述报文;若所述数据标识不为指定标识,将所述报文上送至应用层处理。可选的,所述装置还包括:通知模块,用于在与对端设备成功建立SSLVPN连接后,接收对端设备发送的用于通知传输数据报文的通知报文;设置模块,用于在接收到所述通知报文后,将本地生成的与所述对端设备一致的套接字信息对应的数据标识设置为指定标识。可选的,所述装置还包括:保存模块,用于若所述数据标识为指定标识,保存发送所述报文的对端设备的套接字信息与所述报文的内层源IP地址的对应关系;获得模块,用于针对接收到的对应于所述报文的响应报文进行解析,获得所述响应报文的目的IP地址;匹配模块,用于基于所述响应报文的目的IP地址匹配保存的报文的源IP地址,并在匹配成功后,从保存的所述对应关系中获取发送所述报文的对端设备的套接字信息;转发模块,用于基于发送所述报文的对端设备的套接字信息将所述响应报文转发至发送所述报文的对端设备。可选的,所述数据标识包括vpn_channel。在本发明中,SSLVPN设备可以在接收到报文后,针对接收到的报文进行解析,并基于解析获得的该报文的报文属性信息确定发送该报文的对端设备的套接字信息,其中,该报文的报文属性信息可以包括该报文携带的五元组信息,在获得发送该报文的对端设备的套接字信息后,SSLVPN设备可以基于该对端设备的套接字信息确定对应的数据标识,并判断该数据标识是否为指定标识,若该对端设备的套接字信息对应的数据标识为指定标识,则SSLVPN设备可以转发该报文;若该对端设备的套接字信息对应的数据标识为第二标识,则SSLVPN设备可以将该报文上送至应用层处理。应用本发明可以基于与对端设备套接字信息对应的数据标识来确定同一端口接收到同一对端设备发送的报文是数据报文还是控制报文,解决了相关技术中因针对同一对端设备需要使用两个不同的端口分别接收数据报文和控制报文而导致的对端口资源的利用率低的问题。附图说明图1是为本发明一实施例示出的一种报文的处理方法的流程图;图2是本发明报文的处理装置所在设备的一种硬件结构图;图3是本发明报文的处理装置的一个实施例框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。请参见图1,为本发明一实施例示出的一种报文的处理方法的流程图。该实施例应用于SSLVPN设备,包括以下步骤:步骤101:针对接收到的报文进行解析,并基于解析获得的所述报文的报文属性信息确定发送所述报文的对端设备的套接字信息;其中,所述报文的报文属性信息包括所述报文携带的五元组信息。在本发明中,上述SSLVPN设备可以为SSLVPN客户端设备,也可以为SSLVPN服务端设备,本发明对此不做限制。在本发明中,上述SSLVPN设备可以与对端设备建立SSLVPN连接,并在与该对端设备成功建立SSLVPN连接后,接收该对端设备发送的用于通知传输数据报文的通知报文,SSLVPN设备在接收到该通知报文后,可以基于该通知报文将本地生成的与该对端设备一致的套接字信息对应的数据标识设置为指定标识。其中,上述数据标识可以为本地socket层中的vpn_channel字段,上述指定标识可以为该vpn_channel字段对应的非默认值,例如,vpn_channel字段对应的默认值可以为0,则此时指定标识可以为1,需要说明的是,上述指定标识可以由用户自定义设置,本发明对此不做限制。在示出的一个实施例中,可以假设上述SSLVPN设备与对端设备A成功建立SSLVPN连接,其中,设备A的套接字信息可以如表1所示:源IP地址目的IP地址源端口号目的端口号连接协议192.168.1.2192.168.6.23040TCP表1需要说明的是,表1仅为示意性举例,并不用于限制本发明。在与设备A成功建立SSLVPN连接后,SSLVPN设备上可以存在如表2所示的套接字信息与数据标识对应关系:表2其中,表2中的套接字信息可以为SSLVPN设备本地生成的与该对端设备一致的套接字信息,数据标识对应的值0可以为设备默认值。需要说明的是,表2仅为示意性举例,并不用于限制本发明。在与设备A成功建立SSLVPN连接后,SSLVPN设备可以接收到设备A发送的用于通知传输数据报文的通知报文,在接收到该通知报文后,SSLVPN设备可以基于该通知报文将本地生成的与该对端设备一致的套接字信息对应的数据标识设置为指定标识。具体地,上述SSLVPN设备可以对接收到的报文进行解析,并获得该报文携带的报文属性信息,其中,该报文属性信息可以为五元组信息。在示出的一个实施例中,该报文携带的五元组信息可以如表3所示:源IP地址目的IP地址源端口号目的端口号连接协议192.168.1.2192.168.6.23040TCP表3类似地,表3同样仅为示意性举例,并不用于限制本发明。在获得上述报文携带的五元组信息后,SSLVPN设备可以基于如表3所示的五元组信息确定发送该报文的对端设备为套接字信息如表1所示的设备A,然后,SSLVPN设备可以将本地生成的与设备A一致的套接字信息对应的数据标识由默认值0设置为指定标识1。此时SSLVPN设备上存在的套接字信息与数据标识的对应关系可以如表4所示:表4类似地,表4同样仅为示意性举例,并不用于限制本发明。在本发明中,上述SSLVPN设备可以接收报文,并对接收到的报文进行解析,获得该报文的报文属性信息。然后,上述SSLVPN设备可以基于该报文的报文属性信息确定发送该报文的对端设备的套接字信息。其中,该报文的报文属性信息可以包括该报文携带的五元组信息。在示出的一个实施例中,可以假设SSLVPN设备对接收到的报文进行解析后,获得的报文属性信息如表3所示,则SSLVPN设备可以确定发送该报文的对端设备的套接字信息如表1所示。步骤102:基于发送所述报文的对端设备的套接字信息确定对应的数据标识。在本发明中,在确定发送上述报文的对端设备的套接字信息后,SSLVPN设备可以基于该套接字信息确定对应的数据标识。在示出的一个实施例中,可以假设SSLVPN设备确定的发送上述报文的对端设备的套接字信息如表1所示,则SSLVPN设备可以基于该套接字信息从表4所示的对应关系中确定对应的数据标识为1。在示出的另一个实施例中,可以假设SSLVPN设备确定的发送上述报文的对端设备的套接字信息如表5所示:源IP地址目的IP地址源端口号目的端口号连接协议192.168.3.2192.168.6.22040TCP表5类似地,表5同样仅为示意性举例,并不用于限制本发明。在确定了该套接字信息后,SSLVPN设备可以基于该套接字信息确定对应的数据标识,可以假设SSLVPN设备并未为该套接字信息设置指定标识,则此时,SSLVPN设备可以确定对应的数据标识为设备默认值,例如,可以为0。步骤103:判断所述数据标识是否为指定标识。步骤104:若所述数据标识为指定标识,转发所述报文;若所述数据标识为第二标识,将所述报文上送至应用层处理。在本发明中,SSLVPN设备在确定发送上述报文的对端设备的数据标识后,可以判断该数据标识是否为指定标识:若该数据标识为指定标识,则SSLVPN设备可以转发该报文;若该数据标识不为指定标识,则SSLVPN设备可以将该报文上送至应用层处理。在本发明中,若SSLVPN设备确定的发送上述报文的对端设备对应的数据标识为指定标识,则可以确定该报文为数据报文,此时,SSLVPN设备可以将该数据报文进行转发;若SSLVPN设备确定的发送上述报文的对端设备对应的数据标识不为指定标识,则可以确定该报文为控制报文,此时,SSLVPN设备可以将该控制报文上送至应用层进行进一步处理。在一个实施例中,上述SSLVPN设备在确定接收到的报文为数据报文后,可以保存发送该报文的对端设备的套接字信息与该报文的内层源IP地址的对应关系,然后,SSLVPN设备可以接收到对应于该报文的响应报文。SSLVPN设备可以对响应报文进行解析,并获得响应报文的目的IP地址,然后,SSLVPN设备可以基于响应报文的目的IP地址匹配保存的报文的源IP地址,并在匹配成功后,从保存的发送报文的对端设备的套接字信息与报文的源IP地址的对应关系中获取发送报文的对端设备的套接字信息,并基于该套接字信息将响应报文转发至发送报文的对端设备。在示出的一个实施例中,可以假设SSLVPN设备确定对端设备A发送的报文X为数据报文,则SSLVPN设备可以保存发送报文X的设备A的套接字信息以及报文X的内层源IP地址的对应关系。可以假设该对应关系如表6所示:表6类似地,表6同样仅为示意性举例,并不用于限制本发明。在保存了如表6所示的对应关系后,SSLVPN设备可以基于报文X的内层目的IP地址将报文X转发至目的设备。目的设备在对报文X进行处理后,可以生成对应于报文X的响应报文Y,然后将响应报文Y发送至SSLVPN设备,SSLVPN设备在接收到响应报文Y后,可以对响应报文Y进行解析,并获得响应报文Y的目的IP地址192.1.2.3,然后,SSLVPN设备可以基于该目的IP地址192.1.2.3匹配保存的报文的源IP地址192.1.2.3,在匹配成功后,SSLVPN设备可以基于该目的IP地址从如表6所示的发送报文X的对端设备A的套接字信息与报文X的源IP地址的对应关系中获取发送报文X的对端设备A的套接字信息,并基于该套接字信息将响应报文Y转发至设备A。在本发明中,SSLVPN设备可以在接收到报文后,针对接收到的报文进行解析,并基于解析获得的该报文的报文属性信息确定发送该报文的对端设备的套接字信息,其中,该报文的报文属性信息可以包括该报文携带的五元组信息,在获得发送该报文的对端设备的套接字信息后,SSLVPN设备可以基于该对端设备的套接字信息确定对应的数据标识,并判断该数据标识是否为指定标识,若该对端设备的套接字信息对应的数据标识为指定标识,则SSLVPN设备可以转发该报文;若该对端设备的套接字信息对应的数据标识为第二标识,则SSLVPN设备可以将该报文上送至应用层处理。应用本发明可以基于与对端设备套接字信息对应的数据标识来确定同一端口接收到同一对端设备发送的报文是数据报文还是控制报文,解决了相关技术中因针对同一对端设备需要使用两个不同的端口分别接收数据报文和控制报文而导致的对端口资源的利用率低的问题。与前述报文的处理方法的实施例相对应,本发明还提供了报文的处理装置的实施例。本发明报文的处理装置的实施例可以应用在SSLVPN设备。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图2所示,为本发明报文的处理装置所在设备的一种硬件结构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。请参考图3,为本发明报文的处理装置的一个实施例框图:该装置可以包括:解析模块310、确定模块320、判断模块330以及处理模块340。其中,解析模块310,用于针对接收到的报文进行解析,基于解析获得的所述报文的报文属性信息确定发送所述报文的对端设备的套接字信息;其中,所述报文的报文属性信息包括所述报文携带的五元组信息;确定模块320,用于基于发送所述报文的对端设备的套接字信息确定对应的数据标识;判断模块330,用于判断所述数据标识是否为指定标识;处理模块340,用于若所述数据标识为指定标识,转发所述报文;若所述数据标识不为指定标识,将所述报文上送至应用层处理。在一个可选的实现方式中,所述装置还可以包括(图3中未示出):通知模块,用于在与对端设备成功建立SSLVPN连接后,接收对端设备发送的用于通知传输数据报文的通知报文;设置模块,用于在接收到所述通知报文后,将本地生成的与所述对端设备一致的套接字信息对应的数据标识设置为指定标识。在一个可选的实现方式中,所述装置还可以包括(图3中未示出):保存模块,用于若所述数据标识为指定标识,保存发送所述报文的对端设备的套接字信息与所述报文的内层源IP地址的对应关系;获得模块,用于针对接收到的对应于所述报文的响应报文进行解析,获得所述响应报文的目的IP地址;匹配模块,用于基于所述响应报文的目的IP地址匹配保存的报文的源IP地址,并在匹配成功后,从保存的所述对应关系中获取发送所述报文的对端设备的套接字信息;转发模块,用于基于发送所述报文的对端设备的套接字信息将所述响应报文转发至发送所述报文的对端设备。在一个可选的实现方式中,所述数据标识包括vpn_channel。在本发明中,SSLVPN设备可以在接收到报文后,针对接收到的报文进行解析,并基于解析获得的该报文的报文属性信息确定发送该报文的对端设备的套接字信息,其中,该报文的报文属性信息可以包括该报文携带的五元组信息,在获得发送该报文的对端设备的套接字信息后,SSLVPN设备可以基于该对端设备的套接字信息确定对应的数据标识,并判断该数据标识是否为指定标识,若该对端设备的套接字信息对应的数据标识为指定标识,则SSLVPN设备可以转发该报文;若该对端设备的套接字信息对应的数据标识为第二标识,则SSLVPN设备可以将该报文上送至应用层处理。应用本发明可以基于与对端设备套接字信息对应的数据标识来确定同一端口接收到同一对端设备发送的报文是数据报文还是控制报文,解决了相关技术中因针对同一对端设备需要使用两个不同的端口分别接收数据报文和控制报文而导致的对端口资源的利用率低的问题。上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1