複製鏈接
請複製以下鏈接發送給好友

套接口

鎖定
套接口(Sockets),通訊術語,通訊的基石是套接口,一個套接口是通訊的一端。在這一端上你可以找到與其對應的一個名字。一個正在被使用的套接口都有它的類型和與其相關的進程。套接口存在於通訊域中。通訊域是通過套接口通訊來處理一般的線程而引進的一種抽象概念。
中文名
套接口
外文名
Sockets
性    質
通訊的基石
領    域
計算機

目錄

套接口技術簡介

套接口通常和同一個域中的套接口交換數據(數據交換也可能穿越域的界限,但這時一定要執行某種解釋程序)。Windows Sockets規範支持單一的通訊域,即Internet域。各種進程使用這個域互相之間用Internet協議族來進行通訊(Windows Sockets 1.1以上的版本支持其他的域,例如Windows Sockets 2)。

套接口分類

套接口可以根據通訊性質分類;這種性質對於用户是可見的。應用程序一般僅在同一類的套接口間通訊。不過只要底層的通訊協議允許,不同類型的套接口間也照樣可以通訊。
用户目前可以使用兩種套接口,即流套接口和數據報套接口。流套接口提供了雙向的,有序的,無重複並且無記錄邊界的數據流服務。數據報套接口支持雙向的數據流,但並不保證是可靠,有序,無重複的。也就是説,一個從數據報套接口接收信息的進程有可能發現信息重複了,或者和發出時的順序不同。數據報套接口的一個重要特點是它保留了記錄邊界。對於這一特點,數據報套接口採用了與現在許多包交換網絡(例如以太網)非常類似的模型。
在Linux下,所有的I/O操作都是通過讀寫文件描述符而產生的,文件描述符是一個和打開的文件相關聯的整數,這個文件並不只包括真正存儲在磁盤上的文件,還包括一個網絡連接、一個命名管道、一個終端等,而套接口就是系統進程和文件描述符通信的一種方法。目前最常用的套接口是:字節流套接口(基於TCP)和數據報套接口(基於UDP),當然還有原始套接口(原始套接口提供TCP套接口和UDP套接口所不提供的功能,如構造自己的TCP或UDP分組)等。