用户名: 密码: 验证码:
iSCSI协议及其WINDOWS启动器的研究和实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着信息技术的发展,传统的本地存储解决方案已经不能满足工业界的要求,因此网络存储技术得到了蓬勃的发展。存储区域网(SAN)作为一种重要的网络存储技术得到越来越多的关注和研究。传统SAN技术主要基于光纤通道(FC)协议,它具有价格昂贵和有效距离短等缺点。在IP网络发展已经日益成熟的今天,需要一种能够有效利用IP网络来解决网络存储问题的协议。iSCSI协议不需要使用光纤通道协议,完全使用TCP/IP作为其传输层协议,因此具有成本低和有效距离长等优点。经过几年时间的发展,iSCSI协议已经被IETF制定为标准协议,成为一种重要的网络存储解决方案。
     本文开始介绍了SCSI协议,简单比较了FCIP,iFCP和iSCSI几种IP SAN协议的构成和异同点。然后,深入分析了iSCSI协议,侧重于iSCSI协议命令格式,地址命名,会话管理和错误恢复等关键方面。在这之后,介绍了WINDOWS系统上驱动编程技术,重点分析了和iSCSI启动器实现相关的SCSI微型端口驱动,WMI和TDI编程技术等。在这些工作的基础上,本文讨论了如何在WINDOWS操作系统上设计和实现一个高效稳定的iSCSI启动器。在讨论中,文章主要描述了iSCSI启动器体系结构的设计思路,介绍了启动器实现中的一些具体问题,并且详细分析了解决这些问题的办法。最后,文章对实现的iSCSI启动器拟定了完整的功能,稳定性和性能测试方案,并在文中记录了测试结果。根据测试数据,本文在文章结束之前提出了进一步优化和改进iSCSI启动器的可行方案。
With the development of the Information technology, traditional local storage solution fails to meet the industrial requirements. So the network storage technology has developed a lot. Storage area network (SAN) has attracted a lot of focus and research as an important network storage technology. Traditional SAN mainly bases on Fibre Channel protocol, which possesses several disadvantages, such as high cost and short effective distance. Considering that IP network is a mature technology today, it is important to find out a new protocol which can utilize the IP network to solve the problem. iSCSI protocol doesn't rely on Fibre Channel. It uses TCP/IP as its transport protocol, which makes it to be a good candidate to construct low-cost, long-distance storage network. iSCSI has been adopted by IETF as a network storage standard and become an important solution for network storage.
     Firstly, this article gives out an overview for the SCSI Protocol and the common IP SAN protocols and compares the difference among them. And then it analyzes the iSCSI protocol. It focuses on some important aspects, such as the formats of the PDU, the management of sessions and the recovery for errors. After that this article introduces the background about WINDOWS device driver programming, including SCSI miniport driver, WMI and TDI programming skills, which are correlated with the implementation of the iSCSI initiator. Based on the prior work, this article discusses how to design and implement an iSCSI initiator on WINDOWS. It describes the consideration for the architecture of the iSCSI initiator and some techniques used to solve the problems met during the process of implementation. Finally, this article establishes a solid proposal to do the function, stability and performance test and writes down the statistics. It also works out some plan to optimize and improve the iSCSI initiator.
