论坛: 系统集成 标题: 存储备份基础知识(有图有真相)[转载]..持续更新中,绝不太监! 复制本贴地址    
作者: Aoming [aoming]    版主   登录
20年前,我们开始以计算为核心谈论PC
10年前,我们开始以网络为中心谈论网络
今天,我们开始谈论存储,并且已经过渡到以数据为中心
(PS:ND是个非主流,居然不开存储专栏,大家一起BS他

进入正题,自己能力不足写不了,所以只好引用下国外某备份软件厂商的文档。文档描述不一定都准确,完善,希望给刚入门还有诸多彷徨的朋友一个指引,也希望能吸引一部分熟悉的朋友掀开20CN对存储和数据管理话题的讨论。

文档慢慢跟新。。。。兄弟们要顶阿

1楼是目录
--------------------------------

第 1 章 基础知识
1.1 备份
1.1.1 什么是备份
1.1.2 相对于手工备份的优势
1.1.3 备份和恢复
1.1.4 备份结构
1.1.4.1 Host-Based备份方式:
1.1.4.2 LAN-Based备份方式:
1.1.4.3 LAN-Free备份方式:
1.1.4.4 Server-Free备份方式
1.1.5 备份分类
1.1.5.1 全备份
1.1.5.2 增量备份
1.1.5.3 差异备份
1.1.5.4 辅助副本
1.1.5.5 合成全备份
1.1.5.6 各备份类型的优缺点
1.1.6 备份技术的评判标准
1.1.7 归档和迁移
1.2 容灾技术
1.2.1 RPO同RTO
1.2.2 容灾的级别
1.2.2.1 《信息系统灾难恢复规范》(GB/T 20988-2007 )
1.2.2.2 国际Share78标准
1.2.3 备份同容灾
1.2.4 复制技术
1.2.4.1 同步复制
1.2.4.2 异步复制
1.3 备份设备简介
1.3.1 磁带设备
1.3.1.1 存储容量
1.3.1.2 压缩后存储容量
1.3.1.3 持续传输率
1.3.1.4 压缩后传输率
1.3.1.5 MTBF
1.3.1.6 磁带尺寸
1.3.1.7 存储技术
1.3.1.8 装带方式
1.3.2 D2D2T备份
1.3.3 VTL




[此贴被 Aoming(aoming) 在 06月28日23时39分 编辑过]

地主 发表时间: 10-06-07 01:27

回复: Aoming [aoming]   版主   登录
[align=center]第 1 章 基础知识[/align]
1.1 备份
1.1.1 什么是备份

    数据备份顾名思义,就是将数据以某种方式加以保留,以便在系统遭受破坏或其他特定情况下,重新加以利用的一个过程。在日常生活中,我们经常需要为自己家的房门多配几把钥匙,为自己的爱车准备一个备胎,这些都是备份思想的体现。

    数据备份作为存储领域的一个重要组成部分,其在存储系统中的地位和作用都是不容忽视的。对一个完整的IT系统而言,备份工作是其中必不可少的组成部分。其意义不仅在于防范意外事件的破坏,而且还是历史数据保存归档的最佳方式。换言之,即便系统正常工作,没有任何数据丢失或破坏发生,备份工作仍然具有非常大的意义,为我们进行历史数据查询、统计和分析,以及重要信息归档保存提供了可能。

    简单的说,一份数据备份的作用,不仅仅像房门的备用钥匙一样,当原来的钥匙丢失或损坏了,才能派上用场。有时候,数据备份的作用,更像是我们为了留住美好时光而拍摄的照片,把暂时的状态永久的保存了下来,供我们分析和研究。当然我们不可能凭借一张儿时的照片就回到从前,在这一点上,数据备份就更显神奇,一个存储系统乃至整个网络系统,完全可以回到过去的某个时间状态,或者重新“克隆”一个指定时间状态的系统,只要在这个时间点上,我们有一个完整的系统数据备份。

    还有一个需要澄清的问题,数据备份更多的是指数据从在线状态,剥离到离线状态的过程,这与服务器高可用集群技术以及远程容灾技术,在本质上有所区别。虽然从目的上讲,这些技术都是为了消除或减弱意外事件给系统带来的影响,但是,由于其侧重的方向不同,实现的手段和产生的效果也不尽相同。集群和容灾技术的目的,是为了保证系统的可用性,也就是说,当意外发生时,系统所提供的服务和功能不会因此而间断。对数据而言,集群和容灾技术是保护系统的在线状态,保证数据可以随时被访问。而相对来说,备份技术的目的,是将整个系统的数据或状态保存下来,这种方式不仅可以挽回硬件设备坏损带来的损失,也可以挽回逻辑错误和人为恶意破坏的损失。

    然而,一般来说,数据备份技术并不保证系统的实时可用性。也就是说,一旦意外发生,备份技术只保证数据可以恢复,但是恢复过程需要一定的时间,在此期间,系统是不可用的。在具有一定规模的系统中,备份技术、集群技术和容灾技术互相不可替代,并且稳定和谐的配合工作,共同保证着系统的正常运转。


B1层 发表时间: 10-06-07 01:32

回复: 带脚镣跳舞 [tuzi]   版主   登录
这个还是要顶一下的

B2层 发表时间: 10-06-07 13:21

回复: Aoming [aoming]   版主   登录
呵呵,有人顶,继续更新
==========================

1.1.2 相对于手工备份的优势

相比于系统、数据库管理人员手工备份,自动备份软件有如下的优势:

一、稳定性

    备份的主要作用是为系统提供一个数据保护的方法,于是备份本身的稳定性和可靠性就变成了最重要的一个方面。相比与手工备份,自动备份软件更能保证备份的稳定可靠,能提供方法确保不会在恢复时才发现备份是不成功的。

二、全面性

    在复杂的计算机网络环境中,可能会包括了各种操作平台,如各种厂家的 UNIX、Windows NT等,并安装了各种应用系统,如数据库、文件系统等。备份软件可以全面支持这些平台、软件。

三、自动化

    很多公司由于工作性质,对何时备份、用多长时间备份都有一定的限制。在下班时间系统负荷轻,适于备份。可是这会增加系统管理员的负担,由于精神状态等原因,还会给备份安全带来潜在的隐患。自动备份软件能提供定时的自动备份,并利用磁带库等技术进行自动换带。在自动备份过程中,还有日志记录功能,并在出现异常情况时自动报警。

四、高性能

    随着业务的不断发展,数据越来越多,更新越来越快,在休息时间来不及备份如此多的内容,在工作时间备份又会影响系统性能。备份软件在备份时,可以尽量考虑到提高数据备份的速度,如利用多个磁带机并行操作的方法、利用合成备份的方法等等。

五、操作简单,集中管理

    备份软件提供集中管理功能,能够对特别重要数据做多份拷贝,并能记录跟踪每次备份的不同版本,这样就可以按照需要恢复不同的数据。数据备份应用于不同领域,进行数据备份的操作人员也处于不同的层次。备份软件提供了一个直观的、操作简单的图形化用户界面,缩短操作人员的学习时间,减轻操作人员的工作压力,使备份、恢复工作得以轻松地设置和完成。

六、实时性

    有些关键性的任务是要24小时不停机运行的,在备份的时候,有一些文件可能仍然处于打开的状态。那么在进行备份的时候,要采取措施,实时地查看文件大小、进行事务跟踪,以保证正确地备份系统中的所有文件。而这些仅凭借手工备份是很难做到的

七、能更迅速、准确的恢复数据

    备份软件精确的知道每次备份发生的时间和内容以及存放地点,能够迅速找到并恢复数据。同时,也可以采用多种技术如从快照恢复、多流恢复等方法提高恢复速度。备份软件也能提供更小颗粒的恢复,如能支持Exchange单messenge恢复、AD小颗粒恢复等功能。


B3层 发表时间: 10-06-07 22:55

回复: Aoming [aoming]   版主   登录
继续更新罗。。。。

----------------
1.1.3 备份和恢复

    数据备份的根本目的,是重新利用,这也就是说,备份工作的核心是恢复,一个无法恢复的备份,对任何系统来说都是毫无意义的。在实际情况中,厂商或集成商更多的是向用户吹嘘,自己的产品在备份过程中如何的巧妙。然而,作为最终用户,一定需要清醒的认识到,能够安全、方便而又高效的恢复数据,才是备份系统的真正生命所在。也许很多人会以为,既然备份系统已经把需要的数据备份下来了,恢复应该不成什么问题。这就大错而特错了,事实上,无论是在金融电信行业的数据中心,还是在普通的桌面级系统中,备份数据无法恢复,从而导致数据丢失的例子实在太多了。就在日前,我国西北地区的一个省级电信运营商还糟此劫难,系统数据遗失殆尽,该运营商的声誉和众多用户的利益都受到了重大损害。这次事故的主要责任者之一,就是一个全球知名的备份软件厂商,因为其提供的备份产品没能正常恢复系统数据。

    众所周知,建造大楼时一定会配备消防系统,但是,并非有了消防系统就能高枕无忧。人们经常获悉,有的楼房突遭火灾时,消防系统却无故瘫痪了,或者消防栓里没有水,或者消防通道被堵塞,以致火势蔓延,造成巨大的生命财产损失。因此,并非所有的消防系统,在遭遇火灾时都能起作用。一样的道理,数据备份设施之于IT系统,就相当于消防系统之于楼房,它是保护IT系统的最后一道防线。即使配备了数据备份设施,并不表明在IT系统遇到问题时一定能将丢失的数据成功恢复。

    为了进一步阐明恢复的重要性,让我们再来对比一下备份和恢复操作的区别。

一.备份是计划内的工作,而恢复则是计划外的工作。

    对于IT技术人员来说,备份是按照既定的备份策略,每隔一定时间,按部就班地操作即可。而恢复,则是只有当发生数据丢失时,或者要查找历史数据时,才会进行的操作。通常情况下,实施恢复操作时,往往都是十万火急,越快越好,同时还希望恢复后的数据可用。
 
    由于备份对系统的影响比较大,所以备份的工作往往是在特定的时间内完成的,也即所谓的“备份窗口”,这时生产系统通常不工作。而恢复,因为是计划外的工作,对生产系统肯定会产生影响。下面以电子邮件数据的备份和恢复为例,来说明恢复对系统的影响。

    假定您对电子邮件系统的备份策略是每晚八点定时备份到磁带,备份完成后磁带里就会保存有昨天晚上八点之前收到的所有电子邮件。当然,收发电子邮件是一个连续的动作,晚上八点后,邮箱仍然在不停地收邮件。假设到了今天中午12点,您发现某一个重要的邮件不小心被删掉了,如果这个邮件是昨天晚上八点前收到的,那么您还是有可能从磁带里恢复该邮件。这时就要启动恢复操作了。

    如果备份软件能够实现邮件一级的恢复(恢复颗粒是单个邮件)的话,您只要能找到那封丢失的邮件,直接将它恢复到邮箱就可以了,恢复的过程对整个邮件系统没有任何影响;但是,如果您的备份软件只能做到邮箱级的恢复(恢复颗粒是一个邮箱),那么如果您想恢复该邮件的话,就不得不把整个邮箱恢复到昨晚八时的状态,造成的后果就是昨天晚上八点到今天上午12点收进的邮件会全部被覆盖。可见,如果从备份的角度来说,两者没什么区别;但是从恢复的角度来讲,两者差别很大。

二. 备份是大批量的数据移动过程,往往需要将所有数据或所有增量数据全部拷贝到备份设备,而恢复往往是少量的数据移动过程,只需将需要恢复的数据从备份设备拷贝回主服务器。
现在市场上流行的很多备份软件,基本上都是在上世纪80年代设计的,那时的数据量相对较小(几十兆到几百兆)。当进行备份操作的时候,备份软件会把所需要备份的数据文件打包成一个备份集(backup set),然后将它拷贝至备份设备中,并且针对该备份集形成相对应的索引,但一般不会对备份集里的内容建立详细的索引。那么当需要恢复该备份集中的某一个文件时,备份软件就必须从备份集中搜索到该文件,然后进行恢复。这在只有几百兆数据量的IT环境下完全可行,然而来到我们目前所处的海量数据的时代,由于数据量已经高达几十甚至几百TB,如果继续沿用这种方式,势必产生许多问题:从浩如烟淼的备份数据里,找到并恢复您需要的那一个,难度无异于大海捞针!例如,有的用户去电信公司要求查询自己的历史话单(如两年前的某一个月的通话记录),今天,很多电信公司无法满足用户的这一需求,因为很多情况下明知该历史话单一定存在于原先的备份介质中,但由于数据量实在太大,几乎没有可操作性。这种情况下,备份虽然是成功的,但是恢复的成功率却很低。


------------------
本小节未完。。明天再贴

B4层 发表时间: 10-06-08 18:55

回复: Aoming [aoming]   版主   登录
最近有点事耽误掉了,继续继续。。。。

-----------------------------------------
META Group在2004年4月的一份题为“Proactive Data Protection”的调查揭示了数据恢复的真相:
1.恢复作业的平均成功率只有70%左右;
2.主要的恢复需求是恢复单个文件或单个表空间,而不是整个卷;
3.而恢复单个文件至少要花1个小时, 有时甚至要接近1天。

所以,当考虑数据保护时,应着眼于“恢复”,需着重考虑以下几点:

1.确保数据能够恢复
2.恢复速度要尽量快
3.恢复操作对系统的影响要尽可能小
4.能够恢复到用户指定的时间点
5.恢复的数据是可以使用的

    当然,恢复是在备份的基础上进行的,如果备份失败,恢复肯定不会成功。为了确保能达到恢复的目的,对备份操作有以下几点基本要求:

1.提高备份成功率

    备份过程中,当备份介质、备份设备和网络出现问题时,备份作业就会中断,要提高备份的成功率,备份系统就应具有容错机制。如果是备份介质或备份设备出现问题,可以将备份自动切换到其他的备份介质、设备或路径上,并能确保从中断处继续备份操作。另外,“备份的断点续传”也很重要,当网络发生阻塞时,备份也会中断;一旦网络恢复正常,备份能从中断处自动重启并继续进行。

2.精细的备份数据索引

    当用户希望恢复数据时,绝大多数情况下并不需要恢复整个系统,而只要恢复部分数据,甚至只是一个文件或邮件。索引做得足够精细,有利于在恢复时能快速查找并定位所需要恢复的数据,实现小颗粒恢复,同时将对系统的影响降到最小,恢复速度大幅提高。

3.能产生多个数据副本

    为了防止备份数据意外损坏,产生多个备份副本是必要的,也很有效。产生数据副本的方法有两种:同步和异步。同步的方法是,在备份时,同时把备份数据写入到两个不同的介质中;异步的做法是,先把备份数据写入一个介质,然后再利用空闲时段,将备份数据复制到其他介质上。当然也可以通过网络将其复制到异地,达到数据容灾的目的。

4.离场保护

    如果数据备份是为了恢复而进行的,就应该考虑到万一数据中心遭遇灾难时,怎样进行恢复。这时“离场保护”中保存的数据副本就会起到很大的作用。

5.操作界面应足够简单

    用户界面应该面向恢复,而非面向备份。在面向数据恢复的用户界面,所有的备份数据是按照数据原先的结构来组织的,需要恢复哪个数据,很快就能找到,轻松点击一下就能恢复该数据了。

    综上所述,以恢复为目的来设计数据保护系统,管理简便,能快速便捷地实现恢复。除此以外,正如前文提到的消防系统的事例,为了确保消防系统在遭遇火灾时能够正常工作,应该定期进行防灾演习,数据备份系统也应该经常做些数据恢复演习,确保在真正需要时,能够实现对数据的有效恢复。


B5层 发表时间: 10-06-23 16:36

回复: Aoming [aoming]   版主   登录
看过留下痕迹~~~~~~~~~~~~~

-------------------------------
1.1.4 备份结构

    常见的数据备份系统主要有Host-Base、LAN-Base和基于SAN结构的LAN-Free、Server-Free等多种结构。

1.1.4.1 Host-Based备份方式:

    Host-Based是传统的数据备份的结构这种结构中磁带库直接接在服务器上,而且只为该服务器提供数据备份服务。在大多数情况下,这种备份大多是采用服务器上自带的磁带机,而备份操作往往也是通过手工操作的方式进行的。

    Host-Based备份结构的优点是数据传输速度快,备份管理简单;缺点是不利于备份系统的共享,不适合于现在大型的数据备份要求。


1.1.4.2 LAN-Based备份方式:

    LAN-Based备份,在该系统中数据的传输是以网络为基础的。其中配置一台服务器作为备份服务器,由它负责整个系统的备份操作。磁带库则接在某台服务器上,在数据备份时备份对象把数据通过网络传输到磁带库中实现备份的。
LAN-Based备份结构的优点是节省投资、磁带库共享、集中备份管理;它的缺点是对网络传输压力大。



1.1.4.3 LAN-Free备份方式:

    LAN-Free和Server-Free的备份系统是建立在SAN(存储区域网)的基础上的,其结构如下图所示。基于SAN的备份是一种彻底解决传统备份方式需要占用LAN带宽问题的解决方案。它采用一种全新的体系结构,将磁带库和磁盘阵列各自作为独立的光纤结点,多台主机共享磁带库备份时,数据流不再经过网络而直接从磁盘阵列传到磁带库内,是一种无需占用网络带宽 (LAN-Free) 的解决方案。

    目前随着SAN技术的不断进步,LAN-Free的结构已经相当成熟,而Server-Free的备份结构则不太成熟。LAN-Free的优点是数据备份统一管理、备份速度快、网络传输压力小、磁带库资源共享;缺点是投资高。




1.1.4.4 Server-Free备份方式

    另外一种减少对系统资源消耗的办法是采用无服务器(Serverless)备份技术。它是LAN-free的一种延伸,可使数据能够在SAN结构中的两个存储设备之间直接传输,通常是在磁盘阵列和磁带库之间。这种方案的主要优点之一是不需要在服务器中缓存数据,显著减少对主机CPU的占用,提高操作系统工作效率,帮助企业完成更多的工作。
无服务器备份有几种实施方式。

    方法一,如下图所示,备份数据通过名为数据移动器的设备从磁盘阵列传输到磁带库上。该设备可能是光纤通道交换机、存储路由器、智能磁带或磁盘设备或者是服务器。数据移动器执行的命令其实是把数据从一个存储设备传输到另一个设备。实施这个过程的一种方法是借助于SCSI-3的扩展拷贝命令,它使服务器能够发送命令给存储设备,指示后者把数据直接传输到另一个设备,不必通过服务器内存。数据移动器收到扩展拷贝命令后,执行相应功能。它的主要缺点是必须具备特殊的设备。无服务器备份要求使用支持 SCSI-3 扩展复制命令集的智能设备。




    方法一,如下图所示,通过备份服务器发送控制指令,首先对需要备份的数据卷做一个快照(或者其他类似操作),形成一个副本,然后用备份服务器将此快照卷Mount上,利用备份服务器将此卷上的数据备份至备份设备上。



[此贴被 Aoming(aoming) 在 06月28日23时39分 编辑过]

B6层 发表时间: 10-06-28 23:36

回复: 带脚镣跳舞 [tuzi]   版主   登录
不错,不错,LZ继续加油

B7层 发表时间: 10-06-30 21:47

回复: Aoming [aoming]   版主   登录
继续更新ing~~~~~~~~~~~
-------------------------

1.1.5 备份分类

    备份类型主要有三种:
 全备份
 增量备份
 差异备份

  除此之外,有的软件还提供了以下两种备份类型,它们的作用是辅助备份过程,节省关键备份窗口的时间:

 辅助副本备份
 合成完全备份


1.1.5.1 全备份

    全备份将备份所有选定的文件,然后将每个文件标记为已备份(换句话说,存档属性被清除)。如果使用全备份,恢复所有文件时仅需具备最新的备份文件副本或磁带,全备份通常在首次创建备份集时执行。

1.1.5.2 增量备份

    增量备份仅备份那些自上次全备份或增量备份以来创建或更改的文件。增量备份将文件标记为已备份(换句话说,存档属性被清除)。如果结合全备份和增量备份,恢复所有数据时必须具备最新的全备份集和所有增量备份集。

1.1.5.3 差异备份

    差异备份仅备份那些自上次全备份或增量备份以来创建或更改的文件。差异备份不将文件标记为已备份(换句话说,存档属性不被清除)。如果结合全备份和差异备份,恢复所有数据时既需要最新全备份的文件或磁带,也需要最新差异备份的文件或磁带。

1.1.5.4 辅助副本

    辅助(或次要)副本是备份数据的副本。已复制的数据是主要备份副本的真实映像。如果主要备份服务器、设备和媒体丢失或损坏,已复制的数据可用作热备用备份副本。主要副本和次要副本使用不同的媒体,通常使用不同的备份库。

1.1.5.5 合成全备份

    合成备份(Synthetic backup)的含义就是将一个全备份和一些增量备份或者差分备份重新组成一个全备份,这样在恢复的时候,就好像一个全备份恢复一样快捷;而且这部分发生在介质管理器而不是客户端,可以有效利用空间并且减小客户端的负载。一般的用户可能不熟悉合成备份的用法,一般来说,合成备份可以将多个备份整合成一个可用的恢复文件,所以可以将它和传统备份统一起来使用。举例来说,如果用户创建一个三个月一次的全备份、每天一次的差分备份、一周一次的合成备份,那么每个星期一次的合成备份就会把上周的全备份和周内的差分备份,重新合成一个全备份文件,就好像每周一次全备份一样,而这样做的好处是将合成备份的工作移到介质服务器中完成,减少了客户端的负载。


B8层 发表时间: 10-07-10 11:45

回复: Aoming [aoming]   版主   登录
1.1.6 备份技术的评判标准

    在系统正常工作的情况下,数据备份工作毕竟算是系统的一个“额外负担”,或多或少的会给正常业务系统带来一定性能和功能上的影响。所以,架设数据备份系统时,如何尽量减少这种“额外负担”,从而更充分的保证系统正常业务的高效运行,也是数据备份技术发展的一个重要方向。对一个相当规模的系统来说,完全自动化的进行备份工作是对备份系统的一个基本要求。除此以外,CPU占用、磁盘空间占用、网络带宽占用、单位数据量的备份时间等等,这些都是需要重点考察的方面。千万不可小觑备份系统给应用系统带来的影响和对系统的资源占用,在实际环境中,一个备份作业运行起来,可能会占用掉一个中档小型机服务器CPU资源的60%!而一个未经妥善处理的备份日志文件,可能会占用源数据量30%的磁盘空间!这些数字都是来源于完全真是的实际环境,而且属于普遍现象,由此可见,备份系统的选择和优化工作也是一个至关重要的任务。选择的原则也并不复杂,一个好的备份系统,应该能够以很低的系统资源占用率和很少的网络带宽,来进行自动而高速度的数据备份。

    考核备份系统主要有如下12个指标:

1.兼容性:指支持的操作系统和应用软件数量。比如Oracle 815, Oracle 816, Oracle 920, Solaris 7, Solaris 8, AIX 433, AIX 510算7个

2.精确度:指对每个系统可以支持到多精确。比如邮件系统(主要包括Microsoft Exchange, IBM Lotus Notes/Domino, Novell eDirectory)从粗到细可以分为System,Mailbox,Mail,如果支持到System级别,则恢复操作会影响所有用户-所有用户在最后一次备份后的邮件都没有了;如果支持到Mailbox级别,则恢复操作会影响到这个用户-这个用户在最后一次备份后的邮件都没有了;如果支持到Mail级别就非常理想了-不会造成任何损失。

3.性能:指备份和恢复的速度。

4.可管理性:指日常维护成本和回去所要信息的难易程度。

5.一致性(安全性):指备份系统能否保持原来系统一致而不破坏原有的用户权限等。

6. 稳定性(可靠行)

7.扩展性

8.前瞻性

9. 对生产系统的影响

10.硬件设备无关性

11、升级扩展

12、一体化数据安全解决方案:如一期实现备份,二期快照(需要恢复2小时或1小时前的数据),三期归档(数据量日积月累,为了减少主存储负担,需要向二级存储迁移,)四期连续数据保护(实现分钟级别类数据恢复),容灾(操作系统崩溃,同城异地的数据备份及恢复),五期搜索(离线数据和在线数据,类似于谷歌一样的搜索和查询),用户将来增加任何一个功能,只需要增加相应的模块,就完全实现。


B9层 发表时间: 10-07-22 20:51

回复: 帆布鞋 [zhaohnxx]   论坛用户   登录
好东西,是学习和借鉴的好东西,顶。

B10层 发表时间: 11-02-11 17:07

回复: Aoming [aoming]   版主   登录
好久木有发了,过些时候不忙了继续顶起来

B11层 发表时间: 11-06-08 12:21

回复: 九点感触 [gaotianjiu]   论坛用户   登录
迟到的贴

B12层 发表时间: 12-03-07 23:02

论坛: 系统集成

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号