树莓派开发相关知识十 -小试服务器
1、概述
需要在树莓派上运行一个服务端程序来响应外部命令,实现远程摇控功能。
BS框架以及相关知识请参考:
Linux编程4.4 网络编程-通信架构-CSDN博客文章浏览阅读734次,点赞17次,收藏10次。TCP客户端服务器编程模型1、客户端调用序列调用socket函数创建套接字调用connect连接服务器端调用I/O函数(read/write)与服务器端通讯调用close关闭套接字2、服务器端调用序列调用socket函数创建套接字调用bind绑定本地地址和端口调用listen启动监听调用accept从已连接列队中提取客户连接调用I/O函数(read/write)与客户端通讯调用close关闭套接字3、大致的函数调用流程https://blog.csdn.net/weixin_45114627/article/details/136712596
Linux编程4.2 网络编程-协议-CSDN博客文章浏览阅读1.1k次,点赞24次,收藏24次。它负责在源主机和目的主机之间传输来自其较高层软件的称为数据报文的数据块,它在源和目的地之间提供非连接型传递服务。ICMP(网络控制信息协议Internet Control Message Protocol)处理IP的状态信息,比如能影响路由决策的数据错误或改变。RIP(路由信息协议Routing Information Protocol)它是几个决定信息传输的最佳路由路线协议中的一个。ARP实际上不是网络层部分,它处于IP和数据链路层之间,它是在32位IP地址和48位局域网物理地址之间执行释放的协议。https://blog.csdn.net/weixin_45114627/article/details/1366806302、Python实现
import socket
addr='192.168.1.166'
port=9600
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((addr,port))
s.listen(5)
try:
while True:
print('Watitin for connection……')
clientSock,clientaddr=s.accept()
print('New connected from:',clientaddr)
while True:
data=clientSock.recv(1024)
if not data:
break
print(data.decode('GB2312'))
except KeyboardInterrupt:
s.close()