分类: 服务器与存储
2008-06-23 01:18:39
内容提要:
本文通过对数据容灾中的传输带宽及时延性能进行了分析研究,分别探讨了在采用同步或异步数据传输方式下,传输带宽和时延对容灾性能的影响,以及在容灾方案的设计时应考虑的相关因素。
说明:
本文适用于各种平台及相关容灾方案的设计
正文:
数据容灾的带宽及时延性能分析
通过建立异地数据容灾,可以保证在本地系统出现灾难时,异地存在一份与本地数据完全一致(同步方式)或接近一致(异步方式)的数据备份(具有完整的一致性)。但这时我们必须考虑数据传输的带宽及时延等因素。下面,我们分别对采用同步及异步方式进行数据传输复制的情形加以分析。
同步数据复制方式
当采用同步数据传输方式时,本地系统必须等到数据成功的写到异地系统,才能进行下一个I/O操作。一个I/O通过远程链路写到异地系统,涉及到3个技术参数:带宽、距离和中间设备及协议转换的时延。
1.带宽
例如,本地I/O的带宽是100MB/秒(SAN网络中),在I/O流量很大的情况下,如果远程的I/O带宽比“100MB/秒 = 800Mbit/秒”窄得多的话,如E1:2Mbit/秒;E3:45Mbit/秒,将会明显拖慢生产系统的I/O,从而影响系统性能。
2.距离
尽管光和电波在线路上传输的速度是30万公里/秒,当距离很长时,这种线路上的延时将会变得很明显。例如:一个异地容灾系统的距离是1000KM,其数据库写盘的数据块大小是8KB(一次I/O的数据量),那么:
·本地I/O时(两中心距离在100米距离内)的情形:
光电在线路上的延时= 0.1km/300,000km*2次/一个来回
= 0.67 * 10-6 秒
1秒钟内允许I/O次= 1/(0.67 * 10-6 )= 1.5 * 106 次
1秒钟允许的I/O量= 8KB * 1.5 * 106= 12GB
此数字远远超过光纤通道带宽本身,也就是说,光电在100米距离的线路上的延时对性能的影响可以忽略不计。
·异地I/O的(两中心距离在1000公里左右)的情形:
光电在线路上的延时= 1000km/300,000km*2次
= 1/150 秒
1秒钟内允许I/O次= 1/(1/150 )= 150次
1秒钟允许的I/O总量 = 8KB * 150 = 1.2MB
此数据表明,在1000公里距离上,即使不存在带宽限制时,最大I/O量也已经远远低于本地I/O的能力。(注:上面分析还未考虑中间设备及协议转换的延时)。
3.中间链路设备和协议转换的时延
中间链路设备和协议转换的方式的不同,时延不同,对性能的影响也不同。在对性能影响的分析中,这个因数也应计算在内。目前不同异地数据复制技术所依赖的介质和协议不同,我们将介质、协议和大概时延例表如下,这里提供的数据只精确到数量级,仅供参考,实际数据应该向设备供应商索取。
租用线路任意不受限制约1ms
ESCON136Mbit66公里< 100us
LAN1000Mbit10公里< 100us
ATM655Mbit不受限制< 100us
IP over FC800Mbit60公里< 100us
FC800Mbit60公里< 10us
下面是一个线路时延分析对照表,供参考。
1000KM100KM10KM
线路时延 / 次 I/O6ms600us60us
支持的链路和协议租用线路租用线路租用线路
ATMATMATM
ESCON
LAN
IP over FC
FC
在1000公里和100公里距离上,采用租用线路和ATM,允许的最大I/O能力(假定带宽足够,数据块大小以8KB为例):
租用线路ATM租用线路ATM
线路时延 / 次 I/O6ms6ms600us600us
设备和协议时延> 1ms< 100us> 1ms< 100us
每个I/O响应时间> 8ms> 7ms> 2.6ms1.7ms
备注不适合用同步传输
在10公里距离上,采用各种传输协议允许的最大I/O能力,数据块大小以8KB为例(假定带宽足够):
租用线路ATM
LANESCON
IP over FC
线路时延/次60us60us60us60us
设备协议时延> 1ms< 100us< 100us< 10us
I/O次数/秒485-930900-5800900-5800900-12500
I/O MB/秒3.9-7.47.2-46.47.2-46.47.2-100
备注异步数据复制方式适合用同步传输
从前面的分析来看,同步数据容灾一般只能在较短距离内部署(10KM-100KM),大于这个距离,就没有实际应用价值了。因为即使在1000KM距离上,即使以3.6MB(三倍于前面的分析)的速率将数据复制到异地,每个I/O的响应时间也会超过10ms,这种响应速度太慢。
异步数据容灾是在“线路带宽和距离能保证完成数据复制过程,同时,异地数据复制不影响生产系统的性能”这样的要求下提出来的。考虑异步数据容灾,应该注意到以下几个技术条件和事实。
1.带宽必须能保证将本地生产数据基本上完全复制到异地容灾端,还要考虑距离对传输能力的影响。
例如,按照前面的估算:在1000公里范围内,一条带宽足够的线路能支持的I/O流量最大为(数据块大小8KB ):1.2MB×3600秒×24小时=103.68GB/天
2.异地容灾远端数据会比本地生产端数据落后一定时间,这个时间随采用的技术,带宽、距离、数据流特点的不同而不同。一般而言,通过软件方式的数据复制技术较容易实现完整的数据包的排队和断点重发机制,在灾难情况下可以保证灾难时间点的数据一致性。
3.异步容灾基本不影响本地系统性能。
与同步传输方式相比,异步传输方式对带宽和距离的要求低很多,它只要求在某个时间段内能将数据全部复制到异地即可,同时异步传输方式也不会明显影响应用系统的性能。其缺点是在本地生产数据发生灾难时,异地系统上的数据可能会短暂损失(如果广域网速率较低,交易未完整发送的话),但不影响一致性(类似本地数据库主机的异常关机)。