CN112889029A - 用于网络节点处的无锁通信处理的方法、系统和计算机可读介质 - Google Patents

用于网络节点处的无锁通信处理的方法、系统和计算机可读介质 Download PDF

Info

Publication number
CN112889029A
CN112889029A CN201980067964.9A CN201980067964A CN112889029A CN 112889029 A CN112889029 A CN 112889029A CN 201980067964 A CN201980067964 A CN 201980067964A CN 112889029 A CN112889029 A CN 112889029A
Authority
CN
China
Prior art keywords
message
queue
diameter
network node
messages
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
Application number
CN201980067964.9A
Other languages
English (en)
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.)
Oracle International Corp
Original Assignee
Oracle International Corp
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 Oracle International Corp filed Critical Oracle International Corp
Publication of CN112889029A publication Critical patent/CN112889029A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • 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/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6255Queue scheduling characterised by scheduling criteria for service slots or service orders queue load conditions, e.g. longest queue first
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/627Queue scheduling characterised by scheduling criteria for service slots or service orders policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3018Input queuing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/7453Address table lookup; Address filtering using hashing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/66Policy and charging system

Abstract

公开了用于在网络节点处的无锁通信处理的方法、系统和计算机可读介质。一种方法在被配置为将消息添加到多个队列的第一网络节点处发生,其中所述多个队列中的每个队列由多个线程之一访问。该方法包括:接收与第一移动订户相关联的第一消息;确定第一消息与第一分区键相关联;基于第一分区键,将第一消息指派给所述多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息,并且其中第一队列能够被所述多个线程中的第一线程访问;并且由第一线程以先进先出的次序处理第一队列的消息。

Description

