可以用QQ来理解,一边通过远程控制操纵对方的电脑,一边通过摄像头进行视频聊天。
位于两端的两台终端分别连接到中转服务器,进行配对。A端通过一条连接(也许是 TCP)向服务器发送自己的显示器实况,通过另外一条连接(也许是流媒体UDP)向服务器发送摄像头视频,服务器将数据转发给B端,B端发送实时的操作数据到服务器,服务器转发到A端,A端执行操作。
由于所有的活动都会在服务器监控和保存(视频录像和数据的存储),因此只能采取中转的方法,而不考虑P2P。另外,中间发送的数据会进行加密(也许用SSL)。
平台是Windows,配置就是一般的服务器。至于用户量这些,没有太高要求,百十个配对的样子。
请各位前辈给些意见,
这样的架构应该怎么设计,采用何种协议,何种IO模型,有哪些需要注意的,或者说有哪些坑,等等。
因为题主过去没有碰过网络编程,所有的东西都是未知的。希望大家不吝赐教!