CN108243115B - 报文处理方法及装置 - Google Patents

报文处理方法及装置 Download PDF

Info

Publication number
CN108243115B
CN108243115B CN201611220634.3A CN201611220634A CN108243115B CN 108243115 B CN108243115 B CN 108243115B CN 201611220634 A CN201611220634 A CN 201611220634A CN 108243115 B CN108243115 B CN 108243115B
Authority
CN
China
Prior art keywords
token
user session
entry
table entry
session table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611220634.3A
Other languages
English (en)
Other versions
CN108243115A (zh
Inventor
周英
吴文
晁岳磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201611220634.3A priority Critical patent/CN108243115B/zh
Priority to JP2019534829A priority patent/JP6824417B2/ja
Priority to PCT/CN2017/118627 priority patent/WO2018121528A1/zh
Priority to US16/474,037 priority patent/US10992584B2/en
Priority to EP17885544.1A priority patent/EP3547626B1/en
Publication of CN108243115A publication Critical patent/CN108243115A/zh
Application granted granted Critical
Publication of CN108243115B publication Critical patent/CN108243115B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/74Admission control; Resource allocation measures in reaction to resource unavailability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

本申请提供一种报文处理方法及装置,其中,该方法包括:接收用户主机发来的HTTPS报文;针对查找到的与该HTTPS报文匹配的未上线用户会话表项,若判断出该未上线用户会话表项所对应的用户会话尚未获取到令牌,则从第一令牌桶中获取令牌,在令牌获取成功时,将该HTTPS报文上送给CPU进行处理,在令牌获取失败时,将该HTTPS报文丢弃,其中,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力设定。

Description

报文处理方法及装置
技术领域
本申请涉及网络通信技术领域,特别涉及一种报文处理方法及装置。
背景技术
Portal(门户)认证是一种灵活的网络访问控制技术,通过Web(网页)页面获取用户的用户名和密码,对用户进行身份认证,以达到访问控制的目的。用户主机(或Portal客户端)可以使用HTTP(HyperText Transfer Protocol,超文本传输协议)或者HTTPS(HyperText Transfer Protocol over Secure Socket Layer,基于安全套接层的HTTP)访问外部网络,例如,Internet(互联网)。
当使用HTTPS访问Internet时,用户主机会发出HTTPS报文,BRAS(BroadbandRemote Access Server,宽带远程接入服务器)设备接收到该报文后,判断用户是否已经认证过,若尚未进行Portal认证,则BRAS设备会仿冒用户主机所访问的Web服务器来与用户主机建立TCP(Transmission Control Protocol,传输控制协议)连接和SSL(Secure SocketLayer,安全套接层)连接,并且向用户主机推送重定向页面,以便用户在该重定向页面中输入用户名和密码。至此,TCP仿冒过程结束。
后续,BRAS设备与Portal服务器进行交互,使用用户输入的用户名和密码完成对用户的Portal认证,在认证通过后用户上线,用户主机可以正常访问Internet。
发明内容
有鉴于此,本申请提供一种报文处理方法及装置。
具体地,本申请是通过如下技术方案实现的:
一方面,提供了一种报文处理方法,该方法应用于接入网关设备,该方法包括:
接收用户主机发来的HTTPS报文;
针对查找到的与该HTTPS报文匹配的未上线用户会话表项,若判断出该未上线用户会话表项所对应的用户会话尚未获取到令牌,则从第一令牌桶中获取令牌,在令牌获取成功时,将该HTTPS报文上送给CPU进行处理,在令牌获取失败时,将该HTTPS报文丢弃,其中,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力设定。
另一方面,还提供了一种报文处理装置,该装置应用于接入网关设备中,该装置包括:
接收单元,用于接收用户主机发来的HTTPS报文;
判断单元,用于针对查找到的与该HTTPS报文匹配的未上线用户会话表项,判断该未上线用户会话表项所对应的用户会话是否已经获取到了令牌;
处理单元,用于若判断单元判断出该未上线用户会话表项所对应的用户会话尚未获取到令牌,则从第一令牌桶中获取令牌,在令牌获取成功时,将该HTTPS报文上送给CPU进行处理,在令牌获取失败时,将该HTTPS报文丢弃,其中,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力设定。
在本申请的以上技术方案中,设置了第一令牌桶,该第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力来设定,并且,新增了未上线用户会话表项来记录未上线用户的会话信息,可以限制上送CPU的HTTPS报文数量,只有获取到了令牌的用户会话的HTTPS报文才上送给CPU进行处理,而未获取到令牌的用户会话的HTTPS报文会直接丢弃、而不会上送给CPU进行处理,从而实现了对上送CPU的HTTPS报文的限流,在短时间内有大量用户需要上线时,能够减轻接入网关设备的CPU处理负担,确保CPU实际负荷不会超出正常处理能力。
附图说明
图1是本申请一示例性实施例示出的报文处理方法的流程图;
图2是本申请另一示例性实施例示出的报文处理方法的流程图;
图3是本申请一示例性实施例示出的硬件层面对HTTPS报文进行匹配的示意图;
图4是本申请一示例性实施例示出的报文处理装置所在接入网关设备的硬件结构示意图;
图5是本申请一示例性实施例示出的报文处理装置的一种结构示意图;
图6是本申请一示例性实施例示出的报文处理装置的另一种结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在基于HTTPS的TCP仿冒过程中,用户主机与BRAS设备之间的报文交互很多,这样,当短时间内有大量用户需要上线时,BRAS设备的CPU处理负担会急剧增加,当超出了CPU的正常处理能力时,就会导致设备瘫痪。为了解决上述问题,本申请以下实施例中提供了一种报文处理方法,以及一种可以应用该方法的报文处理装置。
本申请实施例的方法可以由BRAS设备等接入网关设备来执行。在该方法中,接收用户主机发来的HTTPS报文;针对查找到的与该HTTPS报文匹配的未上线用户会话表项,若判断出该未上线用户会话表项所对应的用户会话尚未获取到令牌,则从第一令牌桶中获取令牌,在令牌获取成功时,将该HTTPS报文上送给CPU进行处理,在令牌获取失败时,将该HTTPS报文丢弃,其中,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力设定。这样,设置了第一令牌桶,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力来设定,并且,新增了未上线用户会话表项来记录未上线用户的会话信息,可以限制上送CPU的HTTPS报文数量,只有获取到了令牌的用户会话的HTTPS报文才上送给CPU进行处理,而未获取到令牌的用户会话的HTTPS报文会直接丢弃、而不会上送给CPU进行处理,从而实现了对上送CPU的HTTPS报文的限流,在短时间内有大量用户需要上线时,能够减轻接入网关设备的CPU处理负担,确保CPU实际负荷不会超出正常处理能力。
一种实施例中,预先设置一个第一令牌桶,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力来设定,CPU处理能力越大,第一令牌桶中的令牌数量越多。此时,如图1所示,接入网关设备执行的报文处理方法包括以下步骤:
步骤S101,接收用户主机发来的HTTPS报文,根据该HTTPS报文的源IP地址和目的IP地址,查找匹配的未上线用户会话表项;
本申请实施例中以用户会话(通过源IP地址和目的IP地址标识)为限制单位,一个未上线用户会话表项对应于一个用户会话。
步骤S102,判断是否查找到了匹配的未上线用户会话表项,若否,则执行步骤S103,若是,则执行步骤S104;
步骤S103,配置包含该源IP地址和目的IP地址的未上线用户会话表项,之后退出本流程;
假设,步骤S101中接收到的HTTPS报文的源IP地址为IP11,目的IP地址为IP12,则,在步骤S103中配置的未上线用户会话表项可以参见表1所示:
表1
Figure BDA0001192708700000051
表1中的令牌桶ID用于记录用于获取令牌的令牌桶的ID,令牌桶ID的初始值可以为0,也可以为第一令牌桶的ID;令牌ID用于记录获取到的令牌的ID,令牌ID的初始值可以为0,当令牌ID为0时用于表示该表项所对应的用户会话尚未获取到令牌。
或者,还可以在表1中设置一个获取标记,用于指示该表项所对应的用户会话是否已经获取到了令牌,该获取标记的初始值可以设置为对应用户会话尚未获取到令牌。
步骤S104,判断该未上线用户会话表项所对应的用户会话是否已经获取到了令牌,若尚未获取到令牌,则执行步骤S105,若已经获取到了令牌,则执行步骤S109;
其中,可以采用方式一或方式二来判断未上线用户会话表项所对应的用户会话是否已经获取到了令牌:
方式一、若该表项中的令牌ID为初始值,则确定该表项所对应的用户会话尚未获取到令牌,否则,确定该表项所对应的用户会话已经获取到了令牌;
方式二、通过该表项中的获取标记来判断该表项所对应的用户会话是否已经获取到了令牌。
步骤S105,从第一令牌桶中获取一个令牌;
步骤S106,判断令牌获取是否成功,若是,则执行步骤S107,否则,执行步骤S108;
如果第一令牌桶中还存在令牌,则此时从第一令牌桶中获取令牌成功,否则,如果第一令牌桶中不存在令牌,则此时从第一令牌桶中获取令牌失败。
步骤S107,将该HTTPS报文上送给CPU进行处理,将该未上线用户会话表项中的令牌ID更新为获取到的令牌的ID,之后退出本流程;
在步骤S107中,如果该未上线用户会话表项中的令牌桶ID为0,则将该令牌桶ID更新为第一令牌桶的ID;若该表项中还包含获取标记,则将该获取标记更新为对应用户会话已经获取到了令牌。
步骤S108,将该HTTPS报文丢弃,之后退出本流程;
步骤S109,将该HTTPS报文上送给CPU进行处理,之后退出本流程。
在基于HTTPS的TCP仿冒过程中,接入网关设备每次接收到用户主机发来的HTTPS报文后,均按照如图1所示的方法进行处理。后续,用户Portal认证通过,用户上线,此时会删除包含的源IP地址为用户主机IP地址IP11的未上线用户会话表项,释放这些表项所对应的用户会话获取到的令牌,将释放的令牌回收到第一令牌桶中。
另外,在步骤S103中配置未上线用户会话表项时,还可以开启对应的老化定时器,以使该老化定时器开始计时,当该老化定时器的计时时间到达预定老化时间T时,此时用户仍然没有上线,若该表项所对应的用户会话已经获取到了令牌,则需要释放该令牌,将释放的令牌回收到第一令牌桶中,将该表项中的令牌ID置为初始值,重启该老化定时器,以使该老化定时器重新开始计时。另外,在该表项中包含获取标记时,还会将该获取标记更新为对应用户会话尚未获取到令牌。这样,后续HTTPS报文需要重新获取令牌。
另一种实施例中,预先设置一个第一令牌桶和一个第二令牌桶,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力来设定,CPU处理能力越大,第一令牌桶中的令牌数量越多;第二令牌桶中的令牌数量很少、远少于第一令牌桶中的令牌数量,第二令牌桶中令牌的具体数量可以根据实际情况进行预先设定。第一令牌桶用于限制正常未上线用户会话的数量,第二令牌桶用于限制异常未上线用户会话的数量。此时,如图2所示,接入网关设备执行的报文处理方法包括以下步骤:
步骤S201,接收用户主机发来的HTTPS报文,根据该HTTPS报文的源IP地址和目的IP地址,查找匹配的未上线用户会话表项;
本申请实施例中以用户会话(通过源IP地址和目的IP地址标识)为限制单位,一个未上线用户会话表项对应于一个用户会话。
步骤S202,判断是否查找到了匹配的未上线用户会话表项,若否,则执行步骤S203,若是,则执行步骤S204;
步骤S203,配置包含该源IP地址和目的IP地址的未上线用户会话表项,之后退出本流程;
假设,步骤S201中接收到的HTTPS报文的源IP地址为IP11,目的IP地址为IP12,则,在步骤S203中配置的未上线用户会话表项可以参见表2所示:
表2
Figure BDA0001192708700000071
表2中的令牌桶ID用于记录用于获取令牌的令牌桶的ID,令牌桶ID的初始值可以为0,也可以为第一令牌桶的ID;
令牌ID用于记录获取到的令牌的ID,令牌ID的初始值可以为0,当令牌ID为0时用于表示该表项所对应的用户会话尚未获取到令牌;
SCount用于记录令牌获取成功的次数,每获取到一次令牌,SCount的值进行累加,例如,将SCount的值加1,FCount的值置为初始值;其中,SCount和FCount的初始值可以为0;
FCount用于记录T时间内连续获取令牌失败的次数,每次获取令牌失败,FCount的值进行累加,例如,将FCount的值加1;
老化时间T:在配置如表2所示的未上线用户会话表项时,开启一个老化定时器,该老化定时器的计时总时长为预定老化时间T;当该老化定时器的计时时间到达T时,释放该表项所对应的用户会话获取到的令牌,将令牌ID置为初始值,将FCount的值置为初始值。
或者,还可以在表2中设置一个获取标记,用于指示该表项所对应的用户会话是否已经获取到了令牌,该获取标记的初始值可以设置为对应用户会话尚未获取到令牌。
步骤S204,判断该未上线用户会话表项所对应的用户会话是否已经获取到了令牌,若尚未获取到令牌,则执行步骤S205,若已经获取到了令牌,则执行步骤S211;
其中,可以采用上述方式一或上述方式二来判断未上线用户会话表项所对应的用户会话是否已经获取到了令牌,这里不再赘述。
步骤S205,判断该未上线用户会话表项中的FCount的值是否达到预定的失败数量阈值MAX_F,若是,则执行步骤S206,否则,执行步骤S207;
步骤S206,丢弃该HTTPS报文,之后退出本流程;
步骤S207,从第一令牌桶获取一个令牌;
步骤S208,判断令牌获取是否成功,若是,则执行步骤S209,否则,执行步骤S210;
如果第一令牌桶中还存在令牌,则此时从第一令牌桶中获取令牌成功,否则,如果第一令牌桶中不存在令牌,则此时从第一令牌桶中获取令牌失败。
步骤S209,将该HTTPS报文上送给CPU进行处理,将该未上线用户会话表项中的令牌ID更新为获取到的令牌的ID,将SCount的值进行累加,将FCount的值置为初始值,之后退出本流程;
在步骤S209中,如果该未上线用户会话表项中的令牌桶ID为0,则将该令牌桶ID更新为第一令牌桶的ID;若该表项中还包含获取标记,则将该获取标记更新为对应用户会话已经获取到了令牌。
步骤S210,将该HTTPS报文丢弃,将该未上线用户会话表项中的FCount的值进行累加,之后退出本流程;
在步骤S210中,如果该未上线用户会话表项中的令牌桶ID为0,则将该令牌桶ID更新为第一令牌桶的ID。
步骤S211,将该HTTPS报文上送给CPU进行处理,之后退出本流程。
另外,在本实施例的方法中,在检测到未上线用户会话表项中的SCount的值达到预定的第一成功数量阈值MAX_S1时,认为该表项对应的用户会话为异常未上线用户会话,将用于获取令牌的令牌桶从第一令牌桶修改为第二令牌桶,具体的,可以将未上线用户会话表项中的令牌桶ID修改为第二令牌桶的ID,这样,在如图2所示的步骤S207中就会从第二令牌桶中获取令牌。后续,如果该表项中的SCount的值继续累加,在检测到SCount的值达到预定的第二成功数量阈值MAX_S2时,删除该表项,释放该表项所对应的用户会话获取到的令牌,将释放的令牌回收到第二令牌桶中,其中,MAX_S2大于MAX_S1。
若用户Portal认证通过,用户上线,则会删除包含的源IP地址为用户主机IP地址IP11的未上线用户会话表项,释放这些表项所对应的用户会话获取到的令牌。
另外,在步骤S203中配置未上线用户会话表项时,还可以开启对应的老化定时器,以使该老化定时器开始计时,当该老化定时器的计时时间到达预定老化时间T时,此时用户仍然没有上线,若该表项所对应的用户会话已经获取到了令牌,则需要释放该令牌,将释放的令牌回收到对应的令牌桶中,将该表项中的令牌ID置为初始值,将该表项中的FCount的值置为初始值,重启该老化定时器,以使该老化定时器重新开始计时。另外,在该表项中包含获取标记时,还会将该获取标记更新为对应用户会话尚未获取到令牌。这样,后续HTTPS报文需要重新获取令牌。
在实际应用场景中,用户主机开机后,其上安装的大量程序可能会自动发出HTTPS报文来请求连接服务器,但是,由于用户并不需要使用这些程序,因此不会输入用户名和密码,从而无法完成Portal认证,这些程序就会一直发出HTTPS报文来请求连接服务器,在这种情况下,用户主机发出的HTTPS报文就会对接入网关设备造成攻击。本申请实施例中采用如图2所示的方法,通过设置一个用于限制正常未上线用户会话数量的第一令牌桶和一个用于限制异常未上线用户会话数量的第二令牌桶,当用户会话获取到令牌的次数达到了MAX_S1时用户仍然没有上线,此时,认为该用户会话为异常未上线用户会话,该会话的HTTPS报文是攻击报文,限制该异常未上线用户会话只能从令牌数量很少的第二令牌桶中获取令牌,进一步限制异常未上线用户会话的流量。
显然,还可以设置三个令牌桶,甚至更多的令牌桶,从而实现更加精细化的限流方式。以设置三个令牌桶为例,除了设置上述第一令牌桶和第二令牌桶以外,还设置第三令牌桶,第三令牌桶中的令牌数量可以为第一令牌桶中令牌数量的预定百分比,例如,为第一令牌桶中令牌数量的40%,初始时,从第一令牌桶获取令牌,当检测到接入网关设备的CPU负载超过预定负载阈值时,将用于获取令牌的令牌桶从第一令牌桶修改为第三令牌桶,从而,从第三令牌桶中获取令牌。后续,当检测到未上线用户会话表项中的SCount的值达到MAX_S1时,将用于获取令牌的令牌桶从第三令牌桶修改为第二令牌桶,从而,从第二令牌桶中获取令牌。
下面通过一个具体实例,对如图2所示的报文处理方法进行详细说明。在本实施例中,在接入网关设备的底层硬件转发层面创建2个令牌桶,分别是令牌桶ID为bucket21的第一令牌桶和令牌桶ID为bucket22的第二令牌桶。第一令牌桶中令牌数量根据接入网关设备的CPU处理能力来设定;第二令牌桶中的令牌数量很少。
现有技术中,接入网关设备上的使能了Portal功能的端口上会固定的下发以下4条规则:
第一条规则Rule1:为免认证规则,该规则用于限定将目的IP地址为Portal服务器或一些免认证的Web服务器的IP地址的HTTP/HTTPS报文,直接转发出去;
第二条规则Rule2:用于限定将目的端口号为80的HTTP报文重定向到CPU;
第三条规则Rule3:用于限定将目的端口号为443的HTTPS报文重定向到CPU;
第四条规则Rule4:用于限定将未命中上述规则Rule1、Rule2和Rule3的报文进行丢弃。
如果用户通过Portal认证,则会在Rule1与Rule2之间下发Portal用户表项,后续,用户主机发出的HTTP/HTTPS报文会根据该Portal用户表项进行转发。本申请实施例中新增的未上线用户会话表项位于Rule2与Rule3之间,用以对未上线用户主机的HTTPS报文进行限流,确保CPU的实际负荷不会超出正常处理能力,并且保护CPU不受攻击。Rule1、Portal用户表项、Rule2、未上线用户会话表项、Rule3、Rule4的匹配顺序如图3所示。
情况一:接收到未上线用户会话的首个HTTPS报文
假设,该HTTPS报文的源IP地址为10.0.0.2,目的IP地址为https://100.1.1.2,目的端口号为443。
则,硬件层面在接收到该HTTPS报文后,分别与Rule1、Portal用户表项、Rule2、未上线用户会话表项进行匹配,均没有命中,则继续与Rule3进行匹配,结果为匹配,则将该HTTPS报文上送给CPU,CPU在硬件层面中的Rule2与Rule3之间下发一条如表3-1所示的未上线用户会话表项。
表3-1
Figure BDA0001192708700000111
情况二:接收到该未上线用户会话的第二个HTTPS报文
硬件层面在接收到该第二个HTTPS报文后,分别与Rule1、Portal用户表项、Rule2进行匹配,均没有命中,则继续与本地保存的未上线用户会话表项进行匹配,结果命中如表3-1所示的表项,根据该表项中的令牌ID为0,确定该表项所对应的用户会话尚未获取到令牌,则从第一令牌桶bucket21中获取令牌,如果令牌获取成功,假设,获取到的令牌的ID为100,则将该表项中的令牌ID更新为100,将SCount的值加1,将FCount的值清0,继续与Rule3进行匹配,按照Rule3将该HTTPS报文上送给CPU进行处理,此时,表3-1更新为如表3-2所示。
表3-2
Figure BDA0001192708700000121
如果令牌获取失败,则丢弃该HTTPS报文,将FCount的值加1,此时,表3-1更新为表3-3所示。
表3-3
Figure BDA0001192708700000122
情况三:接收到该未上线用户会话的后续HTTPS报文
如果在情况二中,获取令牌成功,则硬件层面在接收到后续HTTPS报文后,分别与Rule1、Portal用户表项、Rule2进行匹配,均没有命中,则继续与本地保存的未上线用户会话表项进行匹配,结果命中如表3-2所示的表项,根据该表项中的令牌ID不为0,确定该表项所对应的用户会话已经获取到了令牌,因此,会继续与Rule3进行匹配,按照Rule3将该HTTPS报文上送给CPU进行处理。此时不会对如表3-2所示的未上线用户会话表项进行更新。
这样,在基于HTTPS的TCP仿冒过程完成后,会对用户进行Portal认证,认证通过后,用户上线,CPU会向硬件层面下发Portal用户表项,并通知硬件层面删除包含的源IP地址为10.0.0.2的未上线用户会话表项,释放这些表项所对应的用户会话获取到的令牌,将释放的令牌回收到令牌桶中。
如果在情况二中,获取令牌失败,则硬件层面在接收到后续HTTPS报文后,分别与Rule1、Portal用户表项、Rule2进行匹配,均没有命中,则继续与本地保存的未上线用户会话表项进行匹配,结果命中如表3-3所示的表项,根据该表项中的令牌ID为0,确定该表项所对应的用户会话尚未获取到令牌,因此,会从第一令牌桶bucket21中获取令牌,在令牌获取成功时,假设,获取到的令牌的ID为100,将该表项中的令牌ID更新为100,将SCount的值加1,将FCount的值清0,继续与Rule3进行匹配,按照Rule3将该HTTPS报文上送给CPU进行处理,此时,表3-3更新为如表3-2所示。如果令牌获取依然失败,则丢弃该HTTPS报文,将FCount的值加1,此时,表3-3更新为如表3-4所示。
表3-4
Figure BDA0001192708700000131
情况四:未上线用户会话表项超时
未上线用户会话表项对应的老化定时器的计时时间到达T时,将该表项所对应的用户会话获取到的令牌释放,将释放的令牌回收到第一令牌桶bucket21中,将令牌ID置为0,将FCount的值清0,但是,SCount的值保持不变。后续HTTPS报文需要重新获取令牌。
情况五:在多个T时间内用户一直未能上线
经历了多个T时间,用户一直未能上线,未上线用户会话表项中的SCount的值会一直累加,当检测到SCount的值达到MAX_S1时,限制该表项所对应的用户会话只能从第二令牌桶bucket22中获取令牌,将未上线用户会话表项中的令牌桶ID修改为bucket22。由于第二令牌桶bucket22中的令牌数量很少,可以达到限制异常用户上线的目的。
后续,当检测到SCount的值达到MAX_S2时,删除该未上线用户会话表项,其中,MAX_S2大于MAX_S1。
情况六:在一个T时间内用户一直未能上线
如果在一个T时间内一直获取不到令牌,FCount的值会一直累加。在接收到HTTPS报文后,若匹配的未上线用户会话表项中的FCount的值达到了MAX_F,则不允许该表项所对应的用户会话获取令牌,直接丢弃该HTTPS报文。后续,在老化定时器的计时时间到达T时,将FCount的值清0后,才会允许该表项所对应的用户会话获取令牌。
与前述报文处理方法的实施例相对应,本申请还提供了报文处理装置的实施例。
本申请报文处理装置60的实施例可以应用在接入网关设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在接入网关设备的处理器10将非易失性存储器50中对应的计算机程序指令读取到内存40中运行形成的。从硬件层面而言,如图4所示,为本申请报文处理装置所在接入网关设备的一种硬件结构图,除了图4所示的处理器10、内部总线20、网络接口30、内存40、以及非易失性存储器50之外,实施例中装置所在的接入网关设备通常根据该接入网关设备的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图5,本申请实施例的报文处理装置60中包括以下单元:接收单元601、判断单元602和处理单元603,其中:
接收单元601,用于接收用户主机发来的HTTPS报文;
判断单元602,用于针对查找到的与HTTPS报文匹配的未上线用户会话表项,判断该未上线用户会话表项所对应的用户会话是否已经获取到了令牌;
处理单元603,用于若判断单元602判断出该未上线用户会话表项所对应的用户会话尚未获取到令牌,则从第一令牌桶中获取令牌,在令牌获取成功时,将该HTTPS报文上送给CPU进行处理,在令牌获取失败时,将该HTTPS报文丢弃,其中,第一令牌桶中的令牌数量根据接入网关设备的CPU处理能力设定。
如图6所示,上述报文处理装置60中还包括:查找单元604和配置单元605,其中:
查找单元604,用于在接收单元601接收到HTTPS报文后,根据该HTTPS报文的源IP地址和目的IP地址,查找与该HTTPS报文匹配的未上线用户会话表项;
配置单元605,用于若查找单元604没有查找到与该HTTPS报文匹配的未上线用户会话表项,则配置包含源IP地址和目的IP地址的未上线用户会话表项。
其中,处理单元603,还用于若判断单元602判断出该未上线用户会话表项所对应的用户会话已经获取到了令牌,则将该HTTPS报文上送给CPU进行处理。
其中,未上线用户会话表项中包括:令牌ID;则,处理单元603,还用于在令牌获取成功时,将该未上线用户会话表项中的令牌ID更新为获取到的令牌的ID;
判断单元602具体用于通过以下方式判断未上线用户会话表项所对应的用户会话是否已经获取到了令牌:若未上线用户会话表项中的令牌ID为令牌ID的初始值,则判断出未上线用户会话表项所对应的用户会话尚未获取到令牌,否则,判断出未上线用户会话表项所对应的用户会话已经获取到了令牌。
其中,未上线用户会话表项中包括:令牌获取成功次数SCount和令牌获取失败次数FCount;则,处理单元603,还用于在令牌获取成功时,将未上线用户会话表项中的SCount的值进行累加,将FCount的值置为初始值;在令牌获取失败时,将未上线用户会话表项中的FCount的值进行累加。
如图6所示,上述报文处理装置60中还可以包括:更新单元606,其中:
更新单元606,用于在检测到未上线用户会话表项中的SCount的值达到预定的第一成功数量阈值时,将用于获取令牌的令牌桶从第一令牌桶修改为第二令牌桶,其中,第二令牌桶中的令牌数量远小于第一令牌桶中的令牌数量;还用于在检测到未上线用户会话表项中的SCount的值达到预定的第二成功数量阈值时,删除该未上线用户会话表项,其中,第二成功数量阈值大于第一成功数量阈值。
其中,处理单元603,还用于若判断单元602判断出该未上线用户会话表项中的FCount的值达到了预定的失败数量阈值,则丢弃该HTTPS报文。
如图6所示,上述报文处理装置60中还可以包括:
计时单元607,还用于在配置未上线用户会话表项时,开启对应的老化定时器进行计时,当老化定时器的计时时间到达预定老化时间时,重启该老化定时器;
处理单元603,还用于当老化定时器的计时时间到达预定老化时间时,若判断出未上线用户会话表项所对应的用户会话已经获取到了令牌,则将该未上线用户会话表项更新为对应用户会话尚未获取到令牌,将该未上线用户会话表项中的FCount的值置为初始值。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (16)

1.一种报文处理方法,其特征在于,所述方法应用于接入网关设备,所述方法包括:
接收用户主机发来的基于安全套接层的超文本传输协议HTTPS报文;
针对查找到的与所述HTTPS报文匹配的未上线用户会话表项,若判断出所述未上线用户会话表项所对应的用户会话尚未获取到令牌,则从第一令牌桶中获取令牌,在令牌获取成功时,将所述HTTPS报文上送给CPU进行处理,在令牌获取失败时,将所述HTTPS报文丢弃,其中,所述第一令牌桶中的令牌数量根据所述接入网关设备的CPU处理能力设定。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述HTTPS报文的源IP地址和目的IP地址,查找与所述HTTPS报文匹配的未上线用户会话表项;
若没有查找到,则配置包含所述源IP地址和目的IP地址的未上线用户会话表项。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若判断出所述未上线用户会话表项所对应的用户会话已经获取到了令牌,则将所述HTTPS报文上送给CPU进行处理。
4.根据权利要求1所述的方法,其特征在于,未上线用户会话表项中包括:令牌ID;
在令牌获取成功时,还将未上线用户会话表项中的令牌ID更新为获取到的令牌的ID;
通过以下方式判断未上线用户会话表项所对应的用户会话是否已经获取到了令牌:若未上线用户会话表项中的令牌ID为所述令牌ID的初始值,则判断出未上线用户会话表项所对应的用户会话尚未获取到令牌,否则,判断出未上线用户会话表项所对应的用户会话已经获取到了令牌。
5.根据权利要求1所述的方法,其特征在于,未上线用户会话表项中包括:令牌获取成功次数SCount和令牌获取失败次数FCount;则,
在令牌获取成功时,还将未上线用户会话表项中的SCount的值进行累加,将FCount的值置为初始值;
在令牌获取失败时,还将未上线用户会话表项中的FCount的值进行累加。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在检测到未上线用户会话表项中的SCount的值达到预定的第一成功数量阈值时,将用于获取令牌的令牌桶从第一令牌桶修改为第二令牌桶,其中,所述第二令牌桶中的令牌数量远小于所述第一令牌桶中的令牌数量;
在检测到未上线用户会话表项中的SCount的值达到预定的第二成功数量阈值时,删除该未上线用户会话表项,其中,所述第二成功数量阈值大于所述第一成功数量阈值。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若判断出查找到的未上线用户会话表项中的FCount的值达到了预定的失败数量阈值,则丢弃所述HTTPS报文。
8.根据权利要求5所述的方法,其特征在于,在配置未上线用户会话表项时,还开启对应的老化定时器进行计时;则,所述方法还包括:
当老化定时器的计时时间到达预定老化时间时,若判断出未上线用户会话表项所对应的用户会话已经获取到了令牌,则释放该令牌,将该未上线用户会话表项更新为对应用户会话尚未获取到令牌,将该未上线用户会话表项中的FCount的值置为初始值,重启该老化定时器。
9.一种报文处理装置,其特征在于,所述装置应用于接入网关设备中,所述装置包括:
接收单元,用于接收用户主机发来的基于安全套接层的超文本传输协议HTTPS报文;
判断单元,用于针对查找到的与所述HTTPS报文匹配的未上线用户会话表项,判断所述未上线用户会话表项所对应的用户会话是否已经获取到了令牌;
处理单元,用于若所述判断单元判断出所述未上线用户会话表项所对应的用户会话尚未获取到令牌,则从第一令牌桶中获取令牌,在令牌获取成功时,将所述HTTPS报文上送给CPU进行处理,在令牌获取失败时,将所述HTTPS报文丢弃,其中,所述第一令牌桶中的令牌数量根据所述接入网关设备的CPU处理能力设定。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
查找单元,用于在所述接收单元接收到所述HTTPS报文后,根据所述HTTPS报文的源IP地址和目的IP地址,查找与所述HTTPS报文匹配的未上线用户会话表项;
配置单元,用于若所述查找单元没有查找到与所述HTTPS报文匹配的未上线用户会话表项,则配置包含所述源IP地址和目的IP地址的未上线用户会话表项。
11.根据权利要求9所述的装置,其特征在于,
所述处理单元,还用于若所述判断单元判断出所述未上线用户会话表项所对应的用户会话已经获取到了令牌,则将所述HTTPS报文上送给CPU进行处理。
12.根据权利要求9所述的装置,其特征在于,未上线用户会话表项中包括:令牌ID;则,
所述处理单元,还用于在令牌获取成功时,将未上线用户会话表项中的令牌ID更新为获取到的令牌的ID;
所述判断单元具体用于通过以下方式判断未上线用户会话表项所对应的用户会话是否已经获取到了令牌:若未上线用户会话表项中的令牌ID为所述令牌ID的初始值,则判断出未上线用户会话表项所对应的用户会话尚未获取到令牌,否则,判断出未上线用户会话表项所对应的用户会话已经获取到了令牌。
13.根据权利要求9所述的装置,其特征在于,未上线用户会话表项中包括:令牌获取成功次数SCount和令牌获取失败次数FCount;则,
所述处理单元,还用于在令牌获取成功时,将未上线用户会话表项中的SCount的值进行累加,将FCount的值置为初始值;在令牌获取失败时,将未上线用户会话表项中的FCount的值进行累加。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
更新单元,用于在检测到未上线用户会话表项中的SCount的值达到预定的第一成功数量阈值时,将用于获取令牌的令牌桶从第一令牌桶修改为第二令牌桶,其中,所述第二令牌桶中的令牌数量远小于所述第一令牌桶中的令牌数量;还用于在检测到未上线用户会话表项中的SCount的值达到预定的第二成功数量阈值时,删除该未上线用户会话表项,其中,所述第二成功数量阈值大于所述第一成功数量阈值。
15.根据权利要求13所述的装置,其特征在于,
所述处理单元,还用于若所述判断单元判断出所述未上线用户会话表项中的FCount的值达到了预定的失败数量阈值,则丢弃所述HTTPS报文。
16.根据权利要求13所述的装置,其特征在于,所述装置还包括:
计时单元,还用于在配置未上线用户会话表项时,开启对应的老化定时器进行计时,当老化定时器的计时时间到达预定老化时间时,重启该老化定时器;
所述处理单元,还用于当老化定时器的计时时间到达预定老化时间时,若判断出未上线用户会话表项所对应的用户会话已经获取到了令牌,则释放该令牌,将该未上线用户会话表项更新为对应用户会话尚未获取到令牌,将该未上线用户会话表项中的FCount的值置为初始值。
CN201611220634.3A 2016-12-26 2016-12-26 报文处理方法及装置 Active CN108243115B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201611220634.3A CN108243115B (zh) 2016-12-26 2016-12-26 报文处理方法及装置
JP2019534829A JP6824417B2 (ja) 2016-12-26 2017-12-26 パケット処理方法およびアクセスゲートウェイ機器
PCT/CN2017/118627 WO2018121528A1 (zh) 2016-12-26 2017-12-26 报文处理
US16/474,037 US10992584B2 (en) 2016-12-26 2017-12-26 Processing packet
EP17885544.1A EP3547626B1 (en) 2016-12-26 2017-12-26 Packet processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611220634.3A CN108243115B (zh) 2016-12-26 2016-12-26 报文处理方法及装置

Publications (2)

Publication Number Publication Date
CN108243115A CN108243115A (zh) 2018-07-03
CN108243115B true CN108243115B (zh) 2021-06-29

Family

ID=62702227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611220634.3A Active CN108243115B (zh) 2016-12-26 2016-12-26 报文处理方法及装置

Country Status (5)

Country Link
US (1) US10992584B2 (zh)
EP (1) EP3547626B1 (zh)
JP (1) JP6824417B2 (zh)
CN (1) CN108243115B (zh)
WO (1) WO2018121528A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6841785B2 (ja) * 2018-03-29 2021-03-10 日本電信電話株式会社 情報処理装置、情報処理方法及び情報処理プログラム
CN111600832B (zh) * 2019-07-25 2022-09-30 新华三技术有限公司 报文处理方法及装置
US11483361B2 (en) * 2020-06-24 2022-10-25 KORD, Inc. Audio stem access and delivery solution
CN113542150B (zh) * 2021-07-14 2023-06-02 杭州海康威视数字技术股份有限公司 一种数据传输方法、装置及中心端网桥

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018206A (zh) * 2007-02-14 2007-08-15 华为技术有限公司 分片报文处理方法与装置
CN101459583A (zh) * 2007-12-13 2009-06-17 华为技术有限公司 报文处理方法和装置、以及报文发送方法和装置
CN104270364A (zh) * 2014-09-30 2015-01-07 杭州华三通信技术有限公司 一种超文本传输协议报文处理方法和装置
CN104519021A (zh) * 2013-09-29 2015-04-15 杭州华三通信技术有限公司 防止恶意流量攻击的方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7253717B2 (en) * 2000-11-29 2007-08-07 Mobile Technics Llc Method and system for communicating with and tracking RFID transponders
US20040125796A1 (en) * 2002-12-30 2004-07-01 Reader Scot A. N rate, N‘precedence meter/marker
US7639117B2 (en) * 2004-01-20 2009-12-29 Harrow Products Llc Access control system with energy-saving optical token presence sensor system
JP2006013757A (ja) 2004-06-24 2006-01-12 Matsushita Electric Ind Co Ltd ホームネットワーク遠隔管理システム
JP4507005B2 (ja) * 2007-10-25 2010-07-21 Necアクセステクニカ株式会社 無線通信システム,無線通信方法及びプログラム
US8082353B2 (en) * 2008-05-13 2011-12-20 At&T Mobility Ii Llc Reciprocal addition of attribute fields in access control lists and profiles for femto cell coverage management
JP2010252049A (ja) * 2009-04-15 2010-11-04 Sony Corp 通信装置及び通信方法、コンピューター・プログラム、並びに通信システム
US9729467B2 (en) * 2009-05-12 2017-08-08 Qualcomm Incorporated Method and apparatus for managing congestion in a wireless system
DE102009026124A1 (de) * 2009-07-07 2011-01-13 Elan Schaltelemente Gmbh & Co. Kg Verfahren und System zur Erfassung, Übertragung und Auswertung sicherheitsgerichteter Signale
JP5725162B2 (ja) * 2011-03-31 2015-05-27 富士通株式会社 排他制御方法、および排他制御プログラム
US9722972B2 (en) * 2012-02-26 2017-08-01 Oracle International Corporation Methods and apparatuses for secure communication
US9417910B2 (en) * 2012-12-20 2016-08-16 Oracle International Corporation System and method for implementing shared probabilistic counters storing update probability values
WO2014176539A1 (en) * 2013-04-26 2014-10-30 Interdigital Patent Holdings, Inc. Multi-factor authentication to achieve required authentication assurance level
US9531749B2 (en) * 2014-08-07 2016-12-27 International Business Machines Corporation Prevention of query overloading in a server application
US9984110B2 (en) * 2014-08-21 2018-05-29 Dropbox, Inc. Multi-user search system with methodology for personalized search query autocomplete
EP3009991B1 (en) * 2014-09-26 2020-04-01 Assa Abloy AB Anti-passback algorithm for an access control system
US9135412B1 (en) * 2015-02-24 2015-09-15 Wowza Media Systems, LLC Token-based security for remote resources
US9942217B2 (en) * 2015-06-03 2018-04-10 At&T Intellectual Property I, L.P. System and method for generating a service provider based secure token
EP3345349A4 (en) * 2015-09-05 2019-08-14 Nudata Security Inc. SYSTEMS AND METHODS FOR DETECTING AND PENALIZING ANOMALIES
US20180063152A1 (en) * 2016-08-29 2018-03-01 Matt Erich Device-agnostic user authentication and token provisioning

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018206A (zh) * 2007-02-14 2007-08-15 华为技术有限公司 分片报文处理方法与装置
CN101459583A (zh) * 2007-12-13 2009-06-17 华为技术有限公司 报文处理方法和装置、以及报文发送方法和装置
CN104519021A (zh) * 2013-09-29 2015-04-15 杭州华三通信技术有限公司 防止恶意流量攻击的方法及装置
CN104270364A (zh) * 2014-09-30 2015-01-07 杭州华三通信技术有限公司 一种超文本传输协议报文处理方法和装置

Also Published As

Publication number Publication date
US20190372899A1 (en) 2019-12-05
JP6824417B2 (ja) 2021-02-03
EP3547626A4 (en) 2019-11-20
CN108243115A (zh) 2018-07-03
WO2018121528A1 (zh) 2018-07-05
JP2020503763A (ja) 2020-01-30
US10992584B2 (en) 2021-04-27
EP3547626B1 (en) 2021-03-03
EP3547626A1 (en) 2019-10-02

Similar Documents

Publication Publication Date Title
CN108243115B (zh) 报文处理方法及装置
US11863587B2 (en) Webshell detection method and apparatus
US8561188B1 (en) Command and control channel detection with query string signature
JP4905395B2 (ja) 通信監視装置、通信監視プログラム、および通信監視方法
US8706866B2 (en) Virtual server and method for identifying zombie, and sinkhole server and method for integratedly managing zombie information
JP5532458B2 (ja) コンピュータシステム、コントローラ、及びネットワーク監視方法
US8943586B2 (en) Methods of detecting DNS flooding attack according to characteristics of type of attack traffic
US10218717B1 (en) System and method for detecting a malicious activity in a computing environment
CN109327395B (zh) 一种报文处理方法及装置
CN105939361A (zh) 防御cc攻击的方法及装置
US20220094711A1 (en) Data plane with connection validation circuits
US20140041012A1 (en) System for the management of access points
JP6050162B2 (ja) 接続先情報抽出装置、接続先情報抽出方法、及び接続先情報抽出プログラム
CN108400955B (zh) 一种网络攻击的防护方法及系统
CN111565203A (zh) 业务请求的防护方法、装置、系统和计算机设备
CN107786489B (zh) 访问请求验证方法及装置
US9641543B2 (en) Systems and methods for securing remote configuration
CN106254433B (zh) 一种建立tcp通信连接的方法及装置
TWI577163B (zh) Based on the current time to share the public network IP Internet connection request flow of the selective allow or prevent the method and the implementation of the method of public network IP sharing of the current state detection and prevention system
CN112738110A (zh) 一种旁路阻断方法、装置、电子设备和存储介质
US10237287B1 (en) System and method for detecting a malicious activity in a computing environment
CN109617779B (zh) 基于vtep的路由表维护方法及装置
CN113810398B (zh) 一种攻击防护方法、装置、设备及存储介质
CN106506270B (zh) 一种ping报文处理方法及装置
JP5385867B2 (ja) データ転送装置及びアクセス解析方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant