UDP通讯程序设计

1、编程模型函数化

1)发送数据

Sendto:发送数据

ssize_t sendto(int sockfd,const void *buf,size_t nbytes,int flags,const struct sockaddr *destaddr,socklen_t destlen);

头文件:sys/socket.h

参数:sockfd:套接字,buf:发送的数据的地址。Nbytes:要发送的数据量,flags:发送的标识符

Destaddr:目的的地址,destlen:地址的长度。

返回实际的发送数据量

2)接收数据

Recvfrom:

ssize_t recvfrom(int sockfd,void *restrict buf,size_t len,int flags,struct sockaddr *restrict addr,socklen_t *restrict addrlen);

头文件:sys/socket.h

参数:sockfd:套接字,buf:存储数据的位置。Len:期望接收数据的长度,flags:接收的标识符

addr:发送方的地址会被填充进来,addrlen:地址长度的指针。

udp_server.c

udp_client.c

时间: 2024-10-07 17:27:40

UDP通讯程序设计的相关文章

UDP通讯程序设计---6

一.函数化 1.1服务器使用的函数 创建socket----->socket 绑定地址-------->bind 接受数据-------->recvfrom 发送数据-------->sendto 结束连接-------->close 1.2客户机使用函数 创建套接字------>socket 发送数据-------->sento 接受数据-------->recvfrom 结束连接-------->close 二.函数学习 2.1 发送数据sendt

C#中的TCP通讯与UDP通讯

最近做了一个项目,主要是给Unity3D和实时数据库做通讯接口.虽然方案一直在变:从开始的UDP通讯变为TCP通讯,然后再变化为UDP通讯;然后通讯的对象又发生改变,由与数据库的驱动进行通讯(主动推送数据给驱动,数据库中数据发生变化把数据以UDP报文形式发送客户端)改为与实时数据库进行直接通讯(自己发送报文修改数据库中的数据,自己请求需要获取的数据并接收自己请求的数据):现在这个项目基本完结,由于这个过程既接触到了UDP又接触到了TCP,现在对其进行一番总结. 阅读目录 TCP通讯协议与UDP通

LWIP裸机环境下实现TCP与UDP通讯

前面移植了LWIP,并且简单的实用了DHCP的功能,今天来使用一下实际的数据通讯的功能 首先是实现TCP客户端,我先上代码 #ifndef __TCP_CLIENT_H_ #define __TCP_CLIENT_H_ #include "network.h" //连接状态 enum tcp_client_states { ES_NONE = 0, ES_RECEIVED, //接收到了数据 ES_CLOSING //连接关闭 }; //TCP服务器状态 struct tcp_clie

UDP 通讯代码

在使用 RAS使用拨号网络拨号的类建立 TCP/IP后,接下来是通过 TCP/UDP 进行数据的传输. 下面是使用 UDP 的例子,分为头文件和源代码 头文件zhUDPCE.h : 1 // UDP.h: interface for the CZhUDP class. 2 // 3 ////////////////////////////////////////////////////////////////////// 4 #ifndef _ZH_DUP_CE_H_ 5 #define _ZH

UDP通讯

UDP通讯方式非常简单,但数据安全性低.丢包率高. UDP通讯过程: 发送时,指定接收方IP和端口,即可发送数据 接收时,一直监听端口的信息,有信息来即可接收到. UDP编程: 1.编写界面 2.添加数据报组件 3.UDP程序编写 事件 主窗口.创建完毕() 结束 事件 变量 监听状态 为 逻辑型 变量 监听端口 为 整数型 事件 按钮1.被单击() 如果 监听状态 = 假 则 监听端口 = 编辑框1.内容 数据报1.开始监听(监听端口) 监听状态 = 真 弹出提示("UDP开始监听!"

[学习笔记]Java网络编程之UDP通讯

1. 体系结构 计算机网络各层及其协议的集合,称为网络的体系结构.目前公认的计算机网络体系结构有概念清楚理论完善的OSI七层协议结构和实际上广泛应用的TCP/IP四层体系结构. 2. 各层概述 应用层:直接为用户的程序提供服务,如支持万维网应用的HTTP协议,支持电子邮件的SMTP协议等. 运输层:负责向两个主机中进程之间的通信提供服务,主要使用面向连接的TCP协议和无连接的UDP协议. 网络层:负责为分组交换网上不同主机提供地址交付的通信服务,该层使用IP协议,所以在该层传送的数据称之为IP数

Java简单的UDP通讯例子

内容:简单的UDP通讯例子. Receiver: public class Receiver { public static void main(String[] args) { DatagramSocket ds = null; try { //UDP接收端 ds = new DatagramSocket(8080); //定义将UDP的数据包接收到什么地方 byte[] buf = new byte[1024]; //定义UDP的数据接收包 DatagramPacket dp = new D

QUdpSocket-Qt使用Udp通讯实现服务端和客户端

版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QUdpSocket-Qt使用Udp通讯实现服务端和客户端     本文地址:http://techieliang.com/2017/12/532/ 文章目录 1. QNetworkDatagram 2. 客户端 3. 服务端 4. 消息收发 1. QNetworkDatagram qt网络报文,可用其建立一个通讯内容包括目标ip.端口号.数据内容.同时接收到的信息也未此类型,可以访问接收数

W5100——TCP/UDP通讯

前段时间接触到W5100这款集成了PHY的以太网芯片,用作工业场合的通讯以及数据传输功能,现在回顾一下当时调试代码的经过. 大概框架:  stm32F4通过8位FSMC总线和W5100通讯. 用这款芯片的理由:集成了PHY,避免了外部再接转换芯片,另外有4个独立的SOCKET,可并行工作. TCP: 服务器端: 配置FSMC端口--->IP和端口绑定(打开了并行总线和自加位,写入gateway和IP)--->Socket初始化--->监听Socket--->任务子函数 客户端: 配