CN103154897B - 用于电信网络应用的核抽象层 - Google Patents

用于电信网络应用的核抽象层 Download PDF

Info

Publication number
CN103154897B
CN103154897B CN201180048838.2A CN201180048838A CN103154897B CN 103154897 B CN103154897 B CN 103154897B CN 201180048838 A CN201180048838 A CN 201180048838A CN 103154897 B CN103154897 B CN 103154897B
Authority
CN
China
Prior art keywords
module
core
buffer
abstraction
pcd
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.)
Expired - Fee Related
Application number
CN201180048838.2A
Other languages
English (en)
Other versions
CN103154897A (zh
Inventor
M·R·加沃尔
L·索
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.)
Alcatel Lucent SAS
Original Assignee
Alcatel Lucent SAS
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 Alcatel Lucent SAS filed Critical Alcatel Lucent SAS
Publication of CN103154897A publication Critical patent/CN103154897A/zh
Application granted granted Critical
Publication of CN103154897B publication Critical patent/CN103154897B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • 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
    • 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/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • H04W72/1263Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • H04W72/1221Wireless traffic scheduling based on age of data to be sent

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

向基于多核处理器的调制解调器板的中间件层引入一种新的子系统,核抽象层(CAL)。该新的模块为多核FSL P4080处理器及其DPAA提供了抽象。为了部署该调制解调器板,CAL将向LTE L2应用提供诸如零拷贝无锁(lock free)缓冲器管理方案的各种服务,并且提供对于新的背板以太网驱动(BED)接口的支持,用于将RLC SDU传送到用于多小区配置的控制器板以及从该控制器板接收RLC SDU。

Description

用于电信网络应用的核抽象层
背景技术
本发明涉及使用多核处理器的在单调制解调器板上用于多小区支持的核抽象层。尽管本发明特别指向移动电信领域,因此特别参照其进行了描述,但应当了解,本发明还可应用于其他领域和应用。
通过背景技术可知,LTE(长期演进)是一种快速演进的3GPP项目,其旨在对UMTS(通用移动电信系统)移动电话标准进行改进以应对未来通信网络的要求。LTE提高了无线网络的效率和带宽,降低了成本并且增强了服务体验。具体地讲,LTE利用了新的频谱机会并且提供了与其他开放标准更好的集成。LTE一般包括LTERAN(无线电接入网络)(也称为E-UTRAN)与EPS(演进的分组系统,也叫演进的分组核心)。
通信系统一般被分为两个主要功能:数据面功能以及控制面功能。在先前的LTE产品中,至少两个处理器用在调制解调器板上:一个支持控制面功能(非实时的,例如操作、经营和管理(或者OA&M)以及呼叫处理管理相关的功能性),另一个终结以及支持数据面功能(实时的,例如LTE层2的处理)。控制面和数据面两者都使用不同的操作系统(OS)实例,例如用于控制面的Linux以及用于数据面核的诸如vXWorks(由加利福尼亚Alameda的WindRiverSystem制造并销售)的实时OS。通常,一个调制解调器板支持一个扇区或小区。所以为了支持多小区(例如3小区或6小区)配置,有必要提供与小区数量一样多的调制解调器板。
需要位于应用层和硬件层之间并使应用层从低级硬件相关的功能性分离的中间件抽象层。
发明内容
在处理环境中,中间件层通常将所有的硬件具体实现细节对应用层进行掩藏。向基于多核处理器的调制解调器板的中间件层引入一种新的子系统—核抽象层(CAL)。该新的模块为多核处理器及其数据路径加速架构(DPAA)提供了抽象。为了部署该调制解调器板,CAL将向LTEL2应用提供诸如零拷贝无锁(lockfree)缓冲器管理方案的各种服务,并且提供对于新的背板以太网驱动(BED)接口的支持,用于将无线电链路控制(RLC)服务数据单元(SDU)传送到用于多小区配置的控制器板以及从该控制器板接收RLCSDU。
软件便携性是CAL的主要目标。其还使应用层与促进对应用、中间件及平台层服务进行并行软件开发的低级平台服务分离。因而,其将会相对容易地迁移到具有或多或少的核或者甚至是多核处理器的不同厂商的处理器,而对应用层软件影响很小或没有影响。
在本发明的一方面提供一种用于在电信网络中提供多小区支持的装置。该装置包括调制解调器板和多核处理器。处理器一般包括:依附在调制解调器板的多个处理器核和核抽象层,在多个处理器核中,至少一个处理器核用来执行所有控制面功能,剩余处理器核用来执行所有数据面功能;所述核抽象层将任何核具体细节都对运行在单个分区的处理器核上的应用软件隐藏。核抽象层包括各种模块。初始化模块向一个或多个帧管理器加载网络配置数据以及静态解析、分类和分配(PCD)规则,并且基于一组配置文件建立核抽象层框架。缓冲器模块可以为一个或多个层2应用提供无锁缓冲器管理服务。消息模块可以向层2软件提供向另一板发送用户面数据或从另一板接收用户面数据的零拷贝和无锁(lock-less)消息服务。PCD模块提供由帧管理器用于将入站帧路由到适当的核的PCD规则和配置。数据路径加速架构(DPAA)跟踪模块提供用于在DPAA驱动模块中开启和禁用跟踪的跟踪能力。
在本发明的另一方面提供一种用于在电信网络中提供多小区支持的装置。该装置包括:调制解调器板和多核处理器,多核处理器具有依附在调制解调器板的多个处理器核和核抽象层,在多个处理器核中,单个分区利用包括于其中的所有处理器核定义,以及其中单个分区用来执行所有控制面功能和所有数据面功能;所述核抽象层将任何核具体细节都对运行在单个分区的处理器核上的应用软件隐藏。核抽象层包括各种模块。初始化模块向一个或多个帧管理器加载网络配置数据以及静态解析、分类和分配(PCD)规则,并且基于一组配置文件建立核抽象层框架。缓冲器模块可以为一个或多个层2应用提供无锁缓冲器管理服务。消息模块可以向层2软件提供向另一板发送用户面数据或从另一板接收用户面数据的零拷贝以及无锁消息服务。PCD模块提供由帧管理器用于将入站帧路由到适当的核的PCD规则和配置。数据路径加速架构(DPAA)跟踪模块提供用于在DPAA驱动模块中开启和禁用跟踪的跟踪能力。
还在本发明的另一方面提供一种用于多核处理器的核抽象层。核抽象层包括各种模块。初始化模块向一个或多个帧管理器加载网络配置数据以及静态解析、分类和分配(PCD)规则,并且基于一组配置文件建立核抽象层框架。缓冲器模块可以为一个或多个层2应用提供无锁缓冲器管理服务。消息模块可以向层2软件提供向另一板发送用户面数据或从另一板接收用户面数据的零拷贝和无锁消息服务。PCD模块提供由帧管理器用于将入站帧路由到适当的核的PCD规则和配置。数据路径加速架构(DPAA)跟踪模块提供用于在DPAA驱动模块中开启和禁用跟踪的跟踪能力。
本发明适用性的进一步的范围将从以下提供的详细描述中变得明显。然而应当理解,由于在本发明范围和精神内的各种变化和修改对那些本领域技术人员而言是显而易见的,因此在指出本发明优选实施例的同时,仅通过说明的方式给出详细的描述和具体的示例。
附图说明
本发明存在于结构、布置以及设备的各种零件和方法步骤的结合中,由此获得如下文中更全面阐述的、尤其是在权利要求中被指出,并在附图中进行图示的预期目标。附图中:
图1图示了根据本发明多方面的平台架构的一个实施例;
图2图示了根据本发明多方面的平台架构的替代性的实施例,以及
图3图示了根据本发明多方面的用于实现核抽象层的典型架构。
具体实施方式
现在参照附图,其中示出的附图仅用于图示示例性实施例的目的而非用于限制所要求保护主题的目的,图1提供了可以结合当前描述的实施例的系统的视图。该平台架构一般用在调制解调器板上,但是应当理解,其可以用在其他应用中。在此情况下,提供了具有八个核(如图中12、14、16、18、20、22、24及26所示)的多核处理器10。然而应当了解,多核处理器10可以具有任意数量的核。在此示例中,第一分区28用于运行第一操作系统(OS1)32的控制面30。第一分区28还包括操作、经营和管理(OA&M)34以及BCS/UPS36。BCS/UPS36是用于向诸如OA&M实体的应用软件提供硬件的抽象的中间件层。余下7个核的每一个对应一个AMP分区(如图中38、40、42、44、46、48、50所示),7个AMP分区用于数据面52,该7个AMP分区的每个都运行第二操作系统(OS2)54。
所有的层2(L2)处理通常都在处理器的7个核上执行。层2是计算机联网的7层OSI模型的数据链路层。数据链路层是将数据在广域网的相邻网络节点间或在相同的局域网段的节点间传输的协议层。数据链路层提供了将数据在网络实体间传输的功能上和程序上的手段,并且可能提供可发生在物理层的错误检测并可能纠正错误的手段。数据链路协议的示例为用于局域网(多节点)的以太网、点对点协议(PPP)、用于点到点(双节点)连接的HDLC和ADCCP。在此情况,L2一般是指具有非常严格的实时要求的LTE空中接口所需的L2调度器处理。
所有的层1(L1)处理通常都在DSP和FPGA上得到执行。尤其是,核抽象层(CAL)56将核具体细节对L2应用软件隐藏。
典型构架可以进一步包括诸如系统管理程序(hypervisor)58的监控软件实体,用来确保所有的这些分区独立运行并且不会彼此破坏(例如,确保故障隔离)。系统管理程序是用在虚拟化中的软件程序。其允许几个操作系统在给定的硬件片上并行的运行。不像传统的虚拟计算程序,系统管理程序直接运行在目标硬件上。这允许访客操作系统和系统管理程序两者都更加有效地执行。可能的系统管理程序的列表包括但不限于下面的类型:Xen(Citrix)、KVM(基于内核的虚拟机)、VMwareESX/vmkernel、MicrosoftHyper-V、PowerVM(IBM)、LogicalDomains/OracleVM以及WindRiverHypervisor。
在此示例中,处理器10服务于3个小区(如图中60、62和64所示)。每个小区都需要上行链路(UL)调度器(如图中66、70和74所示)以及下行链路(DL)调度器(如图中68、72和76所示)。
人们公知,无线电链路控制(RLC)层用来在跨LTE接口发送和接收的分组帧上进行分段、组合和纠错。无线电链路控制和媒体访问控制(RLC/MAC)软件被用在GPRS(2.5G)无线栈。其提供了在移动站和基站控制器(BSC)间的确认和非确认数据传输。就此而言,处理器10进一步包括RLC/MAC块78,该RLC/MAC块78是在移动设备和网络间使用的空中接口上的基本的传输单元。其用来携带数据和RLC/MAC信令。
现在参照图2,示出了替代性的平台架构10。该架构一般用在调制解调器板上,但是应当理解,其还可用在其他应用上。在该实施例中,一个分区被其中全部8个核来定义。然而应当了解,多核处理器100可以具有任何数量的核。利用该实施例,从而可能使用运行在所有核(例如,8个核)上的单个SMPOS实例102。由于控制和数据面当前在一个OS实例之下,需要注意确保数据面上的问题将不会同样地击垮控制面。
在此示例中,处理器100服务于3个小区(如图中104、106和108所示)。每个小区需要上行链路(UL)调度器(如图中110、112和114所示)以及下行链路(DL)调度器(如图中116、118和120所示)。还包括RLC/MAC块122,其为用在移动设备和网络之间的空中接口上的基本的传输单元。其用于携带数据和RLC/MAC信令。处理器100还提供OA&M124以及BCS/UPS126。
如在第一实施例中,处理器100包括核抽象层(CAL)128,其将核具体细节对L2应用软件隐藏。
为了满足基站的实时性能需要,可以使用诸如具有PREEMPT_RT补丁的SMPLinux的OS。当然,应当理解,还可以使用其他操作系统。SMP配置可能易于丧失所监视的AMP配置的确定性行为。为了在SMP配置中达到确定性行为,系统优选地以采用核预留(corereservation)和核关联(coreaffinity)构造以达到如AMP的系统行为的方式实现。例如,还希望从具有PREEMPT_RTOS的SMPLinux中得到最佳性能。无锁零拷贝服务(例如缓冲器管理)以及消息服务的使用还有助于解决使用具有PREEMPT_RTOS的SMPLinux所引起的任何的延迟问题。
图1和2中所示出的核抽象层(56、128)的主要功能之一是以利用多核平台的所有能力的各种服务提供诸如L2处理的高级应用。因而将核抽象层设计成达到几个目标。第一,其应当支持BED(背板以太网驱动器)基于DPAA的接口,同时对高级应用软件(例如,L2软件)隐藏DPAA和多核具体实现。第二,其应当利用P4080的DPAA硬件组件来在入站和出站两个方向为用户面数据提供加速数据路径。第三,其应当提供尽可能多的灵活性以便容易地适应配置变化(例如,没有要求代码变化)。CAL配置的一个示例为用于缓冲器池、入站帧队列和出站帧队列的DPAA资源配置。
现在参照图3,示出了达到这些及其他目标的典型架构300。就此而言,核抽象层(CAL)301在用户空间中包括各种模块,这些模块包括核抽象层初始化(CALInit)模块302,核抽象层缓冲器(CALBuf)模块304,核抽象层消息(CALMsg)模块306,核抽象层解析、分类和分配(CALPcdFmc)模块308以及核抽象层DPAA跟踪(CALDpaaTrace)模块310。CAL301还可以包括内核空间(kernel-space)模块,即核抽象层DPAA驱动(CALDpaaDriver)312。
架构300进一步包括诸如LinuxPreemptRT的适当的操作系统314。操作系统314依次支持各种驱动,例如前述CALDPaa驱动312、至少一个帧管理器(FMan)驱动316、至少一个缓冲器管理器(BMan)驱动318,以及至少一个队列管理器(QMan)驱动320。
如图3所示,架构300可以适当地包括P4080CoreNet构造322,其为适用于可扩展的片上网络的互联架构,用于将多电源架构处理核连接至高速缓冲存储器、单机高速缓冲存储器以及存储器子系统。
P4080处理器包括新数据路径加速架构(DPAA)的实现。因此,架构300可以进一步包括P4080DPAA324。DPAA324被设计为优化诸如负荷扩散和资源(包括网络接口和硬件加速器)共享的多核网络处理。如图所示,DPAA324一般分别包括诸如BMan326和QMan328以及第一Fman330和第二Fman332的各种管理器。
CALInit模块302通常向帧管理器330和332加载LTE网络配置和任意静态PCD规则,并且基于一组配置文件建立CAL框架。CALInit模块302与FMC(FMan配置工具)(没有示出)或任意数量的FManAPI(没有示出)对接以配置FManPCD,并与CALDpaadriver312对接以加载和建立CAL配置(例如,用户面DPA资源)。如本文中用到的,术语API(或应用编程接口)是指由软件程序实现的接口,其使得能够与其他软件交互。其促进不同软件程序间的交互,类似于用户接口促进用户和计算机间的交互的方式。API由应用程序、库以及操作系统实现以确定它们的词汇表(vocabularies)及调用惯例(callingconventions),并且用来访问它们的服务。API可以包括例程的规范、数据结构、目标类以及用来在消费者和API实现者间通信的协议。
CALInit模块302还经由LEC(Linux错误收集器)服务提供调试机制,收集各种CAL和DPAA资源状态和统计并倾倒至LEC的快照文件以用于事后调查(postmorteminvestigation)。
人们公知,在无线多接入通信系统中,发射机和接收机可以使用多层通信栈进行通信。所述层可以包括例如物理层、媒体访问(MAC)层、无线电链路控制(RLC)层、协议层(例如,分组数据汇聚协议(PDCP)层)、应用层等。RLC层从PDCP层接收服务数据单元(SDU),并且将SDU组合或分段到RLC协议数据单元(PDU)以向MAC层传送。
相应地,CALBuf模块304为L2应用提供在RLCSDU处理中使用的无锁缓冲器管理服务。如本领域所公知的,非阻塞(non-blocking)算法确保竞争共享资源的线程不会使其执行通过相互排斥而无限延迟。如果要确保系统范围的进展,则非阻塞算法是无锁的(或免锁的)。CALBuf模块304还支持缓冲器池统计数据(例如,池消耗状态、消耗计数、池可用性状态、池分配错误计数等)的查询。CALBuf模块304与CALDpaa驱动312对接以实现所述服务。CALBuf模块304提供在多核环境下对适当的系统操作尤其关键的无锁缓冲器管理方案,其中由非实时时间处理采用的锁可能对等待释放该锁的实时处理造成延迟问题。
CALMsg模块306提供经由DPAA接收(入站)RLCSDU和发送(出站)RLCSDU的服务。CALMsg模块306还支持Tx/Rx以太网接口统计数据(例如,接收或传送的FD的数量、丢弃的FD的数量、各种类型的坏FDs等)的查询。CALMsg模块306与DPAA驱动312对接以实现所述服务。CALMsg模块306向LTEL2应用提供在不使用协议栈的情况下发送或接收TCP/UDPIP分组的零拷贝无锁消息服务。需要确保应用软件将不会遭遇无限延迟峰值,其可损坏具有非常严格的实时处理要求的LTE系统的适当系统行为。
CALPcdFmc模块308提供由每个FMan(330、332)用于将入站帧路由到适当的核的解析、分类和分配(PDC)规则以及配置。
CALDPaaTrace模块310提供用于在CALDpaaDriver312中开启和禁用跟踪的跟踪能力。CALDPaaTrace模块310与CALDpaa驱动312对接以实现这样的服务。
CALDpaaDriver312是CAL301的内核空间(kernel-space)组件,而且该驱动使用Bman和QmanAPI帮助实现和提供缓冲器管理服务和消息服务。CALDpaaDriver312负责:管理用于用户面数据分配的DPAA资源(缓冲器池和帧队列);经由诸如打开、释放、用于初始化的i-o(输入/输出)控制(ioctl)、缓冲器管理以及消息服务的各种文件操作,向其他CAL模块提供用户空间接口;执行内核-用户空间(K-U)的缓冲器映射;提供DPAA缓冲器池以及接收机和发射机的统计数据;以及实现用于管理环形缓冲器的服务。应当注意,环形缓冲器表示CAL的L2软件队列并且用来存储去往特定的L2DLT的FD。CALMsg模块306为L2提供从环获得缓冲器描述符的API。
除了CALDpaaDriver312之外,以上描述的所有CAL组件一般为平台中间件(在用户空间下运行)。CALDpaaDriver312是运行在内核空间的自定义驱动,并且其被设计为实现和提供CAL用户空间中间件所需的服务—尤其是依赖于P4080DPAA硬件组件的那些服务。
CALInit模块302负责提供各种功能性。对于启动中的主核(mastercore),CALInit模块302建立CAL框架以支持“快速路径”处理。这个步骤可以包括初始化CALDpaaDriver312,CALDpaaDriver312转而将:(a)创建处理用户面数据所需的各种DPAA资源(例如,缓冲器池、FQ或帧队列),以及(b)创建经由DPAA支持缓冲器管理和消息服务所需的CAL基础设施(例如维护缓冲器池配置、FQ以及在入站FQ和DLTIP地址间的关联性的内部表等)。CALInit模块302还加载LTEFMC的(静态)PCD规则和网络配置。
对于启动中的主核和用户面核(其中L2DLT和L2上行链路调度器线程被绑定),CALInit模块302利用LEC执行、注册和关联CAL301。当进程异常终止(例如,产生了LEC关键错误)时,其向LEC的快照任务提供了要调用的例程。该例程收集包括缓冲器池统计和Tx/Rx以太网接口统计的各种CAL和DPAA数据,并将该数据倾倒至LEC的快照文件以用于调试目的。
CALBuf模块304提供缓冲器管理服务来排他性地用于“快速路径”数据处理。CALBuf模块304向L2应用提供用户空间API。CALBuf模块304与CALDpaaDriver312协作,向由CALDpaa驱动312所创建却被Bman326所管理的缓冲器提供零拷贝和无锁缓冲器管理服务。
CALBuf模块304实现和提供支持以下服务的API,其中:
1.获取缓冲器,其中给定缓冲器大小;
2.获取给定数量的给定大小的缓冲器,然后返回可用缓冲器的列表,直到所请求数量的缓冲器;
3.释放指定的缓冲器;
4.释放缓冲器的列表;以及
5.查询缓冲器池统计。
CALMsg模块306向L2软件提供向另一板(即eCCM)发送用户面数据和从另一板(即eCCM)接收用户面数据的消息服务。CALMsg模块306一般与CALDpaaDriver312对接以经由DPAA提供无锁零拷贝消息服务。该特征允许L2应用软件在不使用协议栈的情况下发送和接收TCP/UDPIP分组,以避免无限的分组延迟时延。
CALMsg模块306实现和提供支持各种服务的API,例如在以下段落中所描述的。
一个可能的服务是为(L2)应用实体注册CALMsg服务,由此实体可以经由“快速路径”接收进入分组。在此注册过程期间,创建CAL的L2软件队列(环形缓冲器)以维护所接收的去往实体的缓冲器描述符。还在该注册期间,CALMsg模块306创建到IP地址的入站FQ和环ID之间的关联,以用于之后在其他处理(例如,当帧到达FQ时,确定将缓冲器描述符推送到哪个环形缓冲器)中进行参考,执行相关缓冲器池的内核到用户空间的映射,以及为应用实体配置PCD规则(如果还没有经由静态规则配置)。而且,在注册过程开始时,CAL301实现防御策略用于确保当线程崩溃时由应用所获得的所有缓冲器被适当的释放。
第二服务是获得去往应用实体的帧。期望返回的缓冲器地址会指出由以太网报头开始的有效载荷的开头。
第三服务是在被配置成处理用户面数据的以太网接口(例如,eth0)上经由DPAA向外部实体发送消息。期望L2填充所有所需的报头(以太网、IP、UDP);并且硬件将被适当地配置以生成和填充IP校验和以及UDP校验和。
第四服务是查询接收机和发射机端口统计数据。
第五服务是从CALMsg模块306注销应用实体。一旦应用实体被注销,其将不再能够经由“快速路径”接收分组。作为注销过程的一部分,CAL将释放由应用软件所获得的所有缓冲器。在使用CALMsg模块306经由快速路径来接收帧的情况下,相关联的环形缓冲器以及PCD规则也将被移除。
CALPcdFmc模块308至少提供CAL301可以用来初始化和配置FMan(330、332)的PCD组件的网络接口配置文件和解析、分类和分配(PCD)规则。FMan的PCD组件需要被配置成允许进入帧到适当的核的分配。
以下描述的是可以用于以示例性架构定义LTEPCD规则(静态地或动态地)的策略的示例。
就用户空间分配而言,具有IP和UDP报头的到达用户空间以太网接口(eth0)的所有帧将通过粗分类(由Fman)。这可以通过提供适当的PCD规则(动态地或者静态地)来达到。精确匹配分配方案可以用来将整个或部分目的地IP地址(取决于目的地IP地址的哪一部分可以被静态定义)匹配到特定的核。默认地,任何未被匹配的帧将排队进入被分配到控制面核(例如,core0)的FQ。
就默认分配而言,到达控制面以太网接口(eth1)或调试以太网接口(eth2)的所有帧将分配到控制面核(例如,core0)。
如何以及何时在Fman中定义和配置PCD规则取决于是否可在平台初始化期间预定义和配置PCD策略。由于L2(下行链路)线程的IP地址及其到各种核的绑定不能预先确定,所以不可能在板启动和初始化期间为入站(下行链路)用户面路径定义Fman的PCD规则。因此,需要在小区被配置后,在运行时定义用于用户面数据路径的PCD规则。当下行链路调度器(DLT)注册到CALMsg模块306时,DLTIP地址以及线程所绑定的核通常为已知的。另一方面,用于控制面和调试业务的派发规则为直接的并且不依赖于任何变量。因此,可在初始化期间静态地定义和配置用于控制面和调试面业务的PCD规则。
当初始化(FSL)以太网驱动时,可以预先定义和配置用于控制面以太网接口以及用于调试以太网接口的PCD规则。对于用户面以太网接口,需要在DLT利用已知的IP地址和绑定核开启后在运行时间定义和配置PCD规则。
CALDPaaTrace模块310提供在CALDPaa驱动312和各种P4080DPAA组件(驱动)上开启或禁用跟踪和调试的各种服务。这些服务例如包括:(1)开启和禁用CALDPaa驱动跟踪;(2)开启和禁用Bman跟踪(将来);(3)开启和禁用Qman跟踪(将来);以及(4)开启和禁用Fman跟踪(将来)。
存在可以使用CAL301的各种场景。例如,CAL301可以在初始化时(即在平台的开启期间)支持主核:
1.通过加载CAL配置数据(例如DPAA资源配置)以及对CALDpaa驱动312进行初始化,建立CAL的框架;
2.如果有网络接口配置和静态PCD规则的话,加载LTEFMC的网络接口配置和静态PCD规则。
CAL301还可以在初始化时支持用户空间进程。在该情况下,当CAL301被加载和初始化时,CAL301将其自身注册到LEC或与LEC关联,向LEC的快照任务提供例程以在该进程终结时运行。该例程将收集与Bman所管理的缓冲器池和Tx/Rx以太网接口相关的各种统计数据,并将数据倾倒至LEC快照文件以用于事后调查(postmorteminvestigation)。
CAL301还可以支持分组发送(即L2ULU软件处理):
1.ULU(上行链路调度器)将其自身注册到CALMsg306,从而其可以经由DPAA发送分组。
2.ULU使用CALBuf服务分配缓冲器。
3.ULU利用具有所有所需报头(以太网/IP/UDP)和有效载荷的将发送的数据填充缓冲器。
4.ULU使用CALMsg服务经由DPAA向目的地实体发送消息。
CAL301还可以支持分组接收(即L2DLT软件处理):
1.DLT(下行链路调度器)将其自身注册到CALMsg306,从而其可以经由DPAA接收分组。
2.在某个ΔT时间(即1毫秒)之后,DLT使用CALMsg服务读出去往其的帧。
3.对于DLT所读出的每个帧,DLT处理该帧并使用CALBuf服务将该缓冲器释放回CAL301或Bman326。
假设对于导致删除小区的所有场景,L2DLT和ULU线程将在其终结前执行必要的清理。作为清理的一部分,L2DLT和ULU线程应将其自身从CAL301注销。作为注销过程的一部分,CAL301需要执行诸如释放应用所获得(直接经由CALBuf服务获得或者由FMAN330或332隐式获得)的所有缓冲器的一些清理工作,并且删除相关联的环形缓冲器以及移除PCD规则(仅与快速路径的接收机相关)。
ULU和DLT可以使用CALMsg服务将其自身从CAL301注销。
在L2DLT或者L2ULU线程异常终止(例如,崩溃)的情况下,CAL301可以提供调试机制,由此经由LEC的服务收集并倾倒诸如缓冲器池统计和Tx/Rx以太网接口统计的各种CAL和DPAA资源。
上面的描述仅提供了本发明特定实施例的公开,而不旨在限制其等同物。同样地,本发明不限于仅上面描述的实施例。而且,认为本领域技术人员能够构思落入本发明范围内的替代性的实施例。

Claims (34)

1.一种多核处理器,包括核抽象层,所述多核处理器包括依附在调制
解调器板的多个处理器核,所述核抽象层将核具体细节对运行在处理
器核上的数据链路层应用隐藏,所述核抽象层包括:
初始化模块,向一个或多个帧管理器加载网络配置数据以及静态解析、分类和分配PCD规则,并且基于一组配置文件建立核抽象层框架;
缓冲器模块,为一个或多个数据链路层应用提供无锁缓冲器管理服务;
消息模块,向数据链路层应用提供向另一板发送用户面数据或从另一板接收用户面数据的零拷贝和无锁消息服务;
PCD模块,提供由帧管理器用于将入站帧路由到适当的核的PCD规则和配置;以及
数据路径加速架构DPAA跟踪模块,提供用于在DPAA驱动中开启和禁用跟踪的跟踪能力,所述DPAA跟踪模块与所述DPAA驱动对接以实现这样的服务。
2.根据权利要求1所述的多核处理器,其中所述缓冲器模块实现并提
供支持一个或多个以下服务的无锁应用编程接口,所述服务包括:
获取缓冲器;
获取给定数量的给定大小的缓冲器,然后返回可用缓冲器的列表直到所请求数量的缓冲器;
释放指定的缓冲器;
释放缓冲器的列表;以及
查询缓冲器池统计。
3.根据权利要求1所述的多核处理器,其中所述初始化模块、所述缓冲器模块、所述消息模块、所述PCD模块以及所述DPAA跟踪模块在用户空间下工作。
4.根据权利要求1所述的多核处理器,其中所述DPAA驱动模块在内核空间下工作。
5.根据权利要求1所述的多核处理器,其中所述DPAA驱动模块操作为提供一个或多个以下功能:
管理用于用户面数据分配的包括缓冲器池和帧队列的DPAA资源;
经由文件操作,向其他CAL模块提供用户空间接口;
执行内核到用户空间的缓冲器映射;
提供DPAA缓冲器池以及接收机和发射机的统计数据;以及
实现用于管理环形缓冲器的服务。
6.根据权利要求5所述的多核处理器,其中所述文件操作包括以下文件操作中的至少一个:
打开、释放、用于初始化的i-o控制、缓冲器管理以及消息服务。
7.一种用于在电信网络中提供多小区支持的装置,所述装置包括:
调制解调器板;以及
依附在调制解调器板的多核处理器,所述多核处理器配置成服务于所述电信网络中的多于一个的小区,所述多核处理器包括多个处理器核和核抽象层,在多个处理器核中,单个分区利用包括于其中的处理器核定义,以及其中单个分区用来执行控制面功能和数据面功能;所述核抽象层将核具体细节对运行在单个分区中的处理器核上的数据链路层应用隐藏,
其中核抽象层包括一个或多个以下模块:
初始化模块,向一个或多个帧管理器加载网络配置数据以及静态解析、分类和分配PCD规则,并且基于一组配置文件建立核抽象层框架;
缓冲器模块,为一个或多个数据链路层应用提供无锁缓冲器管理服务;
消息模块,向数据链路层应用提供向另一板发送用户面数据或从另一板接收用户面数据的零拷贝以及无锁消息服务;
PCD模块,提供由帧管理器用于将入站帧路由到适当的核的PCD规则和配置;
数据路径加速架构DPAA跟踪模块,提供用于在DPAA驱动模块中开启和禁用跟踪的跟踪能力,所述DPAA跟踪模块与所述DPAA驱动对接以实现这样的服务。
8.根据权利要求7所述的装置,其中所述初始化模块、所述缓冲器模块、所述消息模块、所述PCD模块以及所述DPAA跟踪模块在用户空间下工作。
9.根据权利要求7所述的装置,其中所述DPAA驱动模块在内核空间下工作。
10.根据权利要求9所述的装置,其中所述DPAA驱动模块操作为提供一个或多个以下功能:
管理用于用户面数据分配的包括缓冲器池和帧队列的DPAA资源;
经由文件操作,向其他CAL模块提供用户空间接口;
执行内核到用户空间的缓冲器映射;
提供DPAA缓冲器池以及接收机和发射机的统计数据;以及
实现用于管理环形缓冲器的服务。
11.根据权利要求10所述的装置,其中所述文件操作包括以下文件操作中的至少一个:
打开、释放、用于初始化的i-o控制、缓冲器管理以及消息服务。
12.根据权利要求7所述的装置,其中多核处理器被配置成服务于电信网络中的至少3个小区,所述多核处理器还相应地包括用于电信网络中的至少3个小区的每个的上行链路调度器和下行链路调度器。
13.根据权利要求7所述的装置,其中所述多核处理器具有8个处理器核。
14.根据权利要求7所述的装置,其中一个操作系统实例运行在所有核上并包括具有PREEEMPT_RT的SMPLinux。
15.一种用于在电信网络中提供多小区支持的装置,所述装置包括:
调制解调器板;以及
依附在调制解调器板的多核处理器,其中所述多核处理器包括多个处理器核,其中至少一个处理器核用于执行控制面功能,剩余处理器核用于执行数据面功能,并且核抽象层配置成将核具体细节对运行在处理器核上的应用软件隐藏,以及其中所述多核处理器配置成包括用于故障隔离的监控软件实体;
其中,所述核抽象层包括一个或多个以下模块:
初始化模块,向一个或多个帧管理器加载网络配置数据以及静态解析、分类和分配PCD规则,并且基于一组配置文件建立核抽象层框架;
缓冲器模块,为一个或多个层2应用提供无锁缓冲器管理服务;
消息模块,向层2软件提供向另一板发送用户面数据或从另一板接收用户面数据的零拷贝和无锁消息服务;
PCD模块,提供由帧管理器用于将入站帧路由到适当的核的PCD规则和配置;
跟踪模块,提供用于在驱动模块中开启和禁用跟踪的跟踪能力。
16.根据权利要求15所述的装置,其中所述初始化模块、所述缓冲器模块、所述消息模块、所述PCD模块以及所述跟踪模块在用户空间下工作。
17.根据权利要求15所述的装置,其中所述驱动模块在内核空间下工作。
18.根据权利要求17所述的装置,其中所述驱动模块操作为提供一个或多个以下功能:
管理用于用户面数据分配的包括缓冲器池和帧队列的资源;
经由一个或多个文件操作,向其他核抽象层模块提供用户空间接口,其中所述文件操作包括打开、释放、用于初始化的i-o控制、缓冲器管理以及消息服务;
执行内核到用户空间的缓冲器映射;
提供缓冲器池以及接收机和发射机的统计数据;以及
实现用于管理环形缓冲器的服务。
19.根据权利要求15所述的装置,其中所述多核处理器配置成服务于电信网络中的至少3个小区,每个小区具有相应的上行链路调度器和相应的下行链路调度器。
20.根据权利要求15所述的装置,其中所述多核处理器具有8个处理器核。
21.根据权利要求15所述的装置,其中第一处理器核运行第一操作系统,剩余处理器核的每个运行第二操作系统。
22.一种用于在电信网络中提供多小区支持的装置,所述装置包括:
包含多核处理器的调制解调器板,所述多核处理器包括多个处理器核;
核抽象层设备驱动模块,通过从应用软件提取硬件和核具体细节并提供用户空间框架来管理和配置新硬件加速引擎和多核处理器上的资源,以配置硬件加速引擎缓冲器管理器,以便为一个或多个用户空间层2应用实现无锁零拷贝多核缓冲器管理服务,其中所述核抽象层还包括:
初始化模块,向一个或多个硬件加速器帧管理器引擎加载一个或多个网络配置数据以及静态解析、分类和分配PCD规则,并且基于一组配置文件建立核抽象层框架;
PCD模块,允许所述应用软件将硬件加速引擎排队管理器和帧管理器编程为支持用于将入站帧路由到适当的核的静态或动态PCD规则和配置;以及
跟踪模块,为新硬件加速引擎和管理新硬件加速引擎以用于调试目的的内核空间核抽象层设备驱动器,提供用于开启和禁用跟踪的跟踪能力。
23.根据权利要求22所述的装置,其中从处理核向硬件加速器帧管理器引擎卸载用于将分组从网络接口路由到运行在核之一上的应用软件的处理密集操作,其中用于分组路由的处理密集操作包括分组报头解析、分组分类TCP/UDP、控制面或用户面以及对具体核的分组分布中的一个或多个。
24.根据权利要求22所述的装置,还包括用户空间框架,其使用硬件加速引擎缓冲器管理器,并实现多核、无锁、零拷贝缓冲器管理方案,其中,多个缓冲器请求同时从运行在任意核上的任意应用软件到达,以减少限制软件锁的使用性能。
25.根据权利要求22所述的装置,其中所述核抽象层还包括单个实体门闸,其配置和管理多核处理器上的硬件加速引擎资源,并向应用软件提供到硬件加速引擎资源的用户空间接口。
26.根据权利要求22所述的装置,其中所述初始化模块配置硬件加速引擎,以基于至少一个IP地址、目的地应用软件和核设置用于控制和数据面业务的一个或多个静态PCD规则,所述应用软件在初始化时继续运行。
27.根据权利要求22所述的装置,其中所述PCD模块还配置成当包含多核处理器的调制解调器板完全初始化并且可运行之后配置新小区时,设置用于用户面业务的动态PCD规则,其中将到达网络接口的小区相关的用户面分组直接路由到在上面运行相关小区的L2调度器的具体核。
28.根据权利要求22所述的装置,其中所述PCD还配置成当去除或删除先前配置的小区时去除与小区相关的用户面业务的动态PCD规则,以及设置备选PCD规则以将这样的分组路由到控制面核用于分组处理直到再次配置制定的小区为止。
29.根据权利要求28所述的装置,其中通过PCD规则配置硬件加速器引擎帧管理器,允许具有IP和UDP报头的到达用户空间以太网接口的帧经历粗分类并路由到适当目的地处理核。
30.根据权利要求28所述的装置,其中通过PCD规则规定硬件加速器引擎帧管理器,允许精确匹配分配方案用来将整个或部分目的地IP地址映射到特定的核,其中未被匹配的帧将排队进入被分配到控制面核的帧队列。
31.根据权利要求22所述的装置,其中所述核抽象层设备驱动模块在内核空间下工作。
32.根据权利要求22所述的装置,其中所述核抽象层设备驱动模块操作为提供一个或多个以下功能:
管理用于用户面数据分配的包括缓冲器池和帧队列的硬件加速引擎资源;
经由一个或多个文件操作,向其他核抽象层设备驱动模块提供用户空间接口,其中所述一个或多个文件操作包括打开、释放、用于初始化的i-o控制、缓冲器管理以及消息服务;
提供内核到用户空间的缓冲器映射;
提供硬件加速引擎缓冲器池以及接收机和发射机的统计数据;以及
实现用于管理环形缓冲器的服务。
33.根据权利要求22所述的装置,其中所述多核处理器包括8个处理器核。
34.根据权利要求22所述的装置,其中多核处理器被配置成服务于电信网络中的至少3个小区,每个小区具有相应的上行链路调度器和相应的下行链路调度器。
CN201180048838.2A 2010-10-14 2011-09-29 用于电信网络应用的核抽象层 Expired - Fee Related CN103154897B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/904,322 US20120093047A1 (en) 2010-10-14 2010-10-14 Core abstraction layer for telecommunication network applications
US12/904,322 2010-10-14
PCT/US2011/053804 WO2012050939A1 (en) 2010-10-14 2011-09-29 Core abstraction layer for telecommunication network applications

