JXTA开发手册(三)JXTA网络结构

掌握JXTA:构建Java P2P网络编程项目 本文还有配套的精品资源,点击获取 简介:JXTA是一个开源的Java对等网络编程平台,支持开发者创建无需中心服务器的分布式应用程序。它通过边缘设备、对等组、广告、管道、发现服务、发布/订阅服务和安全机制等核心组件,使资源和服务的共享变得高效灵活。JXTA SDK提供了构建和管理P2P网络所需的工具和API。JXTA的应用示例包括文件共享和聊天应用,广泛适用于分布式计算、内容... 阅读详情
 

第四章                       JXTA网络结构

网络组织

       JXTA网络是自组织的,多跳的,可配置的节点之间不具备紧密联系的网络。节点之间的连接是暂时的,节点之间的消息路由是不确定的,节点的加入离开和路由变化非常的频繁。

       节点将才用各种形式的方法,确保连接的建立。这些节点的组织采用,网络的组织由JXTA网络托管,一般包含下面几类的节点:

       ·最小限度的节点:最小限度节点可以发送和收取消息,但是不能缓存通告和为其他节点节点进行路由。这类节点运行在资源相对匮乏的设备之上(PDA,蜂窝电话)

       ·全业务节点:全业务节点在接受和发送消息的同时,也缓存收到的通告。当收到其他节点的资源查询请求时,节点搜索自己的通告缓存,查看是否有与之匹配的内容。如果有,就返回相应的应答。但是,全业务节点本身并不向前转发查询请求。JXTA网络中的大部分节点都属于这类节点。

       ·集中节点:集中节点和全业务节点一样,缓存有收到的通告的信息。但是,集中节点同时也向其他节点转发查询通告,以便帮助其他节点查找需要的资源。当一个节点加入到节点组中时,节点自动查找当前节点组的集中节点,如果不能找到集中节点,节点动态的升级自己为集中节点。任何集中节点本身也保有一个集中节点列表,以便自己也可以把这个节点作为集中节点。

       每个节点组中的节点都保存有自己的集中节点列表,并且可以根据自己需要保有很多个集中节点。集中节点是节点组中唯一可以看见全部查询信息的节点。消息含有默认的TTL=7跳,并通过节点经过的节点列表进行回嗍。

       ·中继节点:中继节点保存着节点之间的路由信息,节点首先查找本地缓存的路由表,如果不能找到路由信息,节点将路由请求传送给中继节点,中继节点将返回路由信息。中继节点也担负着转发位于NAT之后,不能直接通信的节点之间的数据转发任务。

 

      共享资源分布索引(SRDI)

       JXTA2.0 J2SE平台提供了一种机制以提高JXTA网络资源定位的效率,这种机制叫做共享资源分布索引。中心节点上维护着一个边缘节点发出的通告列表,当边缘节点发布新的通告时,他们发送给所在节点组中心节点其发布的资源索引。采用这种中心——边缘节点层次,查询请求仅仅在中心节点之间传播,减少了在一次通告中参与查询的节点数目,这是非常有意义的。

       每个中心节点都包含有节点组内已知其他中心节点的列表。一个中心节点可以通过回溯重新得到其他中心节点的信息。中心节点周期性的选择随机数量的其他中心节点,并随机的选取自己列表中的中心节点信息进行交互。同时,也周期性的清除没有响应的其他中心节点。因此,中心节点之间维护了紧密联系的JXTA网络。

       当一个节点发布了新的通告,那么这个通告将会以通告的名称和ID作为关键字被索引。仅仅这些索引被传送给中心节点,以便减少中心节点上面存储的数据量。中心节点同样回把通告转发给其他的中心节点。

 

      查询

       网络的结构如下图所示,节点A是边缘节点,默认配置节点R1为其中心节点。当节点A初始一个查询请求,它首先将请求发送给中心节点R1,在本例中,同时也会通过广播将请求发送给同一子网下的其他节点。

       邻居节点之间的查询(也就是说在同一子网内的查询)通过广播方式发送给子网中其他的JXTA节点。如果子网中的其他节点的本地缓存中含有被查询的内容,那么它将直接给查询发起节点响应。

       子网外的资源查询请求被直接传送至中心节点。中心节点首先检索本地缓存是否满足查询,如果包含,直接返回查询结果,不再转发查询请求。如果中心节点包含此资源的SRDI,那么它会通告发布这个SRDI 的节点,令它响应查询节点的查询请求(这里主要中心节点仅仅存储的是SRDI,并不是通告本身)。

       如果中心节点不能包含节点的查询请求,那么中心节点将会启动limited-range walker算法,搜索含有此资源的其他中心节点。此算法伴随着一个计数器以便避免广播风暴。当找到包含此资源的节点时,节点将直接响应给发起查询的节点。

       整个SRDI工作模式如下图所示:节点2发布了一个新的通告,然后送SRDI至中心节点R3。通告索引存储在R3上,同时也将发布在节点组的其他中心节点之上。当节点1发送查询请求时,它首先将查询请求送至R1,R1首先检查自己的本地缓存,如果不能满足查询将查询转发。当资源查询请求发送至p2是,p2直接给出查询响应。

 

