[go: up one dir, main page]

CN102823201A - 用于过滤媒体分组的方法和设备 - Google Patents

用于过滤媒体分组的方法和设备 Download PDF

Info

Publication number
CN102823201A
CN102823201A CN2010800584597A CN201080058459A CN102823201A CN 102823201 A CN102823201 A CN 102823201A CN 2010800584597 A CN2010800584597 A CN 2010800584597A CN 201080058459 A CN201080058459 A CN 201080058459A CN 102823201 A CN102823201 A CN 102823201A
Authority
CN
China
Prior art keywords
grouping
media
lut
packet
network
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.)
Granted
Application number
CN2010800584597A
Other languages
English (en)
Other versions
CN102823201B (zh
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.)
Cisco Systems International SARL
Original Assignee
Cisco Systems International SARL
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 Cisco Systems International SARL filed Critical Cisco Systems International SARL
Publication of CN102823201A publication Critical patent/CN102823201A/zh
Application granted granted Critical
Publication of CN102823201B publication Critical patent/CN102823201B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • 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
    • 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/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9057Arrangements for supporting packet reassembly or resequencing
    • 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/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/152Multipoint control units therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种视频会议设备中的用于过滤来自视频会议数据流的媒体分组的方法。所述视频会议设备包括媒体处理网络、通用网络、软核处理器、查找表存储器(LUT)以及满网络堆栈。该方法包括在所述软核处理器处接收视频会议媒体流的分组,确定该分组的长度是否长到足以包含媒体,确定该分组的协议是否被所述软核处理器支持,找到该分组的媒体流ID,利用所述媒体流ID作为输入值来向所述LUT发送请求同时并行确定该分组是否为有效媒体分组;以及当从所述LUT接收到所述媒体处理网络中的目的地地址并且确定该分组是有效媒体分组时,利用从所述LUT接收到的所述目的地地址来修改该分组的头部;并且将该分组路由到修改后的目的地地址。一种视频会议设备适用于执行该方法。

Description

