1.socket程式設計的概念
2.socket( )類詳解
3.tcp伺服器端**實現
import socket
from pprint import pprint
# 建立tcp連線
socket_instance = socket.socket(socket.af_inet, socket.sock_stream)
socket_instance.bind(('127.0.0.1', 9000))
# 作業系統可以掛起的最大連線數,如果同一時間的連線數超過5,拒絕其他的連線
socket_instance.listen(5)
# 迴圈接收新的客戶端連線
while true:
# 接收客戶端的請求,且獲取新socket物件和客戶端資訊
new_socket, client_addr = socket_instance.accept()
# 迴圈接收已連線的客戶端傳送的資料
while true:
# 從快取區中讀取1024位元組資訊
data = new_socket.recv(1024).decode()
# 返回客戶端的一下資訊
pprint(data)
# 返回客戶端位址 ('127.0.0.1', 51978)
pprint(client_addr)
# 傳送資料
new_socket.sendall('server has received your msg'.encode())
4.tcp客戶端**實現import socket
# 建立tcp連線
socket_instance = socket.socket(socket.af_inet, socket.sock_stream)
socket_instance.connect(('127.0.0.1', 9000))
while true:
cmd = input("請輸入您想說的話:")
socket_instance.send(cmd.encode())
data = socket_instance.recv(1024)
print(data)
5.udp伺服器端**實現import socket
# 建立udp連線
socket_instance = socket.socket(socket.af_inet, socket.sock_dgram)
socket_instance.bind(('127.0.0.1', 9000))
# 迴圈接收新的客戶端連線
while true:
# 接收客戶端的請求,且獲取新socket物件和客戶端資訊
data, client_addr = socket_instance.recvfrom(1024)
print(data.decode())
socket_instance.sendto('server has receive your data'.encode(), client_addr)
6.udp客戶端**實現import socket
# 建立socket例項
socket_instance = socket.socket(socket.af_inet, socket.sock_dgram)
while true:
data = input("請輸入您想說的話:")
socket_instance.sendto(data.encode(), ('127.0.0.1', 9000))
data, server_addr = socket_instance.recvfrom(1024)
print(data.decode())
7.伺服器端socket例項物件建立連線的方法有:
listen()
:開始監聽tcp傳入連線;
accept()
:接受tcp鏈結並返回(new_socket, address),其中new_socket是新的套接字物件,可以用來接收和傳送資料,address是鏈結客戶端的位址;
8.客戶端socket例項物件建立連線的方法有:
9.客戶端和伺服器端socket例項物件都有的方法:
10.tcp 和udp的區別有哪些
11.udp 伺服器端的實現步驟
12.udp客戶端的實現步驟
參考:
Day 27 socket程式設計
為什麼揮手需要四次 因為揮手過程中沒有資料產生 udp協議為什麼不安全 發完資料不等確認,然後就會把資料刪除 首先我們要知道socket是對傳輸層及以下 傳輸層,網路層,資料鏈層,物理層 的封裝,它是一組藉口,在設計模式中,socket其實就是乙個門面模式,他把複雜的tcp ip協議族隱藏在sock...
socket程式設計
一直以為serversocket accept之後客戶端才能發資訊,實驗後得出如下結論 1 serversocket沒有accept時,client是可以傳送資訊到server端的。2 serversocket accept之後,正在處理訊息時,client也是可以傳送資訊到server端。如果se...
Socket程式設計
對tcp ip udp socket程式設計這些詞你不會很陌生吧?隨著網路技術的發展,這些詞充斥著我們的耳朵。那麼我想問 1.什麼是tcp ip udp?2.socket在 呢?3.socket是什麼呢?4.你會使用它們嗎?什麼是tcp ip udp?tcp ip transmission cont...