建立UDP套接字流程

2021-09-25 15:04:43 字數 1485 閱讀 5512

"""

udp套接字服務端

"""from socket import

*# 建立資料報套接字

sockfd = socket(af_inet,sock_dgram)

# 繫結位址

server_addr =

('0.0.0.0'

,8888

)sockfd.bind(server_addr)

# 訊息收發

while

true

: data,addr = sockfd.recvfrom(

1024

)print

("收到的訊息:"

,data.decode())

sockfd.sendto(b'thank'

,addr)

# 關閉套接字

sockfd.close(

)

"""

udp套接字 客戶端

"""from socket import

*# 伺服器位址

host =

'176.215.155.159'

port =

8888

addr =

(host,port)

# 建立套接字

sockfd = socket(af_inet,sock_dgram)

# 收發訊息

while

true

: data =

input

("mas>>")if

not data:

break

sockfd.sendto(data.encode(

),addr)

msg,addr = sockfd.recvfrom(

1024

)print

("from server:"

,msg.decode())

# 關閉套接字

sockfd.close(

)

"""

套接字常用屬性

"""from socket import

*# 建立乙個tcp套接字

s = socket(

)s.bind(

('176.215.155.170'

,8886))

s.listen(3)

# c,addr = s.accept()

print

("位址型別:"

,s.family)

print

("套接字型別:"

,s.type

)print

(,s.getsockname())

print

("描述符:"

,s.fileno())

print

(,s.getpeername(

))

UDP套接字程式設計

與面向連線的協議相比,面向無連線協議極為不同。其中乙個重要的不同點就是客戶端與伺服器之間不必建立連線。對於udp套接字程式設計而言,伺服器建立套接字後,呼叫bind 函式將套接字與準備接收資料的介面繫結在一起。和tcp程式設計不同的是,應用程式不必呼叫listen 和accept 函式等待客戶端的連...

UDP套接字程式設計

udp是使用者資料報協議,與tcp協議一樣,在網路中處理資料報,是一種無連線的傳輸層協議,具有不可靠性,udp有不提供資料報分組 組裝和不能對資料報進行排序的缺點,也就是說,當報文傳送之後,是無法得知其是否安全完整到達的。基於udp的客戶端伺服器 伺服器 include include includ...

關於udp套接字

setsockopt so reuseaddr 同一終端先後兩次執行udp server,該選項無影響。兩個 或多個 終端同時執行udp server,配置該選項時,僅第乙個終端執行成功 不配置時,所有終端均可成功執行udp server。udp客戶端呼叫connect 實現 不發起三次握手 僅將服...