导航:首页 > 编程语言 > java进行snmp通信的指南

java进行snmp通信的指南

发布时间:2024-09-30 18:58:43

⑴ 用java写一个客户端,向本机中发送snmp命令,拿到snmp服务器返回的结果

就是一般的socket客户端通讯

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Date;

public class TCPClent {
public static void main(String[] args) throws UnknownHostException,
IOException {
Socket socket = new Socket("localhost", 5000);
OutputStream outputStream = socket.getOutputStream();
outputStream.write(("connect to the server at time " + new Date()
.toString()).getBytes());
outputStream.flush();
System.out.println(socket);
InputStream is = socket.getInputStream();
byte[] bytes = new byte[1024];
int n = is.read()(bytes);
System.out.println(new String(bytes, 0, n));
is.close();
socket.close();
}
}

要解析结果,有点麻烦 参考http://www.docin.com/p-77535391.html

⑵ 使用Java网络编程编写SIP消息的收发,TCP和UDP有什么区别

TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
UDP---用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快

UDP
UDP 与 TCP 的主要区别在于 UDP 不一定提供可靠的数据传输。事实上,该协议不能保证数据准确无误地到达目的地。UDP 在许多方面非常有效。当某个程序的目标是尽快地传输尽可能多的信息时(其中任意给定数据的重要性相对较低),可使用 UDP。ICQ 短消息使用 UDP 协议发送消息。
许多程序将使用单独的TCP连接和单独的UDP连接。重要的状态信息随可靠的TCP连接发送,而主数据流通过UDP发送。

TCP
TCP的目的是提供可靠的数据传输,并在相互进行通信的设备或服务之间保持一个虚拟连接。TCP在数据包接收无序、丢失或在交付期间被破坏时,负责数据恢复。它通过为其发送的每个数据包提供一个序号来完成此恢复。记住,较低的网络层会将每个数据包视为一个独立的单元,因此,数据包可以沿完全不同的路径发送,即使它们都是同一消息的组成部分。这种路由与网络层处理分段和重新组装数据包的方式非常相似,只是级别更高而已。
为确保正确地接收数据,TCP要求在目标计算机成功收到数据时发回一个确认(即 ACK)。如果在某个时限内未收到相应的 ACK,将重新传送数据包。如果网络拥塞,这种重新传送将导致发送的数据包重复。但是,接收计算机可使用数据包的序号来确定它是否为重复数据包,并在必要时丢弃它。

TCP与UDP的选择

如果比较UDP包和TCP包的结构,很明显UDP包不具备TCP包复杂的可靠性与控制机制。与TCP协议相同,UDP的源端口数和目的端口数也都支持一台主机上的多个应用。一个16位的UDP包包含了一个字节长的头部和数据的长度,校验码域使其可以进行整体校验。(许多应用只支持UDP,如:多媒体数据流,不产生任何额外的数据,即使知道有破坏的包也不进行重发。)
很明显,当数据传输的性能必须让位于数据传输的完整性、可控制性和可靠性时,TCP协议是当然的选择。当强调传输性能而不是传输的完整性时,如:音频和多媒体应用,UDP是最好的选择。在数据传输时间很短,以至于此前的连接过程成为整个流量主体的情况下,UDP也是一个好的选择,如:DNS交换。把SNMP建立在UDP上的部分原因是设计者认为当发生网络阻塞时,UDP较低的开销使其有更好的机会去传送管理数据。TCP丰富的功能有时会导致不可预料的性能低下,但是我们相信在不远的将来,TCP可靠的点对点连接将会用于绝大多数的网络应用。

⑶ java如何获得当前的网络传输速度

1. JAVA还没有API可以做到。
2. 可以通过脚本等到主机的网络流量:windown使用wmi,linux使用命令(watch -n 1 "/sbin/ifconfig eth0 | grep bytes")。

3. 另外就是SNMP协议,通过对于的MID获得主机或者网络设备的流量。
java有个开源的实现叫做SNMP4J,你可以google “SNMP4J 网络流量”搜索到大量信息。(
使用SNMP轮询做实事流量监控的频率不要太高,否则会有负载问题。)

⑷ 怎么能用JAVA对进程CPU,内存等进行监控。

TOP命令,不能只监控进程的CPU和内存的使用量,并且也不能看到使用量总和,还是用脚本吧,类型这样:

ps -aux|grep java|awk ''|awk 'BEGIN END'

就可以,CPU同样。

⑸ java 发送snmp trap消息如何确定发送成功

snmptrapd需要一个配置文档,snmptrapd.conf。
文件用来指定管理进程如何处理接收到的snmp notification。
1. 在net-snmp安装目录下新建snmptrapd.conf文件,假设本系统使用以下路径:/ABC/soft/net-snmp/share/snmp/snmptrapd.conf

2. 在snmptrapd.conf中加入以下指令:
authCommunity log,execute,net public
这条指令指明以“public”为“community”请求的snmp “notification”允许的操作。
各变量意义如下:
log: log the details of the notification - either in a specified file, to standard output (or stderr), or via syslog(or similar).
execute: pass the details of the trap to a specified handler program, including embedded perl.
net: forward the trap to another notification receiver.

3. 若想对接收到的信息进行处理,可以使用traphandle,示例如下:
traphandle SNMPv2-MIB::coldStart /usr/nba/bin/traps cold
traphandle SNMPv2-MIB::warmStart /usr/nba/bin/traps warm
traphandle IF-MIB::linkDown /usr/nba/bin/traps down
traphandle IF-MIB::linkUp /usr/nba/bin/traps up
第一个参数为从snmptrapd接收的OID,第二个参数为调用的程序。此系统未做traphandle处理。

4. 启动snmptrapd
使用以下指令启动snmptrapd:
snmptrapd -f -Lo
该指令将接收到的信息通过标准输出设备打印出来,各参数意义如下:
-f: Do not fork() from the calling shell.
-L[efos]: Specify where logging output should be directed (standard error or output, to a file or via syslog

⑹ 请具体介绍一下 SNMP4J-Agent ,SNMP4J,SNMP4J-AgentX

SNMP4J是用于java开发网管系统,通过SNMP协议访问设备的。
SNMP4J-Agent是用于开发SNMP Agent程序的,是别人通过SNMP协议来访问你的Agent,你的Agent为别人提供数据,另外,这个API的License是Apachae 2.0,所以可以免费使用且不用公开源码。
SNMP4J-AgentX跟SNMP4J-Agent的区别就在于License是GPL,需要购买Commercial License或是公开源码。
详情请看两种License官方文档。

阅读全文

与java进行snmp通信的指南相关的资料

热点内容
win10系统文件缺失介质修复 浏览:900
怎么样系统升级 浏览:518
魔客吧传奇网站模板 浏览:365
一段代码解决html多浏览器兼容 浏览:803
淘车大师app官方下载 浏览:953
win10系统怎么能找回桌面文件 浏览:423
换主板怎么装驱动程序 浏览:563
宜搜小说旧版本 浏览:310
win10净网大师 浏览:262
苹果5s移动网络设置 浏览:680
主文件名的格式 浏览:336
如何找吃的app 浏览:11
js判断跳转前的页面地址 浏览:555
qq浏览器储存密码 浏览:309
网站字体阴影特效代码 浏览:187
g10刀轨铣内腔该如何编程 浏览:295
泰剧用哪个app 浏览:503
iphone4豆瓣fm 浏览:921
锤子的数据转移都转移什么 浏览:230
iphone4开机提示连接itunes 浏览:359

友情链接