防火墙和NAT

       防火墙内的节点可以直接给防火墙外的节点发送消息,但是防火墙外的节点通常不能向防火墙内的节点发送消息。

       为了JXTA节点可以穿透防火墙自由的互相通信,必须具备以下的几个条件:

       ·节点组内位于防火墙后面的节点必须知道至少一个位于防火墙外的组内节点。

       ·防火墙两端的节点必须能够支持HTTP协议。

       ·防火墙允许HTTP协议通过。

      

下图描述了一个穿透防火墙的典型场景,

JXTA节点A和节点B需要通信,但是节点A位于防火墙之后,采用C做中转。

      

JXTA中使用JxtaServerPipe和JxtaBiDiPipe实现双向可靠的通信 NULL 博文链接:https://lyndon-lin.iteye.com/blog/643307 立即下载

相关推荐

JXTA-Java P2P网络编程技术(PDF)

JXTA是美国sun公司在JAVA领域里推出的新技术,目的是为P2P(peer-to-peer)的网络应用开发提供一个统一的平台 而贝为了鼓励和支持该技术的发展,JxTA项目采用了开放源代码的方式进行.吸引了大量业界人士参与到JXTA技术的研究与应用当中。

JXTA 简介

Jxta协议   由于需要实现关于p2p网络的应用,所以开始了学习JXTA的旅程。最近查看了JXTA的一些文档,使用了JXTA的demo Application和写了一些JXTA的小程序,对这个技术有了一定了解,因此在blog设了一个JXTA技术的板块,来开始记录我学习JXT

真的想做点事情 922

JXTA——Java P2P网络编程技术

首先,JXTA是为了构建P2P网络而制订的一组协议,是解决构建P2P网络必须要解决的问题的方法。<br>其次,JXTA是P2P应用程序开发的运行平台。目前,JXTA首先推出了基于Java的参考实现的。<br>

JXTA简介

前段时间做的毕业设计借助了Sun公司支持的开源JXTA项目,却一直未曾对这部分的学习进行一定的总结,今儿闲来无事,便想弥补一下。 1.JXTA项目简述        JXTA是Sun公司为解决先前开发P2P系统没有统一标准而提出的开发P2P应用的通用平台。JXTA定义了一组通用标准化协议,用于现有Internet和非IP网络基础上建立一个虚拟的P2P网络,实现结点间的通信。简单的说,JXTA是

夜星空 2100

ArcMap学习笔记(三)地图数字化

地图数字化前言地图数字化实现步骤1.加载地形图2.新建要素图层3.开启编辑环境4.设置捕捉环境5.选择数字化图层6.数字化控制点7.数字化等高线8.数字化图幅边框9.保存数字化成果总结 前言 使用软件:ArcMap10.4.1中文版 如果出现侵权,请在评论留言,我会及时删除,谢谢。 地图数字化 空间数据采集(输入)是将现有的地图、外业观测成果、航空像片、遥感图片数据、文本资料等转换成GIS可以直接...

JayWang博客 1万+

从ARM转战TI DSP:手把手教你用CCS 10.1.1搭建F280049C的第一个工程(含CMD文件避坑指南)

本文详细介绍了从ARM开发转向TI DSP(TMS320F280049C)的完整流程,包括CCS 10.1.1开发环境配置、工程搭建、CMD文件避坑指南以及外设开发实战。特别针对ARM开发者常见的DSP特性差异问题提供了解决方案,帮助初学者快速入门DSP开发。

weixin_42536058的博客 373

JXTA的安装和使用

JXTA的安装和使用2007/7/4上次的一文的介绍了JDK的安装和使用.现在介绍JXTA的安装和使用 一.JXTA的下载到http://download.java.net/jxta下载文件jxta-lib-2.4.1.tar.gz (for linux)或者jxta-lib-2.4.1.zip(for windows).二.JXTA的安装1.解压得到文件夹jxta-lib-2.4.1,此文件

