网格理论
网格理论研究方兴未艾。专家预测网格将成为人类迄今为止最强有力的“工具”。它使人们能够同时调动数百万台计算机完成某一项计算任务,能够操作千里之外的贵重设备,能够汇集数千科学家之力完成同一项科学试验,能够让遍布各地的人们在逼真的虚拟现实环境中进行面对面的交流,能够让信息自动融合并让计算机自动完成许多以前必须由人完成的处理流程……由于网格的不同作用,它被划分成不同的类型,如计算网格、设备网格、数据网格、远程沉浸网格、信息服务网格等。
简单地讲,网格是把整个因特网整合成一台巨大的超级计算机,实现各种资源的全面共享。当然,网格并不一定非要这么大,也可以构造地区性的网格,如中关村科技园区网格、企事业内部网格、局域网网格,甚至家庭网格和个人网格等等。网格的根本特征不是它的规模,而是资源共享,消除资源孤岛。
最“正统”的网格研究起源于美国政府过去十年来资助的高性能计算科研项目。这类研究的目标是将跨地域的多台高性能计算机、大型数据库、贵重科研设备(电子显微镜、雷达阵列、粒子加速器、天文望远镜等等)、通信设备、可视化设备和各种传感器等整合成一个巨大的超级计算机系统,支持科学计算和科学研究。这方面的代表性研究工作包括美国国家科学基金会资助的NPACI、“国家技术网格”(NTG)、分布万亿次级计算设施(DTF),美国宇航总署的IDG,美国能源部的ASCI Grid,以及欧盟的Data Grid等。
有人把网格看成是未来互联网技术,称之为“下一代因特网”、“Internet2”、“下一代Web”等;还有一类研究的侧重点是智能信息处理,它关注的是如何消除信息孤岛和知识孤岛,实现信息资源和知识资源的智能共享,常见的名词包括语义网(Semantic Web)、知识管理(Knowledge Management)、知识本体(Ontology)、智能主体(Agents)、信息网格、知识网格、一体化智能信息平台等;企业界的研究则大多集中尽量利用现有的Internet/Web技术,将因特网上的资源整合成一台超级服务器,有效地提供内容服务、计算服务、存储服务、交易服务等。
P2P
P2P即Peer-to-Peer,称为对等连接或对等网络,是一种点对点计算模式。在大多数人眼中,P2P 仅仅是一种局限于文件共享的应用,或是由互联网介入给计算方法带来的新发展。事实上,P2P 计算是非常重要的。新技术与软件工程结合,形成了一种将工作分散的趋势。P2P 计算正是这种分散工作趋势的自然结果。从工程的角度看来,在企业应用集成等因素的驱动下,过去十年渐渐形成一种从集中的单机系统转向分布式系统的趋势。在集中式的应用中进行控制是相对容易的,这一点在一定程度上抑制了分布式潮流的发展。然而随着互联网的发展,以及 B2B 商务交易方式的日益流行,全面的分布式计算也就成为一种商业需求。
对功能强大的网络计算机的需求以及昂贵的带宽开销,是对这种趋势影响最大的两个因素。为了提高效率,P2P 计算由许多互相连接的同位体 (peer) 组成。
除了技术方面之外的社会因素也是一个重要原因。毫无疑问,人们现在对 P2P 计算技术的热切关注起源于 Napster, Scour, Gnutella, 以及这些家族的其他成员产品。这些产品提供了所谓的 "killer apps" 功能,能够将 P2P 技术中的一部分下放到客户端用户的手中。正是这种第一手的体验,使得人们越来越关注 P2P 技术的强大功能。
几乎所有人都会同意 “P2P 计算是分布计算的一个子集”这种说法。而且大多数人也都会认为“并非所有的分布式计算都是 P2P 计算。"peer-to-peer" 这个名字意味着各个 peer 之间的关系是平等的,并且它们之间的联系是直接的。
P2P 网络中含有许多能够互相通讯的 peer,每个 peer 都有专门的用途。通常情况下,网络中 peer 的数目是非常大的,但用途却只有若干种。这就是 P2P 应用之所以能大量并行运行的重要原因。众所周知的 Gnutella 网络就是一个最好的例子,它包含了大量本质上相同的 peer。P2P 技术中最有趣的地方就在于这些对等 peer 之间的联系,其次则是它们自身。
目前可以参考的技术标准有:JXTA。
JXTA是项目创始人、Sun首席科学家Bill Joy二十多年酝酿的结晶,“JXTA技术是网络编程和计算的平台,用以解决现代分布计算尤其是P2P计算中出现的问题。”JXTA协议是一组为P2P网络计算而设计的协议,共六种。这六种协议分别是:Peer Discovery Protocol,Peer Resolver Protocol,Peer Information Protocol,Peer Membership Protocol,Pipe Binding Protocol,以及Peer Endpoint Protocol。利用这些协议,我们可以让消息跨越多个网络,发送到网络上的任意其他Peer。这些协议是所有Java P2P应用的基础。
经典案例:
BitTorrent 下载
BitTorrent下载是目前互联网上最流行的P2P的下载方式。由服务器提供下载信息的索引,各下载用户在下载的同时也是提供下载的服务器之一。此方式极大地利用了离散用户的网络资源,但其集中索引发布的方式也容易遭到知识产权保护组织的攻击。
使用博易知识平台可以实现完全的P2P的文件共享下载方式。下载信息的索引也分布在各个用户端。用户完全通过P2P的搜索进行索引的寻找。
博易个人知识平台第一阶段的目标在于组建P2P的信息知识资源网格。以后可以考虑进一步实现网格计算、网格信息服务等功能。