本文介紹 Windows Sockets 中使用的術語“端口”和“地址”。端口
端口標識唯一的進程,一個進程可以有一個服務。在當前的上下文中,端口與支持 Windows Sockets 的應用程序關聯。之所以關聯,是為了唯一標識每個 Windows Sockets 應用程序,以便可以在一台計算機上同時運行多個 Windows Sockets 應用程序。
某些端口專為公共服務(如 FTP)保留。除非您正在提供此類公共服務,否則應避免使用那些端口。Windows Sockets 規范詳細說明了這些保留的端口。WINSOCK.H 文件也列出了這些端口。
若要讓 Windows Sockets DLL 為您選擇可用的端口,請傳遞 0 作為端口值。MFC 將選擇一個大於十進制數 1,024 的端口值。可以通過調用 CAsyncSocket::GetSockName 成員函數檢索 MFC 選擇的端口值。套接字地址
每個套接字對象都與網絡上的一個網際協議 (IP) 地址相關聯。該地址通常是計算機名稱,如“ftp.microsoft.com”,或是以點分隔的數字,如“128.56.22.8”。
當您尋求創建套接字時,通常不必指定自己的地址。
注意計算機可能有多個網卡(或應用程序某天可能運行在這樣的計算機上),而每個網卡表示一個不同的網絡。如果是這樣,您可能需要給出一個地址以指定套接字將使用哪個網卡。這必然會成為一個高級用法並且可能導致可移植性問題。