花蘑菇练级 8485

全志T113 Tina5.0开发:(一)添加自己的板级支持包

3.验证 先执行 source build/envsetup.sh ,然后lunch,下图可见9就是我们自己添加的板子。2. 1)修改 t113-evb1.mk重命名为t113-ws_devboard。我使用的spinand,只需要修改openwrt里面的文件即可。以下内容仅作为自己笔记,如果错误欢迎留言指出。修改t113-ws_devboard。

u014428915的博客 1164

JXTA的概念(一)

在JXTA网络中,有一些概念是需要熟悉和理解的,它们是从JXTA协议中提出的一系列的专有名词。 Peer(对等机) Peer是一个虚拟的通信点。在一台计算机或者设备上可以有很多个Peer。一个Peer并不是一个用户,因为一个用户可以有多个Peer,同一个设备上也可以有多个Peer(在测试的时候经常用到)。因为Peer不等同于用户,所以需要将用户和Peer抽象出来并分离开。 Peer与特定的网...

hzylyl2402的专栏 269

泰森多面体Voronoi 3D-V5.0 功能介绍

Abaqus Voronoi3D

qq_34840441的博客 3365

PostgreSQL:十五. 性能优化

十五. 性能优化 优化简介: PostgreSQL优化一方面是找出系统的瓶颈,提高PostgreSQL数据库整体的性能; 另一方面,需要合理的结构设计和参数调整,以提高用户操作响应的速度; 同时还要尽可能的节省系统资源,以便系统可以提供更大负荷的服务。 PostgreSQL数据库优化是多方面的,原则是减少系统的瓶颈,减少资源的占用,增加系统的反应速度。例如: 通过优化文件系统,提高磁盘IO的读写速度; 通过优化操作系统调度策略,提高PostgreSQL的在高负荷情况下负载能力; 优化表结构、索引、查询

数据知道的博客 4万+

JXTA技术结构

层次结构 JXTA由三层组成,如图2所示。第一层是JXTA核心层,它包含了服务所需要的核心功能;第二层是服务层,它提供了访问JXTA协议的接口;第三层是应用层,它使用服务来访问JXTA网络和JXTA提供的功能。这样的设计和一个标准的操作系统比较相似,标准的操作系统包括核心操作系统、服务和应用程序。1.核心层(JXTA Core):提供了对P2P应用与服务的核心支持。其中,Peer组建立

VGOLive 1026

Android Framework SurfaceFlinger面试题及参考答案

请简述 SurfaceFlinger 在 Android 系统中的作用。 SurfaceFlinger 是 Android 系统中一个非常关键的服务。它主要负责将多个应用程序的 Surface 合成到一个屏幕显示内容中。 从应用程序的角度来看,每个应用都有自己的 UI 界面,这些 UI 界面实际上是由一系列的图层(Surface)构成。例如,一个应用可能有背景图层、按钮图层、文本图层等。应用通过向 SurfaceFlinger 提供这些 Surface 来请求显示。 SurfaceFl

大模型大数据攻城狮的专栏 1186

JXTA编程基本知识和经验总结

 给初学者一些解惑!1、Peer(对等点)  Peer是一个虚拟的通信点。在一台计算机或者设备上可以有很多个Peer,一个Peer并不是一个用户,因为一个用户可以有多个Peer,同一个设备上 也可以有多个Peer(在测试的时候经常用到)。因为Peer不等同于用户,所以需要将用户和Peer抽象出来并分离开。  Peer与特定的网络服务联系得很紧,在JXTA的参考实现中,Peer可以使用网络提

974

使用R语言整理GEO数据的简易教程

本教程介绍了使用R语言从GEO数据库下载数据并进行数据整理的基本步骤。根据实际研究问题,你可能需要进行更复杂的数据处理和分析。R语言作为一种强大的生物信息学工具,为GEO数据的整理、分析和可视化提供了丰富的功能和工具。希望这个教程能够帮助你入门GEO数据整理和R语言的应用。如果你在使用过程中遇到问题,或需要进一步的指导,请随时向我询问。祝你在GEO数据分析的旅程中取得成功!

Mrrunsen的博客 3743

YOLOv8模型改进、剪枝、蒸馏和Web端界面的直观展示