用于过滤媒体分组的方法和设备
技术领域
本发明总地涉及对视频会议数据的处理。更具体的说,本发明涉及从视频会议数据流中过滤媒体分组的方法,以及诸如多点控制单元之类的执行该方法的视频会议设备。
背景技术
视频会议和相关硬件大体落入两个阵营。在第一阵营中,“会议”在仅两个参与者之间发生,并且参与者通过某种形式的数据网络而彼此直接连接。在该形式的网络中,仅涉及两个端点,并且仅在这两个端点站点之一处存在多个参与者的情况下发生真实会议。这类会议的示例在低技术端是利用诸如NetMeeting或Skype
Figure BPA00001565206900012
之类的软件的PC使能的端点互连,并且在更高端是利用例如经由ISDN或IP(因特网协议)链路而互连的专用端点硬件的设备。
在第二阵营中,视频会议允许多于两个端点彼此交互。这是通过提供至少一个集中式协调点即所谓的“多点控制单元(MCU)”来实现的,MCU接收来自端点的视频和音频流,以期望方式使其组合,并且将组合后的复合视频/音频流重新发送到参与者。发送到端点的会议视图对于每个端点经常是相同的。构成可随时间过去而改变但是对于所有参与者是相同的。
仅提供单个构成是重要的问题,这是因为每个参与者因而必须接收如下会议流,该会议流被剪裁以使得其对会议中最低能力的端点而言是可以接受的。因此在该情形下许多端点未被最大限度使用并且因而可经历降级的图像和音频。
最近,现代MCU已被设计为允许为每个参与者创建唯一的视图。这允许每个端点的能力被充分利用并且还允许针对不同参与者的不同构成,结果,例如会议中的具体参与者的重点对于不同用户可以是不同的。然而,视频数据的实时处理是高度处理器密集型任务。其还涉及大量数据的移动。一旦为了执行高质量处理而解压缩了数据尤其如此。因此,处理能力和带宽约束在允许产生会议的多个视图的高质量视频会议MCU的创建中是重要瓶颈。
图1示出了典型的现有技术MCU架构。该示例性架构具有诸如德州仪器TMS系列之类的经由时分复用(TDM)总线4互连的多个数字信号处理器2。控制器和网络接口6也被连接到TDM总线。每个DSP 2被分配TDM总线上的一个或多个时间槽。将会认识到,TDM总线是显著瓶颈。在可以通过添加更多强大DSP或附加DSP来实现MCU的增加处理能力的同时,在DSP之间以及在网络8与DSP之间流动的所有数据必须适合TDM总线4上的有限数目的时间槽。因此,该形式的架构一般可扩展性极差,并且无法满足依照参与者的构成的处理要求。
图2示出了替代性的现有技术配置。在该示例中,多个DSP 2-1被各自连接到外围组件互连(PCI)总线10-1。类似地,多个DSP 2-2、2-3和2-4被连接到相应的PCI总线10-2、10-3和10-4。PCI总线10-2、10-3和10-4又经由缓冲器12连接到另一PCI总线14。该架构相对于图1所示架构的显著优点在于组2-1中的DSP可相互通信,唯一瓶颈是PCI总线10-1。对组2-2、2-3和2-4也是如此。然而,如果组2-1中的DSP希望与例如组2-3中的DSP通信,那么PCI总线14必须被利用。因此,虽然该架构在扩展性以及有效利用多个DSP的能力方面是对图1中示出的架构的显著改进,但是PCI总线14仍然必须被用于DSP内通信的某些组合,因而可变成MCU架构的性能限制因素。
已经做出从DSP卸载处理的尝试。例如,IDT以零件编号IDT70K2000制造与DSP一起使用的“预处理交换机(PPS)”。PPS在递送到诸如DSP或FPGA之类的处理器之前执行预定功能。处理是基于分组所被发送到的交换机上的地址范围来确定的。芯片例如是针对3G移动电话中的用途来设计的,并且例如被设计用于从DSP卸载通常将被DSP低效执行的基本任务。
提供高度可扩展并且非常强大的处理平台的第三MCU架构在US20080158338和US20090213126中被公开。图3示出了母板20,该母板承载了现场可编程门阵列(FPGA)24以及多个子板22。FPGA 24在控制器(未示出)、网络接口(未示出)以及多个子板22之间路由数据。使母板20与子板的第一层相连的链路26可具有例如3Gb/秒或者更高的带宽。每个子板具有多个处理器,即经由子板交换机互连的数字信号处理器(DSP)。每个子板交换机被配置为在多个DSP之间以及在母板、子板和其他子板之间交换数据。在一个示例中,并且还参考图4,每个子板20具有各自具有关联存储器30的四个DSP 28。每个子板还具有包括交换机34的FPGA 32。FPGA 32还包括处理器36,以及两个高带宽链路38。虽然该架构是对替代现有技术的极大改进,这是因为板到板通信被极大减少,但是板到板通信仍然依赖于处理器过滤分组和利用满网络堆栈向DSP重新分配媒体分组。这对处理器造成不必要的负担,从而使系统减慢。尽管联系图3和4的架构具体提到,但是这对于在图2中示出的基于PCI总线的MCU架构甚至是更大的问题。
发明内容
本领域中存在对用于过滤来自视频会议媒体流的媒体分组而不必借助于满网络堆栈的方法和设备的需要。本发明的方法和设备允许在小型软核处理器上实现对来自视频会议媒体流的媒体分组的过滤,以便对千兆位以太网线路速度的媒体分组进行验证、分类和重定向。
本发明由所附权利要求书指示。
根据本发明的第一方面,包括一种用于在视频会议设备中过滤来自视频会议数据流的媒体分组的方法,该视频会议设备包括媒体处理网络、通用网络、软核处理器、查找表存储器(LUT)以及满网络堆栈。所述软核处理器处接收视频会议媒体流的分组,并且首先确定该分组的长度是否长到足以包含媒体,然后所述软核处理器确定其是否支持该分组的协议。在初始验证步骤之后,所述软核处理器找到该分组的媒体流ID,并且利用该媒体流ID作为输入值来向所述LUT发送请求,同时并行确定该分组是否为有效媒体分组。当所述软核处理器从所述LUT接收到所述媒体处理网络中的目的地地址,并且该分组被确定为有效媒体分组时,所述软核处理器利用从所述LUT接收到的所述目的地地址来修改该分组的头部;并且将该分组路由到修改后的目的地地址。
根据本发明的第二方面,当确定分组是有效媒体分组同时未从所述LUT接收到所述媒体处理网络中的目的地地址时,将该分组路由到所述满网络堆栈,其中该分组在媒体网络中的目的地地址被解析,并且该分组被路由到所述媒体网络中的目的地地址。随后,使用该分组的对应媒体流ID作为索引值,利用媒体网络中的目的地地址来更新所述LUT。
根据本发明的第三方面,未被确定为有效媒体分组、可能的媒体分组并且/或者在未被所述软核处理器支持的协议中的分组被直接路由到所述满网络堆栈。
在结合附图回顾对本发明具体实施例的以下描述之后,本发明的其他方面和特征对本领域普通技术人员将变得显而易见。
附图说明
图1是现有技术MCU架构的示意性框图;
图2是替代现有技术MCU架构的示意性框图;
图3是示出另一替代现有技术MCU架构的示意性框图;
图4是根据图3的现有技术MCU架构的现有技术子板的示意性框图;
图5是根据本发明一个示例性实施例的媒体分组过滤单元的示意性框图;
图6是根据本发明的用于媒体分组过滤的方法的流程图;并且
图7是根据本发明的用于媒体分组过滤的方法的另一示例性流程图。
具体实施方式
给出以下描述是为了使得本领域的普通技术人员能够做出和使用本发明的各种方面和示例。对具体设备、技术和应用的描述仅是作为示例提供的。对在此描述的示例的各种修改对本领域的普通技术人员而言将是显而易见的,并且在此定义的一般性原理可被应用到其他示例和应用,而不脱离本发明的精神和范围。因此,本发明并不欲限于所示出并在此描述的示例,而是将符合与权利要求一致的范围。
参考图5,媒体分组过滤单元50包括三FIFO 51、软核处理器52以及查找表LUT 59。三FIFO 51是具有三个端口53、54和55的同步或异步的FIFO(先入先出)。第一端口是通常与数据流送网络相连的数据输入端口53,该端口被配置为根据数据流送网络的网络协议接收数据以及相应的控制信令。第三端口是与媒体处理网络相连的数据输出端口55。媒体处理网络通常由大量DSP、交换机等组成,如上面参考图1、2和3描述的。媒体处理网络还被连接到主MCU中的通用网络,该通用网络是由满网络堆栈或者主网络堆栈58控制的。主网络堆栈还与LUT 59操作地相连。数据输出端口55被配置为根据媒体处理网络的网络协议将媒体数据流送到媒体处理网络中。或者数据输出端口55被配置为随机访问读取端口。第二端口是与软核处理器52相连的软核处理器接口端口54。接口端口54被配置为向软核处理器52发送和从软核处理器52接收数据。在本发明的示例性实施例中,接口端口54被配置为读取/写入随机访问端口。另外,三FIFO还包括在三个端口之间的传递的至少三个,优选至少四个,数据分组缓冲器56,从而从端口53循环到端口54、从端口54循环到端口55,并且最终从端口55返回端口53。数据分组缓冲器是本领域技术人员已知的传统数据分组缓冲器。
在示例性的主网络堆栈中,应用层使用RTP,传输层使用TCP/UDP,因特网层使用IP(IPv4),并且链路层使用以太网。因特网层例如可以是IPv4或IPv6。主网络堆栈必须包括对UDP和TCP两者的处理。TCP被多数控制协议使用。主堆栈上还需要RTP堆栈,以便处理未被软核处理器和LUT识别出的分组,使得它们可被转发到正确的目的地。期望对正确的以太网和因特网操作所必需的控制元件的处理是由主网络堆栈而非软核处理器和LUT处理的。这将对ARP、ICMP和以太网PHY和MAC的处理包括在相关设备驱动程序中。事实是存在对设备驱动程序和主机上的网络堆栈透明的软核处理器和LUT-设备驱动程序和IP网络堆栈的正确操作不需要(未在主机上见到的)被过滤的分组。
本领域技术人员所已知的软核处理器52是完全利用逻辑综合(logicsynthesis)实现的微处理器核。其可以经由包含可编程逻辑(例如,FPGA、CPLD)的不同半导体器件来实现。本发明的软核处理器可以是8位、16位或者32位的处理器。软核处理器52还与LUT 59(查找表存储器)进行通信。
LUT 59利用快速存储器来保存当在下面描述LUT的功能时更详细描述的信息。在一个示例性实施例中,LUT被实现在与软核处理器52相同的芯片上,快速存储器优选被实现为片上SRAM(内部FPGA,例如“块RAM”)。在另一示例性实施例中,LUT位于软核处理器52外部,在该情况下快速存储器是诸如DDR2SRAM之类的外部存储器。
虽然在上面被描述为分立器件,但是在本发明的优选实施例中,三FIFO 51、软核处理器52和LUT 59被实现在单个FPGA中。
再次参考图5,三FIFO 51在数据输入端口53上接收来自数据流送网络的数据。取决于流送网络协议,数据输入端口53还接收控制信号,例如wr(写)和eop(分组结束),如本领域技术人员可以容易理解的。在该示例中,数据输入端口53首先写入缓冲器56a。当缓冲器56a是满的时,某一时间限制已经过去,或者由于其他已知触发,缓冲器被传递到软核处理器接口端口54。缓冲器56c同时被从输出端口55传递到输入端口53,并且缓冲器56b被从接口端口54传递到输出端口55。
在接口端口54处,来自缓冲器(在该示例中为56a)的数据被发送到软核处理器52。软核处理器52然后接收分组并对接收到的分组执行初始验证,然后使用下面参考图6描述的新颖和创造性的方法与继续进行对接收到的分组的验证并行地进行向LUT 59的投机请求(speculativerequest)。
图6示出了当前发明的方法,其中该方法在软核处理器接收分组时开始60。在初始验证步骤61中,分组的长度被检查以查找该分组是否长到足以包含媒体,例如包含媒体的RTP(实时协议)分组。然后,如果发现分组是包含媒体的可能的候选者,那么读取分组的头部以确定软核处理器是否支持分组的协议。或者,在以太网实施例中,以太网目的地验证和以太网CRC(循环冗余校验)验证也将是初始验证步骤的一部分。在这些初始验证中的任一个失败的情况下,分组被返回到接口端口54,并且对下一分组的处理开始。被返回到接口端口的分组最终被路由到主满网络堆栈65。
以下包括各种头部的长度示例。
以太网头部=14个八位字节(注:最小以太网有效载荷是46个八位字节)
IPv4头部=20个八位字节
UDP头部=8个八位字节
RTP头部=12
这暗示,不包括以太网帧在内,不包含有效载荷的数据报是40个八位字节。我们假定24个八位字节足以包含有用数据,故长度小于64个八位字节的数据报被发送到主网络堆栈。长度上具有64个或更多个八位字节的数据报被认为长到足以包含媒体。64个八位字节仅仅是一个示例,并且其他值可被使用。在某些情形下,使用40个八位字节是更合理的,因为丢弃无效数据报可以是接收数据处理节点(DSP)中的RDP堆栈的责任。软核处理器52和LUT 59然后仅需防止它们自己尝试处理以太网帧中的不存在数据,从而防止引起无效内部状态。
在初始验证步骤之后,下一步骤62是寻找分组的流ID。通过读取分组头部长度,并且取决于分组的协议而在分组中距离分组头部一偏移处读取字段,例如在UDP的情况下是目的地UDP端口号码,来找到流ID。虽然在此参考UDP来描述,但是因为分组中的流ID根据分组的协议总被布置在分组中距离头部恒定偏移处,因此该寻找流ID的方法适用于若干其他协议,如知晓本公开的本领域技术人员容易理解的。对本发明有用的媒体流ID包括,但不限于,UDP数据报的目的地端口、RDP SCRID、RTP SSRC、H460/18复用ID等。
然后,因为对LUT或LUT查找的请求要花时间,为了使得本发明以千兆位以太网线路速度工作,包含流ID的投机请求62被发送到LUT59,同时对分组的进一步验证63并行地继续。本公开意义下的投机假定与被发送到LUT的流ID相对应的分组是有效的未损坏的媒体分组,作为流ID所标识的假定媒体流的一部分。
在步骤62,使用唯一媒体流ID作为输入值或索引值,请求被发送到LUT 59。如果媒体流ID在LUT中已经存在,那么软核处理器52从LUT接收属于该流ID的信息或者元数据。从LUT接收到的信息是流统计和/或媒体处理网络中的正确目的地地址。该地址可以是IPv4目的地地址、接口索引(MAC地址)、源/目的地(src/dst)端口或者根据网络协议的任何其他网络地址。在媒体流ID未被在LUT中列出的情况下,软核处理器接收表明对于该媒体流ID不存在信息的消息,或者作为替代接收空信息消息。
当LUT查找发生时,对与媒体流ID相对应的分组的进一步验证在步骤63中继续。通常包括进一步的分组格式验证、头部格式验证、分组有效载荷类型等在内的进一步的分组验证确定分组是否为有效的媒体分组。在这些进一步验证中的任一个失败的情况下,分组被返回到接口端口54,由LUT得到的任何数据被丢弃,并且对下一分组的处理开始。被返回到接口端口的分组最终被路由到主满网络堆栈65。
在损坏分组的情况下,LUT中的查找将基于被解释为媒体流ID的伪数据。如果针对该媒体流ID存在条目,那么LUT将返回有效但是不相关的数据,该数据然后当分组被进一步分组验证63认为是无效时被丢弃。
在进一步分组验证63确定分组是有效媒体分组,并且LUT返回与该分组相对应的媒体流ID的元数据的情况下;然后在步骤66中,软核处理器基于从LUT 59接收到的信息利用媒体处理网络中的正确目的地地址来改写所接收到的媒体分组的分组头部,并且将修改后的分组返回到接口端口54处的缓冲器。
属于具有未被LUT 59识别出的媒体流ID的媒体流的分组和/或未被确定为有效媒体分组的分组被未经修改地返回到接口端口54处的缓冲器。当接口端口54处的缓冲器(在该示例中为56a)是满的时,某一时间限制已经过去,或者由于其他已知的触发,缓冲器被传递给数据输出端口55。或者,利用主网络堆栈58的地址来修改头部。
数据输出端口55从缓冲器(在该示例中为56a)中读出数据,并且具有修改后的分组头部的媒体分组被直接向着媒体处理网络中的各个正确目的地地址发送到该网络中。所有其他分组被路由到主网络堆栈。
主网络堆栈然后利用新媒体分组的媒体流ID以及其在媒体处理网络中的各个目的地地址来更新LUT 59。取决于媒体处理网络协议,数据输出端口55还接收控制信号,例如来自媒体处理网络的rd(读取)和done(完成),如本领域技术人员可以容易理解的。
图7示出了根据本发明的一个示例性实施例,其中媒体分组是通过IP/UDP传输的RTP分组。在步骤71中,分组长度被检查以确定分组长度是否足以包含RTP媒体分组,在“是”的情况下方法前进到步骤72。如果未发现分组有可能包含RTP分组,那么分组被路由到主网络堆栈,步骤81,并且对下一分组的处理开始。
在下一步骤72中,分组的头部被读取以确定分组是否为IP/UDP分组。再次,如果分组不是IP/UDP分组,那么分组被路由到主网络堆栈,步骤81,并且对下一分组的处理开始。
在步骤73中,通过读取IP头部长度以及IP头部长度到目的地UDP端口号码的偏移来找到分组的流ID。然后使用目的地UDP端口号码作为输入值或索引值来将请求74发送到LUT 59。在目的地UDP端口号码未被在LUT中列出的情况下,LUT发送表明针对该UDP端口号码不存在信息的消息,或者作为替代LUT发送空信息消息,并且分组被路由到主网络堆栈,步骤81,并且对下一分组的处理开始。
如果UDP端口号码在LUT中已经存在,那么LUT返回媒体处理网络中的正确目的地地址,在该情况下为IPv4目的地地址。
如上面参考图6描述的,当LUT查找发生时,分组在步骤75-79中被进一步验证,并且如果这些步骤中的任一个再次失败,那么分组被路由到主网络堆栈,步骤81,并且对下一分组的处理开始。
步骤75-79中的测试是本领域技术人员所已知的常见分组验证测试,因此将不被详细描述。步骤75验证IP分组校验和。步骤76验证IP头部格式,例如检查IP版本号是4。步骤77验证UDP分组格式。步骤78验证RTP分组格式;并且最终步骤79检查RTP标志和有效载荷类型是否表明分组包含媒体。
在步骤80,被识别为RTP媒体分组并且通过具有正确版本协议的IP/UDP发送的分组的头部被利用从LUT接收到的元数据修改并且被路由到媒体处理网络中的正确目的地地址。
在此公开的用于过滤来自视频会议数据流的媒体分组的方法以及对应的视频会议设备可被实现在多点控制单元(MCU)中。
当然,其他特征和优点对本领域技术人员将会显而易见。前述系统概览表示某些示例性实现方式,但是其他实现方式将对本领域技术人员显而易见,并且所有这种替代方式被认为是等同的并且在仅受权利要求限制的本发明的精神和范围内。
另外,虽然被单独列出,但是多个装置、元件或方法步骤可由例如单个单元或处理器实现。此外,虽然单独特征可被包括在不同的权利要求中,但是这些可能能被有利地组合,并且包括在不同的权利要求中并非暗示特征的组合不是可行和/或有利的。另外,在一种类别的权利要求中包含一特征并非暗示对该类别的限制,而是该特征视情况可同样适用于其他权利要求类别。

