CN102123049A - 一种基于MAC地址传输的Cache同步方法 - Google Patents

一种基于MAC地址传输的Cache同步方法 Download PDF

Info

Publication number
CN102123049A
CN102123049A CN201110046075XA CN201110046075A CN102123049A CN 102123049 A CN102123049 A CN 102123049A CN 201110046075X A CN201110046075X A CN 201110046075XA CN 201110046075 A CN201110046075 A CN 201110046075A CN 102123049 A CN102123049 A CN 102123049A
Authority
CN
China
Prior art keywords
data
cache
source host
mac address
host
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
CN201110046075XA
Other languages
English (en)
Other versions
CN102123049B (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.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN 201110046075 priority Critical patent/CN102123049B/zh
Publication of CN102123049A publication Critical patent/CN102123049A/zh
Application granted granted Critical
Publication of CN102123049B publication Critical patent/CN102123049B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明涉及一种基于MAC地址传输的Cache同步方法,包括以下步骤:一、为源主机和目标主机配备相同配置和结构的Cache;二、对源主机和目的主机初始化;三、当需要传输数据时,源主机直接将数据传送到数据链路层,数据链路层对数据进行分组封装成数据帧,然后向网络发送;四、目的主机接收到数据后,对数据进行解包并处理,并向源主机发送反馈;五、源主机对反馈信息进行判定并分别处理。本发明不再进行TCP协议和IP协议的封包、解包等操作,节省了CPU资源;不再添加TCP协议和IP协议的报头,节省了网络带宽;通过双机直连,减少了网络延迟。

Description

一种基于MAC地址传输的Cache同步方法
技术领域
本发明涉及一种数据备份方法,特别涉及一种在局域网内双机热备份系统中,基于MAC地址传输的双机Cache数据同步方法,属于数据备份领域。
背景技术
随着信息技术的发展,数据已经成为各行业的基础和命脉,对数据进行高效益的存储、管理和高效率的使用成为企业必须关注的问题,数据备份日益重要。而对于不间断向外提供服务的服务器系统来说,数据的热备份显得尤其重要并得到了日益广泛的应用。
目前,数据热备份大多采用共享存储的双机热备模式,即源主机和目标主机共用同一存储设备。在这种模式中,源主机和目标主机保证了数据的一致性,并且双机的服务质量得到了提高和一定的保障,双机中任何一台主机发生故障,另一台都能立刻接替其工作。但是,这种模式中的数据安全性完全依赖于双机所共享的存储设备,通常为安全性较高的RAID。而如果这一存储设备发生灾难性毁坏,则无论源主机还是目标主机都无法工作。
另一种模式是非共享存储的双机热备模式,在这种模式中,源主机和目标主机不共享任何设备,各自有自己数据存储设备,只是通过网络实现数据同步。在这种热备份模式的数据安全性较前一种有了较大的提高。但是,这种模式中,源节点和目标节点之间的数据同步通常采用普通IP网络,普通IP网络价格低廉,传输稳定,但带宽往往不能满足要求,而数据同步却耗费了大量的CPU资源和网络带宽。当数据更新频繁,数据传输量很大时,尤其当源主机和目的主机之一或两者同时对外提供网络服务时,其网络资源和CPU资源都极其宝贵,在数据备份过程中可能就会因为网络带宽和延迟而导致性能的下降和备份数据的丢失。
现在的普通IP网络中,数据的传输通常采用TCP/IP协议,传送数据通常通过以下几个步骤:
1)源主机传输层由TCP协议对要传输的数据进行封装,并将封装好的数据交给网络层。
2)网络层由IP协议对数据进行封包,称为数据报,加入长度为共20字节的报头,其中包括目的主机的IP地址和源主机的IP地址。
3)网络层将封装好的数据报传到下一层:数据链路层。
4)数据报由数据链路层的MAC子层协议对数据报进行封装(如果IP数据报过大,MAC子层协议要先对其进行拆分),称为帧,加入长度为共14字节的帧头,其中包括目的主机的MAC地址和源主机的MAC地址。
5)数据链路层将封装好的帧传输给物理层,物理层以比特流的形式向网络传输数据。
6)在数据传输过程中,路由器和/或交换机对数据逆向解包,确认数据目的地址,重新封包后将数据传输到目的主机。
7)目的主机对数据逆向解包,最终得到数据。
在整个数据传输过程中,步骤2)、4)耗费源主机大量CPU资源用于数据的封装计算。步骤6)耗费路由器和/或交换机的CPU资源用于数据的解包和再封装,并且增加了网络延迟,步骤7)的逆向解包过程同时也耗费了大量的目的主机的CPU资源。
从以上过程可以看出,使用现有的IP网络数据传输方法时,分别由TCP/UDP协议、IP协议和MAC帧协议对数据进行封装,然后物理层将数据帧转换为比特流进行传输。在发送和接收的过程中,无论是发送方对数据封包还是接收方解包,都耗费大量的CPU资源,尤其当双方都作为服务器对外提供服务时,这种CPU资源的开销大大降低了服务器的性能。另外,这种传输方式共开销14字节(以太网帧头)+20字节(IP头)+20字节(TCP头)=54字节,所占数据传输比例较大,降低了网络传输效率。
发明内容
本发明的目的在于针对现有技术的缺陷,提供一种网络数据传输方法,减少主机CPU在数据封装时的工作量,同时可以减少总的数据传输量。
由于现在的双机热备份系统大多在同一局域网内部,双方数据传输不需IP地址,直接由MAC地址就可进行,所以本发明采用基于MAC地址传输的Cache同步方法,在同一局域网内部实现源主机和目标主机的同步。
本发明提供了一种基于MAC地址传输的Cache同步方法,包括以下步骤:
一、为源主机和目标主机配备相同配置和结构的Cache;
二、当两个主机初次连接时,对源主机和目的主机初始化,使目的主机的Cache与源主机保持数据一致;
三、当数据发生变化,需要向对方传输同步数据时,源主机直接将数据传送到数据链路层,数据链路层对数据进行分组封装成数据帧,每个数据帧中加入源主机和目的主机的MAC地址、数据长度、检验位以及位置标识项,然后由物理层将其转换为可供传输的比特流,并向网络发送;
四、目的主机接收到数据后,对数据进行解包,提取其中的MAC地址,如果目的主机MAC地址和自己的MAC地址不符,直接丢弃数据;如果相符,则对数据进行正确性判定,如果数据错误,则向源主机发回一个“重发”请求;如果数据正确,则对数据进行处理并向源主机发回一个“确认”信息;
五、源主机对反馈信息进行判定,如果是“确认”信息,说明数据发送成功,源主机把该数据块相关信息从相关队列清除;如果是“重发”请求,源主机重新发送该同步数据;如果源主机在发送数据后一定时间间隔内收不到“确认”信息或“重发”请求等反馈信息,源主机自动重发该同步数据并对发送次数计数,超过一定重发次数后,源主机则认为热备份系统故障,处于Failover状态,在这一状态下,源主机开始记录变更的Cache数据,直到系统恢复,再根据数据变更记录表,重新同步Cache数据。
有益效果
本发明的有益效果是:
1)节省CPU资源。对于要传输的数据,不再进行TCP协议和IP协议的封包、解包等操作,降低了CPU的工作量,节省了CPU资源。
2)节省网络带宽。由于采用MAC地址传输,所以在数据传输过程中,不再添加TCP协议和IP协议的报头,大大减少了数据传输量,节省了网络带宽。
3)减少网络延迟。本发明采用了双机直连方式,取消了交换机的解包、再封包以及转发等过程,减少了网络延迟,使网络传输速度得到提高。
因此,本发明在降低CPU和网络开销中取得了显著的效果,非常适用于只有单个网络或整个环境都桥接起来的小工作组环境。
附图说明
图1是本发明工作的网络结构模型;
图2为本发明设置的Cache结构图;
图3为传输的MAC帧结构图;
图4为MAC帧中位置标识结构图。
图中,1为文件,2为Page Cache,3为Buffer Cache,4为磁盘块,
具体实施方式
下面结合附图,具体说明本发明的优选实施方式。
本发明工作于网络标准模型的应用层、数据链路层和物理层,其结构模型如图1所示。
本实施方式对Cache分两层管理,一层是Page Cache,另一层是Buffer Cache,每一个Page Cache包含四个Buffer Cache。Page Cache大小为4K,Buffer Cache大小为1K,适于数据链路层对数据大小的要求(1~1500字节),其结构如图2所示。内存管理系统和虚拟文件系统只与Page Cache交互,内存管理系统负责维护每项Page Cache的分配和回收,同时在使用内存映射方式访问时负责建立映射,虚拟文件系统负责Page Cache与用户空间的数据交换;具体文件系统只与Buffer Cache交互,负责在外围存储设备和Buffer Cache之间交换数据;对每个Page Cache进行编号(22位),对每个Page Cache内的Buffer Cache进行编号(2位),确定一个Buffer Cache的地址需要其所在Page Cache号和其在Page Cache内的编号,共需24位(3字节)。源主机和目的主机的Cache配置和结构相同并且保持数据一致,当源主机Cache内数据发生变化时,通过网络传输同步到目的主机的Cache。在本发明中,源主机和目的主机的地位相同,即可互为源主机和目的主机,双方可互相同步数据。
本实施方式中数据传输协议中数据结构如图3所示,包括6个字节的源主机MAC地址、6个字节的目的主机MAC地址、2个字节的长度、4个字节的校验位和3个字节的位置标识,还包括可变长的数据。其中长度表示数据帧长度,位置标识位由两部分组成:Page Cache位置标识和Buffer Cache位置标识,如图4所示。
数据传输过程如下:
1、当源主机需要传输数据时,源主机与目标主机根据传输层协议建立连接;
2、源主机应用层将将要传送数据传输到数据链路层;
4、数据链路层按协议按图3帧结构对数据进行封装,加入源主机和目标主机的MAC地址及其它标识信息;
5、将数据传送到物理层;
6、物理层将要传输数据帧转换成比特流,发送到网络;
7、目标主机物理层接收到数据,将数据传送到目标主机的数据链路层;
8、目的主机接收到数据后,对数据进行解包,提取其中的MAC地址,如果目的主机MAC地址和自己的MAC地址不符,直接丢弃数据。如果相符,则对数据进行正确性判定,如果数据错误,则向源主机发回一个“重发”请求;如果数据正确,提取位置信息,将数据同步到Cache中,并向源主机发回一个“确认”信息;
9、源主机对反馈信息进行判定,如果是“确认”信息,说明数据发送成功,源主机把该数据块相关信息从相关队列清除;如果是“重发”请求,源主机重新发送该同步数据。如果源主机在发送数据后一定时间间隔内收不到“确认”信息或“重发”请求等反馈信息,源主机自动重发该同步数据并对发送次数计数,超过一定重发次数后,源主机则认为热备份系统故障,处于Failover状态。在这一状态下,源主机开始记录变更的Cache数据,直到系统恢复,再根据数据变更记录表,重新同步Cache数据。
10、如仍有数据要传输,重复步骤2~9;
11、数据传送结束,断开连接。
本发明不仅限于以下实施例,凡是利用本发明的设计思路,做一些简单变化的设计都应进入本发明的保护范围之内。

