CN104717154A - 一种发送数据包的方法及装置 - Google Patents
一种发送数据包的方法及装置 Download PDFInfo
- Publication number
- CN104717154A CN104717154A CN201510089186.7A CN201510089186A CN104717154A CN 104717154 A CN104717154 A CN 104717154A CN 201510089186 A CN201510089186 A CN 201510089186A CN 104717154 A CN104717154 A CN 104717154A
- Authority
- CN
- China
- Prior art keywords
- server
- core layer
- layer node
- configuration sequence
- connection configuration
- 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
- 238000000034 method Methods 0.000 title claims abstract description 37
- 239000012792 core layer Substances 0.000 claims abstract description 313
- 238000009434 installation Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 abstract description 4
- 239000010410 layer Substances 0.000 description 45
- 238000010586 diagram Methods 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 17
- 230000000903 blocking effect Effects 0.000 description 10
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种发送数据包的方法及装置,属于通信领域。所述方法包括:第一服务器获取当前时间隙对应的上行连接配置序列,所述第一服务器为数据中心中的任一服务器,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;从所述第一服务器的缓存对列中出队一数据包;通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。所述装置包括:第一获取模块、第二获取模块、出队模块和第一发送模块。本发明能够避免产生链路竞争情况和内部路由阻塞。
Description
技术领域
本发明涉及通信领域,特别涉及一种发送数据包的方法及装置。
背景技术
Fat tree(胖树)结构因其能够连接大量的服务器,使其成为许多数据中心的拓扑结构。Fat tree结构的叶子节点都为服务器,顶层节点组成核心层,与服务器直接相连的节点组成接入层,位于核心层和接入层之间的为汇聚层。
在数据中心中任意两个服务器都需要通信,且该两服务器可以通过发送数据包来进行相互间的通信。该两服务器在通信时,其中一个服务器发送数据包,该数据包通过Fat tree内部的节点沿着Fat tree上行传输,一直到该两个服务器的共同祖先,然后该数据包通过Fat tree内部的节点沿着Fat tree下行传输,直到传输给另一个服务器。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
在Fat tree中当两个服务器同时向同一个服务器发送数据包时,该两服务器发送的数据包在进行上行传输时,会发生链路竞争的情况。
发明内容
为了避免发生链路竞争,本发明提供了一种发送数据包的方法及装置。所述技术方案如下:
第一方面,一种发送数据包的方法,所述方法包括:
第一服务器获取当前时间隙对应的上行连接配置序列,所述第一服务器为数据中心中的任一服务器,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;
从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;
从所述第一服务器的缓存对列中出队一数据包;
通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
结合第一方面,在第一方面的第一种可能的实现方式中,所述获取当前时间隙对应的上行连接配置序列,包括:
获取当前时隙在当前周期中的时隙序号;
根据所述时间隙序号,从时隙序号与上行连接配置序列的对应关系中获取所述当前时隙对应的上行连接配置序列。
结合第一方面,在第一方面的第二种可能的实现方式中,所述方法还包括:
如果在当前时隙前接收到第二核心层节点广播的反压信号,所述第二核心层节点的空闲缓存大小小于预设大小,确定所述第一核心层节点是否为所述第二核心层节点,若不是,则执行所述通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点的操作。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述方法还包括:
如果所述第一核心层节点是所述第二核心层节点,则获取第一时隙对应的上行连接配置序列,所述第一时隙在当前时隙之后;
从所述第一时隙对应的上行连接配置序列中获取与所述第一服务器之间存在上行连接的第三核心层节点;
在所述第一时隙通过所述第一服务器与所述第三核心层节点之间的上行连接发送所述数据包给所述第三核心层节点。
第二方面,一种发送数据包的方法,所述方法包括:
第一核心层节点接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
结合第二方面,在第二方面的第一种可能的实现方式中,所述获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,包括:
从时隙序号与下行连接配置序列的对应关系中,查找出包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列;
在所述时隙序号与下行连接配置序列的对应关系中获取所述下行连接配置序列对应的时隙序号,获取所述时隙序号对应的时隙。
结合第二方面,在第二方面的第二种可能的实现方式中,所述第一核心层节点接收第一服务器发送的需要发送给第二服务器的数据包之后,还包括:
将所述数据包缓存在所述第一核心层节点的缓存队列中;
如果所述缓存队列的空闲缓存大小小于预设大小,则向所述数据中心中的每个服务器广播反压信号。
第三方面,一种发送数据包的装置,所述装置应用于第一服务器,所述第一服务器为数据中心中的任一服务器,所述装置包括:
第一获取模块,用于获取当前时间隙对应的上行连接配置序列,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;
第二获取模块,用于从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;
出队模块,用于从所述第一服务器的缓存对列中出队一数据包;
第一发送模块,用于通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
结合第三方面,在第三方面的第一种可能的实现方式中,所述第一获取模块包括:
第一获取单元,用于获取当前时隙在当前周期中的时隙序号;
第二获取单元,用于根据所述时间隙序号,从时隙序号与上行连接配置序列的对应关系中获取所述当前时隙对应的上行连接配置序列。
结合第三方面,在第三方面的第二种可能的实现方式中,所述装置还包括:
确定模块,用于如果在当前时隙前接收到第二核心层节点广播的反压信号,所述第二核心层节点的空闲缓存大小小于预设大小,确定所述第一核心层节点是否为所述第二核心层节点,若不是,则执行所述通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点的操作。
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述装置还包括:
第三获取模块,用于如果所述第一核心层节点是所述第二核心层节点,则获取第一时隙对应的上行连接配置序列,所述第一时隙在当前时隙之后;
第四获取模块,用于从所述第一时隙对应的上行连接配置序列中获取与所述第一服务器之间存在上行连接的第三核心层节点;
第二发送模块,用于在所述第一时隙通过所述第一服务器与所述第三核心层节点之间的上行连接发送所述数据包给所述第三核心层节点。
第四方面,一种发送数据包的装置,所述装置应用于第一核心层节点,所述装置包括:
接收模块,用于接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
获取模块,用于获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
发送模块,用于在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
结合第四方面,在第四方面的第一种可能的实现方式中,所述获取模块包括:
查找单元,用于从时隙序号与下行连接配置序列的对应关系中,查找出包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列;
获取单元,用于在所述时隙序号与下行连接配置序列的对应关系中获取所述下行连接配置序列对应的时隙序号,获取所述时隙序号对应的时隙。
结合第四方面,在第四方面的第二种可能的实现方式中,所述装置还包括:
缓存模块,用于将所述数据包缓存在所述第一核心层节点的缓存队列中;
广播模块,用于如果所述缓存队列的空闲缓存大小小于预设大小,则向所述数据中心中的每个服务器广播反压信号。
第五方面,一种发送数据包的装置,所述装置应用于第一服务器,所述第一服务器为数据中心中的任一服务器,所述装置包括处理器和发送器;
所述处理器,用于获取当前时间隙对应的上行连接配置序列,所述第一服务器为数据中心中的任一服务器,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;从所述第一服务器的缓存对列中出队一数据包;
所述发送器,用于通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
第六方面,一种发送数据包的装置,所述装置应用于第一核心层节点,所述装置包括:接收器、处理器和发送器;
所述接收器,用于接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
所述处理器,用于获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
所述发送器,用于在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
在本发明实施例中,事先定义了每个时隙对应的上行连配置序列,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,且每个服务器与核心层节点之间的上行连接相互独立,不存在链路竞争,所以服务器从当前时隙对应的上行连接配置序列中选择其与核心层节点之间的上行连接,通过该上行连接发送数据包,在上行传输时避免与其他服务器发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的上行连接来传输数据包,实现负载平衡。
附图说明
图1-1是本发明实施例提供的数据中心拓扑结构图;
图1-2是本发明实施例提供的一种发送数据包的方法流程图;
图1-3是本发明实施例提供的另一种发送数据包的方法流程图;
图2-1是本发明实施例提供的另一种发送数据包的方法流程图;
图2-2是本发明实施例提供的连接配置序列示意图;
图2-3是本发明实施例提供的另一种连接配置序列示意图;
图2-4是本发明实施例提供的另一种连接配置序列示意图;
图2-5是本发明实施例提供的另一种连接配置序列示意图;
图2-6是本发明实施例提供的另一种连接配置序列示意图;
图3-1是本发明实施例提供的另一种发送数据包的方法流程图;
图3-2是本发明实施例提供的另一种连接配置序列示意图;
图3-3是本发明实施例提供的另一种连接配置序列示意图;
图3-4是本发明实施例提供的另一种连接配置序列示意图;
图3-5是本发明实施例提供的另一种连接配置序列示意图;
图3-6是本发明实施例提供的另一种连接配置序列示意图;
图4是本发明实施例提供的一种发送数据包的装置结构示意图;
图5是本发明实施例提供的另一种发送数据包的装置结构示意图;
图6是本发明实施例提供的另一种发送数据包的装置结构示意图;
图7是本发明实施例提供的另一种发送数据包的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
数据中心包括多个交换节点和多个服务器,该多个交换节点组成一个交换网络并将该多个服务器连接起来。数据中心可以采用Fat tree拓扑结构进行组网,在该种拓扑结构中,交换网络包括核心层、汇聚层和接入层。汇聚层位于核心层和接入层之间,核心层由多个交换节点组成,为了便于说明将该交换节点称为核心层节点,汇聚层由多个交换节点组成,为了便于说明将该交换节点称为汇聚层节点,接入层由多个交换节点组成,为了便于说明将该交换节点称为接入层节点。
每个交换节点包括多个端口。对于每个核心层节点,该核心层节点通过其包括的端口连接至汇聚层节点的端口上,每个汇聚层节点也通过其包括的端口连接至接入层节点的端口上,数据中心中包括的每个服务器都连接至一个接入层节点的端口上。每个服务器都有自身的地址,且每层节点对该服务器的地址中的一位或几位比特。
例如,参见图1-1,接入层包括接入层节点A0、A1、A2和A3,汇聚层包括汇聚层节点R0、R1、R2和R3,核心层包括核心层节点C0、C1、C2和C3,数据中心包括服务器S0、S1、S2、S3、S4、S5、S6和S7,服务器S0、S1、S2、S3、S4、S5、S6和S7的地址分别为000、001、010、011、100、101、110、111。核心层节点C0、C1、C2和C3通过各自包括的端口分别连接至汇聚层节点的端口上,汇聚层节点R0、R1、R2和R3通过各自包括的端口分别连接至接入层节点的端口上,服务器S0、S1、S2、S3、S4、S5、S6和S7分别连接到接入层节点的端口上。对于每个服务器的地址,核心层节点对应该服务器的地址的第一位比特,汇聚层对应该服务器的地址的第二位比特,接入层节点对应该服务器的地址的第三位比特。
对于上述拓扑结构的数据中心,数据中心的任一服务器需要发送数据包时可以通过如下任一实施例提供的方案来发送数据包。
参见图1-2,本发明实施例提供了一种发送数据包的方法,该方法的执行主体可以为数据中心中的任一服务器,为了便于说明将该服务器称为第一服务器,该方法包括:
步骤101:第一服务器获取当前时间隙对应的上行连接配置序列,该上行连接配置序列包括数据中心中的服务器与核心层节点之间的上行连接。
步骤102:从该上行连接配置序列中获取与第一服务器存在上行连接的第一核心层节点。
步骤103:从第一服务器的缓存对列中出队一数据包。
步骤104:通过第一服务器与第一核心层节点之间的上行连接发送数据包给第一核心层节点。
在本发明实施例中,事先定义了每个时隙对应的上行连配置序列,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,且每个服务器与核心层节点之间的上行连接相互独立,不存在链路竞争,所以服务器从当前时隙对应的上行连接配置序列中选择其与核心层节点之间的上行连接,通过该上行连接发送数据包,在上行传输时避免与其他服务器发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的上行连接来传输数据包,实现负载平衡。
参见图1-3,本发明实施例提供了一种发送数据包的方法,该方法的执行主体可以为数据中心中的任一核心层节点,为了便于说明将该核心层节点称为第一核心层节点,该方法包括:
步骤111:第一核心层节点接收第一服务器发送的需要发送给第二服务器的数据包,第一服务器和第二服务器为数据中心中的两个不同的服务器。
步骤112:获取包含第一核心层节点与第二服务器之间的下行连接的下行连接配置序列和该下行连接配置序列对应的时隙,该下行连接配置序列包括数据中心中的服务器与核心层节点之间的下行连接。
步骤113:在该时隙内通过第一核心层节点与第二服务器之间的下行连接发送该数据包给第二服务器。
在本发明实施例中,事先定义了每个时隙对应的下行连配置序列,该时隙对应的下行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的下行连接,且每个服务器与核心层节点之间的下行连接相互独立,不存在链路竞争,所以核心层节点从当前时隙对应的上行连接配置序列中选择其与服务器之间的下行连接,通过该下行连接发送数据包,在下行传输时避免与其他核心层节点发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的下行连接来传输数据包,实现负载平衡。
参见图2-1,本发明实施例提供了一种发送数据包的方法,包括:
步骤201:第一服务器获取当前时隙对应的上行连接配置序列,该上行连接配置序列包括数据中心中的服务器与核心层节点之间的上行连接。
第一服务器是数据中心中的任一服务器,事先在第一服务器上配置一个发送周期内的每个时隙对应的上行连接配置序列。对于任一个时隙,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,每条上行连接都是相互独立的连接。然后将发送周期内包括的每个时隙的时隙序号和每个时隙对应的上行连接配置序列存储在时隙序号与上行连接配置序列的对应关系中。
例如,假设一个发送周期包括四个时隙分别为t0、t1、t2和t3。参见图2-2,事先配置t0时隙对应的上行连接配置序列0,上行连接配置序列0包括服务器S0与核心层节点C0之间的上行连接upLink000,服务器S1与核心层节点C1之间的上行连接upLink011,服务器S2与核心层节点C2之间的上行连接upLink022,服务器S3与核心层节点C3之间的上行连接upLink033,服务器S4与核心层节点C0之间的上行连接upLink040,服务器S5与核心层节点C1之间的上行连接upLink051,服务器S6与核心层节点C2之间的上行连接upLink062,服务器7与核心层节点C3之间的上行连接upLink073。
参见图2-3,上行连接upLink000包括接入层节点A0的上行端口0至汇聚层节点R0的下行端口0之间的连接和汇聚层节点R0的上行端口0至核心层节点C0的下行端口0之间的连接;上行连接upLink011包括接入层节点A0的上行端口1至汇聚层节点R1的下行端口0之间的连接和汇聚层节点R1的上行端口0至核心层节点C1的下行端口0之间的连接;上行连接upLink022包括接入层节点A1的上行端口0至汇聚层节点R0的下行端口1之间的连接和汇聚层节点R0的上行端口1至核心层节点C2的下行端口0之间的连接;上行连接upLink033包括接入层节点A1的上行端口1至汇聚层节点R1的下行端口1之间的连接和汇聚层节点R1的上行端口1至核心层节点C3的下行端口0之间的连接;上行连接upLink040包括接入层节点A2的上行端口0至汇聚层节点R2的下行端口0之间的连接和汇聚层节点R2的上行端口0至核心层节点C0的下行端口1之间的连接;上行连接upLink051包括接入层节点A2的上行端口1至汇聚层节点R3的下行端口0之间的连接和汇聚层节点R3的上行端口0至核心层节点C1的下行端口1之间的连接;上行连接upLink062包括接入层节点A3的上行端口0至汇聚层节点R2的下行端口1之间的连接和汇聚层节点R2的上行端口1至核心层节点C2的下行端口1之间的连接;上行连接upLink073包括接入层节点A3的上行端口1至汇聚层节点R3的下行端口1之间的连接和汇聚层节点R3的上行端口1至核心层节点C3的下行端口1之间的连接。
所以,上行连接配置序列0包括的上行连接upLink000、upLink011、upLink022、upLink033、upLink040、upLink051、upLink062和upLink073都是相互独立的连接,相互之间不存在端口竞争以及链路竞争。
参见图2-4所示的t1时隙对应的上行连接配置序列1,参见图2-5所示的t2时隙对应的上行连接配置序列2以及参见图2-6所示的t3时隙对应的上行连接配置序列3,该三个时隙对应的上行连接配置序列与t0时隙对应的上行连接配置序列的含义相同,在此不再一一列举说明。假设,时隙t0、t1、t2和t3的时隙序号分别为0、1、2和3,建立如表1所示的时隙序号与上行连接配置序列的对应关系。
表1
时隙序号 | 上行连接配置序列 |
0 | 上行连接配置序列0 |
1 | 上行连接配置序列1 |
2 | 上行连接配置序列2 |
3 | 上行连接配置序列3 |
本步骤可以为:第一服务器获取当前时隙在当前周期中的时隙序号,根据该时隙序号,从时隙序号与上行连接配置序列的对应关系中获取当前时隙对应的上行连接配置序列。
假设,第一服务器为服务器S0,服务器S0获取当前时隙为第九个时隙,第九个时隙为第三个发送周期内的第一个时隙,其时隙序号为0,根据该时隙序号0,从如表1所示的时隙序号与上行连接配置序列的对应关系中获取对应的上行连接配置序列0。
步骤202:第一服务器从当前时隙对应的上行连接配置序列中获取与自身存在上行连接的第一核心层节点。
例如,当前时隙对应的上行连接配置序列0包括服务器S0与核心层节点C0之间的上行连接,服务器S0从上行连接配置序列0中获取与服务器S0之间存在上行连接的核心层节点C0。
步骤203:第一服务器从自身的缓存队列中出队一数据包,从当前时隙对应的上行连接配置序列中获取与第一核心层节点之间存在的上行连接。
其中,第一服务器包括缓存队列,该缓存队列用于缓存第一服务器需要发送的数据包。第一服务器在一个时隙内发送一个数据包,每个数据包中包含目的地址,该目的地址为一个服务器的地址,该数据包需要发送到该服务器中,所以在当前时隙内如果需要发送数据包,则执行上述步骤201至203。
例如,服务器S0从自身的缓存队列中出队一数据包,从当前时隙对应的上行连接配置序列0中获取与核心层节点C0之间存在的上行连接upLink000。
其中,需要说明的是:核心层节点接收服务器发送的数据包时,先将该数据包缓存在自身的缓存队列中,然后获取该缓存队列的空闲缓存大小,如果该空闲缓存大小于预设大小,广播反压信号给服务器,请求服务器暂停一个或多个时隙向其发送报文,该反压信号中包含该核心层节点的标识。
相应地,在执行本步骤之前,如果在当前时隙之前的第一服务器接收第二核心层节点发送的反压信号,第二核心层节点为数据中心中的任一核心层节点,第一服务器确定第一核心层节点与第二核心层节点是否相同,如果不同,则执行本步骤,如果相同,则等待到第一时隙时从步骤201开始执行,第一时隙在当前时隙之后,与当前时隙相差一个或多个时隙。
步骤204:第一服务器通过与第一核心层节点之间的上行连接发送该数据包给第一核心层节点。
例如,服务器S0通过与核心层节点C0之间的上行连接upLink000发送数据包给核心层节点C0。
步骤205:第一核心层节点接收该数据包,根据该数据包的目的地址将该数据包发送给汇聚层节点。
具体地,第一核心层节接收该数据包,将该数据包缓存在缓存队列中,在发送数据包时从该缓存队列中出队一数据包,当出队到接收的该数据包时,从该数据包的目的地址中获取核心层节点对应的一位或几位比特,根据获取的比特确定端口号,从该端口号对应的端口将该数据包发送给汇聚层节点。
例如,参见图2-3,核心层节点C0接收该数据包,该数据包包含的目的地址为110,核心层节点C0从该目的地址110中获取核心层节点对应的第一位比特1,根据比特1选择端口号为1的端口1,从端口1将该数据包发送给汇聚层节点R2。
步骤206:汇聚层节点接收该数据包,根据该数据包的目的地址将该数据包发送给接入层节点。
具体地,汇聚层节接收该数据包,从该数据包的目的地址中获取汇聚层节点对应的一位或几位比特,根据获取的比特确定端口号,从该端口号对应的端口将该数据包发送给接入层节点。
例如,参见图2-1,汇聚层节点R2接收该数据包,从该数据包的目的地址110中获取汇聚层节点对应的第二位比特1,根据比特1选择端口号为1的端口1,从端口1将该数据包发送给接入层节点A3。
步骤207:接入层节点接收该数据包,根据该数据包的目的地址将该数据包发送给服务器。
具体地,接入层节接收该数据包,从该数据包的目的地址中获取汇聚层节点对应的一位或几位比特,根据获取的比特确定端口号,从该端口号对应的端口将该数据包发送给服务器。
例如,参见图2-1,接入层节点A3接收该数据包,从该数据包的目的地址110中获取接入层节点对应的第三位比特0,根据比特0选择端口号为0的端口0,从端口0将该数据包发送给服务器S6。
在本发明实施例中,事先定义了每个时隙对应的上行连配置序列,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,且每个服务器与核心层节点之间的上行连接相互独立,不存在链路竞争,所以服务器从当前时隙对应的上行连接配置序列中选择其与核心层节点之间的上行连接,通过该上行连接发送数据包,在上行传输时避免与其他服务器发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的上行连接来传输数据包,实现负载平衡。
参见图3-1,本发明实施例提供了一种发送数据包的方法,包括:
步骤301:第一服务器获取当前时隙对应的上行连接配置序列,该上行连接配置序列包括数据中心中的服务器与核心层节点之间的上行连接。
第一服务器是数据中心中的任一服务器,事先在第一服务器上配置一个发送周期内的每个时隙对应的上行连接配置序列。对于任一个时隙,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,每条上行连接都是相互独立的连接。然后将发送周期内包括的每个时隙的时隙序号和每个时隙对应的上行连接配置序列存储在时隙序号与上行连接配置序列的对应关系中。
例如,假设一个发送周期包括四个时隙分别为t0、t1、t2和t3。参见图3-2,事先配置t0时隙对应的上行连接配置序列0,上行连接配置序列0包括服务器S0与核心层节点C0之间的上行连接upLink000,服务器S1与核心层节点C1之间的上行连接upLink011,服务器S2与核心层节点C2之间的上行连接upLink022,服务器S3与核心层节点C3之间的上行连接upLink033,服务器S4与核心层节点C0之间的上行连接upLink040,服务器S5与核心层节点C1之间的上行连接upLink051,服务器S6与核心层节点C2之间的上行连接upLink062,服务器7与核心层节点C3之间的上行连接upLink073。
参见图3-3,上行连接upLink000包括接入层节点A0的上行端口0至汇聚层节点R0的下行端口0之间的连接和汇聚层节点R0的上行端口0至核心层节点C0的下行端口0之间的连接;上行连接upLink011包括接入层节点A0的上行端口1至汇聚层节点R1的下行端口0之间的连接和汇聚层节点R1的上行端口0至核心层节点C1的下行端口0之间的连接;上行连接upLink022包括接入层节点A1的上行端口0至汇聚层节点R0的下行端口1之间的连接和汇聚层节点R0的上行端口1至核心层节点C2的下行端口0之间的连接;上行连接upLink033包括接入层节点A1的上行端口1至汇聚层节点R1的下行端口1之间的连接和汇聚层节点R1的上行端口1至核心层节点C3的下行端口0之间的连接;上行连接upLink040包括接入层节点A2的上行端口0至汇聚层节点R2的下行端口0之间的连接和汇聚层节点R2的上行端口0至核心层节点C0的下行端口1之间的连接;上行连接upLink051包括接入层节点A2的上行端口1至汇聚层节点R3的下行端口0之间的连接和汇聚层节点R3的上行端口0至核心层节点C1的下行端口1之间的连接;上行连接upLink062包括接入层节点A3的上行端口0至汇聚层节点R2的下行端口1之间的连接和汇聚层节点R2的上行端口1至核心层节点C2的下行端口1之间的连接;上行连接upLink073包括接入层节点A3的上行端口1至汇聚层节点R3的下行端口1之间的连接和汇聚层节点R3的上行端口1至核心层节点C3的下行端口1之间的连接。
所以,上行连接配置序列0包括的上行连接upLink000、upLink011、upLink022、upLink033、upLink040、upLink051、upLink062和upLink073都是相互独立的连接,相互之间不存在端口竞争。
参见图3-4所示的t1时隙对应的上行连接配置序列1,参见图3-5所示的t2时隙对应的上行连接配置序列2以及参见图3-6所示的t3时隙对应的上行连接配置序列3,该三个时隙对应的上行连接配置序列与t0时隙对应的上行连接配置序列的含义相同,在此不再一一列举说明。假设,时隙t0、t1、t2和t3的时隙序号分别为0、1、2和3,建立如表2所示的时隙序号与上行连接配置序列的对应关系。
表2
时隙序号 | 上行连接配置序列 |
0 | 上行连接配置序列0 |
1 | 上行连接配置序列1 |
2 | 上行连接配置序列2 |
3 | 上行连接配置序列3 |
本步骤可以为:第一服务器获取当前时隙在当前周期中的时隙序号,根据该时隙序号,从时隙序号与上行连接配置序列的对应关系中获取当前时隙对应的上行连接配置序列。
假设,第一服务器为服务器S0,服务器S0获取当前时隙为第九个时隙,第九个时隙为第三个发送周期内的第一个时隙,其时隙序号为0,根据该时隙序号0,从如表2所示的时隙序号与上行连接配置序列的对应关系中获取对应的上行连接配置序列0。
步骤302:第一服务器从当前时隙对应的上行连接配置序列中获取与自身存在上行连接的第一核心层节点。
例如,当前时隙对应的上行连接配置序列0包括服务器S0与核心层节点C0之间的上行连接,服务器S0从上行连接配置序列0中获取与服务器S0之间存在上行连接的核心层节点C0。
步骤303:第一服务器从自身的缓存队列中出队一数据包,该数据包用于发送给第二服务器,从当前时隙对应的上行连接配置序列中获取与第一核心层节点之间存在的上行连接。
其中,第一服务器包括缓存队列,该缓存队列用于缓存第一服务器需要发送的数据包。第一服务器在一个时隙内发送一个数据包,该数据包用于发送给第二服务器,该数据包中包含的目的地址为第二服务器的地址。
例如,服务器S0从自身的缓存队列中出队一数据包,该数据包需要发送给服务器S6,该数据包包含的目的地址为服务器S6的地址110,从当前时隙对应的上行连接配置序列0中获取与核心层节点C0之间存在的上行连接upLink000。
步骤304:第一服务器通过与第一核心层节点之间的上行连接发送该数据包给第一核心层节点。
例如,服务器S0通过与核心层节点C0之间的上行连接upLink000发送数据包给核心层节点C0。
步骤305:第一核心层节点接收该数据包,获取包含第一核心层节点与第二服务器之间的下行连接的下行连接配置序列。
事先在核心层上配置一个发送周期内的每个时隙对应的下行连接配置序列。对于任一个时隙,该时隙对应的下行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的下行连接,每条下行连接都是相互独立的连接。然后将发送周期内包括的每个时隙的时隙序号和每个时隙对应的下行连接配置序列存储在时隙序号与下行连接配置序列的对应关系中。
例如,一个发送周期包括四个时隙分别为t0、t1、t2和t3。参见图3-2,事先配置t0时隙对应的下行连接配置序列0,下行连接配置序列0包括服务器S0与核心层节点C0之间的下行连接downLink000,服务器S1与核心层节点C1之间的下行连接downLink011,服务器S2与核心层节点C2之间的下行连接downLink022,服务器S3与核心层节点C3之间的下行连接downLink033,服务器S4与核心层节点C0之间的下行连接downLink040,服务器S5与核心层节点C1之间的上行连接downLink051,服务器S6与核心层节点C2之间的下行连接downLink062,服务器7与核心层节点C3之间的下行连接downLink073。
参见图3-3,下行连接downLink000包括核心层节点C0的下行端口0至汇聚层节点R0的上行端口0之间的连接和汇聚层节点R0的下行端口0至接入层节点A0的上行端口0之间的连接;下行连接downLink011包括核心层节点C1的下行端口0至汇聚层节点R1的上行端口0之间的连接和汇聚层节点R1的下行端口0至接入层节点A0的上行端口1之间的连接;下行连接downLink022包括核心层节点C2的下行端口0至汇聚层节点R0的上行端口1之间的连接和汇聚层节点R0的下行端口1至接入层节点A1的上行端口0之间的连接;下行连接downLink033包括核心层节点C3的下行端口0至汇聚层节点R1的上行端口1之间的连接和汇聚层节点R1的下行端口1至接入层节点A1的上行端口1之间的连接;下行连接downLink040包括核心层节点C0的下行端口1至汇聚层节点R2的上行端口0之间的连接和汇聚层节点R2的下行端口0至接入层节点A2的上行端口0之间的连接;下行连接downLink051包括核心层节点C1的下行端口1至汇聚层节点R3的上行端口0之间的连接和汇聚层节点R3的下行端口0至接入层节点A2的上行端口1之间的连接;下行连接downLink062包括核心层节点C2的下行端口1至汇聚层节点R2的上行端口1之间的连接和汇聚层节点R2的下行端口1至接入层节点A3的上行端口0之间的连接;下行连接downLink073包括核心层节点C3的下行端口至汇聚层节点R3的上行端口1之间的连接和汇聚层节点R3的下行端口1至接入层节点A3的上行端口1之间的连接。
所以,下行连接配置序列0包括的下行连接downLink000、downLink011、downLink022、downLink033、downLink040、downLink051、downLink062和downLink073都是相互独立的连接,相互之间不存在端口竞争。
参见图3-4所示的t1时隙对应的下行连接配置序列1,参见图3-5所示的t2时隙对应的下行连接配置序列2以及参见图3-6所示的t3时隙对应的下行连接配置序列3,该三个时隙对应的下行连接配置序列与t0时隙对应的下行连接配置序列的含义相同,在此不再一一列举说明。假设,时隙t0、t1、t2和t3的时隙序号分别为0、1、2和3,建立如表3所示的时隙序号与下行连接配置序列的对应关系。
表3
时隙序号 | 下行连接配置序列 |
0 | 下行连接配置序列0 |
1 | 下行连接配置序列1 |
2 | 下行连接配置序列2 |
3 | 下行连接配置序列3 |
本步骤可以为:第一核心层节点从该数据中获取第二服务器的地址,根据自身的地址和第二服务器的地址,从时隙序号与下行连接配置序列的对应关系中获取包含第一核心层节点与第二服务器之间的下行连接的下行连接配置序列。
假设,核心层节点C0从该数据中获取服务器S6的地址,根据自身的地址和服务器S6的地址,从如表3所示的时隙序号与下行连接配置序列的对应关系中获取包含核心层节点C0与服务器S6之间的下行连接的下行连接配置序列2。
其中,需要说明的是,第一核心层节点接收到该数据包后,将该数据包缓存在自身的缓存队列中,获取该缓存队列中空闲缓存大小,如果该空闲缓存大小小于预设大小,广播反压信号给数据中心中的每个服务器,使数据中心中的服务器暂停一个或多个时隙发送数据包给第一核心层节点。
步骤306:第一核心层节点从时隙序号与下行连接配置序列的对应关系中获取该下行连接配置序列对应的时隙序号,获取该时隙序号对应的时隙。
例如,核心层节点C0从时隙序号与下行连接配置序列的对应关系中获取下行连接配置序列2对应的时隙序号为2,获取时隙序号2对应的时隙为t2。
步骤307:第一核心层节点在获取的时隙中通过其与第二服务器之间的下行连接发送该数据包给第二服务器。
例如,核心层节点C0在时隙通过其与服务器S6之间的下行连接发送该数据包给服务器S6。
在本发明实施例中,事先定义了每个时隙对应的上行连接配置序列和下行连接配置序列,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,该时隙对应的下行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的下行连接,且每个服务器与核心层节点之间的上行连接和下行连接相互独立,不存在链路竞争。所以服务器从上行连接配置序列中选择其与核心层节点之间的上行连接,核心层节点从下行连接配置序列中选择其与服务器之间的下行连接,服务器通过该上行连接发送数据包,在上行传输时避免与其他服务器发送数据包时产生链路竞争情况和内部路由阻塞。核心层节点通过该下行连接发送数据包,在下行传输时避免与其他核心层节点发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的上行连接和下行连接来传输数据包,实现负载平衡。
参见图4,本发明实施例提供了一种发送数据包的装置,该装置应用于第一服务器,所述第一服务器为数据中心中的任一服务器,所述装置包括:
第一获取模块401,用于获取当前时间隙对应的上行连接配置序列,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;
第二获取模块402,用于从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;
出队模块403,用于从所述第一服务器的缓存对列中出队一数据包;
第一发送模块404,用于通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
可选的,所述第一获取模块401包括:
第一获取单元,用于获取当前时隙在当前周期中的时隙序号;
第二获取单元,用于根据所述时间隙序号,从时隙序号与上行连接配置序列的对应关系中获取所述当前时隙对应的上行连接配置序列。
进一步地,所述装置还包括:
确定模块,用于如果在当前时隙前接收到第二核心层节点广播的反压信号,所述第二核心层节点的空闲缓存大小小于预设大小,确定所述第一核心层节点是否为所述第二核心层节点,若不是,则执行所述通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点的操作。
进一步地,所述装置还包括:
第三获取模块,用于如果所述第一核心层节点是所述第二核心层节点,则获取第一时隙对应的上行连接配置序列,所述第一时隙在当前时隙之后;
第四获取模块,用于从所述第一时隙对应的上行连接配置序列中获取与所述第一服务器之间存在上行连接的第三核心层节点;
第二发送模块,用于在所述第一时隙通过所述第一服务器与所述第三核心层节点之间的上行连接发送所述数据包给所述第三核心层节点。
在本发明实施例中,事先定义了每个时隙对应的上行连配置序列,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,且每个服务器与核心层节点之间的上行连接相互独立,不存在链路竞争,所以服务器从当前时隙对应的上行连接配置序列中选择其与核心层节点之间的上行连接,通过该上行连接发送数据包,在上行传输时避免与其他服务器发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的上行连接来传输数据包,实现负载平衡。
参见图5,本发明实施例提供了一种发送数据包的装置,所述装置应用于第一核心层节点,所述装置包括:
接收模块501,用于接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
获取模块502,用于获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
发送模块503,用于在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
可选的,所述获取模块502包括:
查找单元,用于从时隙序号与下行连接配置序列的对应关系中,查找出包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列;
获取单元,用于在所述时隙序号与下行连接配置序列的对应关系中获取所述下行连接配置序列对应的时隙序号,获取所述时隙序号对应的时隙。
进一步地,所述装置还包括:
缓存模块,用于将所述数据包缓存在所述第一核心层节点的缓存队列中;
广播模块,用于如果所述缓存队列的空闲缓存大小小于预设大小,则向所述数据中心中的每个服务器广播反压信号。
在本发明实施例中,事先定义了每个时隙对应的下行连配置序列,该时隙对应的下行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的下行连接,且每个服务器与核心层节点之间的下行连接相互独立,不存在链路竞争,所以核心层节点从当前时隙对应的上行连接配置序列中选择其与服务器之间的下行连接,通过该下行连接发送数据包,在下行传输时避免与其他核心层节点发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的下行连接来传输数据包,实现负载平衡。
参见图6,本发明实施例提供了一种发送数据包的装置,所述装置应用于第一服务器,所述第一服务器为数据中心中的任一服务器,所述装置包括处理器601和发送器602;
所述处理器601,用于获取当前时间隙对应的上行连接配置序列,所述第一服务器为数据中心中的任一服务器,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;从所述第一服务器的缓存对列中出队一数据包;
所述发送器602,用于通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
可选的,所述处理器601,用于获取当前时隙在当前周期中的时隙序号;根据所述时间隙序号,从时隙序号与上行连接配置序列的对应关系中获取所述当前时隙对应的上行连接配置序列。
进一步地,所述处理器601,还用于如果在当前时隙前接收到第二核心层节点广播的反压信号,所述第二核心层节点的空闲缓存大小小于预设大小,确定所述第一核心层节点是否为所述第二核心层节点,若不是,则执行所述通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点的操作。
进一步地,所述处理器601,还用于如果所述第一核心层节点是所述第二核心层节点,则获取第一时隙对应的上行连接配置序列,所述第一时隙在当前时隙之后;从所述第一时隙对应的上行连接配置序列中获取与所述第一服务器之间存在上行连接的第三核心层节点;
所述发送器602,还用于在所述第一时隙通过所述第一服务器与所述第三核心层节点之间的上行连接发送所述数据包给所述第三核心层节点。
在本发明实施例中,事先定义了每个时隙对应的上行连配置序列,该时隙对应的上行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的上行连接,且每个服务器与核心层节点之间的上行连接相互独立,不存在链路竞争,所以服务器从当前时隙对应的上行连接配置序列中选择其与核心层节点之间的上行连接,通过该上行连接发送数据包,在上行传输时避免与其他服务器发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的上行连接来传输数据包,实现负载平衡。
参见图7,本发明实施例提供了一种发送数据包的装置,所述装置应用于第一核心层节点,所述装置包括:接收器701、处理器702和发送器703;
所述接收器701,用于接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
所述处理器702,用于获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
所述发送器703,用于在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
可选的,所述处理器702,用于从时隙序号与下行连接配置序列的对应关系中,查找出包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列;在所述时隙序号与下行连接配置序列的对应关系中获取所述下行连接配置序列对应的时隙序号,获取所述时隙序号对应的时隙。
进一步地,所述处理器702,还用于将所述数据包缓存在所述第一核心层节点的缓存队列中;
所述发送器703,还用于如果所述缓存队列的空闲缓存大小小于预设大小,则向所述数据中心中的每个服务器广播反压信号。
在本发明实施例中,事先定义了每个时隙对应的下行连配置序列,该时隙对应的下行连接配置序列中包括在该时隙内数据中心中的每个服务器与核心层节点之间的下行连接,且每个服务器与核心层节点之间的下行连接相互独立,不存在链路竞争,所以核心层节点从当前时隙对应的上行连接配置序列中选择其与服务器之间的下行连接,通过该下行连接发送数据包,在下行传输时避免与其他核心层节点发送数据包时产生链路竞争情况和内部路由阻塞。在每个时隙内服务器和核心层节点之间通过固定的下行连接来传输数据包,实现负载平衡。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种发送数据包的方法,其特征在于,所述方法包括:
第一服务器获取当前时间隙对应的上行连接配置序列,所述第一服务器为数据中心中的任一服务器,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;
从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;
从所述第一服务器的缓存对列中出队一数据包;
通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
2.如权利要求1所述的方法,其特征在于,所述获取当前时间隙对应的上行连接配置序列,包括:
获取当前时隙在当前周期中的时隙序号;
根据所述时间隙序号,从时隙序号与上行连接配置序列的对应关系中获取所述当前时隙对应的上行连接配置序列。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
如果在当前时隙前接收到第二核心层节点广播的反压信号,所述第二核心层节点的空闲缓存大小小于预设大小,确定所述第一核心层节点是否为所述第二核心层节点,若不是,则执行所述通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点的操作。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
如果所述第一核心层节点是所述第二核心层节点,则获取第一时隙对应的上行连接配置序列,所述第一时隙在当前时隙之后;
从所述第一时隙对应的上行连接配置序列中获取与所述第一服务器之间存在上行连接的第三核心层节点;
在所述第一时隙通过所述第一服务器与所述第三核心层节点之间的上行连接发送所述数据包给所述第三核心层节点。
5.一种发送数据包的方法,其特征在于,所述方法包括:
第一核心层节点接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
6.如权利要求5所述的方法,其特征在于,所述获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,包括:
从时隙序号与下行连接配置序列的对应关系中,查找出包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列;
在所述时隙序号与下行连接配置序列的对应关系中获取所述下行连接配置序列对应的时隙序号,获取所述时隙序号对应的时隙。
7.如权利要求5所述方法,其特征在于,所述第一核心层节点接收第一服务器发送的需要发送给第二服务器的数据包之后,还包括:
将所述数据包缓存在所述第一核心层节点的缓存队列中;
如果所述缓存队列的空闲缓存大小小于预设大小,则向所述数据中心中的每个服务器广播反压信号。
8.一种发送数据包的装置,其特征在于,所述装置应用于第一服务器,所述第一服务器为数据中心中的任一服务器,所述装置包括:
第一获取模块,用于获取当前时间隙对应的上行连接配置序列,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;
第二获取模块,用于从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;
出队模块,用于从所述第一服务器的缓存对列中出队一数据包;
第一发送模块,用于通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
9.如权利要求8所述的装置,其特征在于,所述第一获取模块包括:
第一获取单元,用于获取当前时隙在当前周期中的时隙序号;
第二获取单元,用于根据所述时间隙序号,从时隙序号与上行连接配置序列的对应关系中获取所述当前时隙对应的上行连接配置序列。
10.如权利要求8所述的装置,其特征在于,所述装置还包括:
确定模块,用于如果在当前时隙前接收到第二核心层节点广播的反压信号,所述第二核心层节点的空闲缓存大小小于预设大小,确定所述第一核心层节点是否为所述第二核心层节点,若不是,则执行所述通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点的操作。
11.如权利要求10所述的装置,其特征在于,所述装置还包括:
第三获取模块,用于如果所述第一核心层节点是所述第二核心层节点,则获取第一时隙对应的上行连接配置序列,所述第一时隙在当前时隙之后;
第四获取模块,用于从所述第一时隙对应的上行连接配置序列中获取与所述第一服务器之间存在上行连接的第三核心层节点;
第二发送模块,用于在所述第一时隙通过所述第一服务器与所述第三核心层节点之间的上行连接发送所述数据包给所述第三核心层节点。
12.一种发送数据包的装置,其特征在于,所述装置应用于第一核心层节点,所述装置包括:
接收模块,用于接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
获取模块,用于获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
发送模块,用于在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
13.如权利要求12所述的装置,其特征在于,所述获取模块包括:
查找单元,用于从时隙序号与下行连接配置序列的对应关系中,查找出包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列;
获取单元,用于在所述时隙序号与下行连接配置序列的对应关系中获取所述下行连接配置序列对应的时隙序号,获取所述时隙序号对应的时隙。
14.如权利要求13所述的装置,其特征在于,所述装置还包括:
缓存模块,用于将所述数据包缓存在所述第一核心层节点的缓存队列中;
广播模块,用于如果所述缓存队列的空闲缓存大小小于预设大小,则向所述数据中心中的每个服务器广播反压信号。
15.一种发送数据包的装置,其特征在于,所述装置应用于第一服务器,所述第一服务器为数据中心中的任一服务器,所述装置包括处理器和发送器;
所述处理器,用于获取当前时间隙对应的上行连接配置序列,所述第一服务器为数据中心中的任一服务器,所述上行连接配置序列包括所述数据中心中的服务器与核心层节点之间的上行连接;从所述上行连接配置序列中获取与所述第一服务器存在上行连接的第一核心层节点;从所述第一服务器的缓存对列中出队一数据包;
所述发送器,用于通过所述第一服务器与所述第一核心层节点之间的上行连接发送所述数据包给所述第一核心层节点。
16.一种发送数据包的装置,其特征在于,所述装置应用于第一核心层节点,所述装置包括:接收器、处理器和发送器;
所述接收器,用于接收第一服务器发送的需要发送给第二服务器的数据包,所述第一服务器和所述第二服务器为数据中心中的两个不同的服务器;
所述处理器,用于获取包含所述第一核心层节点与所述第二服务器之间的下行连接的下行连接配置序列和所述下行连接配置序列对应的时隙,所述下行连接配置序列包括所述数据中心中的服务器与核心层节点之间的下行连接;
所述发送器,用于在所述时隙内通过所述第一核心层节点与所述第二服务器之间的下行连接发送所述数据包给所述第二服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510089186.7A CN104717154B (zh) | 2015-02-27 | 2015-02-27 | 一种发送数据包的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510089186.7A CN104717154B (zh) | 2015-02-27 | 2015-02-27 | 一种发送数据包的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104717154A true CN104717154A (zh) | 2015-06-17 |
CN104717154B CN104717154B (zh) | 2018-10-09 |
Family
ID=53416129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510089186.7A Active CN104717154B (zh) | 2015-02-27 | 2015-02-27 | 一种发送数据包的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104717154B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109218225A (zh) * | 2018-09-21 | 2019-01-15 | 广东工业大学 | 一种数据包缓存方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034932A (zh) * | 2007-02-08 | 2007-09-12 | 北京航空航天大学 | 快速预约列发多址接入方法 |
CN101203020A (zh) * | 2006-12-11 | 2008-06-18 | 华为技术有限公司 | 上行控制时隙分配方法、系统以及移动台 |
CN101277228A (zh) * | 2008-05-26 | 2008-10-01 | 杭州华三通信技术有限公司 | 一种干扰定位的检测方法、装置和系统 |
CN101359361A (zh) * | 2008-09-17 | 2009-02-04 | 湖南大学 | 一种rfid系统中的数据防碰撞算法 |
CN101431365A (zh) * | 2007-11-09 | 2009-05-13 | 大唐移动通信设备有限公司 | 时分双工系统数据传输方法 |
US20090207815A1 (en) * | 2006-07-07 | 2009-08-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Resource allocation for co-existing networks |
CN101572649A (zh) * | 2008-04-30 | 2009-11-04 | 华为技术有限公司 | 一种时隙分配方法及装置 |
US20110105134A1 (en) * | 2009-10-31 | 2011-05-05 | Samsung Electronics Co., Ltd. | Visible light communication method and apparatus |
US20140293850A1 (en) * | 2013-03-29 | 2014-10-02 | Olympus Corporation | Power-saving tdma mac for wireless body area networks |
-
2015
- 2015-02-27 CN CN201510089186.7A patent/CN104717154B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090207815A1 (en) * | 2006-07-07 | 2009-08-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Resource allocation for co-existing networks |
CN101203020A (zh) * | 2006-12-11 | 2008-06-18 | 华为技术有限公司 | 上行控制时隙分配方法、系统以及移动台 |
CN101034932A (zh) * | 2007-02-08 | 2007-09-12 | 北京航空航天大学 | 快速预约列发多址接入方法 |
CN101431365A (zh) * | 2007-11-09 | 2009-05-13 | 大唐移动通信设备有限公司 | 时分双工系统数据传输方法 |
CN101572649A (zh) * | 2008-04-30 | 2009-11-04 | 华为技术有限公司 | 一种时隙分配方法及装置 |
CN101277228A (zh) * | 2008-05-26 | 2008-10-01 | 杭州华三通信技术有限公司 | 一种干扰定位的检测方法、装置和系统 |
CN101359361A (zh) * | 2008-09-17 | 2009-02-04 | 湖南大学 | 一种rfid系统中的数据防碰撞算法 |
US20110105134A1 (en) * | 2009-10-31 | 2011-05-05 | Samsung Electronics Co., Ltd. | Visible light communication method and apparatus |
US20140293850A1 (en) * | 2013-03-29 | 2014-10-02 | Olympus Corporation | Power-saving tdma mac for wireless body area networks |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109218225A (zh) * | 2018-09-21 | 2019-01-15 | 广东工业大学 | 一种数据包缓存方法及系统 |
CN109218225B (zh) * | 2018-09-21 | 2022-02-15 | 广东工业大学 | 一种数据包缓存方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104717154B (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102413061B (zh) | 一种报文传输方法及设备 | |
CN109391560A (zh) | 网络拥塞的通告方法、代理节点及计算机设备 | |
CN100479465C (zh) | 网络设备实现链路聚合的方法 | |
CN110417569B (zh) | 一种网络链路故障处理方法和隧道端点设备 | |
CN102263697B (zh) | 一种聚合链路流量分担方法和装置 | |
CN104283806A (zh) | 业务链处理方法和设备 | |
CN103023773B (zh) | 多拓扑网络中转发报文的方法、装置和系统 | |
CN101573913A (zh) | 用于多播路由选择的方法和设备 | |
CN105791169A (zh) | 软件定义网络中交换机转发控制、转发方法及相关设备 | |
CN105991445A (zh) | 链路聚合组的设置方法和装置 | |
CN102014045A (zh) | 一种交换机流量控制方法和交换机 | |
CN101616064B (zh) | 数据管理方法、mesh网络系统及相关装置 | |
CN103731376B (zh) | 堆叠设备上链路汇聚根端口选择的方法及系统 | |
CN102045233B (zh) | 一种网络通信中控制报文转发的方法和设备 | |
CN104580165A (zh) | 智慧协同网络中的一种协作缓存方法 | |
GB2578415A (en) | Methods and systems for transmitting information packets through tunnel groups at a network node | |
CN102932255B (zh) | 隧道路径选择的方法及装置 | |
CN105743816A (zh) | 一种链路聚合方法及装置 | |
CN102870381A (zh) | 一种pcie交换系统、装置及交换方法 | |
CN117354230B (zh) | 双向拓扑网络的路由路径确定方法、装置、设备及介质 | |
CN101729420A (zh) | 一种数据处理方法及装置 | |
CN111464443B (zh) | 基于服务功能链的报文转发方法、装置、设备及存储介质 | |
CN103354567B (zh) | 一种同步媒体访问控制地址的方法和设备 | |
CN102652414A (zh) | 在传感器个人区域网络中进行分组转发 | |
WO2015096512A1 (zh) | 一种基于trill网络的报文传输方法及设备 |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220118 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: xFusion Digital Technologies Co., Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |