协议识别方法及装置的制造方法

文档序号:9846674阅读:474来源:国知局
协议识别方法及装置的制造方法
【技术领域】
[0001]本发明涉及网络通信技术领域,特别涉及一种协议识别方法及装置。
【背景技术】
[0002]由于攻击检测、病毒检测、访问控制、带宽管理等功能均基于特定的协议,因此若能准确识别出客户端与服务器之间的数据连接协议,就可以限制病毒的攻击、控制客户端的访问权限、限制客户端的带宽等,这在网络通信管理领域具有重大的意义。
[0003]通常,客户端可以通过向服务器发送控制连接请求报文,与服务器建立控制连接;在客户端与服务器建立控制连接后,客户端可以通过向服务器发送数据连接请求报文,与服务器建立数据连接。现有技术中,在客户端向服务器发起数据连接时,无法识别两者之间的数据连接协议。

【发明内容】

[0004]有鉴于此,本发明提供一种协议识别方法及装置,以解决在客户端向服务器发起数据连接时,无法识别两者之间的数据连接协议的问题。
[0005]根据本发明的一个方面,本发明实施例提供了一种协议识别方法,包括以下步骤:
[0006]创建协商节点,所述协商节点包括数据连接协议,以及客户端或服务器的IP地址和端口 ;
[0007]获取数据连接请求报文,所述数据连接请求报文包括客户端或服务器的IP地址和端口 ;
[0008]将所述数据连接请求报文与所述协商节点进行匹配,以识别出所述数据连接请求报文的数据连接协议,从而识别出所述客户端与所述服务器之间的数据连接协议。
[0009]根据本发明的另一个方面,本发明实施例提供一种协议识别装置,包括:
[0010]创建单元,用于创建协商节点,所述协商节点包括数据连接协议,以及客户端或服务器的IP地址和端口 ;
[0011]获取单元,用于获取数据连接请求报文,所述数据连接请求报文包括客户端或服务器的IP地址和端口 ;
[0012]匹配单元,分别与所述创建单元、所述获取单元连接,用于将所述数据连接请求报文与所述协商节点进行匹配,以识别出所述数据连接请求报文的数据连接协议,从而识别出所述客户端与所述服务器之间的数据连接协议。
[0013]综上所述,由于采用了上述技术方案,本发明的有益效果是:
[0014]本发明实施例中,由于数据连接请求报文中包括客户端或服务器的IP地址和端口,因此在客户端通过数据连接请求报文与服务器建立数据连接之前,先创建包括数据连接协议,以及客户端或服务器的IP地址和端口的协商节点;再将数据连接请求报文中的IP地址和端口与协商节点中的IP地址和端口进行匹配,若匹配成功,则将协商节点中的数据连接协议作为数据连接请求报文的数据连接协议,从而识别出客户端与服务器之间的数据连接协议。
【附图说明】
[0015]图1是应用本发明实施例实现协议识别的应用场景示意图;
[0016]图2是本发明协议识别方法的一个实施例流程图;
[0017]图3是本发明协议识别方法的另一个实施例流程图;
[0018]图4是本发明协议识别方法的另一个实施例流程图;
[0019]图5是本发明协议识别装置所在设备的一种硬件结构图;
[0020]图6是本发明协议识别装置的一个实施例框图;
[0021]图7是本发明协议识别装置的另一个实施例框图。
【具体实施方式】
[0022]为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
[0023]参见图1,为应用本发明实施例实现协议识别的应用场景示意图。
[0024]图1中,客户端与服务器之间的连接包括控制连接和数据连接,客户端可以为手机、iPad、笔记本等。客户端通过向服务器的固定端口发送控制连接请求报文,与服务器建立控制连接。在客户端与服务器建立控制连接后,客户端可以通过向服务器发送数据连接请求报文,与服务器建立数据连接。
[0025]以FTP (File Transfer Protocol,文件传输协议)通信协议为例:
[0026]在客户端与服务器建立控制连接时,客户端通过向服务器的21端口发送控制连接请求报文,与服务器建立控制连接。
[0027]在客户端与服务器建立数据连接时,客户端通过控制连接的数据通道向服务器发送监听请求报文(即PASV命令),该监听请求报文用于请求服务器返回其用于接收客户端发送的数据连接请求报文的临时端口 ;服务器在接收到监听请求报文后,向客户端发送监听应答报文,该监听应答报文包括服务器的IP (Internet Protocol,网络协议)地址以及服务器用于接收客户端发送的数据连接请求报文的临时端口 ;客户端在接收到监听应答报文后,通过向服务器的临时端口发送数据连接请求报文,与服务器建立数据连接。
[0028]综上所述,服务器用于与客户端建立控制连接的端口为固定端口,根据该固定端口,可以识别出客户端与服务器之间的控制连接协议。然而,服务器用于与客户端建立数据连接的端口为临时端口,根据该临时端口,无法识别出数据连接的协议。本发明实施例通过在客户端与服务器之间增加协议识别装置,来监听客户端与服务器之间的交互报文,并且该协议识别装置根据客户端与服务器之间的交互报文,可以识别出客户端与服务器之间的数据连接协议。
[0029]参见图2,为本发明协议识别方法的一个实施例流程图,该方法包括以下步骤:
[0030]步骤201、创建协商节点,该协商节点包括数据连接协议,以及客户端或服务器的IP地址和端口。协商节点可以仅包括客户端的IP地址和端口,可以仅包括服务器的IP地址和端口,还可以既包括客户端的IP地址和端口,又包括服务器的IP地址和端口。
[0031]在本实施例中,协商节点中的数据连接协议,以及客户端或服务器的IP地址和端口可以根据控制连接请求报文来确定。
[0032]在根据控制连接请求报文确定协商节点中的数据连接协议时,由于针对不同的控制连接协议,服务器通常采用不同的固定端口来接收控制连接请求报文,且在客户端向服务器发送的控制连接请求报文中包括该固定端口,因此根据控制连接请求报文中的固定端口,可以识别出对应的控制连接协议。诸如,在FTP通信协议中,由于服务器采用21端口来接收控制连接请求报文,因此根据控制连接请求报文中的21端口,可以识别出FTP通信协议中的TCP (Transmiss1n Control Protocol,传输控制协议)控制连接协议;在 RTSP(Real Time Streaming Protocol,实时流传输协议)/RTP(Real-time TransportProtocol,实时传输协议)通信协议中,由于服务器采用544端口来接收控制连接请求报文,因此根据控制连接请求报文中的544端口,可以识别出RTSP/RTP通信协议中的RTSP控制连接协议。
[0033]另外,由于针对包括控制连接协议和数据连接协议的通信协议,控制连接协议与数据连接协议呈相互对应的关系,因此在识别出控制连接协议的基础上,可以确定其对应的数据连接协议。诸如,针对包括TCP控制连接协议和TCP数据连接协议的FTP通信协议,在识别出控制连接协议为TCP控制连接协议的基础上,可以确定其对应的数据连接协议为TCP数据连接协议;针对包括RTSP控制连接协议和RTP数据连接协议的RTSP/RTP通信协议,在识别出控制连接协议为RTSP控制连接协议的基础上,可以确定其对应的数据连接协议为RTP数据连接协议。
[0034]由此可见,根据控制连接请求报文中服务器用于接收控制连接请求报文的端口,可以确定协商节点的数据连接协议。
[0035]在根据控制连接请求报文确定协商节点中客户端或服务器的IP地址和端口时,由于控制连接请求报文中可以包括传输标志,该传输标志可以包括客户端的IP地址、客户端用于发送数据连接请求报文的端口、服务器的IP地址以及服务器用于接收客户端发送的数据连接请求报文的端口。
[0036]因此,根据控制连接请求报文的传输标志中客户端的IP地址以及客户端用于发送数据连接请求报文的端口,可以确定协商节点中客户端的IP地址和端口 ;根据控制连接请求报文的传输标志中服务器的IP地址以及服务器用于接收客户端发送的数据连接请求报文的端口,可以确定协商节点中服务器的IP地址和端口。
[0037]在本实施例中,协商节点中服务器的IP地址和端口还可以根据服务器
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1