用于网络节点处的无锁通信处理的方法、系统和计算机可读 介质
优先权要求
本申请要求于2018年10月16日提交的美国专利申请序列No.16/162,112的优先权权益,其公开内容通过引用整体并入本文。
技术领域
本文描述的主题涉及网络通信处理。更具体而言,本文描述的主题涉及用于网络节点处的无锁通信处理(lock-free communication processing)的方法、系统和计算机可读介质。
背景技术
网络节点可以接收来自多个用户的大量流量。例如,在电信网络中,策略和收费规则功能(PCRF)服务器可以例如经由多个接口和/或各种网络节点接收对与同一订户相关联的策略规则的多个并发请求。在这个示例中,存在与这些请求相关联的消息可能被无序处理和/或从属或相关的多个消息可能由不同的处理器或节点并行处理的高可能性,这是因为例如根据3GPP标准,一般无法保证远程方的网络元素将按照严格定义的顺序与网络元素交互。当消息被无序处理或相关的多个消息未由同一节点或处理器处理时,会出现中断服务的问题。例如,可能发生竞争状况(例如,涉及共享资源和/或多个线程的定时会产生不准确结果的状况),这会阻止订户接入网络或相关服务。减轻流量处理问题的一种方式是对每个呼叫流实现锁机制,使得给定呼叫流中的消息一直等到对该呼叫流的锁可用为止,从而防止至少一些无序处理事件。但是,基于锁的机制会增加存储器(例如,锁争用开销)要求,并且还会造成难以诊断和解决的其它问题(例如,争用、死锁、饥饿、优先级倒置(priorityinversion)、护航(convoying)等)。
发明内容
公开了用于在网络节点处的无锁通信处理的方法、系统和计算机可读介质。一种方法在被配置为将消息添加到多个队列的第一网络节点处发生,其中多个队列中的每个队列由多个线程之一访问。该方法包括:接收与第一移动订户相关联的第一消息;确定第一消息与第一分区键(partition key)相关联;基于第一分区键,将第一消息指派给多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息,并且其中第一队列能够被多个线程中的第一线程访问;并且由第一线程以先进先出的次序来处理第一队列的消息。
一种系统包括第一网络节点。第一网络节点包括至少一个处理器和存储器。第一网络节点被配置为将消息添加到多个队列,其中多个队列中的每个队列由多个线程之一访问。第一网络节点还被配置为:接收与第一移动订户相关联的第一消息;确定第一消息与第一分区键相关联;基于第一分区键,将第一消息指派给多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息,并且其中第一队列能够被多个线程中的第一线程访问;并且由第一线程以先进先出的次序处理第一队列的消息。
本文描述的主题可以结合硬件和/或固件在软件中实现。例如,本文描述的主题可以在由处理器执行的软件中实现。在一个示例实施方式中,本文描述的主题可以使用其上存储有计算机可执行指令的计算机可读介质来实现,所述计算机可执行指令在由计算机的处理器执行时控制计算机执行步骤。适于实现本文描述的主题的示例计算机可读介质包括非瞬态设备,诸如盘存储器设备、芯片存储器设备、可编程逻辑设备和专用集成电路。此外,实现本文描述的主题的计算机可读介质可以位于单个设备或计算平台上,或者可以分布在多个设备或计算平台上。
如本文所使用的,术语“节点”是指包括一个或多个处理器和存储器的至少一个物理计算平台。
如本文所使用的,术语“功能”或“模块”可以指为了实现本文描述的特征而与硬件和/或固件结合的软件。
附图说明
现在将参考附图解释本文描述的主题,其中:
图1是图示用于在网络节点处的无锁通信处理的示例通信环境的图;
图2是图示涉及路由节点的示例无锁通信处理的图;
图3是图示用于涉及会话标识符的无锁通信处理的示例通信环境的图;
图4是图示策略引擎处的示例无锁通信处理的图;以及
图5是图示用于在网络节点处的无锁通信处理的示例过程的图。
具体实施方式
本文描述的主题涉及用于网络节点处的无锁通信处理的方法、系统和计算机可读介质。在电信网络中,移动订户可以经由各种节点(例如,Diameter路由代理(DRA)、策略和收费执行功能(PCEF)服务器、在线收费功能(OCF)、应用服务器(AS)、移动性管理实体(MME)、归属订户服务器(HSS)、用户数据储存库(UDR)等))和/或接口(例如,Gx、Rx、Sh、S9、Sy等)发起或触发对网络节点的多个同时或并发请求。为了防止或减轻竞争状况或其它消息处理错误或问题(例如,消息被无序处理),可以使用各种技术或机制。处理或减轻涉及来自同一移动订户的同时请求的竞争状况的一种示例技术可以包括基于订户标识符的锁机制。在这个示例中,基于订户标识符的锁机制可以在组件或逐跳级别(hop-by-hop level)而不是在端到端级别工作。即,对于在处理请求时涉及的组件管道中的每个组件(例如,Diameter端点、Diameter后端、Diameter平衡器、数据库插件组件、Diameter管理器、策略引擎以及返回Diameter管理器),可以获得锁,请求或请求的一部分可以由该组件处理,然后可以释放锁。虽然可以使用基于订户标识符的锁机制或其它基于锁的机制来帮助缓解竞争状况,但是此类机制不能保证数据一致性或有序的处理(例如,当考虑到多个组件交织在不同线程中时),相关联的多个请求可能被并发地处理。而且,基于锁的机制一般会增加存储器(例如,锁争用开销)要求,并且还会造成难以诊断和解决的其它问题(例如,争用、死锁、饥饿、优先级倒置、护航等)。
根据本文描述的主题的一些方面,公开了用于网络节点处的无锁通信处理的技术、方法、系统和/或机制。例如,根据本文描述的方面的网络节点可以被配置为将消息添加到多个队列,其中多个队列中的每个队列被多个线程之一访问(例如,每个队列可以仅被单个线程访问)。在这个示例中,网络节点还可以(例如,经由适当的编程)被配置为用于:接收与第一移动订户相关联的第一消息;确定第一消息与第一分区键相关联;基于第一分区键,将第一消息指派给多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息,并且其中第一队列能够被多个线程中的第一线程访问;并且由第一线程按照先进先出(FIFO)的次序处理第一队列的消息。
有利的是,通过使用无锁通信处理技术和/或系统,网络节点(例如,信号传送点)可以有效地缓解竞争状况和/或其它处理问题,同时还避免了与基于锁的系统相关联的问题,例如,死锁、饥饿和/或锁开销存储器要求。
现在将详细参考本文描述的主题的各种实施例,其示例在附图中示出。在所有附图中,将尽可能使用相同的附图标记表示相同或相似的部分。
图1是图示用于在网络节点处的无锁通信处理的示例通信环境100的图。在一些实施例中,通信环境100可以包括与演进型分组核心(EPC)网络、长期演进(LTE)网络、LTE高级网络、Diameter网络、第四代(4G)网络、第三代(3G)网络和/或另一种网络相关联的一个或多个节点。
通信环境100可以包括路由节点(RN)104、策略引擎(PE)108以及多个其它网络节点,例如,用户装备(UE)、(一个或多个)HSS、(一个或多个)MME、(一个或多个)PCEF、(一个或多个)AS等。例如,环境100中的各个节点可以使用Diameter和/或其它协议进行通信。Diameter是用于计算机网络的认证、授权和计费协议。Diameter应用通过添加新的命令和/或属性(例如,与可扩展认证协议(EAP)一起使用的命令和属性)来扩展基本协议。典型的Diameter分组包括Diameter报头和可变数量的属性-值对(AVP),用于封装与Diameter消息相关的信息。
RN 104可以表示用于接收、处理、路由和/或丢弃消息的任何合适的一个或多个实体(例如,在至少一个处理器、一个或多个计算平台等上执行的软件),所述消息诸如是互联网协议(IP)消息、传输控制协议(TCP)消息、Diameter消息、超文本传输协议(HTTP)消息和其它消息。例如,RN 104可以包括或表示多协议路由代理(MRA)、IP路由器、IP交换机、LTE信令路由器、Diameter信令路由器、Diameter代理服务器、Diameter代理、Diameter路由代理、Diameter中继代理、Diameter翻译代理或Diameter重定向代理。RN 104可以包括用于处理和/或路由各种消息的功能性。在一些实施例中,这样的功能性可以被包括在一个或多个模块(例如,会话路由模块)中。
RN 104可以包括用于接收、处理和/或交换或路由各种消息的功能性,并且可以包括用于与各种节点通信的各种通信接口102,例如,第三代合作伙伴计划(3GPP)LTE通信接口以及其它(例如,非LTE)通信接口。用于与各种节点通信的一些示例通信接口102可以包括IP接口、TCP接口、UDP接口、HTTP接口、RDP接口、SCTP接口、RTP接口、Diameter接口、LTE接口和/或IMS接口中的一个或多个。一些示例Diameter接口可以包括Gx、Rx、S9、Sd、Sx、Sy和Sh。
在一些实施例中,RN 104可以包括用于执行本文描述的功能的硬件(例如,处理器和存储器)以及软件。RN 104的示例处理器可以包括物理处理器、通用微处理器、单核处理器、多核处理器、现场可编程门阵列(FPGA)和/或专用集成电路(ASIC)中的至少一种。在一些实施例中,RN 104和/或相关处理器可以执行存储在一个或多个非暂态计算机可读介质(诸如随机存取存储器(RAM)或数据存储设备)中的软件。例如,可以将软件加载到存储器结构中以由RN 104的处理器执行。在这个示例中,在其上执行的一些处理器或线程可以被配置为独立于在其上执行的其它处理器或线程而进行操作。
在一些实施例中,RN 104可以包括分区键指派器(PKA)106。PKA 106可以表示用于确定和/或向消息指派分区键和/或在消息中插入分区键的任何合适的实体(例如,在一个或多个处理器处执行的软件)。例如,可以经由来自网络运营商的一个或多个指令来配置RN104,以生成分区键并在要被路由或发送到特定网络节点(例如,PE 108)的一些或所有消息中插入分区键。在这个示例中,RN 104可以被配置为使用散列算法和/或订户相关信息来生成用于消息的分区键,其中该分区键是可用于确定如何将消息指派给消息处理队列的值(例如,可由PE 108或相关实体使用)。可以用于生成分区键的示例订户相关信息可以包括会话标识符、序列号、E.164号、国际移动订户身份(IMSI)和/或移动台综合业务数字网(MSISDN)号。
在一些实施例中,作为分区键是散列值的情况的替代,分区键可以是一个或多个与订户相关的标识符,而几乎没有修改。在这样的实施例中,PE 108或相关实体可能必须执行如下所述的附加步骤,以识别用于消息处理的适当队列。例如,在分区键不容易映射到队列的情况下(例如,分区键不是散列输出而是IMSI或其它与订户相关的标识符),PE 108或相关实体可以通过使用散列算法来识别适当的队列,在该散列算法中输入分区键,并且其中散列算法被设计为输出唯一地识别PE 108处的队列的值。
PE 108可以表示用于生成策略信息和/或向环境100中的各个节点提供策略信息的一个或多个合适的实体(例如,一个或多个计算平台或设备)。例如,PE 108可以能够接收、处理和响应与策略相关的消息。在一些实施例中,PE 108可以包括多媒体策略引擎(MPE)和/或策略和收费规则功能(PCRF)。例如,PE 108可以是3GPP策略收费控制(PCC)体系架构的一部分。在这个示例中,PCC元素可以提供访问、资源和服务质量(QoS)控制。
在一些实施例中,PE 108可以包括用于执行本文描述的功能的硬件(例如,处理器和存储器)以及软件。PE 108的示例处理器可以包括物理处理器、通用微处理器、单核处理器、多核处理器、FPGA和/或ASIC中的至少一种。在一些实施例中,RN 104和/或相关处理器可以执行存储在一个或多个非暂态计算机可读介质(诸如数据存储装置114)中的软件。例如,可以将软件加载到存储器结构中,以供PE 108的处理器执行。在这个示例中,在其上执行的一些处理器或线程可以被配置为独立于在其上执行的其它处理器或线程而进行操作。
在一些实施例中,PE 108可以包括执行与策略相关的动作的一个或多个处理器。在一些实施例中,PE 108可以在分布式计算系统或一个或多个计算机的任何适当的系统中实现。例如,PE 108可以在包括一个或多个处理器刀片的计算平台上实现,每个刀片实现PCRF或其它功能。
在操作中,PE 108可以实时或接近实时地起作用以确定移动网络中的策略规则。PE 108可以在网络核心处操作并且以集中的方式访问用户信息和其它专用功能。PE 108可以实时或接近实时地将信息聚合到移动网络、操作支持系统以及其它源或聚合来自移动网络、操作支持系统以及其它源的信息,这对于创建规则和自动为在移动网络上处于活动状态的每个用户做出策略决策可以是有用的。通过使用PE 108,移动网络可以提供多种服务、QoS级别和收费规则。
在一些实施例中,PE 108可以提供实时或接近实时地管理网络和用户策略两者的能力。例如,PE 108可以高效且动态地路由网络通信并对其进行优先级化(prioritize)。PE108还可以基于设备、网络、位置和账单数据中的一个或多个来提供用户上下文的统一视图。例如,PE 108可以向收入保证和带宽管理提供关键输入。
PE 108可以包括(一个或多个)组件管线118,或者可通信地耦合到(一个或多个)组件管线118。(一个或多个)组件管线118可以表示用于处理与策略相关的请求或其它消息和/或用于执行相关动作的任何合适的一个或多个实体(例如,一个或多个计算平台或设备)。在一些实施例中,(一个或多个)组件管线118可以表示PE 108内或通信耦合到PE 108的各种模块或功能。在一些实施例中,(一个或多个)组件管线118可以表示PE 108外部的节点或功能。(一个或多个)组件管线118可以包括处置或处理串行或链状(chain-like)派系中的Diameter消息的组件。例如,线程可以通过将Diameter消息发送到第一组件以进行处理来处理该Diameter请求,第一组件可以在将该Diameter消息发送到第二组件进行处理之前处理该Diameter消息,依此类推。在这个示例中,不同的消息可以要求(一个或多个)组件管线118中的不同组件,并且所需组件的次序可以根据正被处理的消息而变化。(一个或多个)组件管线118的示例组件可以包括Diameter端点、Diameter后端、Diameter平衡器、数据库插件组件或Diameter管理器。
在一些实施例中,PE 108可以包括负载平衡器110、用于消息处理的多个队列112以及数据存储装置114。负载平衡器110可以表示用于将消息分发和/或指派给多个队列112之一的任何合适的实体(例如,在一个或多个处理器处执行的软件)。例如,PE 108或负载平衡器110可以检查在输入/输出(I/O)层处(例如,在单个通用TCP或SCTP消息队列处)接收到的消息(例如,来自RN 104的消息),并且可以基于调度算法(例如,负载平衡算法)和/或消息数据来确定如何将这些消息分发到队列112以供进一步处理。在这个示例中,假设Diameter消息是通过TCP或SCTP分组发送的,那么PE 108或负载平衡器110可以在将Diameter消息指派给队列112之前从接收到的分组中提取这些Diameter消息。
数据存储装置114可以表示用于存储与负载平衡或调度消息处理相关联的数据的任何合适的一个或多个实体。在一些实施例中,数据存储装置114可以包括用于存储分区键和所指派的队列之间的关联性的数据存储库116(例如,数据表或其它数据结构)。例如,在将消息指派给队列之后并且如果对应的分区键尚未在数据存储库116中,那么PE 108或负载平衡器110可以更新数据存储库116以指示该分区键与那个队列相关联。在这个示例中,PE 108或负载平衡器110可以使用来自接收到的消息的分区键作为查找值来检查数据存储库116,以确定接收到的消息是否已经与队列相关联。在一些实施例中,数据存储装置114还可以包括用于关联其它消息数据、分区键和/或队列的附加数据和/或数据存储库。例如,数据存储装置114可以包括数据存储库116(例如,数据表或其它数据结构),用于存储订阅的相关标识符和所指派的队列之间的关联性和/或订阅的相关标识符和所指派的分区键之间的关联性。
在一些实施例中,PE 108和/或另一个网络节点可以(例如,经由适当的编程)被配置为用于执行无锁通信处理或其相关方面。例如,PE 108可以被配置为执行多个线程,以处理经由RN 104和/或从各种网络节点接收到的消息。在这个示例中,队列112当中的每个队列可以被指派给单个线程,其中相关消息(例如,与特定订户相关联的消息)被添加到同一队列。继续这个示例,通过使每个线程以FIFO次序处理来自该线程的(一个或多个)相应队列的消息,相关的多个消息以串行次序被处理。照此,无需PE 108处的基于锁的消息处理技术,可以实现无锁通信处理,其缓解竞争状况和/或其它消息处理问题(例如,消息被无序处理)。
在一些实施例中,示例无锁通信处理技术可以涉及用于处理消息的多个线程N和用于存储或保存供处理的消息的多个队列M,其中M和N均表示整数,并且M大于或等于N。在一些实施例中,每个线程可以被配置为访问相同数量的队列。例如,假设M等于10并且N等于5,那么每个线程可以被指派为利用两个不同的队列。在一些实施例中,线程可以被配置为访问不同数量的队列。例如,假设M等于10并且N等于4,那么一个线程可以被指派为利用一个队列,而其它线程每个可以被指派三个不同的队列。
在一些实施例中,一种或多种调度算法可以被用于将消息指派给队列112以在PE108或另一个网络节点处进行消息处理。例如,可以使用混合的基于亲和性和负载平衡的调度算法来将消息指派给PE 108处的队列112。在这个示例中,调度算法可以使用一个或多个键(例如,分区键、与订户相关的标识符和/或消息数据)来识别相关的消息(例如,与同一移动订户相关联的消息或作为同一会话或流程的一部分的多个消息)。如果接收到的消息与队列相关联(例如,存储在消息中的分区键已经指派给队列),那么接收到的消息将被指派给该相同队列。照此,调度算法可以表现出针对相关消息的队列亲和性。继续该示例,调度算法可以(例如,经由一种或多种各种算法进行负载平衡,诸如加权轮循或加权最小负载)分发不与队列112当中的队列相关联的消息(例如,来自刚刚登录到移动网络的移动订户的Diameter会话创建请求)。通过使用上述混合的基于亲和性和负载平衡的调度算法或类似的调度算法,相关的多个消息可以被指派给同一队列,而不相关消息可以跨所有队列112被指派(例如,负载平衡),从而允许队列内的、相关的多个消息以预期次序(例如,FIFO次序)被顺序地处理,同时允许队列间的、不相关的多个消息被并发地(例如,并行地)处理。
在一些实施例中,在被PE 108或相关实体接收之前,消息可以被RN 104或PKA 106处理,使得消息包括分区键或其它信息,该分区键或其它信息用于指示PE 108处的用于进行消息处理的适当队列。例如,RN或PKA 106可以接收与移动订户相关联的Diameter请求消息,并且可以基于Diameter请求消息中与订户相关的标识符(例如,IMSI或E.164号)来确定分区键。在这个示例中,RN 104或PKA 106可以将分区键添加到Diameter请求消息中(例如,在报头字段中或在AVP中)。
在一些实施例中,在PE 108或另一个网络节点处配置无锁通信处理可以涉及向环境100中的各个节点提供配置信息。例如,可以使用一个或多个AVP在Diameter消息或其它消息中提供与无锁通信处理相关的配置信息。
表1至于表3包括示例分区键AVP数据。每个表都可以包括有关与不同节点或作用范围(例如,用途)相关的设置和/或键的信息。表1包括可以与公共的用途(例如,不是特定于节点的用途)相关的分区键AVP数据。具体地,表1提供了以下键的键名、描述和默认值:“Diameter.Partition.Enabled”键、“Diameter.Partition.Stateless”键、“Diameter.Partition.Applications”键、“Diameter.Partition.Commands”键和“Diameter.Partition.Debug”键。
Figure BDA0003021112330000111
Figure BDA0003021112330000121
表1-分区键AVP数据–公共的作用范围
表2包括可以与(例如,由RN 104)路由节点用途相关的分区键AVP数据。具体地,表2提供了“Diameter.Partition.Enabled”键的键名、描述和默认值。
Figure BDA0003021112330000122
表2-分区键AVP数据–路由节点作用范围
表3包括可以与策略引擎(例如,PE 108)用途相关的分区键AVP数据。具体地,表3提供了以下键的键名、描述和默认值:“Diameter.Partition.Applications”键、“Diameter.Partition.KeyTag”键和“Diameter.Partition.BufferImpl”键。
Figure BDA0003021112330000123
Figure BDA0003021112330000131
表3-分区键AVP数据–策略引擎作用范围
将认识到的是,图1是出于说明性目的,并且以上关于图1描述的各种节点和/或模块、位置和/或功能性可以被改变、更改、添加或移除。
图2是图示涉及RN 104的示例无锁通信处理的图。在一些实施例中,PE 108可以接收具有与无锁通信处理技术或系统相关联的分区键或相关AVP的Diameter消息,并且可以基于这些分区键或相关AVP将Diameter消息指派给队列。在这样的实施例中,在PE 108接收到Diameter消息之前,可以由RN 104或相关实体(例如,PKA 106)将分区键或相关AVP插入到Diameter消息中。
参考图2,RN 104可以能够从多个节点并经由多个通信接口102接收Diameter消息。在一些实施例中,RN 104或PKA 106可以被配置为在接收到的Diameter消息中检查各种信息(例如,IMSI、E.164号、序列号等),并且可以在用分区键标签或标记Diameter消息时使用这个信息(例如,通过在将Diameter消息发送给PE 108之前在Diameter消息中插入相关AVP)。在这样的实施例中,PE 108可以使用分区键和/或负载平衡算法来确定将Diameter消息指派给哪个队列。
在步骤2001中,RN 104可以接收包含IMSI或其它订户相关标识符(例如,E.164号码)的Diameter消息。例如,可以从MME,HSS,PCEF或另一个节点接收Diameter消息。
在步骤2002中,RN 104可以确定与订户相关标识符相关联的分区键并将分区键插入到Diameter消息中,或者可以标记Diameter消息,使得PE 108可以确定用于接收Diameter消息的适当的队列。例如,RN 104或相关实体(例如,PKA 106)可以由网络运营商或其它实体配置为使用存储在Diameter消息中的与特定订户相关的标识符作为分区键的基础。在这个示例中,RN 104或相关实体可以使用Diameter消息中的与订户相关的标识符来确定分区键。继续这个示例,可以通过散列算法来确定分区键,使得包含相同的订户相关标识符的Diameter消息始终被指派给多个队列当中的同一队列以用于消息处理。
在步骤2003中,RN 104可以将包含分区键的Diameter消息发送到PE 108以进行处理。
在步骤2004中,PE 108可以接收Diameter消息并且可以基于分区键和/或负载平衡算法为Diameter消息确定适当的队列。例如,PE 108可以通过查询数据存储库116来尝试确定与该分区键相关联的先前的Diameter消息是否被指派了队列。在这个示例中,如果分区键已经被指派给队列,那么PE 108可以将该Diameter消息添加到该队列。继续这个示例,如果尚未将分区键指派给队列,那么PE 108可以使用负载平衡算法(例如,加权轮询方法、随机方法、最小连接方法等)来为该Diameter消息选择队列并且可以将这个队列指派结果添加到数据存储库116以供后续使用。
在步骤2005中,PE 108可以将Diameter消息添加到在步骤2004中确定的队列。
在一些实施例中,与PE 108的处理器相关联的线程可以以FIFO次序或某种其它次序(例如,基于优先级的次序)来处理队列中的消息。
将认识到的是,图2是出于说明性目的,并且可以使用不同的和/或附加的消息、节点和/或动作。还将认识到的是,本文描述的各种消息和/或动作可以以不同的次序或顺序发生。例如,在PE 108执行PKA功能的实施例中,PE 108或相关实体可以接收缺少分区键的Diameter消息,并且可以在接收之后使用IMSI或其它消息数据来确定分区键和/或用于进行处理的适当的队列。
图3是图示用于涉及会话标识符的无锁通信处理的示例通信环境300的图。在一些实施例中,通信环境300可以类似于通信环境100,并且可以包括PE 108、RN 104和/或上述其它网络节点。例如,通信环境300可以包括与EPC网络、LTE网络、LTE高级网络、Diameter网络、4G网络、3G网络和/或另一个网络相关联的一个或多个节点。
通信环境300可以包括服务器302。服务器302可以表示能够经由RN 104或者直接地(例如,无需穿越RN 104)与PE 108通信的任何合适的一个或多个实体(例如,在至少一个处理器、一个或多个计算平台等上执行的软件)。例如,服务器302可以是应用服务器、用户数据储存库(UDR)或在线收费系统(OCS)。在一些实施例中,PE 108与服务器302之间的通信可以利用一个或多个Diameter接口(例如,Gx、Rx、S9、Sd、Sx、Sy或Sh)和/或其它接口。
在一些实施例中,PE 108可以通过接收和/或发送缺少分区键和/或缺少IMSI或E.164号的Diameter消息或其它消息来与服务器302通信。在这样的实施例中,PE 108或相关实体(例如,负载平衡器110)可以利用包含会话标识符和分区键之间的关联性的数据存储库304。例如,PE 108可以接收或生成不具有分区键或相关分区键标签(例如,IMSI)的消息。在这个示例中,PE 108或相关实体可以通过使用与消息相关联的会话标识符来查询数据存储库304以识别与消息相关的分区键。如果找到与会话标识符相关联的分区键,那么PE108或相关实体可以将该消息添加到与该分区键对应的队列。如果未找到与会话标识符相关联的分区键,那么PE 108或相关实体可以将消息添加到负载平衡算法(例如,最少使用算法或轮询算法)所确定的队列。
将认识到的是,图3是出于说明性目的,并且以上关于图3描述的各种节点和/或模块、位置和/或功能可以被改变、更改、添加或移除。
图4是图示在PE 108处的示例无锁通信处理的图。在一些实施例中,PE 108可以发起和/或发送不具有与无锁通信处理技术或系统相关联的分区键或相关AVP的Diameter消息。在这样的实施例中,PE 108或相关实体可以被配置为确定其它消息相关数据(例如,会话标识符)是否可以指示要使用的适当队列。
参考图4,PE 108可以经由Diameter Sy接口和/或其它接口与OCS 400通信。OCS400可以表示用于监视策略使用和/或相关收费信息的任何合适的实体。例如,OCS 400可以维护用于指示用户或相关设备剩余多少开销(spending)或信用(credit)的策略计数器。在这个示例中,PE 108或另一个实体可以向OCS 400发送Diameter请求(例如,开销限制请求(SLR)消息或开销状态通知请求(SNR)消息)。继续这个示例,OCS 400可以用指示所请求的开销信息的Diameter消息(例如,开销限制应答(SLA)消息或开销状态通知应答(SNR)消息)进行响应。
在步骤4001中,PE 108可以确定与会话标识符相关联的分区键。例如,PE 108或相关实体可以访问数据存储库304并基于会话标识符来识别分区键。在这个示例中,会话标识符可以与PE 108要向OCS 400查询收费信息的流有关。
在步骤4002中,PE 108可以生成与会话标识符相关联的Diameter Sy请求(例如,Diameter SNR消息),并且可以将Diameter Sy请求添加到与步骤4001中所确定的分区键对应的队列。
在步骤4003中,PE 108可以将Diameter Sy请求发送到OCS 400以进行处理。
在步骤4004中,OCS 400可以生成Diameter Sy应答(例如,Diameter SNA消息)向PE 108发送Diameter Sy应答,例如直接地或经由RN 104。
在步骤4005中,PE 108可以确定与Diameter Sy应答中的会话标识符相关联的分区键。
在步骤4006中,PE 108可以将Diameter Sy应答添加到与步骤4005中所确定的分区键对应的队列。
在一些实施例中,与PE 108的处理器相关联的线程可以以FIFO次序或某种其它次序来处理步骤4006的队列中的消息。
在一些实施例中,PE 108可以在Diameter Sy请求中包括分区键(例如,在相关的AVP内),并且OCS 400可以被配置为在Diameter Sy应答中包括该分区键。在这样的实施例中,PE 108或相关实体可以检查消息以确定分区键和要使用的对应的队列,例如,从而代替使用会话标识符来查询数据存储库304。
将认识到的是,图4是用于说明性目的,并且可以使用不同和/或附加的消息、节点和/或动作。还将认识到的是,本文描述的各种消息和/或动作可以以不同的次序或顺序发生。例如,当与其它节点(例如,HSS、应用服务器和/或UDR)通信时,可以执行涉及会话标识符的类似数据存储库查找。
图5是图示用于在网络节点处的无锁通信处理的示例过程500的图。在一些实施例中,本文描述的示例过程500或其部分可以在PE 108、RN 104和/或一个或多个模块或节点处执行或由其执行。
参考示例过程500,在步骤502中,可以接收与第一移动订户相关联的第一消息。例如,可以经由RN 104从PCEF向PE 108发送Diameter信用控制请求(CCR)消息。在这个示例中,Diameter CCR消息可以包括与特定订户相关联的IMSI。
在步骤504中,可以确定第一消息与第一分区键相关联。例如,PE 108或相关实体可以检查Diameter消息中的分区AVP,该分区AVP包含指示该消息应当被指派给多个队列中的哪个队列的分区键。
在一些实施例中,确定第一消息与分区键相关联可以包括使用会话标识符作为查找值来查询包含会话标识符和分区键之间的关联性的数据结构(例如,数据存储库304)。例如,在生成或接收到不具有分区键或相关标签(例如,IMSI)的消息的情况下,PE 108或相关实体可以查询数据存储库304以确定会话标识符是否与分区键相关联。在这个示例中,如果会话标识符与分区键相关联,那么PE 108或相关实体可以将消息指派给和/或将消息添加到与该分区键对应的队列。继续这个示例,如果会话标识符不与分区键相关联,那么PE 108或相关实体可以将消息指派给和/或将消息添加到负载平衡算法(例如,最少使用算法或轮询算法)所确定的队列中。
在一些实施例中,第一消息可以包括Diameter消息、Diameter Gx消息、DiameterS9消息、Diameter Sh消息、Diameter Sx消息、Diameter Sy消息、Diameter Rx消息、Diameter CCR消息或Diameter重新验证请求(RAR)消息。
在步骤506中,可以基于第一分区键将第一消息指派给多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息并且其中第一队列能够被多个线程中的第一线程访问。例如,在输入/输出级别,PE 108可以接收包含与第一队列相关联的分区键的消息,照此,PE 108可以将该消息指派并将其添加到第一队列,其中可以以FIFO方式对该消息进行处理。
在步骤508中,第一队列的消息可以由第一线程以FIFO次序处理。例如,线程可以正在PE 108的处理器上执行。在这个示例中,线程可以被配置为访问多个队列中的一个队列以获得用于处理的消息,其中线程以FIFO的方式处理来自队列的消息。
在一些实施例中,在通过第一线程处理第一队列的消息之后、之前或并发地,网络节点(例如,PE 108)可以被配置为:接收与第二移动订户相关联的第二消息;确定第二消息不与分区键或对应队列相关联;使用负载平衡算法,将第二消息指派给多个队列中的第二队列,其中第二队列能够被多个线程中的第二线程访问;并且由第二线程以FIFO次序处理第二队列的消息。
在一些实施例中,可以使用存储在第一消息中的与订户相关的标识符来确定第一分区键。例如,与订户相关的标识符可以包括会话标识符、序列号、E.164号、IMSI或MSISDN。
在一些实施例中,在第一消息被第一网络节点接收之前,第一分区键可以被第二网络节点存储在第一消息中。在一些实施例中,第一网络节点可以包括PCRF、MPE或PE 108。在一些实施例中,第二网络节点可以包括RN 104,例如,MRA和/或DRA。例如,RN 104可以确定消息的分区键,并且可以在将消息路由或转发到PE 108之前将分区键插入消息的报头部分中。
将认识到的是,虽然已经参考与Diameter相关的网络节点(例如,RN 104和PE108)讨论了本文描述的主题的一些方面,但是各种其它网络节点可以利用本文描述的主题的一些方面。例如,从用户或订户接收多个消息的任何网络节点可以使用本文描述的特征、机制和/或技术来执行无锁通信处理。
应当注意的是,本文描述的PE 108、RN 104和/或功能性可以构成专用计算设备,例如,电信网络节点。另外,本文描述的PE 108、RN 104和/或功能性可以改善通信处理的技术领域。例如,通过使用无锁通信处理技术和/或系统,网络节点(例如,信号传送点)可以有效地缓解竞争状况和/或其它处理问题,同时还避免与基于锁的系统相关联的问题,例如,死锁、饥饿和/或锁开销存储器要求。
将理解的是,在不脱离本文描述的主题的范围的情况下,可以改变本文描述的主题的各种细节。此外,前述描述仅出于说明的目的,而非出于限制的目的。

