NCFS 网络层 ./network
来源:互联网 发布:网络层通过什么通信 编辑:程序博客网 时间:2024/06/05 04:02
connection.hh:
定义了建立client和server、send和receive数据以及64位数进行htonl转换的工具。
network.hh:
SendItem 根据QueneItem->target 来决定发送给所有链接还是发送给某一已建立的链接。
AcceptNewClient accept一个client,并在ClientRecord中记录链接状态。
在network Layer中封装了一些socket操作:
build_server: socket--->bind--->listen. 构造函数中初始化NetworkLayer时,绑定端口号为1234。
AcceptNewClient: accept
build_client: socket--->connet
构造函数NetworkLayer初始化,将ClientRecord中所有链接状态设置为false,然后调用build_server,端口号为1234,并将socket保存为_ServerSocket,再创建线程来监测server。采用select,如果有标准读,则调用process_command;如果_ServerSocket就绪,说明有新的链接,则调用AcceptNewClient建立链接;最后都将CheckClient(network.hh中的纯虚函数,在reportLayer中实现),依次监测每个链接,如果就绪,则recv一个char,如果接收到0个字节,则断开连接,并把ClientRecord中的状态设置为false,否则调用ModuleDispacher,根据收到的char来判断应该做什么样的处理。
- NCFS 网络层 ./network
- NCFS report层 /gui
- NCFS storage层 /storage
- 网络 网络层(Network)
- [Network]网络层
- 网络层(Network)
- NCFS cache层 cache/no_cache.cc
- 基础计算机网络——网络层(Network Layer)笔记
- 网络7层协议详解——Network layer protocol
- [Network]数据链路层
- 网络层
- 网络层
- 网络层
- 网络层
- 网络层
- 网络层
- 网络层
- 【网络层】
- 机器学习经典书籍
- 每天一个JavaScript实例-确定web页面的区域
- Listview+Service+download 更新不卡线程方法
- 第9周项目5-程序填充题(3)
- 降低iPhone手机的系统版本
- NCFS 网络层 ./network
- 第9周项目1(1)-while语句
- 第九周项目三——输出星号图(b)
- Openssl 编程入门之 ssl编程
- leetcode OJ 判断单链表中是否有环
- R语言学习笔记(一)
- 多项式事件模型(multinomial event model)
- R语言学习笔记(二)
- 第九周项目1(2)球1000以内所有偶数的和