udp示例

server:


# -*- coding:gb2312 -*-
import socket
import time
import struct
if __name__ == "__main__":
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
host=‘‘
port=12345
s.bind((host,port))
while 1:
print("wait***")
message,address=s.recvfrom(1024)
message=bytes.decode(message)
if message != ‘time‘:
print("message error")
continue
secs=time.ctime()
reply=str.encode(secs)
s.sendto(reply,address)
print("succeed")

client:


# -*- coding=gb2312 -*-
import socket
if __name__ == "__main__":
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
address=(‘127.0.0.1‘,12345)
s.connect(address)
data=b‘time‘
s.sendall(data)
buf,address=s.recvfrom(1024)
buf=bytes.decode(buf)
print(buf)
print(address)

udp示例,布布扣,bubuko.com

时间: 2024-10-07 06:33:49

udp示例的相关文章

Socket网络编程TCP、UDP示例

Socket网络编程: 1) OSI(了解): 国际标准化组织ISO(International Orgnization for Standardization)指定了网络通信的模型:开放系统互联(OSI,Open System Interconnection),把网络通信工作分为七层:物理层(最底层)-数据链路层-网络层-传输层-会话层-表示层-应用层(应用程序) 数据格式 功能与连接方式 典型设备 应用层 网络服务与使用者应用程序间的一个接口 表示层 数据表示.数据安全.数据压缩 会话层 建

Linux socket编程示例(最简单的TCP和UDP两个例子)

一.socket编程 网络功能是Uinux/Linux的一个重要特点,有着悠久的历史,因此有一个非常固定的编程套路. 基于TCP的网络编程: 基于连接, 在交互过程中, 服务器和客户端要保持连接, 不能断开.重发一切出错数据.数据验证, 保证数据的正确性.完整性和顺序性, 缺点是消耗的资源比较大. 基于UDP的网络编程: 无连接协议, 在网络交互过程中不保持连接, 只需要在发送数据时连接一下, 不重发.验证数据.优点是资源消耗少, 数据的可靠性完整性 顺序性得不到保证. 二.编程步骤: 服务器:

J2SE网络编程之 TCP与UDP

1.什么是TCP TCP(Transmission Control Protocol传输控制协议)是一种面向连接的.可靠的.基于字节流的通信协议,位于传输层.这三个特点中,面向连接就如同打电话,双方的电话必须保持连接状态才能通话:可靠就如同QQ上的视频,一方发送视频请求,另一方必须同意后才能建立视频连接,也可以说安全性好:基于字节流,继续看下文就行.TCP最重要的思想就是大名鼎鼎的“三次握手”: 客户端向服务端发送请求报文: 服务端收到后向客户端回复: 客户端确认收到服务端的回复. 三次握手完成

Java学习总结(十三)——基于UDP协议网络编程

一.UDP网络编程1.面向无连接的数据传输,不可靠的,但效率高(音频,视频等).2.UDP一次发送的数据不能超过64kb.3.UDP编程所需要的类(1)DatagramSocket此类表示用来发送和接收数据报包的套接字(2)DatagramPacket此类表示数据报包方法:DatagramPacket(byte[]?buf, int?length, InetAddress?address, int?port)参数表示:buf - 包数据length - 包长度address - 目的地址port

JAVA NIO工作原理及代码示例

简介:本文主要介绍了JAVA NIO中的Buffer, Channel, Selector的工作原理以及使用它们的若干注意事项,最后是利用它们实现服务器和客户端通信的代码实例. 欢迎探讨,如有错误敬请指正 如需转载,请注明出处 http://www.cnblogs.com/nullzx/ 1. ByteBuffer 1.1直接缓冲区和非直接缓冲区 下面是创建ByteBuffer对象的几种方式 static ByteBuffer allocate(int capacity) static Byte

Netty实战十三之使用UDP广播事件

1.UDP的基础知识 我们将会把重点放在一个无连接协议即用户数据报协议(UDP)上,它通常用在性能至关重要并且能够容忍一定的数据报丢失的情况下. 面向连接的传输(如TCP)管理了两个网络端点之间的连接的建立,在连接的生命周期内的有序和可靠的消息传输,以及最后,连接的有序终止.相比之下,在类似于UDP这样的无连接协议中,并没有持久化连接这样的概念,并且每个消息(一个UDP数据报)都是一个单独的传输单元. 此外,UDP也没有TCP的纠错机制,其中每个节点都将确认它们所接收到的包,而没有被确认的包将会

linux服务ntp

NTP服务器 NTP --------- Network Time Protocol 网络时间协议 软件: ntp 配置文件:/etc/ntp.conf 服务:ntpd 端口:123/udp 示例:配置ntp时间服务器 1) 安装ntp软件 [[email protected] ~]# yum install -y ntp 2) 编辑ntp配置文件 [[email protected] ~]# vim /etc/ntp.conf restrict 192.168.87.0 mask 255.25

名字与地址转换getservbyname 与 getservbyport函数

名字与地址转换getservbyname 与 getservbyport函数 服务也通常靠名字来标志,getservbyname函数用于根据给定名字查找相应服务. #includestruct    servent *getservbyname( const char *servname, const char *protoname );成功:返回servent类型非空指针:失败:空指针:本函数返回非空指针 struct    servent{      char      *s_name;  

Python 十一、python网络编程

一.MySQLdb模块 python访问mariadb|mysql依赖于第三方模块MySQLdb,在pypi上下载下来 路径:https://pypi.python.org/pypi/MySQL-python/ MySQL-python依赖于easy_install那先安装setuptools,这里省略 [[email protected] ~]# unzip MySQL-python-1.2.5.zip [[email protected] ~]# cd MySQL-python-1.2.5