unix域套接字--流式
1. 標頭檔案
#include
2. 資料結構
struct sockaddr_un ;
3. 服務端流程
1. 建立套接字
sockfd = socket(af_unix, sock_stream, 0);
2. 繫結位址到socket
struct sockaddr_un server_addr;
server_addr.sun_family = af_unix;
strcpy(server_addr.sun_path, "mypath");
ret = bind(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr));
3. 設定為監聽模式
ret = listen(sockfd, 10);
4. 接收請求
clientfd = accept(sockfd, null, null);
5. 接收資料
ret = recv(clientfd, buf, sizeof(buf), 0);
6. 傳送資料
ret = send(clientfd, buf, len, 0);
7. 關閉套接字
close(clientfd);
close(sockfd);
4. 客戶端流程
1. 建立套接字
sockfd = socket(af_unix, sock_stream, 0);
2. 連線伺服器
struct sockaddr_un server_addr;
server_addr.sun_family = af_unix;
strcpy(server_addr.sun_path, "mypath");
ret = connect(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr));
3. 傳送資料
ret = send(clientfd, buf, len, 0);
4. 接收資料
ret = recv(clientfd, buf, sizeof(buf), 0);
5. 關閉套接字
close(sockfd);
UNIX網路程式設計 流(三十一)
unix網路程式設計 流 三十一 一 概述 了解網路協議在流框架中的實現機制。使用傳輸提供者介面開發乙個簡單的tcp客戶程式。tpi是在基於流的系統上xti和套接字通常使用的傳輸層訪問介面。二 概貌 流在程序和驅動程式之間提供全雙公的鏈結。流頭由一些核心例程構成,應用程序針對流描述符執行系統呼叫 例...
《UNIX網路程式設計 卷1》 筆記 UNIX域協議
unix域協議並不是乙個實際的協議族,而是在單個主機上客戶程序和伺服器程序之間通訊的一種方法。unix域使用的套接字結構如下 struct sockaddr un int main int argc,char argv 執行結果如下 可以看到繫結的路徑名 tmp 123 現在是乙個套接字檔案。uni...
UNIX網路程式設計
在unix network programming 的 3.7 inet pton and inet ntop functions 中提到中有如下兩個巨集定義 define inet addrstrlen 16 for ipv4 dotted decimal define inet6 addrstr...