基于udp的网络编程

  特点:不需要提前建立链接,每次收发都需要获取ip和端口

     又称数据报协议,一次发送对应一次接收,不会产生粘包问题

       不可靠传输,发送数据不需要回复ACK确认信息

       没有链接,服务端或者客户端的启动不需要先后顺序

  

udp服务端的套接字

1 ss = socket()   #创建一个服务器的套接字
2 ss.bind()       #绑定服务器套接字
3 inf_loop:       #服务器无限循环
4     cs = ss.recvfrom()/ss.sendto() # 对话(接收与发送)
5 ss.close()        

udp客户端的套接字

cs = socket()   # 创建客户套接字
comm_loop:      # 通讯循环cs.sendto()/cs.recvfrom()   # 对话(发送/接收)
cs.close()                      # 关闭客户套接字

示例代码

基于UDP协议通信的套接字

import socketserver = socket.socket(socket.AF_INET,socket.SOXK_DGRAM)server.bind(('127.0.0.1',8080))while True:client_data,client_addr=server.recvfrom(1024)server.sendto(client_data.upper(),client_addr)

服务端

import socketclient = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)while True:msg = input('    : ' ).strip()client.sendto(msg.encode('utf-8'),('127.0.0.1',8080))res,server_addr =  client.recvfrom(1024)

客户端

*********************

常用端口:   web端口 80

      dns端口 53

      dhcp端口 67

  

转载于:https://www.cnblogs.com/guodengjian/p/8919590.html

网络编程(socket)套接字之基于udp的套接字相关推荐

  1. python网络编程-socket编程

    一.服务端和客户端 BS架构 (腾讯通软件:server+client) CS架构 (web网站) C/S架构与socket的关系: 我们学习socket就是为了完成C/S架构的开发 二.OSI七层模 ...

  2. Java网络编程 Socket、ServerSocket 详解,方法介绍及完整代码示例

    Java网络编程 Socket.ServerSocket 详解,方法介绍及完整代码示例 概念 什么是网络编程? 网络编程是指编写运行在多个设备(计算机)的程序,这些设备通过网络连接起来.当这些通过网络 ...

  3. Python网络编程socket

    网络编程之socket 看到本篇文章的题目是不是很疑惑,what is this?,不要着急,但是记住一说网络编程,你就想socket,socket是实现网络编程的工具,那么什么是socket,什么是 ...

  4. 树莓派:入门(基础配置、GPIO、网络编程 Socket)

    树莓派在创客中越来越发挥重要的作用,树莓派的强大兼用性和功能丰富,得到 DIY 朋友的青睐.带大家认识目前最新的树莓派 3B+,从零基础到入门,到动手做有趣的应用. 本场 Chat 首先会带领大家入门 ...

  5. Python网络编程(Socket)

    Python网络编程(Socket) Python提供了两个访问级别的网络服务.在一个较低的水平,您可以访问底层操作系统的基本套接字支持,允许你实现面向连接和无连接协议的客户端和服务器 Python有 ...

  6. 网络编程socket之connect函数

    网络编程socket api存在一批核心接口,而这一批核心接口就是几个看似简单的函数,尽管实际上这些函数没有一个是简单.connect函数就是这些核心接口的一个函数,它完成主动连接的过程. conne ...

  7. Linux 网络编程——socket 网络编程

    文章目录 一.网络基础 TCP/UDP对比 TCP/IP协议族体系 socket IP地址 IP地址转化API inet_addr() inet_aton() inet_ntoa() inet_pto ...

  8. 树莓派 Python 网络编程 (Socket入门)

    树莓派  Python 网络编程 (Socket入门) 什么是 Socket? Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络 ...

  9. 网络编程socket之accept函数

    网络编程socket之accept函数 摘要:对于服务器编程中最重要的一步等待并接受客户的连接,那么这一步在编程中如何完成,accept函数就是完成这一步的.它从内核中取出已经建立的客户连接,然后把这 ...

最新文章

  1. 干货|10 张 GIF 动图让你弄懂基础算法必备概念
  2. 产品上线前会发生什么故事? | 每日趣闻
  3. 当你打开的程序在任务栏出现两个一样的怎么办?
  4. LeetCode Reverse Nodes in k-Group(单链表连续分段反转)
  5. shell 指令使用整理
  6. 大连理工优化方法matlab,大连理工大学2016年秋季优化方法大作业.pdf
  7. CentOS四种方法自建yum仓库
  8. php3级分类,关于php非递归三级分类输出json数据
  9. 7.FreeRTOS学习笔记-事件
  10. [独家放送]Unity2020规划预览,可视化编程又双叒叕来了!
  11. WPF实现截图功能——WPF制作文字OCR软件(三)
  12. 大数据BI平台建设需注意什么问题
  13. Python HackerRank 刷题 Maximum Subarray Sum
  14. 贵州大学计算机类是211吗,贵州大学排名,唯一一所211排名一百以后,本科一批只有两所...
  15. CentOS 6.5系统下载
  16. 教师计算机返岗实践方案,国培计划返岗实践方案
  17. 思科交换机:vtp协议
  18. HmacSHA1签名
  19. 别以为“质量门”是惠普的专利!
  20. Pandas常用操作命令(六)——数据分组groupby

热门文章

  1. Html5浏览器支持
  2. 编译gtk+程序报错gcc: pkg-config --cflags --libs gtk+-2.0: 没有那个文件或目录
  3. 用Maven插件生成Mybatis代码
  4. ios 状态栏 覆盖自定义View
  5. Windows内核情景分析 笔记
  6. C# Regex(2)
  7. 自动延时跳转到指定页面JS脚本代码
  8. PIL图像处理:读取图像,显示图像,ROI,保存图像
  9. Matlab百度中Cell(单元数据)的用法
  10. 浅谈单片机程序设计中的“分层思想”!