![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机网络
文章平均质量分 77
2
Neo_21
多喝热水.jpg
展开
-
多进程实现并发服务器
服务器的主进程负责监听客户的连接,一旦与客户端连接完成,accept() 函数就会返回一个「已连接 Socket」,这时就通过 fork() 函数创建一个子进程,实际上就把父进程所有相关的东西都复制一份,包括文件描述符、内存地址空间、程序计数器、执行的代码等。父进程则相反,将客户服务交给子进程来处理,因此父进程不需要关心「已连接 Socket」,只需要关心「监听 Socket」。不过,会根据返回值来区分是父进程还是子进程,如果返回值是 0,则是子进程;如果返回值是其他的整数,就是父进程。原创 2023-02-26 11:42:48 · 246 阅读 · 0 评论 -
I/O 多路复用:select/poll/epoll
(仅供自己学习使用)原创 2023-02-24 18:45:57 · 478 阅读 · 0 评论 -
TCP四次挥手
TCP 断开连接是通过方式。双方都可以主动断开连接,断开连接后主机中的「资源」将被释放,四次挥手的过程如下图:FIN1FINFIN_WAIT_1ACKCLOSE_WAITACKFIN_WAIT_2FINLAST_ACKFINACKTIME_WAITACKCLOSE2MSLCLOSE你可以看到,每个方向都需要,因此通常被称为。原创 2023-02-24 15:39:01 · 346 阅读 · 0 评论 -
TCP三次握手
TCP 是面向连接的、可靠的、基于字节流的传输层通信协议。面向连接:一定是「一对一」才能连接,不能像 UDP 协议可以一个主机同时向多个主机发送消息,也就是一对多是无法做到的;可靠的:无论的网络链路中出现了怎样的链路变化,TCP 都可以保证一个报文一定能够到达接收端;字节流:用户消息通过 TCP 协议传输时,消息可能会被操作系统「分组」成多个的 TCP 报文,如果接收方的程序如果不知道「消息的边界」,是无法读出一个有效的用户消息的。原创 2023-02-24 15:16:58 · 346 阅读 · 0 评论 -
TCP通信实现
【代码】TCP通信实现。原创 2023-02-23 23:36:37 · 62 阅读 · 0 评论 -
socket基础
参考:2.3 Linux 系统是如何收发网络包的? | 小林coding从下面这张图可以看到,应用层数据在每一层的封装格式:其中:这些新增的头部和尾部,都有各自的作用,也都是按照特定的协议格式填充,这每一层都增加了各自的协议头,那自然网络包的大小就增大了,但物理链路并不能传输任意大小的数据包,所以在以太网中,规定了最大传输单元(MTU)是 字节,也就是规定了单次传输的最大 IP 包大小。当网络包超过 MTU 的大小,就会在网络层分片,以确保分片后的 IP 包不会超过 MTU 大小,如果 MTU 越小,需要原创 2023-02-23 20:03:34 · 378 阅读 · 0 评论 -
网络模型.
应用层是 TCP/IP 协议的第一层,是直接为应用进程提供服务的。(1)对不同种类的应用程序它们会根据自己的需要来使用应用层的不同协议,邮件传输应用使用 了 SMTP 协议、万维网应用使用了 HTTP 协议、远程登录服务应用使用了有 TELNET 协议。(2)应用层还能加密、解密、格式化数据。(3)应用层可以建立或解除与其他节点的联系,这样可以充分节省网络资源。原创 2023-02-23 18:23:56 · 171 阅读 · 0 评论 -
字节序
字节序:字节在内存中存储的。小端字节序:数据的高位字节存储在内存的高位地址,低位字节存储在内存的低位地址大端字节序:数据的低位字节存储在内存的高位地址,高位字节存储在内存的低位地址。原创 2023-02-23 14:08:29 · 241 阅读 · 0 评论 -
MAC地址&IP地址 & 端口
A 类 IP 地址的子网掩码为 255.0.0.0,原创 2023-02-22 21:07:02 · 2120 阅读 · 0 评论