内部分享精简版
参考链接:https://blog.csdn.net/dog250/article/details/6896949
# encoding: utf-8
"""
@version: 1.0
@author: pierrexiong
@file: udp_server
@time: 2018/8/2 下午7:56
"""
from socket import *
HOST = '127.0.0.1'
PORT = 1080
s = socket(AF_INET, SOCK_DGRAM)
s.bind((HOST, PORT))
print '...waiting for message..'
while True:
data, address = s.recvfrom(1024)
print data, address
s.sendto('this is the UDP server', address)
域 | 描述 |
---|---|
AF_INET | ipv4 |
AF_INET6 | ipv6 |
AF_UNIX | unix域 |
AF_UPSPEC | 未指定 |
类型 | 描述 |
---|---|
SOCK_DGRAM | 固定长度的、无连接的、不可靠的报文传递(如UDP) |
SOCK_RAW | IP协议的数据报接口(如ICMP) |
SOCK_SEQPACKET | 固定长度的、有序的、可靠的、面向连接的报文传递 |
SOCK_STREAM | 有序的、可靠的、双向的、面向连接的字节流(如TCP) |
# encoding: utf-8
"""
@version: 1.0
@author: pierrexiong
@file: udp_test2
@time: 2018/7/30 下午12:21
"""
from socket import *
table_list = "test,test2,test3"
HOST = "127.0.0.1"
PORT = 1080
s = socket(AF_INET, SOCK_DGRAM)
for table in table_list.split(","):
message = str(table) + "|test_sendto\n"
print s.sendto(message, (HOST, PORT))
print "[send_message]:" + message
nc -u 127.0.0.1 1080
echo "124" >> /dev/udp/127.0.0.1/1080
# encoding: utf-8
"""
@version: 1.0
@author: pierrexiong
@file: udp_test
@time: 2018/7/30 下午12:21
"""
from socket import *
table_list = "test,test2,test3"
HOST = "127.0.0.1"
PORT = 1081
s = socket(AF_INET, SOCK_DGRAM)
s.connect((HOST, PORT))
for table in table_list.split(","):
message = str(table) + "|test_sendall\n"
print s.sendall(message)
print "[send_message]:" + message
s.close()
报错: connection refused
UDP是无连接的协议,为什么会出现connection refused的情况!!!
UDP协议是无连接的,但是UDP socket是可以连接的,且连接是单向的、不可靠的。
参考文章: https://blog.csdn.net/mrpre/article/details/43451775
UDP像短信, TCP像打电话. 发布垃圾广告的话, 短信可是快多了。
QUIC全称quic udp internet connection,是Google发明并于2013年部署使用的传输协议。狭隘的讲,QUIC就等于用UDP实现的HTTP2 + TLS + TCP。
Chrome等主流应用均已经支持QUIC。
image.png
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。