socket學習 一 socket模組屬性

2021-10-05 16:15:29 字數 1454 閱讀 5666

屬性名稱

描述資料屬性

af_unix、af_inet、af_inet6、 af_netlink、af_tipc

python 中支援的套接字位址家族

so_stream、so_dgram

套接字型別(tcp=流,udp=資料報)

has_ipv6

指示是否支援 ipv6 的布林標記

異常error

套接字相關錯誤

herror

主機和位址相關錯誤

gaierror

位址相關錯誤

timeout

超時時間

函式socket()

以給定的位址家族、套接字型別和協議型別(可選)建立乙個套接字物件

socketpair()

以給定的位址家族、套接字型別和協議型別(可選)建立一對套接字物件

create_connection()

常規函式,它接收乙個位址(主機名,埠號)對,返回套接字物件

fromfd()

以乙個開啟的檔案描述符建立乙個套接字物件

ssl()

通過套接字啟動乙個安全套接字層連線;不執行證書驗證

getaddrinfo()

獲取乙個五元組序列形式的位址資訊

getnameinfo()

給定乙個套接字位址,返回(主機名,埠號)二元組

getfqdn()

返回完整的網域名稱

gethostname()

返回當前主機名

gethostbyname()

將乙個主機名對映到它的 ip 位址

gethostbyname_ex()

gethostbyname()的擴充套件版本,它返回主機名、別名主機集合和 ip 位址列表

gethostbyaddr()

將乙個 ip 位址對映到 dns 資訊;返回與 gethostbyname_ex()相同的 3 元組

getprotobyname()

將乙個協議名(如『tcp』)對映到乙個數字

getservbyname()/getservbyport()

將乙個服務名對映到乙個埠號,或者反過來;對於任何乙個函式來說,協議名都是可 選的

ntohl()/ntohs() 將來自網路的整數轉換為主機位元組順序

htonl()/htons() 將來自主機的整數轉換為網路位元組順序

inet_aton()/inet_ntoa()

將 ip 位址八進位制字串轉換成 32 位的包格式,或者反過來(僅用於 ipv4 位址)

inet_pton()/inet_ntop()

將 ip 位址字串轉換成打包的二進位制格式,或者反過來(同時適用於 ipv4 和 ipv6 位址)

getdefaulttimeout()/setdefaulttimeout()

以秒(浮點數)為單位返回預設套接字超時時間;以秒(浮點數)為單位設定預設套接 字超時時間

Socket的學習 一

應用層通過傳輸層進行資料通訊時,tcp和udp會遇到同時為多個應用程式程序提供併發服務的問題.多個tcp連線或多個應用程式程序可能需要通過同乙個tcp協議埠傳輸資料.為了區別不同的應用程式程序和連線,許多計算機作業系統為應用程式與tcp ip協議互動提供了稱為套接字 socket 的介面,區分不同應...

socket系列(一) socket實現推送

設想 用socket實現伺服器與客戶端的tcp長連線,保持outputstream inputstream連線,通過輸入輸出流實現資訊實時推送 public classtestpush socket.shutdownoutput serviceos.close socket.close suppre...

學習socket通訊總結(一)

最近一直在用linux,很早就想學習linux網路程式設計。今天剛好抽出一段時間,學習了簡單的socket通訊,寫了乙個簡單的客戶端 伺服器通訊 現在將今天學習的內容做乙個總結。一 相關概念說明 struct sockaddr struct sockaddr in int socket int do...