码迷,mamicode.com
首页 > 编程语言 > 详细

Java使用UDP进行通信

时间:2020-05-11 18:54:29      阅读:76      评论:0      收藏:0      [点我收藏+]

标签:socket   main   拨号   上线   udp   数据   计费   host   数据报   

场景

AAA(网络安全系统) 是认证(Authentication)、授权(Authorization)和计费(Accounting)的简称,是网络安全中进行访问控制的一种安全管理机制,提供认证、授权和计费三种安全服务。
RADIUS:Remote Authentication Dial In User Service,远程用户拨号认证系统由RFC2865,RFC2866定义,是应用最广泛的AAA协议。AAA是一种管理框架,因此,它可以用多种协议来实现。在实践中,人们最常使用远程访问拨号用户服务(Remote Authentication Dial In User Service,RADIUS)来实现AAA。

对方AAA radius服务器,向我方传输用户上线及相关流量计费信息,我方进行实时接收并展示。而 Radius协议是采用UDP协议作为其传输层协议。

使用

发送端

import java.io.IOException;
import java.net.*;

/**
 * @Describtion Todo
 * @Author yonyong
 * @Date 2020/5/11 16:48
 * @Version 1.0.0
 **/
public class UDPServer {
    public static void main(String[] args) throws IOException {
        //1、创建udp服务,通过DategramSocket对象;
        DatagramSocket ds=new DatagramSocket();

        //2、确定数据,并封装数据到数据包.DatagramPacket(byte[] buf, int length, InetAddress address, int port)
        String string = "yonyong 666";

        //getBytes(): 使用平台的默认字符集将字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
        byte[] buf=string.getBytes();
        DatagramPacket dp=new DatagramPacket(buf, buf.length, InetAddress.getByName("127.0.0.1"),10000);

        //3、通过socket服务,将已有的数据报发送出去,通过send方法。
        ds.send(dp);

        //4、关闭资源
        ds.close();
    }
}

接收端

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

/**
 * @Describtion Todo
 * @Author yonyong
 * @Date 2020/5/11 16:53
 * @Version 1.0.0
 **/
public class UDPClient {
    public static void main(String[] args) throws IOException {
        DatagramSocket ds=new DatagramSocket(10000);

        while(true){
            byte[] buf=new byte[1024];
            DatagramPacket dp=new DatagramPacket(buf, buf.length);

            ds.receive(dp);

            String ip=dp.getAddress().getHostAddress();
            String data=new String(dp.getData(),0,dp.getLength());

            System.out.println(ip+"::"+data);
        }
    }
}

Java使用UDP进行通信

标签:socket   main   拨号   上线   udp   数据   计费   host   数据报   

原文地址:https://www.cnblogs.com/yonyong/p/12870430.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!