Linux--网络-->UDP_socket

先做一个了解

认识TCP协议

TCP(Transmission Control Protocol),传输控制协议有一个直观的认识。

传输层协议,有连接(先建立专属通道,再传数据,传完还要断开),可靠传输,面向字节流。

认识UDP协议

UDP(User Datagram Protocol用户数据报协议)有一个直观的认识;后面再详细讨论。

传输层协议,无连接(不用提前建立通道,直接发数据包,发出去不管对方收没收到),不可靠传输,面向数据报。

我们这里的可靠和不可靠,我们把他们当作特点,而不是优缺点,因为只要可靠就会做更多的工作。因此UDP协议会更轻量化。

网络字节序

小端:低字节放低地址(小 小 小)

大端:低字节放高地址

跨主机通信时,不管你电脑是大端还是小端 ,发送前统一转成网络大端序,接收后再转回本地主机序,保证数据解析一致。

先发出的数据是低地址,后发出的数据是高地址。

统一的接口,上面那个struct sockaddr是基类,下面两个是子类。

recvfrom

网络编程里,用来 "接收 UDP 数据" 的函数。因为 UDP 无连接 ,不知道谁发的,所以必须用这个函数把 "数据 + 发送方地址" 一起拿回来。

相关推荐
_upupup4 小时前
Linux的调试工具——gdb/cgdb
linux·服务器
JeJe同学5 小时前
Docker镜像导入、容器启动
linux·运维·docker
木子n15 小时前
车载以太网与SOME/IP服务化通信实战-01.从字节到服务:SOME/IP报文解析与四通道开销账
网络·网络协议·tcp/ip·车载以太网·some/ip
Jason_zhao_MR5 小时前
Linux与实时控制如何兼得
linux·嵌入式硬件·机器人·工业控制
闲云野鹤在人间6 小时前
MySQL|从理论、安装、备份到主从复制、MHA高可用详解
linux·运维·数据库·mysql·云计算
Escalating_xu6 小时前
【C 语言】数据在内存中的存储:补码、大小端、整型陷阱与 IEEE 754 全解析
java·c语言·网络
一个风轻云淡7 小时前
GCC 和 GDB命令简单解读
java·linux·前端
爱跳舞的烤冷面7 小时前
Linux篇——网络编程
网络
H.莓飛7 小时前
【数据结构】二叉树_OJ题
linux·开发语言·数据结构·算法
资料库017 小时前
Linux 8个常见运维故障排查
java·linux·运维