Python之網路程式設計(一)
阿新 • • 發佈:2019-01-03
CS架構 客戶端服務端架構
服務端:提供服務的
客戶端:享受服務的
BS架構:瀏覽器和服務端
網路通訊流程:
集線器:將所有連線上它的電腦全部聯通起來
交換機:升級版的集線器
網絡卡:接收處理電訊號
Mac地址:網路裝置的全球唯一標示,又稱為實體地址
廣播 單播
廣播風暴
Ipv4地址:4個點分十進位制 還有ipv6
作用:劃分廣播域
子網掩碼:計算ip地址段,或者判斷ip地址是否屬於同一地址段
DHCP協議:自動獲取ip地址
DNS:域名解析
Arp協議:通過ip地址獲取mac,因為ip地址不固定,mac是全球唯一的
路由器:轉發訊息,管理內網
路由協議:計算路由轉發的最優路徑
埠:標示電腦上某個應用程式
Ip地址+埠 = 能夠唯一鎖定一臺電腦和這個電腦上的某個應用程式
閘道器:把關用的,意思就說所有對外的請求都要經過閘道器
NAT技術:網路地址轉換,內網ip地址轉換為公網或者說外網的ip地址
Socket:用於網路通訊的模組,獨立於語言
#服務端 import socket Server = socket.socket() Ip_port = ('192.168.12.11', 8003) # 127.0.0.1 本機的迴環地址 Server.bind(ip_port) # 繫結ip地址和埠 Server.listen() #監聽ip Conn, addr = server.accept() From_client_msg = conn.recv(1024) Print(from_client_msg.decode('utf - 8')) Conn.send('你好'.encode('utf - 8')) Conn.close() Server.close()
#客戶端 import socket Client = socket.socket() Ip_port = ('192.168.12.11', 8003) Client.connect(ip_port) Client.send('嗨'.encode('utf-8')) From_server_msg = client.recv(1024) Print(from_server_msg.decode('utf-8')) Client.close()