
网络编程
文章平均质量分 77
tcp\udp
18岁boy想当攻城狮
这个作者很懒,什么都没留下…
展开
-
【7】粘包丢包
int sqlite3_get_table(sqlite3 db, / 要打开的数据库 */const char zSql, / sql语句 */char **pazResult, / 成功执行sql语句存放的结果 */int pnRow, / 执行结果的行数 */int pnColumn, / 执行结果的列数 */char *pzErrmsg / 错误信息 */);void sqlite3_free_table(原创 2022-05-24 08:21:55 · 487 阅读 · 0 评论 -
【6】组播 & UNIX 套接字 & sqlite
【1】组播组播代码流程:—UDP协议发送者:1、创建用户数据报套接字2、指定组播地址224.0.0.0~3、发送(sendto)接收者:1、创建用户数据报套接字2、设置套接字属性为组播属性IPPROTO_IPstruct ip_mreqn {struct in_addr imr_multiaddr; /* IP multicast groupaddress */struct in_addr imr_address; /* IP address of local interfac原创 2022-05-24 08:21:24 · 216 阅读 · 0 评论 -
【5】三次握手&四次挥手&抓包工具&网络超时函数&广播
【1】TCP如何保证传输可靠?引入:TCP的三次握手和四次挥手机制三次握手机制:第一次握手:客户端connect主动请求连接服务器发送序列号Y、同步标志SYN,此时客户端处于SYN_SEND状态第二次握手:服务器接收到客户端请求并回应客户端序列号X,确认号Y+1、应答标志ACK,同步标志SYN此时服务器处于SYN_RECV状态第三次握手:客户端收到服务器请求回应服务器确认号X+1,应答标志ACK此时服务器处于:ESTABLISH状态。四次挥手机制:第一次挥手:客户端主动close关闭原创 2022-05-24 08:20:32 · 217 阅读 · 0 评论 -
【4】epoll和线程并发、进程并发
【1】epollepoll并发模型可以解决select缺陷,实现高效率,百万级服务器模型,被称为二十一世纪最好用的并发模型。epoll的优点:1、最大连接数量没有限制,上限是系统可以最大打开的文件数目;2、epoll是一种异步通知,无需轮询,效率要比select高3、成功返回实际事件个数,有效轮询。API接口:1.int epoll_createint epoll_create(int size);功能:创建红黑树根节点参数:size已经废弃掉,填1即可返回值:成功返回红黑树的一个句柄原创 2022-05-24 08:20:01 · 784 阅读 · 1 评论 -
【3】select通讯
IO模型:(1)阻塞IO模型 read write(2)非阻塞IO模型 putc(3)IO多路复用 select【1】fcntl 通过该函数设置文件描述符的属性 int fcntl(int fd, int cmd, long arg); int flag; flag = fcntl(0, F_GETFL); // 1.获取该文件描述符的原属性 flag |= O_NONBLOCK; //2. 修改对应的位 fcntl(0, F_SE原创 2022-05-17 18:55:40 · 135 阅读 · 0 评论 -
【2】UDP编程
【1】UDP 无连接,不可靠的传输协议;UDP编程流程:服务器端: 1. socket(),返回一个文件描述符,用于通信 2. bind(); //得先完成结构体的填充sockaddr_in 3. recvfrom(), //接收数据 4. sendto(), //发送数据 5. close(sockfd); 客户端: 1. socket(), 返回一个文件描述符,用于通信 2. 填充结构体,(目的是告诉程序,数据要发送给谁) 3. sendto() 4.原创 2022-05-17 18:54:13 · 133 阅读 · 0 评论 -
【1】 IP和TCP
【1】 IP分类 192.168.1.31 C类 , 点分十进制IP C0A8011F 4*8 = 32位 104.243.29.189 IP分类: A类: 第1字节为网络地址,其他3个字节为主机地址。第1字节的最高位固定为0; 0.0.0.0 - 127.255.255.255 B类: 128.0.0.0 - 191.255.255.255 C类: 192.0.0.0 - 223.255.255.255 D类: 224.0.0.原创 2022-05-17 18:53:34 · 342 阅读 · 0 评论