1. #!/usr/bin/python
  2. #coding=utf-8
  3. #发送端
  4. import sys,struct,socket
  5. from time import sleep
  6.  
  7. message="hello"
  8. message1="nihao"
  9.  
  10. multicast_group=('224.3.29.73',10003)
  11. multicast_group1=('224.3.29.74',10004)
  12.  
  13. sock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
  14.  
  15. sock.timeout(3)
  16.  
  17. ttl=struct.pack('b',1) #将数字1转换成无符号字符类型.在python中没有这种类型,但是内核需要,所以转换
  18.  
  19. sock.setsockopt(socket.IPPROTO_IP,socket.IP_MULTICAST_TTL,ttl)
  20.  
  21. try:
  22. while 1:
  23. sleep(2)
  24. sent=sock.sendto(message,multicast_group)
  25. sent=sock.sendto(message1,multicast_group1)
  26.  
  27. print >>sys.stderr,"waiting to receive"
  28.  
  29. try:
  30. data,server=sock.recvfrom(1024)
  31. except sock.timeout:
  32. print >>sys.stderr,"time out ,no more response"
  33. break
  34. else:
  35. print >>sys.stderr,"received %s from %s"%(data,server)
  36. finally:
  37. print >>sys.stderr,"closing socket"
  38. sock.close()
  1. #!/usr/bin/python
  2. #接收端
  3. import socket
  4. import sys
  5. import struct
  6.  
  7. multicast_group = '224.3.29.72'
  8. server_address = ('',10001)
  9.  
  10. sock = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
  11.  
  12. sock.bind(server_address)
  13.  
  14. group = socket.inet_aton(multicast_group)
  15. mreq = struct.pack('4sL',group,socket.INADDR_ANY)
  16. sock.setsockopt(socket.IPPROTO_IP,socket.IP_ADD_MEMBERSHIP,mreq)
  17.  
  18. while True:
  19. print >>sys.stderr,'\nwaiting to receive message'
  20. data,address = sock.recvfrom(1024)
  21.  
  22. print >>sys.stderr,'received %s bytes from %s'%(len(data),data)
  23. print >>sys.stderr,'sending acknowledgement to',address
  24. sock.sendto('gaozhiqiangf',address)

python-组播的更多相关文章

  1. Python3组播通信编程实现教程(发送者+接收者)

    一.说明 1.1 标准组播解释 通信分为单播.多播(即组播).广播三种方式 单播指发送者发送之后,IP数据包被路由器发往目的IP指定的唯一一台设备的通信形式,比如你现在与web服务器通信就是单播形式 ...

  2. ganglia组播和单播

    ganglia快速开始向导(翻译自官方wiki) 发布于 2012 年 1 月 23 日 由 admin 2 comments发表评论   转自:http://cryinstall.com/?p=18 ...

  3. Linux IPC socket 广播,组播

    getsockopt()/setsockopt() //获得sockfd指向的socket的属性 int getsockopt(int sockfd, int level, int optname, ...

  4. IPv4组播通信原理

    2011-05-08 21:21:14 标签:组播 vin_do,vin_do学习笔记,笔记 休闲 职场 摘自网络,感谢原作者 摘要: 本文试图成为学习TCP/IP网络组播技术的入门材料.文中介绍了组 ...

  5. UDP及其组播,接收发送封装

    1.Receiver public class Receiver { public delegate void HeartBeat(byte[] data); public event HeartBe ...

  6. ffmpeg无法接收组播流问题处理

    问题:ffmpeg无法对IP组播进行处理,表现如下 [root@os01 /]# ffprobe udp://225.0.0.2:9000 ffprobe version Copyright (c) ...

  7. 组播(Multicast)传输

    组播(Multicast)传输: 在发送者和每一接收者之间实现点对多点网络连接. 如果一台发送者同时给多个的接收者传输相同的数据,也只需复制一份的相同数据包.它提高了数据传送效率.减少了骨干网络出现拥 ...

  8. dell n2000 组播抑制

    http://en.community.dell.com/support-forums/network-switches/f/866/t/19677497 http://en.community.de ...

  9. Ztack学习笔记(6)-广播组播点播

    Zigbee网络中进行数据通信主要有三种类型:单播.组播.广播.那这三种方式如何设置呢,在哪里设置呢, 一. 广播 当应用程序需要将数据包发送给网络的每一个设备时,使用这种模式.广播的短地址有三种 0 ...

  10. [转]IP_ADD_MEMBERSHIP : 组播错误 的解决方法:

    [转]IP_ADD_MEMBERSHIP : 组播错误 的解决方法: http://www.cnitblog.com/dvb-dvb/archive/2012/10/15/aa.html by def ...

随机推荐

  1. 洛谷P4556 [Vani有约会]雨天的尾巴(线段树合并)

    题目背景 深绘里一直很讨厌雨天. 灼热的天气穿透了前半个夏天,后来一场大雨和随之而来的洪水,浇灭了一切. 虽然深绘里家乡的小村落对洪水有着顽固的抵抗力,但也倒了几座老房子,几棵老树被连根拔起,以及田地 ...

  2. Java反射API研究(1)——注解Annotation

    注解在表面上的意思,只是标记一下这一部分,最好的注解就是代码自身.而在java上,由于注解的特殊性,可以通过反射API获取,这种特性使得注解被广泛应用于各大框架,用于配置内容,代替xml文件配置. 要 ...

  3. Git 安装配置,key导入

    系统 Centos 6.5 安装git 命令  yum install  git 配置git用户名 git config --global user.name "yangchengguo&q ...

  4. 记录---IIS显示asp.net程序的具体错误

    原来IIS设置成显示单一的错误页面 但是最近的服务器页面报错,但是本地确实完好的:所以想着让服务器显示具体的报错 网上找到两种方法: 先说第一种有效的: 通过 web.config 配置 其实,上面在 ...

  5. ASP.NET Core 2.0 in Docker on Windows Containers

    安装Docker for Windows https://store.docker.com/editions/community/docker-ce-desktop-windows 要想将一个ASP. ...

  6. MvvmLight框架使用入门(二)

    上一篇我们简单对MvvmLight做了介绍.罗列了三个DLL中,各个命名空间下主要类的定义及大致作用.因为只是范范的概论,对于从未接触过MvvmLight的萌新来说,根本就是在晃点他们.不过万事开头难 ...

  7. Remoteland HDU - 4196

    题意: 给出一个n,在[1, n] 中挑选几个不同的数相乘,求能的到的最大完全平方数 解析: 最大的肯定是n!, 然后n!不一定是完全平方数 (我们知道一个完全平方数,质因子分解后,所有质因子的质数均 ...

  8. 【OCP-12c】CUUG 071题库考试原题及答案解析(17)

    17.(7-11) choose twoView the Exhibit and examine the structure of ORDER_ITEMS and ORDERS tables.You ...

  9. AVA + Spectron + JavaScript 对 JS 编写的客户端进行自动化测试

    什么是 AVA (类似于 unittest) AVA 是一种 JavaScript 单元测试框架,是一个简约的测试库.AVA 它的优势是 JavaScript 的异步特性和并发运行测试, 这反过来提高 ...

  10. IDEA中配置SpringMVC框架 第一个演示【转】

    环境: intellij IDEA 2017 CI JDK 1.8 tomcat 8.5.23 具体步骤 1.新建项目 勾选Spring MVC .Web Application(勾选了Spring ...