树莓派python网络通信_【玩树莓】编程篇(二)Python TCP、UDP 网络编程

1. TCP编程

TCP协议是网络通信领域使用最广泛的协议之一。

和其他Linux下的编程方式一样,Python的TCP通信也可以基于Socket方式实现。TCP通信协议通过建立连接和应答来保证通信质量,它将通信设备分为Server和Client,两者的操作方式也有些区别。

1.1. TCP Server和Client

Server基本流程为:创建Socket -> 绑定IP和端口 -> 在绑定的IP和端口上监听连接请求 -> 接受Client发出的连接请求 -> 收发收据 -> 关闭连接。

下面是一个简单的例子,实现了基本的TCP Server功能。

import socket

import time

import sys

HOST_IP = "137.58.230.162"

HOST_PORT = 7654

#创建Socket,SOCK_STREAM表示类型为TCP

print("Starting socket: TCP...")

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

#绑定IP和端口,并进行监听

#137.58.230.162为本机IP,端口为7654

print("TCP server listen @ %s:%d!" %(HOST_IP, HOST_PORT) )

host_addr = (HOST_IP, HOST_PORT)

socket_tcp.bind(host_addr)

socket_tcp.listen(1)

#接受Client发出的连接请求,返回值包含了Client的IP和端口

socket_con, (client_ip, client_port) = socket_tcp.accept()

print("Connection accepted from %s." %client_ip)

#向Clinet发送数据

socket_con.send("Welcome to RPi TCP server!")

socket_tcp.close()

Client对应的流程要简单的多:创建Socket -> 向服务器发出连接请求 -> 连接建立成 -> 收发收据 -> 关闭连接。

代码如下:

import socket

import time

import sys

SERVER_IP = "137.58.230.162"

SERVER_PORT = 7654

#创建Socket,SOCK_STREAM表示类型为TCP

print("Starting socket: TCP...")

socket_tcp = socket.socket(socket.

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值