一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

通信方法及装置与流程

2022-07-22 22:49:23 来源:中国专利 TAG:


1.本技术涉及通信技术领域,尤其涉及一种通信方法及装置。


背景技术:

2.目前,访问控制列表(英文:access control lists,简称:acl)的类型包括以下几种:无线客户端acl、无线接入点acl、基本acl、高级acl、二层acl以及用户自定义acl。每种acl类型均包括独立的编号范围、适用的ip版本以及规则制订依据。
3.例如,无线客户端acl的编号范围为100-199,适用的ip版本为ipv4和ipv6,规则制订依据为无线客户端连接的服务集标识符(英文:service set identifier,简称:ssid);无线接入点acl的编号范围为200-299,适用的ip版本为ipv4和ipv6,规则制订依据为无线接入点的mac地址和序列号。
4.管理员在创建acl时,可为其指定编号或名称,且有些网络设备内配置ipv4和ipv6类型的acl的编号或名称可以相同。但,远程用户拨号认证服务(英文:remote authentication dial in user service,简称:radius)服务器在通过过滤标识(filter-id)属性向radius客户端下发acl时,filter-id属性仅用于下发acl编号,不利于acl的灵活使用。
5.若终端认证成功,radius服务器发送的认证响应报文包括filter-id属性,该属性携带acl编号、用户组。其中,filter-id的值为纯数字时,该数字表示acl编号,filter-id的值包括字母时,则表示用户组。
6.为了解决上述问题,在现有方案中,radius服务器利用厂商制定的私有属性(例如,思科制定的供应商特定属性(英文:airespace-acl-name vendor specific attribute,简称:vsa))可以实现对acl名称下发。若终端认证成功,radius服务器发送的认证响应报文包括vsa属性,该vsa属性携带acl名称。
7.但是,radius服务器通过认证响应报文仅下发acl名称,并未下发acl类型,若radius客户端内存在ipv4和ipv6类型的同名acl,此时,radius客户端将无法区分radius服务器下发的是哪种类型的acl。


技术实现要素:

