计算机网络知识整理
Aplox
这个作者很懒,什么都没留下…
展开
-
常见的计算机端口及服务
1、21端口:端口说明:21端口主要用于FTP(File Transfer Protocol,文件传输协议)服务。 操作建议:因为有的FTP服务器可以通过匿名登录,所以常常会被黑客利用。另外,21端口还会被一些木马利用,比如Blade Runner、FTP Trojan、Doly Trojan、WebEx等等。如果不架设FTP服务器,建议关闭21端口。2、23端口 端口说明:23端口主...原创 2020-02-12 09:44:27 · 1249 阅读 · 0 评论 -
在浏览器中输入www.baidu.com后执行的全部过程
浏览器获取输入的域名www.baidu.com浏览器向域名系统DNS请求解析www.baidu.com的IP地址DNS解析出百度服务器的IP地址浏览器与服务器建立TCP连接(默认端口80)浏览器发出HTTP请求,请求百度首页服务器通过HTTP请求把首页文件发给浏览器TCP连接释放浏览器解析首页文件,展示web界面...原创 2020-02-09 19:13:34 · 948 阅读 · 0 评论 -
http与https的区别
http与https的区别:http协议传输的数据都是未加密的,也就是明文的,因此使用http协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了ssl(Secure Sockets Layer)协议用于对http协议传输的数据进行加密,从而就诞生了https。简单来说,https协议是由ssl+http协议构建的可进行加密传输、身份认证的网络协议,要比http协议安...原创 2020-02-09 19:13:00 · 492 阅读 · 0 评论 -
HTTP常见的状态码
100客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。101服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切换到在Up...原创 2020-02-09 19:07:22 · 175 阅读 · 0 评论 -
get和post的区别
get是从服务器上获取数据,post是向服务器传送数据。get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。对于get方式,服务器端用Request.QueryString获...原创 2020-02-09 18:59:47 · 122 阅读 · 0 评论 -
HTTP协议是什么?工作原理是什么?报文格式
HTTP协议是什么HTTP是应用层协议,同其他应用层协议一样,是为了实现某一类具体应用的协议,并由某一运行在用户空间的应用程序来实现其功能。HTTP是一种协议规范,这种规范记录在文档上,为真正通过HTTP协议进行通信的HTTP的实现程序。HTTP协议是基于C/S架构进行通信的,而HTTP协议的服务器端实现程序有httpd、nginx等,其客户端的实现程序主要是Web浏览器,例如Firefox、...原创 2020-02-09 18:53:06 · 754 阅读 · 0 评论 -
边缘触发和水平触发的区别
水平触发(level-trggered)只要文件描述符关联的读内核缓冲区非空,有数据可以读取,就一直发出可读信号进行通知,当文件描述符关联的内核写缓冲区不满,有空间可以写入,就一直发出可写信号进行通知LT模式支持阻塞和非阻塞两种方式。epoll默认的模式是LT。边缘触发(edge-triggered)当文件描述符关联的读内核缓冲区由空转化为非空的时候,则发出可读信号进行通知,当文件描述...原创 2020-02-09 18:45:03 · 2878 阅读 · 0 评论 -
epoll.poll和select的区别
select.poll和epoll的区别select只是告诉你一定数目的流有事件了,至于哪个流有事件,还得你一个一个地去轮询,而epoll会把发生的事件告诉你,通过发生的事件,就自然而然定位到哪个流了。1、select实现select的调用过程如下所示:(1)使用copy_from_user从用户空间拷贝fd_set到内核空间(2)注册回调函数__pollwait(3)遍历所有fd,...转载 2020-02-09 18:44:27 · 223 阅读 · 0 评论 -
TCP粘包,如何处理?UDP不会粘包。
粘包产生原因先说TCP:由于TCP协议本身的机制(面向连接的可靠地协议-三次握手机制)客户端与服务器会维持一个连接(Channel),数据在连接不断开的情况下,可以持续不断地将多个数据包发往服务器,但是如果发送的网络数据包太小,那么他本身会启用Nagle算法(可配置是否启用)对较小的数据包进行合并(基于此,TCP的网络延迟要UDP的高些)然后再发送(超时或者包大小足够)。那么这样的话,服务器在接...原创 2020-02-09 16:26:58 · 243 阅读 · 0 评论 -
tcp4次挥手过程中为什么要等待2msl
4次握手完成连接的关闭,主动关闭连接一方在第3次握手完成后发送了第四次握手的ACK包后就进入了TIME_WAIT状态,必须在此状态上停留两倍的MSL时间,等待2MSL时间主要目的是怕最后一个ACK包对方没收到,那么对方在超时后将重发第三次握手的FIN包,主动关闭端接到重发的FIN包后可以再发一个ACK应答包。...原创 2020-02-09 16:15:04 · 445 阅读 · 0 评论 -
tcp4次挥手的过程及为什么需要4次挥手。
四次挥手与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。第一次挥手:主动关闭方发送一个FIN,用来关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方:我已经不 会再给你发数据了(当然,在fin包之前发送出去的数据,如果没有收到对应的ack确认报文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可 以接受数据。第二次挥手:被动关闭方收到FIN包后,发送...原创 2020-02-09 16:09:31 · 1025 阅读 · 0 评论 -
tcp三次握手的过程及为什么要三次握手。
TCP握手协议在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k...原创 2020-02-09 15:59:12 · 315 阅读 · 0 评论 -
TCP和UDP的区别
TCPTCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,我们这里只做简单、形象的介绍,你只要做到能够理解这个过程即可。我们来看看这三次对话的简单过程:主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次...原创 2020-02-09 15:47:03 · 115 阅读 · 0 评论 -
OSI,TCP/IP,五层协议的体系结构,以及各层协议
OSI分层(7层)物理层、数据链路层、网络层、运输层、会话层、表示层、应用层TCP/IP分层(4层)网络接口层、网络层、运输层、应用层五层协议(5层)物理层、数据链路层、网络层、运输层、应用层每层对应的功能及协议功能常见协议物理层(比特Bit)设备间接收或发送比特流;说明电压、线速和线缆等。中继器、网线、集线器、HUB等RJ45、CLOCK、IEEE80...原创 2020-02-06 17:08:44 · 278 阅读 · 0 评论