Linux 网络开发必学课程(五)TCP通信框架:客户端和服务端设计

11TCP通信框架:客户端设计

TCP通信框架设计:封装、复用

 

  • 客户端
    • 以协议消息为基本单位收发数据
    • 同时支持字节为基本单位收发数据
  • 服务端
    • 负责监听连接,并产生通信客户端(服务器产生的)
    • 负责监听数据通信状态,并给出通知

        

② 职责定义(功能定义)

  • 客户端用于进行实际的双向数据通信
    • 数据发送&数据接收(协议消息、字节)
  • 服务端仅用于监听和回调通知
    • 事件类型:连接,数据,断开
    • 事件回调: void (*Listener)(TcpClient*client, int event);

③ 客户端接口设计

        

 ④ 客户端关键代码实现

        

         

⑤ 编程实验:客户端设计与实现

代码与下一节合并

12TCP通信框架:服务端设计

TCP通信框架设计

  • 服务端
    • 负责监听连接状态
      • Connect:产生通信客户端(TcpClient),并给出事件通知
      • Close:给出事件通知,并销毁通信客户端
    • 负责监听数据通信状态,并给出事件通知
  • 服务端事件设计
    • EVT_CONN
      • 客户端连接服务端时触发,并创建TcpClient用于通信
    • EVT_DATA
      • 客户端数据到达服务端时触发,使用TcpClient读取数据
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值