CN111371686A - 一种报文转发方法及装置 - Google Patents
一种报文转发方法及装置 Download PDFInfo
- Publication number
- CN111371686A CN111371686A CN202010195713.3A CN202010195713A CN111371686A CN 111371686 A CN111371686 A CN 111371686A CN 202010195713 A CN202010195713 A CN 202010195713A CN 111371686 A CN111371686 A CN 111371686A
- Authority
- CN
- China
- Prior art keywords
- node
- message
- label
- switching
- service
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/741—Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出了一种报文转发方法,包括以下步骤:所述交换节点与数据节点建立唯一连接,并为数据节点分配端口;交换节点向其相邻的交换节点发送节点注册消息;所述节点注册消息包括交换节点自身的名字标识;交换节点接收并解析相邻的交换节点反馈的节点注册响应消息,在自身的名字路由表中增加相应的路由记录;所述名字路由表包括名字标识和名字标识对应的出接口;交换节点通过路由通告消息接收相邻交换节点发送的名字路由表,并结合接收的名字路由表更新自身的名字路由表。本发明避免了传统IPv4网络的地址不够用的问题;也避免了IPv6和IPv4网络中路由器设备对按内容访问内存或者网络搜索引擎这些器件的大规模使用,降低了网络转发的能源消耗。
Description
技术领域
本发明申请涉及通信领域,尤其涉及一种报文转发方法及装置
背景技术
英特网的技术基础是IPv4协议栈,IPv4的技术特点是简单明了,即IPv4网络中的每个节点都有一个IPv4地址,IPv4地址分网络号与主机号,相同网络号的主机通信一 般在一个广播域内,可通过二层的协议来互相通信,而不同网络号的主机通信则交由 网关来处理,网关再依赖互联的路由器完成报文的转发。IPv4网络得到了快速的发 展,但也暴露了很多问题,比如,广域网的IPv4地址不够用,而IPv6地址虽然足够多 但其地址结构太复杂,造成路由设备需要配置大量的按内容访问内存(TCAM)或者 网络搜索引擎(NSE)这些器件,结果就是路由设备结构复杂,造价比较高,运行时 的功耗也比较大。
发明内容
为解决上述问题,本发明提出了一种报文转发方法,包括以下步骤:
交换节点与数据节点建立唯一连接,并为数据节点分配端口;所述唯一连接表示数 据节点只能与一个交换节点建立连接;
交换节点向其相邻的交换节点发送节点注册消息;所述节点注册消息包括交换节点自身的名字标识;
交换节点接收并解析相邻的交换节点反馈的节点注册响应消息,在自身的名字路由 表中增加相应的路由记录;所述名字路由表包括名字标识和名字标识对应的出接口;
交换节点通过路由通告消息接收相邻交换节点发送的名字路由表,并结合接收的名 字路由表更新自身的名字路由表。
进一步地,还包括以下步骤:
源交换节点接收源数据节点发送的数据报文,所述数据报文包括目的交换节点的名 字标识和目的端口号;
源交换节点根据目的交换节点的名字标识查找名字路由表,根据查找结果发送给下 一个交换节点;
目的交换节点接收并解析上一交换节点发送的数据报文;目的交换节点根据数据报 文中的目的端口号将数据报文发送送给相应的目的数据节点。
进一步地,包括以下步骤:
交换节点为名字路由表中的每个路由记录分配一个标签,在路由通告消息中也增加 标签信息;由于每个路由记录对应一个交换节点名字标识,所以每个标签也即对应一个交换节点;
交换节点用标签作为键值,根据名字路由表生成标签路由表;所述标签路由表包括 标签和标签对应的路由信息;
源交换节点接收和解析源数据节点发送的节点查询消息;
源交换节点根据源数据节点发送的节点查询消息向源数据节点反馈目的交换节点的 名字标识对应的标签;
源交换节点接收并解析源数据节点发送的包含标签的报文,根据报文中的标签查找 标签路由表获得路由信息,根据路由信息完成报文的转发。
进一步地,包括以下步骤:
所述报文还包括源交换节点名字标识以及源端口号;
源数据节点接收源数据节点发送的由目的数据节点生成的响应报文。
进一步地,所述报文包括源标签入栈标记和源标签栈,所述源交换节点接收上游交 换节点发送的报文,若所述报文中携带了源标签入栈标记,则将上游交换节点所对应的标签压入报文的源标签栈;
进一步地,所述源交换节点建立相邻名字路由表,所述相邻名字路由表包括相邻交 换节点的名字标识、相邻交换节点拥有的名字路由表中的标签和标签对应的名字标识;
当需要根据“源标签入栈标记”修改报文时,源交换节点取源标签栈的栈顶标签和相邻名字路由表中的标签比较,同时取上游交换节点的名字标识和相邻交换节点的名 字标识比较,找到相应的名字标识,使用找到的名字标识查找自身的名字路由表,找 到对应的标签,将源标签栈顶的标签用找到的标签替代。
进一步地,源数据节点和目的数据节点位于不同的域,源数据节点向源交换节点查 询目的交换节点的标签时,查询在源交换节点不能完成,由源交换节点根据目的交换节点的名字标识找到对应的域外节点,将查询消息发送给域外节点,由域外节点返回 目的交换节点的标签。
源数据节点封装具有多层标签的报文,最内层标签为目的交换节点的标签,外层标 签为对应的域外节点的标签;报文经过的域的个数与封装的标签层数对应。
进一步地,交换节点发布的路由通告消息和其自身的名字路由表中包括路由跳数;
交换节点接收路由通告消息,如果其自身的名字路由表中的路由跳数大于等于路由 通告消息中的跳数加1,则使用路由通告消息中的路由替代名字路由中的路由。
进一步地,目的数据节点将报文中的目的标签栈的内容和源标签栈的内容相互置换,将报文中目的端口和源端口的内容互相置换生成所述报文的响应报文。
进一步地,所述交换节点还包括多业务标签交换网关,所述多业务标签交换网关具 备服务注册、服务调用、服务查询和服务发布的功能;
多业务标签交换网关通过服务发布消息把服务列表的服务信息发送给相邻的交换节 点,所述服务发布消息包括服务的名称标识、服务类型、包含服务所在的多业务标签交换网关的名字标识和端口号的位置。
进一步地,所述多业务标签交换网关接收并解析查询组件发送的服务查询请求消息,查询服务列表获得服务的类型、位置,根据位置中服务所在的多业务标签交换网 关名字标识查找名字路由表获得其对应的标签,将获得服务的类型、位置和标签封装 到服务查询响应消息中发送给查询的组件。
进一步地,所述多个多业务标签交换网关位于多个不同的域,每个域中的交换节点 的名字标识的前缀相同;只与域内其他交换节点连接的交换节点为域内节点,与其他域的交换节点连接的交换节点为域间节点;
域间节点将其名字路由表中多条路由按照前缀聚合成一条聚合路由对外发布;
域间节点接收其他域的域间节点发布过来的路由通告信息,将域外路由发布给域内 的其他交换节点。
还提供了一种报文转发装置,所述报文转发装置该报文转发设备被作为交换节点使 用,所述报文转发装置包括:
接收单元,用于接收其他交换节点发送的数据报文或数据节点发送的数据报文;所 述数据节点为只依赖交换节点收发报文的节点;所述数据节点只与一个交换节点连接;
所述数据节点包括源数据节点和目的数据节点,所述源数据节点为数据报文的初始 发送方,所述目的数据节点为数据报文的最终接收方;
与源数据节点连接的交换节点为源交换节点,与目的数据节点连接的交换节点为目 的交换节点;
源交换节点包括源端口,所述源端口为源数据节点向源交换节点注册获得的报文接 收端口;所述目的交换节点包括目的端口,所述目的端口为目的数据节点向目的交换节点注册获得的报文接收端口;
发送模块,用于将从其他交换节点或数据节点处接收的消息处理后进行转发;
所述报文转发装置通过上述任一所述报文转发方法对报文进行转发。
本发明与现有技术相比,有益效果在于:
本发明通过引入交换节点、多业务标签交换网关等设备,避免了传统IPv4网络的地 址不够用的问题;也避免了IPv6和IPv4网络中路由器设备对按内容访问内存(TCAM) 或者网络搜索引擎(NSE)这些器件的大规模使用,降低了网络转发的能源消耗。本发 明按标签转发的转发方法提高了数据报文在网络中的转发效率。
附图说明
图1为本发明的组网示例。
图2为本发明标签转发的组网示例。
图3为本发明服务调用的组网示例。
图4为本发明路由聚合的组网示例。
图5为本发明实施例1-5的组网拓扑。
图6为本发明实施例4的组网简化拓扑。
图7为本发明实施例6的组网拓扑。
图8为本发明实施例7的组网拓扑。
图9为本发明实施例8的组网拓扑。
具体实施方式
在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定意在包括本发明的所有方面。应当理解,上面介绍的多种构思 和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一 种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本 发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来 使用。
本发明中描述了一种报文转发方法,所述报文转发方法以交换节点和数据节点为媒 介对报文进行转发,所述交换节点包括源交换节点、中间交换节点和目的交换节点; 所述数据节点包括源数据节点和目的数据节点;源数据节点为数据报文的初始发送 方,所述目的数据节点为数据报文的最终接收方;仅和交换节点连接的为中间交换节 点,和源数据节点连接的为源交换节点,和目的数据节点连接的为目的交换节点,可 以理解的是,“源”、“目的”和“中间”仅表示在本次数据传输过程中的相对关系,例 如,在下一次数据传输过程中,也可能是由目的数据节点向源交换节点发送报文,因 此,“源”、“目的”和“中间”不应当理解为对设备本身的功能限制。
所述交换节点或者数据节点,可以是纯软件程序,也可以是软硬件结合的一个物理 设备;构成网络的数据节点、交换节点之间的互联,可以通过IPv4、IPv6等现有的三 层网络,也可以是以太、蓝牙等现有的二层网络,也可以是TCP和UDP这样的四层 网络,甚至可以是比较特殊的进程间通信通道。即本发明中网络的构建比较灵活,无 法穷尽所有场景,这里只能举些例子,描述实施本申请的方式。
本实施例还提供了一种报文转发设备,该报文转发设备被作为交换节点使用,具体 包括:
接收单元,用于接收其他交换节点发送的数据报文或数据节点发送的数据报文;所 述数据节点为只依赖交换节点收发报文的节点;所述数据节点只与一个源交换节点或目的交换节点连接;
所述数据节点包括源数据节点和目的数据节点,所述源数据节点为数据报文的初始 发送方,所述目的数据节点为数据报文的最终接收方;
与源数据节点连接的交换节点为源交换节点,与目的数据节点连接的交换节点为目 的交换节点;
源交换节点包括源端口,所述源端口为源数据节点向源交换节点注册获得的报文接 收端口;所述目的交换节点包括目的端口,所述目的端口为目的数据节点向目的交换节点注册获得的报文接收端口;
报文转发路径获取单元,用于接收所述报文的报文转发路径生成请求,从所述报文 转发路径生成请求中获取报文属性;根据所述报文属性查找转发表,一次性获得报文发送至出接口之前经过的路径分段;确定所述报文在所述经过的每个路径分段中用于 封装报文的封装信息,所述封装信息包括与每个路径分段对应的、用于进行报文转发 流程控制的转发逻辑单元信息;根据每个所述路径分段信息及其封装信息,生成报文 转发路径,发送所述报文转发路径;所述报文转发路径获取组件还包括:封装信息发 送模块,用于向各个转发逻辑单元发送各自对应的路径分段的封装信息;
转发逻辑单元,用于接收所述报文转发路径和与自己对应的路径分段的封装信息,根 据接收的所述封装信息封装报文,根据所述报文转发路径,转发所述报文;
报文表项管理组件,用于存储所述转发表。
所述报文转发方法以交换节点和数据节点为媒介实现下列四大功能,具体为:
一、普通转发
若源数据节点能够直接给出其要发送数据的目的交换节点标识和目的数据节点端 口,则组网如图1所示即可。
图1中,源交换节点和目的交换节点通过多业务标签交换网络完成连接,所述多业务标签交换网络是由多个中间交换节点连接组成的网络;源数据节点和目的数据节 点分别与各自的交换节点连接,数据节点和交换节点之间可以通过进程间通信的方式 连接,也可以通过其他的二层或者三层网络连接。假设图1中节点之间的连接和注册 已经完成,则一次源数据节点向目的数据节点发送数据的过程如下:
步骤1:目的交换节点将自身名字标识的路由信息发布到多业务标签交换网络;
步骤2:源交换节点从多业务标签交换网络获得目的交换节点的名字标识及相应的 路由信息;
步骤3:源数据节点发送消息给源交换节点,消息中包含有目的交换节点的名字标识以及目的数据节点的端口号;
步骤4:源交换节点根据消息中的目的交换节点的名字标识查找名字路由表,将消息发送到多业务标签交换网络;
步骤5:多业务标签交换网络中的中间交换节点根据消息中的目的交换节点的名字 标识查找路由,将消息发送到目的交换节点;
步骤6:目的交换节点根据消息中的目的数据节点的端口号找到目的数据节点,将消息发送给目的数据节点;
步骤7:目的数据节点接收消息,根据消息的内容进行处理。
所述名字路由表,类似IP地址路由表,区别在于查找键值,名字路由表的查找键值是字符串,而IP地址路由表的查找键值是32比特的IPv4地址。名字路由表的查找 键值是交换节点的名字标识,比如上面流程中假设目的交换节点的标识是字符串 “sw2”,那么上面源交换节点和多业务标签交换网络中的交换节点用来查找名字路由 表的键值就是“sw2”。所述名字路由表包括交换节点的名字标识和相应的路由信息; 名字路由表中一个名字标识和相应的路由信息表示名字路由表的一条名字路由记录。
二、标签转发
为了提高交换节点的转发效率,交换节点给名字路由表中的记录分配标签,并将分配的标签通过路由通告消息发布给相邻的交换节点,即所述名字路由表包括交换节 点的名字标识、路由信息和标签。交换节点创建标签路由表,所述标签路由表包括标 签和路由信息,比如图1所示的组网进一步实例化成如图2所示的组网:
源交换节点的名字标识是“sw1”,目的交换节点的名字标识是“sw2”,两者之间 通过中间交换节点“sw_a”和中间交换节点“sw_b”进行连接和通信。源交换节点生成 “sw2”对应的路由信息和标签的流程如下:
步骤1:目的交换节点sw2给sw2分配标签1000,将标签1000放入sw2对应的 路由记录中,并且在其标签路由表中新增标签路由记录,标签为:1000,对应的路由 信息为:入标签1000,出标签指向自身;
步骤2:目的交换节点sw2向交换节点sw_b发布路由通告消息,其中包含sw2的 名字路由记录;
步骤3:交换节点sw_b解析路由通告消息,在其名字路由表中中新增关于 “sw2”的名字路由记录,给sw2分配标签2000;在其标签路由表中新增标签路由记 录,标签为:2000,对应的路由信息为:入标签2000,出标签1000;
步骤4:交换节点sw_b向交换节点sw_a发布路由通告消息,其中包含sw2的名 字路由记录;
步骤5:交换节点sw_a解析路由通告消息,在其名字路由表中新增关于“sw2” 的名字路由记录,并给sw2分配标签3000;在其标签路由表中新增标签路由记录,标 签为:3000,对应的路由信息为:入标签3000,出标签2000;
步骤6:交换节点sw_a向源交换节点sw1发布路由通告消息,其中包含sw2的名 字路由记录;
步骤7:交换节点sw1解析路由通告消息,在其名字路由表中新增关于“sw2”的 名字路由记录,并给sw2分配标签4000;在其标签路由表中新增标签路由记录,标签 为:4000,对应的路由信息为:入标签4000,出标签3000。
sw1、sw_a、sw_b和sw2名字路由表分别如表1、表2、表3和表4所示。
表1
表2
表3
表4
在上述流程之后,源数据节点向目的数据节点发送数据时,具体流程如下:
步骤1:源数据节点向源交换节点sw1发送节点查询请求消息,其中节点标识为“sw2”;
步骤2:源交换节点sw1查询自身的名字路由表,获得“sw2”对应的标签为 4000,向源数据节点发送节点查询响应消息;
步骤3:源数据节点接收并解析查询响应消息后将标签4000封装到数据报文中,向源交换节点sw1发送数据报文;
步骤4:源交换节点sw1接收并解析数据报文后在其自身的查找标签4000对应的标签路由表,根据标签路由表的对应内容进行转发,即将数据报文中的标签4000弹 出,并封装标签3000将数据报文转发给交换节点“sw_a”;
步骤5:交换节点sw_a接收并解析数据报文后根据数据报文中的标签3000进行 转发,即弹出数据报文中的标签3000并封装标签2000,将数据报文转发给交换节点 “sw_b”;
步骤6:交换节点sw_b接收并解析数据报文后根据数据报文中的标签2000进行 转发,即将数据报文中的标签2000弹出并封装标签1000,将数据报文转发给目的交换 节点“sw2”;
步骤7:交换节点sw2接收并解析数据报文后根据数据报文中的标签1000进行转发,即将数据报文中的标签1000弹出,然后根据目的端口号进行相应处理。
服务调用
若源数据节点不能够给出其要发送数据的目的交换节点的标识和目的数据节点的 端口号,其只能给出需要访问的服务名字标识,则需要引入多业务标签交换网关。多 业务标签交换网关能够发布和查询某服务名字标识对应的位置,即某服务名字标识对 应的交换节点的标识和端口号。相应的源交换节点和目的交换节点就升级为源多业务 标签交换网关和目的多业务标签交换网关,具体组网如图3所示:
源数据节点、源多业务标签交换网关、多业务标签交换网络、目的多业务标签交换网关和目的数据节点顺次连接。
假设目的多业务标签交换网关的名字标识是“sw2”,目的数据节点提供的服务名字标识是“my_srv”,在各多业务标签交换网关和各交换节点之间的相应的连接(如图 3所示)已经完成的情况下,“my_srv”这个服务发布和查询的过程如下:
步骤1:目的数据节点向目的多业务标签交换网关sw2发送服务注册请求消息, 其中包含服务的名字标识“my_srv”;
步骤2:目的多业务标签交换网关sw2解析服务注册请求消息,给服务 “my_srv”分配端口号为2001,并向目的数据节点返回服务注册响应消息;
步骤3:目的多业务标签交换网关sw2向多业务标签交换网络发送服务发布消 息,其中包含服务的名字标识“my_srv”、发布服务的目的多业务标签交换网关的标识 “sw2”和服务对应的端口号2001;
步骤4:多业务标签交换网络扩散收到的服务发布消息;
步骤5:源多业务标签交换网关解析服务发布消息,记录服务发布消息中的服务的名字标识“my_srv”、服务的目的多业务标签交换网关的标识“sw2”和端口号2001;
步骤6:源数据节点发送服务查询请求消息,其中包含查询的服务的名字标识“my_srv”;
步骤7:源多业务标签交换网关接收并解析服务查询请求消息,找到“my_srv” 服务对应的服务信息,所述服务信息包括提供服务的目的多业务标签交换网关的标识 “sw2”和端口号2001,将服务信息封装到服务查询响应消息中,发送给源数据节 点;
步骤8:源数据节点解析服务查询响应消息,记录服务“my_srv”对应的目的多业务标签交换网关的标识“sw2”和端口号2001。
路由聚合
当多业务标签交换网络中交换节点过多,或者分属不同管理者的多业务标签交换网络对接,则需要引入网络域和路由聚合的概念。同一个网络域内交换节点的名字标 识具有相同的前缀,一般一个交换节点的名字标识可以由域名和交换节点的名称两部 分组成,如图4所示/com/aaa/domain1/和/com/aaa/domain2/为aaa公司的两个域名, domain1域和domain2域中分别有sw1、sw2、sw3等交换节点,那么这些交换节点完 整的名字标识是:
“/com/aaa/domain1/sw1”、“/com/aaa/domain1/sw2”、“/com/aaa/domain1/sw3”、“/com/aaa/domain2/sw1“、“/com/aaa/domain2/sw2“、“/com/aaa/domain2/sw3“
在一个域内可以取一个或多个交换节点与其他域进行对接,与域外节点对接的交换节点称为域间节点,域间节点对外发布路由时可以将名字路由表中的多个路由聚合 成一个路由再发布。假设“/com/aaa/domain1/sw3”和“/com/aaa/domain2/sw3”为两个 域间节点,其上有“/com/aaa/domain1/sw1”、“/com/aaa/domain1/sw2”、 “/com/aaa/domain1/sw3”三条名字路由,其对“/com/aaa/domain2”这个域发布路由时 将这三个路由聚合,发布的是“/com/aaa/domain1/*”这样一个带通配符“*”的聚合路 由,代表域外所有向“/com/aaa/domain1/”这个域发送的报文都可以匹配这个路由。
上述6个交换节点的组网如图4所示:
交换节点“/com/aaa/domain1/sw1”的接口a1连接交换节点 “/com/aaa/domain1/sw3”;
交换节点“/com/aaa/domain1/sw3”的接口c1连接“/com/aaa/domain1/sw1”,接口c2连接“/com/aaa/domain1/sw2”,接口c3连接“/com/aaa/domain2/sw3”;
交换节点“/com/aaa/domain1/sw2”的接口b1连接“/com/aaa/domain1/sw3”;
交换节点“/com/aaa/domain2/sw1”的接口d1连接“/com/aaa/domain2/sw3”;
交换节点“/com/aaa/domain2/sw3”的接口f1连接“/com/aaa/domain2/sw1”,接口f2 连接“/com/aaa/domain2/sw2”,接口f3连接“/com/aaa/domain1/sw3”;
交换节点“/com/aaa/domain2/sw2”的接口e1连接“/com/aaa/domain2/sw3”。
交换节点的名字路由表
/com/aaa/domain1/sw1的名字路由表如表5所示:
表5
/com/aaa/domain1/sw2的名字路由表如表6所示:
交换节点的名字标识 | 出接口 |
/com/aaa/domain1/sw2 | 自身 |
/com/aaa/domain1/sw1 | 接口b1 |
/com/aaa/domain1/sw3 | 接口b1 |
/com/aaa/domain2/* | 接口b1 |
表6
/com/aaa/domain1/sw3的名字路由表如表7所示:
交换节点的名字标识 | 出接口 |
/com/aaa/domain1/sw3 | 自身 |
/com/aaa/domain1/sw1 | 接口c1 |
/com/aaa/domain1/sw2 | 接口c2 |
/com/aaa/domain2/* | 接口c3 |
表7
/com/aaa/domain2/sw1的名字路由表如表8所示:
交换节点的名字标识 | 出接口 |
/com/aaa/domain2/sw1 | 自身 |
/com/aaa/domain2/sw2 | 接口d1 |
/com/aaa/domain2/sw3 | 接口d1 |
/com/aaa/domain1/* | 接口d1 |
表8
/com/aaa/domain2/sw2的名字路由表如表9所示:
交换节点的名字标识 | 出接口 |
/com/aaa/domain2/sw2 | 自身 |
/com/aaa/domain2/sw1 | 接口e1 |
/com/aaa/domain2/sw3 | 接口e1 |
/com/aaa/domain1/* | 接口e1 |
表9
/com/aaa/domain2/sw3的名字路由表如表10所示:
交换节点的名字标识 | 出接口 |
/com/aaa/domain2/sw3 | 自身 |
/com/aaa/domain2/sw1 | 接口f1 |
/com/aaa/domain2/sw2 | 接口f2 |
/com/aaa/domain1/* | 接口f3 |
表10
实施例1
本实施例描述烟雾数据采集点发送采集数据到处理数据节点时,普通报文的转发方法和流程。
本实施例的组网描述具体如下:
如图5所示,烟雾采集数据节点为一种嵌入式设备,通过Zigbee网络与采集交换节点建立连接,而采集交换节点为软件后台进程,其通过IPv6网络与交换节点互通; 处理数据节点为一软件程序,其通过进程间通信通道与处理交换节点建立连接,而处 理交换节点也为一软件后台进程,其与交换节点通过IPv4网络互通。
本实施例的业务描述具体如下:
烟雾采集数据节点定时采集烟雾测量值,并上报给烟雾处理数据节点。烟雾处理数据节点根据上报的烟雾测量值和用户配置确定是否发出警告。烟雾采集的组网拓扑 与普通转发的组网拓扑的对应关系具体为:烟雾采集数据节点对应源数据节点,烟雾 处理数据节点对应目的数据节点。源数据节点通过配置文件或者用户输入确定目的数 据节点的位置。假设采集交换节点的名字标识为“sw1”,处理交换节点的名字标识为 “sw2”,连接两者的交换节点的名字标识为“sw3”,处理数据节点的端口号为100。
烟雾采集数据节点能够正确上报依赖多业务标签交换网络中采集交换节点、交换节点、数据交换节点的正确工作能够正确工作,其一般流程如下:
步骤1:交换节点启动,其打开tcp服务端口1234,等待其他交换节点连接;
步骤2:处理交换节点启动,其根据配置或者用户输入确定交换节点的ipv4地址和端口,向其发起TCPv4连接;并且自身也准备就绪,等待数据节点连接;
步骤3:采集交换节点启动,其根据配置或者用户输入确定交换节点的ipv6地址和端口,向其发起TCPv6连接;并且自身也准备就绪,等待数据节点连接;
步骤4:处理交换节点向交换节点发送节点注册消息,其中包含自身的名字标识“sw2”;
步骤5:交换节点解析节点注册消息,新增名字路由“sw2”;
步骤6:采集交换节点向交换节点发送节点注册消息,其中包含自身的名字标识“sw1”;
步骤7:交换节点解析节点注册消息,新增名字路由“sw1”;
步骤8:交换节点通过路由通告消息,将其自身名字路由表中的信息发送给采集交换节点,包含的名字标识有“sw1”、“sw2”、“sw3”;
步骤9:采集交换节点解析路由通告消息,根据路由通告消息更新名字路由表,即新增名字标识为“sw2”的路由;
步骤10:交换节点通过路由通告消息,将其自身名字路由表中的信息发送给数据交换节点,包含的名字标识有“sw1”、“sw2”、“sw3”;
步骤11:数据交换节点解析路由通告消息,根据路由通告消息更新名字路由表,即新增名字标识为“sw1”的路由。
上述交换节点连接并且互相交换路由信息之后,其组成的多业务标签交换网络就可以为数据节点提供数据报文转发的服务了,烟雾采集数据节点将采集的烟雾测量值 封装到数据报文中发送给处理数据节点的流程如下:
步骤1:处理数据节点向处理交换节点发送数据节点注册报文,其中包含端口号100;
步骤2:处理交换节点解析数据节点注册报文,确定端口号100没有冲突,将端口100与处理数据节点关联;
步骤3:采集数据节点根据配置或者用户输入获得处理数据节点的位置信息作为目 的地址,所述位置信息为处理交换节点的名字标识“sw2”和端口号“100”;
步骤4:采集数据节点采集当前烟雾值,并将烟雾值和处理数据节点的位置信息等信息封装到数据报文中;
步骤5:采集交换节点解析数据报文,根据数据报文中的处理交换节点的名字标识“sw2”查找路由信息,根据路由信息将数据报文发送给交换节点;
步骤6:交换节点解析数据报文,根据数据报文中的处理交换节点的名字标识“sw2”查找路由,根据路由将数据报文发送给数据交换节点;
步骤7:数据交换节点解析数据报文,根据数据报文中的处理交换节点的名字标识“sw2”查找路由,根据路由确定数据报文的目的地址为本节点,再根据端口号 “100”将数据报文发送给对应的处理数据节点;
步骤8:处理数据节点解析数据报文获得烟雾测量值等信息,根据业务逻辑进行相应处理。
实施例2
本实施例描述烟雾数据采集点发送采集数据到处理数据节点时,按标签转发的处理方法和流程。
本实施例的组网描述具体如下:
如图5所示,本实施例的组网拓扑中的交换节点支持标签。
本实施例的业务和实施例1类似,所不同的是采集数据节点在上报采集数据之前会发送节点查询消息,获得处理交换节点对应的标签值,并将该标签值封装到数据报 文中,后续交换节点会根据目的标签栈对数据报文进行转发,提高了数据报文在网络 中的转发效率。
多业务标签交换网络中交换节点的互联和路由通告的过程如下:
步骤1:交换节点启动,其打开tcp服务端口1234,等待其他交换节点连接;
步骤2:处理交换节点启动,其根据配置或者用户输入确定交换节点的ipv4地址和端口,向其发起TCPv4连接;并且自身也准备就绪,等待数据节点连接;
步骤3:采集交换节点启动,其根据配置或者用户输入确定交换节点的ipv6地址和端口,向其发起TCPv6连接;并且自身也准备就绪,等待数据节点连接;
步骤4:处理交换节点向交换节点发送节点注册消息,其中包含自身的名字标识“sw2”;
步骤5:交换节点解析节点注册消息,新增名字路由“sw2”,并分配对应标签 2000;
步骤6:采集交换节点向交换节点发送节点注册消息,其中包含自身的名字标识“sw1”;
步骤7:交换节点解析节点注册消息,新增名字路由“sw1”,并分配对应标签 1000;
步骤8:交换节点通过路由通告消息,将其自身名字路由表中的信息发送给采集交换节点,包含的名字标识有“sw1”、“sw2”、“sw3”,其对应标签为1000、2000、 3000;
步骤9:采集交换节点解析路由通告消息,根据路由通告消息更新名字路由表,即新增名字标识为“sw2”的路由,并新分配标签为2001;
步骤10:交换节点通过路由通告消息,将其自身名字路由表中的信息发送给数据交换节点,包含的名字标识有“sw1”、“sw2”、“sw3”;
步骤11:数据交换节点解析路由通告消息,根据路由通告消息更新名字路由表,即新增名字标识为“sw1”的路由,并新分配标签为1001。
上述采集交换节点、处理交换节点和交换节点连接并且互相交换路由信息之后,其组成的多业务标签交换网络就可以为数据节点提供数据报文标签转发的服务了,烟 雾采集数据节点将采集的烟雾测量值封装到数据报文中发送给处理数据节点的流程如 下:
步骤1:处理数据节点向处理交换节点发送数据节点注册报文,其中包含端口号100;
步骤2:处理交换节点解析数据节点注册报文,确定端口号100没有冲突,将端口100与处理数据节点关联;
步骤3:采集数据节点根据配置或者用户输入获得处理数据节点的位置信息作为目 的地址,所述位置信息为处理交换节点的名字标识“sw2”,目的端口为“100”;
步骤4:采集数据节点向采集交换节点发送节点查询消息,查询的交换节点标识为“sw2”;
步骤5:采集交换节点解析节点查询消息,找到“sw2”分配的标签为2001,将标 签值2001封装到响应报文中发送给采集数据节点;
步骤6:采集数据节点解析节点查询响应消息,获得“sw2”对应的标签2001;
步骤7:采集数据节点采集当前烟雾值,并将烟雾值和目的地址等信息封装到数据报文中,所述目的地址具体为“sw2”对应的标签20012001和端口号“100”;
步骤8:采集交换节点解析数据报文,根据数据报文中的标签2001查找标签路由表,根据标签路由表将2001标签弹出,并压入新标签2000,然后将数据报文根据路由 发送给交换节点;
步骤6:交换节点解析数据报文,根据数据报文中的标签2000查找标签路由表, 根据标签路由表将2000标签弹出,然后将数据报文根据路由发送给数据交换节点;
步骤7:数据交换节点解析数据报文,目的标签栈为空,则确定数据报文的目的地址为本节点,再根据端口号“100”将数据报文发送给对应的处理数据节点;
步骤8:处理数据节点解析数据报文获得烟雾测量值等信息,根据业务逻辑进行相应处理。
实施例3
本实施例描述处理数据节点查询某数据采集点的实时采集数据,查询请求报文和查询响应报文的处理方法和流程。
本实施例的组网描述具体如下:
如图5所示,本实施例的组网拓扑与实施例1相同,不同之处在于处理数据节点 主动向采集数据节点发送数据采集的消息,采集数据节点将当前实时的采集数据发送 会处理数据节点。
本实施例的业务描述具体如下:
处理数据节点根据业务逻辑确定向采集数据节点发送采集消息,获得这些采集数据节 点当前实时的烟雾测量值。假设采集交换节点的名字标识为“sw1”,处理交换节点的名字标识为“sw2”,连接两者的中间交换节点为“sw3”,处理交换节点给处理数据节 点分配的端口号为200,采集交换节点给采集数据节点分配的端口号为100。
上述交换节点连接并且互相交换路由信息之后,处理数据节点采集某采集数据节点实时烟雾测量值的流程如下:
步骤1:处理数据节点向处理交换节点发送数据节点注册报文,其中包含端口号200;
步骤2:处理交换节点解析数据节点注册报文,确定端口号200没有冲突,将端口200与处理数据节点关联,并返回数据节点注册响应报文,其中包含处理交换节点的名 字标识“sw2”;
步骤3:处理数据节点解析数据节点注册响应报文,记录其所属的交换节点名字标识为“sw2”;
步骤4:采集数据节点向采集交换节点发送数据节点注册报文,其中包含端口号100;
步骤5:采集交换节点解析数据节点注册报文,确定端口号100没有冲突,将端口100与采集数据节点关联,并返回数据节点注册响应报文,其中包含采集交换节点的名 字标识“sw1”;
步骤6:处理数据节点根据业务逻辑发送包含实时采集的信息和目的地址的数据报 文给处理交换节点,所述目的地址包含目的交换节点标识“sw1”、目的端口号 “100”、消息类型“实时采集”和采集者位置“sw2:200”;
步骤7:处理交换节点根据目的交换节点标识“sw1”,将数据报文转发给交换节点;
步骤8:交换节点根据目的交换节点标识“sw1”,将数据报文转发给采集交换节点;
步骤9:采集交换节点根据目的交换节点标识“sw1”,确定该报文是发送给自身的,然后根据目的端口号“100”,将数据报文转发给采集数据节点;
步骤10:采集数据节点解析采集交换节点发送的数据报文,将当前实时的烟雾测量值填入数据报文并发送给采集交换节点,所述数据报文的目的交换节点标识为 “sw2”,目的端口号为“200”;;
步骤11:采集交换节点根据目的交换节点标识“sw2”,将数据报文转发给交换节点;
步骤12:交换节点根据目的交换节点标识“sw2”,将数据报文转发给处理交换节点;
步骤13:处理交换节点根据目的交换节点标识“sw2”,确定该报文是发送给自身的,然后根据目的端口“200”将数据报文转发给处理数据节点;
步骤14:处理数据节点解析实时处理交换节点发送的数据报文,获得当前采集数据节点的实时烟雾测量值,进行进一步的业务处理。
实施例4
本实施例描述处理数据节点查询数据采集点的实时采集数据,查询请求标签报文和查询响应标签报文的处理方法和流程。
如图6所示,本实施例的组网同实施例3相同。
本实施例的业务同实施例3相同,所不同的是其中的交换节点支持标签,即交换节点为名字路由表中的每个路由记录分配一个标签,在路由通告中也增加标签信息; 由于每个路由记录对应一个交换节点名字标识,所以每个标签也即对应一个交换节 点;交换节点用标签作为键值,根据名字路由表生成标签路由表;所述标签路由表包 括标签和标签对应的路由信息;交换节点支持源标签入栈标记,根据源标签入栈标记 将源标签信息压入数据报文的源标签栈中。交换节点用标签作为键值,根据名字路由 表生成标签路由表;所述标签路由表包括标签和标签对应的路由信息;因此处理数据 节点并不需要知道自身的位置,也不需要将位置信息填入实时采集的数据报文中,而 是在发送的数据报文中设置“源标签入栈标记”,沿途的交换节点将报文源路径信息填 入源标签栈中,最后采集数据节点发送响应数据报文时,即根据源标签栈设置目的标 签栈将响应数据报文发回处理数据节点。
设采集交换节点的名字标识为“sw1”,交换节点的名字标识为“sw3”,处理交换 节点的名字标识为“sw2”。网络中交换节点的互联和路由通告的过程同实施例2中类 似,最后各交换节点的接口表、名字路由表、标签路由表的具体信息如表11-19所 示:
交换节点sw1的表项
表11
表12
表12
交换节点sw2的表项
表14
表15
表16
交换节点sw3的表项
表17
表18
表19
上述交换节点给每个名字标识分配的标签值可以自由确定,所以同一个名字标识在不同的交换节点分配的标签可以相同也可以不同,这里只是方便描述将标签分配做 了一些设计。处理数据节点将实时采集某采集数据节点的烟雾测量值的流程如下:
步骤1:采集数据节点向采集交换节点发送数据节点注册报文,其中包含端口号“100”;
步骤2:采集交换节点解析数据节点注册报文,确定端口号“100”没有冲突,将 端口100与采集数据节点关联;
步骤3:处理数据节点向处理交换节点发送数据节点注册报文,其中包含端口号“200”;
步骤4:处理交换节点解析数据节点注册报文,确定端口号“200”没有冲突,将 端口“200”与处理数据节点关联;
步骤5:处理数据节点根据配置或者用户输入获得采集数据节点的位置信息作为目 的地址,所述位置信息为采集交换节点的名字标识“sw1”和端口号“100”;
步骤6:处理数据节点向处理交换节点发送节点查询消息,查询的交换节点标识为“sw1”;
步骤7:处理交换节点sw2解析节点查询消息,找到“sw1”分配的标签为2001, 将标签值2001封装到节点查询响应消息中发送给处理数据节点;
步骤8:处理数据节点解析节点查询响应消息,获得“sw1”对应的标签2001;
步骤9:处理数据节点根据业务逻辑发送实时采集请求的数据报文,该数据报文的目的标签为2001,目的端口号为“100”,并设置“源标签入栈标记“,发送给处理交 换节点sw2;
步骤10:处理交换节点sw2解析数据报文,发现有“源标签入栈标记”,将处理 数据节点的端口号“200”填入数据报文的源端口号区域,并根据目的标签2001查询 标签路由表,根据标签路由表修改数据报文,即弹出目的标签栈的标签2001并压入标 签3001,然后将修改后的数据报文发送给交换节点;
步骤11:中间交换节点sw3解析处理交换节点发送的数据报文,发现有“源标签 入栈标记”,则将处理交换节点sw2对应的标签3002压入源标签栈;再根据目的标签 3001查找标签路由表,根据标签路由表修改数据报文,即弹出目的标签栈的标签 3001,并将修改后的数据报文发送给采集交换节点sw1;
步骤12:采集交换节点sw1解析数据报文,发现有“源标签入栈标记”,则将交 换节点sw3对应的标签1003压入源标签栈;目的标签栈为空,确定目的交换节点为自 身,则根据目的端口100找到对应的采集数据节点,将数据报文发送给采集数据节 点;
步骤13:采集数据节点解析实时采集消息,填入当前实时的烟雾测量值,并将原报文的源标签栈设置为目的标签栈,源端口设置为目的端口,生成数据报文,将其发 送给采集交换节点;
步骤14:采集交换节点根据目的标签栈的栈顶标签1003查找标签路由表,根据标签路由表将数据报文中的标签1003弹出,然后将数据报文发送给交换节点sw3;
步骤15:交换节点sw3根据目的标签栈的栈顶标签3002查找标签路由表,根据 标签路由表将数据报文中的标签3002弹出,然后将数据报文发送给处理交换节点 sw2;
步骤16:处理交换节点sw2根据目的标签栈为空确定目的交换节点为自身,根据目的端口200找到对应的处理数据节点,将数据报文发送给处理数据节点;
步骤17:处理数据节点解析数据报文,获得当前采集数据节点的实时烟雾测量值,进行进一步的业务处理。
报文内容说明
本实施例的组网简化拓扑图6所示:采集交换节点sw1交换节点sw3处理交换节 点sw2
报文pkt1.x(包括报文报文pkt1.1、报文pkt1.2、报文pkt1.3和报文pkt1.4)是网络中转发的请求报文,报文pkt2.x(包括报文pkt2.1、报文pkt2.2、报文pkt2.3和报文pkt2.4)是网络中转发的响应报文。
各报文包含的如表20-27所示:
报文Pkt1.1(处理数据节点发给处理交换节点的实时采集请求报文)
表20
报文Pkt1.2(sw2转发给sw3的请求报文)
报文类型 | 请求报文 |
目的标签栈 | 3001 |
目的端口 | 100 |
源标签入栈标记 | 设置 |
源标签栈 | 空 |
源端口 | 200 |
净荷 | 处理数据节点业务逻辑填充 |
表21
报文Pkt1.3(sw3转发给sw1的请求报文)
报文类型 | 请求报文 |
目的标签栈 | 空 |
目的端口 | 100 |
源标签入栈标记 | 设置 |
源标签栈 | 3002 |
源端口 | 200 |
净荷 | 处理数据节点业务逻辑填充 |
表22
报文Pkt1.4(sw1转发给采集数据节点的请求报文)
表23
报文Pkt2.1(采集数据节点发送给sw1的响应报文)
报文类型 | 响应报文 |
目的标签栈 | 1003,3002 |
目的端口 | 200 |
源标签栈 | 空 |
源端口 | 100 |
净荷 | 采集数据节点业务逻辑填充 |
表24
报文Pkt2.2(sw1转发给sw3的响应报文)
报文类型 | 响应报文 |
目的标签栈 | 3002 |
目的端口 | 200 |
源标签栈 | 空 |
源端口 | 100 |
净荷 | 采集数据节点业务逻辑填充 |
表25
报文Pkt2.3(sw3转发给sw2的响应报文)
报文类型 | 响应报文 |
目的标签栈 | 空 |
目的端口 | 200 |
源标签栈 | 空 |
源端口 | 100 |
净荷 | 采集数据节点业务逻辑填充 |
表26
报文Pkt2.4(sw2转发给处理数据节点的响应报文)
报文类型 | 响应报文 |
目的标签栈 | 空 |
目的端口 | 200 |
源标签栈 | 空 |
源端口 | 100 |
净荷 | 采集数据节点业务逻辑填充 |
表27
实施例5
本实施例描述处理数据节点查询数据采集点的实时采集数据,查询请求标签报文转发时,交换节点压入标签到源标签栈的优化方法和流程。
如图5所示,本实施例的组网同实施例4相同。
本实施例的业务同实施例4相同,所不同的是交换节点能够在将源标签信息压入数据报文的源标签栈时做些优化。比如实施例4中,实时采集的数据报文经过sw2, sw3,sw1三个交换节点时,压入的源标签依次为端口200、标签3002、标签1003,即 报文到达sw1这个交换节点时,源标签栈中压入了1003和3002这两个标签。如果数 据报文经过的交换节点越多,则压入数据报文源标签栈的标签也越多。为了减少压入 源标签栈的标签数,交换节点增加相邻名字路由表,相邻名字路由表包括相邻交换节 点的名字标识及其拥有的名字路由表中的标签和标签对应的名字标识,当需要根据 “源标签入栈标记”修改报文时,取源标签栈的栈顶标签和上游的交换节点的名字标 识与相邻名字路由表中的标签和相邻交换节点的名字标识比较,找到对应的名字标 识,然后再使用名字标识查找其自身的名字路由表,找到对应的标签,将源标签栈顶 的标签用找到的自身的名字路由表中记录的标签替代。
相邻名字路由表
交换节点sw1、sw2、sw3根据路由通告消息生成相邻名字路由表,具体内容如表28-表30所示:
表28
表29
表30
引入相邻名字路由表之后,当实施例中报文pkt1.3请求报文到达交换节点sw1之后,sw1在自身的相邻名字路由表中根据上游交换节点的名字标识“sw3”和源标签栈 的栈顶标签3002找到对应的名字标识为“sw2”,再用名字标识“sw2”在自身的名字 路由表找到对应的标签为1002,则将报文的源标签的内容修改为1002。即实施例4中 的pkt1.4在优化之后具体如表31所示:
报文Pkt1.4(sw1转发给采集数据节点的请求报文)
表31
实施例6
本实施例描述基于多业务标签交换网关实现某系统中日志服务发布与日志服务使 用的方法和流程。
本实施例的组网描述具体如下:
如图7所示,应用程序和多业务标签交换网关gw1在同一个计算节点上,多业务 标签交换网关为后台服务进程,启动后应用程序通过进程间通信通道与其建立连接; 多业务标签交换网关gw2和日志服务组件在另外一个计算节点上,两者都是后台服务 进程,多业务标签交换网关先启动,然后日志服务组件再通过进程间通信通道与其建 立连接;交换节点为独立的一个计算节点上的TCP服务端程序,多业务标签交换网关 gw1和gw2都作为TCP客户端与交换节点建立连接。所述多业务标签交换网关gw1 和gw2都属于交换节点,由于其具备标签转发、服务注册、服务调用、服务查询和服 务发布的功能,因此将其称为多业务标签交换网关。
本实施例的业务描述具体如下:
日志服务组件向系统中多个应用程序或组件提供日志服务,即应用程序向日志服务组件发消息,日志服务组件解析消息并根据配置做存储、解析等处理,方便系统异 常或故障时对异常或故障的快速定位和解决。本实施例描述单个应用程序通过多业务 标签网络向日志服务组件发送日志消息的实现过程。
一般服务注册会触发服务发布,而服务调用之后会进行服务查询,所以前两个动作合并为服务注册,后两个动作合并为服务调用。
服务注册 日志服务组件提供日志服务,该服务的服务名称为“my_log”,多业务标签交换网关并 不知道其连接的组件提供什么服务,所以日志服务组件在能够提供服务时,需要向多 业务标签交换网关发送一个服务注册消息,其中包含服务名称、服务类型;交换网关 给服务分配端口号,并将这个服务的信息通过服务发布消息向其他交换节点发布,服务发布消息一般包含这个服务的服务名称、服务类型、服务组件所属的多业务标签交 换网关的名字标识、对应的端口号。假设交换节点和数据节点已经连接完成(在本实 施例中为应用程序、多业务标签交换网关gw1、交换节点、多业务标签交换网关gw2 和日志服务组件按图7所示顺次连接),上述过程具体到本实例例的组网后服务注册的 流程如下:
步骤1:日志服务组件向多业务标签交换网关gw2发送服务注册请求消息,其中包含服务名称“my_log”和服务类型“无返回的服务调用”;
步骤2:多业务标签交换网关gw2解析服务注册请求消息,分配端口2000给该服 务“my_log”,将端口2000与日志服务组件关联;记录服务名称、服务类型、端口号 等信息到服务列表,并将端口号2000封装到服务注册响应消息中,将服务注册响应消 息发送给日志服务组件;
步骤3:日志服务组件接收并解析服务注册响应消息,将端口2000与日志服务逻辑关联;
步骤4:多业务标签交换网关gw2向相邻的交换节点sw发送服务发布消息,服务 发布消息中有服务名称、服务类型、端口号、多业务标签交换网关gw2的名字标识;
步骤5:交换节点sw解析服务发布消息,取出消息中的服务名称、服务类型、端 口号、多业务标签交换网关gw2的名字标识等信息存储到自身的服务列表;
步骤6:交换节点将从自身的服务列表中取出的信息封装到服务发布消息中,将服务发布消息发送给多业务标签交换网关gw1;
步骤7:多业务标签交换网关gw1解析服务发布消息,取出消息中的服务名称、服务类型、端口号、多业务标签交换网关gw2的名字标识等信息存储到自身的服务列 表。
服务调用
应用程序通过其连接的多业务标签交换网关gw1动态的获得日志服务“my_log”的服 务类型、位置等信息,然后需要调用日志服务时就可以完成日志服务调用消息的封 装。整个日志服务的调用流程如下:
步骤1:应用程序启动并与多业务标签交换网关gw1建立连接;
步骤2:应用程序向多业务标签交换网关gw1发送服务查询请求消息,服务的名字标识为“my_log”;
步骤3:多业务标签交换网关gw1查询服务列表获得服务“my_log”的服务类型和位置信息,并将这些信息封装到服务查询响应消息中,发送给应用程序;
步骤4:应用程序解析服务查询响应消息,获得并存储服务“my_log”对应的服务类型、端口号2000、所属多业务标签交换网关gw2的名字标识;
步骤5:应用程序根据业务逻辑发起服务“my_log”的服务调用,应用程序根据服务类型将调用的参数封装到服务调用请求报文中,服务调用请求报文的目的交换节点 标识为“gw2”,目的端口号为“2000”,最后将服务调用请求报文发送给多业务标签交 换网关gw1;
步骤6:多业务标签交换网关gw1解析服务调用请求报文,根据服务调用请求报文的目的交换节点标识“gw2”查找名字路由表获得路由信息,根据路由将服务调用请求 报文发送给交换节点;
步骤7:交换节点根据服务调用请求报文的目的交换节点标识“gw2”查找名字路由表获得路由,根据路由将服务调用请求报文发送给多业务标签交换网关gw2;
步骤8:多业务标签交换网关根据报文的目的交换节点标识“gw2”确定目的交换节点是自身,则根据报文的目的端口号“2000”查找找到对应的日志服务组件,将报 文发送给日志服务组件;
步骤9:日志服务组件解析服务调用请求报文,取出服务调用请求报文中的调用参数,完成日志服务的调用。
实施例7
本实施例描述日志服务的提供者与日志服务的使用者跨域的情况,描述基于多业务标签交换网关实现跨域的日志服务发布与服务使用的方法和流程。
本实施例的组网描述具体如下:
如图8所示,多业务标签交换网关/d1/gw1为后台服务进程,该后台服务进程与应用 程序在同一个计算节点,假设该计算节点的IP地址为192.168.1.10,应用程序通过进程间通信通道与多业务标签交换网关/d1/gw1建立连接;多业务标签交换网关/d2/gw2为后台服务进程,该后台服务进程与日志服务组件在同一个计算节点,假设该计算节点的IP 地址为192.168.2.20;交换节点/d1/sw1为单独的一个设备,其IP地址为192.168.1.11, 并打开了TCP服务端口1234,多业务标签交换网关/d1/gw1作为TCP客户端与/d1/sw1 建立连接;交换节点/d2/sw2为单独的一个设备,其IP地址为192.168.2.22,并打开了 TCP服务端口1234,多业务标签交换网关/d2/gw2作为TCP客户端与/d2/sw2建立连接。 交换节点/d1/sw1与交换节点/d2/sw2也建立TCP连接,即可以是/d1/sw1作为TCP服务 端,也可以/d2/sw2作为TCP服务端。
本实施例的业务描述具体如下:
本实施例描述的业务与实施例6类似,区别点在于本实施例引入了域的概念。多业务标签交换网关/d1/gw1、交换节点/d1/sw1、应用程序在域1中,多业务标签交换网关 /d2/gw2、交换节点/d2/sw2、日志服务组件在域2中。域1中的应用程序调用域2中的 日志服务,与实施例6描述不同的是,交换节点/d2/sw2向交换节点/d1/sw1发布路由通 告消息或者服务发布消息时,会将自身的名字路由信息和服务信息进行聚合,即发布的 是“/d2/*”这样的路由或者服务。域1中的交换节点存储的路由信息和服务信息就对应 有“/d2/*”这样的记录。当应用程序要调用/d2/my_log这样的服务时,向多业务标签网 关/d1/gw1发送服务查询消息,网关会匹配“/d2/*”这样的路由,将查询消息转发出去。 当应用程序发送的服务调用请求消息,目的交换节点是/d2/gw2时,网关也会匹配“/d2/*” 这样的路由,将请求消息转发出去。
假设域1和域2中交换节点和网关互联并路由通告完成,然后交换节点/d1/sw1与交 换节点/d2/sw2互联,与其他交换节点不同的是,交换节点/d1/sw1与交换节点/d2/sw2具 备了路由聚合能力,两者互联后聚合路由通告流程如下:
步骤1:交换节点/d1/sw1和交换节点/d2/sw2建立连接;
步骤2:交换节点/d1/sw1向交换节点/d2/sw2发送节点注册请求报文,其中包含节点的 名字标识“/d1/sw1”;
步骤3:交换节点/d2/sw2解析节点注册请求报文,取节点注册请求报文中节点的名字标 识“/d1/sw1”与自身标识“/d2/sw2”比较,根据配置确定两者属于不同的域。交换节点 /d2/sw2生成节点注册响应报文,其中包含节点的名字标识“/d2/sw2”;交换节点/d2/sw2 生成域1的聚合路由“/d1/*”,该路由出接口指向交换节点/d1/sw1;
步骤4:交换节点/d1/sw1解析节点注册响应报文,取节点注册响应报文中的名字标识 “/d2/sw2”与自身的名字标识“/d1/sw1”比较,根据配置确定两者属于不同的域;:交换节点/d1/sw1根据名字标识“/d2/sw2”生成域2的聚合路由“/d2/*”,该路由出接口指 向交换节点/d2/sw2;
步骤5:交换节点/d1/sw1将包含聚合路由“/d2/*”的路由信息通过路由通告消息发送给 域内的其他交换节点(多业务标签交换网关)/d1/gw1;
步骤6:多业务标签交换网关gw1解析路由通告消息,根据路由通告消息更新自身的名 字路由表,包括聚合路由“/d2/*”。
上述流程之后,域1中交换节点和多业务标签交换网关的名字路由表具体如表32、33所示:
表32
表33
在跨域的聚合路由扩散之后,跨域的服务申明消息也需要扩散,其流程如下:
步骤1:日志服务组件向多业务标签交换网关/d2/gw2发送服务注册消息,其中包含 服务my_log的名字标识“my_log”和服务类型;
步骤2:多业务标签交换网关/d2/gw2接收并解析服务注册消息,给服务my_log分配端口号2000,并生成服务注册响应消息发送给日志服务组件;
步骤3:多业务标签交换网关/d2/gw2根据配置将服务“my_log”的信息封装到服务发布消息中发布给交换节点/d2/sw2,服务发布消息中包括服务的名字标识“/d2/my_log”、服务类型、所属的交换节点(多业务标签交换网关)的名字标识“/d2/gw2”和端口号2000 等服务信息;
步骤4:交换节点/d2/sw2解析服务发布消息,将服务发布消息中的服务信息存储到 服务列表中;
步骤5:交换节点/d2/sw2根据配置确定向域外交换节点/d1/sw1发布服务发布消息, 此服务消息是一个聚合的消息,聚合的服务的名字标识为“/d2/*”,服务的位置为 “/d2/sw2”;
步骤6:交换节点/d1/sw1解析服务发布消息,将服务发布消息中的服务信息存储到 服务列表中,并且将新增的服务信息发布给域内的其他节点(比如多业务标签交换网关/d1/gw1);
步骤7:多业务标签交换网关/d1/gw1解析服务发布消息,存储服务信息到服务列表 中。
上述流程之后,域2和域1中交换节点和多业务标签交换网关的服务列表的内容具体如 表34-37所示:
表34
表35
表36
表37
因为本域的交换节点存储的跨域服务信息是聚合过的,为了能够得到跨域某服务具 体的类型和位置,一般需要进行跨域的服务信息查询,过程如下:
步骤1:应用程序向多业务标签交换网关/d1/gw1发送服务查询消息,服务查询消息 中包含查询的服务的名字标识“/d2/my_log”;
步骤2:多业务标签交换网关/d1/gw1解析服务查询消息,使用服务的名字标识 “/d2/my_log”来查询服务列表,匹配获得聚合服务的位置是“/d2/sw2”,则将应用程序 的端口号“100”封装到查询服务查询消息的源端口,并将自身的名字标识“/d1/gw1” 填入服务查询消息的源交换节点的名字标识,并且将聚合服务位置“/d2/sw2”填入查询 报文的目的交换节点标识;
步骤3:多业务标签交换网关/d1/gw1根据服务查询消息的目的交换节点“/d2/sw2” 查询名字路由表,确定将该查询消息转发给交换节点/d1/sw1;
步骤4:交换节点/d1/sw1根据服务查询消息的目的交换节点“/d2/sw2”查询名字路 由表,确定将该服务查询消息转发给交换节点/d2/sw2;
步骤5:交换节点/d2/sw2解析服务查询消息,发现目的交换节点“/d2/sw2”为自身, 则取服务查询消息中的服务的名字标识“/d2/my_log”,用服务的名字标识查询服务列表, 获得该服务对应的服务类型和位置,并取服务查询消息中的源交换节点标识和源端口号, 根据源交换节点标识和源端口号生成服务查询响应消息,查询响应消息的目的交换节点 标识是“/d1/gw1”,目的端口号是100;
步骤6:交换节点/d2/sw2处理查询响应消息,根据报文中的目的交换节点的名字标 识“/d1/gw1”查询名字路由表,命中聚合路由“/d1/*”,根据聚合路由将查询响应消息发给交换节点/d1/sw1;
步骤7:交换节点/d1/sw1解析服务查询响应消息,根据消息中的目的交换节点的名 字标识“/d1/gw1”查询名字路由表,根据路由将服务查询响应消息发送给多业务标签交换网关/d1/gw1;
步骤8:多业务标签交换网关/d1/gw1解析服务查询响应消息,确定该服务查询响应 消息的目的交换节点“/d1/gw1”为自身,存储服务查询响应消息中的服务名称、服务类型、位置等信息;
步骤9:多业务标签交换网关/d1/gw1根据服务查询响应消息中的目的端口号100找 到对应的应用程序,将服务查询响应消息转发给应用程序。
最后跨域的服务调用的流程才能正常执行,具体步骤如下:
步骤1:应用程序根据业务逻辑确定需要调用“/d2/my_log”服务,则根据获得的服务类型将调用参数封装进服务调用请求消息中,并将服务所属的交换节点的名字标识 “/d2/gw2”封装到服务调用请求消息的目的交换节点,将端口号2000封装到服务调用 请求消息的目的端口号,最后将服务调用请求消息发送给多业务标签交换网关/d1/gw1;
步骤2:多业务标签交换网关/d1/gw1解析服务调用请求消息,根据服务调用请求消 息中的目的交换节点的名字标识“/d2/gw2”查找名字路由表,命中聚合路由“/d2/*”,根据聚合路由将服务调用请求消息转发给/d1/sw1;
步骤3:交换节点/d1/sw1根据服务调用请求消息中的目的交换节点的名字标识“/d2/gw2”查找名字路由表,命中聚合路由“/d2/*”,根据聚合路由将服务调用请求消 息转发给交换节点/d2/sw2;
步骤4:交换节点/d2/sw2根据服务调用请求消息中的目的交换节点“/d2/gw2”查询 名字路由表,名字路由“/d2/gw2”,根据路由将消息转发给多业务标签交换网关/d2/gw2;
步骤5:多业务标签交换网关/d2/gw2解析服务调用请求消息中的目的交换节点“/d2/gw2”,确定服务调用请求消息目的交换节点为自身,则根据目的端口号2000找到 对应的日志服务组件,将服务调用请求消息转发给日志服务组件;
步骤6:日志服务组件解析服务调用请求消息,根据服务调用请求消息中的内容进行相应处理,完成一次“my_log”服务调用请求。
实施例8
本实施例描述交换节点之间的连接形成环路时,路由跳数使名字路由避免环路的方 法和流程。
本实施例的组网描述具体如下:
如图9所示,交换节点sw1是运行在IP地址为192.168.1.1服务器上的一个后台TCP服务进程;采集交换节点sw2是运行在IP地址为192.168.1.2服务器上的一个后 台服务进程,同时也作为TCP客户端与交换节点sw1建立TCP连接;处理交换节点 sw3是运行在IP地址为192.168.1.3服务器上的一个后台服务进程,同时也作为TCP 客户端与交换节点sw1建立TCP连接。另外,采集交换节点sw2还作为TCP客户端 与处理交换节点sw3建立TCP连接。
本实施例的业务描述具体如下:
交换节点sw1、sw2、sw3互相连接形成环路,相互之间即可以直接到达,也可以 通过另外一个交换节点再到达。为了避免数据报文转发时出现环路浪费资源,交换节 点在发送路由通告消息时需要把路由对应的跳数也带上,而对端交换节点解析路由通 告消息时也需要比较路由通告中跳数和当前名字路由表中的跳数,取跳数少的作为本 交换节点的路由。节点注册消息生成的路由跳数为1,路由通告消息生成的路由跳数为 消息中跳数加1。
上述三个交换节点的名字路由表按照上述规则处理后,生成的名字路由表具体如表38-40所示:
表38
表39
表40
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种报文转发方法,其特征在于,包括以下步骤:
交换节点与数据节点建立唯一连接,并为数据节点分配端口;所述唯一连接表示数据节点只能与一个交换节点建立连接;
交换节点向其相邻的交换节点发送节点注册消息;所述节点注册消息包括交换节点自身的名字标识;
交换节点接收并解析相邻的交换节点反馈的节点注册响应消息,在自身的名字路由表中增加相应的路由记录;所述名字路由表包括名字标识和名字标识对应的出接口;
交换节点通过路由通告消息接收相邻交换节点发送的名字路由表,并结合接收的名字路由表更新自身的名字路由表。
2.根据权利要求1所述的报文转发方法,其特征在于,包括以下步骤:
源交换节点接收源数据节点发送的数据报文,所述数据报文包括目的交换节点的名字标识和目的端口号;
源交换节点根据目的交换节点的名字标识查找名字路由表,根据查找结果发送给下一个交换节点;
目的交换节点接收并解析上一交换节点发送的数据报文;目的交换节点根据数据报文中的目的端口号将数据报文发送送给相应的目的数据节点。
3.根据权利要求2所述的报文转发方法,其特征在于,包括以下步骤:
交换节点为名字路由表中的每个路由记录分配一个标签,在路由通告消息中也增加标签信息;由于每个路由记录对应一个交换节点名字标识,所以每个标签也即对应一个交换节点;
交换节点用标签作为键值,根据名字路由表生成标签路由表;所述标签路由表包括标签和标签对应的路由信息;
源交换节点接收和解析源数据节点发送的节点查询消息;
源交换节点根据源数据节点发送的节点查询消息向源数据节点反馈目的交换节点的名字标识对应的标签;
源交换节点接收并解析源数据节点发送的包含标签的报文,根据报文中的标签查找标签路由表获得路由信息,根据路由信息完成报文的转发。
4.根据权利要求3所述的报文转发方法,其特征在于,包括以下步骤:
所述报文还包括源交换节点名字标识以及源端口号;
源数据节点接收源数据节点发送的由目的数据节点生成的响应报文。
5.根据权利要求3所述的报文转发方法,其特征在于,所述报文包括源标签入栈标记和源标签栈,所述源交换节点接收上游交换节点发送的报文,若所述报文中携带了源标签入栈标记,则将上游交换节点所对应的标签压入报文的源标签栈。
6.根据权利要求5所述的报文转发方法,其特征在于,
所述源交换节点建立相邻名字路由表,所述相邻名字路由表包括相邻交换节点的名字标识、相邻交换节点拥有的名字路由表中的标签和标签对应的名字标识;
当需要根据“源标签入栈标记”修改报文时,源交换节点取源标签栈的栈顶标签和相邻名字路由表中的标签比较,同时取上游交换节点的名字标识和相邻交换节点的名字标识比较,找到相应的名字标识,使用找到的名字标识查找自身的名字路由表,找到对应的标签,将源标签栈顶的标签用找到的标签替代。
7.根据权利要求3所述的一种报文转发方法,其特征在于,源数据节点和目的数据节点位于不同的域,源数据节点向源交换节点查询目的交换节点的标签时,查询在源交换节点不能完成,由源交换节点根据目的交换节点的名字标识找到对应的域外节点,将查询消息发送给域外节点,由域外节点返回目的交换节点的标签。
源数据节点封装具有多层标签的报文,最内层标签为目的交换节点的标签,外层标签为对应的域外节点的标签;报文经过的域的个数与封装的标签层数对应。
8.根据权利要求3所述的一种报文转发方法,其特征在于,交换节点发布的路由通告消息和其自身的名字路由表中包括路由跳数;
交换节点接收路由通告消息,如果其自身的名字路由表中的路由跳数大于等于路由通告消息中的跳数加1,则使用路由通告消息中的路由替代名字路由中的路由。
9.根据权利要求5或6所述的报文转发方法,其特征在于,
目的数据节点将报文中的目的标签栈的内容和源标签栈的内容相互置换,将报文中目的端口和源端口的内容互相置换生成所述报文的响应报文。
10.根据权利要求6所述的报文转发方法,其特征在于,所述交换节点还包括多业务标签交换网关,所述多业务标签交换网关具备服务注册、服务调用、服务查询和服务发布的功能;
多业务标签交换网关通过服务发布消息把服务列表的服务信息发送给相邻的交换节点,所述服务发布消息包括服务的名称标识、服务类型、包含服务所在的多业务标签交换网关的名字标识和端口号的位置。
11.根据权利要求10所述的报文转发方法,其特征在于,所述多业务标签交换网关接收并解析查询组件发送的服务查询请求消息,查询服务列表获得服务的类型、位置,根据位置中服务所在的多业务标签交换网关名字标识查找名字路由表获得其对应的标签,将获得服务的类型、位置和标签封装到服务查询响应消息中发送给查询的组件。
12.根据权利要求11所述的报文转发方法,其特征在于,所述多个多业务标签交换网关位于多个不同的域,每个域中的交换节点的名字标识的前缀相同;只与域内其他交换节点连接的交换节点为域内节点,与其他域的交换节点连接的交换节点为域间节点;
域间节点将其名字路由表中多条路由按照前缀聚合成一条聚合路由对外发布;
域间节点接收其他域的域间节点发布过来的路由通告信息,将域外路由发布给域内的其他交换节点。
13.一种报文转发装置,其特征在于,所述报文转发装置该报文转发设备被作为交换节点使用,所述报文转发装置包括:
接收单元,用于接收其他交换节点发送的数据报文或数据节点发送的数据报文;所述数据节点为只依赖交换节点收发报文的节点;所述数据节点只与一个交换节点连接;
所述数据节点包括源数据节点和目的数据节点,所述源数据节点为数据报文的初始发送方,所述目的数据节点为数据报文的最终接收方;
与源数据节点连接的交换节点为源交换节点,与目的数据节点连接的交换节点为目的交换节点;
源交换节点包括源端口,所述源端口为源数据节点向源交换节点注册获得的报文接收端口;所述目的交换节点包括目的端口,所述目的端口为目的数据节点向目的交换节点注册获得的报文接收端口;
发送模块,用于将从其他交换节点或数据节点处接收的消息处理后进行转发;
所述报文转发装置通过如权利要求1-12任一所述报文转发方法对报文进行转发。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010195713.3A CN111371686B (zh) | 2020-03-19 | 2020-03-19 | 一种报文转发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010195713.3A CN111371686B (zh) | 2020-03-19 | 2020-03-19 | 一种报文转发方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111371686A true CN111371686A (zh) | 2020-07-03 |
CN111371686B CN111371686B (zh) | 2023-01-24 |
Family
ID=71212570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010195713.3A Active CN111371686B (zh) | 2020-03-19 | 2020-03-19 | 一种报文转发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111371686B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112165505A (zh) * | 2020-08-21 | 2021-01-01 | 杭州安恒信息技术股份有限公司 | 去中心化的数据处理方法、电子装置和存储介质 |
CN114448865A (zh) * | 2021-12-23 | 2022-05-06 | 东莞市李群自动化技术有限公司 | 业务报文的处理方法、系统、设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1816044A (zh) * | 2005-02-06 | 2006-08-09 | 华为技术有限公司 | 绑定工作标签交换路径和保护标签交换路径的方法 |
CN1968178A (zh) * | 2006-11-02 | 2007-05-23 | 杭州华为三康技术有限公司 | Lsp的建立方法 |
CN101674224A (zh) * | 2008-09-08 | 2010-03-17 | 华为技术有限公司 | 生成转发表项信息的方法、标签交换路由器及系统 |
CN103269315A (zh) * | 2013-04-27 | 2013-08-28 | 华为技术有限公司 | 标签分配方法、装置、系统和网络设备 |
CN103546375A (zh) * | 2012-07-11 | 2014-01-29 | 中兴通讯股份有限公司 | 内容路由方法及装置 |
CN104333510A (zh) * | 2014-11-24 | 2015-02-04 | 重庆邮电大学 | 命名数据网络中的标签交换转发策略 |
CN105939262A (zh) * | 2016-05-09 | 2016-09-14 | 杭州迪普科技有限公司 | 标签分配的方法及装置 |
CN106850435A (zh) * | 2016-12-16 | 2017-06-13 | 北京格林伟迪科技股份有限公司 | 一种跨域端到端标签交换路径建立方法和系统 |
US20180351864A1 (en) * | 2017-05-31 | 2018-12-06 | Juniper Networks, Inc. | Advertising selected fabric paths for service routes in virtual nodes |
CN109347740A (zh) * | 2018-11-19 | 2019-02-15 | 新华三技术有限公司 | 报文转发方法和装置 |
WO2019205836A1 (zh) * | 2018-04-28 | 2019-10-31 | 中兴通讯股份有限公司 | 一种数据报文转发的方法及装置 |
-
2020
- 2020-03-19 CN CN202010195713.3A patent/CN111371686B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1816044A (zh) * | 2005-02-06 | 2006-08-09 | 华为技术有限公司 | 绑定工作标签交换路径和保护标签交换路径的方法 |
CN1968178A (zh) * | 2006-11-02 | 2007-05-23 | 杭州华为三康技术有限公司 | Lsp的建立方法 |
CN101674224A (zh) * | 2008-09-08 | 2010-03-17 | 华为技术有限公司 | 生成转发表项信息的方法、标签交换路由器及系统 |
CN103546375A (zh) * | 2012-07-11 | 2014-01-29 | 中兴通讯股份有限公司 | 内容路由方法及装置 |
CN103269315A (zh) * | 2013-04-27 | 2013-08-28 | 华为技术有限公司 | 标签分配方法、装置、系统和网络设备 |
CN104333510A (zh) * | 2014-11-24 | 2015-02-04 | 重庆邮电大学 | 命名数据网络中的标签交换转发策略 |
CN105939262A (zh) * | 2016-05-09 | 2016-09-14 | 杭州迪普科技有限公司 | 标签分配的方法及装置 |
CN106850435A (zh) * | 2016-12-16 | 2017-06-13 | 北京格林伟迪科技股份有限公司 | 一种跨域端到端标签交换路径建立方法和系统 |
US20180351864A1 (en) * | 2017-05-31 | 2018-12-06 | Juniper Networks, Inc. | Advertising selected fabric paths for service routes in virtual nodes |
WO2019205836A1 (zh) * | 2018-04-28 | 2019-10-31 | 中兴通讯股份有限公司 | 一种数据报文转发的方法及装置 |
CN109347740A (zh) * | 2018-11-19 | 2019-02-15 | 新华三技术有限公司 | 报文转发方法和装置 |
Non-Patent Citations (2)
Title |
---|
LUO JIANGTAO等: ""Name Label Switching Paradigm for Named Data Networking"", 《IEEE》 * |
毛健彪等: ""基于标签的多协议承载机制研究"", 《小型微型计算机系统》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112165505A (zh) * | 2020-08-21 | 2021-01-01 | 杭州安恒信息技术股份有限公司 | 去中心化的数据处理方法、电子装置和存储介质 |
CN112165505B (zh) * | 2020-08-21 | 2022-07-19 | 杭州安恒信息技术股份有限公司 | 去中心化的数据处理方法、电子装置和存储介质 |
CN114448865A (zh) * | 2021-12-23 | 2022-05-06 | 东莞市李群自动化技术有限公司 | 业务报文的处理方法、系统、设备及存储介质 |
CN114448865B (zh) * | 2021-12-23 | 2024-01-02 | 东莞市李群自动化技术有限公司 | 业务报文的处理方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111371686B (zh) | 2023-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9019963B2 (en) | Method and apparatus for direct frame switching using frame contained destination information | |
EP2600573B1 (en) | Method for transmitting addresses correspondence relationship in second-layer protocol using link status routing | |
US5361256A (en) | Inter-domain multicast routing | |
US7660265B2 (en) | Network packet inspection and forwarding | |
US7260648B2 (en) | Extension of address resolution protocol (ARP) for internet protocol (IP) virtual networks | |
US5856974A (en) | Internetwork address mapping gateway | |
US20050053006A1 (en) | Obtaining path information related to a bridged network | |
US10554555B2 (en) | Hash-based overlay routing architecture for information centric networks | |
CN1992666A (zh) | 虚拟专用网络发布-订制多播服务 | |
US7801151B2 (en) | Method and apparatus for forwarding service in a data communication device | |
US20080317032A1 (en) | Methods for using a translation/instruction system to redirect a multiprotocol label switching (mpls) packet | |
CN111371686B (zh) | 一种报文转发方法及装置 | |
US8615015B1 (en) | Apparatus, systems and methods for aggregate routes within a communications network | |
CN112202670B (zh) | 一种SRv6段路由转发方法及装置 | |
CN108964940A (zh) | 消息发送方法及装置、存储介质 | |
CN113556413B (zh) | 一种报文处理方法及装置 | |
CN107547346B (zh) | 一种报文传输方法和装置 | |
CN107317752A (zh) | 一种转发数据报文的方法及装置 | |
CN107580079A (zh) | 一种报文传输方法和装置 | |
CN113271255A (zh) | 一种网络地址转换回环的方法、装置 | |
CN102474451B (zh) | 连接内层和外层mpls标签 | |
CN111865805B (zh) | 一种组播gre报文处理方法及系统 | |
GB2514634A (en) | Dynamic multicast state aggregation in transport networks | |
CN109995637B (zh) | S-vxlan构建方法、数据转发方法及系统 | |
CN115065602B (zh) | 分布式系统网元控制方法及其装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |