Heim  >  Artikel  >  Backend-Entwicklung  >  Python3.5-Implementierung eines Socket-Kommunikationsbeispiels (TCP)

Python3.5-Implementierung eines Socket-Kommunikationsbeispiels (TCP)

高洛峰
高洛峰Original
2017-02-10 10:08:351439Durchsuche

In diesem Artikel wird hauptsächlich das Beispiel der in Python3.5 implementierten Socket-Kommunikation (TCP) vorgestellt. Der Herausgeber findet es recht gut, daher werde ich es jetzt mit Ihnen teilen und als Referenz verwenden. Folgen wir dem Editor und werfen wir einen Blick darauf.

TCP-Verbindung:

TCP ist ein verbindungsorientiertes Protokoll, was bedeutet, dass Client und Server sich die Hand geben müssen, bevor sie Daten senden können Erstellen Sie eine TCP-Verbindung. Ein Ende der TCP-Verbindung ist mit dem Client-Socket verbunden und das andere Ende ist mit dem Server-Socket verbunden. Beim Erstellen der TCP-Verbindung müssen wir die Socket-Adresse des Clients (IP-Adresse und Portnummer) mit der des Servers verknüpfen. Wenn eine Seite mithilfe der erstellten TCP-Verbindung Daten an die andere Seite senden möchte, muss sie die Daten nur über ihren Socket an die TCP-Verbindung weiterleiten, ohne die Zieladresse erneut anzuhängen.

Client-Server-Programm mit TCP-Verbindung:

Python3.5-Implementierung eines Socket-Kommunikationsbeispiels (TCP)

TCPServer.py

import socket

import socketserver

import time

import threading

 

serverPort = 50007

serverSocket =socket.socket(socket.AF_INET,socket.SOCK_STREAM)

serverSocket.bind (('',serverPort))

serverSocket.listen(1)

print('The server is ready to receive')

while 1:

  connectionSocket,addr = serverSocket.accept()

  sentence = connectionSocket.recv(1024)

  capitalizedSentence = sentence.upper()

  connectionSocket.send(capitalizedSentence)

  connectionSocket.close()

TCPClient.py

from socket import *

serverName = '127.0.0.1'

serverPort = 50007

clientSocket =socket(AF_INET,SOCK_STREAM)

clientSocket.connect((serverName,serverPort))

sentence = input('Input lowercase sentence:')

clientSocket.send(sentence.encode())

modifiedSentence = clientSocket.recv(1024)

print('From Server:',modifiedSentence.decode())

clientSocket.close()  

Hinweis:

1. Bevor der Client einen TCP-Socket zum Senden von Daten an den Server verwenden kann, muss eine TCP-Verbindung zwischen dem Client und dem Server erstellt werden.

2. ): Führen Sie einen Drei-Wege-Handshake durch und erstellen Sie eine TCP-Verbindung.

3. Schließen Sie die TCP-Verbindung zwischen dem Client und dem Server (): Schließen Sie nach dem Senden an den Client den Verbindungssocket

TCP-Verbindung erfordert zwei Sockets, UDP benötigt nur einen,

TCP-Server unterstützt n parallele Verbindungen, jede Verbindung kommt von einem anderen Client, Für die TCP-Verbindung sind n+1 Sockets erforderlich.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er zum Lernen aller beiträgt. Ich hoffe auch, dass jeder die PHP-Chinesisch-Website unterstützt.

Weitere Artikel zum Python3.5-Socket-Kommunikationsbeispiel (TCP) finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn