Loading... # 应用层(五) ## P2P应用 P2P对总是打开的基础设施服务器有最小的依赖,而是成对间歇连接的主机彼此直接通信 **C-S结构**  P2P结构  **最小分发时间**  ### BitTorrent 比特流,一种用于文件分发的流行P2P协议;参与一个特定文件分发的所有对等方的集合被称为一个洪流(torrent),称为种子文件,洪流中有个节点称为tracker,对等方加入就注册它们,并周期性跟踪它们 在torrent中,对等放(peers)彼此下载等长度的文件块(chunk,通常256KB),首次加入无块,只有过一段时间后,累积了更多块后才为其他对等方上载多个块 这个过程中对等方可能私自离开或无私留下奉献 **最稀缺优先技术(rarest first)** 向对等方周期性请求返回文件块列表,针对此列表集合决定先向对等方请求稀少资源 为决定响应哪个请求,采用**tit-for-tat**(以牙还牙)策略:A需要确定四个为他上载速度最快的peers(每10s重新评估),每30s随机选一个邻居,假设选中B传送文件块,如果A能成为B的前四位上载者,B也将向A发送数据,最终趋向于双方彼此协调 ## 套接字编程 ### UDP * 发送数据前无握手 * 发送方将目的地址IP和端口附在分组上 * 接收方从收到的分组提取IP和端口 * 传输的数据可能丢失或无序 * UDP提供的是在客户端和服务器之间不可靠数据传输    ### TCP * 服务器端程序必须运行 * 服务器端必须创建套接字欢迎客户的联系 * 客户端创建TCP套接字,指明IP和服务器进程端口 * C-S建立连接    最后修改:2022 年 03 月 30 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 0 如果觉得我的文章对你有用,请随意赞赏