Socket 通訊協定

Socket 通訊協定提供應用程式資料從一部機器到另一部機器 (或從同一部機器內的一個處理程序到另一個處理程序) 的網路傳輸。

應用程式會在 socket() API 的 protocol 參數上指定傳輸提供者。

AF_INET 和 AF_INET6 透過 TCP/IP 的 Socket 也可以指定 SOCK_RAW 類型,這表示 Socket 會直接與稱為 Internet Protocol (IP) 的網路層進行通訊。 TCP 或 UDP 傳輸提供者通常會與此層通訊。 當您使用 SOCK_RAW Socket 時,應用程式會指定 0 到 255 之間的任何通訊協定 (TCP 和 UDP 通訊協定除外)。 然後,當機器在網路上進行通訊時,此通訊協定號碼會在 IP 標頭中流動。 事實上,應用程式是傳輸提供者,因為它必須提供 UDP 或 TCP 傳輸通常提供的所有傳輸服務。

對於 AF_UNIX 和 AF_UNIX_CCSID 位址系列,通訊協定規格實際上沒有意義,因為沒有涉及任何通訊協定標準。 同一機器上兩個處理程序之間的通訊機制是該機器特有的。