| With the development of hardware storage, Software delays have become the bottleneck to the overall storage system. Particularly, in iSCSI-based storage system, more faster disks in the target-end system are configured to make up a target node and mounts to the initiator-end system via IP networks. The initiator-end system treates the remote devices as a locally accessed device. But there are single I/O request queue in the initiator-end system and requests initiated by the initiator-end system will go through the traditional single I/O path before they are re-requested by the target-end system, which cannot exploit the serviceability of the target multi-disks adequately. Besides, there exist unnecessary software delays in the initiator-end system because devices in the initiator-end system are virtual and when the I/O requests are sent to the target-end system they will be re-requested to the actual device.This paper introduces the metadata-request queue to handle metadata I/O requests and scheduling differs from the request queue that exists in the initiator-end system of iSCSI-based storage system, given the different characteristics of metadata and data I/O requests. Instead of dispatching all requests, including metadata I/O requests and data I/O requests, exclusively to the single queue and unified scheduling, a new metadata-request queue is introduced for every logical device to handle metadata I/O requests and is implemented with immediate response mode to eliminate waiting delays, considering the characteristics of small size, high frequency and scattered accesses that require for real-time response. Data requests in the data-request queue are delivered to the scheduling queue and queuing them in an I/O wait state, which is known as plugged-unplugged mechanism.The test results show that the separation of data and metadata request queueca n improve the I/O read and write performance. |