ホームページ バックエンド開発 Python チュートリアル Python3 を使用して TCP プロトコルを実装するにはどうすればよいですか?

Python3 を使用して TCP プロトコルを実装するにはどうすればよいですか?

Jun 16, 2017 am 10:51 AM

以下のエディターは、Python3 で TCP プロトコルを実装する簡単なサーバーとクライアントのケース (共有) を提供します。編集者はこれが非常に良いものだと思ったので、皆さんの参考として今から共有します。エディターをフォローして見てみましょう

python3 を使用して、UDP に似た TCP プロトコルを実装します。 UDP はリアルタイム通信に使用され、TCP プロトコルはファイル、コマンド、その他の操作の送信に使用されます。これは、これらのデータが失われることが許されないためです。そうしないと、ファイル エラーやコマンドの混乱が発生します。次のコードは、コマンド ラインを通じてサーバーを操作するクライアントをシミュレートします。クライアントがコマンドを入力すると、サーバーがそれを実行して結果を返します。

TCP (伝送制御プロトコル): は、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()
ログイン後にコピー

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服务器
ログイン後にコピー

以上がPython3 を使用して TCP プロトコルを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

win11でTCPプロトコルを変更するにはどうすればよいですか? win11システムでtcpプロトコルを変更する方法の詳細 win11でTCPプロトコルを変更するにはどうすればよいですか? win11システムでtcpプロトコルを変更する方法の詳細 Feb 01, 2024 pm 05:30 PM

Windows システムのトランスポート プロトコルの 1 つは TCP プロトコルです。これは、特定の機能を実行および使用するときに必要です。最近、一部の Win11 ユーザーが TCP プロトコルに関する問題に遭遇し、それを変更する必要があります。しかし、多くの人は変更を成功させる方法を知りません。この問題を解決するために、この Win11 チュートリアルでは詳細な設定方法を説明します。必要な場合は、このサイトにアクセスして完全な手順を確認してください。 win11 で TCP プロトコルを変更する方法: 1. まず、右下隅にあるネットワーク アイコンを右クリックして、ネットワークとインターネットの設定を開きます。 3. 次に、関連する設定でさらにネットワーク アダプター オプションを開きます。 5. 開くと、tcp プロトコルが表示されるので、ダブルクリックして開きます。 7. [詳細設定]をクリックして修復することもできます。

Go言語によるTCPプロトコルと非同期IO処理技術 Go言語によるTCPプロトコルと非同期IO処理技術 Jun 02, 2023 am 09:10 AM

インターネット技術の継続的な発展に伴い、TCP プロトコルと非同期 IO 処理技術の重要性が増しています。最新のプログラミング言語として、Go 言語は TCP プロトコルと非同期 IO 処理テクノロジを当然サポートしているため、Go 言語はネットワーク アプリケーションの開発において非常に便利で効率的です。この記事では、ネットワーク アプリケーション開発における Go 言語の利点を、TCP プロトコルと非同期 IO 処理テクノロジの 2 つの側面から説明します。 1. TCP プロトコル TCP プロトコルは、信頼性の高い接続指向のネットワーク伝送プロトコルです。ネットワーク伝送の信頼性を確保できます。

Windows 11システムでTCPプロトコル設定を変更する方法 Windows 11システムでTCPプロトコル設定を変更する方法 Apr 02, 2024 pm 01:43 PM

Windows 11 オペレーティング システムでは、基礎となる通信アーキテクチャの重要な部分として TCP プロトコルが、システム内の多くの機能の安定した動作に不可欠な役割を果たします。ユーザーが自分のニーズに応じて TCP プロトコルを個別に調整しようとすると、操作上の混乱に直面する可能性があります。この目的を達成するために、ここでは Windows 11 システムで TCP プロトコル設定を変更する方法の詳細な手順を説明します。変更方法 1. 右下のタスクバーのネットワークアイコンを右クリックし、オプションリストから「ネットワークとインターネットの設定」を選択します。 2. 新しいインターフェースに入ったら、右側の「ネットワークの詳細設定」オプションをクリックします。 3. 「関連設定」の「その他のネットワークアダプタオプション」をクリックします。 4.の

Python3にpipをインストールする方法 Python3にpipをインストールする方法 Dec 20, 2023 pm 05:42 PM

インストール手順: 1. Python3 がインストールされていて、コマンド ラインからアクセスできることを確認します; 2. ターミナルを開き、「python3 -m ensurepip --upgrade」コマンドを入力して pip をインストールします; 3. pip インストール パッケージをダウンロードします公式 Python Web サイトから; 4. ダウンロードした pip インストール パッケージをディレクトリに抽出します; 5. ターミナルを開き、解凍された pip ディレクトリに移動します; 6. "python3 setup.py install" コマンドを実行して pip をインストールします。

tcp はプロトコルのどの層に属しますか? tcp はプロトコルのどの層に属しますか? Jul 05, 2023 am 10:52 AM

tcp は「トランスポート層」プロトコルです。 TCP は、接続指向で信頼性の高い、バイト ストリーム ベースのトランスポート層通信プロトコルである「伝送制御プロトコル」を指します。TCP は、インターネット プロトコルを補完します。インターネット上のシステムを識別するために使用される IP アドレスを定義します。主に、エンドポイントを保証します。 -異なるノード間のエンドツーエンドのデータ転送。

Workerman 開発: TCP プロトコルに基づいたインスタント メッセージングを実装する方法 Workerman 開発: TCP プロトコルに基づいたインスタント メッセージングを実装する方法 Nov 07, 2023 am 10:34 AM

Workerman の開発: TCP プロトコルに基づいてインスタント メッセージングを実装する方法 はじめに: インターネット時代の発展に伴い、インスタント メッセージングは​​私たちの日常生活で重要な役割を果たしています。 TCP プロトコルに基づくインスタント メッセージングは​​、一般的なソリューションになっています。この記事では、Workerman フレームワークを使用して、TCP プロトコルに基づくインスタント メッセージングを実装する方法を、具体的なコード例を書いて紹介します。 1. Workerman の概要 Workerman は、高性能 PHPSocket サービス フレームワークです

Workerman 開発: TCP プロトコルに基づいたファイル転送を実装する方法 Workerman 開発: TCP プロトコルに基づいたファイル転送を実装する方法 Nov 07, 2023 am 09:14 AM

Workerman 開発: TCP プロトコルに基づいてファイル転送を実装する方法、具体的なコード例が必要です はじめに: 今日のインターネット時代において、ファイル転送は日常の仕事や生活に不可欠な部分となっています。 TCPプロトコルに基づくファイル転送は、伝送効率が高く信頼性の高い方式です。この記事では、Workerman フレームワークを使用して TCP プロトコルに基づくファイル転送サービスを開発する方法を紹介し、具体的なコード例を示します。 1. ワーカーマンとは何ですか?労働者

Workerman 開発: TCP プロトコルに基づいたリモート ファイル管理システムを実装する方法 Workerman 開発: TCP プロトコルに基づいたリモート ファイル管理システムを実装する方法 Nov 07, 2023 am 08:46 AM

Workerman の開発: TCP プロトコルに基づいたリモート ファイル管理システムを実装する方法 はじめに: クラウド コンピューティングとリモート ワークの台頭により、リモート ファイル管理システムのニーズがますます多くの企業や個人に高まっています。この記事では、Workerman フレームワークを使用して TCP プロトコルに基づくリモート ファイル管理システムを実装する方法を紹介し、具体的なコード例を示します。 1. 準備 コードを書き始める前に、必要なツールと環境を準備する必要があります。まず、PHP 環境がインストールされていることを確認してください。

See all articles