Rumah pembangunan bahagian belakang Tutorial Python 如何利用python3来实现TCP协议?

如何利用python3来实现TCP协议?

Jun 16, 2017 am 10:51 AM

下面小编就为大家带来一篇python3实现TCP协议的简单服务器和客户端案例(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

利用python3来实现TCP协议,和UDP类似。UDP应用于及时通信,而TCP协议用来传送文件、命令等操作,因为这些数据不允许丢失,否则会造成文件错误或命令混乱。下面代码就是模拟客户端通过命令行操作服务器。客户端输入命令,服务器执行并且返回结果。

TCP(Transmission Control Protocol 传输控制协议):是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。

TCP客户端


from socket import *

host = '192.168.48.128'
port = 13141
addr = (host,port)
bufsize=1024

tcpClient = socket(AF_INET,SOCK_STREAM) # 这里的参数和UDP不一样。
tcpClient.connect(addr) #由于tcp三次握手机制,需要先连接

while True:
  data = input('>>> ').encode(encoding="utf-8")
  if not data:
    break
  # 数据收发和UDP基本一致
  tcpClient.send(data) 
  data = tcpClient.recv(bufsize).decode(encoding="utf-8") 
  print(data)

tcpClient.close()
Salin selepas log masuk

TCP客户端


from socket import *
from time import ctime
import os 

host = ''
port = 13140
bufsize = 1024
addr = (host,port)

tcpServer = socket(AF_INET,SOCK_STREAM)
tcpServer.bind(addr)
tcpServer.listen(5) #这里设置监听数为5(默认值),有点类似多线程。

while True:
  print('Waiting for connection...')
  tcpClient,addr = tcpServer.accept() #拿到5个中一个监听的tcp对象和地址
  print('[+]...connected from:',addr)

  while True:
    cmd = tcpClient.recv(bufsize).decode(encoding="utf-8") 
    print('  [-]cmd:',cmd)
    if not cmd:
      break
    ###这里在cmd中执行来自客户端的命令,并且将结果返回###
    cmd = os.popen(cmd) ###os.popen(cmd)对象是file对象子类,所以可以file的方法
    cmdResult = cmd.read()
    cmdStatus = cmd.close()
    #################################################
    data = cmdResult if (not cmdStatus) else "ERROR COMMAND"
    tcpClient.send(data.encode(encoding="utf-8"))

  tcpClient.close() #
  print(addr,'End')
tcpServer.close() #两次关闭,第一次是tcp对象,第二次是tcp服务器
Salin selepas log masuk

Atas ialah kandungan terperinci 如何利用python3来实现TCP协议?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menukar protokol tcp dalam win11? Butiran cara menukar protokol tcp dalam sistem win11 Bagaimana untuk menukar protokol tcp dalam win11? Butiran cara menukar protokol tcp dalam sistem win11 Feb 01, 2024 pm 05:30 PM

Salah satu protokol pengangkutan dalam sistem Windows ialah protokol TCP, yang diperlukan apabila menjalankan dan menggunakan fungsi tertentu. Baru-baru ini, beberapa pengguna Win11 menghadapi masalah dengan protokol TCP dan perlu mengubah suainya. Walau bagaimanapun, ramai orang tidak tahu cara membuat pengubahsuaian yang berjaya. Untuk menyelesaikan masalah ini, tutorial Win11 ini akan memberikan anda kaedah tetapan terperinci. Sila lawati tapak ini untuk langkah lengkap jika anda memerlukannya. Cara menukar protokol TCP dalam win11: 1. Pertama, klik kanan ikon rangkaian di sudut kanan bawah untuk membuka tetapan rangkaian dan internet. 3. Kemudian buka lebih banyak pilihan penyesuai rangkaian di bawah tetapan berkaitan. 5. Selepas membuka, anda boleh mencari protokol tcp Klik dua kali untuk membukanya. 7. Anda juga boleh mengklik Lanjutan untuk membaiki

Protokol TCP dan teknologi pemprosesan IO tak segerak dalam bahasa Go Protokol TCP dan teknologi pemprosesan IO tak segerak dalam bahasa Go Jun 02, 2023 am 09:10 AM

Dengan pembangunan berterusan teknologi Internet, protokol TCP dan teknologi pemprosesan IO tak segerak telah menjadi semakin penting. Sebagai bahasa pengaturcaraan moden, bahasa Go secara semula jadi menyokong protokol TCP dan teknologi pemprosesan IO tak segerak, yang menjadikan bahasa Go sangat mudah dan cekap dalam membangunkan aplikasi rangkaian. Artikel ini akan membincangkan kelebihan bahasa Go dalam pembangunan aplikasi rangkaian dari dua aspek: protokol TCP dan teknologi pemprosesan IO tak segerak. 1. Protokol TCP Protokol TCP ialah protokol penghantaran rangkaian berorientasikan sambungan yang boleh dipercayai. Ia boleh memastikan kebolehpercayaan penghantaran rangkaian,

Bagaimana untuk menukar tetapan protokol TCP dalam sistem Windows 11 Bagaimana untuk menukar tetapan protokol TCP dalam sistem Windows 11 Apr 02, 2024 pm 01:43 PM

Dalam sistem pengendalian Windows 11, protokol TCP, sebagai bahagian penting dalam seni bina komunikasi asas, memainkan peranan yang sangat diperlukan dalam operasi yang stabil bagi banyak fungsi dalam sistem. Apabila pengguna berhasrat untuk membuat pelarasan diperibadikan pada protokol TCP mengikut keperluan mereka sendiri, mereka mungkin menghadapi kekeliruan operasi. Untuk tujuan ini, berikut ialah langkah terperinci tentang cara menukar tetapan protokol TCP dalam sistem Windows 11. Mari kita lihat. Tukar kaedah 1. Klik kanan ikon rangkaian dalam bar tugas di penjuru kanan sebelah bawah, dan kemudian pilih "Tetapan Rangkaian dan Internet" dalam senarai pilihan. 2. Selepas memasuki antara muka baharu, klik pilihan "Tetapan Rangkaian Lanjutan" di sebelah kanan. 3. Kemudian klik "Lagi Pilihan Penyesuai Rangkaian" dalam "Tetapan Berkaitan". 4. daripada

Lapisan protokol mana yang dimiliki oleh tcp? Lapisan protokol mana yang dimiliki oleh tcp? Jul 05, 2023 am 10:52 AM

tcp ialah protokol "lapisan pengangkutan". TCP merujuk kepada "Protokol Kawalan Penghantaran", yang berorientasikan sambungan, boleh dipercayai, protokol komunikasi lapisan aliran bait TCP melengkapkan Protokol Internet Ia mentakrifkan alamat IP yang digunakan untuk mengenal pasti sistem di Internet -to-end pemindahan data antara nod yang berbeza.

Bagaimana untuk memasang pip dalam python3 Bagaimana untuk memasang pip dalam python3 Dec 20, 2023 pm 05:42 PM

Langkah pemasangan: 1. Pastikan Python3 telah dipasang dan boleh diakses melalui baris arahan 2. Buka terminal dan masukkan arahan "python3 -m ensurepip --upgrade" untuk memasang pip; daripada tapak web rasmi Python;

Pembangunan pekerja: Cara melaksanakan pemesejan segera berdasarkan protokol TCP Pembangunan pekerja: Cara melaksanakan pemesejan segera berdasarkan protokol TCP Nov 07, 2023 am 10:34 AM

Pembangunan pekerja: Cara melaksanakan pemesejan segera berdasarkan protokol TCP Pengenalan: Dengan perkembangan era Internet, pemesejan segera memainkan peranan penting dalam kehidupan seharian kita. Pemesejan segera berdasarkan protokol TCP telah menjadi penyelesaian biasa. Artikel ini akan memperkenalkan cara menggunakan rangka kerja Workerman untuk melaksanakan pemesejan segera berdasarkan protokol TCP dengan menulis contoh kod tertentu. 1. Pengenalan kepada Workerman Workerman ialah rangka kerja perkhidmatan PHPSocket berprestasi tinggi

Cara menggunakan protokol TCPF untuk komunikasi rangkaian dalam bahasa Go Cara menggunakan protokol TCPF untuk komunikasi rangkaian dalam bahasa Go Mar 28, 2024 am 08:06 AM

Cara menggunakan protokol TCP untuk komunikasi rangkaian dalam bahasa Go Dalam bahasa Go, kita boleh menggunakan kaedah yang disediakan oleh pakej bersih untuk melaksanakan protokol TCP untuk komunikasi rangkaian. Dengan mewujudkan sambungan TCP, kami boleh mencapai penghantaran data antara pelanggan dan pelayan. Berikut akan memperkenalkan secara terperinci cara menggunakan protokol TCP untuk komunikasi rangkaian dalam bahasa Go, termasuk pelaksanaan sisi klien dan pelayan, serta contoh kod khusus. 1.Pelanggan TCP dalam bahasa Go, kita boleh membinanya melalui fungsi Dail yang disediakan oleh pakej bersih

Pembangunan pekerja: Bagaimana untuk melaksanakan sistem pengurusan fail jauh berdasarkan protokol TCP Pembangunan pekerja: Bagaimana untuk melaksanakan sistem pengurusan fail jauh berdasarkan protokol TCP Nov 07, 2023 am 08:46 AM

Pembangunan pekerja: Cara melaksanakan sistem pengurusan fail jauh berdasarkan protokol TCP Pengenalan: Dengan peningkatan pengkomputeran awan dan kerja jauh, sistem pengurusan fail jauh telah menjadi keperluan lebih banyak perusahaan dan individu. Dalam artikel ini, kami akan memperkenalkan cara menggunakan rangka kerja Workerman untuk melaksanakan sistem pengurusan fail jauh berdasarkan protokol TCP dan memberikan contoh kod khusus. 1. Persediaan Sebelum mula menulis kod, kita perlu menyediakan beberapa alatan dan persekitaran yang diperlukan. Pertama, pastikan anda mempunyai persekitaran PHP yang dipasang,

See all articles