CN104683267A - 一种数据转发方法、装置及交换设备 - Google Patents
一种数据转发方法、装置及交换设备 Download PDFInfo
- Publication number
- CN104683267A CN104683267A CN201310608738.1A CN201310608738A CN104683267A CN 104683267 A CN104683267 A CN 104683267A CN 201310608738 A CN201310608738 A CN 201310608738A CN 104683267 A CN104683267 A CN 104683267A
- Authority
- CN
- China
- Prior art keywords
- port
- data
- forwarding
- address
- request
- 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
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据转发方法、装置及交换设备,该方法包括:将通过第一端口接收到的来自数据请求端且携带源互联网协议IP地址和目的IP地址的数据获取请求转发给中央处理器CPU,用于所述CPU通过第二端口将所述数据获取请求转发给所述目的IP地址对应的数据提供端,并建立包括所述第一端口、所述源IP地址和所述第二端口的转发表项;通过所述第二端口接收到来自所述数据提供端的数据后,通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端。该方案节约了CPU资源,减轻了CPU负载。
Description
技术领域
本发明涉及通信技术领域,尤指一种数据转发方法、装置及交换设备。
背景技术
以太网(Ethernet)技术是一种局域网组网技术规范,是当前应用最普遍的局域网技术,由于其具有组网结构简单灵活、实现成本低廉、技术升级兼容性优良、与接入网亲和性好、易于互联互通等优势,在各个领域和行业都有非常广泛和深入的应用。千兆以太网(Gigabit Ethernet,GE)技术为解决日益增长的网络数据需求而提出,是最新的高速以太网技术,广泛应用于交换机中。
传统的多业务系统如图1所示,使用交换机和各种不同的业务服务器进行组网,交换机用于GE中多个业务服务器间的数据通信,对于每个业务服务器只是纯粹的数据通道。
在多业务系统中的数据转发方法为:当数据请求端向数据提供端发送数据获取请求后,该数据获取请求首先通过交换机发送给管理服务器,管理服务器再通过交换机将该数据获取请求发送给数据提供端,数据提供端将查找到的数据通过交换机发送给管理服务器,再由管理服务器通过交换机转发给数据请求端,管理服务器中最主要的工作器件是中央处理器(Central Processing Unit,CPU),由于每次进行数据转发时CPU都需要首先接收来自数据提供端的数据然后再转发给数据请求端,从而消耗了大量的CPU资源,增加了CPU的负载。
发明内容
本发明实施例提供一种数据转发方法、装置及交换设备,用以解决现有的数据转发方法消耗了大量的CPU资源,增加了CPU的负载问题。
因此,根据本发明实施例,提供一种数据转发方法,包括:
将通过第一端口接收到的来自数据请求端且携带源互联网协议IP地址和目的IP地址的数据获取请求转发给中央处理器CPU,用于所述CPU通过第二端口将所述数据获取请求转发给所述目的IP地址对应的数据提供端,并建立包括所述第一端口、所述源IP地址和所述第二端口的转发表项;
通过所述第二端口接收到来自所述数据提供端的数据后,通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端。
具体的,所述CPU建立包括所述第一端口、所述源IP地址和所述第二端口的转发表项,具体包括:
用于所述CPU解析所述数据获取请求后,得到所述数据请求中携带的所述第二端口、所述源IP地址和所述第一端口;以及
将得到的所述第一端口、所述第二端口和所述源IP地址绑定并建立转发表项。
具体的,通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端,具体包括:
查找包括所述第二端口的转发表项;
通过查找到的转发表项中所述第二端口对应的所述第一端口将所述数据转发给所述源IP地址对应的所述数据请求端。
具体的,所述第一端口和所述第二端口为串行接口。
还提供一种数据转发装置,包括:
第一转发单元,用于将通过第一端口接收到的来自数据请求端且携带源互联网协议IP地址和目的IP地址的数据获取请求转发给中央处理器CPU,用于所述CPU通过第二端口将所述数据获取请求转发给所述目的IP地址对应的数据提供端,并建立包括所述第一端口、所述源IP地址和所述第二端口的转发表项;
第二转发单元,用于通过所述第二端口接收到来自所述数据提供端的数据后,通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端。
具体的,所述第二转发单元,用于通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端,具体用于:
查找包括所述第二端口的转发表项;
通过查找到的转发表项中所述第二端口对应的所述第一端口将所述数据转发给所述源IP地址对应的所述数据请求端。
具体的,所述第一端口和所述第二端口为串行接口。
还提供一种交换设备,包括上述数据转发装置。
本发明实施例提供的数据转发方法、装置及交换设备,将通过第一端口接收到的数据获取请求转发给CPU,用于CPU通过第二端口将数据获取请求转发给数据提供端,并建立包括第二端口、源IP地址和第一端口的转发表项,当接收到来自数据提供端的数据后,直接通过转发表项中第二端口对应的第一端口将数据转发送给数据请求端,无需再将数据转发给CPU,然后由CPU转发给数据请求端,这样就节约了CPU资源,减轻了CPU负载。
附图说明
图1为现有技术中的多业务系统的结构示意图;
图2为本发明实施例中数据转发方法的流程图;
图3为本发明实施例中数据转发装置的结构示意图;
图4为本发明实施例中多业务系统的结构示意图。
具体实施方式
针对现有的数据转发方法消耗了大量的CPU资源,增加了CPU的负载的问题,本发明实施例提供一种数据转发方法,该方法的流程如图2所示,执行主体可以为交换芯片,执行步骤如下:
S20:将通过第一端口接收到的来自数据请求端且携带源互联网协议(Internet Protocol,IP)地址和目的IP地址的数据获取请求转发给CPU,用于CPU通过第二端口将数据获取请求转发给目的IP地址对应的数据提供端,并建立包括第一端口、源IP地址和第二端口的转发表项。
请求获取的数据可以为视频数据、音频数据、网页数据等等。数据请求端通过交换芯片上的第一端口与交换芯片连接,数据提供端通过交换芯片上的第二端口与交换芯片连接。
S21:通过第二端口接收到来自数据提供端的数据后,通过转发表项中第二端口对应的第一端口将数据转发送给数据请求端。
接收到数据提供端发送的数据后,可以根据转发表项转发数据。
该方案中,将通过第一端口接收到的数据获取请求转发给CPU,用于CPU通过第二端口将数据获取请求转发给数据提供端,并建立包括第二端口、源IP地址和第一端口的转发表项,当接收到来自数据提供端的数据后,直接通过转发表项中第二端口对应的第一端口将数据转发送给数据请求端,无需再将数据转发给CPU,然后由CPU转发给数据请求端,这样就节约了CPU资源,减轻了CPU负载。
具体的,上述S21中的用于CPU建立包括第一端口、源IP地址和第二端口的转发表项,具体包括:
用于CPU解析数据获取请求后,得到数据请求中携带的第二端口、源IP地址和第一端口;以及
将得到的第一端口、第二端口和源IP地址绑定并建立转发表项。
CPU建立的转发表项可以保存在自身,当交换芯片转发数据时,CPU将建立的转发表项通过调用自身的软件开发包套件(Software Development Kit,SDK)模块设置到交换芯片中。
以数据请求端请求获取视频数据为例说明转发表项的建立过程,具体如下:
1、fp qset add SrcIP//添加SrcIP到当前的规则,这里的SrcIP是指视频提供端的IP地址。
2、Fp qset add l4srcport//添加第一端口到FP中。
3、fp group create01//基于当前的QSET创建一个带有优先级0的FP组1,并分配一个片(Slice)。
4、fp entry create13//创建一个转发表项。
5、fp qual1l4srcport46000xffff//为Srcport绑定到第二端口,即视频数据的端口。
6、fp action add1redirectpbmp0ge16ge17//为fp添加一个数据转发的动作,从第二端口转发到第一端口。
具体的,上述S21中的通过转发表项中第二端口对应的第一端口将数据转发送给数据请求端,具体包括:
查找包括第二端口的转发表项;
通过查找到的转发表项中第二端口对应的第一端口将数据转发给源IP地址对应的数据请求端。
建立转发表项后,当接收到数据后,根据第二端口直接查找转发表项,若查找到,就可以按照转发表项中记录的第二端口对应的第一端口和源IP地址进行数据转发。
具体的,第一端口和第二端口为串行接口,具体可以为串行器/解串器(Serializer/Dederializer,SerDes)。
随着电子行业技术的发展,特别是在传输接口的发展上,传统并行接口的速度已经达到一个瓶颈了,取而代之的是速度更快的串行接口,于是原本用于光纤通信的SerDes技术成为了为高速串行接口的主流。串行接口主要应用了差分信号传输技术,具有功耗低、抗干扰强,速度快的特点,理论上串行接口的最高传输速率可达到10Gbps以上。
SerDes是一种主流的时分多路复用、点对点的串行通信技术。即在发送端多路低速并行信号被转换成高速串行信号,经过传输媒体(光缆或铜线),最后在接收端高速串行信号重新转换成低速并行信号。这种点对点的串行通信技术充分利用传输媒体的信道容量,减少所需的传输信道和器件引脚数目,提升信号的传输速度,从而大大降低通信成本。
基于同一发明构思,本发明实施例提供一种数据转发装置,该装置的结构如图3所示,包括:
第一转发单元30,用于将通过第一端口接收到的来自数据请求端且携带源IP地址和目的IP地址的数据获取请求转发给CPU,用于CPU通过第二端口将数据获取请求转发给目的IP地址对应的数据提供端,并建立包括第一端口、源IP地址和第二端口的转发表项。
第二转发单元31,用于通过第二端口接收到来自数据提供端的数据后,通过转发表项中第二端口对应的第一端口将数据转发送给数据请求端。
具体的,上述第二转发单元31,用于通过转发表项中第二端口对应的第一端口将数据转发送给数据请求端,具体用于:
查找包括第二端口的转发表项;
通过查找到的转发表项中第二端口对应的第一端口将数据转发给源IP地址对应的数据请求端。
具体的,上述第一端口和第二端口为串行接口。
基于同一发明构思,本发明实施例还提供一种交换设备,图4所示为多业务系统的结构示意图,包括交换芯片40、CPU41、数据请求端42和数据提供端43,其中,数据请求端和数据提供端可以为多个,在图4中仅示出一个数据请求端和一个数据提供端,交换芯片40和CPU41组成交换设备,交换芯片40可以包括如图3所示的数据转发装置。
数据请求端42和数据提供端43可以采用业务线卡方式呈现,交换机中的交换芯片和业务线卡使用SerDes进行连接,CPU通过外围设备接口(PeripheralComponent Interconnect,PCI)接口与交换芯片连接及通信,从而可以降低通信的复杂度和成本。当然业务线卡可以与交换设备是独立的,也可以设置在交换设备内部。
交换设备在业务上功能与传统方式实现的区别在于在将CPU上的部分功能转移到交换芯片实现。例如:实时音频、视频的流量控制、数据复制和转发、控制流和数据流分离等等,大大降低了核心CPU的负载,也充分利用了交换芯片的功能特性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种数据转发方法,其特征在于,包括:
将通过第一端口接收到的来自数据请求端且携带源互联网协议IP地址和目的IP地址的数据获取请求转发给中央处理器CPU,用于所述CPU通过第二端口将所述数据获取请求转发给所述目的IP地址对应的数据提供端,并建立包括所述第一端口、所述源IP地址和所述第二端口的转发表项;
通过所述第二端口接收到来自所述数据提供端的数据后,通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端。
2.如权利要求1所述的方法,其特征在于,所述CPU建立包括所述第一端口、所述源IP地址和所述第二端口的转发表项,具体包括:
用于所述CPU解析所述数据获取请求后,得到所述数据请求中携带的所述第二端口、所述源IP地址和所述第一端口;以及
将得到的所述第一端口、所述第二端口和所述源IP地址绑定并建立转发表项。
3.如权利要求2所述的方法,其特征在于,通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端,具体包括:
查找包括所述第二端口的转发表项;
通过查找到的转发表项中所述第二端口对应的所述第一端口将所述数据转发给所述源IP地址对应的所述数据请求端。
4.如权利要求1-3任一所述的方法,其特征在于,所述第一端口和所述第二端口为串行接口。
5.一种数据转发装置,其特征在于,包括:
第一转发单元,用于将通过第一端口接收到的来自数据请求端且携带源互联网协议IP地址和目的IP地址的数据获取请求转发给中央处理器CPU,用于所述CPU通过第二端口将所述数据获取请求转发给所述目的IP地址对应的数据提供端,并建立包括所述第一端口、所述源IP地址和所述第二端口的转发表项;
第二转发单元,用于通过所述第二端口接收到来自所述数据提供端的数据后,通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端。
6.如权利要求5所述的装置,其特征在于,所述第二转发单元,用于通过转发表项中所述第二端口对应的所述第一端口将所述数据转发送给所述数据请求端,具体用于:
查找包括所述第二端口的转发表项;
通过查找到的转发表项中所述第二端口对应的所述第一端口将所述数据转发给所述源IP地址对应的所述数据请求端。
7.如权利要求5-6任一所述的装置,其特征在于,所述第一端口和所述第二端口为串行接口。
8.一种交换设备,其特征在于,包括如权利要求6-7任一所述的数据转发装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310608738.1A CN104683267B (zh) | 2013-11-26 | 2013-11-26 | 一种数据转发方法、装置及交换设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310608738.1A CN104683267B (zh) | 2013-11-26 | 2013-11-26 | 一种数据转发方法、装置及交换设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104683267A true CN104683267A (zh) | 2015-06-03 |
CN104683267B CN104683267B (zh) | 2018-09-28 |
Family
ID=53317882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310608738.1A Active CN104683267B (zh) | 2013-11-26 | 2013-11-26 | 一种数据转发方法、装置及交换设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104683267B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106411924A (zh) * | 2016-10-24 | 2017-02-15 | 杭州迪普科技有限公司 | 一种创建会话转发表项的方法、转发报文的方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159665A (zh) * | 2007-08-28 | 2008-04-09 | 杭州华三通信技术有限公司 | 实现未知组播报文向路由器端口转发的方法和装置 |
CN101404612A (zh) * | 2008-11-20 | 2009-04-08 | 杭州华三通信技术有限公司 | 实现数据流硬件转发的方法和系统以及网络路由设备 |
CN101645904A (zh) * | 2009-09-09 | 2010-02-10 | 中兴通讯股份有限公司 | 一种降低交换机中央处理器使用率的方法的装置 |
CN101980487A (zh) * | 2010-10-22 | 2011-02-23 | 中兴通讯股份有限公司 | 一种路由选择出口的方法和装置 |
-
2013
- 2013-11-26 CN CN201310608738.1A patent/CN104683267B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159665A (zh) * | 2007-08-28 | 2008-04-09 | 杭州华三通信技术有限公司 | 实现未知组播报文向路由器端口转发的方法和装置 |
CN101404612A (zh) * | 2008-11-20 | 2009-04-08 | 杭州华三通信技术有限公司 | 实现数据流硬件转发的方法和系统以及网络路由设备 |
CN101645904A (zh) * | 2009-09-09 | 2010-02-10 | 中兴通讯股份有限公司 | 一种降低交换机中央处理器使用率的方法的装置 |
CN101980487A (zh) * | 2010-10-22 | 2011-02-23 | 中兴通讯股份有限公司 | 一种路由选择出口的方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106411924A (zh) * | 2016-10-24 | 2017-02-15 | 杭州迪普科技有限公司 | 一种创建会话转发表项的方法、转发报文的方法及装置 |
CN106411924B (zh) * | 2016-10-24 | 2019-07-09 | 杭州迪普科技股份有限公司 | 一种创建会话转发表项的方法、转发报文的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104683267B (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103532876A (zh) | 数据流的处理方法与系统 | |
CN115514651B (zh) | 基于软件定义层叠网的云边数据传输路径规划方法及系统 | |
CN105337895B (zh) | 一种网络设备主机单元、网络设备子卡以及网络设备 | |
US8891526B2 (en) | Data communication method and data communication apparatus | |
CN104243608A (zh) | 一种通信方法、云管理服务器及虚拟交换机 | |
CN102957626A (zh) | 一种报文转发方法和装置 | |
CN107105355B (zh) | 一种交换方法及交换系统 | |
US10250674B2 (en) | Radio access method, apparatus, and system for implementing mutual transmission and processing of collaborative data between sites | |
US20120294307A1 (en) | Apparatus and Method for Identifier Management | |
CN102710496B (zh) | 用于多个服务器间的数据传输系统、数据接口装置及数据传输方法 | |
WO2023179457A1 (zh) | 业务连接的标识方法、装置、系统及存储介质 | |
EP3107231A1 (en) | Data processing method and device | |
CN104683267A (zh) | 一种数据转发方法、装置及交换设备 | |
CN104079398A (zh) | 一种数据通信方法、装置及系统 | |
US10079769B1 (en) | Methods and apparatus for implementing dynamic rate controllers using linked list of rate programs | |
CN108377205A (zh) | 优化nfv数据转发性能的系统及其方法 | |
CN114499762A (zh) | 一种通信系统、5g网络下的多路转发方法及通信设备 | |
CN103716258A (zh) | 高密度线卡、交换设备、集群系统及电信号类型配置方法 | |
CN103036815A (zh) | 一种信息技术和通信技术ict融合系统 | |
CN103746717A (zh) | 一种cfp连接器及cfp传输架构 | |
CN111162864B (zh) | 低速率信号的传输方法、装置、设备及存储介质 | |
CN102624617B (zh) | 数据交换系统和方法 | |
WO2017020292A1 (zh) | 一种光接入设备及光接入系统 | |
CN103368832B (zh) | 基于滑动窗口的混合交换网络时隙分配方法 | |
CN106657264A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |