python3 udp TCP筆記和實踐

2022-06-10 10:48:07 字數 1565 閱讀 4164

udp (user datagram protocol, 使用者資料報協議) 是一種無連線,不可靠,基於資料的傳輸層通訊協議。

udp的通訊過程與tcp相比比較為簡單, 不需要複雜的三次握手四次揮手,提現了無連線;

udp傳輸速度比tcp快, 但容易丟包,資料到達準確性無保證, 缺乏擁塞控制, 秉承盡最大努力交付的遠著,提現了不可靠;

udp的無連線與不可靠特性注定無法採用位元組流的通訊模式,由協議名中[datagram] 與socket型別中的[sock_dgram]即可提現他基於資料報的通訊模式。

#

服務端import

socket

#第乙個引數為 socket.af_inet,代表採用 ipv4 協議用於網路通訊,

#第二個引數為 socket.sock_dgram,代表採用 udp 協議用於無連線的網路通訊。

soc =socket.socket(socket.af_inet,socket.sock_dgram)

#服務端才需要繫結ip和埠

soc.bind("

127.0.0.1

",6000)

print("

udp bound on port 6000")

while

true:

data, addr = soc.recvfrom("

1024")

print("

receive:%s %s

"%(addr, data))

if data == b"

exit":

soc.sendto(b

"goodbye

", addr)

continue

soc.sendto(b

"hello %s

"%data,addr)

soc.close()

#

客戶端sclient =socket.socket(socket.af_inet,socket.sock_dgram)

非常詳細的udp解析,來自:

python通過UDP TCP方式傳送資料

udp傳送資料 示例 往192.168.149.128 linux 上的udp 8888上傳送資料,在128伺服器上,利用nc監聽8888埠,接收測試資料 import socket client socket socket.socket socket.af inet,socket.sock dgr...

python學習筆記3

1 字串的格式化操作 format variable format 是格式的樣式,variable 是要被格式化的變數 format 有如下幾種形式 o 將數值轉換為八進位制 x 將數值轉換為十六進製制 d 整數轉換符號 s 字串轉換符號 如下 o 100 144 o 100 加入乙個 號可輸出標準...

python 學習筆記3

2014 10 23 三種內建的資料結構 列表 元組和字典 list len list list.sort 修改列表本身,而不是返回乙個修改後的列表 列表時可變的,字串不可變 for item in list 遍歷 del list 0 刪除專案,自動補齊。print語句的結尾的逗號消除列印的換行符...