情况如下:
我已经写了一个C程序在WRT54GL路由器(OpenWRT White Russian,Busybox 1.00,Dropbear客户端v0.49)上进行一些无线测量。请注意,我无法在路由器上使用更新版本的操作系统或安装其他软件包(只允许脚本或小程序)。
到目前为止,我每隔15分钟将测量结果从路由器记录到服务器上
cat localfile | ssh target_address cat ">" remotefile
我从我的C程序(system())调用日志启动时创建或存在的每个日志文件。我不喜欢的是,系统调用为每个调用打开一个新shell,导致一些开销。好处是,通过这种方式数据被加密,因为我为每个文件建立连接,我可以直接从服务器获取每个文件的反馈,这样我就可以从路由器中删除日志。 (其他从服务器上的路由器调用脚本的方法,然后返回日志记录的值不起作用,因为dropbear ssh客户端不支持此返回)。
所以我要求的是:这可能是一种更优雅的方式,并减少这种开销?到目前为止,我已经阅读了一些关于如何使用TLS / TCP套接字的教程(因此我可以将加密的数据发送到服务器)。另一种可能是HTTP PUT或POST,但我不知道如何获得发送数据的反馈。所以我只想听听你的对手以及你们将如何解决这个问题。
祝你好运