共用方式為


SAN 不需要 Windows Sockets SPI 函式

本節說明不需要 SAN 服務提供者實作的 Windows Sockets SPI 函式。 這些函式定義于 Ws2spi.h 中。

WSPAddressToString
Windows Sockets 參數會使用 TCP/IP 提供者,將 SOCKADDR 結構的所有元件轉換成人類可讀取的數值字串,代表通訊端的 IP 位址。

WSPAsyncSelect
Windows Sockets 交換器會在內部使用其會話通訊協定,視需要處理通訊端網路事件的通知。

WSPCancelBlockingCall
Windows Sockets 參數會在內部處理進行中的封鎖要求取消。 因此,它永遠不會取消對 SAN 服務提供者 DLL 的封鎖呼叫。 Windows Sockets 參數可以:

關閉 SAN 通訊端以取消未完成的連線要求。 SAN 服務提供者 DLL 應該中止連線要求。

如果交換器在內部緩衝處理該資料,或等候這些要求在應用程式緩衝區中傳送或從應用程式緩衝區傳輸,則取消未完成的傳送和接收要求。 針對冗長的 RDMA 傳輸,交換器可以完全關閉連線。

Microsoft Windows SDK中的 Windows Sockets SPI 檔會警告,如果封鎖呼叫已取消,應用程式就無法依賴所保留的連線。 在此情況下,在取消封鎖要求之後,保證在通訊端上成功的唯一呼叫是 WSPCloseSocket

WSPGetPeerName 當交換器建立 與 WSPConnect 呼叫中的對等連線,或接受 WSPAccept 呼叫中對等的連線時,Windows Sockets 參數會快取對等的 IP 位址。 參數會視需要將此快取值提供給應用程式。

WSPGetSockName 當交換器將位址與 WSPBind 呼叫中的通訊端建立關聯,或接受 WSPAccept 呼叫中的對等連線時,Windows Sockets 參數會快取通訊端的本機 IP 位址。 參數會視需要將此快取值提供給應用程式。

WSPJoinLeaf Windows Sockets 交換器會獨佔使用 TCP/IP 提供者來處理多點會話。

WSPRecvDisconnect Windows Sockets 會在內部處理通訊端上的資料接收終止,並從遠端合作物件擷取任何連入的中斷連線資料。

WSPRecvFrom 目前的 Windows Sockets Direct 版本不支援處理使用使用者資料包通訊協定接收資料包的 SAN 服務提供者, (UDP) 語意。 因此,Windows Sockets 參數會在連線的通訊端上呼叫 SAN 服務提供者的 WSPRecv 函式,以接收具有傳輸控制通訊協定 (TCP) 語意的資料流程資料。

WSPSelect Windows Sockets 交換器會在內部使用其會話通訊協定,以與 TCP/IP 提供者合作,視需要判斷通訊端的狀態。

WSPSendDisconnect Windows Sockets 交換器會在內部處理通訊端連線終止,並將中斷連線資料傳送給遠端合作物件。

WSPSendTo 目前的 Windows Sockets Direct 版本不支援處理使用使用者資料包通訊協定傳送資料包的 SAN 服務提供者, (UDP) 語意。 因此,Windows Sockets 參數會在連線的通訊端上呼叫 SAN 服務提供者的 WSPSend 函式,以傳送具有傳輸控制通訊協定的資料流程資料 (TCP) 語意。

WSPShutdown Windows Sockets 交換器會在內部停用通訊端上的接收和傳輸資料。

WSPStartup Windows Sockets 參數不會呼叫 WSPStartup 來啟動 SAN 服務提供者的作業。 參數會改用 SAN 服務提供者的 WSPStatupEx 函式。

WSPStringToAddress Windows Sockets 參數會使用 TCP/IP 提供者,將人類可讀取的數值字串轉換成通訊端位址結構, (SOCKADDR) 適合傳遞至採用這類結構的 Windows Sockets 常式。