Python 網路資料傳輸協議 TCP 程式設計
什麼是 協議 ?
協議:英文名稱 protocal,是多方協商計議之後得出的 約定、規則、規範
常見網路傳輸協議:
HTTP: hyper text transfer protocal HTTPS:hyper text transfer protocal secure FTP: file transfer protocal
HTTP 超文字傳輸協議 HTTPS 提供安全通道的超文字傳輸協議 FTP 檔案傳輸協議 TELNET 虛擬終端協議 SSH 安全外殼協議 POP3 郵局協議(版本 3) SMTP 簡單郵件傳輸協議 IP 資料包交換協議 TCP 端對端傳輸協議 UDP 資料廣播協議 DNS 域名解析協議,可以透過 nslookup 檢視域名解析資訊 DHCP 動態主機配置協議
國際標準化組織根據使用者從操作應用程式到資料經過物理線路的傳輸通訊,
將網路資料傳輸劃分成了七層模型
應用層 —> 表示層 —> 會話層 —> 傳輸層 —> 網路層 —> 資料鏈路層 —> 物理層
PYTHON 傳輸層網路程式設計
socket 是一種計算機網路資料結構,中文譯名:套接字
TCP服務端開發
import socket # 1、定義服務端主機資訊[ip, port] print("初始化伺服器 》》》》") HOST = '' PORT = 8765 ADDRESS = (HOST, PORT) BUFFER = 1024 # 2、建立可操作的TCP協議的socket物件 print("初始化伺服器主機套接字物件 》》》》") tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 3、將socket物件和服務端主機繫結 print("繫結伺服器主機 》》》》") tcp_socket.bind(ADDRESS) # 4、開始監聽 print("啟動伺服器 》》》》") tcp_socket.listen(125) # 5、等待客戶端連線 while True: print("等待客戶端連線 =======") client_socket, client_addr = tcp_socket.accept() print("客戶端{}連線成功".format(client_addr)) # 6、收發訊息 while True: msg = client_socket.recv(BUFFER) try: print("client客戶端1:{}".format(msg.decode("utf-8"))) except: print("client客戶端2:{}".format(msg.decode("gbk"))) # print(msg) if msg == b'bye': print("客戶端退出") client_socket.close() break # 7、關閉【服務端一般情況下不要求關閉】 tcp_socket.close()
TCP客戶端開發
import socket # 定義要連線的伺服器資訊 print("定位伺服器資訊...") HOST = "192.168.11.195" PORT = 8888 ADDRESS = (HOST, PORT) BUFFER = 1024 # 建立 TCP 客戶端套接字物件 tcp_client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 連線指定伺服器 tcp_client.connect(ADDRESS) # 和伺服器進行資料互動 while True: # 接收伺服器的資訊 info = tcp_client.recv(BUFFER) print("server:", info.decode("utf-8")) # 給伺服器傳送訊息 msg = input("enter message:") tcp_client.send(msg.encode("utf-8")) if msg.lower() == 'bye': tcp_client.close() print("客戶端退出...") break
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4560/viewspace-2814991/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python 基於 TCP 傳輸協議的網路通訊實現PythonTCP協議
- 計算機網路之八:TCP協議(2) TCP可靠傳輸的實現計算機網路TCP協議
- 傳輸控制協議/網際網路協議(TCP / IP)是什麼意思?-VeCloud協議TCPCloud
- Android程式設計師必知必會的網路通訊傳輸層協議——UDP和TCPAndroid程式設計師協議UDPTCP
- 用python實現TCP協議傳輸功能PythonTCP協議
- TCP傳輸協議詳解TCP協議
- 網路協議之:基於UDP的高速資料傳輸協議UDT協議UDP
- TCP協議如何保證資料的順序傳輸TCP協議
- 傳輸層協議 TCP 和 UDP協議TCPUDP
- 資料通訊與網路 第五版第24章 傳輸層協議-TCP協議部分要點協議TCP
- TCP/IP五層模型-傳輸層-TCP協議TCP模型協議
- 基於TCP協議的Socket網路程式設計( )TCP協議程式設計
- Java 網路程式設計 – TCP協議基本步驟Java程式設計TCP協議
- python網路-Socket之TCP程式設計(26)PythonTCP程式設計
- 計算機網路之TCP可靠傳輸計算機網路TCP
- TCP/IP協議 - 網路層TCP協議
- 網路通訊協議-TCP協議詳解!協議TCP
- Java:基於TCP協議網路socket程式設計(實現C/S通訊)JavaTCP協議程式設計
- 計算機網路之七:TCP協議(1)計算機網路TCP協議
- TCP傳輸協議如何進行流量控制?TCP協議
- TCP協議之網路延時TCP協議
- 4種傳輸協議設定,檔案傳輸協議如何選擇?協議
- 網路程式設計協議(TCP和UDP協議,黏包問題)以及socketserver模組程式設計協議TCPUDPServer
- 計算機網路之TCP/IP協議簡介計算機網路TCP協議
- PYTHON 黑帽程式設計 1.5 使用 WIRESHARK 練習網路協議分析Python程式設計協議
- 好程式設計師Python培訓分享udp和tcp協議介紹程式設計師PythonUDPTCP協議
- 通過故事引申網路協議TCP協議TCP
- TCP/IP網路協議棧:乙太網資料包結構、802.3、MTUTCP協議
- 網路協議之:加密傳輸中的NPN和ALPN協議加密
- WebRTC:資料傳輸相關協議簡介Web協議
- DDTP 分散式資料傳輸協議白皮書分散式協議
- TCP傳輸資料長度TCP
- Java入門:TCP協議傳送/接收資料實現JavaTCP協議
- 計算機網路資料篇(二)——快速理解網路協議計算機網路協議
- 傳輸層協議協議
- 計算機網路學習筆記(10) TCP/IP協議棧 之TELNET協議計算機網路筆記TCP協議
- TCP/IP 協議及網路分層模型TCP協議模型
- 基於TCP/UDP的Socket程式設計,HTTP/HTTPS協議TCPUDP程式設計HTTP協議