CN105791177B - 在Openflow交换机中实现支持多种工业网络传输协议的方法 - Google Patents
在Openflow交换机中实现支持多种工业网络传输协议的方法 Download PDFInfo
- Publication number
- CN105791177B CN105791177B CN201410825459.5A CN201410825459A CN105791177B CN 105791177 B CN105791177 B CN 105791177B CN 201410825459 A CN201410825459 A CN 201410825459A CN 105791177 B CN105791177 B CN 105791177B
- Authority
- CN
- China
- Prior art keywords
- frame
- vlan
- byte
- ethernet
- powerlink
- 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.)
- Active
Links
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种在Openflow交换机中实现支持多种工业网络传输协议的方法。传输协议的类型包括:POWERLINK、EtherCat、PROFINET和IEC61850等。本发明首先给出了OPENFLOW的技术架构,在此基础上实现在OPENFLOW流表中对不同传输协议的支持,从而可以满足异构网络情况下的传输需求。
Description
技术领域
本发明涉及工业异构网络传输领域,具体地说是一种在Openflow交换机中实现支持多种工业网络传输协议的方法。
背景技术
OpenFlow使传统的二层和三层交换机具备了细粒度流转发能力,即传统的基于MAC的网包转发,基于IP的路由转发,被拓展到了基于多域网包包头描述的流转发。同时,传统的控制层面从转发设备中剥离出来,所有转发行为的决策从交换机自身“迁移”到了某个集中控制器上。
随着OpenFlow的部署和应用,支持OF的交换设备的性能瓶颈相继出现。于是有了基于NetFPGA的实现,提供多千兆的OF交换。工业界如HP,Juniper,NEC等也相继提供了支持OF协议的交换机设备。
目前高速实时现场总线种类繁多,很多厂家都在推广自己的总线协议,这些协议从性能上可分为两类:高实时总线和低实时总线。高实时性的总线:POWERLINK,EtherCat,MECHATROLINK。POWERLINK是一个可以在普通以太网上实现的方案,无需ASIC芯片,用户可以在各种平台上实现POWERLINK,如FPGA、ARM、x86CPU等,只要有以太网的地方,就可以实现POWERLINK。
POWERLINK公开了所有的源码,任何人都可以免费下载和使用(就像Linux)。POWERLINK完全丢掉了TCP/IP,定义了一个精简的、实时性极高的数据链路层协议,同时定义了CANopen为应用层协议。这样用户在实现了POWERLINK的同时,也实现了CANopen。
EtherCAT(以太网控制自动化技术)是一种用于确定性以太网的高性能工业通信协议,它扩展了IEEE 802.3以太网标准,使得数据传输中具有可预测性定时及高精度同步等特点。这个开放性标准作为IEC 61158的组成部分,常用于机械设计及运动控制等应用中。EtherCAT在标准的以太网电缆上应用主/从式的构架。EtherCAT技术实现确定性网络的另一个因素是主控制器通过分布式时钟同步从设备的能力。从设备中必须有一台输出主时钟用于与其它从设备时钟进行同步。在NI的设计实现中,第一台从设备包含了主时钟,主控制器发送的特殊同步报文在每个扫描周期中读取主时钟。该报文更新并调整所有其它从设备时钟,以消除时钟偏移。精确同步非常重要,尤其是在大范围分布式处理应用中要求同步执行时,如运动轴间的协调运动。NI采用时间戳来衡量发送与返回帧之间的时差。利用这种方式,可以计算节点间的传输延时,通过准确调节分布式时钟便可实现精确同步(小于1μs)。
PROFINET是一个整体的解决方案,它使用TCP/IP和IT标准,符合基于工业以太网的实时自动化体系,覆盖了自动化技术的所有要求;能够实现与现场总线的无缝集成。更重要的是PROFINET所有的事情都在一条电缆中完成,IT服务和TCP/IP开放性没有任何限制;它可以满足用于所有客户需要的统一的通信;从高性能到等时同步可以伸缩的实时通信。现在已经成为现场总线国际标准IEC-61158的第10类型。
IEC61850标准是电力系统自动化领域唯一的全球通用标准。它通过标准的实现,实现了智能变电站的工程运作标准化。使得智能变电站的工程实施变得规范、统一和透明。不论是哪个系统集成商建立的智能变电站工程都可以通过SCD(系统配置)文件了解整个变电站的结构和布局,对于智能化变电站发展具有不可替代的作用。
发明内容
针对现有技术中存在的上述不足之处,本发明要解决的技术问题是提供一种在Openflow交换机中实现支持多种工业网络传输协议的方法。
本发明为实现上述目的所采用的技术方案是:一种在Openflow交换机中实现支持多种工业网络传输协议的方法,包括以下步骤:
将基于标准以太网帧格式的POWERLINK帧嵌入到流表中;
通过划分VLAN的方式实现POWERLINK中主站隔离,使每个VLAN中包括一个主站和若干个从站;
当边缘交换机收到一个帧后,通过识别以太网帧中的第13和14个字节的帧类型字段,判断帧类型,对不同类型的帧进行不同处理,从而实现不同帧的转发。
所述通过划分VLAN的方式实现POWERLINK中主站隔离,具体为:将每一个POWERLINK子网分配一个特定的VLAN,通过流表中的VLAN ID字段标识,通过指定每一个边缘交换机入口处所属的VLAN,为每一个边缘交换机端口所连接的POWERLINK子网分配所需的VLAN。
如果太网帧中的第13和14个字节的帧类型字段为0x88ab,则收到的帧为POWERLINK帧;
根据边缘交换机的接口判断帧所属的VLAN,并以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernet destination address和Ethernet source address域的标识进行转发。
如果太网帧中的第13和14个字节的帧类型字段为0x88a4,则收到的帧为EtherCat帧;
根据边缘交换机的接口判断帧所属的VLAN,并以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernet destination address和Ethernet source address域的标识进行转发。
如果太网帧中的第13和14个字节的帧类型字段为0x8100,则收到的帧为PROFINET帧或802.1Q帧;
查看帧的第15个字节的后四位和第16个字节,判断该帧所属的VLAN ID,并通过查找帧的第15个字节的前三位判断帧的优先级;
以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernet destination address和Ethernet source address域的标识进行转发。
本发明具有以下优点及有益效果:
1.本发明首先给出了OPENFLOW的技术架构和SDN的网络交换模式,在此基础上实现在OPENFLOW流表中对IEEE 802.1Q协议的支持。
2.本发明提出了在OPENFLOW技术架构下支持POWERLINK、EtherCat、PROFINET和IEC61850等不同工业应用层协议的方法,能够满足工业异构网络的传输需求。
3.本发明通过VLAN的划分融合了传统控制网络中一主多从的结构模式,可以在每个VLAN中单独实现一主多从结构,而整个网络则可成为多主多从的结构模式,为不同的网络应用提供了方便。
附图说明
图1为本发明中的OPENFLOW交换机的结构;
图2为本发明中的基于SDN的工业异构网络架构;
图3为本发明中的OPENFLOW交换机流表项结构;
图4为本发明中的OPENFLOW交换机流表项包头域;
图5为POWERLINK数据帧的结构,其中SID为服务类型,DA为目标站地址,SA为源站地址;
图6为POWERLINK帧在流表中的对应关系示意图;
图7为802.1q的帧格式示意图。
具体实施方式
下面结合附图及实施例对本发明做进一步的详细说明。
由于POWERLINK网络是采用主-从站的工作方式,每个网络中只有一个活动的主站。因此为了使SDN回程网能够支持多个POWERLINK子网间的通信,通过划分VLAN的方式实现POWERLINK中主站隔离。即将每一个POWERLINK子网分配一个特定的VLAN,通过流表中的VLAN ID字段标识。这样通过划分主站所属的VLAN,就可以保证每个VLAN中的主站唯一,从而避免主站冲突,与POWERLINK的特点一致。通过指定每一个边缘交换机入口处所属的VLAN,就可以为每一个边缘交换机端口所连接的POWERLINK子网分配所需的VLAN。
本发明通过对OPENFLOW交换机流表包头域(head fields)的不同字节的定义和区分,实现对多种交换协议的支持。
流表是交换机进行转发策略控制的核心数据结构。交换芯片通过查找流表表项来决策,对进入交换机的网络流量采取合适的行为。每个表项包括三个域,包头域(headerfield),计数器(counters),行动(actions)。
包头域包括12个域,包括:进入接口,Ethernet源地址、目标地址、类型,VLAN ID,VLAN优先级,IP源地址、目标地址、协议、IP ToS位,TCP/UDP目标端口、源端口。每一个域包括一个确定值或者所有值(any),更准确的匹配可以通过掩码实现。
EtherType是以太帧里的一个字段,用来指明应用于帧数据字段的协议。根据IEEE802.3,Length/EtherType字段是两个八字节的字段,含义两者取一,这取决于其数值。在量化评估中,字段中的第一个八位字节是最重要的。而当字段值大于等于十进制值1536(即十六进制为0600)时,EtherType字段表示为MAC客户机协议(EtherType解释)的种类。
1.与POWERLINK网络兼容性的实现:
POWERLINK包括五种数据帧:SoC、Preq、Pres、SoA、AsyncData。数据桢嵌在标准的以太网数据桢的数据段中,因此具有标准的以太网数据帧的帧头和帧尾。从0至13字节是标准以太网的帧头,第14字节到第n字节为POWERLINK数据帧信息。
为了支持POWERLINK数据,需要将基于标准以太网帧格式的POWERLINK帧嵌入到流表中。由于POWERLINK网络是采用主-从站的工作方式,每个网络中只有一个活动的主站。因此为了使SDN回程网能够支持多个POWERLINK子网间的通信,通过划分VLAN的方式实现POWERLINK中主站隔离。即将每一个POWERLINK子网分配一个特定的VLAN,通过流表中的VLAN ID字段标识。这样通过划分主站所属的VLAN,就可以保证每个VLAN中的主站唯一,从而避免主站冲突,与POWERLINK的特点一致。通过指定每一个边缘交换机入口处所属的VLAN,就可以为每一个边缘交换机端口所连接的POWERLINK子网分配所需的VLAN。
边缘交换机对在POWERLINK子网中收到的POWERLINK帧的处理过程如下:
首先,当收到一个帧以后,通过识别以太网帧中的第13和14个字节的帧类型字段,确定是否为POWERLINK帧,其中POWERLINK帧类型字段为0x88ab;
然后,如果是POWERLINK帧,则根据交换机的接口判断帧所属的VLAN,并以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernetdestination address和Ethernet source address域的标识进行转发。
2.与EtherCat网络兼容性的实现:
EtherCat的帧格式也是基于标准以太网的结构,因此与POWERLINK类似,为了支持EtherCat数据,需要将基于标准以太网帧格式的EtherCat帧融入到流表中。由于EtherCat网络是采用主-从站的工作方式,每个网络中只有一个活动的主站。因此为了使SDN回程网能够支持多个EtherCat子网间的通信,通过划分VLAN的方式实现EtherCat中主站隔离。通过指定每一个边缘交换机入口处所属的VLAN,为每一个边缘交换机端口所连接的EtherCat子网分配所需的VLAN。
边缘交换机对在EtherCat子网中收到的EtherCat帧的处理过程如下:
首先,当收到一个帧以后,通过识别以太网帧中的第13和14个字节的帧类型字段,确定是否为EtherCat帧,其中EtherCat帧类型字段为0x88a4;然后,如果是EtherCat帧,则根据交换机的接口判断帧所属的VLAN,并以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernet destination address和Ethernet sourceaddress域的标识进行转发。
3.与PROFINET网络兼容性的实现:
PROFINET的物理层采用了快速以太网的物理层,数据链路层采用的是基于IEEE802.1q和IEEE802.1p的标准。网络层和传输层采用了IP/TCP/UDP,OSI中的第5层、第6层未用,根据分布式系统中PROFINET控制对象的不同,应用层分为无连接的和有连接的两种。
802.1Q帧就是在以太网帧的源MAC地址(SA)之后加了4个字节的TAG,802.1Q TAG主要包括了TPID和TCI两个字段。
TPID(Tag Protocol Identifier,标签协议标识符)用于标识此帧作为一个标记的帧,即表明这是一个加了802.1Q标签的帧。博达交换机缺省采用协议规定的TPID值(0x8100),当帧中的EtherType也为0x8100时,该帧传送标签IEEE802.1Q/802.1P。某些厂商的设备将QinQ(802.1Q in 802.1Q)报文外层TAG的TPID值设置为0x9100或0x9200。为了和这些设备兼容,交换机必须提供基于端口的QinQ报文TPID值可调功能。
TCI(Tag Control Information,标签控制信息)包括用户优先级(UserPriority)、规范格式指示器(Canonical Format Indicator)和VLAN ID。
支持IEEE 802.1Q的交换端口可被配置来传输标签帧或无标签帧。一个包含VLAN信息的标签字段可以插入到以太网帧中。如果端口有支持IEEE 802.1Q的设备(如另一个交换机)相连,那么这些标签帧可以在交换机之间传送VLAN成员信息,这样VLAN就可以跨越多台交换机。
边缘交换机对在PROFINET子网中收到的PROFINET帧的处理过程如下:
首先,当收到一个帧以后,通过识别以太网帧中的第13和14个字节的帧类型字段,确定是否为802.1Q帧,其中802.1Q帧类型字段为0x8100;
然后,如果是802.1Q帧,则查看帧的第15个字节的后四位和第16个字节,判断该帧所属的VLAN ID,并通过查找帧的第15个字节的前三位判断帧的优先级。最后,以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernetdestination address和Ethernet source address域的标识进行转发。
4.与IEC61850网络兼容性的实现:
为了能够实现可靠性和实时性,IEC61850标准中给出了一个GSE模型,它是一个通用的变电站事件模型,在该模型下,在输入和输出数据值时,能够保证全系统范围内的高速性和可靠性。
GSE共分为两种,其一是是变电站事件GOOSE(Generic Object OrientedSubstation Event),其二是通用变电站状态时间GSSE(Generic Substation StateEvent),两者类属于控制类和报文结构。其中前者是面向通用对象的,用来交换公共数据,这些数据主要是由数据集组织的,而后者则是用来传输状态变位信息(双比特)。在抽象通信服务模型控制块上,如果只考虑二者的属性和服务,那么GOOSE和GSSE基本上是一样的,相差不大。只是在传输的报文内容和实现的机制上有区别。
IEC61850在数据链路层,采用IEEE802.1Q、IEEE802.1P协议。因此,在交换机制上IEC61850与PROFINET一致。
首先,当收到一个帧以后,通过识别以太网帧中的第13和14个字节的帧类型字段,确定是否为802.1Q帧,其中802.1Q帧类型字段为0x8100;
然后,如果是802.1Q帧,则查看帧的第15个字节的后四位和第16个字节,判断该帧所属的VLAN ID,并通过查找帧的第15个字节的前三位判断帧的优先级。最后,以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernetdestination address和Ethernet source address域的标识进行转发。
Claims (2)
1.一种在Openflow交换机中实现支持多种工业网络传输协议的方法,其特征在于,包括以下步骤:
将基于标准以太网帧格式的POWERLINK帧嵌入到流表中;
通过划分VLAN的方式实现POWERLINK中主站隔离,使每个VLAN中包括一个主站和若干个从站;
当边缘交换机收到一个帧后,通过识别以太网帧中的第13和14个字节的帧类型字段,判断帧类型,对不同类型的帧进行不同处理,从而实现不同帧的转发;
如果太网帧中的第13和14个字节的帧类型字段为0x88ab,则收到的帧为POWERLINK帧;
根据边缘交换机的接口判断帧所属的VLAN,并以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernet destination address和Ethernetsource address域的标识进行转发;
如果太网帧中的第13和14个字节的帧类型字段为0x88a4,则收到的帧为EtherCat帧;
根据边缘交换机的接口判断帧所属的VLAN,并以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernet destination address和Ethernetsource address域的标识进行转发;
如果太网帧中的第13和14个字节的帧类型字段为0x8100,则收到的帧为PROFINET帧或802.1Q帧;
查看帧的第15个字节的后四位和第16个字节,判断该帧所属的VLAN ID,并通过查找帧的第15个字节的前三位判断帧的优先级;
以帧的第1到6字节为目的地址,7到12字节为源地址,将其提取后分别按照流表项中的Ethernet destination address和Ethernet source address域的标识进行转发。
2.根据权利要求1所述的在Openflow交换机中实现支持多种工业网络传输协议的方法,其特征在于,所述通过划分VLAN的方式实现POWERLINK中主站隔离,具体为:将每一个POWERLINK子网分配一个特定的VLAN,通过流表中的VLAN ID字段标识,通过指定每一个边缘交换机入口处所属的VLAN,为每一个边缘交换机端口所连接的POWERLINK子网分配所需的VLAN。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410825459.5A CN105791177B (zh) | 2014-12-25 | 2014-12-25 | 在Openflow交换机中实现支持多种工业网络传输协议的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410825459.5A CN105791177B (zh) | 2014-12-25 | 2014-12-25 | 在Openflow交换机中实现支持多种工业网络传输协议的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105791177A CN105791177A (zh) | 2016-07-20 |
CN105791177B true CN105791177B (zh) | 2017-05-10 |
Family
ID=56388810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410825459.5A Active CN105791177B (zh) | 2014-12-25 | 2014-12-25 | 在Openflow交换机中实现支持多种工业网络传输协议的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105791177B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3273641A1 (de) * | 2016-07-22 | 2018-01-24 | Siemens Aktiengesellschaft | Übermittlung von applikationsspezifischen paketen |
CN110290092B (zh) * | 2018-03-19 | 2021-05-28 | 中国科学院沈阳自动化研究所 | 一种基于可编程交换机的sdn网络配置管理方法 |
DE102019116510A1 (de) | 2019-06-18 | 2020-12-24 | Beckhoff Automation Gmbh | Netzwerkteilnehmer und Automatisierungsnetzwerk |
CN110398943A (zh) * | 2019-07-17 | 2019-11-01 | 上海电机学院 | 一种多层级立体化控制系统实验平台及其搭建方法 |
CN110855537B (zh) * | 2019-11-13 | 2021-06-11 | 大连京丰机械制造有限公司 | 基于双MCU的EtherCAT主站实现方法及系统 |
CN112994994B (zh) * | 2019-12-16 | 2022-09-06 | 中国科学院沈阳自动化研究所 | 基于工业以太网协议在工业sdn中的接入方法 |
CN111756659A (zh) * | 2020-05-15 | 2020-10-09 | 珠海格力电器股份有限公司 | 一种多主站EtherCAT网络实现方法及采用其的网络系统 |
CN116431718B (zh) * | 2023-04-17 | 2024-06-14 | 珠海畅达网络技术有限公司 | 一种基于互联网的集成信息处理系统及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401784A (zh) * | 2013-07-31 | 2013-11-20 | 华为技术有限公司 | 一种接收报文的方法及开放流交换机 |
CN103457878A (zh) * | 2013-09-05 | 2013-12-18 | 电子科技大学 | 一种基于流的网络接入控制方法 |
CN104202266A (zh) * | 2014-08-04 | 2014-12-10 | 福建星网锐捷网络有限公司 | 一种通信方法、交换机、控制器及通信系统 |
-
2014
- 2014-12-25 CN CN201410825459.5A patent/CN105791177B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401784A (zh) * | 2013-07-31 | 2013-11-20 | 华为技术有限公司 | 一种接收报文的方法及开放流交换机 |
CN103457878A (zh) * | 2013-09-05 | 2013-12-18 | 电子科技大学 | 一种基于流的网络接入控制方法 |
CN104202266A (zh) * | 2014-08-04 | 2014-12-10 | 福建星网锐捷网络有限公司 | 一种通信方法、交换机、控制器及通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105791177A (zh) | 2016-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105791177B (zh) | 在Openflow交换机中实现支持多种工业网络传输协议的方法 | |
CN106936777B (zh) | 基于OpenFlow的云计算分布式网络实现方法、系统 | |
CN107395532B (zh) | 一种基于sdn的多租户虚拟网络隔离方法 | |
US8798064B2 (en) | Method and system of frame forwarding with link aggregation in distributed ethernet bridges | |
US9667541B2 (en) | Virtual MAC address, mask-based, packet forwarding | |
TWI461032B (zh) | 電腦系統及在電腦系統的通信方法 | |
US9331936B2 (en) | Switch fabric support for overlay network features | |
US6772267B2 (en) | Multi-portal bridge for providing network connectivity | |
CN104954218B (zh) | 分布式虚拟交换装置及转发方法 | |
US10193707B2 (en) | Packet transmission method and apparatus | |
CN104283756B (zh) | 一种实现分布式多租户虚拟网络的方法和装置 | |
CN102857416A (zh) | 一种实现虚拟网络的方法和虚拟网络 | |
EP3069471B1 (en) | Optimized multicast routing in a clos-like network | |
CN106936715A (zh) | 虚拟机报文控制方法及装置 | |
CN104937885A (zh) | 用于结构交换机的全局vlan | |
EP2928133B1 (en) | Method and apparatus for accessing shortest-route bridge network in multi-homed manner | |
CN103973825B (zh) | 叠加网络中通告mac地址可达性的方法、节点设备及发送方法 | |
CN104468462A (zh) | 分布式虚拟交换机系统的报文转发方法及设备 | |
CN108063718B (zh) | 报文处理方法、装置及电子设备 | |
CN107306215B (zh) | 一种数据处理方法、系统及节点 | |
CN108429680A (zh) | 一种基于虚拟私有云的路由配置方法、系统、介质及设备 | |
CN104301129A (zh) | 一种软件定义网络中的动态主机配置方法及系统 | |
CN105991338A (zh) | 网络运维管理方法及装置 | |
CN112822104A (zh) | 一种数据报文的处理方法、设备、存储介质及系统 | |
CN107465621A (zh) | 一种路由器发现方法、sdn控制器、路由器和网络系统 |
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 |