Publications (2)

Publication Number Publication Date
CN103154897A CN103154897A (zh) 2013-06-12
CN103154897B true CN103154897B (zh) 2016-08-03

Family

ID=45218140

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180048838.2A Expired - Fee Related CN103154897B (zh) 2010-10-14 2011-09-29 用于电信网络应用的核抽象层

Country Status (6)

Country Link
US (1) US20120093047A1 (zh)
EP (1) EP2628081A1 (zh)
JP (1) JP5759006B2 (zh)
KR (1) KR101636308B1 (zh)
CN (1) CN103154897B (zh)
WO (1) WO2012050939A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110054415A (ko) * 2009-11-17 2011-05-25 삼성전자주식회사 화면 표시 방법 및 장치
US8634302B2 (en) * 2010-07-30 2014-01-21 Alcatel Lucent Apparatus for multi-cell support in a network
US8504744B2 (en) 2010-10-28 2013-08-06 Alcatel Lucent Lock-less buffer management scheme for telecommunication network applications
US8737417B2 (en) 2010-11-12 2014-05-27 Alcatel Lucent Lock-less and zero copy messaging scheme for telecommunication network applications
US8730790B2 (en) 2010-11-19 2014-05-20 Alcatel Lucent Method and system for cell recovery in telecommunication networks
US8861434B2 (en) 2010-11-29 2014-10-14 Alcatel Lucent Method and system for improved multi-cell support on a single modem board
US9357482B2 (en) 2011-07-13 2016-05-31 Alcatel Lucent Method and system for dynamic power control for base stations
US10212101B2 (en) 2014-01-14 2019-02-19 Nant Holdings Ip, Llc Low level provisioning of network fabrics
US9917728B2 (en) * 2014-01-14 2018-03-13 Nant Holdings Ip, Llc Software-based fabric enablement
US9740513B2 (en) * 2014-06-05 2017-08-22 Futurewei Technologies, Inc. System and method for real time virtualization
CN106533800B (zh) * 2016-12-16 2019-12-06 深圳市有方科技股份有限公司 一种实现终端网络适配的方法及rndis设备
CN106851667B (zh) * 2017-01-19 2019-07-02 京信通信系统(中国)有限公司 一种针对空口协议数据面的数据处理方法及装置
US20190114206A1 (en) * 2017-10-18 2019-04-18 Cisco Technology, Inc. System and method for providing a performance based packet scheduler
CN110753008A (zh) * 2018-07-24 2020-02-04 普天信息技术有限公司 基于dpaa的网络数据处理装置和方法
US11687400B2 (en) * 2018-12-12 2023-06-27 Insitu Inc., A Subsidiary Of The Boeing Company Method and system for controlling auxiliary systems of unmanned system
KR102420481B1 (ko) * 2019-12-10 2022-07-14 디노플러스 (주) 적응형 데이터 계측 가속화 기술을 이용한 저지연 클라우드 서비스제공장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545800A (zh) * 2001-08-22 2004-11-10 提维股份有限公司 多媒体信号处理系统
CN101071524A (zh) * 2006-05-13 2007-11-14 石河子开发区兆赫科技发展有限责任公司 电网载波集抄系统的actpis中间件及其所构成的电网载波集抄系统
US7620753B1 (en) * 2005-03-17 2009-11-17 Apple Inc. Lockless access to a ring buffer

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6002667A (en) * 1995-07-19 1999-12-14 Fujitsu Network Communications, Inc. Minimum guaranteed cell rate method and apparatus
US6175914B1 (en) * 1997-12-17 2001-01-16 Advanced Micro Devices, Inc. Processor including a combined parallel debug and trace port and a serial port
US6314501B1 (en) * 1998-07-23 2001-11-06 Unisys Corporation Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory
US6842811B2 (en) * 2000-02-24 2005-01-11 Pts Corporation Methods and apparatus for scalable array processor interrupt detection and response
US6999432B2 (en) * 2000-07-13 2006-02-14 Microsoft Corporation Channel and quality of service adaptation for multimedia over wireless networks
US6799200B1 (en) * 2000-07-18 2004-09-28 International Business Machines Corporaiton Mechanisms for efficient message passing with copy avoidance in a distributed system
US7089289B1 (en) * 2000-07-18 2006-08-08 International Business Machines Corporation Mechanisms for efficient message passing with copy avoidance in a distributed system using advanced network devices
US6735620B1 (en) * 2000-07-18 2004-05-11 International Business Machines Corporation Efficient protocol for retransmit logic in reliable zero copy message transport
JP2002050996A (ja) * 2000-07-31 2002-02-15 Sony Corp 整数倍相互関係を有するブロック長を用いて符号化された信号を通信伝送路を介して送信する通信システム
US7096034B2 (en) * 2001-10-01 2006-08-22 Microsoft Corporation System and method for reducing power consumption for wireless communications by mobile devices
JP2003271404A (ja) * 2002-03-19 2003-09-26 Fujitsu Ltd マルチプロセッサシステム
GB2411254B (en) * 2002-11-18 2006-06-28 Advanced Risc Mach Ltd Monitoring control for multi-domain processors
US7810124B2 (en) * 2003-01-28 2010-10-05 Thomson Licensing Robust mode staggercasting fast channel change
US7996839B2 (en) * 2003-07-16 2011-08-09 Hewlett-Packard Development Company, L.P. Heterogeneous processor core systems for improved throughput
CN1879389B (zh) * 2003-10-15 2010-08-18 株式会社Ntt都科摩 控制分层通信环境中多个通信层的操作的设备和方法
JP4287430B2 (ja) * 2003-10-15 2009-07-01 株式会社エヌ・ティ・ティ・ドコモ 複数の通信層の動作を制御する装置及び方法
US7206966B2 (en) * 2003-10-22 2007-04-17 Hewlett-Packard Development Company, L.P. Fault-tolerant multi-core microprocessing
US7474653B2 (en) * 2003-12-05 2009-01-06 Hewlett-Packard Development Company, L.P. Decision cache using multi-key lookup
US7370326B2 (en) * 2004-04-02 2008-05-06 Emulex Design & Manufacturing Corporation Prerequisite-based scheduler
US8644246B2 (en) * 2005-07-05 2014-02-04 Nokia Corporation Scheduling information at serving cell change
US20070113229A1 (en) * 2005-11-16 2007-05-17 Alcatel Thread aware distributed software system for a multi-processor
EP1798897B1 (en) * 2005-12-14 2008-06-18 NTT DoCoMo, Inc. Apparatus and method for determining transmission policies for a plurality of applications of different types
US7562258B2 (en) * 2006-02-09 2009-07-14 Arm Limited Generation of trace elements within a data processing apparatus
EP2005691A4 (en) * 2006-03-28 2013-02-20 Radisys Canada Inc MULTIMEDIA PROCESSING IN PARALLEL MULTI-DATA DATA PROCESSING ARCHITECTURES
US20080002681A1 (en) * 2006-06-30 2008-01-03 Symbol Technologies, Inc. Network wireless/RFID switch architecture for multi-core hardware platforms using a multi-core abstraction layer (MCAL)
US7493477B2 (en) * 2006-06-30 2009-02-17 Intel Corporation Method and apparatus for disabling a processor core based on a number of executions of an application exceeding a threshold
EP2035928A2 (en) * 2006-06-30 2009-03-18 Symbol Technologies, Inc. Systems and methods for processing data packets using a multi-core abstraction layer (mcal)
CN101106490B (zh) * 2006-07-11 2012-01-04 华为技术有限公司 预置流分类器的建立方法及其系统和用户终端
KR20100094973A (ko) * 2007-09-28 2010-08-27 핀-한 호 중첩 변조를 사용하는 무선 데이터 멀티캐스트용의 강건한 시스템 및 방법
US8453121B2 (en) * 2007-10-25 2013-05-28 International Business Machines Corporation Managing the tracing of the execution of a computer program
ES2659870T3 (es) * 2008-04-22 2018-03-19 Nokia Technologies Oy Agrupamiento de células para distribución de información de célula vecina eficiente
US7966519B1 (en) * 2008-04-30 2011-06-21 Hewlett-Packard Development Company, L.P. Reconfiguration in a multi-core processor system with configurable isolation
US8024417B2 (en) * 2008-06-04 2011-09-20 Microsoft Corporation Simple flow control protocol over RDMA
US20100029266A1 (en) * 2008-07-02 2010-02-04 Nokia Corporation System and methods for quality of experience reporting
US8271996B1 (en) * 2008-09-29 2012-09-18 Emc Corporation Event queues
US8191134B1 (en) * 2008-09-29 2012-05-29 Sonicwall, Inc. Lockless distributed IPsec processing
US9203595B2 (en) * 2008-10-22 2015-12-01 Lg Electronics Inc. Efficient initial access system under a multi-carrier combination condition for supporting broadband
KR101546780B1 (ko) * 2008-12-18 2015-08-25 삼성전자주식회사 광대역 무선통신 망에서 서비스 플로우 변경 시 오류 처리를 위한 장치 및 방법
US8099546B2 (en) * 2009-06-09 2012-01-17 Red Hat, Inc. Mechanism for a lockless ring buffer in overwrite mode
US8413153B2 (en) * 2009-06-12 2013-04-02 Freescale Semiconductor Inc. Methods and systems for sharing common job information
US8291430B2 (en) * 2009-07-10 2012-10-16 International Business Machines Corporation Optimizing system performance using spare cores in a virtualized environment
US8737262B2 (en) * 2009-11-24 2014-05-27 Red Hat Israel, Ltd. Zero copy transmission with raw packets
US8675577B2 (en) * 2010-12-20 2014-03-18 Intel Corporation Signaling techniques for a multimedia-aware radio and network adaptation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545800A (zh) * 2001-08-22 2004-11-10 提维股份有限公司 多媒体信号处理系统
US7620753B1 (en) * 2005-03-17 2009-11-17 Apple Inc. Lockless access to a ring buffer
CN101071524A (zh) * 2006-05-13 2007-11-14 石河子开发区兆赫科技发展有限责任公司 电网载波集抄系统的actpis中间件及其所构成的电网载波集抄系统