Claims (20)

1.一种用于网络节点处的无锁通信处理的方法,所述方法包括:
在被配置为将消息添加到多个队列的第一网络节点处执行以下操作,其中所述多个队列中的每个队列由多个线程之一访问:
接收与第一移动订户相关联的第一消息;
确定第一消息与第一分区键相关联;
基于第一分区键,将第一消息指派给所述多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息,并且其中第一队列能够被所述多个线程中的第一线程访问;以及
由第一线程以先进先出的次序处理第一队列中的消息。
2.如权利要求1所述的方法,包括:
接收与第二移动订户相关联的第二消息;
确定第二消息不与分区键或对应的队列相关联;
使用负载平衡算法,将第二消息指派给所述多个队列中的第二队列,其中第二队列能够被所述多个线程中的第二线程访问;以及
由第二线程以先进先出次序处理第二队列中的消息。
3.如权利要求1或权利要求2所述的方法,其中,确定第一消息与分区键相关联包括:使用会话标识符作为查找值,查询包含会话标识符和相关分区键之间的关联性的数据结构。
4.如前述权利要求中的任一项所述的方法,其中,第一消息包括Diameter消息、Diameter Gx消息、Diameter S9消息、Diameter Sh消息、Diameter Sx消息、Diameter Sy消息、Diameter Rx消息、Diameter信用控制请求消息或Diameter重新认证请求消息。
5.如前述权利要求中的任一项所述的方法,其中,第一分区键是使用存储在第一消息中的与订户相关的标识符来确定的。
6.如权利要求5所述的方法,其中,与订户相关的标识符包括会话标识符、序列号、E.164号、国际移动订户身份(IMSI)或移动台综合业务数字网(MSISDN)号。
7.如前述权利要求中的任一项所述的方法,其中,第一分区键是在第一网络节点接收第一消息之前由第二网络节点存储在第一消息中的。
8.如权利要求7所述的方法,其中,第二网络节点包括多协议路由代理或Diameter路由代理。
9.如前述权利要求中的任一项所述的方法,其中,第一网络节点包括策略和收费规则功能、多媒体策略引擎或策略引擎。
10.一种用于在网络节点处进行无锁通信处理的系统,该系统包括:
第一网络节点,包括:
至少一个处理器;以及
存储器,
其中第一网络节点被配置为将消息添加到多个队列,其中所述多个队列中的每个队列由多个线程之一访问,其中第一网络节点还被配置为:
接收与第一移动订户相关联的第一消息;
确定第一消息与第一分区键相关联;
基于第一分区键,将第一消息指派给所述多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息,
并且其中第一队列能够被所述多个线程中的第一线程访问;以及
由第一线程以先进先出的次序处理第一队列中的消息。
11.如权利要求10所述的系统,其中,第一网络节点还被配置为:
接收与第二移动订户相关联的第二消息;
确定第二消息不与分区键或对应的队列相关联;
使用负载平衡算法,将第二消息指派给所述多个队列中的第二队列,其中第二队列能够被所述多个线程中的第二线程访问;以及
由第二线程以先进先出次序处理第二队列中的消息。
12.如权利要求10或权利要求11所述的系统,其中,第一网络节点还被配置为使用会话标识符作为查找值来查询包含会话标识符和相关分区键之间的关联性的数据结构。
13.如权利要求10至12中的任一项所述的系统,其中,第一消息包括Diameter消息、Diameter Gx消息、Diameter S9消息、Diameter Sh消息、Diameter Sx消息、Diameter Sy消息、Diameter Rx消息、Diameter信用控制请求消息、或Diameter重新认证请求消息。
14.如权利要求10至13中的任一项所述的系统,其中,第一分区键是使用存储在第一消息中的与订户相关的标识符来确定的。
15.如权利要求14所述的系统,其中,与订户相关的标识符包括会话标识符、序列号、E.164号、国际移动订户身份(IMSI)或移动台综合业务数字网(MSISDN)号。
16.如权利要求10至15中的任一项所述的系统,其中,第二网络节点被配置为在第一网络节点接收第一消息之前将第一分区键存储在第一消息中。
17.如权利要求16所述的系统,其中,第二网络节点包括多协议路由代理或Diameter路由代理。
18.如权利要求10至17中的任一项所述的系统,其中,第一网络节点包括策略和收费规则功能、多媒体策略引擎或策略引擎。
19.一种非暂态计算机可读介质,包括实施在所述非暂态计算机可读介质中的计算机可执行指令,所述计算机可执行指令在由第一网络节点的至少一个处理器执行时使第一网络节点执行包括以下各项的步骤:
在被配置为向多个队列添加消息的第一网络节点处执行以下操作,其中所述多个队列中的每个队列由多个线程之一访问:
接收与第一移动订户相关联的第一消息;
确定第一消息与第一分区键相关联;
基于第一分区键,将第一消息指派给所述多个队列中的第一队列,其中第一队列包括与第一移动订户相关联的消息,并且其中第一队列能够被所述多个线程中的第一线程访问;以及
由第一线程以先进先出的次序处理第一队列中的消息。
20.如权利要求19所述的非暂态计算机可读介质,其中,确定第一消息与分区键相关联包括:使用会话标识符作为查找值,查询包含会话标识符和相关分区键之间的关联性的数据结构。
CN201980067964.9A 2018-10-16 2019-09-30 用于网络节点处的无锁通信处理的方法、系统和计算机可读介质 Pending CN112889029A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/162,112 US10798609B2 (en) 2018-10-16 2018-10-16 Methods, systems, and computer readable media for lock-free communications processing at a network node
US16/162,112 2018-10-16
PCT/US2019/053911 WO2020081224A1 (en) 2018-10-16 2019-09-30 Methods, systems, and computer readable media for lock-free communications processing at a network node

