Python TCP套接字编程

news/2024/5/18 16:08:59 标签: python, udp, tcp/ip

Python TCP套接字编程

使用两台机器建立基于TCP的通信,其中客户端的地址为192.168.1.1,服务端的地址为192.168.1.2

与UDP不同,TCP是面向连接的服务,在发送数据之前首先需要进行连接 —— 三次握手过程,为此TCP套接字编程与UDP套接字编程有所区别

使用Python语言实现

接下来我们分别建立客户端和服务端的python代码

代码实现

客户端代码(client_tcp.py):

python">from socket import *
server='192.168.1.2'
port=12000
socket_client=socket(AF_INET,SOCK_STREAM) # AF_INET表示使用IPv4,SOCK_STREAM表示使用TCP套接字
socket_client.connect((server,port)) # 建立TCP连接,即三次握手过程
message="I'am client!"
socket_client.send(message.encode()) # 两台主机之间建立通信是通过进程的进行的,因此需要明确端口号(当然首先要明确主机地址)
message_receive=socket_client.recv(1024) # 1024表示缓存长度
print("The address of server is:",server)
print("The message from server is:",message_receive.decode())
socket_client.close()

服务端代码(server_tcp.py):

python">from socket import *
port=12000
socket_server=socket(AF_INET,SOCK_STREAM)
socket_server.bind(('',port))
socket_server.listen(1)
message_server="I'm server!"
while True:
    connection,address_client=socket_server.accept()
    message=connection.recv(1024)
    print('The address of client is:',address_client)
    print('The message from client is:',message.decode())
    connection.send(message_server.encode())
    connection.close()

运行结果

[ 运行客户端前需先运行服务端 ]
客户端

The address of server is: 192.168.1.2
The message from server is: I'm server!

服务端

The address of client is: ('192.168.1.1', 58621)
The message from client is: I'am client!

可以看到客户端和服务端完成了通信

计算机网络:自顶向下方法


http://www.niftyadmin.cn/n/1233336.html

相关文章

Ubuntu安装sougou输入法

1、系统设置---->语言支持---->键盘输入系统:fcitx 2、直接下载搜狗的Linux包,直接双击安装,要是ubuntu12.04就需要另外的执行安装fcitx输入法管理系统

最小化最大链路利用率

最小化最大链路利用率 最小化最大链路利用率(minimizing the maximum link utilization in the network),也被称为minimax问题,是流量工程(Traffic Engineering,TE)中涉及的概念。 让我们先看个图: 3个节…

ubuntu安装pip软件管理器

ubuntu安装pip软件管理器,python2和python3For Python 3 sudo apt-get install python3-pip For Python 2 sudo apt-get install python-pip

计算机网络的使命

江山多娇弯弓射雕童真的试探烽火戏诸侯有内鬼,终止交易信息的重要性还看今朝信息表示二进制计算机网络江山多娇 儿行千里母担忧~ 今天我们想妈妈的时候拨一个微信视频就可以了,实在太想坐个飞机,高铁,火车,几十小时甚…

Ubuntu16.04安装Redshift色温调节工具

Ubuntu16.04安装Redshift色温调节工具 以前一直使用f.lux色温调节工具,但是发现在Ubuntu台式机上安装f.lux后程序不能调节色温,查了很多资料都没有说怎么解决这个问题,随访期。。。但是长期看电脑还是应该要一个屏幕调节色温的工具&#xff0…

如何写一个神经网络

本文我们介绍如何利用python自己手写一个神经网络 神经网络介绍 神经网络其实很简单 —— 多层感知机,不懂感知机原理得可以看博主之前写的感知机及Python实现。 正如感知机及Python实现中所描述的,感知机的权重 www 和偏置 bbb 很容易更新&#xff0…

利用神经网络实现手写字识别

神经网络介绍 神经网络即多层感知机 如果不知道感知机的可以看博主之前的文章感知机及Python实现 神经网络实现及手写字识别 关于数据集: 从http://yann.lecun.com/exdb/mnist/下载,下载后将文件解压将main函数中的path改为下载文件的存储路径即可 …

ubuntu安装redshift之后使用

sudo apt-get install redshift装完后,设置参数两种方法: 一:(需要开窗口输入命令,占一个执行窗口) redshift-gtk -l 39.92:116.46 -t 5500:4500即可。 这条命令的意思是手动将经纬度设定在’39.92:116.46’…