Work

2个常规题

1. DHT协议是怎样的, 如何实现O(lgN)的查询
DHT是Distribute Hash Table的意思, 在BT网络中主要用来做分布式路由表 BT是个点对点的对等网络 DHT的主要思想是将全局的路由表分布式的存储在每一个对等节点上 路由表存储了节点ID和地址的对应关系 节点间距离是以ID的异或得到的差值来表示的 每个节点的路由表都保持一个树状结构 并向自身的ID收敛
寻址时 首先查找节点自己路由表中ID与目标ID距离最近的节点(异或结果最小) 然后向它发起查询 然后这个节点再查找它路由表中最近的 由于路由表的树状结构 以及收敛的特性 所以能够保证查找操作能在O(lgN)时间内完成

2. IO的主要特点是什么 如何实现这一点的
特点:高并发 IO模块引入了事件循环机制 当某个套接口上有事件发生的时候 才调用processor来处理 这样能用少量事件处理线程同时维持大量连接 DHT中加入libevent 为电平触发 保障了事件的有效性 IO中epoll采用的是边沿触发

posted on 2011-09-23 00:42 lonelycastle 阅读(60) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理