Claims (5)

1.一种基于MAC地址传输的Cache同步方法,其特征在于,包括以下步骤:
一、为源主机和目标主机配备相同配置和结构的Cache;
二、当两个主机初次连接时,对源主机和目的主机初始化,使目的主机的Cache与源主机保持数据一致;
三、当数据发生变化,需要向对方传输同步数据时,源主机直接将数据传送到数据链路层,数据链路层对数据进行分组封装成数据帧,每个数据帧中加入源主机和目的主机的MAC地址、数据长度、检验位以及位置标识项,然后由物理层将其转换为可供传输的比特流,并向网络发送;
四、目的主机接收到数据后,对数据进行解包,提取其中的MAC地址,如果目的主机MAC地址和自己的MAC地址不符,直接丢弃数据;如果相符,则对数据进行正确性判定,如果数据错误,则向源主机发回一个“重发”请求;如果数据正确,则对数据进行处理并向源主机发回一个“确认”信息;
五、源主机对反馈信息进行判定,如果是“确认”信息,说明数据发送成功,源主机把该数据块相关信息从相关队列清除;如果是“重发”请求,源主机重新发送该同步数据;如果源主机在发送数据后一定时间间隔内收不到“确认”信息或“重发”请求等反馈信息,源主机自动重发该同步数据并对发送次数计数,超过一定重发次数后,源主机则认为热备份系统故障,处于Failover状态,在这一状态下,源主机开始记录变更的Cache数据,直到系统恢复,再根据数据变更记录表,重新同步Cache数据。
2.根据权利要求1所述的基于MAC地址传输的Cache同步方法,其特征在于,对源主机和目标主机的Cache分两层管理,一层是Page Cache,另一层是Buffer Cache,每一个Page Cache包含多个Buffer Cache,对每个Page Cache进行编址,每个Page Cache内的Buffer Cache单独编址,确定一个Buffer Cache的地址需要其所在Page Cache号和其在Page Cache内的编号;内存管理系统和虚拟文件系统只与Page Cache交互,内存管理系统负责维护每项Page Cache的分配和回收,同时在使用内存映射方式访问时负责建立映射,虚拟文件系统负责Page Cache与用户空间的数据交换;具体文件系统只与Buffer Cache交互,负责在外围存储设备和Buffer Cache之间交换数据。
3.根据权利要求2所述的基于MAC地址传输的Cache同步方法,其特征在于,所述Page Cache大小为4K,Buffer Cache大小为1K。
4.根据权利要求3所述的基于MAC地址传输的Cache同步方法,其特征在于,对每个Page Cache用22位进行编号,对每个Page Cache内的Buffer Cache用2位进行编号,确定一个Buffer Cache的地址共需24位,即3字节。
5.根据权利要求4所述的基于MAC地址传输的Cache同步方法,其特征在于,所述数据帧包括6个字节的源主机MAC地址、6个字节的目的主机MAC地址、2个字节的长度、4个字节的校验位和3个字节的位置标识,还包括可变长度的数据。
CN 201110046075 2011-02-25 2011-02-25 一种基于MAC地址传输的Cache同步方法 Expired - Fee Related CN102123049B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110046075 CN102123049B (zh) 2011-02-25 2011-02-25 一种基于MAC地址传输的Cache同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110046075 CN102123049B (zh) 2011-02-25 2011-02-25 一种基于MAC地址传输的Cache同步方法

