Maison développement back-end Tutoriel Python Comment utiliser python3 pour implémenter le protocole TCP ?

Comment utiliser python3 pour implémenter le protocole TCP ?

Jun 16, 2017 am 10:51 AM

L'éditeur suivant vous présentera un cas simple de serveur et de client (partage) d'implémentation du protocole TCP en python3. L'éditeur pense que c'est plutôt bien, alors je vais le partager avec vous maintenant et le donner comme référence. Suivons l'éditeur et jetons un coup d'œil

Utilisez python3 pour implémenter le protocole TCP, qui est similaire à UDP. UDP est utilisé pour la communication en temps réel, tandis que le protocole TCP est utilisé pour transmettre des fichiers, des commandes et d'autres opérations, car ces données ne peuvent pas être perdues, sinon cela entraînerait des erreurs de fichiers ou une confusion de commandes. Le code suivant simule le client exécutant le serveur via la ligne de commande. Le client saisit la commande, le serveur l'exécute et renvoie le résultat.

TCP (Transmission Control Protocol) : est un protocole de communication de couche de transport fiable, orienté connexion et basé sur le flux d'octets, développé par la définition de l'IETF de la RFC 793.

Client 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()
Copier après la connexion

Client 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服务器
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment changer le protocole TCP dans Win11 ? Détails sur la façon de modifier le protocole TCP dans le système Win11 Comment changer le protocole TCP dans Win11 ? Détails sur la façon de modifier le protocole TCP dans le système Win11 Feb 01, 2024 pm 05:30 PM

L'un des protocoles de transport des systèmes Windows est le protocole TCP, requis lors de l'exécution et de l'utilisation de certaines fonctions. Récemment, certains utilisateurs de Win11 ont rencontré des problèmes avec le protocole TCP et doivent le modifier. Cependant, beaucoup de gens ne savent pas quoi faire pour réussir à le modifier. Afin de résoudre ce problème, ce tutoriel Win11 vous fournira des méthodes de paramétrage détaillées. Veuillez visiter ce site pour connaître les étapes complètes si vous en avez besoin. Comment changer le protocole TCP dans Win11 : 1. Tout d'abord, cliquez avec le bouton droit sur l'icône du réseau dans le coin inférieur droit pour ouvrir les paramètres réseau et Internet. 3. Ensuite, ouvrez davantage d'options de carte réseau dans les paramètres pertinents. 5. Après ouverture, vous pouvez trouver le protocole TCP. Double-cliquez dessus pour l'ouvrir. 7. Vous pouvez également cliquer sur Avancé pour réparer

Protocole TCP et technologie de traitement des E/S asynchrones en langage Go Protocole TCP et technologie de traitement des E/S asynchrones en langage Go Jun 02, 2023 am 09:10 AM

Avec le développement continu de la technologie Internet, le protocole TCP et la technologie de traitement asynchrone des E/S sont devenus de plus en plus importants. En tant que langage de programmation moderne, le langage Go prend naturellement en charge le protocole TCP et la technologie de traitement des E/S asynchrones, ce qui rend le langage Go extrêmement pratique et efficace pour développer des applications réseau. Cet article discutera des avantages du langage Go dans le développement d'applications réseau sous deux aspects : le protocole TCP et la technologie de traitement des E/S asynchrones. 1. Protocole TCP Le protocole TCP est un protocole de transmission réseau fiable et orienté connexion. Il peut assurer la fiabilité de la transmission réseau,

Comment modifier les paramètres du protocole TCP dans le système Windows 11 Comment modifier les paramètres du protocole TCP dans le système Windows 11 Apr 02, 2024 pm 01:43 PM

