【原】P2P应用的探究
什么是P2P(peer to peer)?
资源发布就是资源所有者向P2P网络云中注册资源的过程,它分为以下3个步骤。
(1) 创建一个P2P关键词对象
(2) 创建一个关联到指定云的注册对象,
(3) 进行注册
下面的代码演示了如何向所有可用云中注册“0.test”这个名称,并将这个名称关联到本机的6000端口(通常同时监听这个端口,以响应资源访问者的请求)的过程
PeerName pn = new PeerName("test", PeerNameType.Unsecured);
PeerNameRegistration pnr = new PeerNameRegistration(pn, 6000, Cloud.Available);
pnr.Start();
二、撤销已发布到云中的资源:
pnr.Stop();
三、资源的发现:
(1) .创建一个待搜索的名称对象。
(2) .创建一个名称解释器对象。
(3) .从指定云中检索此名称对象。
下面代码演示了如何从所有可用云中检索名称“0.test”的过程,此过程最多返回10条符合要求的记录。
PeerName searchname =new PeerName("0.test");
PeerNameResolver resolver = new PeerNameResolver();
PeerNameRecordCollection results= resolver.Resolve(searchname, Cloud.Available,10);
四、获取此名称对应的资源:
foreach (PeerNameRecord record in results)
{
//获取资源所在的位置
foreach(IPEndPoint endpoint in record.EndPointCollection)
{
//对方通常在监听这个IPEndPoint,与之发起连接即可与之通信或其它交互了
}
//获取资源对应的数据
byte[] remoteresource=record.Data;
转载于:https://www.cnblogs.com/FelixBlog/archive/2013/03/29/2989831.html
【原】P2P应用的探究相关推荐
- [原] KVM 虚拟化原理探究(6)— 块设备IO虚拟化
目录 KVM 虚拟化原理探究(6)- 块设备IO虚拟化 块设备IO虚拟化简介 传统块设备架构 块设备IO协议栈 块设备IO流程 块设备IO虚拟化 总结 KVM 虚拟化原理探究(6)- 块设备IO虚拟化 ...
- 图网络可解释性(2)
Stanford大佬Rex Ying的文章:<GNNExplainer: Generating Explanations for Graph Neural Networks> 摘要 传统非 ...
- 迅雷7优化,删除组件,去广告,屏蔽上传,高速通道,下载
迅雷(Thunder)7.1.8.2300,可以开启高速通道, 压缩包里有两种安装文件,安装.inf.卸载.inf属于原版,但是不屏蔽上传 安装.bat,安装_Win7x64.bat,卸载.exe不属 ...
- 浇灌迅雷幸福树 抽奖可领取会员3天
迅雷幸福树作为原p2p分享率的升级,更加形象的记录了用户上传和下载时所产生的流量,将用户贡献的上传流量记为阳光值,用于抽取奖品作为对用户贡献流量的回馈: 将下载流量记为成长值用于幸福树等级的提升,使用 ...
- 迅雷下载原理和P2p技术
1. 迅雷的盗链(盗链其他网站的资源) 迅雷记录下载地址并将其存在自己的服务器,以后下载同样的资源时自动从所有可用的下载地址连接,保证用户在下载链接甚至是死链接的情况下,也可以从镜像服务器 ...
- 原力P2P助网络电视台一臂之力!
网络风云的时代,网络视频一枝独秀成为人们网上娱乐的重要"休闲食品",用视觉来体验大千世界.人们已不满足于在家里受时间约束,来以传统固定单一的模式来观看电视节目,无自主选择的权利.尤 ...
- JavaSE教程-03深入探究原码,反码,补码-扩展
1.原码,反码,补码的基础概念和计算方法 在搞清楚为什么计算机要使用补码之前,我们先搞清楚一个基本知识点,就是原码,反码,补码的计算方式. 对于一个数,计算机要使用一定的编码方式进行存储,原码,反码, ...
- 2020年江苏中考数学能用计算机吗,2020年【中考数学】真题及模拟:几何探究型问题(原卷版)(江苏专用).docx...
中考真题·模拟引申 PAGE 1 精品资源·备战中考 『真金试炼·备战中考』『中考真题·分项详解』 『真金试炼·备战中考』 『中考真题·分项详解』 编在前面: 历年的中考卷可以让学生认识到中考的题型, ...
- php 双向绑定的原理,【原】数据双向绑定和虚拟dom探究
自各个mvvm框架出现和流行以来,他们都实现了两个新的概念及功能:数据双向绑定和虚拟dom.网上对于这两个概念的阐述很多很全面,这里仅对它们的原理和应用场景进行探究和记录,希望更接地气的理解和应用这两 ...
最新文章
- conda install和pip install的区别
- 《使用CSLA 2019:CSLA .NET概述》原版和机译文档下载
- CODING 缺陷管理功能正式开始公测
- ListT 排序学习
- C/C++之 C++ String(字符串)
- JAVA SSM框架+Redis 实现单点登录
- Sql server之常用三表联查举例
- 口译分类词汇:上海景点名集锦
- 微信小程序-通知滚动小提示
- java 求集合真子集_【同步练习】高一高中数学必修1集合的关系与元素性质
- 48.本地Hyper-V虚拟机的异地(Azure)容灾(下)
- vue-cli 里axios的使用
- 约束理论学习随笔(1)
- r语言 svycoxph_R语言之生信⑦Cox比例风险模型(单因素)
- 1901~2100年节气表
- C++栈的初始化,入栈,出栈,获取栈顶元素等操作
- 常见文档注释工具简介
- 如何使用 WEB 技术编写前端代码,实现大屏展示和地图显示功能
- C++学习(一五零)qt的公有类、私有类、Q_Q、Q_D、二进制兼容
- Text 文本中点击跳转超链接
热门文章
- 将MATLAB中的图像信息用到Vivado中
- nothing to build for project 'XXX'
- CMFCTabCtrl 切换页面闪烁问题
- 2021泰州高考什么时候查成绩查询,2021年泰州学院高考录取结果什么时候出来及查询系统入口...
- php where 不包含,php – 除非它们包含“where”或“like”子句,否则不允许删除
- java 循环查询list_Java用list储存,遍历,查询指定信息过程详解
- 聊聊LightProbe原理实现以及对LightProbe数据的修改
- Java基础之GC回收
- SVN_06导入项目文档
- Laravel 5.4 migrate时报错: Specified key was too long error