Claims (13)

1.一种用于在视频会议设备中过滤来自视频会议数据流的媒体分组的方法,所述视频会议设备包括媒体处理网络、通用网络、软核处理器、查找表存储器(LUT)以及满网络堆栈,该方法包括以下步骤:
在所述软核处理器处接收视频会议媒体流的分组,
确定该分组的长度是否长到足以包含媒体,
确定该分组的协议是否被所述软核处理器支持,
找到该分组的媒体流ID,
在并行确定该分组是否为有效媒体分组的同时,利用所述媒体流ID作为输入值来向所述LUT发送请求;以及
当从所述LUT接收到所述媒体处理网络中的目的地地址并且确定该分组是有效媒体分组时,
利用从所述LUT接收到的所述目的地地址来修改该分组的头部;并且
将该分组路由到修改后的目的地地址。
2.如权利要求1所述的方法,其中所述方法还包括以下步骤:
当确定该分组是有效媒体分组并且未从所述LUT接收到所述媒体处理网络中的目的地地址时,
将该分组路由到所述满网络堆栈,
解析该分组在媒体网络中的目的地地址,
将该分组路由到所述媒体网络中的目的地地址;并且
使用该分组的对应媒体流ID作为索引值,利用所述媒体网络中的所述目的地地址来更新所述LUT。
3.如权利要求1所述的方法,其中,分组的媒体流ID是通过在该分组中距离分组头部由该分组的协议所定义的偏移处读取字段而找到的。
4.如权利要求1所述的方法,其中,在所述分组未长到足以包含媒体数据的情况下,将该分组路由到所述满网络堆栈。
5.如权利要求1所述的方法,其中,在所述分组的协议不被所述软核处理器支持的情况下,将所述分组路由到所述满网络堆栈。
6.如权利要求1所述的方法,其中,在所述分组被确定为不是有效媒体分组的情况下,将所述分组路由到所述满网络堆栈。
7.一种适用于执行如前述权利要求中的一个所述的方法的视频会议设备,该视频会议设备包括
三FIFO,
软核处理器,以及
查找表存储器(LUT)。
8.如权利要求7所述的视频会议设备,其中,所述LUT和所述软核处理器被实现在一个半导体器件上。
9.如权利要求7所述的视频会议设备,其中,所述三FIFO、所述LUT和所述软核处理器被实现在一个半导体器件上。
10.如权利要求8或9所述的视频会议设备,其中,所述半导体器件是现场可编程门阵列(FPGA)。
11.如权利要求7所述的视频会议设备,其中,所述三FIFO包括至少三个数据分组缓冲器。
12.如权利要求11所述的视频会议设备,其中,所述三FIFO包括四个数据分组缓冲器。
13.如权利要求7-12中的一个所述的视频会议设备被实现在多点控制单元(MCU)中。
CN201080058459.7A 2009-12-21 2010-12-20 用于过滤媒体分组的方法和设备 Active CN102823201B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
NO20093566 2009-12-21
NO20093566A NO332162B1 (no) 2009-12-21 2009-12-21 Anordning og fremgangsmate for a filtrere mediapakker
PCT/NO2010/000474 WO2011078687A1 (en) 2009-12-21 2010-12-20 Method and device for filtering media packets