Dans le système d'exploitation Windows 11, le protocole TCP, en tant qu'élément clé de l'architecture de communication sous-jacente, joue un rôle indispensable dans le fonctionnement stable de nombreuses fonctions du système. Lorsque les utilisateurs ont l'intention d'apporter des ajustements personnalisés au protocole TCP en fonction de leurs propres besoins, ils peuvent être confrontés à une confusion opérationnelle. À cette fin, voici les étapes détaillées sur la façon de modifier les paramètres du protocole TCP dans le système Windows 11. Jetons un coup d'œil. Changer de méthode 1. Cliquez avec le bouton droit sur l'icône de réseau dans la barre des tâches dans le coin inférieur droit, puis sélectionnez « Paramètres réseau et Internet » dans la liste d'options. 2. Après être entré dans la nouvelle interface, cliquez sur l'option « Paramètres réseau avancés » à droite. 3. Cliquez ensuite sur « Plus d'options de carte réseau » dans « Paramètres associés ». 4. de

À quelle couche de protocole TCP appartient-il ? À quelle couche de protocole TCP appartient-il ? Jul 05, 2023 am 10:52 AM

TCP est un protocole de « couche transport ». TCP fait référence à « Transmission Control Protocol », qui est un protocole de communication de couche de transport fiable, orienté connexion et basé sur le flux d'octets, qui complète le protocole Internet. Il définit l'adresse IP utilisée pour identifier les systèmes sur Internet. Transfert de données de bout en bout entre différents nœuds.

Comment installer pip dans python3 Comment installer pip dans python3 Dec 20, 2023 pm 05:42 PM

Étapes d'installation : 1. Assurez-vous que Python3 a été installé et est accessible via la ligne de commande ; 2. Ouvrez le terminal et entrez la commande "python3 -m Ensurepip --upgrade" pour installer pip ; à partir du site Web officiel de Python ; 4. Extrayez le package d'installation pip téléchargé dans un répertoire ; 5. Ouvrez le terminal et accédez au répertoire pip décompressé 6. Exécutez la commande "python3 setup.py install" pour installer pip.

Développement Workerman : Comment implémenter une messagerie instantanée basée sur le protocole TCP Développement Workerman : Comment implémenter une messagerie instantanée basée sur le protocole TCP Nov 07, 2023 am 10:34 AM

Développement Workerman : Comment implémenter une messagerie instantanée basée sur le protocole TCP Introduction : Avec le développement de l'ère Internet, la messagerie instantanée joue un rôle important dans notre vie quotidienne. La messagerie instantanée basée sur le protocole TCP est devenue une solution courante. Cet article présentera comment utiliser le framework Workerman pour implémenter la messagerie instantanée basée sur le protocole TCP en écrivant des exemples de code spécifiques. 1. Introduction à Workerman Workerman est un framework de services PHPSocket hautes performances

Comment utiliser le protocole TCPF pour la communication réseau en langage Go Comment utiliser le protocole TCPF pour la communication réseau en langage Go Mar 28, 2024 am 08:06 AM

Comment utiliser le protocole TCP pour la communication réseau en langage Go. En langage Go, nous pouvons utiliser la méthode fournie par le package net pour implémenter le protocole TCP pour la communication réseau. En établissant une connexion TCP, nous pouvons réaliser la transmission de données entre le client et le serveur. Ce qui suit présente en détail comment utiliser le protocole TCP pour la communication réseau dans le langage Go, y compris les implémentations côté client et côté serveur, ainsi que des exemples de code spécifiques. 1.Client TCP en langage Go, nous pouvons le construire grâce à la fonction Dial fournie par le package net

Développement Workerman : Comment implémenter un système de gestion de fichiers à distance basé sur le protocole TCP Développement Workerman : Comment implémenter un système de gestion de fichiers à distance basé sur le protocole TCP Nov 07, 2023 am 08:46 AM

Développement Workerman : Comment mettre en œuvre un système de gestion de fichiers à distance basé sur le protocole TCP Introduction : Avec l'essor du cloud computing et du travail à distance, les systèmes de gestion de fichiers à distance sont devenus les besoins de plus en plus d'entreprises et de particuliers. Dans cet article, nous présenterons comment utiliser le framework Workerman pour implémenter un système de gestion de fichiers à distance basé sur le protocole TCP et fournirons des exemples de code spécifiques. 1. Préparation Avant de commencer à écrire du code, nous devons préparer certains outils et environnements nécessaires. Tout d'abord, assurez-vous d'avoir installé un environnement PHP,

See all articles