P2P - JXTA 介绍

<!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--><!-- /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso-font-charset:2; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"\@宋体"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:宋体; mso-font-kerning:1.0pt;} h1 {mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; mso-outline-level:1; font-size:24.0pt; font-family:宋体; mso-bidi-font-family:宋体; font-weight:bold;} p {mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:12.0pt; font-family:宋体; mso-bidi-font-family:宋体;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:595.3pt 841.9pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:42.55pt; mso-footer-margin:49.6pt; mso-paper-source:0; layout-grid:15.6pt;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:1094202801; mso-list-template-ids:656426960;} @list l0:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l1 {mso-list-id:1448768691; mso-list-template-ids:1931400732;} @list l1:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} ol {margin-bottom:0cm;} ul {margin-bottom:0cm;} --><!-- [if gte mso 10]> <mce:style><!-- /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} --> <!-- [endif]-->


JXTA Juxtapose ( 并列) 的缩写。JXTA 最早起源于2000 年的夏天,现在大家把JXTA 看成是P2P 的平台,JXTA 的目标是要解决几个技术与商业上的难题。第一是解 决众多P2P 系统互不相通的问题。2000 年,是P2P 突飞猛进的高潮年,但高潮背后却是许多小公司用自己的封闭系统试图在Internet 上圈一块地。 Sun 认为,只有互通才能真正发挥出P2P 的优势,就好像IM(Instant Messaging) ,能互连的人越多,越有价值。所以Sun 决定出面发布一个平台,使所有P2P 系统都能连接起来,只有Sun 这样位置中立、但在技术上 有雄存实力被大家认可的公司才有希望做成这一平台。

JXTA 的另外一个目的就是找寻一套数量最少、概念最简单的系统构成的 积木 。如果成功,这几块积木就会是今后大家构架信息系统 的基本模块,从而帮助人们摆脱像WindowsTCP/IP 这样的传统软件带来的包袱。但JXTA 与众不同,它是由一系列网络协议构成的,用任何语言都 可以实现,并不只限于Java ,只有彻底独立于操作系统、网络传输技术以及程序设计语言,才真正达到了跨平台,而这样的技术,最容易受到业界的认同。
JXTA
采用了第三代 P2P 网络模型为主的混合型网络模型,由于要做到通用化,设计上不免复杂了些。虽然 JXTA 协议被设计成独立于编程语言和独立于传输协议,它可用Java ,C/ C + + , Perl 和其它许多编程语言实现,但是,目前大家的主要精力还是放在 Java 版的实现上,其他语言的实现明显的比较不受重视.

一直以来, 我们是怎么通过Internet 网络来传送信息呢?Internet 协议可能是唯一得方法.

但是这种协议有很多得限制. 开发者需要一个新的协议来进行通讯.JXTA 就是一个很好的方法. 现在的Internet 协议有如下的一些限制:

  • 一个连接设备不可以使用一样的公网IP 来连接其他局域网内的设备( 在网关内).
  • 如果是共享同一个公共IP 的设备在其同一个TCP/UDP 端口上也不能接受外部的连接.
  • 信息包通过网关从一个点传送到另一个点( 或者从一个点传送到多个点), 但是在传送的过程中, 其传送路径没有被最优化.

有些问题可以利用一些特殊的服务而得到解决( 重建IP), 但是这些方法并不兼容.
JXTA
就是利用点对点技术建立一个全球的协议在Internet 上进行通讯的解决方案.
JXTA
可以用任何的方式实现. 在任何的程序上使用JXTA 都可以给你带来方便.

  • 连接设备拥有一个唯一的标识, 使其能够在同一个局域网内连接两个不同的设备, 甚至可以连接同一个设备的两个不同的实例.
  • 信息包利用点对点技术进行传送, 使其传送路径得到最优化, 可以进行强而有力的多点传送.
  • 因为所有的JXTA 对等体都是相互连接的, 所以信息包可以被其他的对等体传送, 即使这个对等体所使用的软件和原来信息包的初始发送者的软件不一样.
  • 信息包可以穿越防火墙而连接到任何已经连接到internet 上的设备.
  • 开发JXTA 程序和开发标准的Socket 程序基本上是一样的, 唯一的不同就是其寻址技术的不同.

我花了两个小时去将一个完全是基于TCP/IP 的程序转化成利用JXTA 技术的程序. 大部分的时间都是在将原有的IP 地址替换成JXTA 的地址.

JXTA 一种让人热血沸腾的技术!

你可能感兴趣的:(编程,xml,防火墙,网络协议,sun)