Appearance
Appearance
SCSI 是一种协议,主要用于与硬盘和磁带驱动器等存储设备通信。由于 TCP/IP 正在各个领域取代许多传输方式,SCSI 现在通常承载在 iSCSI 之上。
SASI (Shugart Associates System Interface) 的标准化版本(Internet Archive:IBM SCSI history)
SCSI 最初在 20 世纪 80 年代早期到中期开发,作为一种新的标准化总线和协议,用于将设备连接到主机。它最初被设计用于连接许多不同类型的设备,例如硬盘、磁带驱动器、打印机、扫描仪,甚至处理器设备(因此可以在两台主机之间通过 SCSI 运行例如 IP 或类似的东西),但主要用于磁盘和磁带访问。
多年来,它曾是 Macintosh 计算机上唯一可用的外部驱动器/扫描仪连接方式。
直到今天,它仍然是一种在高端工作站和主机中非常流行的协议,因为 SCSI 设备通常比低端 ATA 设备具有更好的可靠性和性能。
最初,SCSI 定义了从电气层一直到应用层的整个栈,但后来被拆分为三层:SCSI Command Sets、SCSI protocol 和 SCSI transport。SCSI Architecture Model 定义了一个抽象过程调用模型。各种 SCSI command sets、protocols 和 transport standards 分别定义了该架构各层的具体实现。
如今 SCSI 的常见传输方式包括 FibreChannel、iSCSI、USB、FireWire、parallel SCSI,以及 ATAPI over ATA。
各种连接器和标准的字母汤:Seagate - SCSI Revision Levels
HyperSCSI:HyperSCSI 是一种直接在 Ethernet frames 之上传输 SCSI 的协议
NDMP:SCSI 有时承载在 NDMP (Network Data Management Protocol) 之上,特别是在备份应用程序需要与连接到另一台 NDMP host 的 tape library 通信时
iSCSI:iSCSI 是一种较新的协议,用于在 TCP/IP 之上传输 SCSI,从而创建 IP SAN
FibreChannel:Fibre Channel 是一种用于 SCSI 的高端传输协议,主要用于构建企业级 SAN
USB:SCSI 使用 USB 作为大容量存储设备的传输方式,例如 memory sticks、mp3 players 和许多数码相机。
No. Time Source Destination Protocol Info 36 1.630854 10.1.1.2 10.1.1.101 iSCSI SCSI: Data In LUN: 0x00 (Get Configuraion Response Data) SCSI: Response LUN: 0x00 (Get Configuraion) (Good)Frame 36 (98 bytes on wire, 98 bytes captured)Ethernet II, Src: 00:04:e2:22:5a:03 (00:04:e2:22:5a:03), Dst: 00:30:bd:b2:54:09 (00:30:bd:b2:54:09)Internet Protocol, Src: 10.1.1.2 (10.1.1.2), Dst: 10.1.1.101 (10.1.1.101)Transmission Control Protocol, Src Port: 3260 (3260), Dst Port: 1086 (1086), Seq: 745, Ack: 757, Len: 44Reassembled TCP Segments (92 bytes): #34(48), #36(44)iSCSI (SCSI Data In)SCSI Payload (Get Configuraion Response Data) LUN: 0x0000 Command Set:CD-ROM (0x05) MMC Opcode: Get Configuraion (0x46) Request in: 33 Response in: 36 Data Length: 40 Current Profile: DVD-R (0x0011) Feature: Profile List (0x0000) ..00 00.. = Version: 0 .... ..1. = Persistent: 0x01 .... ...1 = Current: 0x01 Additional Length: 32 Profile:CD-ROM Profile:CD-R Profile:CD-RW Profile:DVD-ROM Profile:DVD-R [CURRENT PROFILE] Profile:DVD-RW Sequential recording Profile:DVD+RW Profile:DVD+RSCSI Response (Get Configuraion) LUN: 0x0000 Command Set:CD-ROM (0x05) MMC Opcode: Get Configuraion (0x46) Request in: 33 Time from request: 0.201103000 seconds Status: Good (0x00)来自几年前我编写的一个 iSCSI/MMS emulator 上刻录 DVD 的捕获。
SCSI dissector 具备部分功能,它实现了大量用于 SBC(hard disk)、SSC(tape drive)、OSD(object based storage)和 MMC(cdrom/dvd)设备的 SCSI commands。
Wireshark 还可以计算 SCSI 的 service response time statistics:
参见 SCSI_Preferences
SampleCaptures/iscsi-scsi-data-cdrom.zip 包含 MS iSCSI Initiator 与 Linux iSCSI Enterprise Target 之间 iSCSI traffic 的完整日志,其中导出了一个真实的 SCSI CD-ROM。该 CD-ROM 中有一张 Fedora Core 3 安装 CD。
SampleCaptures/iscsi-scsi-10TB-data-device.zip 包含 MS iSCSI Initiator 与 Linux iSCSI Enterprise Target 之间 iSCSI traffic 的完整日志,其中导出了一个 10TB block device。请参阅 READ_CAPACITY_16、READ_16 和 WRITE_16 的使用。
SampleCaptures/iscsi-tapel.gz 包含 Linux open-iscsi initiator 与 Linux iSCSI Enterprise Target 之间 iSCSI traffic 的一些操作日志。目标是一个 EXABYTE EXB480 Tape library。执行了各种 mtx 操作。
scsi-osd-example-001.pcap 是 IBM osd_initiator_3_1_1(一个 OSD tester application)操作 IBM 的 ibm-osd-sim(一个 OSD target device 模拟器)的 trace。涉及的传输方式是 iSCSI,并使用了相对少见的新 SCSI 特性:bidirectional data transfer。该 trace 捕获了初始 iSCSI Logins,经由 INQUIRY 和 REPORT LUNS,随后是一系列来自 SCSI-OSD command set 的命令,例如 FORMAT OSD、LIST、CREATE PARTITION、CREATE、WRITE、READ、REMOVE、REMOVE PARTITION 和 SET KEY。
完整的 SCSI display filter fields 列表可以在 display filter reference 中找到
只显示包含 SCSI PDUs 的流量:
scsi捕获时不能直接过滤 SCSI。不过,你通常可以对 SCSI 的某些传输方式使用捕获过滤器。
能否有人查看 mailinglist,看看是否有任何已发布的 FibreChannel 或 NDMP captures 包含 SCSI?然后询问发布者是否可以把这些已经公开的 captures 放到 sample captures 页面上?或者,是否有人愿意捐赠包含 SCSI 的 captures?--ronnie 一个包含 IP over SCSI over iSCSI over IP 的捕获会很有意思。
Imported from https://wiki.wireshark.org/Small_Computer_System_Interface on 2020-08-11 23:24:48 UTC