网络相关

1.简述https建立连接的过程

  • 1.client浏览器发出安全请求(https前缀url)

  • 2.server返回数字证书(包含server的publicKey)

  • 3.client使用预置CA列表验证证书,如果有问题则提示风险

  • 4.client生成随机对称密钥,用server的publicKey加密

  • 5.server用自己的privateKey解密,得到对称密钥

  • 6.双方都使用对称密钥加密通信

  • 数字证书的原理:
    (1){RSA(hash(message))+message} (message中包含publicKey)(前半部分为数字签名sign)
    (2)比对reRSA(sign) == hash(message)
    (3)reRSA使用CA的公钥来解密

2.cookie—session—token

  • 目的:解决http无连接的问题,提供连接中继;安全性
  • cookie:缓存http登录信息等,保存在客户端,client与服务端通信时服务端根据cookie解析出数据(有失效期)
  • session:服务端分配给客户端,客户端通信时加上session,服务端比对自己存储的session,一致则认为是同一请求—session需要集中存储(存储在服务端或者分布式缓存)(一般会把sessionId放在cookie中,client取出sessionId然后请求服务器获取session)
  • token:server给client分配token,接收请求时根据token用密钥生成签名,与token中的签名比对即可—不要专门存储token,每次使用算法计算

对于一个分布式集群,如何保存session?

  • 使用分布式存储专门保存

3. 简述TCP建立连接和关闭连接的过程

  • 建立连接-3次握手:(seq=x ===> A与B可以连接上)(seq=y,ACK=x+1 ===>B确认接收并且获取传输序列号)(ACK=y+1 ===> A确认接收并且获取传输序列号)
  • 只有AB双方都确认接收并获取到传输序列号,才能实现双方可靠的收发数据,所以需要3次握手
  • 断开连接-4次挥手:(fin=x ===> A对B说没有数据可发送了,之后A进入FIN_WAIT_1状态)(ACK=x+1 ===> B同意A的请求)(fin=y ===> B向A请求关闭连接,之后B进入LAST_ACK状态)(ACK=y+1 ===> A回复B可以关闭,之后A进入TIME_WAIT状态,B立即关闭连接,A再等2MSL后如果没有回复再关闭连接)
  • 为什么需要4次:除了确保连接关闭之外,还要确保数据传输完结,所以增加了一次握手,TCP全双工工作模式决定的。

4. 简述http状态码

  • 1XX:接收的请求正在处理
  • 2XX:处理成功
  • 3XX:需要进行附加操作来完成请求(重定向)
  • 4XX:服务器无法处理请求(401-请求需要认证 403-请求被服务器拒绝–权限出问题 404-找不到资源)
  • 5XX:服务器错误(500-服务器处理出错 503–服务器正忙,如负载高等)

5.http的连接是持久连接吗?是有状态的吗?

  • http1.1默认采用持久连接,只要任意一方没有提出断开,就保持TCP连接
  • http是无状态的,为了保存状态,会使用cooki和session来实现

6.当你用浏览器打开一个链接的时候,计算机做了哪些工作步骤。

  • Dns解析(域名-IP)->IP寻址(NAT,负载均衡) –>tcp连接(三次握手)–>服务器处理请求–>服务器返回响应(分布式缓存)–>浏览器解析(静态资源存储在CDN)—>链接关闭(四次挥手)

DNS域名解析的大体过程是什么样的?

  • (1)查找浏览器是否有缓存(是否失效)
  • (2)查找操作系统是否有缓存(如hosts文件)
  • (3)查找本地区域名服务器(LDNS)是否有缓存
  • (4)LDNS查询RootServer请求解析,RootServer返回域名对应的主域名服务器
  • (5)LDNS请求主域名服务器,获取域名对应的NameServer,NameServer查到映射关系和TTL
  • (6)LDNS缓存获取的映射数据,然后把解析结果返回给用户
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值