Socket编程 | UDP基本编程和API详解

本文介绍了UDP用户数据协议的基本概念,强调其无连接、不可靠的特性,并适用于小尺寸数据传输、无线网络环境及多媒体服务。详细阐述了UDP通信流程,类比为Jack向Rose写信的过程,展示其无需确认的单向通信方式。同时,文章详细讲解了UDP套接字的创建、绑定、数据发送与接收的API,并提供了代码实例进行运行验证。
摘要由CSDN通过智能技术生成

1. 基本概念

UDP(User Datagram Protocol)用户数据协议,是不可靠的无连接协议。在数据发送前,因为不需要连接,所以可以进行高效率的数据传输。

适用情况:

  • 发送小尺寸数据(如对DNS服务器进行IP地址查询时)
  • 在接收到数据,给出应答较困难的网络中使用UDP。(如:无线网络)
  • 适合于广播/组播式通信中
  • 流媒体、VOD、VoIP、IPTV等网络多媒体服务中通常采用UDP方式进行时时数据传输

2. 通信流程

以下以 jack 向 rose 写信的过程展示UDP的通信流程:
在这里插入图片描述
jack 和 rose 两个人之间无联系,jack 在信封上填写 rose 的地址(ip+port) 信寄出去后,rose 可否收到不能确定,也可能丢掉,rose也不能确定有没有信奇来,所以类比TCP 通信 ,UDP无确认机制也没有建立连接,只是单方面的处理。

3. API 详解

3.1 创建套接字

接口声明:int socket
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Engineer-Jaylen_Sun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值