Python 13 網路程式設計 UDP模型

2021-09-23 07:51:53 字數 1148 閱讀 6942

import socket

# socket.af_inet (ipv4)

# socket.sock_stream (tcp)

# socket.sock_dgram (udp)

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

# 監聽 ip:port

host_name = socket.gethostname(

)host = socket.gethostbyname(host_name)

print

(host)

s.bind(

(host,

8008))

# 迴圈 每次有新的連線觸發

while

true

:# 無連線

# tcp 需要連線、獲取乙個可讀寫的 "流"

# udp 無連線、直接接受資料報

# 請求處理

# data 當前資料報

# addr 當前連線ip:port

data, addr = s.recvfrom(

1024

)# 響應處理

s.sendto(data, addr)

# udp 的用法和 tcp 類似,只是 udp 是 無連線的,比 tcp 省略了乙個步驟。

import socket

host_name = socket.gethostname(

)host = socket.gethostbyname(host_name)

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

# 無連線

# 請求 | 傳送資料到服務端

s.sendto(b'hello'

,(host,

8008))

# 響應 | 接受服務端返回到資料

data = s.recv(

1024

).decode(

'utf-8'

)print

(data)

# hello

# 關閉 socket

s.close(

)

五 網路程式設計 UDP 不黏包)

一 udp不黏包 會丟包 1.不黏包 丟包 udp user datagram protocol,使用者資料報協議 是無連線的,面向訊息的,提供高效率服務。不會使用塊的合併優化演算法,由於udp支援的是一對多的模式,所以接收端的skbuff 套接字緩衝區 採用了鏈式結構來記錄每乙個到達的udp包,在...

作業13 網路

2.1 簡述你想為你的系統增加什麼網路功能?設計思路是什麼?2.2 系統通過網路傳遞了什麼資訊?資訊的格式是什麼?2.3 你的網路模組使用了tcp還是udp技術?模組中的常用類是什麼?threadedechoserver類 3.1 統計本週完成的 量 周次總 量 新增 量 總檔案數 新增檔案數10 ...

Note1 網路程式設計概述,UDP程式設計

一,什麼是網路程式設計?所謂的網路程式設計就是,讓在不同的電腦上的軟體能夠進行資料傳遞,即程序之間的通訊 二,tcp ip協議簡介 為了把全世界的所有不同型別的計算機都連線起來,就必須規定一套全球通用的協議,為了實現網際網路這個目標,網際網路協議簇 internetprotocolsuite 就是通...