NetworkManager和NetworkConfigurator
NetworkManager是用来初始化JXTA平台的,在这里可以对你自己Peer的名字和ID,你的JXTA主目录,Seeding RDV和Relay,infrastructure peer group等等信息进行设置。有些设置可以直接对NetworkManager进行,但通常是得到此manager的NetworkConfigurator,通过Configurator对JXTA平台进行设置。完成设置之后,就可以启动JXTA平台了,通过调用NetworkManager.startNetwork()来启动,返回值是刚才设置的infrastructure peer group(假如没有设置,默认是netPeerGroup)。那么这个infrastructure peer group有什么用呢?它是对构成我们的JXTA网络起到基础设施的作用。首先,所有我们自定义的peer group都是基于这个infrastructure peergroup,是他的子组。其次,他为我们的JXTA网络传递一些基础数据,最明显的一个例子是RDV的连接,假如一个peer加入了peer group A,但是没有找到A的RDV节点,于是他将接收不到组内的任何信息,这时他可以监听infrastructure peer group,因为A的RDV会在其上广播自己的RDV广告,当在基础网络上获得了RDV广告后,节点就可以顺利找到自己组的大家庭了。由此可见,infrastructure peer group对构成JXTA网络起着关键作用,我们可以使用JXTA默认的netPeerGroup,也可以使用自己创建的suisPeerGroup作为基础网络。
JXTA程序在启动之前都需要进行配置,管理整个JXTA程序的是net.jxta.platform.NetworkManager类的一个实例:
manager=new NetworkManager(NetworkManager.ConfigMode.ADHOC,"HelloWorld",new File(new File(".cache"),"HelloWorld").toURI);
manager.startNetwork();
NetworkManager的构造函数的第一个参数是Peer的型,tutorial里写的是ADHOC,我们一般使用EDGE、RELAY、RENDEZVOUS或者RENDEZVOUS_RELAY。HelloWorld是节点名称,第三个参数定义了Home的位置,此处是程序目录下的.cache/HelloWorld/文件夹。Home用于保存和JXTA节点有关的所有信息,包括配置文件和广告、对等组信息等缓存文件。生成了NetworkManager之后可以通过startNetwork将返回NetPeerGroup的一个实例,在以后我们会用到现在做到的,仅仅是根据默认配置启动JXTA,这是远远不够的,我们必须按照自己的要求对节点进行配置。
首先,对于NetworkManager的配置必须在调用startNetwork之前。不然将使用默认配置。对NetworkManager可以设置模式、PeerID、Home位置等,一个比较重要的设置是setConfigPersistent,设为true的话,在启动JXTA平台时会将当前配置写入Home目录的PlatformConfig文件中,以供下次读取。
更多的设置是通过net.jxta.platform.NetworkConfigurator类来实现的,可以通过调用NetworkManager的getConfigrurator()函数获得对应NetPeerGroup的NetworkConfigurator。
在NetworkConfigurator可以通过读取PlatformConfig文件以载入预先完成的配置。
分享到:
相关推荐
NetworkManager是一款强大的网络管理工具,尤其适用于服务器和客户端之间的数据同步。它简化了网络配置和管理,使得即使是对IT技术不甚了解的菜鸟用户也能轻松上手。在本示例中,我们将深入探讨NetworkManager的核心...
CentOS 8中使用NetworkManager配置bond/vlan,以及为单物理网卡配置多个IP地址。
在这个过程中,NetworkManager和Systemd-networkd是两种常见的服务管理工具。NetworkManager被许多Linux发行版作为默认的网络管理器,它提供了易于使用的界面来配置网络连接,包括有线、无线以及移动宽带等。而...
在Unity引擎中,NetworkManager是用于处理网络连接和同步的核心组件,它允许开发者轻松地创建多人在线游戏。本文将深入探讨如何利用NetworkManager实现网络场景切换的同步控制,以及其在客户端和服务器之间的数据...
linux系统可安装的网络管理工具(NetworkManager),管理网络及WIFI。
在RHEL(Red Hat Enterprise Linux)和Rocky Linux 8操作系统中,NetworkManager是一个关键的系统组件,负责管理和配置网络接口,包括有线以太网、无线Wi-Fi以及移动宽带(WWAN)连接。然而,有时用户可能会遇到使用...
描述中提到的“资源全名:mypy-boto3-networkmanager-1.16.10.0.tar.gz”进一步确认了文件的完整名称,并指出它来源于PyPI,这是Python开发者发布和获取第三方库的主要平台。 “Python库”的标签说明这个压缩包包含...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
离线安装包,亲测可用
NetworkManager-l2tp是用于NetworkManager 1.8及更高版本的VPN插件,它支持L2TP和L2TP / IPsec(即,基于IPsec的L2TP)连接。 对于L2TP支持,它使用xl2tpd( ) 为了获得IPsec支持,它使用以下任一方法: 利伯...
离线安装包,亲测可用
离线安装包,亲测可用
Centos7 el7.x86_64 官方离线安装包,安装指令为 sudo rpm -ivh NetworkManager-glib-devel-1.18.4-3.el7.i686.rpm
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
使用dmenu(而不是nm-applet)管理NetworkManager连接 特征 连接到现有的NetworkManager wifi或有线连接 连接到新的wifi连接。 要求输入密码 连接到_existing_ VPN,Wireguard,GSM / WWAN和蓝牙连接 启用/禁用wifi...
Centos7 el7.x86_64 官方离线安装包,安装指令为 sudo rpm -ivh NetworkManager-wifi-1.18.4-3.el7.x86_64.rpm
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
通过Boto3的NetworkManager客户端,开发者可以便捷地进行网络配置和管理操作,如创建、更新和删除网络资源。 mypy-boto3-networkmanager库是这两个工具的结合,它的目的是为Boto3的NetworkManager服务提供类型提示...
mypy_boto3_networkmanager扩展了这一功能,为Boto3的NetworkManager API提供了类型提示,帮助开发者确保与AWS NetworkManager服务交互时使用的参数和返回值类型正确无误。 使用这个轮子文件安装mypy_boto3_...
`mypy_boto3_networkmanager-1.14.31.0-py3-none-any.whl` 是一个针对Python的特定库的压缩包文件,主要用于类型检查和AWS NetworkManager服务的交互。在这个详细的讨论中,我们将深入探讨该库的核心功能、如何安装...