CN115801675A - 一种报文处理方法及相关装置 - Google Patents
一种报文处理方法及相关装置 Download PDFInfo
- Publication number
- CN115801675A CN115801675A CN202111057700.0A CN202111057700A CN115801675A CN 115801675 A CN115801675 A CN 115801675A CN 202111057700 A CN202111057700 A CN 202111057700A CN 115801675 A CN115801675 A CN 115801675A
- Authority
- CN
- China
- Prior art keywords
- target
- destination
- information
- identification information
- client
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 36
- 238000000034 method Methods 0.000 claims abstract description 122
- 230000008569 process Effects 0.000 claims abstract description 45
- 230000004044 response Effects 0.000 claims description 162
- 238000012545 processing Methods 0.000 claims description 108
- 238000004364 calculation method Methods 0.000 claims description 53
- 238000013507 mapping Methods 0.000 claims description 33
- 238000003860 storage Methods 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 239000010410 layer Substances 0.000 description 27
- 238000010586 diagram Methods 0.000 description 24
- 238000004891 communication Methods 0.000 description 13
- 238000012423 maintenance Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 11
- 101000904787 Homo sapiens Serine/threonine-protein kinase ATR Proteins 0.000 description 6
- 102100023921 Serine/threonine-protein kinase ATR Human genes 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 239000012792 core layer Substances 0.000 description 4
- MGKJFRPUFVNFPI-GPHNJDIKSA-N dcid Chemical compound C1=CC=C2[C@@]3(OC(=O)C)[C@]4(OC(C)=O)C5=CC=CC=C5C(=O)[C@@H]4[C@H]3C(=O)C2=C1 MGKJFRPUFVNFPI-GPHNJDIKSA-N 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 101150016833 mec-3 gene Proteins 0.000 description 3
- 101100355601 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RAD53 gene Proteins 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- GEKLDGQKEZAPFZ-UHFFFAOYSA-N 2-(ethylamino)-1-(3-methylphenyl)propan-1-one Chemical compound CCNC(C)C(=O)C1=CC=CC(C)=C1 GEKLDGQKEZAPFZ-UHFFFAOYSA-N 0.000 description 1
- 241000465502 Tobacco latent virus Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229920003087 methylethyl cellulose Polymers 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种报文处理方法及相关装置,其特征在于,应用于网络设备,所述方法包括:接收客户端发送的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,以触发所述目标目的地处理所述第一报文。采用本发明实施例提供的报文处理方法,能够实现客户端与服务端之间的会话保持,以确保客户端业务的连续性,从而提升用户体验。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种报文处理方法及相关装置。
背景技术
目前,5G的快速发展带来了数据传输带宽、时延,应用和服务性能等方面的新需求,不同于传统云计算把计算能力、存储能力和网络管理集中化处理,边缘计算中的多接入边缘计算(Multi-access Edge Computing,MEC)站点为网络边缘提供IT服务环境和云计算能力,通过在网络边缘执行部分缓存与计算来降低传输时延,最终可以实现毫秒级应用。因此,在边缘计算场景下,当用户发起新请求时,网络设备可将请求数据包调往MEC站点进行处理。同时,网络设备还需要识别用户与MEC站点之间交互过程的关联性,保证同一用户相关联的请求会被分配到同一MEC站点进行响应,这一机制通常被称为会话保持。
一种常见的会话保持方案是,由网络设备生成一个会话表,用于记录用户信息以及对应的路由信息(即达到目的地站点的信息),如在会话表中记录下每个用户的五元组(源IP、目的IP、协议号、源端口、目的端口)和SRv6隧道或是五元组和下一跳地址等信息。当用户再次发起请求时,网络设备可根据用户信息在会话表中查询所对应的路由信息,以确定目的地站点,从而将请求数据包发送至该目的地站点进行响应,进而实现会话保持。
然而,在实际应用过程中发现,随着接入用户数量的增加,会话表所占用的存储资源也越多。同时,在用户切换网络时,还会出现流量中断、应用请求失败等问题。因此,如何提供一种能够实现客户端与服务端之间的会话保持,以确保客户端业务的连续性的报文处理方法是亟待解决的问题。
发明内容
本发明实施例所要解决的技术问题在于,提供一种报文处理方法及相关装置,能确保客户端业务的连续性,进而提升用户体验。
第一方面,本发明实施案例提供了一种报文处理方法,其特征在于,应用于网络设备,所述方法包括:接收客户端发送的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,以触发所述目标目的地处理所述第一报文。
在基于边缘计算的会话保持场景中,当客户端与目标目的地(如目标MEC站点)之间建立数据流后,网络设备(如入口路由器)需要将客户端发起的第一报文(如请求数据包)转发至目标MEC站点进行处理,以确保客户端业务的连续性。其中,基于边缘计算是指多个候选目的地(如多个候选MEC站点)可以共享同一个服务IP地址为客户端提供服务。但是,由于请求数据包中的流量标识是指向目标MEC站点的服务IP地址,而服务IP地址又对应着多个MEC站点,因此,入口路由器无法仅仅只根据流量标识将请求数据包转发至某个具体的目标MEC站点进行处理。在现有技术中,是采用记录会话表的方式来实现会话保持,即在会话表中记录下客户端信息以及目标MEC站点的目标路由信息的映射关系,当入口路由器接收到客户端发送的请求数据包时,根据请求数据包中的客户端信息查找会话表中该客户端信息对应的目标路由信息,进而将请求数据包转发至该目标MEC站点,以使得目标MEC站点处理请求数据包,从而确保了客户端业务的连续性。然而,在实际应用过程中发现,随着用户接入数量的增多,会话表中记录的客户端信息及对应的目标路由信息越多,占用入口路由器的存储资源越多,且入口路由器维护会话表的难度越大。另外,当客户端与目标MEC站点使用QUIC协议建立数据流之后,若客户端发生网络切换,则会导致客户端信息发生变化(如客户端的源IP地址发生变化),但是由于客户端与目标MEC站点之间会协商出多个可用的流量连接标识(QUIC Connection ID),当客户端的源IP地址变化后,能够使用备用的QUICConnection ID,以使得客户端与目标MEC站点之间依然能够相互识别,因此,此时客户端与目标MEC站点之间并不会建立新数据流,而是使用原来已建立数据流进行数据交换。进而,当入口路由器接收到携带新的源IP地址(即更新后的客户端信息)的请求数据包后,无法根据新的源IP地址在会话表中查找到对应的目标路由信息,从而导致客户端业务中断等问题。
而在本发明实施例中,由网络向客户端分配一个目标标识信息(如目的地选择信息),以使得客户端发起的第一报文(如请求数据包)中携带上该目的地选择信息,进而网络设备(如入口路由器)基于该信息将客户端的请求数据包调度转发至目标目的地(如目标MEC站点)进行响应。具体地,当客户端与目标目的地之间建立数据流之后,客户端记录下了由网络(如网络中的入口路由器)分配的目的地选择信息(如目标目的地的标识等信息),从而客户端发起的请求数据包中会携带上该目的地选择信息。进一步,当入口路由器接收到该客户端发起的请求数据包后,不再根据客户端信息查找会话表来确定目标目的地,而是识别该请求数据包中携带的目的地选择信息,进而将该请求数据包发送至目标目的地,以使目标目的地处理该请求数据包,确保了客户端业务的连续性。即在本发明实施例提供的方法中,由于无需要记录接入客户端的信息,因此避免了占用入口路由器过多存储资源的问题。同时,由于目的地选择信息是由网络分配的,如目的地选择信息可由入口路由器分配,因此在客户端信息发生变化时,该信息也不会发生改变,从而入口路由器根据该目的地选择信息来确定目标目的地,避免了客户端信息发生变化导致业务中断的问题,从而确保了客户端业务的连续性,提升了用户体验。另外,目的地选择信息仅在网络内部有效,也可以理解为该目的地选择信息仅在入口路由器本地有效,即入口路由器根据该信息来确定目标目的地,但客户端并不能直接根据该信息来确定目标目的地的目标路由信息,避免了直接将目标路由信息作为标识暴露给客户端导致网络存在安全隐患的问题,从而提升了网络的安全性。
在一种可能的实现方式中,所述根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,包括:基于目的地信息表和所述目标标识信息,确定所述目标目的地对应的目标路由信息;所述目的地信息表中包括所述N个候选目的地的标识信息与对应的路由信息的映射关系;基于所述目标路由信息将所述第一报文转发至所述目标目的地。
在本发明实施例中,当网络设备(如入口路由器)接收到该客户端发起的第一报文(如请求数据包)后,不再根据客户端信息查找会话表来确定目标目的地的目标路由信息,而是识别该请求数据包中携带的目标标识信息(如目的地选择信息),并可通过查询目的地信息表来确定该目的地选择信息所对应的目标路由信息,进而基于该目标路由信息将请求数据包发送至目标目的地,以使目标目的地处理该请求数据包,确保了客户端业务的连续性。即在本发明实施例提供的方法中,由于目的地信息表中只需要记录多个候选目的地中每个候选目的地的标识信息与对应的路由信息的映射关系,而不需要记录接入客户端的信息,因此,目的地信息表中记录的信息并不会随着接入客户端数量的增加而增加,从而避免了占用入口路由器过多存储资源的问题。
在一种可能的实现方式中,其特征在于,所述接收客户端发送的第一报文之前,所述方法还包括:接收所述客户端发送的第二报文;所述第二报文中包括流量标识;所述流量标识包括以下信息中的一种或多种:所述第二报文的三元组、五元组、流标签或业务标识;根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地。
在本发明实施例中,客户端发起首个数据包(可对应上述第二报文)以建立与服务端之间的数据流,其中,首个数据包中的流量标识信息(可包括服务IP地址)指向服务端。但在边缘计算场景中,由于多个候选目的地可以共享同一个服务IP地址为客户端提供服务,因此网络设备(如入口路由器)根据首个数据包中的流量标识信息可以确定该信息所对应的多个候选目的地,然后入口路由器从多个候选目的地中选择一个作为目标目的地,以使客户端能与该目标目的地建立数据流。
在一种可能的实现方式中,其特征在于,所述方法还包括:基于选择的所述目标目的地获得所述目标标识信息,并将所述目标标识信息添加到所述第二报文中;将携带所述目标标识信息的所述第二报文发送至所述目标目的地,以触发所述目标目的地生成携带所述目标标识信息的响应报文,所述响应报文为所述第二报文的响应报文。
在本发明实施例中,当网络设备(如入口路由器)确定了目标目的地后,入口路由器可确定目标标识信息(如目的地选择信息),然后将该目的地选择信息写入首个数据包(可对应上述第二报文),以便于目标目的地响应首个数据包后生成的响应数据包(可对应上述响应报文)中携带该目的地选择信息,进一步,可通过该响应数据包将目的地选择信息告知客户端。通过本发明实施例提供的方法,目的地选择信息由入口路由器分配,因此入口路由器接收到携带目的地选择信息的请求数据包后,能够根据该目的地选择信息来识别目标目的地,进而确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,其特征在于,所述根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地,包括:通过查找所述N个候选目的地对应的算力路由表,得到所述N个候选目的地中每个候选目的地的算力信息;根据所述每个候选目的地的算力信息,从所述N个候选目的地中选择一个作为所述目标目的地;所述算力信息包括对应的候选目的地的当前负载状态信息、网络质量信息中的一种或多种。
在本发明实施例中,由于算力路由表中记录了各候选目的地的当前负载状态、网络质量等信息,因此当网络设备(如入口路由器)确定了多个候选目的地后,通过查找算力路由表能够得到各候选目的地的算力信息,然后入口路由器基于该算力信息选择目标目的地,即由入口路由器进行负载分担,实现了根据各候选目的地的算力信息调度流量,避免了根据就近路由选择目标目的地导致多个候选目的地负载不均衡的问题,从而实现对客户端访问的优化。
在一种可能的实现方式中,其特征在于,所述方法还包括:分别接收所述每个候选目的地发送的算力路由;所述算力路由包括对应的候选目的地的所述算力信息、所述路由信息;生成所述算力路由表;所述算力路由表中包括所述每个候选目的地的算力信息和所述路由信息。
在本发明实施例中,网络设备(如入口路由器)可以分别接收各候选目的地发布的算力路由(即扩展路由,在传统路由中增加候选目的地的算力信息)并生成算力路由表。其中,算力路由中可包括但不限于候选目的地的算力信息和路由信息。由于各候选目的地的当前负载状态信息是由候选目的地生成的,因此该信息更能体现当前候选目的地的算力状态,进而入口路由器根据该信息选择的目标目的地,能够使得各候选目的地负载均衡。
在一种可能的实现方式中,其特征在于,当所述算力信息中还包括对应的候选目的地的标识信息时,所述方法还包括:根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
在本发明实施例中,当各候选目的地在发布算力路由时,还可以携带上对应的标识信息。进一步,网络设备(如入口路由器)可以根据每个候选目的地的标识信息及对应的路由信息生成目的地信息表,即该目的地信息表中可记录多个候选目的地的标识信息及对应的路由信息的映射关系。当入口路由器接收到客户端的首个数据包时,可基于目标目的地的标识信息确定目的地选择信息,进而将该目的地选择信息写入至首个数据包;当入口路由器接收到客户端的请求数据包时,可通过查找目的地信息表确定目的地选择信息所对应的目标路由信息,确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,其特征在于,所述方法还包括:根据预设算法生成所述每个候选目的地的标识信息,并根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
由于候选目的地的标识信息仅在网络设备(如入口路由器)本地有效,因此只要入口路由器能够识别该信息即可。在本发明实施例中,候选目的地的标识信息可以由入口路由器根据预设算法生成,并在目的地信息表中可记录下多个候选目的地的标识信息及对应的路由信息的映射关系。当入口路由器接收到客户端的首个数据包时,可基于目标目的地的标识信息确定目的地选择信息,进而将该目的地选择信息写入至首个数据包;当入口路由器接收到客户端的请求数据包时,可通过查找目的地信息表确定目的地选择信息所对应的目标路由信息,确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,其特征在于,所述方法还包括:建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标路由信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标路由信息;基于所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
客户端与服务端在建立数据流的初期,即客户端还没有接收到携带目的地选择信息的响应数据包时,客户端可能会向服务端发送多个数据包(又称为伪首报),由于这些数据包中未携带目的地选择信息,因此入口路由器接收到这些数据包后,可能将这些数据包调度到不同的目的地进行响应,导致客户端业务中断等问题。在本发明实施例中,入口路由器通过建立临时会话表,记录下客户端的流量标识与目标路由信息的映射关系,当接收到伪首报时,通过查找临时会话表确定伪首报中的流量识标识所对应的目标路由信息,并根据所述目标路由信息将所述伪首报发送至所述目标目的地,使得同一个客户端发起的数据包全部调度转发至同一个目的地进行响应,确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,所述方法还包括:建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标目的地的所述目标标识信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标标识信息;基于所述目标标识信息确定所述目标路由信息,并根据所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
客户端与服务端在建立数据流的初期,即客户端还没有接收到携带目的地选择信息的响应数据包时,客户端可能会向服务端发送多个数据包(又称为伪首报),由于这些数据包中未携带目的地选择信息,因此入口路由器接收到这些数据包后,可能将这些数据包调度到不同的目的地进行响应,导致客户端业务中断等问题。在本发明实施例中,入口路由器通过建立临时会话表,记录下客户端的流量标识与目标标识信息(如目的地选择信息)的映射关系,当接收到伪首报时,通过查找临时会话表确定伪首报中的流量标识所对应的目的地选择信息,然后根据目的地选择信息确定目标路由信息,进而将伪首报调度转发至目标目的地,以使得同一个客户端发起的数据包全部调度转发至同一个目的地进行响应,确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,所述目标目的地包括多接入边缘计算MEC站点、数据中心、服务器或服务实例中的一种或多种,所述网络设备包括用户侧网络网关、用户入口路由器中的一种或多种。
在一种可能的实现方式中,当所述目标目的地包括所述MEC站点或所述数据中心时,所述目标标识信息中包括所述目标目的地的站点选择信息,或所述目标标识信息中包括所述目标目的地的站点选择信息和与所述目的地站点连接的服务器选择信息。
在一种可能的实现方式中,当所述目标目的地包括所述服务器或所述服务实例时,所述目标标识信息中包括所述服务器选择信息或所述服务实例选择信息,或者,所述目标标识信息中包括所述服务器选择信息和与所述服务器连接的站点的选择信息,或者,所述目标标识信息中包括所述服务实例选择信息和与所述服务实施连接的站点的选择信息。
在一种可能的实现方式中,其特征在于,所述方法还包括:当所述目标标识信息更新时,更新所述目的地信息表中的所述目标目的地的所述目标标识信息,以及更新所述第一报文中的所述目标标识信息。
在本发明实施例中,目标目的地的标识信息可以定期更新(即目标标识信息可以定期更新),使得目的地选择信息本身更加安全,不但能保护客户端隐私,还能提升网络的安全性。
第二方面,本发明实施案例提供了一种报文处理方法,其特征在于,应用于目标目的地,包括:接收由网络设备转发的客户端的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别所述目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;处理所述第一报文生成第一响应报文,并向所述客户端发送所述第一响应报文。
在发明实施例中,当客户端与目标目的地之间建立数据流后,客户端发起的第一报文(如请求数据包)会被入口路由器根据目标标识信息(如目的地选择信息)调度转发至目标目的地。进一步,目标目的地接收该请求数据包并进行处理,生成响应数据包,然后将该响应数据包发送至客户端,实现了同一个客户端发起的请求数据包由同一个目的地进行响应,即确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,其特征在于,所述接收由网络设备转发的客户端的第一报文之前,所述方法还包括:接收由所述网络设备转发的所述客户端的第二报文;所述第二报文中包括由所述网络设备写入的所述目标标识信息;处理所述第二报文生成第二响应报文,并向所述客户端发送所述第二响应报文;所述第二响应报文中包括所述目标标识信息。
在本发明实施例中,客户端与目标目的地之间建立数据流时,目标目的地接收首个数据包,该首个数据包中携带由入口路由器分配的目的地选择信息,进一步目标目的地响应首个数据包并生成响应数据包,且该响应数据包中会携带目的地选择信息,然后将该响应数据包发送至客户端,以告知客户端目的地选择信息,进而确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息。
在本发明实施例中,当目的地选择信息更新时,目标目的地通过在响应数据包中携带上更新后的目的地选择信息,以告知客户端目的地选择信息已更新。由于目的地选择信息可以定期更新,使得目的地选择信息本身更加安全,不但能保护客户端隐私,还能提升网络的安全性。
第三方面,本发明实施案例提供了一种报文处理方法,其特征在于,应用于客户端,包括:向网络设备发送第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;接收所述目标目的地发送的第一响应报文;所述第一响应报文为所述第一报文的响应报文。
在本发明实施例中,当客户端与目标目的地之间建立数据流之后,客户端发起的请求数据包中会携带上目的地选择信息,以便于入口路由器根据该目的地选择信息将请求数据包调度转发至目标目的地进行响应。进一步,客户端接收目标目的地发送的响应数据包,实现了同一个客户端发起的请求数据包由同一个目的地进行响应,即确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,其特征在于,所述方法还包括:向所述网络设备发送第二报文;接收所述目标目的地发送的第二响应报文;所述第二响应报文为所述第二报文的响应报文;所述第二响应报文中包括所述目标标识信息;记录下所述目标标识信息,以使得所述第一报文携带上所述目标标识信息。
在本发明实施例中,当客户端与服务端之间建立数据流时,客户端发起的首个数据包,由入口路由器选择一个目标目的地,并且将首个数据包调度转发至该目标目的地进行响应,进而客户端能够接收到目标目的地发送的响应数据包,并记录下响应数据包中的目的地选择信息,以便客户端再次发起请求数据包时携带上该信息,进而便于让入口路由器根据该信息将请求数据包调度转发至目标目的地进行响应,实现了同一个客户端发起的请求数据包由同一个目的地进行响应,即确保了客户端业务的连续性,提升了用户体验。
在一种可能的实现方式中,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息,所述方法还包括:记录下所述更新后的目标标识信息,以使得所述第一报文中携带上所述更新后的目标标识信息。
在本发明实施例中,当目的地选择信息更新时,客户端接收的响应数据包中会携带上更新后的目的地选择信息,进而客户端记录下该更新后的目的地选择信息,使得再次发起请求数据包时携带上更新后的目的地选择信息,进而便于让入口路由器根据该信息将请求数据包调度转发至目标目的地进行响应。由于目标目的地的目的地选择信息可以定期更新,使得目的地选择信息本身更加安全,不但能保护客户端隐私,还能提升网络的安全性。
第四方面,本发明实施案例提供了一种报文处理装置,其特征在于,应用于第一网络设备,所述装置包括:第一接收单元,用于接收客户端发送的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;第一处理单元,用于根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,以触发所述目标目的地处理所述第一报文。
在一种可能的实现方式中,所述第一处理单元具体用于:基于目的地信息表和所述目标标识信息,确定所述目标目的地对应的目标路由信息;所述目的地信息表中包括所述N个候选目的地的标识信息与对应的路由信息的映射关系;基于所述目标路由信息将所述第一报文转发至所述目标目的地。
在一种可能的实现方式中,所述装置还包括:第二接收单元,用于接收所述客户端发送的第二报文;所述第二报文中包括流量标识;所述流量标识包括以下信息中的一种或多种:所述第二报文的三元组、五元组、流标签或业务标识;第二处理单元,用于根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地。
在一种可能的实现方式中,所述装置还包括:第三处理单元,用于基于选择的所述目标目的地获得所述目标标识信息,并将所述目标标识信息添加到所述第二报文中;所述第三处理单元,还用于将携带所述目标标识信息的所述第二报文发送至所述目标目的地,以触发所述目标目的地生成携带所述目标标识信息的响应报文,所述响应报文为所述第二报文的响应报文。
在一种可能的实现方式中,所述第二处理单元具体用于:通过查找所述N个候选目的地对应的算力路由表,得到所述N个候选目的地中每个候选目的地的算力信息;根据所述每个候选目的地的算力信息,从所述N个候选目的地中选择一个作为所述目标目的地;所述算力信息包括对应的候选目的地的当前负载状态信息、网络质量信息中的一种或多种。
在一种可能的实现方式中,所述装置还包括:第三接收单元,用于分别接收所述每个候选目的地发送的算力路由;所述算力路由包括对应的候选目的地的所述算力信息、所述路由信息;第四处理单元,用于生成所述算力路由表;所述算力路由表中包括所述每个候选目的地的算力信息和所述路由信息。
在一种可能的实现方式中,当所述算力信息中还包括对应的候选目的地的标识信息时,所述装置还包括:第五处理单元,用于根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
在一种可能的实现方式中,所述装置还包括:第六处理单元,用于根据预设算法生成所述每个候选目的地的标识信息,并根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
在一种可能的实现方式中,所述装置还包括:第七处理单元,用于建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标路由信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;所述第七处理单元,还用于基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标路由信息;基于所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
在一种可能的实现方式中,所述装置还包括:第八处理单元,用于建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标目的地的所述目标标识信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;所述第八处理单元,还用于基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标标识信息;基于所述目标标识信息确定所述目标路由信息,并根据所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
在一种可能的实现方式中,所述目标目的地包括多接入边缘计算MEC站点、数据中心、服务器或服务实例中的一种或多种。
在一种可能的实现方式中,当所述目标目的地包括所述MEC站点或所述数据中心时,所述目标标识信息中包括所述目标目的地的站点选择信息,或所述目标标识信息中包括所述目标目的地的站点选择信息和与所述目的地站点连接的服务器选择信息。
在一种可能的实现方式中,当所述目标目的地包括所述服务器或所述服务实例时,所述目标标识信息中包括所述服务器选择信息或所述服务实例选择信息,或者,所述目标标识信息中包括所述服务器选择信息和与所述服务器连接的站点的选择信息,或者,所述目标标识信息中包括所述服务实例选择信息和与所述服务实施连接的站点的选择信息。
在一种可能的实现方式中,所述装置还包括:第一更新单元,用于当所述目标标识信息更新时,更新所述目的地信息表中的所述目标目的地的所述目标标识信息,以及更新所述第一报文中的所述目标标识信息。
第五方面,本发明实施案例提供了一种报文处理装置,其特征在于,应用于第二网络设备,包括:第一接收单元,用于接收由第一网络设备转发的客户端的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别所述第二网络设备,所述第二网络设备为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;第一处理单元,用于处理所述第一报文生成第一响应报文,并向所述客户端发送所述第一响应报文。
在一种可能的实现方式中,所述装置还包括:第二处理单元,用于接收由所述第一网络设备转发的所述客户端的第二报文;所述第二报文中包括由所述第一网络设备写入的所述目标标识信息;所述第二处理单元,用于处理所述第二报文生成第二响应报文,并向所述客户端发送所述第二响应报文;所述第二响应报文中包括所述目标标识信息。
在一种可能的实现方式中,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息。
第六方面,本发明实施案例提供了一种报文处理装置,其特征在于,应用于客户端,包括:第一发送单元,用于向第一网络设备发送第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;第一接收单元,用于接收所述目标目的地发送的第一响应报文;所述第一响应报文为所述第一报文的响应报文。
在一种可能的实现方式中,所述装置还包括:第二处理单元,用于向所述第一网络设备发送第二报文;接收所述目标目的地发送的第二响应报文;所述第二响应报文为所述第二报文的响应报文;所述第二响应报文中包括所述目标标识信息;所述第二处理单元,还用于记录下所述目标标识信息,以使得所述第一报文携带上所述目标标识信息。
在一种可能的实现方式中,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息,所述装置还包括:第三处理单元,用于记录下所述更新后的目标标识信息,以使得所述第一报文中携带上所述更新后的目标标识信息。
第七方面,本发明实施例提供一种半导体芯片,可包括上述第四方面或上述第五方面或上述第六方面中的任意一种实现方式所提供的报文处理装置。
第八方面,本发明实施例提供一种片上系统SoC芯片,该SoC芯片包括上述第四方面或第五方面或第六方面中的任意一种实现方式所提供的报文处理装置、耦合于所述报文处理装置的内部存储器和外部存储器。该SoC芯片,可以由芯片构成,也可以包含芯片和其他分立器件。
第九方面,本发明实施例提供了一种芯片系统,该芯片系统包括上述第四方面或第五方面或第六方面中的任意一种实现方式所提供的报文处理装置。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存所述报文处理装置在运行过程中所必要或相关的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其它分立器件。
第十方面,本发明实施例提供一种主机,该主机包括处理器,该处理器用于执行上述第一方面或第二方面或第三方面中的任意一种实现方式所提供的报文处理方法。该主机还可以包括存储器,存储器用于与处理器耦合,其保存主机必要的程序指令和数据。该主机还可以包括通信接口,用于该主机与其它设备或通信网络通信。
第十一方面,本发明实施例提供一种交换机,该交换机包括处理器,该处理器用于执行上述第一方面或第二方面或第三方面中的任意一种实现方式所提供的报文处理方法。该交换机还可以包括存储器,存储器用于与处理器耦合,其保存交换机必要的程序指令和数据。该交换机还可以包括通信接口,用于该交换机与其它设备或通信网络通信。
第十二方面,本发明实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被多核处理器执行时,使得主机可以执行上述第一方面或第二方面或第三方面中任意一项所述的多核处理器的处理方法流程。
第十三方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该计算机程序被主机执行时实现上述第一方面或第二方面或第三方面中任意一项所述的多核处理器的处理方法流程。
第十四方面,本发明实施例提供了一种计算机非瞬态存储介质,包括指令,当所述指令在中间节点上运行时,使得所述中间节点执行如第一方面或第二方面或第三方面任一项所述的方法。
附图说明
图1A为现有技术提供的一种切换接入网络和使用多路径的场景示意图。
图1B为本发明实施例提供的一种算力优先网络原理图。
图2为本发明实施例提供的一种基于边缘计算的网络架构图。
图3A是本申请实施例中的一种报文处理方法的流程示意图。
图3B为本发明实施例提供的一种报文处理方法的具体应用场景流程示意图。
图4A是本申请实施例中的另一种报文处理方法的流程示意图。
图4B为本发明实施例提供的一种生成算力路由表的流程示意图。
图4C为本发明实施例提供的一种入口路由器处理首个数据包的流程示意图。
图4D为本发明实施例提供的两种扩展数据包格式示意图。
图4E为本发明实施例提供的一种生成目的地信息表流程示意图。
图4F为本发明实施例提供的一种扩展路由协议宣告站点标识流程示意图。
图4G为本发明实施例提供的另一种生成目的地信息表流程示意图。
图4H为本发明实施例提供的一种入口路由器生成站点标识流程示意图。
图5A为本发明实施例提供的一种基于TCP数据流的报文处理方法流程图。
图5B为本发明实施例提供的一种基于QUIC数据流的报文处理方法流程图。
图5C为本发明实施例提供的一种具有伪首报的报文处理方法流程示意图。
图5D为本发明实施例提供的一种临时会话表示意图。
图6A是本发明实施例提供的一种会话保持装置的第一装置示意图。
图6B是本发明实施例提供的一种会话保持装置的第二装置示意图。
图6C是本发明实施例提供的一种会话保持装置的第三装置示意图。
图7为本发明实施例提供的一种网络设备硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例进行描述。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
首先,分析并提出本申请所具体要解决的技术问题。在互联网应用中,一个客户端与服务端的多次请求可能存在关联,通常会分配到相同的服务器进行处理,以避免缓存失败,进而实现会话保持。如果不分配到相同的服务器,则会出现如反复跳转到登录页面、客户端放入购物车的物品丢失、提示验证错误等情况的发生。在现有技术中,常见的会话保持方法包括如下方案一和方案二:
方案一:有状态会话保持技术。该技术可基于边缘计算网络,即在该网络中包括多个为用户处理请求的MEC站点,且对于用户来说这些MEC站点的服务IP地址相同(即对于用户来说这些MEC站点共享同一个IP地址),但对于网络内部来说这些MEC站点的网络内部使用的IP地址不同。当客户端发起新请求,可从多个MEC站点中选择一个作为目标MEC站点,然后入口路由器会将客户端的请求数据包调往目标MEC站点进行响应,同时在会话表上记录当前的会话信息,该会话信息可包括用户信息及对应的路由信息,如五元组(源IP、目的IP、协议号、源端口、目的端口)和SRv6隧道(即到达目标MEC站点的隧道)或是五元组和下一跳地址(即目标MEC站点的网络内部使用的IP地址)等。当客户端再次发起请求时,入口路由器可基于用户信息在会话表中查询所对应的路由信息,以将请求数据包发送至该目的地站点进行响应。
该方案一,基于上述边缘计算网络的有状态会话保持技术,虽然理论上能够实现会话保持,但是存在以下缺点:
1、占用网络设备过多的资源。例如,1000个用户接入,则会生成1000条流的信息,然后网络设备会分别记录下每条流的信息,即网络设备要记录下这1000个用户的用户信息以及对应的路由信息。随着用户接入数量的增多,不仅要占用过多的存储资源,还会增加网络设备维护每一条流的难度。
2、业务会出现中断。在有状态会话保持技术中,要求客户端发起的请求数据包中要有稳定可靠且可识别该数据包属于哪一条流的信息。针对TCP、UDP流来说,属于同一条流的数据包,五元组内容是一致的,即可通过五元组来进行识别。但针对QUIC流来说,由于QUIC具有切换网络保持连接的特性,使得属于同一条流的数据包,五元组、QUICConnection ID的内容都有可能发生变化,因此数据包中没有稳定且可靠的字段用于识别数据包所归属的流,导致网络设备根据用户信息无法在会话表中查找到目的地站点,从而出现业务中断。例如,如图1A所示,图1A为现有技术提供的一种切换接入网络和使用多路径的场景示意图,图中用户的网络可能会经常切换,比如从办公室或家里出门,WiFi断开,网络切换为4G或5G,或是使用多路径网络(如SD-WAN场景、WIFI加移动流量场景),若基于TCP或UDP协议,在网络切换后,客户端的源IP地址会改变,因而之前的连接不再继续保持,即网络切换会重新建立新的流;而基于QUIC协议,由于可以内建与TCP不同的连接标识方法,从而在网络完成切换之后,能够恢复之前与服务端的连接,即属于同一条流的数据包可能具有不同的五元组或不同的QUIC Connection ID。因此,针对QUIC流,数据包中没有稳定可靠的字段用于识别数据包归属的数据流,导致网络设备根据用户信息无法在会话表中查找到对应的目的地站点,从而用户业务会出现中断的问题,即无法用会话表的方式实现会话保持。
方案二:无状态会话保持技术。在该技术中,网络设备不用记录上述会话表,当客户端发起新请求,根据Anycast路由(如就近原则)将请求数据包调往最近的目标MEC站点进行响应,需要说明的是,在该技术中,目标MEC站点是由路由系统选择的而不是由入口路由器选择的,即当入口路由器接收到请求数据包时并不能直接确定目标MEC站点,而是由路由器系统根据路由协议在请求数据包转发过程中确定的。在生成响应数据包后,即已确定了目标MEC站点,进而由出口路由器将目标MEC站点的本地标识(即网络内部使用的IP地址)插入在数据包中,后续客户端再次发起请求时,请求数据包中都携带着该标识。进一步,当入口路由器再收到该客户端的请求数据包时,如果识别到数据包上携带标识,则将请求数据包转发到该标识指定的目的地站点进行响应。
该方案二,虽然不用存储过多的用户信息和路由信息,即不会占用网络设备过多的资源,且能够实现会话保持,但是存在以下缺点:
1、MEC站点无法实现负载均衡。通过上述无状态会话保持技术,由于是根据Anycast路由,即选择最近的MEC站点来处理请求数据包,因此MEC站点无法实现负载均衡。
2、存在安全隐患。通过上述无状态会话保持技术,出口网络设备会将目标MEC站点的本地标识(即网络内部使用的IP地址)插入在数据包中,由于该目标MEC站点的本地标识属于网络内部信息,因此将该信息暴露给客户端会给网络带来安全隐患。
3、站点标识需要在全网同步。通过上述无状态会话保持技术,由于入口路由器无法直接确定目标MEC站点,因此无法由入口路由器来分配站点标识。进而,当请求数据包由一个MEC站点响应之后,即表示已确定目标MEC站点,此时由出口路由器将该目标MEC站点的站点标识插入到响应数据包中(即站点标识由出口网络设备分配)。因此,出口路由器需要将所有的标识信息在全网范围内同步,以便于后续入口路由器根据请求数据包中携带的标识,将数据包转发到对应的目标MEC站点进行响应。
综上所述,在现有的有状态会话保持方法中,有占用网络设备过多的资源、业务出现中断的问题;在现有的无状态会话保持方法中,由于MEC站点负载不均衡会降低响应速度,导致用户体验差的问题。因此,在本申请提供的一种报文处理方法用于解决上述技术问题。
下面结合本发明实施例中的附图对本发明实施例进行描述。
为了便于理解本发明实施例,下面对本发明实施例所基于的算力优先网络(Compute First Networking,CFN)进行描述。请参见图1B,图1B为本发明实施例提供的一种算力优先网络原理图,图中在边缘计算场景下,该算力优先网络中包括n个为客户端提供服务的多接入边缘计算(Multi-access Edge Computing,MEC)站点,且对于客户端来说这些MEC站点的服务IP地址相同(即对于客户端来说这些MEC站点共享同一个IP地址),但对于网络内部来说这些MEC站点的网络内部使用的IP地址不同。所述MEC站点是云数据中心向最终客户端的物理延伸,也称为云计算能力的下沉。在CFN中,可以根据各个站点的算力状态,选择当前更优的站点为客户端提供服务,进而缩短客户端请求的处理时间,提升客户端体验。需要说明的是,算力状态包括但不限于MEC站点内服务器当前的CPU、内存和磁盘利用率,以及FPGA/GPU异构计算能力等,且通常认为资源利用率低或当前负载低的站点为更优的站点。详细说明如下:
在算力状态同步阶段,MEC站点可通过路由协议,将自身算力状态告知网络设备。具体地,CFN中的每个MEC站点通过算力感知模块采集各自的算力状态,并通过边缘计算节点将算力状态通知给各网络设备,进而实现算力状态在网络中扩散与同步,最终所有网络设备都能感知到各个MEC站点的算力状态。进一步,在网络设备上生成算力负载分担表,该算力负载分担表中记录了每个MEC站点的算力值、下一跳信息(实际对应到达MEC站点的隧道或网络内部使用的IP地址),以及任播IP(即这些MEC站点的服务IP地址)。
需要说明的是,由于每个MEC站点都部署应用的服务端,因此云计算能力可下沉至MEC站点(如MEC站点可部署在工厂或园区或港口等场景)。MEC站点和网络设备分开,且网络设备与MEC站点之间通过网关(如路由器、交换机或UPF等)连接,网络设备能够获得每个站点的算力状态(如CPU利用率等)。其中,每个MEC站点可包括多个设备,如服务器、路由器、交换机、UPF等。另外,网络设备所在的网络可为移动承载网或固定网络或城域网,在此不作限定。
在MEC站点选择阶段,由网络设备根据上述算力负载分担表计算出当前更优的MEC站点。具体地,由客户端发起应用请求,网络设备通过查询算力负载分担表,得到应用在各站点的算力信息和网络状态,进而客户端接入的入口路由器可以计算得出当前更优的MEC站点,并将客户端的请求调度去往该MEC站点,实现对客户端访问的优化。
因此,通过算力优先网络能够将客户端请求调度到当前算力状态最优的站点,实现了业务的客户端体验最优化、资源利用率最优化、网络效率最优化。
基于上述提出的技术问题和算力优先网络,为了便于理解本发明实施例,下面先对本发明实施例所基于的网络架构进行描述。请参考见图2,图2为本发明实施例提供的一种基于边缘计算的网络架构图,图中该网络架构可以包括接入层201、汇聚层202以及多个终端。其中,接入层201包括至少一个入口路由器(Access layer router,ACC);汇聚层202包括至少一个汇聚层路由器(Aggregation layer router,Agg)、自治系统边界路由器(Autonomous System Boundary Router,ASBR)和多个边缘计算站点(Multi-access EdgeComputing,MEC)以及每个MEC站点对应的网关;多个终端包括至少一个移动终端或至少一个固网终端。详细说明如下:
接入层201,用于为用户提供在本地网段访问应用系统的能力。接入层201主要解决相邻用户之间的互访需求,并且为这些访问提供足够的宽带。除此之外,接入层201还负责用户管理功能(如地址认证、用户认证、计费管理等),以及用户信息收集工作。例如,在本发明实施例中,当终端发起新请求时,接入层201的入口路由器可根据汇聚层202的多个MEC站点的算力状态(即表示MEC站点的当前负载),从中选择出一个MEC站点作为目标目的地,以使得客户端与该目标目的地建立数据流;当该终端再次发起请求时,入口路由器识别请求数据包中的目的地选择信息,然后将请求数据包调度转发至该目的地选择信息所对应的目标目的地进行响应,进而实现了会话保持,即终端发起的请求由同一个MEC站点进行响应。
汇聚层202,用于连接接入层201和核心层。汇聚层202为接入层201提供数据的汇聚、传输、管理和分发处理。同时,汇聚层202为接入层201提供策略的连接,如地址合并、协议过滤、路由服务认证管理等。汇聚层202通过网段划分(如VLAN)与网络隔离可以防止某些网段的问题蔓延和影响到核心层,以及汇聚层202可以提供接入层201虚拟网之间的互联,控制和限制接入层201对核心层的访问,确保核心层的安全和稳定。为了实现边缘计算,汇聚层202中包括多个MEC站点,这些MEC站点能够提供云计算功能,以及在网络边缘的IT服务环境,这种环境的特点是超低延迟和高带宽以及应用程序可以利用的无线网络信息的实时访问。例如,在本发明实施例中,汇聚层路由器接收到接入层201的入口路由器发送的请求数据包后,可将请求数据包转发给自治系统边界路由器,接下来通过自治系统边界路由器将请求数据包发送到目的地选择信息所对应的目标目的地(如目标MEC站点)的网关,然后通过网关将请求数据包发送到目标MEC站点进行响应。
终端,用于向用户提供语音和/或数据连通性服务。所述终端可包括移动用户使用的移动终端,或是固网用户使用的固网终端(如宽带用户、企业用户、VPN用户使用的终端)。所述终端可以有不同的名称,例如用户设备(user equipment,UE)、接入终端、终端单元、终端站、移动站、移动台、远方站、远程终端、移动设备、无线通信设备、车辆用户设备、终端代理或终端装置等。可选的,所述终端可以为各种具有通信功能的手持设备、车载设备、可穿戴设备、计算机,本申请实施例对此不作任何限定。例如,手持设备可以是智能手机;车载设备可以是车载导航系统;可穿戴设备可以是智能手环;算机可以是个人数字助理(personaldigital assistant,PDA)电脑、平板型电脑以及膝上型电脑(laptop computer)。例如,在本发明实施例中,当终端(又称为客户端)接收到由网络分配的目标MEC站点的目的地选择信息后,终端再次发起的请求数据包中会携带上该信息,以便于入口路由器识别目标MEC站点。
可以理解的是,上述网络架构只是本发明实施例中的几种示例性的实施方式,本发明实施例中的网络架构包括但不仅限于上述。
下面对本发明实施例所基于的具体方法架构进行描述。
参见图3A,图3A是本申请实施例中的一种报文处理方法的流程示意图,下面将结合附图3A并基于上述图2中的网络架构从网络设备、目标目的地和客户端的交互侧对本申请实施例中的报文处理方法进行描述。该方法包括但不限于以下步骤:
步骤S301:客户端向网络设备发送第一报文。
具体地,所述第一报文,可称为请求数据包,可以理解为客户端接收到由网络分配的目标标识信息(如目的地选择信息)后发起的数据包,也可以理解为客户端与目标目的地建立数据流之后客户端发起的数据包。所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数。客户端是向服务端发送业务处理请求的设备,可以为用户终端、如手机,个人计算机(Personal Computer,PC)等,也可以为路由器或交换机等。可以理解的是,目标目的地作为服务端,为客户端提供服务;网络设备(如入口路由器)可提供数据包转发的功能。例如,目标目的地可以为上述图2中的多个MEC站点中的一个MEC站点,进而也可称目标目的地为目标MEC站点。
在一种可能的实现方式中,所述目标目的地包括多接入边缘计算MEC站点、数据中心、服务器或服务实例中的一种或多种,所述网络设备包括用户侧网络网关、用户入口路由器中的一种或多种。
步骤S302:网络设备接收客户端发送的第一报文。
具体地,所述第一报文包括目标标识信息;所述目标标识信息用于识别所述目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数。
在一种可能的实现方式中,当所述目标目的地包括所述MEC站点或所述数据中心时,所述目标标识信息中包括所述目标目的地的站点选择信息,或所述目标标识信息中包括所述目标目的地的站点选择信息和与所述目的地站点连接的服务器选择信息。
在一种可能的实现方式中,当所述目标目的地包括所述服务器或所述服务实例时,所述目标标识信息中包括所述服务器选择信息或所述服务实例选择信息,或者,所述目标标识信息中包括所述服务器选择信息和与所述服务器连接的站点的选择信息,或者,所述目标标识信息中包括所述服务实例选择信息和与所述服务实施连接的站点的选择信息。
步骤S303:网络设备根据所述目标标识信息确定所述目标目的地。
具体地,由于目的地选择信息(即目标标识信息)是网络分配的,因此网络设备(如入口路由器)能够根据请求数据包(即第一报文)中的目的地选择信息识别出该信息对应的目标目的地。例如,入口路由器可根据目的地选择信息,直接确定目标路由信息,过程中不需要查目的地信息表。
在一种可能的实现方式中,所述网络设备根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,包括:网络设备基于目的地信息表和所述目标标识信息,确定所述目标目的地对应的目标路由信息;所述目的地信息表中包括所述N个候选目的地的标识信息与对应的路由信息的映射关系;基于所述目标路由信息将所述第一报文转发至所述目标目的地。具体地,当入口路由器(即网络设备)接收到该客户端发起的请求数据包后,不再根据客户端信息查找会话表来确定目标目的地的目标路由信息,而是识别该请求数据包中携带的目的地选择信息(即目标标识信息),并通过查询目的地信息表来确定该目的地选择信息所对应的目标路由信息,进而基于该目标路由信息将请求数据包发送至目标目的地,以使目标目的地处理该请求数据包,确保了客户端业务的连续性。
需要说明的是,路由信息可以理解为达到目的地的信息,进而目标路由信息表示到达目标目的地的信息。例如,路由信息可为MEC站点的隧道末端的网关IP地址,或SRv6Policy、SR-MPLS Policy等隧道或其索引或其ID等。
可选的,当入口路由器接收到客户端发起的请求数据包后,识别请求数据包中的目的地选择信息,进一步,根据目的地选择信息直接确定目标路由信息,然后根据该目标路由信息将请求数据包调度转发至目标目的地进行处理。
步骤S304:网络设备将所述第一报文转发至所述目标目的地。
具体地,在入口路由器根据目的地选择信息(如目标MEC站点标识)得到目标MEC站点所对应的目标路由信息后,入口路由器将请求数据包调度转发至目标MEC站点,以使得目标MEC站点响应客户端的请求数据包。
例如,如图3B所示,图3B为本发明实施例提供的一种报文处理方法的具体应用场景流程示意图,图中客户端1为住宅用户,且与MEC1之间建立数据流。当客户端1中的应用(Application,App)发起请求数据包时,该请求数据包中携带的目的IP地址为1.1.1.1/32,目标MEC站点标识(对应上述目标标识信息)为“1”,此外请求数据包中还可包括负载信息(Payload),即负载信息是数据传输中所欲传输的实际信息。可选的,客户端1的请求数据包可通过住宅网关(Residential Gateway,RG)发送至入口路由器(Access layer router,ACC)。进一步,入口路由器接收该请求数据包,并识别出请求数据包中的目标MEC站点标识为“1”,然后入口路由器在目的地信息表中查找“1”对应的目标路由信息为“GW1’s IP”,进而将该请求数据包转发至“GW1’s IP”,以使MEC1响应客户端1的请求数据包。同理,客户端2发起的请求数据包也会被入口路由器根据相同的方法转发至MEC3进行响应,此处不再过多赘述。
步骤S305:目标目的地接收由网络设备转发的客户端的第一报文。
具体地,目标目的地可作为服务端,接收由入口路由器转发的请求数据包。
步骤S306:目标目的地响应所述第一报文生成第一响应报文,并向所述客户端发送所述第一响应报文。
具体地,第一响应报文为所述第一报文(即请求数据包)的响应数据包,即目标目的地接收到客户端的请求数据包后进行响应生成的数据包。目标目的地向客户端发送响应数据包,确保了客户端业务的连续性。可选的,目标目的地可通过应用层API将第二响应数据包发送至客户端。
需要说明的是,由于客户端已记录下了目标标识信息(如目标MEC站点标识),进而第一响应报文中可以不用再携带目标MEC站点标识,第一响应报文中也可以携带上目标MEC站点标识。可选的,目标MEC站点还可以通知客户端切断连接,并在该通知包中携带其他站点的站点标识,用于推荐客户端去往状态更佳的站点。
步骤S307:客户端接收所述目标目的地发送的响应报文。
具体地,所述响应报文为所述第一报文的响应数据包。当客户端接收到目标目的地发送的响应数据包,表示客户端请求已在目标目的地进行响应,进而实现了会话保持。
参见图4A,图4A是本申请实施例中的另一种报文处理方法的流程示意图,下面将结合附图4A并基于上述图2中的网络架构从网路设备、目标目的地和客户端的交互侧对本申请实施例中的报文处理方法进行描述。该方法包括但不限于以下步骤:
步骤S401:客户端向所述网络设备发送第二报文。
具体地,在客户端发送所述第一报文前,客户端需先发送第二报文。所述第二报文可以理解为首个数据包,首个数据包(即首包)可以理解为客户端与服务端建立数据流时使用的握手信号。所述第二报文中包括流量标识;所述流量标识包括以下信息中的一种或多种:所述第二报文的三元组、五元组、流标签或业务标识。其中,三元组中可包括源IP地址、目的IP地址、传输层协议号信息;五元组可包括源IP地址、目的IP地址、传输层协议号、源端口号、目的端口号信息。需要说明的是,目的IP地址可以理解为服务端的服务IP地址,即目的IP地址可指向多个候选目的地。例如,客户端与服务端基于TCP协议建立数据流时,客户端向入口路由器发送的首个数据包为同步序列编号(Synchronize Sequence Numbers,SYN),以使得服务端与客户端建立新的数据流。
步骤S402:网络设备接收所述客户端发送的第二报文。
具体地,所述第二报文中包括流量标识;所述流量标识包括以下信息中的一种或多种:所述第二报文的三元组、五元组、流标签或业务标识。其中,三元组中可包括源IP地址、目的IP地址、传输层协议号信息;五元组中可包括源IP地址、目的IP地址、传输层协议号、源端口号、目的端口号信息。需要说明的是,目的IP地址可以理解为服务端的服务IP地址,即目的IP地址可指向多个候选目的地。由于客户端不能直接将第二报文(即首包)发送至服务端,因此可由入口路由器将客户端的首个数据包转发至服务端,以告知服务端建立数据流。
步骤S403:网络设备根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地。
具体地,客户端发起首个数据包以建立与服务端之间的数据流,但首个数据包中的流量标识信息(如服务IP地址)是指向多个候选目的地,因此入口路由器可从多个候选目的地中选择一个作为目标目的地为客户端提供服务。
在一种可能的实现方式中,所述网络设备根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地,包括:网络设备通过查找所述N个候选目的地对应的算力路由表,得到所述N个候选目的地中每个候选目的地的算力信息;根据所述每个候选目的地的算力信息,从所述N个候选目的地中选择一个作为所述目标目的地;所述算力信息包括对应的候选目的地的当前负载状态信息、网络质量信息中的一种或多种。具体地,由于算力路由表中记录了各候选目的地的当前负载状态、网络质量等信息,因此当入口路由器确定了多个候选目的地后,通过查找算力路由表能够得到各候选目的地的算力信息,然后入口路由器基于该算力信息选择目标目的地,即由入口路由器进行负载分担,实现了根据各候选目的地的算力信息调度流量,避免了根据就近路由选择目标目的地导致多个候选目的地负载不均衡的问题,从而实现对客户端访问的优化。
在一种可能的实现方式中,其特征在于,所述方法还包括:网络设备分别接收所述每个候选目的地发送的算力路由;所述算力路由包括对应的候选目的地的所述算力信息、所述路由信息;生成所述算力路由表;所述算力路由表中包括所述每个候选目的地的算力信息和所述路由信息。具体地,入口路由器可以分别接收各候选目的地发布的算力路由(即扩展路由,在路由中增加候选目的地的算力信息)并生成算力路由表。其中,算力路由中可包括但不限于候选目的地的算力信息和路由信息。由于各候选目的地的当前负载状态信息是由候选目的地生成的,因此该信息更能体现当前候选目的地的算力状态,进而入口路由器根据该信息选择的目标目的地,能够使得各候选目的地负载均衡。
以多个候选目的地为多个候选MEC站点,目标目的地为目标MEC站点,网络设备为入口路由器为例,请参见图4B,图4B为本发明实施例提供的一种生成算力路由表的流程示意图,图中同一个服务IP地址(1.1.1.1/32)对应着3个MEC站点,分别为MEC1、MEC2、MEC3。其中,每个MEC站点的算力信息(如算力值)可表示当前MEC站点的CPU、内存和磁盘利用率,以及FPGA/GPU异构计算能力等,即算力值越高表示当前MEC站点运行的任务越多,算力值越低表示当前MEC站点中运行的任务越少。入口路由器通过接收每个MEC站点发送的算力信息生成算力路由表,进而当入口路由器接收到客户端发送的首个数据包时,可基于该算力路由表为客户端选择一个算力值较低的MEC站点作为目标MEC站点,即可选择MEC1作为目标MEC站点,从而使得各MEC站点负载均衡。
步骤S404:网络设备基于选择的所述目标目的地获得所述目标标识信息,并将所述目标标识信息添加到所述第二报文中。
具体地,当入口路由器确定了目标目的地后,入口路由器可确定目的地选择信息,然后将该目的地选择信息写入首个数据包,以便于目标目的地处理首个数据包后生成的响应数据包中携带该目的地选择信息。例如,如图4C所示,图4C为本发明实施例提供的一种入口路由器处理首个数据包的流程示意图,图中入口路由器接收到客户端1发起的首个数据包后,根据算力路由表中的算力信息选择MEC1作为目标MEC站点,然后再根据目的地信息表确定该MEC站点所对应的站点标识为“1”,进而在首个数据包中写入站点标识“1”。
需要说明的是,若首个数据包中不携带扩展头,则入口路由器可添加扩展头(封装或插入),并在扩展头中写入目的地选择信息(即目标标识信息);若首个数据包中携带扩展头,则入口路由器在该扩展头中写入目的地选择信息。其中,数据包中可携带扩展头的位置,包括但不限于:APN TLV、HBH option、DOH option、SRH TLV、QUIC Connection ID。
可选的,在数据包格式上扩展一种类型长度值(Type Length Value,TLV),该TLV可以理解为上述扩展头,以使应用流量能够携带目的地选择信息(即目标MEC站点标识),如上述第一报文、第二报文、第一响应报文、第二响应报文中均可携带该TLV。需要说明的是,该TLV可携带于数据包中的IPv6 HBH、IPv6 DOH、SRH TLV、APN6 Service-Status Option或其他位置。例如,如图4D所示,图4D为本发明实施例提供的两种扩展数据包格式示意图,在TLV中,Type表示该TLV的类型,若依据RFC 8200&IANA的要求,且该TLV用于HBH、DOH时,Type值可选用0x33(51);若依据RFC 8754&IANA的要求,且该TLV用于SRH TLV时,Type值可选用0x88(136);若依据APN感知应用状态方案的要求,且该TLV用于APN Option时,Type值可选用0x000008(8)。Length表示该TLV的长度,以一字节为单位。当D-flag置位时,表示尚未完成目标MEC站点的选择,入口路由器需要执行站点选择;当D-flag为0时,表示已确定目标MEC站点。当O-flag为0时,表示不使用不透明标识符,即客户端和网络中的所有网络设备都能够识别到目标MEC站点标识(Site ID)的长度和服务端标识(Server ID)的长度以及这两个标识的值,如图4D中(a)所示,Len1表示Site ID的长度,以四字节为单位,Len2表示Server ID的长度,以四字节为单位。当O-flag置位时,表示使用不透明标识符(OpaqueID),即该标识仅网络内部的实体能够识别,如图4D中(b)所示,图中ID Length表示OpaqueID的长度,以四字节为单位,由于ID部分是一个整体,ID Length部分也是一个整体,因此网络外部无法识别出Site ID的长度(即对于客户端来说Opaque ID可以是一串乱码的无效信息,实现了对目标MEC站点标识进行加密),如Opaque ID可为基于哈希算法将目标MEC站点标识进行加密处理后的值。采用不透明标识符时,一方面,由于MEC站点和客户端对目标MEC站点标识无感知,因此有利于加快落地部署;另一方面,由于Opaque ID对于客户端来说是无效信息,进而增强了MEC站点、网络基础设施的安全性和私密性,也保护了客户端的隐私,因此容易推动标准化和开源生态落地实现。
在一种可能的实现方式中,其特征在于,当所述算力信息中还包括对应的候选目的地的标识信息时,所述方法还包括:网络设备根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。具体地,当各候选目的地在发布算力路由时,还可以携带上对应的标识信息。进一步,入口路由器可以根据每个候选目的地的标识信息及对应的路由信息生成目的地信息表,即该目的地信息表中可记录多个候选目的地的标识信息及对应的路由信息的映射关系。当入口路由器接收到客户端的首个数据包时,可基于目标目的地的标识信息确定目的地选择信息,进而将该目的地选择信息写入至首个数据包;当入口路由器接收到客户端的请求数据包时,可通过查找目的地信息表确定目的地选择信息所对应的目标路由信息,确保了客户端业务的连续性,提升了用户体验。例如,如图4E所示,图4E为本发明实施例提供的一种生成目的地信息表流程示意图,图中入口路由器(ACC)分别接收MEC1、MEC2和MEC3发送的站点标识及对应的路由信息,生成目的地信息表,进而记录下各站点的站点标识及对应的路由信息,即记录下“1”对应“GW1’s IP”,“2”对应“GW2’s IP”,“3”对应“GW3’s IP”。
可选的,当各MEC站点在发布算力路由(即MEC站点向入口路由器发送算力信息)时,可在路由中增加本站点标识信息,如可在边界网关协议(Border Gateway Protocol,BGP)、开放式最短路径优先(Open Shortest Path First,OSPF)、中间系统到中间系统协议(Intermediate System-to-Intermediate System,IS-IS)等路由协议中增加本站点标识信息,进而入口路由器接收到路由后,可根据站点标识信息及对应的路由信息生成目的地信息表。需要说明的是,MEC站点的站点标识可以由MEC站点的网关设备生成,并宣告进入网络;也可以由网络的边界路由器设备ASBR生成,并宣告进入网络;还可以由MEC站点的管理者指定,在此不作限定。例如,如图4F所示,图4F为本发明实施例提供的一种扩展路由协议宣告站点标识流程示意图,图中以MEC站点的管理者指定站点标识,并宣告标识进入网络为例。首先,MEC 1的管理员可为该MEC分配站点标识为“1”,并通过网络控制器或手工将该标识配置下发给网关设备GW。接下来,网关设备生成算力路由,路由中包括站点标识(即标识信息),以及原有的服务IP、下一跳(即路由信息)、算力状态(即算力信息)等信息,进而网关设备将包含站点标识的算力路由传递给网络边界设备ASBR。然后,ASBR通过路由协议,将包含站点标识的算力路由在网络内或跨多个网络域传播,最终传递给网络的入口路由器ACC。最后,网络的入口路由器在接收到包含站点标识的算力路由后,生成站点表,即目的地信息表。需要说明的是,在生成目的地信息表的过程中会涉及到将站点标识、下一跳信息(即路由信息)进行关联,以得到站点标识与路由信息的映射关系,此外,还可将下一跳信息经过路由迭代得到的转发端口或隧道信息进行关联,以便于后续转发数据包。
在一种可能的实现方式中,其特征在于,所述方法还包括:网络设备根据预设算法生成所述每个候选目的地的标识信息,并根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。由于候选目的地的标识信息仅在入口路由器本地有效,因此只要入口路由器能够识别该信息即可。具体地,候选目的地的标识信息可以由入口路由器根据预设算法生成,并在目的地信息表中可记录下多个候选目的地的标识信息及对应的路由信息的映射关系。当入口路由器接收到客户端的首个数据包时,可基于目标目的地的标识信息确定目的地选择信息,进而将该目的地选择信息写入至首个数据包;当入口路由器接收到客户端的请求数据包时,可通过查找目的地信息表确定目的地选择信息所对应的目标路由信息,确保了客户端业务的连续性,提升了用户体验。此外,由于各候选目的地的标识信息由入口路由器根据预设算法生成,从而省去了各候选站点的识别信息在全网同步的过程。例如,如图4G所示,图4G为本发明实施例提供的另一种生成目的地信息表流程示意图,图中入口路由器仅根据预设算法,如哈希算法,为MEC站点生成站点标识,进而基于站点标识与下一跳(路由信息)的映射关系生成目的地信息表。
可选的,当各MEC站点在发布算力路由(即MEC站点向入口路由器发布算力路由)时,网络的入口路由器可根据路由中的信息发现新站点(如没有站点标识的MEC站点)时,为该站点生成路由器本地有效的站点标识,进而生成目的地信息表。例如,如图4H所示,图4H为本发明实施例提供的一种入口路由器生成站点标识流程示意图,图中若算力路由的下一跳信息(路由信息)不存在于入口路由器本地的路由信息库中,则入口路由器为该路由信息对应的MEC站点生成站点标识(即标识信息),进而入口路由器生成站点表(目的地信息表)用于记录站点标识与对应的路由信息的映射关系,如图中“0xA”对应着“GW1’s IP”,“0xB”对应着“GW2’s IP”,“0xC”对应着“GW3’s IP”。综上,通过入口路由器生成站点标识时,由于不同入口路由器对同一个MEC站点可能会使用不同的站点标识,因此针对移动性场景,即用户终端在不同的入口路由器之间迁移的情况,可能需要在入口路由器之间同步站点标识信息。可选的,在上述过程中可预先给不同的入口路由器配置不透明标识符号段(如上述如4D中的O-flag),以避免在同步站点标识的过程中发生标识冲突。使用不透明标识符(如由入口路由器生成的候选目的地的标识信息),虽然可能依旧需要在多个入口路由器之间同步标识符信息(即多个候选MEC站点的标识信息),但是能够避免大范围的信息同步,即避免从ACC到MEC的GW跨度的同步,只需要在网络入口网络设备之间同步。
步骤S405:网络设备将携带所述目标标识信息的所述第二报文发送至所述目标目的地。
具体地,当入口路由器确定了目标目的地后,入口路由器将首个数据包调度转发至该目标目的地,以触发所述目标目的地生成携带所述目标标识信息的响应报文,所述响应报文为所述第二报文的响应报文。需要说明的是,首个数据包(即第二报文)的响应报文中携带目标标识信息,是为了在告知客户端已建立数据流的同时让客户端记录下该目标标识信息,当客户端再次发起请求时能够携带上该信息。
步骤S406:目标目的地接收由所述网络设备转发的所述客户端的第二报文。
具体地,所述第二报文中包括由所述网络设备写入的所述目标标识信息。目标目的地接收到客户端的首个数据包(即第二报文)后,目标目的地可知将要与客户端建立新的数据流。
步骤S407:目标目的地处理所述第二报文生成第二响应报文,并向所述客户端发送所述第二响应报文。
具体地,所述第二响应报文中包括所述目标标识信息。当目标目的地响应首个数据包后,向客户端发送相应的响应数据包,以告知客户端已建立新的数据流,并将目标目的地的目标标识信息告知客户端,以便于后续客户端发起请求时能够携带上该信息。
步骤S408:客户端接收所述目标目的地发送的第二响应报文。
具体地,所述第二响应报文为所述第二报文的响应数据包;所述第二响应报文中包括所述目标标识信息。客户端接收目标目的地发送的响应数据包,进而客户端与目标目的地之间建立了新的数据流。
步骤S409:客户端记录下所述目标标识信息。
具体地,由于客户端接收到的首包的响应数据包(即第二响应报文)中携带目的地选择信息,因此,客户端可将目的地选择信息记录下来,以便再次发起请求时携带上该信息。
接下来,当客户端再次发起请求时,可执行上述步骤S301-步骤S307,以使得目标目的地响应客户端的请求数据包,详细描述请参见上述对步骤S301-步骤S307的描述,此处不在重复赘述。
为了更详细的描述本申请实施例中的报文处理方法,接下来,以客户端与目标MEC站点建立TCP数据流为例,请参见图5A,图5A为本发明实施例提供的一种基于TCP数据流的报文处理方法流程图,图中入口路由器接收客户端发送的SYN(为上述提及的首个数据包,也是第二报文),然后入口路由器根据各MEC站点的算力信息为客户端选择目标MEC站点,假设选择的目标MEC站点的目的地选择信息中包括目标MEC站点标识为“0x3”及服务器标识为“0x6”,若SYN中不带TLV(如图4D所示,TLV可以理解为记录目标MEC站点标识的扩展头),则入口路由器在SYN中添加TLV并记录下“0x3”和“0x6”,同时将TLV中的D-flag清零,表示已确定目标MEC站点;若SYN携带TLV,则入口路由器将“0x3”和“0x6”写入TLV并将D-flag清零。接下来,目标MEC站点响应SYN并向客户端发送SYN和ACK(SYN和ACK为上述提及的首包的响应数据包),且携带上记录了“0x3”和“0x6”的TLV。进一步,客户端接收到目标MEC站点发送的SYN和ACK后,记录下该TLV中的目的地选择信息,当再次发起请求时,携带上该信息。然后,当入口路由器接收到携带目的地选择信息的请求数据包后,解析TLV中的目的地选择信息,并查看目的地信息表确定目的地选择信息对应的目标路由信息,进而将请求数据包转发至目标MEC站点。最终,目标MEC站点响应客户端的请求数据包,并生成第一响应报文,然后目标MEC站点向客户端发送第一响应报文,该第一响应报文中可携带TLV,也可以不继续携带TLV。
接下来,以客户端与目标MEC站点建立QUIC数据流为例,请参见图5B,图5B为本发明实施例提供的一种基于QUIC数据流的报文处理方法流程图,图中入口路由器接收客户端发送的首包(Inchoate Client Hello,Inchoate CHLO),然后入口路由器根据各MEC站点的算力信息为客户端选择目标MEC站点,假设选择的目标MEC站点标识为“0x3”,由于首包中包括目的地连接标识(Destination Connection ID,DCID),即可以理解为用于记录目的地选择信息的扩展头,因此入口路由器修改DCID中的目的地相关字段,使其携带上目标MEC站点标识为“0x3”,此外还可在DCID中记录下服务器标识(“0x6”)。接下来,目标MEC站点响应首包并向客户端发送响应包(如上述提及的第二响应报文),且携带上目标MEC站点的目的地选择信息。进一步,客户端接收到目标MEC站点发送的响应包后,记录下目的地选择信息,当再次发起请求时,携带上该信息。然后,当入口路由器接收到携带目的地选择信息的请求数据包后,解析DCID中的目的地选择信息,并查看目的地信息表确定目的地选择信息对应的目标路由信息,进而将请求数据包转发至目标MEC站点。最终,目标MEC站点响应客户端的请求数据包。可选的,在QUIC数据流中,DCID中目的地相关字段也可以作为数据流的连接标识的一部分。
在一种可能的实现方式中,其特征在于,所述方法还包括:网络设备建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标路由信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标路由信息;基于所述目标路由信息将所述伪首报发送至所述目标目的地,以使所述目标目的地处理所述伪首报。具体地,客户端与服务端在建立数据流的初期,即客户端还没有接收到携带目的地选择信息的响应数据包时,客户端可能会向服务端发送多个数据包(又称为伪首报),由于这些数据包中未携带目的地选择信息,因此入口路由器接收到这些数据包后,可能将这些数据包调度到不同的目的地进行响应,导致客户端业务中断等问题。在本发明实施例中,入口路由器通过建立临时会话表,记录下流量标识与目标路由信息的映射关系,如流量标识包括但不限于三元组、五元组、流标签Flow Label等,即流量标识中包括了首个数据包中的源IP地址等信息。当接收到伪首报时,通过查找临时会话表确定伪首报中的流量标识所对应的目标路由信息,使得同一个客户端发起的数据包全部调度转发至同一个目的地进行响应,确保了客户端业务的连续性,提升了用户体验。需要说明的是,伪首报情况的持续时间很短,通常只在几秒钟内,因此可以认为这些数据包与首个数据包中的流量标识是一致的。此外,临时会话表项的超时删除时间/老化时间可以设置为秒级或毫秒级,并且不需要记录表项的最近命中时间(lastseen),只需要记录表项创建时间。
例如,如图5C所示,图5C为本发明实施例提供的一种具有伪首报的报文处理方法流程示意图,图中当客户端发起首个数据包后,假设首个数据包中的源IP地址(可为流量标识中的一种)为110.1.10.2,入口路由器为其选择目标MEC站点,又假设目标MEC站点对应的目标路由信息为66.66.66.66,然后在入口路由器生成临时会话表,如图5D所示,图5D为本发明实施例提供的一种临时会话表示意图,图中临时会话表中记录源IP地址110.1.10.2,下一跳(上述目标路由信息)66.66.66.66,进而当入口路由器接收到伪首报时,由于伪首报中的源IP地址为110.1.10.2,因此可通过查找临时会话表确定110.1.10.2对应的下一跳为66.66.66.66,进而将伪首报调度转发至66.66.66.66,以使得同一个MEC站点响应客户端发起的数据包,进而确保了客户端业务的连续性。需要说明的是,临时会话表中除了记录源IP地址与目标路由信息的映射关系,还可以记录目标目的地选择信息、目的IP,源端口,站点标识,表项创建时间等信息。
在一种可能的实现方式中,所述方法还包括:网路设备建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目的地选择信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目的地选择信息;基于所述目的地选择信息确定所述目标路由信息,并根据所述目标路由信息将所述伪首报发送至所述目标目的地,以使所述目标目的地处理所述伪首报。具体地,临时会话表中还可以记录流量标识与目的地选择信息的映射关系,进一步,入口路由器可以通过流量标识间接确定目标路由信息,例如,临时会话表中记录下客户端的流量标识与目标目的地选择信息的映射关系,入口路由器首先根据伪首报中的流量标识确定对应的目标目的地选择信息,然后在根据目标目的地选择信息确定目标路由信息,最终入口路由器根据目标路由信息将伪首报调度转发至目标目的地进行响应。
在一种可能的实现方式中,其特征在于,所述方法还包括:当所述目标标识信息更新时,更新所述目的地信息表中的所述目标目的地的所述目标标识信息,以及更新所述第一报文中的所述目标标识信息。具体的,目标目的地的标识信息可以定期更新(即目标标识信息可以定期更新),使得目的地选择信息本身更加安全,不但能保护客户端隐私,还能提升网络的安全性。
在一种可能的实现方式中,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息。具体的,当目的地选择信息更新时,目标目的地通过在响应数据包中携带上更新后的目的地选择信息,以告知客户端目的地选择信息已更新。由于目的地的标识信息可以定期更新,使得目的地选择信息本身更加安全,不但能保护客户端隐私,还能提升网络的安全性。
在一种可能的实现方式中,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息,所述方法还包括:网络设备记录下所述更新后的目标标识信息,以使得所述第一报文中携带上所述更新后的目标标识信息。具体的,当目的地选择信息更新时,客户端接收的响应数据包中会携带上更新后的目的地选择信息,进而客户端记录下该更新后的目的地选择信息,使得再次发起请求数据包中携带上更新后的目的地选择信息,进而便于让入口路由器根据该信息将请求数据包调度转发至目标目的地进行响应。由于目标目的地的目的地选择信息可以定期更新,使得目的地选择信息本身更加安全,不但能保护客户端隐私,还能提升网络的安全性。
在本发明实施例中,由于目的地选择信息(即目标标识信息)是由网络分配的,因此在客户端信息发生变化时,目的地选择信息也不会发生改变,从而入口路由器根据该信息来识别目标目的地,避免了客户端信息发生变化导致业务中断的问题,从而确保了客户端业务的连续性,提升了用户体验。
上述详细阐述了本发明实施例的方法,下面提供了本发明实施例的相关装置。
请参见图6A,图6A是本发明实施例提供的一种会话保持装置的第一装置示意图,该会话保持装置60应用于第一网络设备(如入口路由器),可以包括第一接收单元601、第一处理单元602、第二接收单元603、第二处理单元604、第三处理单元605、第三接收单元606、第四处理单元607、第五处理单元608、第六处理单元609、第七处理单元610、第八处理单元611、第一更新单元612。其中各个单元的详细描述如下:
第一接收单元601,用于接收客户端发送的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
第一处理单元602,用于根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,以触发所述目标目的地处理所述第一报文。
在一种可能的实现方式中,所述第一处理单元602具体用于:基于目的地信息表和所述目标标识信息,确定所述目标目的地对应的目标路由信息;所述目的地信息表中包括所述N个候选目的地的标识信息与对应的路由信息的映射关系;基于所述目标路由信息将所述第一报文转发至所述目标目的地。
在一种可能的实现方式中,所述装置还包括:第二接收单元603,用于接收所述客户端发送的第二报文;所述第二报文中包括流量标识;所述流量标识包括以下信息中的一种或多种:所述第二报文的三元组、五元组、流标签或业务标识;第二处理单元604,用于根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地。
在一种可能的实现方式中,所述装置还包括:第三处理单元605,用于基于选择的所述目标目的地获得所述目标标识信息,并将所述目标标识信息添加到所述第二报文中;所述第三处理单元605,还用于将携带所述目标标识信息的所述第二报文发送至所述目标目的地,以触发所述目标目的地生成携带所述目标标识信息的响应报文,所述响应报文为所述第二报文的响应报文。
在一种可能的实现方式中,所述第二处理单元604具体用于:通过查找所述N个候选目的地对应的算力路由表,得到所述N个候选目的地中每个候选目的地的算力信息;根据所述每个候选目的地的算力信息,从所述N个候选目的地中选择一个作为所述目标目的地;所述算力信息包括对应的候选目的地的当前负载状态信息、网络质量信息中的一种或多种。
在一种可能的实现方式中,所述装置还包括:第三接收单元606,用于分别接收所述每个候选目的地发送的算力路由;所述算力路由包括对应的候选目的地的所述算力信息、所述路由信息;第四处理单元607,用于生成所述算力路由表;所述算力路由表中包括所述每个候选目的地的算力信息和所述路由信息。
在一种可能的实现方式中,当所述算力信息中还包括对应的候选目的地的标识信息时,所述装置还包括:第五处理单元608,用于根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
在一种可能的实现方式中,所述装置还包括:第六处理单元609,用于根据预设算法生成所述每个候选目的地的标识信息,并根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
在一种可能的实现方式中,所述装置还包括:第七处理单元610,用于建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标路由信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;所述第七处理单元610,还用于基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标路由信息;基于所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
在一种可能的实现方式中,所述装置还包括:第八处理单元611,用于建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标目的地的所述目标标识信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;所述第八处理单元611,还用于基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标标识信息;基于所述目标标识信息确定所述目标路由信息,并根据所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
在一种可能的实现方式中,所述目标目的地包括多接入边缘计算MEC站点、数据中心、服务器或服务实例中的一种或多种。
在一种可能的实现方式中,当所述目标目的地包括所述MEC站点或所述数据中心时,所述目标标识信息中包括所述目标目的地的站点选择信息,或所述目标标识信息中包括所述目标目的地的站点选择信息和与所述目的地站点连接的服务器选择信息。
在一种可能的实现方式中,当所述目标目的地包括所述服务器或所述服务实例时,所述目标标识信息中包括所述服务器选择信息或所述服务实例选择信息,或者,所述目标标识信息中包括所述服务器选择信息和与所述服务器连接的站点的选择信息,或者,所述目标标识信息中包括所述服务实例选择信息和与所述服务实施连接的站点的选择信息。
在一种可能的实现方式中,所述装置还包括:第一更新单元612,用于当所述目标标识信息更新时,更新所述目的地信息表中的所述目标目的地的所述目标标识信息,以及更新所述第一报文中的所述目标标识信息。
需要说明的是,本发明实施例中所描述的会话保持装置60中各功能单元的功能可参见上述图3A和图4A中所述的方法实施例中执行主体为第一网络设备(如入口路由器)的步骤的相关描述,此处不再赘述。
请参见图6B,图6B是本发明实施例提供的一种会话保持装置的第二装置示意图,该会话保持装置70应用于第二网络设备,可以包括第一接收单元701、第一处理单元702、第二处理单元703。其中各个单元的详细描述如下:
第一接收单元701,用于接收由第一网络设备转发的客户端的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别所述第二网络设备,所述第二网络设备为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
第一处理单元702,用于处理所述第一报文生成第一响应报文,并向所述客户端发送所述第一响应报文。
在一种可能的实现方式中,所述装置还包括:第二处理单元703,用于接收由所述第一网络设备转发的所述客户端的第二报文;所述第二报文中包括由所述第一网络设备写入的所述目标标识信息;所述第二处理单元703,用于处理所述第二报文生成第二响应报文,并向所述客户端发送所述第二响应报文;所述第二响应报文中包括所述目标标识信息。
在一种可能的实现方式中,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息。
需要说明的是,本发明实施例中所描述的会话保持装置70中各功能单元的功能可参见上述图3A和图4A中所述的方法实施例中执行主体为目标目的地的步骤的相关描述,此处不再赘述。
请参见图6C,图6C是本发明实施例提供的一种会话保持装置的第三装置示意图,该会话保持装置80应用于客户端,可以包括第一发送单元801、第一接收单元802、第二处理单元803、第三处理单元804。其中各个单元的详细描述如下:
第一发送单元801,用于向第一网络设备发送第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
第一接收单元802,用于接收所述目标目的地发送的第一响应报文;所述第一响应报文为所述第一报文的响应报文。
在一种可能的实现方式中,所述装置还包括:第二处理单元803,用于向所述第一网络设备发送第二报文;接收所述目标目的地发送的第二响应报文;所述第二响应报文为所述第二报文的响应报文;所述第二响应报文中包括所述目标标识信息;所述第二处理单元803,还用于记录下所述目标标识信息,以使得所述第一报文携带上所述目标标识信息。
在一种可能的实现方式中,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息,所述装置还包括:第三处理单元804,用于记录下所述更新后的目标标识信息,以使得所述第一报文中携带上所述更新后的目标标识信息。
需要说明的是,本发明实施例中所描述的会话保持装置70中各功能单元的功能可参见上述图3A和图4A中所述的方法实施例中执行主体为客户端的步骤的相关描述,此处不再赘述。
本发明实施例提供一种网络设备,如图7所示,图7为本发明实施例提供的一种网络设备硬件结构示意图,包括网络设备可包括网络接口、处理器和存储器。网络接口用于接收报文或数据信息等,存储器用于存储程序指令,处理器用于执行上述实施例相关设备中处理相关步骤。网络接口可以为以太接口等。
本发明实施例提供一种半导体芯片,可包括上述装置实施例中的任意一种实现方式所提供的报文处理装置。
本发明实施例提供一种片上系统SoC芯片,该SoC芯片包括上述装置实施例中的任意一种实现方式所提供的报文处理装置、耦合于所述报文处理装置的内部存储器和外部存储器。该SoC芯片,可以由芯片构成,也可以包含芯片和其他分立器件。
本发明实施例提供了一种芯片系统,该芯片系统包括上述装置实施例中的任意一种实现方式所提供的报文处理装置。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存所述报文处理装置在运行过程中所必要或相关的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其它分立器件。
本发明实施例提供一种主机,该主机包括处理器,该处理器用于执行上述装置实施例中的任意一种实现方式所提供的报文处理方法。该主机还可以包括存储器,存储器用于与处理器耦合,其保存主机必要的程序指令和数据。该主机还可以包括通信接口,用于该主机与其它设备或通信网络通信。
本发明实施例提供一种交换机,该交换机包括处理器,该处理器用于执行上述方法实施例中的任意一种实现方式所提供的报文处理方法。该交换机还可以包括存储器,存储器用于与处理器耦合,其保存交换机必要的程序指令和数据。该交换机还可以包括通信接口,用于该交换机与其它设备或通信网络通信。
本发明实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被多核处理器执行时,使得主机可以执行上述方法实施例中任意一项所述的多核处理器的处理方法流程。
本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该计算机程序被主机执行时实现上述方法实施例中任意一项所述的多核处理器的处理方法流程。
本发明实施例提供了一种计算机非瞬态存储介质,包括指令,当所述指令在中间节点上运行时,使得所述中间节点执行上述任一项所述的报文处理方法。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可能可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本申请各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:U盘、移动硬盘、磁碟、光盘、只读存储器(Read-Only Memory,缩写:ROM)或者随机存取存储器(Random Access Memory,缩写:RAM)等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (41)
1.一种报文处理方法,其特征在于,应用于网络设备,所述方法包括:
接收客户端发送的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,以触发所述目标目的地处理所述第一报文。
2.根据权利要求1所述方法,其特征在于,所述根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,包括:
基于目的地信息表和所述目标标识信息,确定所述目标目的地对应的目标路由信息;所述目的地信息表中包括所述N个候选目的地的标识信息与对应的路由信息的映射关系;
基于所述目标路由信息将所述第一报文转发至所述目标目的地。
3.根据权利要求2所述方法,其特征在于,所述接收客户端发送的第一报文之前,所述方法还包括:
接收所述客户端发送的第二报文;所述第二报文中包括流量标识;所述流量标识包括以下信息中的一种或多种:所述第二报文的三元组、五元组、流标签或业务标识;
根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地。
4.根据权利要求3所述方法,其特征在于,所述方法还包括:
基于选择的所述目标目的地获得所述目标标识信息,并将所述目标标识信息添加到所述第二报文中;
将携带所述目标标识信息的所述第二报文发送至所述目标目的地,以触发所述目标目的地生成携带所述目标标识信息的响应报文,所述响应报文为所述第二报文的响应报文。
5.根据权利要求3或4所述方法,其特征在于,所述根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地,包括:
通过查找所述N个候选目的地对应的算力路由表,得到所述N个候选目的地中每个候选目的地的算力信息;
根据所述每个候选目的地的算力信息,从所述N个候选目的地中选择一个作为所述目标目的地;所述算力信息包括对应的候选目的地的当前负载状态信息、网络质量信息中的一种或多种。
6.根据权利要求5所述方法,其特征在于,所述方法还包括:
分别接收所述每个候选目的地发送的算力路由;所述算力路由包括对应的候选目的地的所述算力信息、所述路由信息;
生成所述算力路由表;所述算力路由表中包括所述每个候选目的地的算力信息和所述路由信息。
7.根据权利要求6所述方法,其特征在于,当所述算力信息中还包括对应的候选目的地的标识信息时,所述方法还包括:
根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
8.根据权利要求6所述方法,其特征在于,所述方法还包括:
根据预设算法生成所述每个候选目的地的标识信息,并根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
9.根据权利要求3-8任意一项所述方法,其特征在于,所述方法还包括:
建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标路由信息的映射关系;
接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;
基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标路由信息;
基于所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
10.根据权利要求3-8任意一项所述方法,其特征在于,所述方法还包括:
建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标目的地的所述目标标识信息的映射关系;
接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;
基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标标识信息;
基于所述目标标识信息确定所述目标路由信息,并根据所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
11.根据权利要求1所述方法,其特征在于,所述目标目的地包括多接入边缘计算MEC站点、数据中心、服务器或服务实例中的一种或多种,所述网络设备包括用户侧网络网关、用户入口路由器中的一种或多种。
12.根据权利要求11所述方法,其特征在于,当所述目标目的地包括所述MEC站点或所述数据中心时,所述目标标识信息中包括所述目标目的地的站点选择信息,或所述目标标识信息中包括所述目标目的地的站点选择信息和与所述目的地站点连接的服务器选择信息。
13.根据权利要求11所述方法,其特征在于,当所述目标目的地包括所述服务器或所述服务实例时,所述目标标识信息中包括所述服务器选择信息或所述服务实例选择信息,或者,所述目标标识信息中包括所述服务器选择信息和与所述服务器连接的站点的选择信息,或者,所述目标标识信息中包括所述服务实例选择信息和与所述服务实施连接的站点的选择信息。
14.根据权利要求3-13任意一项所述方法,其特征在于,所述方法还包括:
当所述目标标识信息更新时,更新所述目的地信息表中的所述目标目的地的所述目标标识信息,以及更新所述第一报文中的所述目标标识信息。
15.一种报文处理方法,其特征在于,应用于目标目的地,包括:
接收由网络设备转发的客户端的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别所述目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
处理所述第一报文生成第一响应报文,并向所述客户端发送所述第一响应报文。
16.根据权利要求15所述方法,其特征在于,所述接收由网络设备转发的客户端的第一报文之前,所述方法还包括:
接收由所述网络设备转发的所述客户端的第二报文;所述第二报文中包括由所述网络设备写入的所述目标标识信息;
处理所述第二报文生成第二响应报文,并向所述客户端发送所述第二响应报文;所述第二响应报文中包括所述目标标识信息。
17.根据权利要求15或16所述方法,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息。
18.一种报文处理方法,其特征在于,应用于客户端,包括:
向网络设备发送第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
接收所述目标目的地发送的第一响应报文;所述第一响应报文为所述第一报文的响应报文。
19.根据权利要求18所述方法,其特征在于,所述方法还包括:
向所述网络设备发送第二报文;
接收所述目标目的地发送的第二响应报文;所述第二响应报文为所述第二报文的响应报文;所述第二响应报文中包括所述目标标识信息;
记录下所述目标标识信息,以使得所述第一报文携带上所述目标标识信息。
20.根据权利要求18或19所述方法,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息,所述方法还包括:
记录下所述更新后的目标标识信息,以使得所述第一报文中携带上所述更新后的目标标识信息。
21.一种报文处理装置,其特征在于,应用于第一网络设备,所述装置包括:
第一接收单元,用于接收客户端发送的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
第一处理单元,用于根据所述目标标识信息确定所述目标目的地,并将所述第一报文转发至所述目标目的地,以触发所述目标目的地处理所述第一报文。
22.根据权利要求21所述装置,其特征在于,所述第一处理单元具体用于:
基于目的地信息表和所述目标标识信息,确定所述目标目的地对应的目标路由信息;所述目的地信息表中包括所述N个候选目的地的标识信息与对应的路由信息的映射关系;
基于所述目标路由信息将所述第一报文转发至所述目标目的地。
23.根据权利要求22所述装置,其特征在于,所述装置还包括:
第二接收单元,用于接收所述客户端发送的第二报文;所述第二报文中包括流量标识;所述流量标识包括以下信息中的一种或多种:所述第二报文的三元组、五元组、流标签或业务标识;
第二处理单元,用于根据所述流量标识从所述N个候选目的地中选择一个作为所述目标目的地。
24.根据权利要求23所述装置,其特征在于,所述装置还包括:
第三处理单元,用于基于选择的所述目标目的地获得所述目标标识信息,并将所述目标标识信息添加到所述第二报文中;
所述第三处理单元,还用于将携带所述目标标识信息的所述第二报文发送至所述目标目的地,以触发所述目标目的地生成携带所述目标标识信息的响应报文,所述响应报文为所述第二报文的响应报文。
25.根据权利要求23或24所述装置,其特征在于,所述第二处理单元具体用于:
通过查找所述N个候选目的地对应的算力路由表,得到所述N个候选目的地中每个候选目的地的算力信息;
根据所述每个候选目的地的算力信息,从所述N个候选目的地中选择一个作为所述目标目的地;所述算力信息包括对应的候选目的地的当前负载状态信息、网络质量信息中的一种或多种。
26.根据权利要求25所述装置,其特征在于,所述装置还包括:
第三接收单元,用于分别接收所述每个候选目的地发送的算力路由;所述算力路由包括对应的候选目的地的所述算力信息、所述路由信息;
第四处理单元,用于生成所述算力路由表;所述算力路由表中包括所述每个候选目的地的算力信息和所述路由信息。
27.根据权利要求26所述装置,其特征在于,当所述算力信息中还包括对应的候选目的地的标识信息时,所述装置还包括:
第五处理单元,用于根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
28.根据权利要求26所述装置,其特征在于,所述装置还包括:
第六处理单元,用于根据预设算法生成所述每个候选目的地的标识信息,并根据所述每个候选目的地的标识信息及对应的路由信息生成所述目的地信息表。
29.根据权利要求23-28任意一项所述装置,其特征在于,所述装置还包括:
第七处理单元,用于建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标路由信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;
所述第七处理单元,还用于基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标路由信息;基于所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
30.根据权利要求23-28任意一项所述装置,其特征在于,所述装置还包括:
第八处理单元,用于建立临时会话表,所述临时会话表中包括所述客户端的所述流量标识与对应的所述目标目的地的所述目标标识信息的映射关系;接收所述客户端发送的伪首报;所述伪首报中包括所述流量标识;
所述第八处理单元,还用于基于所述伪首报中的所述流量标识和所述临时会话表,确定所述伪首报中的所述流量标识对应的所述目标标识信息;基于所述目标标识信息确定所述目标路由信息,并根据所述目标路由信息将所述伪首报发送至所述目标目的地,以触发所述目标目的地处理所述伪首报。
31.根据权利要求21所述装置,其特征在于,所述目标目的地包括多接入边缘计算MEC站点、数据中心、服务器或服务实例中的一种或多种。
32.根据权利要求31所述装置,其特征在于,当所述目标目的地包括所述MEC站点或所述数据中心时,所述目标标识信息中包括所述目标目的地的站点选择信息,或所述目标标识信息中包括所述目标目的地的站点选择信息和与所述目的地站点连接的服务器选择信息。
33.根据权利要求21所述装置,其特征在于,当所述目标目的地包括所述服务器或所述服务实例时,所述目标标识信息中包括所述服务器选择信息或所述服务实例选择信息,或者,所述目标标识信息中包括所述服务器选择信息和与所述服务器连接的站点的选择信息,或者,所述目标标识信息中包括所述服务实例选择信息和与所述服务实施连接的站点的选择信息。
34.根据权利要求23-33任意一项所述装置,其特征在于,所述装置还包括:
第一更新单元,用于当所述目标标识信息更新时,更新所述目的地信息表中的所述目标目的地的所述目标标识信息,以及更新所述第一报文中的所述目标标识信息。
35.一种报文处理装置,其特征在于,应用于第二网络设备,包括:
第一接收单元,用于接收由第一网络设备转发的客户端的第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别所述第二网络设备,所述第二网络设备为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
第一处理单元,用于处理所述第一报文生成第一响应报文,并向所述客户端发送所述第一响应报文。
36.根据权利要求35所述装置,其特征在于,所述装置还包括:
第二处理单元,用于接收由所述第一网络设备转发的所述客户端的第二报文;所述第二报文中包括由所述第一网络设备写入的所述目标标识信息;
所述第二处理单元,用于处理所述第二报文生成第二响应报文,并向所述客户端发送所述第二响应报文;所述第二响应报文中包括所述目标标识信息。
37.根据权利要求35或36所述装置,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息。
38.一种报文处理装置,其特征在于,应用于客户端,包括:
第一发送单元,用于向第一网络设备发送第一报文;所述第一报文包括目标标识信息;所述目标标识信息用于识别目标目的地,所述目标目的地为所述第一网络设备从N个候选目的地中为所述客户端选择的目的地;N为大于0的整数;
第一接收单元,用于接收所述目标目的地发送的第一响应报文;所述第一响应报文为所述第一报文的响应报文。
39.根据权利要求38所述装置,其特征在于,所述装置还包括:
第二处理单元,用于向所述第一网络设备发送第二报文;接收所述目标目的地发送的第二响应报文;所述第二响应报文为所述第二报文的响应报文;所述第二响应报文中包括所述目标标识信息;
所述第二处理单元,还用于记录下所述目标标识信息,以使得所述第一报文携带上所述目标标识信息。
40.根据权利要求38或39所述装置,其特征在于,当所述目标标识信息更新时,所述第一响应报文中包括更新后的目标标识信息,所述装置还包括:
第三处理单元,用于记录下所述更新后的目标标识信息,以使得所述第一报文中携带上所述更新后的目标标识信息。
41.一种计算机非瞬态存储介质,其特征在于,包括指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1至20任一权利要求所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111057700.0A CN115801675A (zh) | 2021-09-09 | 2021-09-09 | 一种报文处理方法及相关装置 |
PCT/CN2022/111220 WO2023035836A1 (zh) | 2021-09-09 | 2022-08-09 | 一种报文处理方法及相关装置 |
EP22866310.0A EP4383674A4 (en) | 2021-09-09 | 2022-08-09 | MESSAGE PROCESSING METHOD AND ASSOCIATED DEVICE |
US18/600,035 US20240214301A1 (en) | 2021-09-09 | 2024-03-08 | Packet processing method and related apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111057700.0A CN115801675A (zh) | 2021-09-09 | 2021-09-09 | 一种报文处理方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115801675A true CN115801675A (zh) | 2023-03-14 |
Family
ID=85416978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111057700.0A Pending CN115801675A (zh) | 2021-09-09 | 2021-09-09 | 一种报文处理方法及相关装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240214301A1 (zh) |
EP (1) | EP4383674A4 (zh) |
CN (1) | CN115801675A (zh) |
WO (1) | WO2023035836A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024088199A1 (zh) * | 2022-10-28 | 2024-05-02 | 锐捷网络股份有限公司 | 业务处理方法、系统、存储介质及电子设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247337B (zh) * | 2008-02-18 | 2012-11-21 | 华为技术有限公司 | 一种报文转发的方法和设备 |
US8819275B2 (en) * | 2012-02-28 | 2014-08-26 | Comcast Cable Communications, Llc | Load balancing and session persistence in packet networks |
CN107070983A (zh) * | 2017-01-23 | 2017-08-18 | 天地融科技股份有限公司 | 一种基于地址转发的负载均衡方法、设备和系统 |
CN113824642B (zh) * | 2018-03-09 | 2023-02-03 | 华为技术有限公司 | 发送报文的方法、网络设备及计算机可读存储介质 |
CN112087390B (zh) * | 2019-06-14 | 2022-05-31 | 华为技术有限公司 | 一种网络路由方法及装置 |
CN112491717A (zh) * | 2019-09-12 | 2021-03-12 | 华为技术有限公司 | 一种服务路由方法及装置 |
CN113206877A (zh) * | 2021-04-29 | 2021-08-03 | 工银科技有限公司 | 一种会话保持方法及装置 |
-
2021
- 2021-09-09 CN CN202111057700.0A patent/CN115801675A/zh active Pending
-
2022
- 2022-08-09 EP EP22866310.0A patent/EP4383674A4/en active Pending
- 2022-08-09 WO PCT/CN2022/111220 patent/WO2023035836A1/zh unknown
-
2024
- 2024-03-08 US US18/600,035 patent/US20240214301A1/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024088199A1 (zh) * | 2022-10-28 | 2024-05-02 | 锐捷网络股份有限公司 | 业务处理方法、系统、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2023035836A1 (zh) | 2023-03-16 |
EP4383674A4 (en) | 2024-07-17 |
EP4383674A1 (en) | 2024-06-12 |
US20240214301A1 (en) | 2024-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11929977B2 (en) | System, apparatus and method to support data server selection | |
WO2020259509A1 (zh) | 一种应用迁移方法及装置 | |
CN107925681B (zh) | 用于分布式软件定义网络分组核心系统中的负载平衡的系统和方法 | |
EP2954713B1 (en) | Method and apparatus for reconfiguring a virtual home gateway | |
CN102447618B (zh) | 一种lisp网络中的路由切换方法及其装置 | |
US7711361B2 (en) | Method and system for distributed roaming services for mobile users on wireless mesh networks | |
CN101218796B (zh) | 在无线局域网中支持层3漫游的无线交换机负载平衡的方法、系统和装置 | |
WO2023000935A1 (zh) | 一种数据处理方法、网元设备以及可读存储介质 | |
US9641422B2 (en) | X2 son for LTE networks through automated X2 address discovery | |
US9172722B2 (en) | Method for network access, related network and computer program product therefor | |
JP2020537457A (ja) | 通信システムにおけるデータ・ルーティング | |
JP2020520612A (ja) | パケット伝送方法、エッジデバイス及び機械可読記憶媒体 | |
US11824685B2 (en) | Method for implementing GRE tunnel, access point and gateway | |
CN105874756B (zh) | 控制信令的传输方法及设备 | |
CN105814944A (zh) | 基于显式信令的拓扑发现 | |
US20240214301A1 (en) | Packet processing method and related apparatus | |
US20130336275A1 (en) | Mobile data comunication | |
US20230006917A1 (en) | Route Determining Method and Apparatus and Network Device | |
CN113285877B (zh) | 一种报文转发的控制方法及相关装置 | |
CN110430136B (zh) | 一种基于gtp协议的接口与路由分发方法和装置 | |
EP3897013A1 (en) | Method for accessing local network, and related device | |
JPWO2019240158A1 (ja) | 通信システム及び通信方法 | |
WO2013083037A1 (zh) | 更新报文的处理方法及系统、映射服务器和移动节点 | |
CN108259292B (zh) | 建立隧道的方法及装置 | |
WO2023066207A1 (zh) | 一种通信方法及装置 |
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 |