引文
[1] 谢长生,数字时代信息存储技术的发展,计算机世界,2001,34:C4~C5
    [2] Marc Farley,SAN 存储区域网络,孙功星等译,北京:机械工业出版社,2001.269~293
    [3] Clark. T, Designing Storage Area Networks, Addison-Wesley, 1999. ISBN: 0-201-61584-3
    [4] RFC3720, Internet Small Computer Systems Interface (iSCSI)
    [5] Charles Monia, Franco Travostino, Wayland Jeong, Mark Edwards," iFCP-A Protocol for Internet Fibre Channel Networking", Internet draft, Dec. 2002.
    [6] RFC 3821, Fibre Channel Over TCP/IP (FCIP), Jul. 2004
    [7] Meth, K.Z., Satran, J., Design of the iSCSI protocol Mass Storage Systems and Technologies, (MSST 2003), Proceedings. 20th IEEE/11th NASA Goddard Conference 2003 :116~122
    [8] a RDMA-enabled I/O cache architecture for clustered network servers Peng Gu, Jun Wang, Proceedings of the international workshop on Storage network architecture and parallel I/Os SNAPI, Sep. 2004
    [9] SCSI Architecture Model-2 (SAM-2), Revision 24, Sep. 2002
    [10] SCSI Block Commands-2 (SBC-2), Revision 16, Nov. 2004
    [11] SCSI Primary Commands-2 (SPC-2), Revision 20, Jul.2001
    [12] 欧阳兴华,计算机系统接口-SCSI,北京:电子工业出版社,1994
    [13] Follett, D.R, Distributed storage networking architectures: fibre channel, iSCSI,ethernet, infiniband, hyper transport, rapid IO and 3GIO collide in the data center Network Computing and Applications, NCA 2001, IEEE International Symposium, 2001.157~159
    [14] Anidi, S. Nujeerallee, Storage area networking – an introduction and future development trends, BT Technology Journal, Oct. 2002 Volume 20 Issue 4
    [15] James Kempf, Robert St. Pierre, Pete St. Pierre: Service Location Protocol for Enterprise Networks: Implementing and Deploying a Dynamic Service Finder, John Wiley & Sons, ISBN: 0-471-31587-7
    [16] RFC 4171, Internet Storage Name Service (iSNS), Sep.2005
    [17] UNH-iSCSI, http://unh-iscsi.sourceforge.net
    [18] MOF Syntax for WMI Data and Event Blocks, http://msdn2.microsoft.Com/en-US/library/ a490251.aspx, 2006
    [19] RFC 2945, The SRP Authentication and Key Exchange System, Sep.2000
    [20] RFC1994, PPP Challenge Handshake Authentication Protocol(CHAP), Aug.1996
    [21] RFC2401, Security Architecture for the Internet Protocol, Nov. 1998
    [22] RFC1321, The MD5 Message-Digest Algorithm, Apr.1992
    [23] Bert den Boer; Antoon Bosselaers, Collisions for the Compression Function of MD5, In Advances in Cryptology, Proceedings of EUROCRYPT '93, 1994: 293--304
    [24] RFC3174,US Secure Hash Algorithm 1 (SHA1), Sep.2000
    [25] RFC4634,US Secure Hash Algorithms (SHA and HMAC-SHA), Jul.2006
    [26] C++ for Kernel Mode Drivers: Pros and Cons, http://www.microsoft.com/whdc/driver/kernel/KMcode.mspx, 2004
    [27] Kernel-Mode Driver Framework (KMDF), http://www.microsoft.com/whdc/driver/wdf/KMDF.mspx, 2004
    [28] WINDOWS Vista Driver Document, Microsoft, 2006
    [29] A Cache Primer, Paul Genua, Freescale Semiconductor, 2004
    [30] Xubin He, Qing Yang, Ming Zhang, Introducing SCSI-to-IP cache for storagearea networks Parallel Processing, Proceedings. Internationa Conference, 2002, 203-210
    [31] Oney. Walter, Programming the Microsoft WINDOWS Driver Model 2nd Edition, Microsoft Press, ISBN:0-7356-1803-8
    [32] Mark E. Russinovich, David A. Solomon, Microsoft WINDOWS Internal, Micorsoft Press, ISBN: 0735619174
    [33] Art Baker Jerry Lozano, The WINDOWS 2000 Device Driver Book: A Guide for Programmers 2nd Edition, Prentice Hall PTR, ISBN:0-13-020431-5
    [34] 姜戬,谢长生,贺军,WINDOWS NT 环境下缓存磁盘技术驱动程序的设计与实现,计算机工程与科学,2001,23(2):90~93
    [35] David Luckham, The Power of Events - An Introduction to Complex Event Processingin Distributed Enterprise Systems, Addison-Wesley, ISBN: 0-201-72789-7
    [36] Nickolai Zeldovich, Alexander Yip, Frank Dabek, Robert T. Morris, David Mazieres, and Frans Kaashoek, Multiprocessor support for event-driven programs, Proceedings of the USENIX 2003

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700