模型蒸馏与性能提升 为了进一步优化YOLOv8模型,可以使用蒸馏技术将大型模型的知识转移到小型模型中。在模型蒸馏过程中,通过定义适当的损失函数和训练策略,学生网络可以学习教师网络的知识,并达到接近教师网络性能的效果。这样做不仅可以减少模型的存储和计算开销,还可以提高模型的推理速度和实时应用的响应能力。这样,用户可以直观地观察到模型的性能和应用的效果。为了优化YOLOv8模型并实现直观地观看检测效果或训练结果的全家通应用,本文将探讨如何通过改进、剪枝和蒸馏技术,并结合Web端界面来提升模型性能。

weixin_51988935的博客 2397

第五章--JXTA协议

JXTA defines a series of XML messages, or protocols, for communication between peers. Peers use these protocols to discover one another, advertise and discover network resources, and communication and route messages JXTA的定义了一个XML消息,或Peers之间的一系列协议通信。Peers利

baobaoyeye的专栏 1032

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【编程】对等网络(P2P) - JXTA 介绍

        JXTA 是 Juxtapose (并列)的缩写。JXTA最早起源于2000年的夏天,现在大家把JXTA看成是P2P的平台,JXTA的目标是要解决几个技术与商业上的难题。第一是解决众多P2P系统互不相通的问题。2000年,是P2P突飞猛进的高潮年,但高潮背后却是许多小公司用自己的封闭系统试图在Internet上圈一块地。Sun认为,只有互通才能真正发挥出P2P的优势,就好像IM(I

1907

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

jxta java_JXTA-JavaP2P JXT

JXTA——Java P2P网络编程技术/使用须知.txtJXTA——Java P2P网络编程技术/第四章/SRC/MAKEDATE.BATJXTA——Java P2P网络编程技术/第四章/SRC/MAKEDOC.BATJXTA——Java P2P网络编程技术/第四章/SRC/NET/JXTA/IMPL/SHELL/BIN/MKDOC/mkdoc.javaJXTA——Java P2P网络编程技术/...

weixin_39910481的博客 301

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

JXTA 双向通讯

JXTA 双向通讯 可以通过 JxtaServerSocket /JxtaSocket和 JxtaServerPipe/JxtaBiDiPipe 来实现 其实现的过程非常的类是我们做FTP的时候所采用的ServerSocket/Socket机制,也就是服务断监听客户端连接的原理。以JxtaServerPipe为例,在服务端:serverPipe = new JxtaServerPipe(eg.

changewang的专栏 1113

Android和JXTA协议模型的无线D2D通信技术

随着移动通信系统的演进和发展,带来需求带宽的迅速增大,但是由于移动通信系统频谱资源非常有限,可分配的带宽满足不了实际的应用需要,所以亟需研究更有效的带宽分配和利用的技术。D2D(Device to Device)通信是一种在系统的控制下,允许终端之间通过复用小区资源直接进行通信的新型技术。它不依赖中心节点而是依靠网络边缘节点,实现自组织与对等协作的资源发现和共享,因此拥有自组织、可扩展性、鲁棒性、

黄沙百战穿金甲,不破楼兰终不还。 1461

关于jxta协议心得

jxta有六个核心的协议:1、PDP协议(Peer Discovery Protocol):用于一个Peer发布自己的资源和发现其他Peer发布的资源,这里发布资源都是通过广告(Advertisement)来实现的。2、PIP协议(Peer Information Protocol):用于一个Peer获取其他Peer的状态信息(在线、新加入等)3、PRP协议(Peer Rosolver

houjingjun的专栏 517

转:关于P2P的简略总结

前段时间看了点关于P2P技术的资料,现在简单的整理写进自己的博客,对于更深入的学习会在后续的博客中更新总结。 这篇博客的主要内容如下: 1.P2P的定义及特点 2.P2P网络拓扑结构 3.P2P关键技术的初步理解 4.JXTA简介 一、首先了解P2P的定义及特点: P2P,即Peer-To-Peer的缩写,意思就是伙伴对伙伴、对等、点到点的意思,应用到网络上就是对等网络、...

iteye_14951的博客 558

使P2P能进行交互操作:Jxta的故事

使 P2P 能进行交互操作:Jxta的故事(来源:http://www-900.ibm.com/developerWorks/) 内容:Jxta 的设计理念Jxta 的独立性Jxta 核心构件Jxta 协议基于 Jxta 的系统的属性Jxta 如何与 .Net 和 Jini 较量Jxta 的多功能性参考资料关于作者对本文的评价对最新 P2P 技术兼具实用性和可操作性的介绍 Sing Li (wes

songgz的专栏 1752
上一篇: JXTA 开发手册(二)第三章 JXTA概念
下一篇: 高效的算法
starshift
博客等级 码龄21年 66粉丝 60原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值