CN101689163A - 用于实现网际协议会话网络内可插入策略模块的方法和装置 - Google Patents

用于实现网际协议会话网络内可插入策略模块的方法和装置 Download PDF

Info

Publication number
CN101689163A
CN101689163A CN200780051853A CN200780051853A CN101689163A CN 101689163 A CN101689163 A CN 101689163A CN 200780051853 A CN200780051853 A CN 200780051853A CN 200780051853 A CN200780051853 A CN 200780051853A CN 101689163 A CN101689163 A CN 101689163A
Authority
CN
China
Prior art keywords
policy
module
pluggable
session
policy module
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
CN200780051853A
Other languages
English (en)
Inventor
A·古拉蒂
B·马蒂
A·萨延纳拉亚楠
P·佳吉
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.)
Genband US LLC
Original Assignee
Genband US LLC
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 Genband US LLC filed Critical Genband US LLC
Publication of CN101689163A publication Critical patent/CN101689163A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1076Screening of IP real time communications, e.g. spam over Internet telephony [SPIT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1046Call controllers; Call servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/327Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the session layer [OSI layer 5]
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

在一个实施例中,一种方法包括当在网际协议会话(SoIP)网络内的会话层设备处执行时将可插入策略模块与应用程序相关联。可以在所述会话层设备处从与所述会话层设备进行通信的端点接收策略服务请求。所述方法还包括基于从所述可插入策略模块发送给所述应用程序的策略值来定义会话控制协议信号。所述策略值可以在所述可插入策略模块处基于与所述策略服务请求相关联的输入值来计算。

Description

用于实现网际协议会话网络内可插入策略模块的方法和装置
相关申请
本申请要求共同所有的2006年12月29日提交的美国临时专利申请No.60/882,713和2007年3月30日提交的美国非临时专利申请No.11/694,398的优先权,通过引用将这些申请的全部内容并入本申请。
技术领域
本发明的实施例一般地涉及会话边界控制器策略,并且具体而言,涉及用于实现网际协议会话网络内会话边界控制器的可插入策略模块的方法和装置。
背景技术
可以基于会话边界控制器的特定的用户或系统管理器的偏好来对网际协议会话(SoIP)网络内会话边界控制器的呼叫路由、呼叫允许控制和/或媒体路由进行定制。举例来说,偏好可以使用静态脚本来实现,该静态脚本可以上载到SoIP网络内一个或多个会话边界控制器。举例来说,这些脚本可包括一个或多个用户关于呼叫允许控制的偏好。因为脚本通常集成在会话边界控制器的主应用程序内,修改的脚本(例如,具有修改的特性的脚本)和/或新的脚本在运行时通常不在会话边界控制器上实现。通常,会话边界控制器临时地关闭以在会话边界控制器上实现脚本。因此,存在用于实现会话边界控制器的运行时可插入策略模块的方法和装置的需要。
发明内容
在一个实施例中,一种方法包括当在网际协议会话(SoIP)网络内的会话层设备处执行应用程序时将可插入策略模块与应用程序相关联。可以在所述会话层设备处从与所述会话层设备进行通信的端点接收策略服务请求。所述方法还包括基于从所述可插入策略模块发送给所述应用程序的策略值来定义会话控制协议信号。所述策略值可以在所述可插入策略模块处基于与所述策略服务请求相关联的输入值来计算。
附图说明
图1是示出会话边界控制器的示意图,会话边界控制器配置为根据本发明实施例基于可插入策略模块来建立、控制和/或监测端点之间的会话和/或媒体信令。
图2是示出了策略值的实例的表,根据本发明实施例,响应于包括若干输入值的策略服务请求使用可插入策略模块来计算该策略值。
图3是示出了根据本发明实施例基于可插入策略模块来操作的会话边界控制器的示意图。
图4是示出了策略管理器设备的示意图,策略管理器设备配置为根据本发明实施例管理多个会话边界控制器的多个可插入路由策略模块。
图5是示出了会话边界控制器的示意图,会话边界控制器配置为根据本发明实施例使用可插入策略模块和可插入服务模块来操作。
具体实施方式
图1是示出了会话边界控制器110、120和130的示意图,根据本发明实施例,会话边界控制器110、120和130分别配置为基于可插入策略模块116、126和136来建立建立、控制和/或监测端点150之间的会话(例如,会话控制信令)和/或媒体信令。可以将会话边界控制器(SBC)110、120和130称为会话层设备,会话边界控制器(SBC)110、120和130相互进行通信,例如通过网络140进行通信。网络140可以是无线或有线网络,配置为发送数据和/或媒体内容,例如话音内容和/或视频内容。例如,网络140的一部分可用于建立网际协议会话(SoIP)会话,例如网际协议语音(VoIP)会话或者网际协议媒体(MoIP)会话。举例来说,会话边界控制器110、120和130可以是多协议会话交换设备,配置为使用多于一个的会话控制协议(例如,会话初始化协议(SIP))。
会话边界控制器110、120和130中的每一个与至少一个端点150进行通信。在一些实施例中,会话边界控制器110,120和/或130中的多于一个可以与单个端点150进行通信。在一些可选实施例中,会话边界控制器可以与网络控制器连接,该网络控制器是配置为控制、配置和/或协调会话边界控制器的网络的集中式管理部件。
可插入策略模块116、126和/或136是可用于实现策略(例如偏好、条件)的模块,该策略与会话边界控制器110、120和/或130的多个主要功能中的至少一个相关联。会话边界控制器110、120和/或130的功能包括建立、控制和/或监测会话控制信令(例如,会话)和/或媒体信令,诸如:验证、授权、呼叫允许控制、设备注册、呼叫路由、媒体路由等。在一些实施例中,可插入策略模块116、126和/或136可以配置为实现基于与媒体信号相关联的内容类型(例如,话音、视频)的策略。可插入策略模块126返回的值可称为返回策略值或策略值。
例如,可插入策略模块126可以是可用于在会话边界控制器120上实现呼叫路由策略的可插入路由策略模块。举例来说,当对一个端点150与另一端点150之间的呼叫使用会话控制信号进行路由时,会话边界控制器120可以使呼叫路由(例如,定义会话控制信号)基于通过执行可插入策略模块126而获得的策略值。可插入策略模块116、126和/或136中的每个可用于基于输入值来计算一个或多个策略值,该输入值可以是开放系统互连(OSI)第5层的参数值(例如,会话层参数、会话标识符、中继线组(trunkgroup)标识符、内容类型标识符)和/或OSI第3层参数值。
在一些实施例中,可插入策略模块116、126和/或136是单独编译的(或者可解释的)模块,其可在运行期间插入它们相应的会话边界控制器110、120和/或130中。换言之,可以在将可插入策略模块116、126和/或136与相应的会话边界控制器110、120和/或130进行关联以前对可插入策略模块116、126和/或136进行编译。举例来说,可插入策略模块116、126和/或136可使用面向对象程序设计语言(例如C++)或者解释型程序设计语言(例如Java或Lua)来实现。作为单独的、编译后可执行的(例如,可解释的)模块,可插入策略模块116、126和/或136可以动态地分别链接到会话边界控制器110、120和/或130或者解开与其的链接。换言之,可插入策略模块116、126和/或136可以加载到它们各自的会话边界控制器110、120和/或130,而无需临时地关闭会话边界控制器110、120和/或130。举例来说,可插入策略模块116、126和/或136可以配置为使用阈值条件、对象、库和/或算法的任意组合来实现用户定义的策略。例如,轮询调度算法或者加权公平队列算法可由可插入策略模块(例如可插入策略模块116)来实现,用于将呼叫路由到一个或多个端点150。在一些实施例中,可插入策略模块116、126和/或136可配置为共享对象模块(例如,*.so)或者动态链接库模块(例如,*.dll)。
可插入策略模块116、126和136可以分别配置为响应于会话边界控制器110、120和/或130所定义的内部请求而返回策略值。可以将对策略值的请求称为策略服务请求。例如,可插入策略模块136可以配置为基于从例如与会话边界控制器120通信的端点150、在策略服务请求中接收到的一个或多个输入值(也可称为参数值)来计算一个或多个策略值。如果将多个可插入策略模块(例如,可插入策略模块的库)加载到会话边界控制器,则会话边界控制器(例如会话边界控制器130)可确定(例如选择)执行多个可插入策略模块中的哪些模块以满足该策略服务请求。在一些实施例中,策略服务请求可包括所请求策略值(例如,呼叫允许控制(CAC)相关的策略值)类型的指示符,会话边界控制器110、120和/或130可以基于指示符来执行适当的可插入策略模块。指示符可以作为策略服务请求的输入值包括在策略服务请求中。
举例来说,每个端点150可以是公共交换电话网络(PSTN)、可以向宽带消费者提供网络接入的宽带网络、企业网络、H.323网络、SIP软交换网络或者SIP网络。可替换地,端点150可以是单独的电话/计算机终端或者另一SoIP网络的接入点(例如,另一SBC)。当然,各个端点150可包括上述实例的任意组合。从与端点150通信的单独的会话边界控制器110、120和/或130的角度来看,每一个端点150是一个端点。会话边界控制器110、120和/或130可以配置为将协议从一个端点150转换成与不同的端点150相关联的协议。
图2是示出了策略值225的实例的表200,根据本发明实施例,该策略值是使用可插入策略模块响应于包括若干输入值215的策略服务请求205而计算的。表200包括CAC的值为6,该值是基于策略服务请求P作为策略值225来计算的。策略服务请求P包括时间值13:00以及区域值A。CAC值230是基于可插入策略模块的算法来计算的,当可插入策略模块由会话边界控制器执行时使用输入值215作为参数来进行计算。
在一些实施例中,会话请求(例如,会话控制协议信号)可以基于策略值225来定义,该策略值是使用可插入策略模块来计算的。例如,策略服务请求P可以与特定的端点相关联。举例来说,如果CAC值6满足阈值条件,基于策略服务请求P而计算的CAC值6可以例如触发会话边界控制器来定义与端点相关联的会话控制协议信号。举例来说,会话控制协议信号可以是在端点和另一设备之间建立会话的请求。在一些实施例中,阈值条件可以与可插入策略模块相关联(例如,由可插入策略模块来使用、结合在可插入策略模块的算法中)。
根据本发明实施例,图3是示出了基于可插入策略模块326来操作的会话边界控制器320的示意图。在该实施例中,会话边界控制器320包括会话控制器信令模块322、策略框架模块324以及可插入策略模块326。虽然将模块322、324和326示出为可使用处理器340来执行的软件模块,在一些实施例中,模块322、324和/或326可使用硬件和/或软件的任意组合来实现。会话边界控制器320还包括存储器330,其可由处理器340在执行模块322、324和/或326时使用(例如,存取)。存储器330可以是随机访问存储器(RAM)、虚拟存储器、高速缓存、硬盘驱动器或可移动存储设备(例如,闪存卡)。会话边界控制器320还可包括一个或多个输入端口和/或输出端口,举例来说,用于发送和接收可插入策略模块326、策略服务请求和/或输入值。
会话边界控制器320可以配置为使用模块322、324和326至少部分地建立、控制、触发和/或监测一个或多个端点310之间的会话和/或媒体信令。会话控制器信令模块322是执行会话边界控制器320的功能的模块,举例来说,用于建立、控制和/或监测端点310之间的会话和/或媒体信令。例如,会话控制器信令模块322用于处理从端点310接收到的信号和/或请求。举例来说,会话边界控制器320可以通过会话控制协议信令(例如,第5层信令)来建立、控制、触发和/或监测会话和/或媒体信令。在一些实施例中,举例来说,会话边界控制器320可以定义会话控制协议信号,其可以发送给与例如一个或多个端点(例如,目的地端点,源端点)相关联的另一会话边界控制器(未示出)。
可插入策略模块326是可以在会话边界控制器320的运行时期间执行以基于输入值(例如,OSI第5层参数值)返回一个或多个值的模块。可插入策略模块326可用于实现与会话边界控制器320的至少一个功能相关联的策略(例如,偏好)。策略框架模块324是可以配置为用作会话控制器信令模块322和可插入策略模块326之间接口的模块。
在该实施例中,策略框架模块324可执行可插入策略模块326,以基于一个或多个输入值来获取会话控制器信令模块322的策略值。输入值可由策略框架模块324来接收,并由可插入策略模块326在可插入策略模块326由策略框架模块324来执行时来使用。在一些实施例中,举例来说,输入值是从会话控制器信令模块322处接收的OSI第5层参数值。在其它实施例中,举例来说,输入值是从会话控制器信令模块322处接收的OSI第3层参数值。在又一些其它实施例中,举例来说,输入值可以是从会话控制器信令模块322处接收的OSI第5层参数值和/或OSI第3层参数值。举例来说,会话控制器信令模块322可从端点310接收输入值和/或可以生成输入值。在一些实施例中,会话边界控制器320可以配置为响应于使用可插入策略模块326而计算的策略值来实现或触发第3层路由。
可插入策略模块326可以配置为对输入值进行处理(例如,基于输入值生成或定义策略值),输入值可以是可变长度输入值或者固定长度输入值。可插入策略模块326可以配置为处理无效输入值或空输入值,举例来说,这些输入值可以与会话层参数值字段有关(例如,与OSI第5层相关联)。在一些实施例中,输入值可以与信号控制协议相关联。例如,输入值可以同与会话控制协议相关联的方法和/或头部(header)相关联。在一些实施例中,输入值可以与可扩展会话控制协议(例如SIP)相关联。例如,输入值可以同与会话控制协议的可扩展部分相关联的方法(例如,调用)和/或头部相关联。在一些实施例中,输入值可以同与媒体信号相关联的内容类型相关联。
会话控制器信令模块322可将一个或多个输入值作为策略服务请求中的参数发送给策略框架模块324。例如,来自于会话控制器信令模块322的策略服务请求可具有应用程序编程接口(API)调用的形式,例如“IntPolicyServiceRequest(int PolicyModuleID,InputValue 1,InputValue2,...)”。
策略框架模块324可以执行可插入策略模块326以获取会话控制器信令模块322的策略值,使得会话控制器信令模块322可以执行功能。例如,当会话边界控制器320执行功能(例如,与端点310相关联的呼叫允许控制(CAC)计算)时,可插入策略模块326可由策略框架模块324来执行,策略值可返回到会话控制器信令模块322以完成呼叫允许控制(CAC)计算。在一些实施例中,可插入策略模块326可使用策略框架模块324的策略引擎(未示出)来执行。在一些实施例中,策略框架模块324的功能可以集成到会话控制器信令模块322中,从而不需要单独的模块。
策略框架模块324可以配置为确定输入值(例如,参数的数量和/或类型),输入值可由可插入策略模块326用于计算一个或多个策略值。在执行可插入策略模块326时和/或在将可插入策略作为会话边界控制器320内的模块初始加载时,策略框架模块324可以进行该确定。当可插入策略模块326链接到策略框架模块324时,可插入策略模块326的输入值使用可以由可插入策略模块326来提供,并由策略框架模块324导入。如果适合的话,策略框架模块324可以从会话控制器信令模块322生成、接收和/或获取输入值。
作为可插入策略模块326和会话控制器信令模块322之间的接口,策略框架模块324可以将输入值(如果输入值由可插入策略模块326用来计算策略值)提供给可插入策略模块326。例如,当策略服务请求不包括用来计算策略值的可插入策略模块326的输入值时,策略框架模块324可以拒绝来自于会话控制器信令模块322的策略服务请求。在一些实施例中,策略框架模块324可以分析策略服务请求,并且,如果策略服务请求有缺陷(例如,缺少输入值),可以请求会话控制器信令模块322修改策略服务请求(例如,在策略服务请求中发送另外的输入值)。
在一些实施例中,除了可插入策略模块326,会话边界控制器320可以包括多于一种类型的可插入策略模块(未示出)。策略服务请求可以配置为基于与加载到会话边界控制器320的每类可插入策略模块相关联的钩子点(hook point),来调用特定类型的可插入策略模块进行执行。例如,如果会话边界控制器320包括可插入路由策略模块和可插入CAC策略模块,策略框架模块324可以响应于包括与可插入路由策略模块相关联的钩子点的指示符的策略服务请求而执行可插入路由策略模块。举例而言,钩子点可以是可插入策略模块标识符。
在一些实施例中,会话边界控制器320可包括多个版本的可插入策略模块326(未示出)。尽管图3中未示出,可以将新的策略或更新版本的策略编译为更新(例如,新的)版本的可插入策略模块326。更新版本的可插入策略模块可以动态地链接到框架模块324并随后由会话控制器信令模块322来使用。在一些实施例中,可以从可移动存储设备(未示出)或存储媒体(未示出)加载更新的可插入策略模块,并将其加载到会话边界控制器320上。
由于可插入策略模块326可以是单独的、编译后的可执行模块,可插入策略模块326可以动态地与策略框架模块324进行链接或者解除链接,与将库与应用程序进行动态链接或者解除链接相类似。换言之,当加载或卸载可插入策略模块326时,策略框架模块324和会话控制器信令模块322可以继续工作(例如,处于完全运行状态,应用程序继续执行)。新的可插入策略模块(未示出)或者不同版本的可插入策略模块326(未示出)可以与策略框架模块324进行动态链接或者解除链接。
在一些实施例中,当加载了新版本的可插入策略模块326时,过期版本的可插入策略模块326可以从会话边界控制器320中卸载。策略框架模块324可以配置为管理对可插入策略模块326的版本的加载和/或卸载。在一些实施例中,策略框架模块324可以配置为管理多个版本的可插入策略模块326。结合图4描述了策略框架模块,其配置为管理多个会话边界控制器的多个版本的可插入策略模块。
为了避免当将更新版本的可插入策略模块加载到会话边界控制器320时的冲突和/或错误,可将旧的和/或更新版本的可插入策略模块临时锁定,或者将与可插入策略模块相关联的策略服务请求挂起一段时间。例如,如果在加载更新版本的可插入策略模块时,由会话控制器信令模块322定义策略服务请求并将其发送给策略框架模块324,则可以将策略服务请求挂起,例如,挂起指定的一段时间。在一些实施例中,例如,可在策略框架324处挂起策略服务请求,直到策略框架324验证了更新版本已经正确加载为止。在已经正确加载更新版本后,可以释放策略服务请求,举例来说,将其用于触发基于更新版本的策略来计算策略值。在一些实施例中,策略框架324可以将指示符发送给会话控制器信令模块322,该指示符触发会话控制器信令模块322挂起一个或多个策略服务请求直到已经加载了更新版本的可插入策略模块为止。
在一些实施例中,如果由于更新版本的可插入策略模块有缺陷和/或不正常工作而导致更新版本的可插入策略模块所返回的策略值是非法的,则策略框架模块324可以配置为使用旧版本的可插入策略模块(例如,回滚到旧版本)。会话控制器信令模块322可以基于用户定义的用于验证策略值的标准向策略框架模块324发送信号,该信号指示策略值是非法的。
在一些实施例中,可插入策略模块326可以配置为实现多个策略,每个策略对应于会话边界控制器320的功能。在一些实施例中,可插入策略模块326是相互依赖的策略模块的集合。在一些实施例中,可插入策略模块326可以实现为解释型脚本(例如,Lua脚本、Perl脚本)或可配置的脚本文件,其可以在运行时使用策略框架模块324来实现。
在一些实施例中,可插入策略模块326可以配置为基于存储在存储器330中的策略配置参数值来计算策略值。例如,可插入策略模块326可采用多个可用于计算路由策略值的路由策略算法来进行配置。举例来说,策略配置参数值可用于响应于特定端点310的策略服务请求而触发可插入策略模块326内多个路由策略算法中的一个来进行执行。
在一些实施例中,策略框架模块324可以配置为基于来自于会话控制器信令模块322的策略服务请求而从存储器330获取一个或多个策略配置参数值。当可插入策略模块326由策略框架模块324执行时,可插入策略模块326可使用获取的策略配置参数值。在一些实施例中,可插入策略模块326可以配置为不仅基于来自会话控制器信令模块322的输入值,还基于存储在存储器330中的策略配置参数来计算策略值。
在一些实施例中,一个或多个策略配置参数值可以存储在可由策略框架模块324访问的数据库(未示出)中。数据库可以是可由多个用户访问的数据库,使得每个用户可以定义可由可插入策略模块326使用的策略配置参数值。在一些实施例中,会话控制器信令模块322、策略框架模块324和/或可插入策略模块326可以配置为使用用户和/或网络管理员所定义(例如,在API中定义)的一个或多个数据库模式来操作。举例来说,可以对策略值进行计算(或修改),例如,使用可插入策略模块326来进行计算(或修改),使得策略值兼容与数据库相关联的模式。同样地,可以对输入值进行定义(或修改),例如,使用可插入策略模块326来对输入值进行定义(或修改),使得它们同与数据库相关联的模式兼容。在一些实施例中,举例来说,与数据库相关联的模式可以基于与会话控制协议相关联的可扩展协议。
图4是示出了策略管理器设备410的示意图,策略管理器设备410配置为根据本发明实施例管理多个会话边界控制器的多个可插入路由策略模块。具体而言,策略管理器设备410配置为实现会话边界控制器460和470的可插入路由策略模块412和414。可以将策略管理器设备和会话边界控制器460和470称为会话层设备。会话边界控制器460和470中的每一个与多个端点480相连接。策略管理器设备410通过网络440与会话边界控制器460和470进行通信。举例来说,网络440可以是网际协议会话(SOIP),例如网际协议媒体(MOIP)和/或网际协议语音(VoIP)网络。策略管理器设备410可包括一个或多个处理器(未示出)、输入端口(未示出)和/或输出端口(未示出),以接收和/或处理可插入策略模块(例如,对可插入策略模块412和414进行路由)和/或策略服务请求。
策略管理器设备410包括策略框架模块416,其配置为执行会话边界控制器460和/或470的可插入路由策略模块412和/或414。例如,策略管理器设备410可以配置为在策略框架模块416处从会话边界控制器460接收输入值(例如,策略服务请求中的会话层参数)。策略框架模块416可在执行可插入策略模块414时使用输入值来计算一个或多个策略值。在计算了策略值以后,策略管理器设备410可以配置为将策略值发送给发出请求的会话边界控制器460。在该实施例中,可插入路由策略模块412和414为不同的路由策略。例如,路由策略模块412可以是旧版本的路由策略模块414或者是具有不同能力的版本。
策略管理器设备410可以配置为检测(例如,基于条件)会话边界控制器460和/或470是否与可插入路由策略模块412和/或414中的某一个兼容。例如,如果会话边界控制器460与可插入路由策略模块412兼容但不与可插入路由策略模块414兼容,则策略管理器设备410可以配置为响应于来自会话边界控制器460的策略服务请求(例如,基于来自策略服务请求的输入值)而选择并执行可插入路由策略模块412而不是可插入路由策略模块414。
即使可插入路由策略模块412实现比可插入路由策略模块414较旧的版本的路由策略,策略管理器设备410可选择并执行可插入路由策略模块412。在另一实例中,基于例如数据库430中指示每个会话边界控制器460和/或470的软件和/或硬件能力的数据,策略管理器设备410可确定会话边界控制器460仅与可插入路由策略模块412兼容。举例来说,数据库430可包括查找表,该查找表指明会话边界控制器460仅能使用可插入路由策略模块412实现的路由策略来对呼叫进行路由。
在一些实施例中,策略管理器设备410可以查询会话边界控制器460和/或470来确定会话边界控制器460和/或470是否能采用使用一个或多个可插入路由策略模块412和/或414所计算的策略值。例如,响应于来自策略管理器设备410的请求(例如,ping),会话边界控制器460可以发送兼容性响应,其指示会话边界控制器460只能使用特定版本的路由策略来处理策略值。基于兼容性响应,策略管理器设备410可以配置为执行路由策略模块412和/或414,来生成与会话边界控制器460兼容的策略值。
虽然图4示出了策略管理器设备410配置为实现会话边界控制器460和470的两个可插入路由策略模块412和414中的一个,但在一些实施例中,策略管理器设备410可以配置为管理多个可插入策略模块(例如,可插入策略模块库),多个可插入策略模块可以是用于多个会话边界控制器的不同类型和/或版本,该多个会话边界控制器可以是不同类型的和/或使用不同版本的软件和/或硬件来操作。
图5是示出了会话边界控制器520的示意图,其根据本发明实施例配置为使用可插入策略模块524和可插入服务模块526来操作。可插入服务模块526是配置为基于与用户(例如系统管理员)相关联的偏好来实现与会话边界控制器520相关联的服务的模块。例如,可插入服务模块526可以配置为使会话边界控制器520根据用户偏好使用特定方法或数据模式在数据库530中记录数据。在一些实施例中,可插入服务模块526可以配置为针对特定用户来定制用户界面,或者针对会话边界控制器520实现用户定义的远程验证。
类似于可插入策略模块524,可插入服务模块526是单独编译的模块,其可以在会话边界控制器520的运行时期间内插入会话边界控制器520。作为单独的、编译后可执行模块,可插入服务模块526可以与会话边界控制器520进行动态链接或者解除链接。换言之,可插入策略模块526可以加载到会话边界控制器520,而不需要关闭会话边界控制器520。举例来说,可插入服务模块526可以配置为使用阈值条件、对象、库和/或算法的任意组合来实现服务。另外,可插入服务模块526可以使用策略模块框架524来执行。
本发明的一些实施例涉及具有计算机可读介质(也可称为处理器可读介质)的计算机存储产品,该介质上具有用于执行各种计算机实现的操作的指令或计算机代码。该介质和计算机代码(也可称为代码)可以是针对特定的一个或多个目的而特别设计和构建的。计算机可读介质的例子包括但不限于:磁存储介质,例如硬盘、软盘和磁带;光存储介质,例如紧致盘/数字视频光盘(“CD/DVD”)、紧致只读光盘(“CD-ROM”)、以及全息设备;磁光存储介质,例如光软盘;载波信号;以及特别用于存储和执行程序代码的硬件设备,例如专用集成电路(“ASIC”)、可编程逻辑器件(“PLD”),以及ROM和RAM器件。计算机代码的例子包括但不限于:微代码或微指令、机器指令(例如由编译器所生成的机器指令),以及包含由计算机使用解释器来执行的高级指令的文件。例如,本发明的实施例可使用Java、C++或其它面向对象的程序设计语言和开发工具来实现。计算机代码的其它例子包括但不限于:控制信号、加密代码以及压缩代码。
综上所述,主要描述了用于实现会话边界控制器的可插入策略模块和/或可插入服务模块的方法和装置。尽管上面描述了本发明的实施例,应该明白,这些实施例仅以示例的方式给出,并且可以在形式和细节上进行各种改变。例如,可插入策略模块可以链接到单个会话边界控制器之内一个以上的策略框架模块。

Claims (20)

1、一种方法,包括:
当在网际协议会话(SoIP)网络内的会话层设备处执行应用程序时将可插入策略模块与所述应用程序相关联;
在所述会话层设备处从与所述会话层设备进行通信的端点接收策略服务请求;以及
基于从所述可插入策略模块发送给所述应用程序的策略值来定义会话控制协议信号,所述策略值是在所述可插入策略模块处基于与所述策略服务请求相关联的输入值来进行计算的。
2、根据权利要求1所述的方法,其中,在所述关联以前将所述可插入策略模块编译为可执行模块。
3、根据权利要求1所述的方法,其中,所述可插入策略模块是可解释的模块。
4、根据权利要求1所述的方法,其中,所述端点是源端点,所述会话层设备是第一会话层设备,
所述方法还包括:
将所述会话控制协议信号发送给与目的地端点相关联的第二会话层设备。
5、根据权利要求1所述的方法,其中,所述策略服务请求基于媒体信号或者可扩展会话层协议中的至少一个。
6、根据权利要求1所述的方法,还包括:
在所述应用程序处接收与所述端点相关联的策略配置参数值;
基于所述策略配置参数值来修改所述可插入策略模块;以及
在所述修改以后在所述可插入策略模块处计算所述策略值。
7、根据权利要求1所述的方法,还包括:
基于所述输入值从与所述应用程序相关联的多个可插入策略模块中选择所述可插入策略模块。
8、根据权利要求1所述的方法,其中,所述会话控制协议信号与会话请求相关联。
9、一种方法,包括:
当在与网际协议会话(SoIP)网络相关联的会话层设备处执行应用程序时将第一可插入策略模块和第二可插入策略模块与所述应用程序相关联;
基于与所述第二可插入策略模块相关联的条件未满足,将与策略服务请求相关联的输入值发送给所述第一可插入策略模块,所述策略服务请求同与所述SoIP网络进行通信的端点相关联;以及
基于所述第一可插入策略模块来计算基于所述输入值的策略值。
10、根据权利要求9所述的方法,其中,在所述关联以前将所述可插入策略模块编译为可执行模块。
11、根据权利要求9所述的方法,还包括:
从所述第一可插入策略模块接收所述策略值;以及
当所述策略值是非法策略值时将所述输入值发送给所述第二可插入策略模块。
12、根据权利要求9所述的方法,还包括:
基于所述策略值来定义会话控制协议信号。
13、根据权利要求9所述的方法,其中,所述第一可插入策略模块是共享对象模块。
14、根据权利要求9所述的方法,其中,所述第一可插入策略模块是动态链接库模块。
15、根据权利要求9所述的方法,其中,所述策略服务请求与呼叫允许控制计算、验证计算、设备注册功能、会话控制协议或者媒体路由确定中的至少一个相关联。
16、一种处理器可读介质,包括表示指令的代码,该代码使得处理器进行:
接收与策略服务请求相关联以及与可扩展协议相关联的输入值,所述策略服务请求与端点相关联,所述端点与网际协议会话(SoIP)网络相关联;
基于所述输入值来计算策略值;以及
将所述策略值发送给应用程序,所述应用程序在会话层设备处执行,所述会话层设备与所述SoIP网络相关联。
17、根据权利要求16所述的处理器可读介质,其中,所述策略值与呼叫允许控制计算、验证计算、设备注册功能、会话控制协议或者媒体路由确定中的至少一个相关联。
18、根据权利要求16所述的处理器可读介质,还包括表示指令的代码,该代码使得处理器进行:
基于所述策略服务请求来接收与所述端点相关联的策略配置参数值,所述计算基于所述策略配置参数值。
19、根据权利要求16所述的处理器可读介质,其中,所述计算基于与数据库相关联的模式。
20、根据权利要求16所述的处理器可读介质,其中,所述输入值是可变长度输入值或者无效输入值。
CN200780051853A 2006-12-29 2007-05-03 用于实现网际协议会话网络内可插入策略模块的方法和装置 Pending CN101689163A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US88271306P 2006-12-29 2006-12-29
US60/882,713 2006-12-29
US11/694,398 2007-03-30
US11/694,398 US7774481B2 (en) 2006-12-29 2007-03-30 Methods and apparatus for implementing a pluggable policy module within a session over internet protocol network
PCT/US2007/068129 WO2008082683A2 (en) 2006-12-29 2007-05-03 Methods and apparatus for implementing a pluggable policy module within a session over internet protocol network

Publications (1)

Publication Number Publication Date
CN101689163A true CN101689163A (zh) 2010-03-31

Family

ID=39585587

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200780051853A Pending CN101689163A (zh) 2006-12-29 2007-05-03 用于实现网际协议会话网络内可插入策略模块的方法和装置

Country Status (4)

Country Link
US (1) US7774481B2 (zh)
EP (1) EP2118766B1 (zh)
CN (1) CN101689163A (zh)
WO (1) WO2008082683A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107438048A (zh) * 2016-05-25 2017-12-05 宝沃汽车(中国)有限公司 Can协议生成方法、装置及具有其的车辆

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7764605B2 (en) * 2004-10-07 2010-07-27 Genband Inc. Methods and systems for measurement-based call admission control in a media gateway
DE602007005460D1 (de) * 2007-04-30 2010-05-06 Nokia Siemens Networks Oy Richtlinienkontrolle in einem Netzwerk
US8266686B1 (en) * 2008-01-11 2012-09-11 Sprint Communications Company L.P. System and method for VoIP firewall security
US9407451B1 (en) 2008-05-16 2016-08-02 Genband Us Llc Integrating telephony applications and television broadcasts on a multimedia device
US7945663B2 (en) * 2008-12-29 2011-05-17 Genband Inc. Systems, methods, and computer program products for adaptively adjusting a registration interval of an endpoint
US8364598B2 (en) * 2009-10-13 2013-01-29 Microsoft Corporation Use of software update policies
US8773981B2 (en) 2010-12-06 2014-07-08 Genbrand US LLC Systems and methods for dynamic congestion management in communications networks
US8977608B2 (en) * 2010-12-07 2015-03-10 Sap Se View life cycle management
US9906463B2 (en) 2011-03-03 2018-02-27 Genband Us Llc Systems and methods for intelligent network edge traffic and signaling management
US9374434B2 (en) 2011-07-12 2016-06-21 Genband Us Llc Methods, systems, and computer readable media for deriving user availability from user context and user responses to communications requests
US8706861B2 (en) * 2011-09-09 2014-04-22 Microsoft Corporation Dynamically allocating network resources for communication session
US9749382B2 (en) * 2011-09-29 2017-08-29 Netscout Systems Texas, Llc Systems for media policy decision and control and methods for use therewith
US10205788B2 (en) * 2012-07-30 2019-02-12 Dialogic, Inc. Run-time actionable information exchange system in a secure environment
US20150180910A1 (en) * 2013-12-19 2015-06-25 Alcatel-Lucent Canada Inc. Communication network with low latency call signaling functionality
TWI552547B (zh) * 2014-07-22 2016-10-01 廣達電腦股份有限公司 資料傳輸服務切換系統和方法
CN104883353B (zh) * 2015-03-31 2018-12-28 深信服科技股份有限公司 终端单点登录配置、认证方法和系统、应用服务系统
US11063988B2 (en) * 2018-02-04 2021-07-13 Portly, Inc. Scalable layered two-dimensional (2D) telecommunications network architecture
WO2020002599A1 (en) * 2018-06-29 2020-01-02 Unify Patente Gmbh & Co. Kg Method for remote health monitoring in a sip-based communication network and health monitoring system
US11961037B2 (en) * 2019-04-30 2024-04-16 Global Sticks Express, LLC Shipping items using an electronic shipping label device

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60124175A (ja) * 1983-12-09 1985-07-03 Canon Inc 画像読み取り装置
JPH02220531A (ja) 1989-02-22 1990-09-03 Toshiba Corp 呼接続制御方式および流量監視方式
CA2217838C (en) * 1996-11-07 2003-07-29 At&T Corp. Wan-based voice gateway
US6173322B1 (en) * 1997-06-05 2001-01-09 Silicon Graphics, Inc. Network request distribution based on static rules and dynamic performance data
US6798786B1 (en) * 1999-06-07 2004-09-28 Nortel Networks Limited Managing calls over a data network
US20050081059A1 (en) * 1997-07-24 2005-04-14 Bandini Jean-Christophe Denis Method and system for e-mail filtering
EP1021757A1 (en) * 1997-07-25 2000-07-26 Starvox, Inc. Apparatus and method for integrated voice gateway
WO1999014931A2 (en) * 1997-09-16 1999-03-25 Transnexus, Llc Internet telephony call routing engine
JP4051794B2 (ja) * 1999-01-13 2008-02-27 富士通株式会社 音声ゲートウェイ装置およびその方路選択方法
US6775269B1 (en) * 1999-03-30 2004-08-10 Telecom Technologies, Inc. Method and system for routing telephone calls between a public switched telephone network and an internet protocol network
US6775280B1 (en) * 1999-04-29 2004-08-10 Cisco Technology, Inc. Methods and apparatus for routing packets using policy and network efficiency information
US6529950B1 (en) * 1999-06-17 2003-03-04 International Business Machines Corporation Policy-based multivariate application-level QoS negotiation for multimedia services
US6505244B1 (en) * 1999-06-29 2003-01-07 Cisco Technology Inc. Policy engine which supports application specific plug-ins for enforcing policies in a feedback-based, adaptive data network
US6944150B1 (en) * 2000-02-28 2005-09-13 Sprint Communications Company L.P. Method and system for providing services in communications networks
US6904017B1 (en) * 2000-05-08 2005-06-07 Lucent Technologies Inc. Method and apparatus to provide centralized call admission control and load balancing for a voice-over-IP network
US6907004B1 (en) * 2000-10-31 2005-06-14 Cisco Technology, Inc. Method and system for manual admission control with user options
US6976087B1 (en) * 2000-11-24 2005-12-13 Redback Networks Inc. Service provisioning methods and apparatus
US7002973B2 (en) 2000-12-11 2006-02-21 Acme Packet Inc. System and method for assisting in controlling real-time transport protocol flow through multiple networks via use of a cluster of session routers
US7133923B2 (en) * 2000-12-11 2006-11-07 Acme Packet, Inc. System and method for assisting in controlling real-time transport protocol flow through multiple networks via screening
US7072303B2 (en) * 2000-12-11 2006-07-04 Acme Packet, Inc. System and method for assisting in controlling real-time transport protocol flow through multiple networks
US7028092B2 (en) * 2000-12-11 2006-04-11 Acme Packet, Inc. System and method for assisting in controlling real-time transport protocol flow through multiple networks via media flow routing
US6965562B2 (en) * 2000-12-14 2005-11-15 Nokia Networks System and method for managing a network to sustain the quality of voice over internet protocol communications
US7065586B2 (en) * 2000-12-22 2006-06-20 Radiance Technologies, Inc. System and method for scheduling and executing data transfers over a network
US6914883B2 (en) * 2000-12-28 2005-07-05 Alcatel QoS monitoring system and method for a high-speed DiffServ-capable network element
JP2002290450A (ja) * 2001-03-22 2002-10-04 Fujitsu Ltd 帯域管理装置、アドレス解決支援装置、帯域管理方法およびアドレス解決支援方法
US7054327B2 (en) * 2001-05-30 2006-05-30 Lucent Technologies Inc. Method of providing quality of service (QOS) to voice applications in routed IP networks
US7046683B1 (en) * 2001-07-31 2006-05-16 Cisco Technology, Inc. VoIP over access network
US7305357B2 (en) * 2002-01-24 2007-12-04 Shaw Cablesystems, G.P. Method and system for providing and controlling delivery of content on-demand over a cable television network and a data network
US7313547B2 (en) * 2002-03-22 2007-12-25 Sun Microsystems, Inc. Manager level device/service arbitrator and methods
US7320123B2 (en) * 2002-04-01 2008-01-15 Sun Microsystems, Inc. Method and system for detecting deprecated elements during runtime
US7236483B2 (en) * 2002-06-28 2007-06-26 Samsung Electronics Co., Ltd. Method for controlling bandwidth in a voice over internet protocol system
US7151781B2 (en) * 2002-07-19 2006-12-19 Acme Packet, Inc. System and method for providing session admission control
TW566014B (en) * 2002-09-12 2003-12-11 Faraday Tech Corp Receiver having the function of eliminating echo and near end cross talk
US20040054791A1 (en) * 2002-09-17 2004-03-18 Krishnendu Chakraborty System and method for enforcing user policies on a web server
WO2004071027A1 (en) 2003-01-28 2004-08-19 Tekelec Methods and systems for non-disruptive physical address resolution
US20050007954A1 (en) * 2003-07-11 2005-01-13 Nokia Corporation Network device and method for categorizing packet data flows and loading balancing for packet data flows
EP1661359B1 (en) * 2003-08-18 2017-04-19 Microsoft Technology Licensing, LLC Method and system for service denial and termination on a wireless network
US8638779B2 (en) * 2004-02-24 2014-01-28 Itxc Ip Holdings Sarl Methods and apparatus for managing voice over IP telephony
US7725708B2 (en) 2004-10-07 2010-05-25 Genband Inc. Methods and systems for automatic denial of service protection in an IP device
US7764605B2 (en) * 2004-10-07 2010-07-27 Genband Inc. Methods and systems for measurement-based call admission control in a media gateway
US7607164B2 (en) * 2004-12-23 2009-10-20 Microsoft Corporation Systems and processes for managing policy change in a distributed enterprise
US8194640B2 (en) 2004-12-31 2012-06-05 Genband Us Llc Voice over IP (VoIP) network infrastructure components and method
IL167059A (en) * 2005-02-23 2010-11-30 Tejas Israel Ltd Network edge device and telecommunications network
US8369322B2 (en) * 2005-07-21 2013-02-05 Rockstar Consortium Us Lp Tandem call admission control by proxy for use with non-hop-by-hop VoIP signaling protocols
US8325905B2 (en) * 2005-07-29 2012-12-04 Verizon Patent And Licensing Inc. Routing calls in a network
EP1753198A1 (en) * 2005-08-09 2007-02-14 Alcatel Voice over IP Network Architecture
EP1932265B1 (en) * 2005-09-16 2017-10-25 Acme Packet, Inc. Improvements to a session border controller
US8169903B2 (en) * 2006-03-07 2012-05-01 Cisco Technology, Inc. Managing traffic within and between virtual private networks when using a session border controller
US8144586B2 (en) * 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for controlling network bandwidth with a connection admission control engine
US7626929B2 (en) * 2006-12-28 2009-12-01 Genband Inc. Methods and apparatus for predictive call admission control within a media over internet protocol network
US8423483B2 (en) * 2008-05-16 2013-04-16 Carnegie Mellon University User-controllable learning of policies

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107438048A (zh) * 2016-05-25 2017-12-05 宝沃汽车(中国)有限公司 Can协议生成方法、装置及具有其的车辆

Also Published As

Publication number Publication date
EP2118766A4 (en) 2014-02-26
EP2118766A2 (en) 2009-11-18
US20080162720A1 (en) 2008-07-03
EP2118766B1 (en) 2017-01-25
US7774481B2 (en) 2010-08-10
WO2008082683A3 (en) 2008-10-02
WO2008082683A2 (en) 2008-07-10

Similar Documents

Publication Publication Date Title
CN101689163A (zh) 用于实现网际协议会话网络内可插入策略模块的方法和装置
US7200676B2 (en) Transmitting and receiving messages through a customizable communication channel and programming model
US8788580B2 (en) Event broker for an improved application server platform for telecom-based applications
US7051107B2 (en) Distributed environment type computer system able to achieve high speed consecutive message communications by service layer
US8719780B2 (en) Application server with a protocol-neutral programming model for developing telecommunications-based applications
JP5046161B2 (ja) ネットワーク・エッジ・コンピューティング向けのアプリケーション分割
US20090125366A1 (en) Method and system for dynamic adaptation of workflows
US20030200357A1 (en) Programmatic universal policy based software component system for software component framework
CN101727648B (zh) 服务系统中的超时控制方法及服务系统
US8468228B2 (en) System architecture method and computer program product for managing telecommunication networks
KR100880536B1 (ko) 이기종 컴퓨팅 및 서비스 통합을 위한 오픈 프레임워크시스템
US20080209438A1 (en) Method and apparatus for a service control layer
Aubonnet et al. Management of service compositionbased on self-controlled components
US20040123232A1 (en) System and method for providing a service-oriented container
Kraemer et al. Aligning UML 2.0 state machines and temporal logic for the efficient execution of services
EP2216962B1 (en) A method for deploying and managing the sip servlet application and the osgi service platform thereof
Maaskant A robust component model for consumer electronic products
CN102681867A (zh) 一种视频分析任务处理方法及装置
Wohlstadter et al. A service-oriented middleware for runtime web services interoperability
US8620259B2 (en) Model-driven service creation and management
Henrio et al. An asynchronous distributed component model and its semantics
US8849631B2 (en) Protocol independent telephony call lifecycle management scheme
KR20150123074A (ko) 데이터 분산 서비스에서의 기능 모듈 모듈화 방법 및 모듈화 장치
Block Managing software evolution in embedded automotive systems
CN116560756B (zh) 服务编排方法、电子设备、计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20100331