How iSCSI and NVMe/TCP Exchange Data
The following are the high-level steps for the end devices to exchange data using iSCSI and NVMe/TCP protocols over a TCP/IP network (Figure 8-1). 以下是终端设备通过 TCP/IP 网络使用 iSCSI 和 NVMe/TCP 协议交换数据的高级步骤(图 8-1)。
Figure 8-1 iSCSI and NVMe/TCP data exchange via a TCP/IP network
1. A host (or initiator) and the target must be aware of the IP addresses of each other via a manual configuration or an automated discovery, such as the use of a Centralized Discovery Controller (CDC) for NVMe/TCP environments. 主机(或启动器)和目标必须通过手动配置或自动发现(如在 NVMe/TCP 环境中使用集中发现控制器 (CDC))知道对方的 IP 地址。
2. After knowing the IP address of the target, an initiator establishes a TCP connection with the target using a three-way handshake using SYN, SYN-ACK, and ACK. This is no different from the standard approach of establishing TCP connections. For I/O operations, generally, the host (initiator) acts as the TCP client by sending the SYN to the target (controller). 在知道目标的 IP 地址后,启动程序使用 SYN、SYN-ACK 和 ACK 三路握手与目标建立 TCP 连接。这与建立 TCP 连接的标准方法并无不同。对于 I/O 操作,主机(启动程序)通常作为 TCP 客户端向目标(控制器)发送 SYN。
3. The initiator and target may open multiple TCP connections between them. These connections are identified by source IP, source port, destination IP, and destination port. Typically, the TCP server port is preassigned by Internet Assigned Numbers Authority (IANA) based on an upper layer. For example, the iSCSI server (target) uses TCP port 3260, and NVMe/TCP server (controller) uses TCP port 4420. The client (initiator or host) may use an unused port as a source port. By using a different source port number, an initiator can open multiple TCP connections to the same target. A TCP connection on the end devices is identified as a TCP flow on a network. Note that for identifying a network flow, it is important to include the layer 4 protocol, such as TCP, with the port numbers because other protocols at layer 4, such as UDP, may use the same port numbers for different purposes. 启动程序和目标程序之间可以打开多个 TCP 连接。这些连接由源 IP、源端口、目标 IP 和目标端口标识。通常,TCP 服务器端口由互联网编号分配机构(