![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机网络
文章平均质量分 94
"派派"
这个作者很懒,什么都没留下…
展开
-
网络层--IP
ip地址的分为两个部分,网络号和主机号。网络号:保证互相连接的两个网段具有不同的标识。主机号:同一网段内,主机之间具有相同的网络号,但是必须有不同的主机号。子网其实就是把网络号相同的主机放到一起,如果要在子网中新增一台主机, 则这台主机的网络号和这个子网的网络号一致, 但是主机号必须不能和子网中的其他主机重复。原创 2023-03-31 14:12:46 · 157 阅读 · 0 评论 -
数据链路层--以太网协议
在学习完ip协议后知道,网络层解决的问题是提供跨网络发送数据的能力,链路层解决的则是两台相连主机之间的通信问题。原创 2023-04-04 10:17:59 · 1487 阅读 · 0 评论 -
TCP相关概念
在拥塞窗口发送数据量以内不会拥塞,超过可能会引发拥塞问题。例如,当出现拥塞时,将拥塞窗口定义为一个较小的值,当能收到ACK应答时,在不断去增大这个拥塞窗口(以指数级别)。滑动窗口的大小= min(对方的窗口大小,拥塞窗口)补充:在慢启动时是以指数级别增加的,增加到一定程度时,会线性增长。此处引入一个叫做慢启动的阈值,当拥塞窗口超过这个阈值的时候, 不再按照指数方式增长, 而是按照线性方式增长。当TCP刚开始启动的时候,慢启动阈值设置为对方窗口大小的最大值。原创 2023-03-11 09:21:25 · 440 阅读 · 0 评论 -
传输层——TCP协议
TCP全称为 " 传输控制协议 (Transmission Control Protocol"),其可靠性非常强,其应用非常广泛,例如:HTTPS,FTP、SSH。TCP是具有发送与接受缓冲区的,我们用write/send函数把数据拷贝到内核缓冲区后,tcp会在合适时候进行发送。我们只是将数据拷贝到对应的缓冲区内。内核缓冲区的数据什么时候发,发多少,出错了怎么办,要不要添加提高效率的策略——都是由OS内的TCP自主决定的,所以TCP叫做传输控制协议!原创 2023-03-09 15:49:24 · 511 阅读 · 0 评论 -
传输层--UDP协议
UDP的接收缓冲区的作用就是,将接收到的报文暂时的保存起来,供上层读取。当应用层交给UDP多长的报文,UDP就原样发送,既不会拆分,也不会合并,这就叫做面向数据报 ,不能够灵活的控制读写数据的次数和数量。当应用层将数据交给传输层后,在传输层就会创建一个UDP报头类型的变量,然后填充报头当中的各个字段,此时就得到了一个UDP报头。知名端口号, HTTP, FTP, SSH等这些广为使用的应用层协议, 他们的端口号都是固定的,端口号和进程是一一对应的。数据报:报文和报文之间有明显边界,因为有16位UDP长度。原创 2023-03-07 08:58:55 · 1383 阅读 · 1 评论 -
https介绍
数字指纹(数据摘要),其基本原理是利⽤单向散列函数(Hash函数)对信息进⾏运算,⽣成⼀串固定⻓度的字符串—数字摘要(这个字符串就叫做数据摘要/数据指纹)。数字指纹并不是⼀种加密机制,因为他不可以通过这个字符串反解出原数据,即:不可解密。只是⽤来判断数据有没有被窜改。摘要经过加密,就得到数字签明(后面解释)原创 2023-03-07 08:59:02 · 1879 阅读 · 0 评论 -
应用层——http协议
HTTP定义:超文本传输协议,是一个 无链接,无状态的应用层协议。在编写网络通信代码时,我们可以自己进行协议的定制,但已经有很多优秀的工程师早就已经写出了许多非常成熟的应用层协议,其中最典型的就是HTTP协议。注意:http协议底层是tcp,tcp是面向链接的,http只是使用了tcp的链接能力,但是http本身是无链接的。HTTP(Hyper Text Transfer Protocol)协议又叫做超文本传输协议,是一个简单的请求-响应协议,HTTP通常运行在TCP之上。URL就是我们常说的网址。原创 2023-03-06 10:25:05 · 826 阅读 · 0 评论 -
守护进程与TCP通讯
建立连接后,TCP协议提供全双工的通信服务,所谓全双工的意思是,在同一条连接中,同一时刻,通信双方可以同时写数据,相对的概念叫做半双工,同一条连接在同一时刻,只能由一方来写数据。这时客户端调用write发送请求给服务器,服务器收到后从read返回,对客户端的请求进行处理,在此期间客户端调用read阻塞等待服务器端应答。:进程组由一个进程或者多个进程组成,每个进程组有唯一的进程组ID,每个进程组有一个进程组组长(和进程组ID一样)。创建一个新会话,谁调用这个函数,谁就成为这个新会话进程组的组长返回值。原创 2023-02-28 20:36:49 · 472 阅读 · 0 评论 -
TCP通信
在上面代码中,提供服务的函数正常情况下是一个死循环,若是单进程的话,服务器也就一次只能为一个客户端提供服务,这显然是不合理的。若有多个客户端同时发来连接请求,此时未被服务器处理的连接就会放入连接队列,该参数代表的就是这个全连接队列的最大长度。TCP服务器是面向连接的,客户端向服务器发送数据时,要确保二者已经建立了关联,将套接字设置为监听状态,然后去监听socket。addrlen:调用时传入期望读取的addr结构体的长度,返回时代表实际读取到的addr结构体的长度,这是一个输入输出型参数。原创 2022-12-25 17:49:47 · 807 阅读 · 0 评论 -
UDP通信
基于UDP多人聊天室的制作原创 2022-12-24 12:00:43 · 2709 阅读 · 0 评论 -
网络入门基础
计算机之间相互独立计算机之间可以链接在一起,完成数据共享,计算机之间还可以进行相互通信一片区域内的计算机通过路由器和交换机连接在一起,可以用来相互通信的计算机数量增多多个通过路由器连接起来,构成一个广域网,也可以说是一个更大的局域网。原创 2022-12-19 22:39:20 · 1144 阅读 · 0 评论