|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: ISCSI: Urgent Flag requirement violates TCP.Matt Wakeley wrote: > The intended manner that is to be implemented is this: > > 1. iSCSI sends the first byte of the iSCSI message to TCP, with the byte marked > "urgent". You can do this today using any off the shelf TCP stack, including MS > windows. > 2. iSCSI sends the rest of the bytes of the iSCSI message to TCP with normal > delivery. > > If TCP coalesces, fine. But eventually, a TCP segment will be sent that will > contain a byte referenced by the urgent pointer. At this point, the remote side > (and any LAN analyzers on the network) will be able to "sync up" on iSCSI > messages. Maybe I'm thick. But when I look at the socket API for UNIX I can't see how a receiver can use Urgent data create a synchronisation point within a TCP stream. Firstly I open a SOCK_STREAM (this creates a TCP socket). Then I call recv() with the MSG_OOB option (which allows me to receive Urgent data). Now when I'm sent Urgent data I can collect it, but I have no idea of its relationship with the rest of the TCP stream. If I don't use MSG_OOB then the socket implementation may do one of two things: - leave the Urgent data in-stream (effectively, not implement Urgent) - move the Urgent to the head of the receive queue. Neither option allows the socket API to use Urgent data for marking a message boundary. Without using MSG_OOB you don't even know *which* data is Urgent. As I pointed out in my posting on FCIP, modifying the operating system's TCP path to supply a socket service for use by an iSCSI client isn't acceptable, either from a commercial or from a performance point of view. This WG also needs to sync with the Firewall Traversal WG if it wants support for a modified TCP service. I strongly recommend that the WG discard this approach and use TCP as no more than a octet stream service. This will require an adaption layer for iSCSI over TCP, where the adaption layer marks SCSI protocol data unit boundaries. Regards, Glen -- Glen Turner Network Engineer (08) 8303 3936 Australian Academic and Research Network glen.turner@aarnet.edu.au http://www.aarnet.edu.au/ -- The revolution will not be televised, it will be digitised
Home Last updated: Tue Sep 04 01:06:30 2001 6315 messages in chronological order |