1.本发明涉及网络安全技术领域,具体涉及一种网闸
通道控制方法、装置、计算机设备及存储介质。
背景技术:
2.随着互联网的发展,网络安全越来越多的受到大家的重视,其中网闸是一种可以隔离网络两端并可以使符合预设筛查条件的
数据包通过,网闸在网络安全中起到非常重要的作用。
3.网闸在进行数据传输时需要建立安全通道进行传输,sip协议为一种只协商信令且不传输数据协议,在协商命令后会创随机建出新连接来完成数据交换,且新连接不属于sip协议,从而导致无法经过网闸。若预先建立一个新的通道来传输数据包,新建立的通道在传输完数据之后,下一个数据包再次传输的时间是未知的,因此就必须保持通道的一直开启,从而可以确保在下一个满足条件的数据包有效通过网闸,但是通道处于一直开启的状态会给网络的安全带来隐患。
技术实现要素:
4.因此,为解决现有技术的不足,本发明实施例提供了一种网闸通道控制方法、装置、计算机设备及存储介质。
5.根据第一方面,本发明实施例公开了网闸通道控制方法,包括:
6.获取待传输的数据包,数据包至少包括协议信息和
字段信息;
7.若协议信息为sip协议信息,则确定字段信息中是否包括关键字段;
8.若包括关键字段,则根据关键字段控制
数据流通道的状态。
9.可选地,状态包括建立和关闭,根据关键字段控制数据流通道的状态,具体包括:
10.若关键字段为请求字段,则建立数据流通道;
11.若关键字段为结束字段,则关闭数据流通道。
12.可选地,当数据流通道不存在,且确定字段信息中包括关键字段时,方法还包括:
13.根据数据包创建数据流通道,以便后续根据关键字段控制数据流通道的状态。
14.可选地,方法还包括:
15.周期性检查数据流通道是否存在目标数据包,目标数据包为数据流通道允许传输的数据包;
16.若数据流通道中存在目标数据包,且当数据流通道中的数据包不符合预设条件时,则关闭数据流通道。
17.可选地,若数据流通道中不存在目标数据包,方法还包括:
18.统计数据流通道中不存在目标数据的持续时间;
19.若持续时间超过预设时间阈值,则关闭数据流通道。
20.可选地,若协议信息并非为sip协议信息,则不建立数据流通道。
21.可选地,若数据中不包括关键字段,则不建立数据流通道。
22.根据第二方面,本发明实施例还公开了一种网闸通道控制装置,装置包括:
23.获取模块,用于获取待传输的数据,数据至少包括协议信息和字段信息;
24.确定模块,用于若协议信息为sip协议信息,则确定字段信息中是否包括关键字段;
25.控制模块,用于若包括关键字段,则根据关键字段控制数据流通道的状态。
26.根据第三方面,本发明实施例还公开了一种计算机设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器执行如第一方面或第一方面任一可选实施方式的网闸通道控制方法的步骤。
27.根据第四方面,本发明实施方式还公开了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如第一方面或第一方面任一可选实施方式的网闸通道控制方法的步骤。
28.本发明技术方案,具有如下优点:
29.本发明提供的网闸通道控制方法、装置、计算机设备及存储介质,包括:获取待传输的数据包,其中待传输的数据包中至少包括了协议信息和字段信息,其中协议信息和字段信息可以用于识别数据包的协议和数据类型,当根据协议信息确定数据包为sip协议时,进一步根据字段信息确定数据中是否包括了关键字段,若包括了关键字段,则根据关键字段来对数据流通道的状态进行控制,这样在传输的过程中对数据流通道进行控制,从而解决了传统的以sip协议作为网闸协议时数据传输过程中造成的不安全问题,确保了网闸两侧的安全。
附图说明
30.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
31.图1为本发明实施例中网闸通道控制方法的一个具体示例的流程图;
32.图2为本发明实施例中网闸通道控制方法的一个具体示例的示意图;
33.图3为本发明实施例中网闸通道控制方法的一个具体示例的示意图;
34.图4为本发明实施例中sip协议传输数据的概要流程图;
35.图5为本发明实施例中网闸通道控制装置的一个具体示例的原理框图;
36.图6为本发明实施例中计算机设备的一个具体示例图。
具体实施方式
37.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
38.在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
39.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
40.此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
41.针对背景技术中所提及的技术问题,本技术实施例提供了一种网闸通道控制方法,具体参见图1所示,该方法包括如下步骤:
42.步骤101,获取待传输的数据包,数据包至少包括协议信息和字段信息。
43.示例性地,待传输的数据包为将数据包从网闸的一端传输至另一端的数据,其中待传输的数据中至少包括协议信息和字段信息,其中协议信息可以使得网闸确定数据包采用的是哪种传输协议,字段信息可以确定数据包中的数据类型或数据信息等。
44.步骤102,若协议信息为sip协议信息,则确定字段信息中是否包括关键字段。
45.示例性地,sip协议为传输协议中的一种特殊的协议,其中sip协议不可以直接传输数据包,当所传输的数据是数据包时,需要根据sip协议与数据包协商,构建一个可以通过数据包的数据流通道,其中关键字段即为与sip协议进行协商的数据流通道的内容。
46.步骤103,若包括关键字段,则根据关键字段控制数据流通道的状态。
47.示例性地,其中数据流通道可以是支持tcp协议或者udp协议等协议的数据流通道。当关键字段对应的信息为tcp协议时,则控制对应tcp协议的数据流通道的状态。
48.若关键字段为请求字段,则建立数据流通道;若关键字段为结束字段,则关闭数据流通道。
49.示例性地,其中关键字段可以是invite请求字段,当时请求字段时,则建立与请求字段对应的数据流通道;当关键字段可以是bye结束字段时,则关于与结束字段对应的数据流通道。
50.在一个具体的实施例中,当数据流通道不存在,且确定字段信息中包括关键字段时,方法还包括:
51.根据数据包创建数据流通道,以便后续根据关键字段控制数据流通道的状态。
52.示例性地,在根据关键字段进行控制数据流通道的状态的前提是对应的数据流通道已经存在,当对应的数据流通道不存在时,且数据包需要进行传输时,则需要建立对应的数据流通道进行传输。在创建数据流通道时,需要将接收所有的数据包,接收完所有的数据包之后,根据数据包来创建允许数据包通过的数据流通道。
53.在上述实施例的基础上,本技术实施例还公开了另一种网闸通道控制方法,考虑到在数据流通道在没有目标数据传输的过程中一直开启,因此引入时间因素来对数据流通道进行控制,优选的,具体的实现方法如下:
54.周期性检查数据流通道是否存在目标数据包,目标数据包为数据流通道中正在传输的数据包。
55.若数据流通道中存在目标数据包,且当数据流通道中的数据包不符合预设条件时,则关闭数据流通道。
56.示例性地,对已经创建的数据流通道,需要周期性的检查对应的数据流通道的使用情况,其中使用情况也就是数据流通道中是否存在目标数据包的传输,其中目标数据包为数据流通道中正在传输的数据包。当数据流通道中包括目标数据包时,则需要判断目标数据包不是数据流通道中允许传输的数据包,这里需要说明的是,为何不允许传输的数据包会在数据流通道中,这个目标数据包是经过伪装后让数据流通道误以为是真的允许通过的数据包。因此需要确定目标数据包是否是真的数据包,其中预设手段为现有技术,此处不再赘述。
57.在一个具体的实施例中,若数据流通道中不存在目标数据包,方法还包括:统计数据流通道中不存在目标数据的持续时间;若持续时间超过预设时间阈值,则关闭数据流通道。
58.示例性地,当数据流通道中不包括目标数据包时,则需要统计数据流通道中没有目标数据包的持续时间,当持续时间超过预设时间阈值时,就关闭通道,其中预设时间阈值可以根据实际情况确定,本技术实施例中对预设时间阈值不作限定。
59.如图2和图3所示,为本技术实施例中两个具体实施方式的示意图,其中图2为根据协议信息和关键字段来控制数据流通道的状态,图3为根据预设时间阈值来控制数据通道的关闭。
60.图2中,具体地,首先预设一个sip的协议,判断获取的数据包中是否存在符合sip协议规范的数据包,如果不是sip协议数据包,则该数据包跳出本程序;在确定是sip协议的数据包后,分析数据包是否存在请求创建新连接的数据包(由于sip协议的性质可知,如果存在创建新连接的数据包,则在数据包中能到相关字段,例如“invite”字段)如果不存在请求数据,则该数据包跳出本程序;如果存在请求数据包,并开始收集接下来数据包中的信息;收集完毕后自动创建出一个其他通道,用于视频流的通讯;完成创建,数据通过,进入通道关闭流程。
61.图3中,具体地,预先设定一个定时检查功能,负责检查已经自动建立的数据流通道是否仍存在数据包或存在不符合预定值得信息,例如攻击包,或者流量过大,流量过小等的问题;检查是否仍存在数据流,如果存在则检查是否合规,如果合规则继续下次检测,否则将通道关闭,认为存在风险;如果不存在流量,查看是否超过关闭时长(人为预设),如果未超过,则标记该安全通道;如果超过关闭时长,则关闭安全通道;通过解析sip协议中的关键字段“bye”来关闭对应通道。
62.如图4所示,为上述通过sip协议进行数据传输的概略图,客户端利用sip协议向服务端发送使用随机a端口取数据的请求,服务端回应采用随机b端口进行传输,经协商之后,客户端请求b端口后,服务端通过b端口向a端口发送数据,直至接收到客户端发送的不想接受数据的请求后,服务端停止发送数据并关闭各自的端口。如果在服务端不设置网闸,客户端可以发送任意数据到服务器,从而导致服务端处于不安全状态。如若设置网闸,网闸可以提前拦截不符合通道条件的数据,确保服务端的安全,但是由于sip的特征,目前无法精准
且及时开启对应的数据通道供数据通过。如果保证时效,则需要开启多余通道以确保随机端口a或b在其中,但结果一样会使服务端处于不安全状态。如果保证安全,则需要通过网络数据包中获取协商出来的端口,以新增安全通道,但是人为操作时间即便再少,相比电脑已经是非常慢了,结果就是怎么操作都无法保证数据流通过网闸。从而导致两者无法兼得。
63.通过此方式,获取待传输的数据,其中待传输的数据中至少包括了协议信息和字段信息,其中协议信息用于识别其中协议信息和字段信息可以用于识别数据的协议和数据类型,当根据协议信息确定数据为sip协议时,进一步根据字段信息确定数据中是否包括了关键字段,若包括了关键字段,则根据关键字段来对数据流通道的状态进行控制,这样在传输的过程中对数据流通道进行精准且及时控制,从而解决了传统不精准开启、不及时关闭造成通道长时间存在的不安全问题,确保了安全的数据通过网闸。
64.以上,为本技术所提供的网闸通道控制方法的实施例,下文中则介绍说明本技术所提供的网闸通道控制的其他实施例,具体参见如下。
65.本发明实施例还公开了一种网闸通道控制装置,如图5所示,该装置包括:
66.获取模块501,用于获取待传输的数据,数据至少包括协议信息和字段信息;
67.确定模块502,用于若协议信息为sip协议信息,则确定字段信息中是否包括关键字段;
68.控制模块503,用于若包括关键字段,则根据关键字段控制数据流通道的状态。
69.在一个可选的实施例中,状态包括建立和关闭,控制模块,具体用于:
70.若关键字段为请求字段,则建立数据流通道;
71.若关键字段为结束字段,则关闭数据流通道。
72.在一个可选的实施例中,当数据流通道不存在,且确定字段信息中包括关键字段时,装置还用于:
73.根据数据包创建数据流通道,以便后续根据关键字段控制数据流通道的状态。
74.在一个可选的实施例中,装置还用于:
75.周期性检查数据流通道是否存在目标数据包,目标数据包为数据流通道允许传输的数据包;
76.若数据流通道中存在目标数据包,且当数据流通道中的数据包不符合预设条件时,则关闭数据流通道。
77.在一个可选的实施例中,若数据流通道中不存在目标数据包,装置还用于:
78.统计数据流通道中不存在目标数据的持续时间;
79.若持续时间超过预设时间阈值,则关闭数据流通道。
80.在一个可选的实施例中,若协议信息并非为sip协议信息,则不建立数据流通道。
81.在一个可选的实施例中,若数据中不包括关键字段,则不建立数据流通道。
82.本发明实施例提供的网闸通道控制装置中各部件所执行的功能均已在上述任一方法实施例中做了详细的描述,因此这里不再赘述。
83.通过执行此装置,获取待传输的数据,其中待传输的数据中至少包括了协议信息和字段信息,其中协议信息用于识别其中协议信息和字段信息可以用于识别数据的协议和数据类型,当根据协议信息确定数据为sip协议时,进一步根据字段信息确定数据中是否包括了关键字段,若包括了关键字段,则根据关键字段来对数据流通道的状态进行控制,这样
在传输的过程中对数据流通道进行控制,从而解决了传统的以sip协议作为网闸协议时数据传输过程中造成的不安全问题,确保了网闸两侧的安全。
84.本发明实施例还提供了一种计算机设备,如图6所示,该计算机设备可以包括处理器601和存储器602,其中处理器601和存储器602可以通过总线或者其他方式连接,图6中以通过总线连接为例。
85.处理器601可以为中央处理器(central processing unit,cpu)。处理器601还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
86.存储器602作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的运动训练方法对应的程序指令/模块。处理器601通过运行存储在存储器602中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的运动训练方法。
87.存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器601所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至处理器601。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
88.一个或者多个模块存储在存储器602中,当被处理器601执行时,执行如图1所示实施例中的运动训练方法。
89.上述计算机设备具体细节可以对应参阅图1所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
90.本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(random access memory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;存储介质还可以包括上述种类的存储器的组合。
91.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
技术特征:
1.一种网闸通道控制方法,其特征在于,包括:获取待传输的数据包,所述数据包至少包括协议信息和字段信息;若所述协议信息为sip协议信息,则确定所述字段信息中是否包括关键字段;若包括关键字段,则根据所述关键字段控制数据流通道的状态。2.根据权利要求1所述的方法,其特征在于,所述状态包括开启和关闭,所述根据所述关键字段控制数据流通道的状态,具体包括:若所述关键字段为请求字段,则开启所述数据流通道;若所述关键字段为结束字段,则关闭所述数据流通道。3.根据权利要求1所述的方法,其特征在于,当所述数据流通道不存在,且确定所述字段信息中包括所述关键字段时,所述方法还包括:根据所述数据包创建所述数据流通道,以便后续根据所述关键字段控制所述数据流通道的状态。4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:周期性检查所述数据流通道是否存在目标数据包,所述目标数据包为所述数据流通道允许传输的数据包;若所述数据流通道中存在所述目标数据包,且当所述数据流通道中的数据包不符合预设条件时,则关闭所述数据流通道。5.根据权利要求4所述的方法,其特征在于,若所述数据流通道中不存在所述目标数据包,所述方法还包括:统计所述数据流通道中不存在所述目标数据的持续时间;若所述持续时间超过预设时间阈值,则关闭所述数据流通道。6.根据权利要求1所述的方法,其特征在于,若所述协议信息并非为sip协议信息,则不建立所述数据流通道。7.根据权利要求1所述的方法,其特征在于,若所述数据中不包括关键字段,则不建立所述数据流通道。8.一种网闸通道控制装置,其特征在于,包括:获取模块,用于获取待传输的数据,所述数据至少包括协议信息和字段信息;确定模块,用于若所述协议信息为sip协议信息,则确定所述字段信息中是否包括关键字段;控制模块,用于若包括关键字段,则根据所述关键字段控制数据流通道的状态。9.一种计算机设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-7任一项所述的网闸通道控制方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的网闸通道控制方法的步骤。
技术总结
本发明公开了一种网闸通道控制方法、装置及计算机设备,包括:获取待传输的数据,其中待传输的数据中至少包括了协议信息和字段信息,其中协议信息用于识别其中协议信息和字段信息可以用于识别数据的协议和数据类型,当根据协议信息确定数据为SIP协议时,进一步根据字段信息确定数据中是否包括了关键字段,若包括了关键字段,则根据关键字段来对数据流通道的状态进行控制,这样在传输的过程中对数据流通道进行控制,从而解决了传统的以SIP协议作为网闸协议时数据传输过程中造成的不安全问题,确保了网闸两侧的安全。确保了网闸两侧的安全。确保了网闸两侧的安全。
技术研发人员:
朱宏扬 白耀东
受保护的技术使用者:
北京力控华康科技有限公司
技术研发日:
2022.08.31
技术公布日:
2022/12/16