python網路程式設計 TCP與UDP

2021-09-02 22:00:06 字數 1742 閱讀 7009

tcp與udp的區別:

tcp速度慢,穩定。udp速度快,不穩定,易丟資料。

udp:

#客戶端**

>>> import socket

>>> clientsocket=socket.socket(socket.af_inet,socket.sock_dgram)#建立套接字

>>> sendtoaddr=("192.168.1.111",7561)#接收方的位址,埠

>>> clientsocket.sendto(b"hello,python",sendtoaddr)#傳送資料

12#服務端方**

>>> import socket

>>> serversocket=socket.socket(socket.af_inet,socket.sock_dgram)

>>> addr=("",7561) #本地位址,埠,位址通常不用謝

>>> serversocket.bind(addr)# 繫結本地位址,埠號

>>> data,addr=serversocket.recvfrom(1024) #接收到的資料和位址

>>> data

b'hello,python'

>>> addr

('192.168.1.104',55598)

tcp:

#客戶端**

>>> import socket

>>> clientsocket=socket.socket(socket.af_inet,socket.sock_stream) #建立套接字

>>> sendtoaddr=("192.168.1.106",8899) #伺服器端位址

>>> clientsocket.connect(sendtoaddr) #與伺服器進行連線

>>> clientsocket.send(b"hello,python") #傳送資料

12>>> recvdata=clientsocket.recv(1024) #接收資料

>>> print(recvdata)

b'get information'

>>> clientsocket.close()

#伺服器端**

in [1]: import socket

in [2]: serversocket=socket.socket(socket.af_inet,socket.sock_stream)

in [3]: addr=("",8899)

in [4]: serversocket.bind(addr) #繫結

in [5]: serversocket.listen(5) #監聽,引數5可以是其他數字,在linux中沒有影響,mac中有影響

in [6]: clientsocket,clientinfo=serversocket.accept() #等待客戶端的連線,連線後返回乙個客戶端套接字物件

in [7]: recvdata=clientsocket.recv(1024)#接收來自客戶端的資料

in [8]: print(recvdata)

b'hello,python'

in [9]: clientsocket.send(b"get information") #向客戶端傳送資料

out[9]: 15

in [10]: serversocket.close()

python網路程式設計 TCP網路程式設計

tcp程式設計 客戶端 import socket 1 套接字 tcp socket socket.socket socket.af inet,socket.sock stream 2 建立鏈結 tcp socket.connect 172.27.35.1 8080 3 傳送資訊 tcp socke...

python網路程式設計 TCP

一 網路通訊模式 對於網路通訊,現在遵循的是tcp ip協議組。而現在設計的通訊模式中,主要使用的是客戶端 伺服器程式設計,所謂的客戶端就是我們使用者所用的軟體,而服務端則是程式開發人員根據客戶端的需要設計的服務模式,為了是滿足客戶端的要求,實現和客戶端進行正常通訊。二 套接字 通訊的端點 對於tc...

Python 網路程式設計練習 TCP程式設計

socket是網路程式設計的乙個抽象概念。通常我們用乙個socket表示 開啟了乙個網路鏈結 而開啟乙個socket需要知道目標計算機的ip位址和埠號,再指定協議型別即可。大多數連線都是可靠的tcp連線。建立tcp連線時,主動發起連線的叫客戶端,被動響應連線的叫伺服器。客戶端 do client.p...