
网络编程
小猪快点跑
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
网络编程:C/S模型 - TCP
目录 一、代码结构 二、敲代码:服务器-客户端 三、epoll_server:水平触发LT + 多触发读read 四、epoll_server:边沿触发ET + 非阻塞IO循环(read) 一、代码结构 1、客户端 clie_fd = socket(AF_INET, STREAM, 0); connect(clie_fd, ); write(); read(); clo...原创 2019-10-15 22:04:19 · 445 阅读 · 0 评论 -
网络编程:C/S模型 - UDP
1、服务端 #include <stdio.h> #include <unistd.h> #include <sys/socket.h> #include <stdlib.h> #include <arpa/inet.h> #include <ctype.h> #include <string.h> #def...原创 2019-10-24 18:57:32 · 315 阅读 · 0 评论 -
网络编程:HTTP
1、GET请求 GET resource-url HTTP/1.1 Host:host-url Connection:Close // 短连接 GET resource-url HTTP/1.1 Host:host-url:80 // IP:Port,端口默认为80 Connection:Keep-alive ...原创 2019-09-07 16:29:54 · 108 阅读 · 0 评论 -
网络编程:HTML
目录 一、HTML 1、HTML 学习网站 2、HTML 参考手册 二、HTML 练习 1、test.html 程序 2、test2.html 一、HTML 1、HTML 学习网站 w3school:https://www.w3school.com.cn/html/index.asp 2、HTML 参考手册 w3school:https://www.w3school.com....原创 2019-10-23 17:28:59 · 365 阅读 · 0 评论 -
网络编程:cookie 和 session 的区别
一、cookie: 在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动的把上次请求存储的cookie数据自动的携带给服务器,服务器通过浏览器携带的数据就能判断当前...转载 2019-11-27 17:03:14 · 144 阅读 · 0 评论 -
socket网络编程笔记
一、基础知识 xinetd: 开源服务器,监听指定端口 ftp:20,21 ssh:22 http:80 smtp:25 1000以上 B/S模式 http协议,协议头+数据 方法 GET POST ... GET / HTTP/1.1 Host:xxx.xxx.xxx.xxx:8000 协议头部分(可选) \r\n HTTP/1.1 200 OK connect-Tyoe:回些客户...原创 2019-06-23 13:11:11 · 165 阅读 · 0 评论 -
网络编程:epoll 反应堆模式
epoll 反应堆模式 1、头文件和宏定义 2、系统 epoll_event 事件结构体 3、函数声明 4、main 函数 5、初始化 init_socklisten_tree 6、lfd 连接就绪处理函数 listenproc_lfd 7、cfd 读就绪处理函数 readproc_cfd,非阻塞循环读 8、cfd 写就绪处理函数 write_cfd 9、从监听树,删除/添加节点...原创 2019-10-27 22:14:15 · 521 阅读 · 0 评论 -
网络编程:telnet、ssh、nc
1、nc 命令测试服务器连接 nc ip port 2、telnet 命令测试 http 服务器 telnet ip port GET ./xxx.jpg http/1.1 3、ssh 命令测试 http 服务器 ssh ip // 默认端口是 22 ssh user@ip // 指定用户登录 4、ssh 与 telnet 比较 ssh 与 telnet ...原创 2019-10-23 17:23:27 · 656 阅读 · 0 评论 -
网络编程:winsocket 和 vmware ubuntu 通信,NAT 非端口映射
一、网络配置 1、NAT 虚拟网络配置 2、选择 NAT 3、查看ip 4、设置 VMnet8 ,ip自设,网关需要一致。 二、程序 1、WinSocketClient /* WinSocketClient.cpp */ #include "pch.h" #include <WINSOCK2.H> #include <STDIO.H>...原创 2019-10-22 16:58:10 · 336 阅读 · 0 评论 -
网络编程:多进程下多型客户端
1、server #include <stdio.h> #include <unistd.h> #include <sys/socket.h> #include <stdlib.h> #include <arpa/inet.h> #include <ctype.h> #include <string.h> #i...原创 2019-10-16 00:54:43 · 169 阅读 · 0 评论 -
面试题汇总:网络编程
1、tcp和udp的区别? (1)TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接; (2)TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付; (3)TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的;UDP没有拥塞控制,因此网络出现...原创 2019-09-24 21:10:56 · 776 阅读 · 0 评论 -
网络编程:read、write、send、recv、sendto、recvfrom
一、write、read 1、write (1)阻塞 write (2)非阻塞 write 2、read #include <unistd.h> ssize_t read(int fd, void *buf, size_t count); 对于普通文件(磁盘文件),read不会阻塞。如果没有读到文件尾,则返回 n > 0;如果读到文件尾,则返回 n...原创 2019-09-01 13:31:16 · 557 阅读 · 0 评论 -
网络编程:IO复用、阻塞/非阻塞、同步/非同步、(select、poll、epoll)
一、IO复用 I/O复用就通过一种机制,由内核代替应用程序监视多个描述符,一旦某个描述符就绪(读就绪/写就绪),就通知相应程序进行读写操作。 select,poll,epoll本质上都是同步I/O,因为在读写事件就绪后由用户程序负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,内核会把数据从内核拷贝到用户空间。 二、阻塞/非阻塞、...原创 2019-08-18 10:38:50 · 399 阅读 · 0 评论 -
网络编程:TCP 三次握手、四次挥手
1、端口号 FTP: 21(控制端口)、20(数据端口) SMTP: 25 HTTP: 80 SSH: 22 2、TCP和UDP TCP:面向连接的可靠数据包传输,可以建立端到端的连接 UDP:面向无连接的不可靠数据包传输, 3、三次握手 1、SYN 1000(0) —— SYN是包的标志位,代表客户端向服务器建立连接,1000是包的序列号,(0)表示包携带...原创 2019-06-21 15:30:38 · 296 阅读 · 0 评论