Also Published As

Publication number Publication date
JP5759006B2 (ja) 2015-08-05
WO2012050939A1 (en) 2012-04-19
CN103154897A (zh) 2013-06-12
KR101636308B1 (ko) 2016-07-05
JP2014501054A (ja) 2014-01-16
KR20130056333A (ko) 2013-05-29
EP2628081A1 (en) 2013-08-21
US20120093047A1 (en) 2012-04-19

Similar Documents

Publication Publication Date Title
CN103154897B (zh) 用于电信网络应用的核抽象层
CN103210619B (zh) 用于电信网络应用的无锁和零拷贝消息传送方案
US7788411B2 (en) Method and system for automatically reflecting hardware resource allocation modifications
US7769031B2 (en) Virtual machine system and method of network communication between virtual machines
KR101502808B1 (ko) 단일 모뎀 보드 상의 개선된 멀티-셀 지원을 위한 방법 및 시스템
CN103229535B (zh) 电信网络中用于单元恢复的方法和系统
US8005022B2 (en) Host operating system bypass for packets destined for a virtual machine
US8625431B2 (en) Notifying network applications of receive overflow conditions
US7733890B1 (en) Network interface card resource mapping to virtual network interface cards
US7660322B2 (en) Shared adapter
US10708198B1 (en) Methods and apparatus to reduce packet flooding and duplicate packets in a multi-fabric virtual network
US7613198B2 (en) Method and apparatus for dynamic assignment of network interface card resources
JP5186555B2 (ja) 共有イーサネット・ポート用の論理ポート・レベルにおいて帯域幅キャッピングを実装するための方法、装置及びコンピュータ・プログラム
US7966401B2 (en) Method and apparatus for containing a denial of service attack using hardware resources on a network interface card
US7672299B2 (en) Network interface card virtualization based on hardware resources and software rings
Kundu et al. Hardware acceleration for open radio access networks: A contemporary overview
Zeng et al. CONTC: A Traffic Control System for Container Overlay Networks
JPH0666813B2 (ja) データ通信システム及び通信路確立方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160803

Termination date: 20170929