最后更新:2021-11-19 09:58:43 手机定位技术交流文章
用户数据报告协议(用户数据报告协议)是头号协议。
特征:互不相连、不可信、注重数据
应用设想:实时需求超过安全标准的情况。
tcp 协议( 传输控制协议) 是第二号 。
连接、可靠通信、字节流
安全需求超过实时需求的情景被称为应用情景。
一.3 网络通信进程有两个终端通信点:客户和服务。
客户是请求的终点,这意味着客户必须事先知道客户的地址信息(ip+port),服务端的地址信息通常是固定的,并提前提供给客户。
2.1server:
构造套接字: 在内部核心中, 创建一个套接字结构 。
int socket(int domain, int type,int porotocol);
地址类型 - AF_INET: IPV4 使用 IPV4 地址结构进行通信
SOCK_STREAM; SOCK_DGRAM 是套接字类型 。
IPPROTO_TCP:6;IPPROTO_UDP:17 议定书:协定类型
TCP 必须使用SOCK_STREAM, 但 UDP 必须使用 SOCK_ DGRAM 。
二. 一.2 将 IP+port 信息添加到 Socket 建造时生成的 Socket 架构 。
int bind(int sockfd,struct sockaddr *addr,socklen_t addrlen);
Sockfd: 生成一个可返回套接字的操作控点 。
Addr: 当前链接的地址信息 。
地址:地址信息长度。
返回值: 成功返回 0; 返回失败 1。
二.一.三 接收数据:当前程序接收选定的索克茨缓冲区的数据。
ssize_t recvfrom(int sockfd,void *buf,size_t len,int flag,struct sockaddr *srcaddr,socklen_t *addrlen);
Sockfd: 操作的手柄;
buff: 存储所收到数据的空间地址;
len: 收到地址的长度;
旗帜:选项符号,接收阻塞的默认值为0;
srcaddr: 数据来源的地址;
adrlen: 输入输出参数 - 指定要接收的地址结构长度, 并返回收到的实际地址数据长度 。
返回值: 返回成功收到数据的数量; 未返回 - 1 。
二.一.4 发送数据:将要传输的数据将放置在缓冲区内,送交Socket,必要时将选择内核分发。
ssize_t sendto(int sockfd,void *data,int len,int flag,struct sockaddr *peeraddr,socklen_t *addrlen);
Sockfd: 操作的手柄;
数据:将要传送的数据的实际位置;
Len: 将要传送的数据数量;
旗帜:选项符号,接收阻塞的默认值为0;
srcaddr: 端对端地址信息;
地址结构长度 。
返回值: 成功返回所提供的实际数据长度; 无法返回 - 1 。
2.1.5 闭合套接合套接合器
int close(int fd);
2.2client:
2. 2. 2.1 制作一个套接字: 在内部核心中, 设置套接字结构 。
2.2.2 捆绑带地址信息:在多数情况下,跳过这一步骤,在提供数据时,系统确定如果地址没有捆绑的正确地址。
二.二.3 数据传输
二.二.四 数据收集
二、二、二.5关闭
本文由 在线网速测试 整理编辑,转载请注明出处。