Publications (2)

Publication Number Publication Date
CN102123049A true CN102123049A (zh) 2011-07-13
CN102123049B CN102123049B (zh) 2013-03-06

Family

ID=44251510

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110046075 Expired - Fee Related CN102123049B (zh) 2011-02-25 2011-02-25 一种基于MAC地址传输的Cache同步方法

Country Status (1)

Country Link
CN (1) CN102123049B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209476A (zh) * 2016-08-29 2016-12-07 东软集团股份有限公司 一种冗余备份的方法及装置
CN106301716A (zh) * 2015-05-12 2017-01-04 上海东软载波微电子有限公司 数据发送端及方法、数据接收端及方法和数据传输系统
CN109428819A (zh) * 2017-08-28 2019-03-05 阿里巴巴集团控股有限公司 传输数据的方法、网络组件、设备和计算机存储介质
CN114389947A (zh) * 2022-03-24 2022-04-22 苏州浪潮智能科技有限公司 数据传输方法、系统及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1359727A2 (en) * 2002-04-08 2003-11-05 Wiznet Corp. Internet protocol system using hardware protocol and relating parallel data processing method
CN1859189A (zh) * 2006-01-11 2006-11-08 华为技术有限公司 多数据通信网络系统及其数据传输方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1359727A2 (en) * 2002-04-08 2003-11-05 Wiznet Corp. Internet protocol system using hardware protocol and relating parallel data processing method
CN1859189A (zh) * 2006-01-11 2006-11-08 华为技术有限公司 多数据通信网络系统及其数据传输方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106301716A (zh) * 2015-05-12 2017-01-04 上海东软载波微电子有限公司 数据发送端及方法、数据接收端及方法和数据传输系统
CN106301716B (zh) * 2015-05-12 2019-08-09 上海东软载波微电子有限公司 数据发送端及方法、数据接收端及方法和数据传输系统
CN106209476A (zh) * 2016-08-29 2016-12-07 东软集团股份有限公司 一种冗余备份的方法及装置
CN109428819A (zh) * 2017-08-28 2019-03-05 阿里巴巴集团控股有限公司 传输数据的方法、网络组件、设备和计算机存储介质
CN109428819B (zh) * 2017-08-28 2022-01-11 阿里巴巴集团控股有限公司 传输数据的方法、网络组件、设备和计算机存储介质
CN114389947A (zh) * 2022-03-24 2022-04-22 苏州浪潮智能科技有限公司 数据传输方法、系统及计算机可读存储介质