8.有鉴于此,本技术提供了一种通信方法及装置,用以解决现有radius客户端内存在不同类型的同名acl时,无法区分radius服务器下发的是哪种类型的acl的问题。
9.第一方面,本技术提供了一种通信方法,所述方法应用于radius服务器,所述方法包括:
10.接收radius客户端发送的认证请求报文,所述认证请求报文包括用户的用户名以及密码;
11.对所述用户名以及密码进行认证处理;
12.当所述用户名以及密码认证通过时,根据所述用户名,从本地配置的用户策略中,
选择与所述用户名匹配的第一用户策略,所述第一用户策略包括acl信息,所述acl信息包括acl编号以及acl类型,或者,包括acl名称以及acl类型;
13.向所述radius客户端发送认证响应报文,所述认证响应报文包括所述acl信息,以使得所述radius客户端根据所述acl信息在本地确定并配置对应的acl。
14.第二方面,本技术提供了一种通信装置,所述装置应用于radius服务器,所述装置包括:
15.接收单元,用于接收radius客户端发送的认证请求报文,所述认证请求报文包括用户的用户名以及密码;
16.认证单元,用于对所述用户名以及密码进行认证处理;
17.选择单元,用于当所述用户名以及密码认证通过时,根据所述用户名,从本地配置的用户策略中,选择与所述用户名匹配的第一用户策略,所述第一用户策略包括acl信息,所述acl信息包括acl编号以及acl类型,或者,包括acl名称以及acl类型;
18.发送单元,用于向所述radius客户端发送认证响应报文,所述认证响应报文包括所述acl信息,以使得所述radius客户端根据所述acl信息在本地确定并配置对应的acl。
19.第三方面,本技术提供了一种网络设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器被机器可执行指令促使执行本技术第一方面所提供的方法。
20.因此,通过应用本技术提供的通信方法及装置,radius服务器接收radius客户端发送的认证请求报文,该认证请求报文包括用户的用户名以及密码;radius服务器对用户名以及密码进行认证处理;当用户名以及密码认证通过时,根据用户名,radius服务器从本地配置的用户策略中,选择与用户名匹配的第一用户策略,该第一用户策略包括acl信息,所述acl信息包括acl编号以及acl类型,或者,包括acl名称以及acl类型;radius服务器向radius客户端发送认证响应报文,该认证响应报文包括acl信息,以使得radius客户端根据acl信息在本地确定并配置对应的acl。
21.如此,radius服务器可通过认证响应报文下发不同类型的acl名称,也可通过认证响应报文下发不同类型的acl编号,解决了现有radius客户端内存在不同类型的同名acl时,无法区分radius服务器下发的是哪种类型的acl的问题,使得基于radius服务器授权acl的网络更为灵活。
附图说明
22.图1为本技术实施例提供的通信方法的流程图;
23.图2为本技术实施例提供的acl-version属性结构示意图;
24.图3为本技术实施例提供的主机认证过程信令图;
25.图4为本技术实施例提供的通信装置结构图;
26.图5为本技术实施例提供的网络设备硬件结构体。
具体实施方式
27.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例
中所描述的实施例并不代表与本技术相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
28.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
29.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
30.下面对本技术实施例提供的通信方法进行详细地说明。参见图1,图1为本技术实施例提供的通信方法的流程图。该方法应用于radius服务器。本技术实施例提供的通信方法可包括如下所示步骤。
31.步骤110、接收radius客户端发送的认证请求报文,所述认证请求报文包括用户的用户名以及密码。
32.具体地,当用户想要访问网络或者取的某些网络资源的权限时,用户通过终端发起连接请求。
33.终端接收用户输入的用户名和密码,终端生成连接请求。该连接请求包括用户名和密码。终端向radius客户端发送连接请求。radius客户端接收到连接请求后,从中获取用户名和密码。radius客户端生成认证请求报文,该认证请求报文包括用户名和密码。
34.radius客户端向radius服务器发送认证请求报文。radius服务器接收到认证请求报文后,从中获取用户名和密码。
35.可以理解的是,认证请求报文内还包括终端ip地址、mac地址、接口名称、会话id等信息。上述信息无需用户输入,radius服务器可通过radius客户端与终端之间建立的连接中获取或者由radius服务器自动生成。
36.步骤120、对所述用户名以及密码进行认证处理。
37.具体地,根据步骤110的描述,radius服务器获取到用户名和密码后,对用户名以及密码进行认证处理。
38.可以理解的是,radius服务器内已存储多个用户的用户信息,每个用户信息包括用户名、密码、ip地址等信息。radius服务器将获取到的用户名、密码与已存储的用户信息包括的用户名、密码进行比对处理。
39.若获取到的用户名、密码与用户信息内包括的用户名、密码相同,则radius服务器确定该终端认证通过,否则,认证未通过。
40.步骤130、当所述用户名以及密码认证通过时,根据所述用户名,从本地配置的用户策略中,选择与所述用户名匹配的第一用户策略,所述第一用户策略包括acl信息,所述acl信息包括acl编号以及acl类型,或者,包括acl名称以及acl类型。
41.具体地,根据步骤120的描述,radius服务器对从认证请求报文中获取到的用户名、密码进行认证处理后,若认证通过,则根据用户名,radius服务器从本地配置的用户策
略中,选择与该用户名匹配的第一用户策略。
42.该第一用户策略包括acl信息,acl信息包括acl编号以及acl类型,或者,包括acl名称以及alc类型。
43.步骤140、向所述radius客户端发送认证响应报文,所述认证响应报文包括所述acl信息,以使得所述radius客户端根据所述acl信息在本地确定并配置对应的acl。
44.具体地,根据步骤130的描述,radius服务器选择出第一用户策略后,生成认证响应报文,该认证响应报文包括acl信息。radius服务器向radius客户端发送认证响应报文。
45.radius客户端接收到认证响应报文后,从中获取acl信息。根据acl信息,radius客户端在本地确定对应的acl,并将该acl配置在对应的接口处。如此,实现了流量的访问控制。
46.进一步地,前述认证响应报文包括filter-id属性以及acl版本(acl-version)属性。其中,filter-id属性用于携带acl编号、acl名称或者用户组,acl-version属性用于携带acl类型。
47.其中,若filter-id属性内存储的值为数字,且filter-id属性的相邻属性为acl-version属性,则上述数字表示acl编号,acl-version属性内存储的值表示acl类型;
48.若filter-id属性内存储的值为字符串,字符串的首个字符为字母([a-z,a-z])且filter-id属性的相邻属性为acl-version属性,则上述字符串表示acl名称,acl-version属性内存储的值表示acl类型;
[0049]
若filter-id属性内存储的值为字符串,且filter-id属性的相邻属性不为acl-version属性(也即是,认证响应报文内未包括acl-version属性),则上述字符串表示用户组。
[0050]
更进一步地,如图2所示,图2为本技术实施例提供的acl-version属性结构示意图。在图2中,acl-version属性包括类型(type)字段、厂商标识(vendor-id)字段、厂商类型(vendor type)字段、厂商长度(vendor length)字段以及acl-version字段。acl-version字段用于携带acl类型。
[0051]
其中,类型字段的值为26,该类型字段用于设备厂商对radius协议进行扩展;厂商标识字段的值用于表示设备厂商代号;厂商类型字段的值用于表示子属性类型;厂商长度字段的值用于表示子属性长度;acl-version字段的值用于表示acl类型。
[0052]
在本技术实施例中,acl类型包括第一类型、第二类型、第三类型以及第四类型。第一类型的值为1,用于指示为ipv4类型的acl;第二类型的值为2,用于指示为ipv6类型的acl;第三类型的值为3,用于指示为mac类型的acl;第四类型的值为4,用于指示为自定义类型的acl。
[0053]
可以理解的是,每种类型的acl均有属于自身的编号范围、使用的ip版本以及规则执行依据。编号范围、使用的ip版本以及规则执行依据可参照现有acl手册进行配置,在此不再复述。
[0054]
因此,通过应用本技术提供的通信方法,radius服务器接收radius客户端发送的认证请求报文,该认证请求报文包括用户的用户名以及密码;radius服务器对用户名以及密码进行认证处理;当用户名以及密码认证通过时,根据用户名,radius服务器从本地配置的用户策略中,选择与用户名匹配的第一用户策略,该第一用户策略包括acl信息,所述acl
信息包括acl编号以及acl类型,或者,包括acl名称以及acl类型;radius服务器向radius客户端发送认证响应报文,该认证响应报文包括acl信息,以使得radius客户端根据acl信息在本地确定并配置对应的acl。
[0055]
如此,radius服务器可通过认证响应报文下发不同类型的acl名称,也可通过认证响应报文下发不同类型的acl编号,解决了现有radius客户端内存在不同类型的同名acl时,无法区分radius服务器下发的是哪种类型的acl的问题,使得基于radius服务器授权acl的网络更为灵活。
[0056]
下面通过一个具体示例详细说明本技术实施例提供的通信方法。以图3所示的信令图为例进行说明。图3为本技术实施例提供的主机认证过程信令图。
[0057]
在图3中,包括三台设备,分别为主机、radius客户端以及radius服务器。
[0058]
当用户想要访问网络或者取的某些网络资源的权限时,用户通过终端发起连接请求。
[0059]
终端接收用户输入的用户名和密码,终端生成连接请求。该连接请求包括用户名和密码。终端向radius客户端发送连接请求。radius客户端接收到连接请求后,从中获取用户名和密码。radius客户端生成认证请求报文,该认证请求报文包括用户名和密码。
[0060]
radius客户端向radius服务器发送认证请求报文。radius服务器接收到认证请求报文后,从中获取用户名和密码。
[0061]
可以理解的是,认证请求报文内还包括终端ip地址、mac地址、接口名称、会话id等信息。上述信息无需用户输入,radius服务器可通过radius客户端与终端之间建立的连接中获取或者由radius服务器自动生成。
[0062]
radius服务器获取到用户名和密码后,对用户名以及密码进行认证处理。
[0063]
可以理解的是,radius服务器内已存储多个用户的用户信息,每个用户信息包括用户名、密码、ip地址等信息。radius服务器将获取到的用户名、密码与已存储的用户信息包括的用户名、密码进行比对处理。
[0064]
若获取到的用户名、密码与用户信息内包括的用户名、密码相同,则radius服务器确定该终端认证通过,否则,认证未通过。
[0065]
根据用户名,radius服务器从本地配置的用户策略中,选择与该用户名匹配的第一用户策略。
[0066]
该第一用户策略包括acl信息,acl信息包括acl编号以及acl类型,或者,包括acl名称以及alc类型。
[0067]
radius服务器生成认证响应报文,该认证响应报文包括acl信息。radius服务器向radius客户端发送认证响应报文。
[0068]
进一步地,前述认证响应报文包括filter-id属性以及acl-version属性。其中,filter-id属性用于携带acl编号、acl名称或者用户组,acl-version属性用于携带acl类型。
[0069]
其中,若filter-id属性内存储的值为数字,且filter-id属性的相邻属性为acl-version属性,则上述数字表示acl编号,acl-version属性内存储的值表示acl类型;
[0070]
若filter-id属性内存储的值为字符串,字符串的首个字符为字母([a-z,a-z])且filter-id属性的相邻属性为acl-version属性,则上述字符串表示acl名称,acl-version
属性内存储的值表示acl类型;
[0071]
若filter-id属性内存储的值为字符串,且filter-id属性的相邻属性不为acl-version属性(也即是,认证响应报文内未包括acl-version属性),则上述字符串表示用户组。
[0072]
可以理解的是,radius客户端接收到认证响应报文后,根据上述规则,从中获取acl信息。根据acl信息,radius客户端在本地确定对应的acl,并将该acl配置在对应的接口处。如此,实现了流量的访问控制。
[0073]
radius客户端配置acl后,依照现有交互规则,向radius服务器发送计费开始请求报文,radius返回计费开始响应报文,并开始计费。终端开始访问网络资源。当用户不再访问网络时,用户通过终端发起断开连接请求。
[0074]
终端向radius客户端发送断开连接请求。radius客户端向radius服务器发送计费停止请求报文。radius服务器返回计费结束响应报文,并停止计费。radius客户端通知终端结束访问网络资源。
[0075]
基于同一发明构思,本技术实施例还提供了与通信方法对应的通信装置。参见图4,图4为本技术实施例提供的通信装置结构图。所述装置应用于radius服务器,所述装置包括:
[0076]
接收单元410,用于接收radius客户端发送的认证请求报文,所述认证请求报文包括用户的用户名以及密码;
[0077]
认证单元420,用于对所述用户名以及密码进行认证处理;
[0078]
选择单元430,用于当所述用户名以及密码认证通过时,根据所述用户名,从本地配置的用户策略中,选择与所述用户名匹配的第一用户策略,所述第一用户策略包括acl信息,所述acl信息包括acl编号以及acl类型,或者,包括acl名称以及acl类型;
[0079]
发送单元440,用于向所述radius客户端发送认证响应报文,所述认证响应报文包括所述acl信息,以使得所述radius客户端根据所述acl信息在本地确定并配置对应的acl。
[0080]
可选地,所述认证响应报文包括filter-id属性以及acl-version属性;
[0081]
所述filter-id属性用于携带所述acl编号、acl名称或者用户组,所述acl-version属性用于携带所述acl类型。
[0082]
可选地,所述acl-version属性包括类型字段、厂商标识字段、厂商类型字段、厂商长度字段以及acl-version字段;
[0083]
所述acl-version字段用于携带所述acl类型。
[0084]
可选地,若所述filter-id属性内存储的值为数字,且所述filter-id属性的相邻属性为所述acl-version属性,则所述数字表示所述acl编号,所述acl-version属性表示所述acl类型;
[0085]
若所述filter-id属性内存储的值为字符串,所述字符串的首个字符为字母且所述filter-id属性的相邻属性为所述acl-version属性,则所述字符串表示所述acl名称,所述acl-version属性表示所述acl类型;
[0086]
若所述filter-id属性内存储的值为字符串,且所述filter-id属性的相邻属性不为所述acl-version属性,则所述字符串表示所述用户组。
[0087]
可选地,所述acl类型包括第一类型、第二类型、第三类型以及第四类型;
[0088]
所述第一类型的值为1,用于指示为ipv4类型的acl;
[0089]
所述第二类型的值为2,用于指示为ipv6类型的acl;
[0090]
所述第三类型的值为3,用于指示为mac类型的acl;
[0091]
所述第四类型的值为4,用于指示为自定义类型的acl。
[0092]
因此,通过应用本技术提供的通信装置,radius服务器接收radius客户端发送的认证请求报文,该认证请求报文包括用户的用户名以及密码;radius服务器对用户名以及密码进行认证处理;当用户名以及密码认证通过时,根据用户名,radius服务器从本地配置的用户策略中,选择与用户名匹配的第一用户策略,该第一用户策略包括acl信息,所述acl信息包括acl编号以及acl类型,或者,包括acl名称以及acl类型;radius服务器向radius客户端发送认证响应报文,该认证响应报文包括acl信息,以使得radius客户端根据acl信息在本地确定并配置对应的acl。
[0093]
如此,radius服务器可通过认证响应报文下发不同类型的acl名称,也可通过认证响应报文下发不同类型的acl编号,解决了现有radius客户端内存在不同类型的同名acl时,无法区分radius服务器下发的是哪种类型的acl的问题,使得基于radius服务器授权acl的网络更为灵活。
[0094]
基于同一发明构思,本技术实施例还提供了一种网络设备,如图5所示,包括处理器510、收发器520和机器可读存储介质530,机器可读存储介质530存储有能够被处理器510执行的机器可执行指令,处理器510被机器可执行指令促使执行本技术实施例所提供的通信方法。前述图4所示的通信装置,可采用如图5所示的网络设备硬件结构实现。
[0095]
上述计算机可读存储介质530可以包括随机存取存储器(英文:random access memory,简称:ram),也可以包括非易失性存储器(英文:non-volatile memory,简称:nvm),例如至少一个磁盘存储器。可选的,计算机可读存储介质530还可以是至少一个位于远离前述处理器510的存储装置。
[0096]
上述处理器510可以是通用处理器,包括中央处理器(英文:central processing unit,简称:cpu)、网络处理器(英文:network processor,简称:np)等;还可以是数字信号处理器(英文:digital signal processor,简称:dsp)、专用集成电路(英文:application specific integrated circuit,简称:asic)、现场可编程门阵列(英文:field-programmable gate array,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0097]
本技术实施例中,处理器510通过读取机器可读存储介质530中存储的机器可执行指令,被机器可执行指令促使能够实现处理器510自身以及调用收发器520执行前述本技术实施例描述的通信方法。
[0098]
另外,本技术实施例提供了一种机器可读存储介质530,机器可读存储介质530存储有机器可执行指令,在被处理器510调用和执行时,机器可执行指令促使处理器510自身以及调用收发器520执行前述本技术实施例描述的通信方法。
[0099]
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0100]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件
说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0101]
对于通信装置以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0102]
以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献