UDP协议转换为TCP协议”。
1.首先,需要在服务器端将UDP协议转换为TCP协议,即在服务器上安装一个SSR客户端,并将其配置为“UDP转发”模式;
2.然后,在客户端上安装一个SSR客户端,并将其配置为“TCP转发”模式;
3.当UDP数据通过SSR客户端传输到服务器时,服务器将会将UDP协议转换为TCP协议;
4.当TCP数据通过SSR客户端传输到客户机时,客户机将其转换为UDP协议;
5.最后,客户机将收到的UDP数据进行处理。
UDP服务器,就是首发数据,进行数据处理的。与TCP不同的是不用建立连接,直接调用recvfrom来收包。开始就是基本的socket初始化地址什么的。
要求多个线程处理客户端命令,那recvfrom收包后,考虑把客户端的地址信息保存,便于sendto,对接收的数据包,交给线程进行处理,每个线程可以向一块共享内存、队列里写入收到的数据和对应的客户端信息,每次写的时候对这块共享资源加锁,多个线程对共享资源读是加锁,读完解锁,并开始处理数据。
处理完,用sendto发回去。
不是什么大项目。小程序而已。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)