在服务器端:
package Zubo;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.MulticastSocket;
public class MultiServer extends Thread{
 String s="通知:四至六周星期六上午网络编程上机";
 int port=8001;//有时候有空指针的问题就是端口号和下面的地址不可以使用
 InetAddress ia=null;
 MulticastSocket ms=null;
 public MultiServer()
 {
  try{
   ms=new MulticastSocket(port);
   ia=InetAddress.getByName("239.7.8.9");
   ms.setTimeToLive(1);//设置组播套接字发送数据报范围为本地连接
   ms.joinGroup(ia);//加入多组播
  }catch(IOException e){
   e.printStackTrace();
  }
 }
 public void run()
 {
  while(true){
   try {
    DatagramPacket packet=null;
    byte data[]=s.getBytes();
    packet=new DatagramPacket(data,data.length,ia,port);
    ms.send(packet);
    sleep(2000);
    } catch (Exception e) {
     e.printStackTrace();
    }
  }
 }
 public static void main(String[] args) {
  new MultiServer().start();
 }
}
在客户端:
package Zubo;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.MulticastSocket;

public class MultiClient{
 public void service(){
  try{
   MulticastSocket ms=new MulticastSocket(8001);
   InetAddress ia=InetAddress.getByName("239.7.8.9");
   ms.joinGroup(ia);
   byte[] buffer=new byte[8192];
   while(true){
    DatagramPacket packet=new DatagramPacket(buffer,buffer.length);
    ms.receive(packet);
    String s=new String(packet.getData(),"UTF-8");
    System.out.println(s);
   }
  }catch(IOException e){
   e.printStackTrace();
  }
 }
 public static void main(String[] args) {
  new MultiClient().service();
 }
}

转载于:https://blog.51cto.com/3948494/1167905

基于UDP的组播网络程序相关推荐

  1. 基于 UDP 的 组播、广播详解

    背景 有些时候我们在网络通信中也需要用到 组播(多播).广播.现在我们来介绍如何实现. 建议:在此之前,关闭防火墙. ubuntu: service ufw stop windows: 控制面板关闭 ...

  2. 虚拟机无法接受组播消息_基于UDP的组播通信

    基于UDP的组播通信 在Java实现基于UDP协议的发送端与接收端通信中,我们可以知道它的一些主要操作: 在发送端:1,创建绑定指定端口的发送接口:DatagramSocket(port) 2,创建绑 ...

  3. python socket发送组播数据_python3通过udp实现组播数据的发送和接收操作

    本文主要通过对海康摄像头进行抓包,模拟发送了udp包,并抓取摄像头返回的数据包,解析并提取相关信息. 通过抓包发现,海康摄像头发送.接收数据使用udp协议,后来比较发现,使用python模拟起来比较简 ...

  4. python获取本地时间并向服务器发送udp报文_python3通过udp实现组播数据的发送和接收操作...

    本文主要通过对海康摄像头进行抓包,模拟发送了udp包,并抓取摄像头返回的数据包,解析并提取相关信息. 通过抓包发现,海康摄像头发送.接收数据使用udp协议,后来比较发现,使用python模拟起来比较简 ...

  5. 2022-10-31 网工进阶(三十三) IP组播-流量模型、组播概念、组播报文结构、组播地址与MAC、组播网络架构、组播服务模型、组播数据转发原理(RPF检查、组播分发树、组播协议介绍)

    IP组播概念 流量模型 网络中存在各种各样的业务,从流量模型看一般可以将业务分为两类: 点到点业务:比如FTP,WEB业务,此类业务主要特点是不同的用户有不同的需求,比如用户A需要下载资料A,用户B需 ...

  6. 基于UDP协议的局域网网络聊天工具

    /* * 本程序实现了基于UDP协议的局域网网络聊天工具. * 参考网上的源码,发现一个calss就可以搞定. * ChatFrame类创建窗口,包含JTextField和TextArea. * 前者 ...

  7. 组播技术基础——组播网络架构

    组播网络角色 组播源(Multicast Source) 组播流量的发送源,一个典型例子是多媒体服务器.在典型的组播实现中,组播源不需要激活任何组播协议. 组播接受者(Multicast Receiv ...

  8. 搬砖:新一代基于UDP的低延时网络传输层协议——QUIC详解

    技术扫盲:新一代基于UDP的低延时网络传输层协议--QUIC详解 本文来自腾讯资深研发工程师罗成的技术分享,主要介绍 QUIC 协议产生的背景和核心特性等. 1.写在前面 如果你的 App,在不需要任 ...

  9. 计算机怎么配置组播地址,基于eNSP的组播配置实验.docx

    基于 eNSP 的组播配置实验 摘 要:本文首先对路由协议与组播协议和进行简述, 其次通过 eNSP 模拟器完成网络的基础配置和多播配置,最 后通过实验测试来验证这一方法的可行性,并对应用过程中 的易 ...

最新文章

  1. 彩色条形码轻松解决盲人购物难题!无需对焦,识别速度快12倍,还能发出过敏警告...
  2. PS常用快捷键就这些了,记住绘图事半功倍
  3. Qt中的QRadioButton
  4. 关于CI的服务器与最佳实践,这里有一些思考 1
  5. 纯前端CSS实现动态太极阴阳鱼效果
  6. 2019年CNCF中国云原生调查报告
  7. 100. Same Tree 相同的树
  8. aoe网最早开始时间和最迟开始时间_关键路径(AOE)网 通俗易懂
  9. 跨库多维分析后台的实现
  10. ios开发之 -- 自动轮播图创建
  11. 【VB.NET】VB.NET基本语法常见问题的解答
  12. 微机个人笔记-半导体存储器(芯片的角度)概述
  13. NeurIPS2019无人驾驶研究成果大总结(含大量论文及项目数据)
  14. 今天讲讲hibernate的简单使用
  15. bzoj 2442: [Usaco2011 Open]修剪草坪(单调队列)
  16. Triple Flips CodeForces - 1072E
  17. R语言报错:Error in data[[rowvar]] : attempt to select less than one element in get1index
  18. 4s团队项目前端layui整合使用步骤
  19. Centos7 源码安装 Apache
  20. 过上等生活,享下等情欲

热门文章

  1. English sentences
  2. 2017第35周日乱记
  3. cas实现单点登录原理
  4. 搭建基于spring MVC框架 + RESTful架构风格技术总结
  5. 配置ip yum 单用户 救援 运行级别
  6. Crontab中shell每分钟执行一次HDFS文件上传不执行的解决方案
  7. Eclipse导入项目:No projects are found to import
  8. 管理表空间和数据文件——维护表空间——设置默认表空间和删除表空间和删除数据文件盒临时文件...
  9. CentOS下的freenx配置
  10. 关于玻璃体手术的最终建议