网络编程
叶书书书书
这个作者很懒,什么都没留下…
展开
-
网络编程(I/O复用)
概述阻塞IO操作:通常IO操作(比如read和write)都是阻塞I/O的,当调用read时,如果没有数据收到,线程或者进程就会被挂起,直到收到数据。当服务器处理1000个连接,但是只有很少连接执行IO操作,那么需要1000个线程或进程来处理1000个连接,而1000个线程大部分是被挂起的。线程内存和切换开销由于CPU的核数或超线程数一般都不大,比如4,8,16,32,64,128,比...原创 2020-04-08 15:26:10 · 234 阅读 · 0 评论 -
网络编程(Socket编程接口二)
UDP传输传输流程图:1.单播发送者:1.打开socketconnfd = socket(AF_INET,SOCK_DGRAM,0); 2.设置发送地址和端口struct sockaddr_in si; si.sin_family = AF_INET; // 套接字地址簇,一般使用AF_INETsi.sin_port = htons(端口); // 16位端口,网络序...原创 2020-04-08 10:54:18 · 265 阅读 · 0 评论 -
网络编程(Socket编程接口一)
1 接口1.1 转换操作转换操作主要分为三类:字节序转换操作、IP地址转换操作和主机名转换操作。1.1.1 字节序转换操作1.1.2 IP地址转换操作IPv4地址结构:struct in_addr { in_addr_t s_addr;};IPv4地址类型:typedef unsigned int in_addr_t;套接字地址结构:struct sockad...原创 2020-04-03 21:31:07 · 423 阅读 · 0 评论 -
网络编程(Socket编程概念)
1.套接字1.1 什么是socket·socket是一个编程接口·socket是一种特殊的文件描述符1.2 协议域参数含义AF_INETIPv4AF_INET6IPv6AF_LOCALUnix域1.3 类型type参数含义流式套接字(SOCK_STREAM)提供了一个面向连接,可靠的数据传输服务,数据无差错,无重复的发...原创 2020-04-02 19:27:14 · 272 阅读 · 0 评论