SimpleTorrent
首页
相关页面
结构体
文件
待办事项列表
全局
bt_handler
(struct
MetaInfo
*mi, int efd)
通过 accept 建立连接并监听连接套接字的 EPOLLIN 事件,加入
MetaInfo::wait_peers
队列。注意设置
WaitPeer::direction
全局
finish_handshake
(struct
MetaInfo
*mi, int sfd)
要区分是对方回复的握手消息还是对方主动发来的握手消息
全局
handle_msg
(struct
MetaInfo
*mi, struct
Peer
*peer, struct
PeerMsg
*msg)
根据 bitfield 增加 piece 持有者数量
根据 have 增加 piece 持有者数量
处理 REQUEST 消息
处理 CANCEL 消息
类
PieceInfo
子分片使用何种数据结构比较合理?
全局
select_piece
(struct
MetaInfo
*mi, struct
PeerMsg
*msg)
应用优化策略:最少优先
类
WaitPeer
在
bt_handler()
和
handle_peer_list()
中正确地对
direction
进行赋值,为
finish_handshake()
服务
制作者
1.8.11