本申请实施例涉及移动通信领域,特别涉及一种dns服务器的发现方法、装置、计算机设备及存储介质。
背景技术:
5g核心网(5gcore,5gc)支持采用协议数据单元(protocoldataunit,pdu)会话来支持边缘计算。
在边缘计算场景下,用户设备(userequipment,ue)发送的域名系统(domainnamesystem,dns)查询由边缘应用服务器发现功能(edgeapplicationserverdiscoveryfunction,easdf)来处理。为了实现会话分流,会话管理功能(sessionmanagementfunction,smf)插入上行分类器/分支点(uplinkclassifier/branchingpoint,ulcl/bp)并重新向ue分配dns服务器。
但由于smf通过非接入层(non-accessstratum,nas)向ue发送新的dns服务器的信息,无法满足分离式ue(split-ue)的需求。也即由于分离式ue是移动设备(mobileequipment,me)和终端设备(terminalequipment,te)是分离的ue,基于非接入层的dns发现过程仅能触达me,而无法触达与me相连的te,导致te无法获取到重新分配的新dns服务器。如何重发现用于dns查询的dns服务器是尚未解决的技术问题。
技术实现要素:
本申请提供了一种dns服务器的发现方法、装置、计算机设备及存储介质,提供了一种基于用户面(userplane,up)的dns服务器的发现方法。所述技术方案如下:
根据本申请的一方面,提供了一种dns服务器的发现方法,所述方法包括:
向本地协议数据单元会话锚点l-psa发送dns查询,所述dns查询携带有第一dns服务器easdf的网际互联协议(internetprotocol,ip)地址;
在确定所述第一dns服务器easdf满足不可用条件的情况下,向smf发送第一dhcp请求,所述第一dhcp请求用于获取第二dns服务器的ip地址;
接收第一dhcp响应,所述第一dhcp响应携带有所述smf分配的第二dns服务器的ip地址。
根据本申请的一方面,提供了一种dns服务器的分配方法,应用于smf中,所述方法包括:
接收第一dhcp请求,所述第一dhcp请求为ue在确定第一dns服务器easdf满足不可用条件的情况下通过l-psa向smf转发的,所述第一dhcp请求用于获取第二dns服务器的ip地址;
响应于接收到所述第一dhcp请求,确定与所述l-psa相连的至少一个候选dns服务器;
在所述至少一个候选dns服务器中确定第二dns服务器,所述第二dns服务器为分配给所述ue的dns服务器;
向所述ue发送第一dhcp响应,所述第一dhcp响应携带有所述第二dns服务器的ip地址。
根据本申请的另一方面,提供了一种dns服务器的发现装置,所述装置包括:
发送模块,用于向l-psa发送dns查询,所述dns查询携带有第一dns服务器easdf的ip地址;以及,用于在确定所述第一dns服务器easdf满足不可用条件的情况下,向smf发送第一dhcp请求,所述第一dhcp请求用于获取第二dns服务器的ip地址;
接收模块,用于接收第一dhcp响应,所述第一dhcp响应携带有所述smf分配的第二dns服务器的ip地址。
根据本申请的另一方面,提供了一种dns服务器的分配装置,所述装置包括:
接收模块,用于接收第一dhcp请求,所述第一dhcp请求为ue在确定第一dns服务器easdf满足不可用条件的情况下通过l-psa向smf转发的,所述第一dhcp请求用于获取第二dns服务器的ip地址;
确定模块,用于响应于接收到所述第一dhcp请求,确定与所述l-psa相连的至少一个候选dns服务器;
确定模块,还用于在所述至少一个候选dns服务器中确定第二dns服务器,所述第二dns服务器为分配给所述ue的dns服务器;
发送模块,用于向所述ue发送第一dhcp响应,所述第一dhcp响应携带有所述第二dns服务器的ip地址。
根据本申请的一个方面,提供了一种计算机设备,所述计算机设备包括:处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如上所述的dns服务器的发现方法或者dns服务器的分配方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序由处理器加载并执行以实现如上所述的dns服务器的发现方法或者dns服务器的分配方法。
根据本申请的另一方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的dns服务器的发现方法或者dns服务器的分配方法。
根据本申请的另一方面,提供了一种芯片,所述芯片被配置为执行上述方面提供的dns服务器的发现方法或者dns服务器的分配方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过在确定第一dns服务器easdf满足不可用条件的情况下,向smf发送用于获取dns服务器ip地址的第一dhcp请求,并且在接收第一dhcp响应后获取重发现的第二dns服务器的ip地址。由于本方法是基于dhcp的dns发现过程,属于ip层的dns发现过程而不是非接入层的dns发现过程,因此本方法能够解决了在插入ulcl/bp和l-psa后,ue无法通过l-psa访问原始分配的easdf,且分配的新dns服务器无法被分离式ue中的te获取到的问题,使得te能够基于dhcp的dns发现过程,与me基于非接入层的dns发现过程一并获取到相同的新dns服务器的ip地址,提供了一种简单高效的基于up的dns服务器的发现方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个示例性实施例提供的通信系统的结构框图;
图2示出了本申请另一个示例性实施例提供的通信系统的结构框图;
图3示出了本申请另一个示例性实施例提供的通信系统的结构框图;
图4示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图;
图5示出了本申请另一个示例性实施例提供的dns服务器的发现方法的流程图;
图6示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图;
图7示出了本申请另一个示例性实施例提供的dns服务器的发现方法的流程图;
图8示出了本申请另一个示例性实施例提供的dns服务器的发现方法的流程图;
图9示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图;
图10示出了本申请一个示例性实施例提供的dns服务器的分配方法的流程图;
图11示出了本申请一个示例性实施例提供的dns服务器的发现装置的框图;
图12示出了本申请一个示例性实施例提供的dns服务器的分配装置的框图;
图13示出了本申请一个示例性实施例提供的通信设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“若干个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
边缘计算(edgecomputer,ec):是为应用开发者和服务提供商在网络的边缘侧提供云服务和it(internettechnology,互联网技术)环境服务;目标是在靠近数据输入或用户的地方提供计算、存储和网络带宽。比如,用户手机上使用游戏程序a,则可以分配离用户手机最近的边缘计算服务器来提供游戏服务,以便给用户提供网络延迟最小的游戏服务。
图1示出了本申请一个示例性实施例提供的通信系统100的架构示意图。如图1所示,该通信系统100可以包括:ue、无线接入网(radioaccessnetwork,ran)、核心网(core)和数据网络(datanetwork,dn)构成。其中,ue、ran、core是构成架构的主要成分,逻辑上它们可以分为用户面和控制面两部分,控制面负责移动网络的管理,用户面负责业务数据的传输。在图1中,ng2参考点位于ran控制面和core控制面之间,ng3参考点位于ran用户面和core用户面之间,ng6参考点位于core用户面和数据网络之间。
ue:是移动用户与网络交互的入口,能够提供基本的计算能力、存储能力,向用户显示业务窗口,接受用户操作输入。ue会采用下一代空口技术,与ran建立信号连接、数据连接,从而传输控制信号和业务数据到移动网络。
ran:类似于传统网络里面的基站,部署在靠近ue的位置,为小区覆盖范围的授权用户提供入网功能,并能够根据用户的级别,业务的需求等使用不同质量的传输隧道传输用户数据。ran能够管理自身的资源,合理利用,按需为ue提供接入服务,把控制信号和用户数据在ue和核心网之间转发。
core:负责维护移动网络的签约数据,管理移动网络的网元,为ue提供会话管理、移动性管理、策略管理、安全认证等功能。在ue附着的时候,为ue提供入网认证;在ue有业务请求时,为ue分配网络资源;在ue移动的时候,为ue更新网络资源;在ue空闲的时候,为ue提供快恢复机制;在ue去附着的时候,为ue释放网络资源;在ue有业务数据时,为ue提供数据路由功能,如转发上行数据到dn;或者从dn接收ue下行数据,转发到ran,从而发送给ue。
dn:是为用户提供业务服务的数据网络,一般客户端位于ue,服务端位于数据网络。数据网络可以是私有网络,如局域网,也可以是不受运营商管控的外部网络,如internet,还可以是运营商共同部署的专有网络,如为了配置ip多媒体网络子系统(ipmultimediacorenetworksubsystem,ims)服务。
图2是在图1的基础上确定的详细架构,其中核心网用户面包括用户面功能(userplanefunction,upf);核心网控制面包括认证服务器功能(authenticationserverfunction,ausf)、接入和移动管理(accessandmobilitymanagementfunction,amf)、会话管理(sessionmanagementfunction,smf)、网络切片选择功能(networksliceselectionfunction,nssf)、网络开放功能(networkexposurefunction,nef)、网络功能仓储功能(nfrepositoryfunction,nrf)、统一数据管理(unifieddatamanagement,udm)、策略控制功能(policycontrolfunction,pcf)、应用功能(applicationfunction,af)。这些功能实体的功能如下:
upf:根据smf的路由规则执行用户数据包转发;
ausf:执行ue的安全认证;
amf:ue接入和移动性管理;
smf:ue会话管理;
nssf:为ue选择网络切片;
nef:以api接口的方式向第三方开放网络功能;
nrf:为其他网元提供网络功能实体信息的存储功能和选择功能;
udm:用户签约上下文管理;
pcf:用户策略管理;
af:用户应用管理。
在图2所示架构中,n1接口为ue与amf之间的参考点;n2接口为ran和amf的参考点,用于nas消息的发送等;n3接口为ran和upf之间的参考点,用于传输用户面的数据等;n4接口为smf和upf之间的参考点,用于传输例如n3连接的隧道标识信息、数据缓存指示信息,以及下行数据通知消息等信息;n6接口为upf和dn之间的参考点,用于传输用户面的数据等。ng接口:无线接入网和5g核心网之间的接口。
图3在图2的基础上,示出了smf插入ulcl/bp和l-psa后的用户面架构示意图。图3中的psa2为插入的l-psa,通过本地连接访问dn。在图3所示架构中,ue发送的数据通过ulcl/bp分流,发送至l-psa,例如该l-psa是图3中所示的psa2。n3接口为an和ulcl/bp之间的参考点,用于传输用户面的数据等;n4接口为smf和ulcl/bp之间的参考点,用于传输例如n3连接的隧道标识信息、数据缓存指示信息,以及下行数据通知消息等信息;n6接口为psa和dn之间的参考点,用于传输用户面的数据等。
在未插入l-psa的情况下,ue通过smf获取到第一dns服务器dns1的ip地址,也即easdf的ip地址。但是在插入l-psa后,由于ue的数据会分流至l-psa,因此ue无法再访问到第一dns服务器easdf的ip地址,此时easdf处于不可用状态,需要smf重新分配与l-psa相连的第二dns服务器dns2的ip地址给ue。
以下将“第一dns服务器easdf”简称为“第一dns服务器”或者“easdf”;需要注意的是,本申请中“第一dns服务器easdf”、“第一dns服务器”、“dns1”以及“easdf”指代相同的dns服务器。
以下将“第二dns服务器dns2”简称为“第二dns服务器”或者“dns2”或者“l-dns”;需要注意的是,本申请中“第二dns服务器dns2”、“第二dns服务器”、“dns2”以及“l-dns”指代相同的dns服务器。
但是对于分离式ue,smf在pdu会话建立过程中在nas消息中提供的dns服务器信息被提供给me,而me可能无法将nas提供的ip参数提供给te(例如,5g设备有5g接入通道,并且可以通过无线通信技术(wi-fi)将其5g的ip连接提供和分享给其他非5g的设备(个人电脑/平板电脑/手机)),也就是说,由于te和me是分离的,te不能收到来自me的easdf的ip信息(例如,5g设备不能通过wi-fi向相连的非5g设备提供基于nas的信息)。因此在本申请中,te通常采用基于up的方法来从5g网络获得ip参数配置,即使用dhcpv4(针对互联网协议第4版ipv4)或者dhcpv6(针对互联网协议第6版ipv6)来实现dns服务器的发现与重发现。为了使得在同一个pdu会话中通过nas和通过用户面方法提供给ue的dns服务器的发现与重发现信息是相同的,smf应该在dhcp响应和扩展协议配置选项(extendedprotocolconfigurationoptions,epco)中向ue提供相同的easdf的ip地址。
结合参考图3,在未插入l-psa的情况下,smf通过nas和通过用户面方法提供给ue的dns服务器信息均为dns1的ip地址;在插入l-psa的情况下,smf通过nas和通过用户面方法提供给ue的dns服务器信息均为dns2的ip地址。
示例性的,ue为分离式ue。me与te通过ip或者通用串行总线(universalserialbus,usb)或者wi-fi等连接。me可以通过wi-fi向te提供ip连接,但不能通过wi-fi向te提供基于nas的信息。
ue通过访问easdf发现eas。在smf插入ulcl/bp和l-psa后,ue的数据将被发送至l-psa,由于l-psa无法访问easdf的ip地址,因此ue无法通过easdf来发现eas。虽然smf在插入ulcl/bp后会给ue分配新的dns服务器,但由于smf分配的新的dns服务器的信息通过nas信息发送给me,因此只有me能接收到新的dns服务器的信息,而与me分离但通过ip/usb/wifi等连接的te无法接收到新的dns服务器的信息。因此,te需要通过基于用户面的方法来获取dns服务器的信息。下文对本申请提出的dns服务器的发现方法作出详细的说明。
需要说明的是,图1、图2和图3中的各个网元之间的接口名称只是一个示例,具体实现中接口的名称可能为其他的名称,本申请实施例对此不作具体限定。图1、图2和图3中包括的各个网元(比如smf、af、upf等)的名称也仅是一个示例,对网元本身的功能不构成限定。在5gs以及未来其它的网络中,上述各个网元也可以是其他的名称,本申请实施例对此不作具体限定。例如,在6g网络中,上述各个网元中的部分或全部可以沿用5g中的术语,也可能采用其他名称,等等,在此进行统一说明,以下不再赘述。此外,应理解,上述各个网元之间的所传输的消息(或信令)的名称也仅仅是一个示例,对消息本身的功能不构成任何限定。
图4示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图。本实施例以该方法应用于ue中来举例说明。该方法包括:
步骤220:向l-psa发送dns查询,dns查询携带有easdf的ip地址;
通常情况下,ue通过向psa发送携带有easdf的ip地址的dns查询,psa再按照easdf的ip地址将dns查询发送至easdf,来发现eas。
在smf插入ulcl/bp和l-psa的情况下,ue的数据将分流发送至l-psa。因此,ue向l-psa发送dns查询,并且将easdf的ip地址作为dns服务器的地址携带在dns查询中,向l-psa发送。
步骤240:在确定easdf满足不可用条件的情况下,向smf发送第一dhcp请求,第一dhcp请求用于获取第二dns服务器的ip地址;
在插入ulcl/bp后,ue的数据将分流发送至l-psa,而不是psa。由于l-psa与easdf(例如dns1)并没有建立访问连接,因此ue不能通过l-psa对easdf进行访问。
示例性的,在ue接收到l-psa或者网络路由器发送的easdf不可达消息的情况下,确定easdf满足不可用条件;或者,在ue发送dns查询后的预定时长内未接收到dns响应消息的情况下,重新向l-psa发送dns查询,在dns查询的重复发送满足异常条件的情况下,确定easdf满足不可用条件。
在确定easdf满足不可用条件的情况下,ue需要获取新的dns服务器的ip地址。因此,ue向smf发送第一dhcp请求。
不同的dhcp请求可能具有不同的功能,本实施例中的第一dhcp请求用于获取第二dns服务器的ip地址,第一dhcp请求信息中包含有dns服务器的ip地址的发现请求信息。
在ue通过发起第一dhcp请求获取新的dns服务器的ip地址的过程中,smf指示l-psa在ue和smf之间转发dhcp相关的信息。
示例性的,在确定easdf满足不可用条件的情况下,ue向smf发送第一dhcp请求,该第一dhcp请求先被发送至l-psa,l-psa再将第一dhcp请求发给smf。
步骤260:接收第一dhcp响应,第一dhcp响应携带有smf分配的第二dns服务器的ip地址。
smf在从l-psa接收到ue发送的第一dhcp请求后,smf在与l-psa相连的且可被ue访问的候选dns服务器中确定第二dns服务器,将第二dns服务器分配给ue,第二dns服务器的ip地址由第一dhcp响应携带。ue在接收到第一dhcp响应后,获取第二dns服务器的ip地址。第二dns服务器也称本地dns(l-dns)服务器,比如l-dns服务器是dns2。
示例性的,smf为ue指定l-dns服务器,并将该l-dns服务器的ip地址通过第一dhcp响应发送给l-psa,l-psa再将该第一dhcp响应发送给ue。ue在接收到第一dhcp响应后,获取l-dns服务器的ip地址。
综上所述,ue在确定easdf满足不可用条件的情况下,发起第一dhcp请求,获得smf重分配的第二dns服务器的ip地址,提供了一种基于up的dns服务器的重发现方法,解决了ue(特别是分离式ue)无法通过l-psa访问原有easdf的问题。
ue通过发起第一dhcp请求发现dns服务器的过程可以基于网络控制,即l-psa或网络路由器向ue发送easdf不可达的指示消息;也可以基于ue控制,即ue通过重复发送dns查询来确认easdf不可达。
以下实施例先介绍基于网络控制的dns服务器的发现方法的具体步骤。
图5示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图。本实施例以该方法由ue、smf和l-psa执行来举例说明。该方法包括:
步骤320:ue向l-psa发送dns查询,dns查询携带有easdf的ip地址;
ue在psa1的连接过程中,能够获取到easdf的ip地址。在smf插入ulcl/bp的情况下,ue的数据将发送至l-psa。ue将easdf的ip地址作为dns服务器的地址携带在dns查询中,向l-psa发送dns查询来发现eas。
步骤322:l-psa向ue发送easdf不可达消息;
l-psa在接收到ue发送的dns查询后,按照dns查询中携带的easdf的ip地址进行访问,发现easdf不可达。l-psa向ue发送easdf不可达消息。
示例性的,l-psa根据dns查询信息中携带的easdf的ip地址发现easdf不可达后,向ue发送icmp消息,且该icmp消息用于指示easdf不可达消息。
步骤342:ue在接收到easdf不可达消息的情况下,向smf发送第一dhcp请求,所述第一dhcp请求用于获取第二dns服务器的ip地址;
在确定easdf满足不可用条件的情况下,ue需要获取新的dns服务器的地址。因此,ue向smf发送第一dhcp请求,第一dhcp请求用于获取第二dns服务器的ip地址。
在ue通过发起第一dhcp请求获取第二dns服务器的ip地址的过程中,smf指示l-psa在ue和smf之间转发dhcp信息。
示例性的,ue将第一dhcp请求的数据发送至l-psa,l-psa将第一dhcp请求发给smf。
步骤360:ue接收第一dhcp响应,第一dhcp响应携带有smf分配的第二dns服务器的ip地址。
smf从l-psa接收到ue发送的第一dhcp请求后,smf在与l-psa相连的且可被ue访问的候选dns服务器中确定第二dns服务器,将第二dns服务器分配给ue,第二dns服务器的ip地址由第一dhcp响应携带。ue在接收到第一dhcp响应后,获取第二dns服务器的ip地址。ue使用第二dns服务器的ip地址代替原来的第一dns服务器的ip地址,作为dns查询的dns服务器的ip地址。
示例性的,smf为ue指定第二dns服务器,并将该第二dns服务器的ip地址通过第一dhcp响应发送给l-psa,l-psa再将该第一dhcp响应转发给ue。ue在接收到第一dhcp响应后,获取新分配的l-dns服务器的ip地址。
综上所述,本实施例中ue通过接收easdf不可达消息确定easdf不可用,并通过发起第一dhcp请求重发现dns服务器,提供了一种基于网络控制的dns服务器的发现方法。本方法通过l-psa或网络路由器产生的easdf不可达消息即能确定easdf不可用,对系统的信令交互资源的占用非常小,简单高效。
在基于图5所示的可选实施例中,图6示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图。该方法由ue、smf、ulcl/bp、l-psa和psa来执行。该方法包括:
步骤0:pdu会话建立;
在用户在ue中开始使用业务应用程序的情况下,ue为该业务应用程序建立pdu会话。
示例性的,用户在ue中开始使用支持边缘计算(edgecomputering,ec)的业务应用程序,ue为该业务应用程序建立pdu会话。并且在此过程中ue得到了一个与psa连接的dns服务器的easdf的ip地址。
可选地,在ue中的me与te分离的情况下,te可能是通过dhcp等方式得到前述dns服务器的easdf的ip地址。
步骤1:ulcl/bp插入;
ue发送的dns信息触发了ulcl/bp和l-psa的插入;或者,smf在ue发送dns查询信息之前预先建立ulcl/bp和l-psa。
步骤2:smf向ue发送pdu会话修改指令;
smf向ue发送pdu会话修改指令,pdu会话修改指令中包含有l-dns服务器的ip地址。
步骤3:ue向smf发送pdu会话修改完成;
ue在接收到pdu会话修改指令后,将pdu会话修改指令中携带的l-dns服务器作为pdu会话的dns服务器。ue向smf发送pdu会话修改完成。
步骤4:ue向l-psa发送dns查询;
在me与te分离的情况下,步骤2中smf提供给me的新的dns服务器l-dns的ip地址不能由me传递给te,因此,此时te仍然使用旧的dns服务器,即easdf作为其dns服务器。因此,ue向l-psa发送携带有easdf的ip地址的dns查询。
步骤5:l-psa向ue发送icmp消息(主机不可达);
l-psa根据dns查询中的easdf的ip地址发现easdf不可达,并向ue发送icmp消息,且该icmp消息用于指示easdf主机不可达。
ue在接收到l-psa发送的icmp消息后,可以通过两种方式发起dncp请求。不同的ue在执行时,可能采用不同的方式。以下对两种方式分别进行介绍:
方式一:执行以下步骤6-9,再执行步骤10-11。
步骤6:ue发送dhcp发现请求消息;
ue在接收到l-psa发送的指示easdf不可达的icmp消息后,向smf发送dhcp发现请求消息。由于插入了ulcl/bp且l-psa起到转发的作用,因此dhcp发现请求消息经由ulcl/bp发送至l-psa,再由l-psa转发至smf。
步骤7:smf向ue发送dhcp提供消息;
smf在从l-psa接收到dhcp发现请求消息后,smf为smf本身分配一个ip地址作为dhcp服务器的ip地址携带在dhcp提供消息中,发送给l-psa,再由l-psa转发给ue。由于插入了ulcl/bp,因此l-psa转发的dhcp消息经由ulcl/bp发送至ue。
步骤8:ue向smf发送dhcp请求消息;
ue在接收到dhcp提供消息后,得到smf提供的新的dhcp服务器的ip地址;ue向smf提供的新的dhcp服务器的ip地址发送dhcp请求消息(即图5所示实施例中所述的第一dhcp请求,第一dhcp请求用于获取第二dns服务器的ip地址),请求获得dns服务器的ip地址。
需要注意的是,步骤8与步骤6类似,dhcp提供消息经由ulcl/bp发送至l-psa,再由psa转发至smf。
步骤9:smf向ue发送dhcp确认消息;
smf向ue发送dhcp确认消息(即图5所示实施例中所述的第一dhcp响应),dhcp确认消息中携带smf分配给ue的dns服务器(即图5所示实施例中所述的第二dns服务器)的ip地址。
需要注意的是,步骤9与步骤7类似,dhcp提供消息先由smf发送给l-psa,再经由ulcl/bp发送至ue。
方式二:执行以下步骤6-7,跳转执行步骤10-11。
步骤6:ue发送dhcp发现请求消息;
ue在接收到l-psa发送的指示easdf不可达的icmp消息后,向smf发送dhcp发现请求消息,dhcp发现请求消息同时用于发现dhcp服务器和发现dns服务器。
示例性的,dhcp发现请求消息中包含有图5所示实施例中所述的第一dhcp请求,第一dhcp请求用于获取第二dns服务器的ip地址。
由于插入了ulcl/bp,因此dhcp发现请求消息经由ulcl/bp发送至l-psa,再由l-psa转发至smf。
步骤7:smf向ue发送dhcp提供消息;
smf在接收到dhcp发现请求消息后,smf为smf本身分配一个ip地址作为dhcp服务器的ip地址携带在dhcp提供消息中,同时为ue分配一个与l-psa相连接的dns服务器(即图5所示实施例中所述的第二dns服务器),并将dns服务器的ip地址携带在dhcp提供消息(即图5所示实施例中所述的第一dhcp响应)中,发送给l-psa,再由l-psa转发给ue。由于插入了ulcl/bp,因此l-psa转发的dhcp消息经由ulcl/bp发送至ue。
在方式二中,步骤6与7可以同时完成dhcp服务器的发现与dns服务器的发现的功能。
对于两种发起获取dns服务器ip地址的dhcp请求的方式,以下步骤10-11是相同的,因此合并阐述。
步骤10:ue向l-psa发送dns查询;
方式一中的ue通过接收步骤9中smf发送的dhcp确认消息,获得第二dns服务器的ip地址;或者,方式二中的ue通过接收步骤7中smf发送的dhcp提供消息,获得第二dns服务器的ip地址。ue使用第二dns服务器的ip地址代替第一dns服务器的ip地址,作为dns查询的dns服务器的ip地址。
ue向l-psa发送dns查询,dns查询中携带有前述第二dns服务器的ip地址。
步骤11:l-psa向ue发送dns响应。
l-psa在接收到ue发送的dns查询后,访问dns查询中带有的第二dns服务器的ip地址,并将访问后获得的dns解析结果携带在dns响应中,发送给ue。
综上所述,本实施例详细的展示了由ue、smf、ulcl/bp、l-psa和psa共同执行完成的dns服务器的发现方法。本实施例中ue通过接收l-psa发送的easdf不可达消息确定easdf不可用,并通过向smf发送获取dns服务器ip地址的dhcp请求重发现dns服务器,提供了一种基于网络控制的dns服务器的发现方法。本方法通过l-psa或网络路由器产生的easdf不可达消息即能确定easdf不可用,简单高效;并且对于不同类型的ue可以选择不同方式的获取dns服务器ip地址的dhcp请求过程,灵活度高。
上述两个实施例展现了基于网络控制的dns服务器的发现方法的实施过程,以下实施例将介绍基于ue控制的dns服务器的发现方法的具体步骤。
图7示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图。本实施例以该方法应用于ue中来举例说明。该方法包括:
步骤420:向l-psa发送dns查询,dns查询携带有easdf的ip地址;
在smf插入ulcl/bp的情况下,ue的数据将发送至l-psa。ue将easdf的ip地址作为dns服务器的地址携带在dns查询中,向l-psa发送该dns查询来发现eas。
步骤444:在dns查询发送后的预定时长内未接收到l-psa发送的dns响应消息的情况下,重新向l-psa发送dns查询;
本实施例中,在发现easdf不可达的情况下,l-psa或者网络路由器不产生用于指示easdf不可达消息的icmp消息。
预定时长为根据实际情况预先设置的时间长度值,例如,2秒、3秒,等等。在ue发送dns查询后的预定时长内未接收到dns响应消息的情况下,重新向l-psa发送dns查询。
重复这一过程直至满足下述步骤446中的异常条件。
示例性的,根据网络情况设置预定时长为2秒。在ue发送dns查询后的2秒内未接收到dns响应消息的情况下,重新向l-psa发送dns查询。每间隔2秒,重复这一过程,直至满足下述步骤446中的异常条件。
步骤446:在dns查询的重复发送满足异常条件的情况下,向smf发送第一dhcp请求;
dns查询的重复发送的异常条件包括:dns查询的重复发送次数达到第一阈值;或者,dns查询的重复发送总时长达到第二阈值;再或者,dns查询的重复发送次数达到第一阈值且重复发送总时长达到第二阈值。
在dns查询的重复发送满足异常条件的情况下,ue向smf发送第一dhcp请求,第一dhcp请求用于请求smf为ue分配第二dns服务器。
示例性的,设置第一阈值为5次。ue重复发送dns查询,每两次发送dns查询中间相距了一定时间,例如2秒。在ue重复发送次数达到5次的情况下,ue向smf发送第一dhcp请求。
示例性的,设置第二阈值为10秒。ue重复发送dns查询,每两次发送dns查询中间相距了一定时间,例如3秒。在ue重复发送总时长达到10秒的情况下,ue向smf发送第一dhcp请求。
示例性的,设置第一阈值为5次,第二阈值为10秒。ue重复发送dns查询,每两次发送dns查询中间相距了一定时间,例如2秒。在ue重复发送次数达到5次且重复发送总时长达到10秒的情况下,ue向smf发送第一dhcp请求。
在ue通过发起第一dhcp请求获取第二dns服务器的ip地址的过程中,smf指示l-psa在ue和smf之间转发dhcp信息。
示例性的,ue将第一dhcp请求的数据发送至l-psa,l-psa将第一dhcp请求发给smf。
步骤460:接收第一dhcp响应,第一dhcp响应携带有smf分配的第二dns服务器的ip地址。
smf从l-psa接收到ue发送的第一dhcp请求后,smf在与l-psa相连的且可被ue访问的候选dns服务器中确定第二dns服务器,将第二dns服务器分配给ue,第二dns服务器的ip地址由第一dhcp响应携带。ue在接收到第一dhcp响应后,获取第二dns服务器的ip地址。ue使用第二dns服务器的ip地址代替第一dns服务器的ip地址,作为dns查询的dns服务器的ip地址。
示例性的,smf为ue指定第二dns服务器,并将该第二dns服务器的ip地址通过第一dhcp响应消息发送给l-psa,l-psa再将该第一dhcp响应消息发送给ue。ue在接收到第一dhcp响应后,获取新分配的l-dns服务器的ip地址。
综上所述,本实施例中ue通过重复发送dns查询消息直至满足异常条件来确定easdf不可用,并通过发起第一dhcp请求重发现dns服务器,提供了一种基于ue控制的dns服务器的发现方法。本方法通过重复发送dns查询信息至满足异常条件即能确定easdf不可用,提供了一种简单的dns服务器的发现方法。
在基于图7所示的可选实施例中,图8示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图。该方法由ue、smf、ulcl/bp、l-psa和psa服务器来执行。该方法包括:
步骤0:pdu会话建立;
在用户在ue中开始使用业务应用程序的情况下,ue为该业务应用程序建立pdu会话。
示例性的,用户在ue中开始使用支持边缘计算(edgecomputering,ec)的业务应用程序,ue为该业务应用程序建立pdu会话。并且在此过程中ue得到了一个与psa连接的dns服务器的easdf的ip地址。
可选地,在ue中的me与te分离的情况下,te可能是通过dhcp等方式得到前述dns服务器的easdf的ip地址。
步骤1:ulcl/bp插入;
ue发送的dns信息触发了ulcl/bp和l-psa的插入;或者,smf在ue发送dns查询信息之前预先建立ulcl/bp和l-psa。
步骤2:smf向ue发送pdu会话修改指令;
smf向ue发送pdu会话修改指令,pdu会话修改指令中包含有l-dns服务器的ip地址。
步骤3:ue向smf发送pdu会话修改;
ue在接收到pdu会话修改指令后,将pdu会话修改指令中携带的l-dns服务器作为pdu会话的dns服务器。ue向smf发送pdu会话修改完成。
步骤4:ue向l-psa发送dns查询;
在me与te分离的情况下,步骤2中smf提供给me的新的dns服务器l-dns的ip地址不能传输由me传递给te,因此,此时te仍然使用旧的dns服务器,即easdf作为其dns服务器。因此,ue向l-psa发送携带有easdf的ip地址的dns查询。
在本实施例中,l-psa在发现easdf不可达的情况下,不产生用于指示easdf不可达消息的icmp消息。因此,ue向l-psa重复发送dns查询,直至满足异常条件。
异常条件包括:dns查询的重复发送次数达到第一阈值;或者,dns查询的重复发送总时长达到第二阈值;或者,dns查询的重复发送次数达到第一阈值且重复发送总时长达到第二阈值。
示例性的,步骤4a-步骤4e用于指示ue向l-psa重复发送5次dna查询,满足异常条件。
由于基于ue控制的dns服务器的发现方法中l-psa在发现easdf不可达的情况下,不会产生icmp消息,为了和基于网络控制的dns服务器的发现方法做对比,本实施例中跳过步骤5的标号。
在ue向l-psa重复发送dns查询满足异常条件的情况下,可以通过两种方式发起dncp请求。以下分别进行介绍:
方式一:执行以下步骤6-9,再执行步骤10-11。
步骤6:ue发送dhcp发现请求消息;
ue在接收到l-psa发送的指示easdf不可达的icmp消息后,向smf发送dhcp发现请求消息。由于插入了ulcl/bp且l-psa起到转发的作用,因此dhcp发现请求消息经由ulcl/bp发送至l-psa,再由l-psa转发至smf。
步骤7:smf向ue发送dhcp提供消息;
smf在从l-psa接收到dhcp发现请求消息后,smf为smf本身分配一个ip地址作为dhcp服务器的ip地址携带在dhcp提供消息中,发送给l-psa,再由l-psa转发给ue。由于插入了ulcl/bp,因此l-psa转发的dhcp消息经由ulcl/bp发送至ue。
步骤8:ue向smf发送dhcp请求消息;
ue在接收到dhcp提供消息后,得到smf提供的新的dhcp服务器的ip地址;ue向smf提供的新的dhcp服务器的ip地址发送dhcp请求消息(即图7所示实施例中所述的第一dhcp请求,第一dhcp请求用于获取第二dns服务器的ip地址),请求获得dns服务器的ip地址。
需要注意的是,步骤8与步骤6类似,dhcp提供消息经由ulcl/bp发送至l-psa,再由psa转发至smf。
步骤9:smf向ue发送dhcp确认消息;
smf向ue发送dhcp确认消息(即图7所示实施例中所述的第一dhcp响应),dhcp确认消息中携带smf分配给ue的dns服务器(即图7所示实施例中所述的第二dns服务器)的ip地址。
需要注意的是,步骤9与步骤7类似,dhcp提供消息先由smf发送给l-psa,再经由ulcl/bp发送至ue。
方式二:执行以下步骤6-7,跳转执行步骤10-11。
步骤6:ue发送dhcp发现请求消息;
ue在接收到l-psa发送的指示easdf不可达的icmp消息后,向smf发送dhcp发现请求消息,dhcp发现请求消息同时用于发现dhcp服务器和发现dns服务器。
示例性的,dhcp发现请求消息中包含有图7所示实施例中所述的第一dhcp请求,第一dhcp请求用于获取第二dns服务器的ip地址。
由于插入了ulcl/bp,因此dhcp发现请求消息经由ulcl/bp发送至l-psa,再由l-psa转发至smf。
步骤7:smf向ue发送dhcp提供消息;
smf在接收到dhcp发现请求消息后,smf为smf本身分配一个ip地址作为dhcp服务器的ip地址携带在dhcp提供消息中,同时为ue分配一个与l-psa相连接的dns服务器(即图7所示实施例中所述的第二dns服务器),并将dns服务器的ip地址携带在dhcp提供消息(即图7所示实施例中所述的第一dhcp响应)中,发送给l-psa,再由l-psa转发给ue。由于插入了ulcl/bp,因此l-psa转发的dhcp消息经由ulcl/bp发送至ue。
在方式二中,步骤6与7可以同时完成dhcp服务器的发现与dns服务器的发现的功能。
对于两种发起获取dns服务器ip地址的dhcp请求的方式,以下步骤10-11是相同的,因此合并阐述。
步骤10:ue向l-psa发送dns查询;
方式一中的ue通过接收步骤9中smf发送的dhcp确认消息,获得第二dns服务器的ip地址;或者,方式二中的ue通过接收步骤7中smf发送的dhcp提供消息,获得第二dns服务器的ip地址。ue使用第二dns服务器ip地址代替原来旧的easdf的ip地址,作为dns查询的dns服务器的ip地址。
ue向l-psa发送dns查询,dns查询中携带有前述第二dns服务器的ip地址。
步骤11:l-psa向ue发送dns响应。
l-psa在接收到ue发送的dns查询后,访问dns查询中带有的第二dns服务器的ip地址,并将访问后获得的dns解析结果携带在dns响应中,发送给ue。
综上所述,本实施例详细的展示了由ue、smf、ulcl/bp、l-psa和psa共同执行完成的dns服务器的发现方法。本实施例中ue通过接收l-psa发送的easdf不可达消息确定easdf不可用,并通过向smf发送获取dns服务器ip地址的dhcp请求重发现dns服务器,提供了一种基于网络控制的dns服务器的发现方法。本方法通过重复发送dns查询信息至满足异常条件即能确定easdf不可用,非常简单;并且对于不同类型的ue可以选择不同方式的获取dns服务器ip地址的dhcp请求过程,灵活度高。
以上实施例中的dns服务器的发现方法分别基于网络控制和ue控制。考虑到icmp传输过程的不可靠性,将基于网络控制和基于ue控制的两种方法融合起来。以下实施例展示基于复合方式的dns服务器的发现方法。
图9示出了本申请一个示例性实施例提供的dns服务器的发现方法的流程图。本实施例以该方法由ue和l-psa执行来举例说明。该方法包括:
步骤520:向l-psa发送dns查询,dns查询携带有easdf的ip地址;
在smf插入ulcl/bp的情况下,ue的数据将发送至l-psa。ue将easdf的ip地址作为dns服务器的地址携带在dns查询中,向l-psa发送该dns查询来发现eas。
步骤522:向ue发送easdf不可达消息;
l-psa按照接收到的dns查询消息中携带的easdf的ip地址对easdf进行访问,发现easdf不可达。l-psa向ue发送用于指示easdf不可达消息的icmp消息。
由于icmp报文是封装在ip数据报中传输的,因此icmp消息传输不能保证传输可靠性。
示例性的,步骤522中l-psa根据dns查询信息中携带的easdf的ip地址发现easdf不可达后,向ue发送icmp消息,且该icmp消息用于指示easdf不可达消息。icmp消息在传输过程中丢失,ue无法接收到l-psa发送的icmp消息。
步骤544:在dns查询发送后的预定时长内未接收到l-psa发送的dns响应消息的情况下,重新向l-psa发送dns查询;
预定时长为根据实际情况预先设置的时间长度值,例如,2秒、3秒,等等。在ue发送dns查询后的预定时长内未接收到l-psa发送的dns响应消息的情况下,重新向l-psa发送dns查询。
示例性的,ue接收dns响应消息的最大预定时长为2秒,在ue发送dns查询后的2秒内未接收到l-psa发送的dns响应消息的情况下,ue向l-psa重新发送一次dns查询。
步骤548:向ue发送easdf不可达消息;
l-psa按照接收到的dns查询消息中携带的easdf的ip地址对easdf进行访问,发现easdf不可达。l-psa向ue再次发送用于指示easdf不可达消息的icmp消息。
步骤550:在接收easdf不可达消息的情况下,ue向smf发送第一dhcp请求;
ue在接收到l-psa发送的easdf不可达消息的情况下,确定easdf不可达,不再向l-psa重复发送dns查询。
为了获得新的dns服务器,ue向smf发送第一dhcp请求,第一dhcp请求用于获取第二dns服务器的ip地址。
步骤560:接收第一dhcp响应,第一dhcp响应携带有smf分配的第二dns服务器的ip地址。
smf在接收到ue发送的第一dhcp请求后,smf在与l-psa相连的且可被ue访问的候选dns服务器中确定第二dns服务器,第二dns服务器的ip地址由第一dhcp响应携带发送给ue。ue在接收到第一dhcp响应后,获取第二dns服务器的ip地址。ue使用第二dns服务器的ip地址代替第一dns服务器的ip地址,作为dns查询的dns服务器的ip地址。
示例性的,smf为ue指定dns服务器,并将该dns服务器的ip地址通过dhcp响应消息发送给l-psa,l-psa再将该dhcp响应消息发送给ue。ue在接收到dhcp响应后,获取新的dns服务器的ip地址。ue使用第二dns服务器ip地址代替第一dns服务器的ip地址,作为dns查询的dns服务器ip地址
图10示出了本申请一个示例性实施例提供的dns服务器的分配方法的流程图。本实施例以该方法由smf执行来举例说明。该方法包括:
步骤1020:接收第一动态主机配置协议dhcp请求;
第一dhcp请求为ue在确定easdf满足不可用条件的情况下通过l-psa向smf转发的,所述第一dhcp请求用于获取第二dns服务器的ip地址。
示例性的,在ue接收到l-psa或者网络路由器发送的easdf不可达消息的情况下,确定easdf满足不可用条件,ue通过l-psa向smf转发用于获取dns服务器的ip地址的第一dhcp请求。smf接收第一dhcp请求,在下述步骤中为发起第一dhcp请求的ue分配第二dns服务器。
示例性的,在ue发送dns查询后的预定时长内未接收到dns响应消息的情况下,重新向l-psa发送dns查询,在dns查询的重复发送满足异常条件的情况下,确定easdf满足不可用条件。ue通过l-psa向smf转发用于获取第二dns服务器的ip地址的第一dhcp请求。smf接收第一dhcp请求,在下述步骤中为发起第一dhcp请求的ue分配第二dns服务器。
步骤1040:响应于接收到第一dhcp请求,确定与l-psa相连的至少一个候选dns服务器;
smf在接收到第一dhcp请求后,确定与l-psa相连的且ue可以访问的至少一个候选dns服务器。
通常情况下,ue可以访问与l-psa相连的任一dns服务器;可能存在个别情况下,ue无法访问与l-psa相连的dns服务器,本申请对此不加以限定。本申请以ue可以访问与l-psa相连的任一dns服务器为例。
smf获取与l-psa相连的至少一个dns服务器的信息,确定为候选dns服务器。
步骤1060:在至少一个候选dns服务器中确定第二dns服务器;
第二dns服务器为最终分配给ue的dns服务器。
在至少一个候选dns服务器中确定第二dns服务器可以采用多种方式,例如,采用随机方式;或者,采用轮询方式。
示例性的,smf在至少一个候选dns服务器中采用随机方式确定第二dns服务器。smf确定与l-psa相连的m个dns服务器,从m个dns服务器中随机选择一个dns服务器,确定为第二dns服务器,分配给ue,其中,m为大于或者等于1的整数。
示例性的,smf在至少一个候选dns服务器中采用轮询方式确定第二dns服务器。smf确定与l-psa相连的m个dns服务器,且smf收到n个ue发起的第一dhcp请求。对于n个ue中的第i个ue发起的第一dhcp请求,smf选择m个dns服务器中的第imodm个dns服务器作为第二dns服务器,分配给第i个ue,其中,m、n皆为大于或者等于1的整数,i为小于或者等于n的正整数。
在一个可能的设计中,smf在收到第一dhcp请求之前,已执行在至少一个候选dns服务器中确定第二dns服务器的步骤,并通过nas消息发送给ue。在smf收到第一dhcp请求之后,采用与历史步骤一致的方式在至少一个候选dns服务器中确定第二dns服务器,并通过第一dhcp响应将第二dns服务器的ip地址发送给ue。smf采用相同的执行步骤获得第二dns服务器,以保证ue通过nas方式和基于up方式获得的第二dns服务器是相同的。
步骤1080:向ue发送第一dhcp响应,第一dhcp响应携带有第二dns服务器的ip地址。
smf在确定分配给ue的第二dns服务器后,向ue发送第一dhcp响应,第一dhcp响应中携带有第二dns服务器的ip地址。
示例性的,smf确定第二dns服务器,将第二dns服务器的ip地址通过dhcp响应消息发送给l-psa,l-psa再将该dhcp响应消息发送给ue。ue接收到dhcp后,获取l-dns服务器的ip地址。
图11示出了本申请一个示例性实施例提供的dns服务器的发现装置的框图。该装置可以应用于ue中,或者实现成为ue的一部分,所述装置包括:
发送模块920,用于向l-psa发送dns查询,所述dns查询携带有easdf的ip地址;以及,用于在确定所述easdf满足不可用条件的情况下,向smf发送第一dhcp请求,所述第一dhcp请求用于获取第二dns服务器的ip地址;
接收模块940,用于接收第一dhcp响应,所述第一dhcp响应携带有所述smf分配的第二dns服务器的ip地址。
在一个可能的设计中,所述发送模块920,还用于在接收到所述l-psa发送的所述easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
在一个可能的设计中,所述发送模块920,还用于在接收到所述l-psa发送的icmp消息且所述icmp消息用于指示所述easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
在一个可能的设计中,所述发送模块920,还用于在所述dns查询发送后的预定时长内未接收到所述l-psa发送的dns响应消息的情况下,重新向所述l-psa发送所述dns查询;在所述dns查询的重复发送满足异常条件的情况下,向所述smf发送所述第一dhcp请求。
在一个可能的设计中,所述发送模块920,还用于在所述dns查询的重复发送次数达到第一阈值的情况下,向所述smf发送所述第一dhcp请求;或,在所述dns查询的重复发送总时长达到第二阈值的情况下,向所述smf发送所述第一dhcp请求;或,在所述dns查询的重复发送次数达到第一阈值且重复发送总时长达到第二阈值的情况下,向所述smf发送所述第一dhcp请求。
在一个可能的设计中,所述发送模块920,还用于在所述dns查询发送后的预定时长内未接收到所述l-psa发送的dns响应消息的情况下,重新向所述l-psa发送所述dns查询;在接收到所述l-psa发送的所述easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
在一个可能的设计中,所述发送模块920,还用于在接收到所述l-psa发送的icmp消息且所述icmp消息用于指示所述easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
图12示出了本申请一个示例性实施例提供的dns服务器的分配装置的框图。该装置可以应用于smf中,或者实现成为smf的一部分,所述装置包括:
接收模块1120,用于接收第一动态主机配置协议dhcp请求,所述第一dhcp请求为用户设备ue在确定边缘应用服务器发现功能easdf满足不可用条件的情况下通过本地协议数据单元会话锚点l-psa向smf转发的,所述第一dhcp请求用于获取dns服务器的网际互联协议ip地址;
确定模块1140,用于响应于接收到所述第一dhcp请求,确定与所述l-psa相连的至少一个候选dns服务器;以及,在所述至少一个候选dns服务器中确定第二dns服务器,所述第二dns服务器为分配给所述ue的dns服务器;
发送模块1160,用于向所述ue发送第一dhcp响应,所述第一dhcp响应携带有所述第二dns服务器的ip地址。
在一个可能的设计中,所述确定模块1140,还用于在所述至少一个候选dns服务器中采用随机方式确定第二dns服务器。
在一个可能的设计中,所述确定模块1140,还用于在所述至少一个候选dns服务器中采用轮询方式确定第二dns服务器。
图13示出了本申请一个实施例提供的通信设备的结构示意图,例如,该通信设备可以用于执行上述dns服务器的发现方法或者dns服务器的分配方法。具体来讲:该通信设备1300可以包括:处理器1301、接收器1302、发射器1303、存储器1304和总线1305。
处理器1301包括一个或者一个以上处理核心,处理器1301通过运行软件程序以及模块,从而执行各种功能应用以及信息处理。
接收器1302和发射器1303可以实现为一个收发器1306,该收发器1306可以是一块通信芯片。
存储器1304通过总线1305与处理器1301相连。
存储器1304可用于存储计算机程序,处理器1301用于执行该计算机程序,以实现上述方法实施例中的接入网实体或核心网实体执行的各个步骤。
其中,发射器1303用于执行上述各个实施例中与发送相关的步骤;接收器1302用于执行上述各个实施例中与接收相关的步骤;处理器1301用于执行上述各个实施例中除发送和接收步骤之外的其它步骤。
此外,存储器1304可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,易失性或非易失性存储设备包括但不限于:ram(random-accessmemory,随机存储器)和rom(read-onlymemory,只读存储器)、eprom(erasableprogrammableread-onlymemory,可擦写可编程只读存储器)、eeprom(electricallyerasableprogrammableread-onlymemory,电可擦写可编程只读存储器)、闪存或其他固态存储其技术,cd-rom(compactdiscread-onlymemory,只读光盘)、dvd(digitalvideodisc,高密度数字视频光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。
在示例性实施例中,还提供了一种终端,所述终端包括:处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如上所述的dns服务器的发现方法或者dns服务器的分配方法。
本申请还提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述方法实施例提供的dns服务器的发现方法或者dns服务器的分配方法。
可选地,本申请还提供了一种计算机程序产品,所述计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的dns服务器的发现方法或者dns服务器的分配方法。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
1.一种域名系统dns服务器的发现方法,其特征在于,所述方法包括:
向本地协议数据单元会话锚点l-psa发送dns查询,所述dns查询携带有第一dns服务器边缘应用服务器发现功能easdf的网际互联协议ip地址;
在确定所述第一dns服务器easdf满足不可用条件的情况下,向会话管理功能smf发送第一动态主机配置协议dhcp请求,所述第一dhcp请求用于获取第二dns服务器的ip地址;
接收第一dhcp响应,所述第一dhcp响应携带有所述smf分配的第二dns服务器的ip地址。
2.根据权利要求1所述的方法,其特征在于,所述在确定所述第一dns服务器easdf满足不可用条件的情况下,向smf发送第一dhcp请求,包括:
在接收到所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
3.根据权利要求2所述的方法,其特征在于,所述在接收到所述第一dns服务器easdf不可达消息的情况下,向smf发送第一dhcp请求,包括:
在接收到icmp消息且所述icmp消息用于指示所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
4.根据权利要求1所述的方法,其特征在于,所述在确定所述第一dns服务器easdf满足不可用条件的情况下,向smf发送第一dhcp请求,包括:
在所述dns查询发送后的预定时长内未接收到dns响应的情况下,重新向所述l-psa发送所述dns查询;
在所述dns查询的重复发送满足异常条件的情况下,向所述smf发送所述第一dhcp请求。
5.根据权利要求4所述的方法,其特征在于,所述在所述dns查询的重复发送满足异常条件的情况下,向所述smf发送所述第一dhcp请求,包括:
在所述dns查询的重复发送次数达到第一阈值的情况下,向所述smf发送所述第一dhcp请求;
或,
在所述dns查询的重复发送总时长达到第二阈值的情况下,向所述smf发送所述第一dhcp请求;
或,
在所述dns查询的重复发送次数达到第一阈值且重复发送总时长达到第二阈值的情况下,向所述smf发送所述第一dhcp请求。
6.根据权利要求1所述的方法,其特征在于,所述在确定所述第一dns服务器easdf满足不可用条件的情况下,向smf发送第一dhcp请求,包括:
在所述dns查询发送后的预定时长内未接收到dns响应消息的情况下,重新向所述l-psa发送所述dns查询;
在接收到所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
7.根据权利要求6所述的方法,其特征在于,所述在接收到所述第一dns服务器easdf不可达消息的情况下,向smf发送第一dhcp请求,包括:
在接收到icmp消息且所述icmp消息用于指示所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
8.一种域名系统dns服务器的分配方法,应用于会话管理功能smf,其特征在于,所述方法包括:
接收第一动态主机配置协议dhcp请求,所述第一dhcp请求为用户设备ue在确定第一dns服务器边缘应用服务器发现功能easdf满足不可用条件的情况下通过本地协议数据单元会话锚点l-psa向所述smf转发的,所述第一dhcp请求用于获取第二dns服务器的网际互联协议ip地址;
响应于接收到所述第一dhcp请求,确定与所述l-psa相连的至少一个候选dns服务器;
在所述至少一个候选dns服务器中确定第二dns服务器,所述第二dns服务器为分配给所述ue的dns服务器;
向所述ue发送第一dhcp响应,所述第一dhcp响应携带有所述第二dns服务器的ip地址。
9.根据权利要求8所述的方法,其特征在于,所述在所述至少一个候选dns服务器中确定第二dns服务器,包括:
在所述至少一个候选dns服务器中采用随机方式确定第二dns服务器。
10.根据权利要求8所述的方法,其特征在于,所述在所述至少一个候选dns服务器中确定第二dns服务器,包括:
在所述至少一个候选dns服务器中采用轮询方式确定第二dns服务器。
11.一种域名系统dns服务器的发现装置,其特征在于,所述装置包括:
发送模块,用于向本地协议数据单元会话锚点l-psa发送dns查询,所述dns查询携带有第一dns服务器边缘应用服务器发现功能easdf的网际互联协议ip地址;
所述发送模块,还用于在确定所述第一dns服务器easdf满足不可用条件的情况下,向会话管理功能smf发送第一动态主机配置协议dhcp请求,所述第一dhcp请求用于获取第二dns服务器的ip地址;
接收模块,用于接收第一dhcp响应,所述第一dhcp响应携带有所述smf分配的第二dns服务器的ip地址。
12.根据权利要求11所述的装置,其特征在于,
所述发送模块,还用于在接收到所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
13.根据权利要求12所述的装置,其特征在于,
所述发送模块,还用于在接收到icmp消息且所述icmp消息用于指示所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
14.根据权利要求11所述的装置,其特征在于,
所述发送模块,还用于在所述dns查询发送后的预定时长内未接收到dns响应消息的情况下,重新向所述l-psa发送所述dns查询;
所述发送模块,还用于在所述dns查询的重复发送满足异常条件的情况下,向所述smf发送所述第一dhcp请求。
15.根据权利要求14所述的装置,其特征在于,
所述发送模块,还用于在所述dns查询的重复发送次数达到第一阈值的情况下,向所述smf发送所述第一dhcp请求;
或,
所述发送模块,还用于在所述dns查询的重复发送总时长达到第二阈值的情况下,向所述smf发送所述第一dhcp请求;
或,
所述发送模块,还用于在所述dns查询的重复发送次数达到第一阈值且重复发送总时长达到第二阈值的情况下,向所述smf发送所述第一dhcp请求。
16.根据权利要求11所述的装置,其特征在于,
所述发送模块,还用于在所述dns查询发送后的预定时长内未接收到dns响应消息的情况下,重新向所述l-psa发送所述dns查询;
所述发送模块,还用于在接收到所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
17.根据权利要求16所述的装置,其特征在于,
所述发送模块,还用于在接收到icmp消息且所述icmp消息用于指示所述第一dns服务器easdf不可达消息的情况下,向所述smf发送所述第一dhcp请求。
18.一种域名系统dns服务器的分配装置,其特征在于,所述装置包括:
接收模块,用于接收第一动态主机配置协议dhcp请求,所述第一dhcp请求为用户设备ue在确定边缘应用服务器发现功能第一dns服务器easdf满足不可用条件的情况下通过本地协议数据单元会话锚点l-psa向所述装置转发的,所述第一dhcp请求用于获取第二dns服务器的网际互联协议ip地址;
确定模块,用于响应于接收到所述第一dhcp请求,确定与所述l-psa相连的至少一个候选dns服务器;
确定模块,还用于在所述至少一个候选dns服务器中确定第二dns服务器,所述第二dns服务器为分配给所述ue的dns服务器;
发送模块,用于向所述ue发送第一dhcp响应,所述第一dhcp响应携带有所述第二dns服务器的ip地址。
19.根据权利要求18所述的装置,其特征在于,
所述确定模块,用于在所述至少一个候选dns服务器中采用随机方式确定第二dns服务器。
20.根据权利要求18所述的装置,其特征在于,
所述确定模块,用于在所述至少一个候选dns服务器中采用轮询方式确定第二dns服务器。
21.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至7任一所述的域名系统dns服务器的发现方法或者如权利要求8至10任一所述的dns服务器的分配方法。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至7任一所述的域名系统dns服务器的发现方法或者如权利要求8至10任一所述的dns服务器的分配方法。
技术总结