Publications (2)

Publication Number Publication Date
CN102823201A true CN102823201A (zh) 2012-12-12
CN102823201B CN102823201B (zh) 2016-05-25

Family

ID=42289678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080058459.7A Active CN102823201B (zh) 2009-12-21 2010-12-20 用于过滤媒体分组的方法和设备

Country Status (5)

Country Link
US (2) US8855120B2 (zh)
EP (1) EP2517425B1 (zh)
CN (1) CN102823201B (zh)
NO (1) NO332162B1 (zh)
WO (1) WO2011078687A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103313028A (zh) * 2013-06-28 2013-09-18 成都思迈科技发展有限责任公司 一种视频会议终端
CN114531606A (zh) * 2022-02-22 2022-05-24 重庆紫光华山智安科技有限公司 封装待传输视频数据生成、视频传输方法、系统及设备

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180054486A1 (en) * 2009-10-29 2018-02-22 International Business Machines Corporation Speculative Requests
NO332162B1 (no) * 2009-12-21 2012-07-09 Cisco Systems Int Sarl Anordning og fremgangsmate for a filtrere mediapakker
JP5518754B2 (ja) * 2011-01-07 2014-06-11 株式会社日立製作所 ネットワークノード
WO2012145916A1 (zh) * 2011-04-29 2012-11-01 北京中天安泰信息科技有限公司 数据安全存储方法及装置
KR101873296B1 (ko) * 2011-09-15 2018-07-03 삼성전자주식회사 저장공간 확장이 가능한 단말기 및 그 저장공간 확장방법
CN102497372A (zh) * 2011-12-13 2012-06-13 曙光信息产业(北京)有限公司 一种基于ip报文目的端口过滤策略的系统和方法
US9231984B1 (en) * 2012-06-22 2016-01-05 Adtran, Inc. Systems and methods for hair pinning time-division multiplexing calls across time domains
US9191209B2 (en) * 2013-06-25 2015-11-17 Google Inc. Efficient communication for devices of a home network
WO2015192380A1 (zh) * 2014-06-20 2015-12-23 深圳市尊正数字视频有限公司 调色监视器、调色系统以及调色方法
US9847909B2 (en) * 2015-09-24 2017-12-19 Qualcomm Incorporated Network device with shared hardware for multiple communication networks
US11792307B2 (en) 2018-03-28 2023-10-17 Apple Inc. Methods and apparatus for single entity buffer pool management
WO2020036790A1 (en) 2018-08-14 2020-02-20 The Procter & Gamble Company Process and apparatus for the magnetization of magnetizable material
EP3837181A1 (en) 2018-08-14 2021-06-23 The Procter & Gamble Company Conformable package
WO2020036791A1 (en) 2018-08-14 2020-02-20 The Procter & Gamble Company Package with integrated magnetic valve
CN112399950B (zh) 2018-08-14 2022-07-29 宝洁公司 自适应包装
US11558348B2 (en) 2019-09-26 2023-01-17 Apple Inc. Methods and apparatus for emerging use case support in user space networking
US11829303B2 (en) 2019-09-26 2023-11-28 Apple Inc. Methods and apparatus for device driver operation in non-kernel space
US11606302B2 (en) 2020-06-12 2023-03-14 Apple Inc. Methods and apparatus for flow-based batching and processing
US11775359B2 (en) 2020-09-11 2023-10-03 Apple Inc. Methods and apparatuses for cross-layer processing
US11954540B2 (en) 2020-09-14 2024-04-09 Apple Inc. Methods and apparatus for thread-level execution in non-kernel space
US11799986B2 (en) 2020-09-22 2023-10-24 Apple Inc. Methods and apparatus for thread level execution in non-kernel space
CN114727132B (zh) * 2021-01-05 2024-01-12 上海新天策数字科技有限公司 清晰度地址的获取方法、装置、设备及存储介质
US11882051B2 (en) 2021-07-26 2024-01-23 Apple Inc. Systems and methods for managing transmission control protocol (TCP) acknowledgements
US11876719B2 (en) 2021-07-26 2024-01-16 Apple Inc. Systems and methods for managing transmission control protocol (TCP) acknowledgements

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030002448A1 (en) * 2001-06-29 2003-01-02 Laursen Arthur I. Method and system for distributed conference bridge processing
US20030012209A1 (en) * 2001-07-16 2003-01-16 International Business Machines Corporation Network access traffic sorter
US7203867B2 (en) * 2002-09-30 2007-04-10 Kabushiki Kaisha Toshiba Processor system, processor and arithmetic processing method
CN101340574A (zh) * 2008-08-04 2009-01-07 中兴通讯股份有限公司 一种实现零拷贝发送流媒体数据的方法及系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2254980B (en) * 1991-04-16 1995-03-08 Roke Manor Research Improvements in or relating to multicast server apparatus
DE69321145T2 (de) * 1993-03-20 1999-06-02 International Business Machines Corp., Armonk, N.Y. Verfahren und vorrichtung zur herausarbeitung der vermittlungsinformation aus dem kopfteil eines protokolls
US7466703B1 (en) * 1998-05-01 2008-12-16 Alcatel-Lucent Usa Inc. Scalable high speed router apparatus
US6687247B1 (en) * 1999-10-27 2004-02-03 Cisco Technology, Inc. Architecture for high speed class of service enabled linecard
US6795448B1 (en) 2000-03-02 2004-09-21 Intel Corporation IP packet ready PBX expansion circuit for a conventional personal computer with expandable, distributed DSP architecture
US20030099254A1 (en) * 2000-03-03 2003-05-29 Richter Roger K. Systems and methods for interfacing asynchronous and non-asynchronous data media
EP1162794B1 (en) * 2000-06-09 2014-02-26 Broadcom Corporation Gigabit switch with fast filtering processor
US7136381B2 (en) * 2000-06-19 2006-11-14 Broadcom Corporation Memory management unit architecture for switch fabric
US7013482B1 (en) * 2000-07-07 2006-03-14 802 Systems Llc Methods for packet filtering including packet invalidation if packet validity determination not timely made
HUE049792T2 (hu) * 2003-08-25 2020-10-28 Signal Trust For Wireless Innovation Javított uplink mûködés puha hívásátadásnál
US7545818B2 (en) * 2003-08-27 2009-06-09 Mindspeed Technologies, Inc. Method and system for detecting facsimile communication during a VoIP session
GB2407730A (en) 2003-10-30 2005-05-04 Agilent Technologies Inc Programmable network monitoring element
EP1571781A1 (fr) * 2004-03-03 2005-09-07 France Telecom Sa Procédé et système d'accréditation d'un client pour l'accès à un réseau virtuel permettant d'accéder à des services
US7760719B2 (en) * 2004-06-30 2010-07-20 Conexant Systems, Inc. Combined pipelined classification and address search method and apparatus for switching environments
CN102065270B (zh) 2006-11-20 2013-09-25 科蒂安有限公司 用于视频会议的硬件架构
US8179812B2 (en) * 2007-10-02 2012-05-15 Texas Instruments Incorporated System and method for providing status reports of transmitted data packets in a data communications system
US8064454B2 (en) * 2008-04-28 2011-11-22 Hewlett-Packard Development Company, L.P. Protocol incompatibility detection
JP5292952B2 (ja) * 2008-07-04 2013-09-18 富士通株式会社 基地局およびデータ転送方法
US8806506B2 (en) * 2008-09-30 2014-08-12 Ebay Inc. System and method for processing messages using a common interface platform supporting multiple pluggable data formats in a service-oriented pipeline architecture
NO332162B1 (no) * 2009-12-21 2012-07-09 Cisco Systems Int Sarl Anordning og fremgangsmate for a filtrere mediapakker

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030002448A1 (en) * 2001-06-29 2003-01-02 Laursen Arthur I. Method and system for distributed conference bridge processing
US20030012209A1 (en) * 2001-07-16 2003-01-16 International Business Machines Corporation Network access traffic sorter
US7203867B2 (en) * 2002-09-30 2007-04-10 Kabushiki Kaisha Toshiba Processor system, processor and arithmetic processing method
CN101340574A (zh) * 2008-08-04 2009-01-07 中兴通讯股份有限公司 一种实现零拷贝发送流媒体数据的方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103313028A (zh) * 2013-06-28 2013-09-18 成都思迈科技发展有限责任公司 一种视频会议终端
CN114531606A (zh) * 2022-02-22 2022-05-24 重庆紫光华山智安科技有限公司 封装待传输视频数据生成、视频传输方法、系统及设备
CN114531606B (zh) * 2022-02-22 2023-04-11 重庆紫光华山智安科技有限公司 封装待传输视频数据生成、视频传输方法、系统及设备