Publications (1)

Publication Number Publication Date
CN112889029A true CN112889029A (zh) 2021-06-01

Family

ID=68296712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980067964.9A Pending CN112889029A (zh) 2018-10-16 2019-09-30 用于网络节点处的无锁通信处理的方法、系统和计算机可读介质

Country Status (5)

Country Link
US (1) US10798609B2 (zh)
EP (1) EP3867750A1 (zh)
JP (1) JP7270036B2 (zh)
CN (1) CN112889029A (zh)
WO (1) WO2020081224A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113422680A (zh) * 2021-06-02 2021-09-21 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 数据加密传输系统和数据加密传输方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582268B2 (en) * 2018-11-14 2023-02-14 Lenovo (Singapore) Pte. Ltd. Establishing a connection with a dual registered device
US11055027B1 (en) * 2019-11-15 2021-07-06 Rapid7, Inc. Dynamic queue management
US11240303B2 (en) * 2019-12-02 2022-02-01 Microsoft Technology Licensing, Llc Processing and ordering messages in partitions
CN114338540B (zh) * 2022-03-17 2022-07-15 上海国微思尔芯技术股份有限公司 信号分流方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110202660A1 (en) * 2010-02-18 2011-08-18 Alcatel-Lucent Canada Inc. Diverse source message association
US20160191363A1 (en) * 2012-05-29 2016-06-30 Openet Telecom Ltd. System and method for managing VoLTE session continuity information using logical scalable units
CN105765921A (zh) * 2013-11-27 2016-07-13 甲骨文国际公司 用于利用软件定义网络(sdn)功能进行diameter路由的方法、系统和计算机可读介质
US20160373348A1 (en) * 2015-06-17 2016-12-22 Oracle International Corporation Methods, systems, and computer readable media for multi-protocol stateful routing
US20170004015A1 (en) * 2015-07-01 2017-01-05 Oracle International Corporation System and method for association aware executor service in a distributed computing environment
US20170318082A1 (en) * 2016-04-29 2017-11-02 Qualcomm Incorporated Method and system for providing efficient receive network traffic distribution that balances the load in multi-core processor systems

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7406524B2 (en) 2001-07-26 2008-07-29 Avaya Communication Isael Ltd. Secret session supporting load balancer
US7633969B2 (en) 2004-09-10 2009-12-15 Tekelec Methods, systems, and computer program products for dynamically adjusting load sharing distributions in response to changes in network conditions
US7844973B1 (en) * 2004-12-09 2010-11-30 Oracle America, Inc. Methods and apparatus providing non-blocking access to a resource
US8566928B2 (en) 2005-10-27 2013-10-22 Georgia Tech Research Corporation Method and system for detecting and responding to attacking networks
JP2007193626A (ja) 2006-01-20 2007-08-02 Brother Ind Ltd コンテンツ配信システム、ノード装置及びその情報処理方法並びにそのプログラム
US8484656B2 (en) 2007-03-12 2013-07-09 Citrix Systems, Inc. Systems and methods for providing global server load balancing of heterogeneous devices
US8284205B2 (en) 2007-10-24 2012-10-09 Apple Inc. Methods and apparatuses for load balancing between multiple processing units
JP4815459B2 (ja) 2008-03-06 2011-11-16 株式会社日立製作所 負荷分散制御サーバ、負荷分散制御方法及びコンピュータプログラム
CN102893556B (zh) 2010-02-12 2016-08-03 泰克莱克股份有限公司 用于源对等体基于容量的Diameter负载共享的方法、系统和设备
US20120192200A1 (en) 2011-01-21 2012-07-26 Rao Jayanth N Load Balancing in Heterogeneous Computing Environments
US8776207B2 (en) 2011-02-16 2014-07-08 Fortinet, Inc. Load balancing in a network with session information
US8737304B2 (en) 2011-03-01 2014-05-27 Tekelec, Inc. Methods, systems, and computer readable media for hybrid session based diameter routing
US9038088B2 (en) 2011-03-10 2015-05-19 Nec Laboratories America, Inc. Load balancing on hetrogenous processing cluster based on exceeded load imbalance factor threshold determined by total completion time of multiple processing phases
US8782645B2 (en) 2011-05-11 2014-07-15 Advanced Micro Devices, Inc. Automatic load balancing for heterogeneous cores
US8787407B2 (en) 2011-10-14 2014-07-22 Alcatel Lucent Processing messages correlated to multiple potential entities
US9161226B2 (en) * 2011-10-17 2015-10-13 Blackberry Limited Associating services to perimeters
US8707314B2 (en) 2011-12-16 2014-04-22 Advanced Micro Devices, Inc. Scheduling compute kernel workgroups to heterogeneous processors based on historical processor execution times and utilizations
CN102624922B (zh) 2012-04-11 2014-08-13 武汉大学 一种网络gis异构集群服务器负载均衡方法
US20130339978A1 (en) 2012-06-13 2013-12-19 Advanced Micro Devices, Inc. Load balancing for heterogeneous systems
US9332053B2 (en) 2012-06-15 2016-05-03 Tekelec, Inc. Methods, systems, and computer readable media for load balancing stream control transmission protocol (SCTP) messages
US9197712B2 (en) 2012-11-30 2015-11-24 At&T Intellectual Property I, L.P. Multi-stage batching of content distribution in a media distribution system
US9900379B2 (en) 2013-04-06 2018-02-20 Citrix Systems, Inc. Systems and methods for startup round robin enhancement
CN104123190B (zh) 2014-07-23 2017-09-19 浪潮(北京)电子信息产业有限公司 异构集群系统的负载均衡方法和装置
US9979656B2 (en) 2015-12-07 2018-05-22 Oracle International Corporation Methods, systems, and computer readable media for implementing load balancer traffic policies
US10681189B2 (en) * 2017-05-18 2020-06-09 At&T Intellectual Property I, L.P. Terabit-scale network packet processing via flow-level parallelization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110202660A1 (en) * 2010-02-18 2011-08-18 Alcatel-Lucent Canada Inc. Diverse source message association
US20160191363A1 (en) * 2012-05-29 2016-06-30 Openet Telecom Ltd. System and method for managing VoLTE session continuity information using logical scalable units
CN105765921A (zh) * 2013-11-27 2016-07-13 甲骨文国际公司 用于利用软件定义网络(sdn)功能进行diameter路由的方法、系统和计算机可读介质
US20160373348A1 (en) * 2015-06-17 2016-12-22 Oracle International Corporation Methods, systems, and computer readable media for multi-protocol stateful routing
US20170004015A1 (en) * 2015-07-01 2017-01-05 Oracle International Corporation System and method for association aware executor service in a distributed computing environment
US20170318082A1 (en) * 2016-04-29 2017-11-02 Qualcomm Incorporated Method and system for providing efficient receive network traffic distribution that balances the load in multi-core processor systems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113422680A (zh) * 2021-06-02 2021-09-21 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 数据加密传输系统和数据加密传输方法

