概述
标准JAVA的TCP, UDP,DNS网络
TiJOS 支持标准JAVA的TCP, UDP,DNS网络接口,标准网络应用通过java.net来支持。
标准网络应用开发说明
TiJOS 支持了大部分java.net中的类,主要包括:
类
说明
网络功能
Socket
TCP 客户端套接字
TCP Client
ServerSocket
TCP 服务端套接字
TCP Server
DatagramSocket
UDP套接字, 常与DatagramPacket一起使用
UDP
InetAddress
Internet地址
DNS
URI
统一资源标识符
TiJOS标准网络应用开发与标准JAVA一致, 具体可参考相关资料, 下面介绍一些典型应用的开发流程。
TCP 客户端
典型的TCP Client开发流程如代码所示:
//TCP服务器IP及PORT
String host = "192.168.1.55";
int port = 8080;
//连接服务器
Socket client = new Socket(host, port);
//发送数据到服务端
OutputStream output = client.getOutputStream();
output.write("Hello, this is client".getBytes());
output.flush();
//从服务端获取数据
InputStream input = client.getInputStream();
byte[] buffer = new byte[1024];
while (true) {
int len = -1;
len = input.read(buffer);
if(len > 0 ) //有数据收到
{
...
}
}
//关闭客户端
client.close();
TCP 服务端
典型TCP Server 开发流程如下所示:
//Server Socket
ServerSocket listener = new ServerSocket(8080);
System.out.println("local ip = " + listener.getLocalSocketAddress());
//Connected client socket
Socket socket = null;
//服务端等待客户端连接,默认超时时间: 60 seconds
socket = listener.accept();
System.out.println("a client is connected: " + socket.getRemoteSocketAddress());
//发送数据到客户端
OutputStream out = socket.getOutputStream();
out.write("Hello, This is the server.".getBytes());
out.flush();
//读取客户端数据
InputStream input = socket.getInputStream();
byte[] buff = new byte[1024];
while(true)
{
int len = 0;
len = input.read(buff);
if(len > 0)
{
System.out.println("message from client:" + new String(buff, 0, len));
}
}
UDP
典型的UDP应用如下所示:
DatagramSocket udpSocket = new DatagramSocket();
String remote = "192.168.1.55";
int port = 8080;
//UDP 发送数据
byte [] msg = ("Hello Server").getBytes();
DatagramPacket dp = new DatagramPacket(msg, msg.length, InetAddress.getByName(remote), port);
udpSocket.send(dp);
//UDP 接收数据
byte [] buffer = new byte[1024];
while(true)
{
dp.setData(buffer);
dp.setAddress(null);
//接收数据 默认超时时间10秒
udpSocket.receive(dp);
String info = new String(dp.getData(), 0, dp.getLength());
System.out.println("Received: " + info);
System.out.println("Remote IP:" + dp.getAddress());
}
最后
以上就是愤怒摩托为你收集整理的java dns数据包_标准JAVA的TCP/UDP/DNS网络的全部内容,希望文章能够帮你解决java dns数据包_标准JAVA的TCP/UDP/DNS网络所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复