Also Published As

Publication number Publication date
NO20093566A1 (no) 2011-06-22
US8855120B2 (en) 2014-10-07
US20150023223A1 (en) 2015-01-22
CN102823201B (zh) 2016-05-25
US9807134B2 (en) 2017-10-31
NO332162B1 (no) 2012-07-09
WO2011078687A1 (en) 2011-06-30
EP2517425B1 (en) 2018-08-08
EP2517425A4 (en) 2014-05-21
EP2517425A1 (en) 2012-10-31
US20110149777A1 (en) 2011-06-23

Similar Documents

Publication Publication Date Title
CN102823201A (zh) 用于过滤媒体分组的方法和设备
TWI406133B (zh) 資料處理設備及資料傳送方法
EP2206052B1 (en) Methods and apparatus for managing addresses related to virtual partitions of a session exchange device
JP4890613B2 (ja) パケットスイッチ装置
US7499470B2 (en) Sequence-preserving deep-packet processing in a multiprocessor system
CN1625160A (zh) 可控制数据包传送的交换器及相关方法
CN101800690B (zh) 一种使用地址池实现源地址转换的方法和装置
CN1242548A (zh) 通过传输冗余语音/媒体帧进行因特网实时媒体传输的方法
JP4415023B2 (ja) Pppマルチリンクをサポートするシステムにおけるマルチキャストトラフィックフォーワーディング装置及び制御方法
MXPA06001691A (es) Metodo para realizar transporte de datos sobre un bus en serie usando protocolo de internet y aparato para usarse en el metodo.
US20120163392A1 (en) Packet processing apparatus and method
US5864553A (en) Multiport frame exchange system
US7024516B2 (en) Configurable ternary content addressable memory
US7317692B2 (en) Network path discovery
KR100734736B1 (ko) 데이터 패킷 변환 방법 및 장치와 기록 매체
US8824468B2 (en) System and method for parsing frames
US8532100B2 (en) System and method for data exchange in a heterogeneous multiprocessor system
CN1921489A (zh) 根据send机制来保证用于处理数据分组的通信设备的安全
US6639915B1 (en) Method and apparatus for transmission of voice data in a network structure
CN101699821B (zh) 一种分布式多核网络系统中地址解析协议实现的方法
CN1710905A (zh) 网间互联协议报文处理装置及其方法
CN100373888C (zh) 并行处理路由选择装置
EP2187640A1 (en) Method for converting between interlaced video and progressive video during transmission via a network
Sowmya et al. VLSI Based Robust Router Architecture
JP2002247039A (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