Also Published As

Publication number Publication date
EP3867750A1 (en) 2021-08-25
JP7270036B2 (ja) 2023-05-09
WO2020081224A1 (en) 2020-04-23
US10798609B2 (en) 2020-10-06
JP2022505097A (ja) 2022-01-14
US20200120541A1 (en) 2020-04-16

Similar Documents

Publication Publication Date Title
EP3516833B1 (en) Methods, systems, and computer readable media for discarding messages during a congestion event
JP7270036B2 (ja) ネットワークノードでのロックなし通信処理のための方法、システム、およびコンピュータ読取可能媒体
JP6509219B2 (ja) ソフトウェア定義ネットワーク(SDN)機能性を使用したDiameterルーティングのための方法、システム、およびコンピュータ読取可能媒体
US10574763B2 (en) Session-identifer based TWAMP data session provisioning in computer networks
EP2837147B1 (en) System for performing diameter overload control
JP7190031B2 (ja) 通信システムにおいてアプリケーションごとにポリシルールを実行するための方法およびデバイス
US11871330B2 (en) Transparent session migration between user plane functions
CN108881018B (zh) 用于在diameter信令路由器处路由diameter消息的方法、系统及装置
US20160205041A1 (en) Bandwidth providing method based on multi-flow grouping
US10594734B1 (en) Dynamic per subscriber policy enablement for security platforms within service provider network environments
JP2022532731A (ja) スライスベースネットワークにおける輻輳回避
JP2013501422A (ja) 優先レベルの繰り延べ決定を用いた要求の優先順位のポリシング
US9037729B2 (en) SIP server overload control
CN116097886A (zh) 用于冗余传输的策略控制
US20170034048A1 (en) Methods, systems, and computer readable media for peer aware load distribution
EP4289161A1 (en) Methods, systems, and computer readable media for mitigating denial of service (dos) attacks at network function (nfs)
US11451470B2 (en) Systems and methods for data service request classification and routing
US10103955B2 (en) Methods, systems, and computer readable media for transmitting diameter peer status information
KR102168177B1 (ko) 네트워크 장치 및 이를 이용한 패킷 처리 방법
US20180192362A1 (en) S9 roaming session destination selection

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