其他分享
首页 > 其他分享> > [面试速记] 计算机网络

[面试速记] 计算机网络

作者:互联网

计算机网络

什么是ISO 七层模型和 TCP/IP 四层模型?

OSI模型:七层模型,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
简化合并为四层模型应用层、传输层、网络层、网络接口层(各层之间的模型、协议统称为:TCP/IP协议簇
在这里插入图片描述
TCP/IP模型合并了OSI模型的应用层、表示层和会话层,将OSI模型的数据链路层和物理层合并为网络访问层
各层模型对应TCP/IP协议栈中的协议以及各层协议之间的关系:

ping 可以说是ICMP的最著名的应用,ICMP和IP一样,是网络层的协议

常见互联网协议

layerprotocols
应用层BGP、DHCP、DNS、FTP、HTTP、HTTPS、IMAP、LDAP、MGCP、MQTT、NNTP、NTP、POP、ONC/RPC、RTP、RTSP、SIP、SMTP、SNMP、SSH、Telnet、XMPP
传输层TCP、UDP、TLS/SSL、DCCP、SCTP、RSVP
网络层IP (IPv4、IPv6)、ICMP、ICMPv6、ECN、IGMP、OSPF、IPsec、RIP
链接层ARP、NDP、Tunnels L2TP、PPP、MAC (Ethernet|DSL|ISDN|FDDI)

应用层协议常用端口

在这里插入图片描述

TCP/IP

TCP/IP 与 HTTP 有什么关系?

数据是怎么通过TCP/IP协议模型从一台主机发送到另一台主机的

TCP协议与UDP协议的区别?

  1. TCP 与 UDP都属于传输层协议。
    |TCP(Transmission Control Protocol,传输控制协议) | 面向连接的单播协议,在发送数据前,通信双方必须在彼此间建立一条连接。一个TCP连接必须有三次握手、四次挥手。 |
    |–|--|
    |UDP(User Data Protocol,用户数据报协议) | 非连接的协议,传输数据之前源端和终端不建立连接, 当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上 |
  2. UDP首部
    在这里插入图片描述
  3. TCP首部
    在这里插入图片描述

UDP 协议中的长度和校验码可以被省略么?为什么?

除了 UDP 和 TCP 协议,其他基于 IP 的传输层协议有没有端口号的概念?

主要是看是否需要在一个主机上跑多个使用这个协议的程序,像 ICMP 这种没必要跑多个就没有端口的概念,类似 TCP、UDP 这种需要跑多个的就需要端口号来区分。

详细介绍一下 TCP 的三次握手、四次挥手

TCP时序图

详细讲一下TCP的滑动窗口、流量控制和拥塞控制

TCP通过以下方式进行保证传输的可靠性:

滑动窗口
滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制
流量控制

拥塞控制
拥塞控制

拥塞控制和流量控制不同,前者是一个全局性的过程(网络中的路由器或链路),而后者指点对点通信量的控制(发送方 => 接收方)。

故障排查

服务器出现了大量CLOSE_WAIT状态如何解决

大量 CLOSE_WAIT 表示程序出现了问题,对方的 socket 已经关闭连接,而我方忙于读或写没有及时关闭连接,需要检查代码,特别是释放资源的代码,或者是处理请求的线程配置

SYN超时,洪泛攻击,以及解决策略

什么 SYN 是洪泛攻击?

这样一来就不会为恶意攻击的 SYN 报文段分配资源空间,避免了攻击。

HTTP

HTTP1.0、HTTP1.1、HTTP2.0 的区别

HTTP/0.9
HTTP协议的最初版本,功能简陋,仅支持 GET 方法,并且仅能请求访问 HTML 格式的资源

HTTP/1.0

HTTP/1.0+

HTTP/1.1

HTTP2

URI 和 URL

URi:Uniform Resource Identifier,统一资源标识符;e.g 相对URi:<img src="../icons/logo.png" alt="logo">
URL:Uniform Resource Locator,统一资源定位符;e.g. http://somesite.com/html/top
URN:Uniform Resource Name,统一资源名称。e.g. urn:isbn:0-486-27557-4,这个是一本书的isbn

GET和POST的区别

HTTP状态码

介绍HTTPS,SSL/TLS

HTTP和HTTPS对比
HTTPS和HTTP的区别主要如下:

协议证书端口状态
https需要到ca申请证书443由SSL+HTTP协议构建的,可进行加密传输、身份认证
http不需要80无状态
对称加密加密与解密使用的是同样的密钥,所以速度快,但由于需要将密钥在网络传输,任何人拿到密钥都可以解密,所以安全性不高。
非对称加密使用了一对密钥,公钥与私钥,客户端用公钥加密,服务端用私钥解密。所以安全性高,但加密与解密速度慢。

如何保证公钥不被篡改?
解决方法:将公钥放在 数字证书 CA 中。只要证书是可信的,公钥就是可信的。
为什么服务端要发送证书给客户端
互联网有太多的服务需要使用证书来验证身份,以至于客户端(操作系统或浏览器等)无法内置所有证书,需要通过服务端将证书发送给客户端,客户端内置了所有受信任CA的证书。
客户端为什么要验证接收到的证书
防止中间人攻击
客户端<------------攻击者<------------服务端 伪造证书 拦截请求
客户端如何验证接收到的证书

HTTPS的工作原理

cookie和session

因为HTTP无状态,cookie和session都是用来保存 当前会话状态 数据的。
cookie 是浏览器的一种缓存机制,将会话保存在客户端
session 一种会话机制,把会话保存在服务端
在许多 web 应用中,session 机制就是通过 cookie 来实现。e.g. “cookie: session=xxx;”
session实现 也有别的途径,比如bearer auth、JWT、userToken等

FAQ

Web 页面请求过程

XSS 攻击

XSS 是一种经常出现在web应用中的计算机安全漏洞,与SQL注入一起成为web中最主流的攻击方式。
XSS是指恶意攻击者利用网站没有对用户提交数据进行转义处理或者过滤不足的缺点,进而添加一些脚本代码嵌入到web页面中去,使别的用户访问都会执行相应的嵌入代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。

IP地址的分类

A、B、C是基本类,D、E类作为多播和保留使用
A类地址:以0开头,第一个字节范围:0~127;
B类地址:以10开头,第一个字节范围:128~191;
C类地址:以110开头,第一个字节范围:192~223;
D类地址:以1110开头,第一个字节范围为224~239;
E类地址:以1111开头,保留地址
IP地址的分类

标签:协议,请求,IP,报文,TCP,速记,计算机网络,面试,客户端
来源: https://blog.csdn.net/weisman2/article/details/115559003