Also Published As

Publication number Publication date
CN102123049B (zh) 2013-03-06

Similar Documents

Publication Publication Date Title
US9160701B2 (en) Addressing method, addressing apparatus, fabric manager, switch, and data routing method
CN104104570B (zh) Irf系统中的聚合处理方法及装置
WO2018120798A1 (zh) Vxlan报文处理方法、设备及系统
CN108574616A (zh) 一种处理路由的方法、设备及系统
US20140211808A1 (en) Switch with dual-function management port
EP2961112B1 (en) Message forwarding system, method and device
US20080107115A1 (en) Method, device and system for message transmission
CN100370788C (zh) 在网络环境仿真中采用虚拟网卡实现数据通信的方法
CN104272668A (zh) 层3覆盖网关
CN103685006A (zh) 一种在边缘设备上的报文转发方法和边缘设备
EP3133797B1 (en) Message forwarding method, system, and relay agent device
CN101990002A (zh) 控制器集成
CN105791214A (zh) 一种RapidIO报文和以太网报文之间的转换方法和设备
CN104243427B (zh) 虚拟机在线迁移方法、数据包传输方法和设备
CN101873337A (zh) 一种基于rt8169千兆网卡和Linux操作系统的零拷贝数据捕获技术
CN102123049B (zh) 一种基于MAC地址传输的Cache同步方法
CN104283817A (zh) 用于实现交换线卡与逻辑线卡互通的方法及报文转发设备
JP2002271363A (ja) ネットワーク接続装置
WO2022062679A1 (zh) 数据处理方法、系统、封装节点和解封装节点
US20230091501A1 (en) Port status configuration method, apparatus, and system, and storage medium
CN104486227A (zh) 通过VxLAN技术实现IPv6灵活部署的系统及方法
CN1333559C (zh) Wcdma系统中建立特殊操作维护通道的方法
CN105933235B (zh) 数据通信方法及装置
CN106789099A (zh) 基于pcie的高速隔离网络方法及终端
EP4283938A1 (en) Packet forwarding method, packet processing method, and device

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130306

Termination date: 20140225