对 NetEngine 的一点理解
2013-06-15 23:27
155 查看
数据收发流程大概是这样抽象的:
网络数据 <---> ByteBuffer <---> Dispatcher <---> Socket <---> Session <---> Service <---> Application ---> Handler
Dispatcher // Socket 管理器,IOCP 和 EPOLL 实现
Socket // 负责收发完整报文,即将一个或多个 ByteBuffer 组成 Packet,主要是处理分包和粘包
Session // 通过协议栈,即 ProtocolStack,对packet做处理
Service // Session 管理器,同时维护 Packet 的收发线程
Application // 管理多个 Service,同时负责 Service 间的 Packet 转发
Handler // 负责网络事件的处理逻辑
从分层的角度来讲,Dispatcher 和 Socket 属于“传输层”;Session 和 Service 属于“会话层”;而 Application 和 Handler 则是“应用层”。
网络数据 <---> ByteBuffer <---> Dispatcher <---> Socket <---> Session <---> Service <---> Application ---> Handler
Dispatcher // Socket 管理器,IOCP 和 EPOLL 实现
Socket // 负责收发完整报文,即将一个或多个 ByteBuffer 组成 Packet,主要是处理分包和粘包
Session // 通过协议栈,即 ProtocolStack,对packet做处理
Service // Session 管理器,同时维护 Packet 的收发线程
Application // 管理多个 Service,同时负责 Service 间的 Packet 转发
Handler // 负责网络事件的处理逻辑
从分层的角度来讲,Dispatcher 和 Socket 属于“传输层”;Session 和 Service 属于“会话层”;而 Application 和 Handler 则是“应用层”。
相关文章推荐
- UART,SPI,IIC的一点理解
- 组合数学中排列组合一点理解
- 关于图标的一点理解
- android:layout_weight的一点理解
- 对于观察者模式,Reactor模式,Proactor模式的一点理解
- AIDL的一点理解
- 关于#pragma pack()和内存分配的一点理解
- 对oop的一点理解
- LiNUX内存原理的一点理解
- C++继承的一点理解
- 框架中Web容器套路,对于框架的一点理解
- 对Abstract类的一点理解
- 滤波器的一点理解和困惑
- 关于operator void*()和bool operator !()的一点理解
- 关于 数据文件自增长 的一点理解
- 2.7-3 Android Studio 的Gradle一点理解, 查看gradle 版本和android 插件的版本
- 对I2C总线时序的一点理解以及ACK和NACK(NAK)
- 2.7-3 Android Studio 的Gradle一点理解, 查看gradle 版本和android 插件的版本
- 对C#下函数,委托,事件的一点理解!
- 有关WLAN与wifi、WPAN与Bluetooth、WPAN与802.15、wifi与802.11、WiMAX与802.16等关系的一点理解