面试复习-网络

网络


分层
  1. HTTP请求类型

GET POST HEAD PUT DELETE OPTION

  1. GET POST区别

GET:安全 幂等 可缓存
POST:非安全 非幂等 非可缓存
安全:(GET HEAD OPTION)
幂等:(GET PUT DELETE)
可缓存:(GET HEAD)

  1. 三次握手 四次挥手

三次握手
C SYN
S SYN+ACK
C ACK
四次挥手
C FIN
S ACK
S FIN+ACK
C ACK

为什么三次:

  1. 三次才可以阻止重复历史连接 (旧的SYN先到
  2. 三次才可以同步初始序列号(SYN +ACK才可以保证序列号一致,序列号保证去重复)
  3. 三次可以避免资源浪费
    为什么四次挥手:
    服务器通常等待完成数据的发送和处理,所以 服务端ACK和FIN分开发送

2MSL maximun segment lifttime 报文最大生存事件(2MSL=60s)

  1. HTTP特点 和优缺点 等

1.HTTP 是灵活可扩展的,可以任意添加头字段实现功能
2.HTTP 是可靠传输,利用TCP/IP,‘尽量’保证数据到达
3.HTTP 是应用层协议,比起FTP,SSH,SMTP,它更通用,能够传输人意数据
4.HTTP 是请求-应答模式,客户端主动请求,服务器被动回复(无连接)
5.HTTP 本质是无状态的,每个请求无关联
无连接 (HTTP持久连接),减少建立
无状态 (Cookie/Session)
头部字段
connection: keep-alive
time:20
max:10(多少个请求响应对)

如何判断请求结束

Content-length :1024
chunked:空格

优缺点
1.HTTP 最大的优点是简单,灵活,易于扩展
2.HTTP 有成熟的软硬件环境,应用广泛,是互联网的基础设施
3.HTTP 是无状态,可以轻松实现集群化,扩展性能,可以通过cookie实现有状态
4.HTTP 明文传输,更方便分析研究,已被窃听
5.HTTP 死不安全的,无法验证双方身份,也无法判断是否篡改
6.HTTP性能不算差,但是还有提升空间

HTTP1.1
长链接:解决效率问题,一个连接收发多个响应
2.过多长链接也会占用资源。需要策略选择关闭
3.队头阻塞 可以用 并发连接 和 域名分片解决
HTTP2
1.取消了小版本号,没有2.0
2.兼容HTTP1
3.HPACK压缩头部,消除重复冗余数据
4.二进制桢传输,而非header+body
5.虚拟流:队头堵塞,多路复用
6.安全性提升1.2+
HTTP3.0:
谷歌开发的QUIC协议,利用UDP实现可靠数据传输。

-----HTTP架构-----
HTTP
SSL/TLS
TCP/IP
-----HTTP2架构-----
HTTP
HPack/Stream
TLS 1.2+
TCP/IP

  1. Charles

中间人攻击,CA证书 完全信任
窃听风险 加密
篡改风险 摘要
冒充风险 证书

  1. HTTPS + SSL/TLS 流程
    TCP/IP 中间插入了 SSL/TLS

C:TSL版本 ,支持的加密算法 ,随机数 C
S:商定的加密算法,随机数S,server证书
C:验证证书(CA发布),组装会话密钥 (随机C+随机S+预主密钥
C:通过公钥对 预主密钥(pre-master key)加密传输 (摘要算法)
S:私钥解密获得主密钥,组装会话密钥
C:加密的握手消息
S:加密的握手消息

通信建立非对称加密交互密钥
通信用对称加密

  1. UDP 和 TCP

UDP

无连接
尽最大努力交付
面向报文(不合并 不拆分)

复用 分用 差错检测

TCP

面向连接 :开始之前需要连接(三握四挥)
可靠传输 (无差错,不丢失,不重复,按序到达)
面向字节流
流量控制(滑动窗口协议,发送窗口接收大小,接受窗口发送大小)
拥塞控制(慢开始,拥塞避免。快恢复,快重传:新的x+3)。先指数到16,线性

  1. DNS (端口53)

使用 UDP & 明文
递归查询 (帮你问一下)本地DNS-根域DNS-顶级DNS-权限DNS
迭代查询 (告诉你谁可能知道)

DNS劫持,窃听 钓鱼DNS。 DNS解析在HTTP连接之前

解决 劫持

  1. httpDNS使用 HTTPS访问80端口
  2. 长连接 Client - 长连Server - 内网 - server
    DNS解析转发,移动为了节省资源,转发给电信DNS,但是移动电信可能不一样,跨网变慢
  1. Session/Cookie

server生成cookie,客户端记录
cookie主要记录用户状态,区分用户,状态保存在客户端
修改:新cookie覆盖老cookie,规则name path domain需要一致
删除:新cookie覆盖老cookie,,规则name path domain需要一致 设置过期时间 或者
Max-Age, Expires,Domain(作用域),HttpOnly(只能通过HTTP传输)

cookie安全

  1. 加密
  2. 只在https携带cookie
  3. 设置cookie为httpOnly,防止跨站脚本(https://blog.csdn.net/qq_38553333/article/details/80055521)js脚本将无法读取到cookie

Session

Session主要记录用户状态,区分用户,状态保存在服务端
依赖cookie机制
server 生成sessionId set-Cookie sessid=xxxx
client 发送 Cookie:sessid=xxxx,通过sessid区别

scoket

HTTP:超文本传输协议,首先它是一个协议,并且是基于TCP/IP协议基础之上的应用层协议。TCP/IP协议是传输层协议,主要解决数据如何在网络中传输,HTTP是应用层协议,主要解决如何包装数据。HTTP协议详细规定了浏览器与服务器之间相互通信的规则,是万维网交换信息的基础。HTTP是基于请求-响应形式并且是短连接,并且是无状态的协议。针对其无状态特性,在实际应用中又需要有状态的形式,因此一般会通过session/cookie技术来解决此问题。
Socket:Socket是应用层与TCP/IP协议族通信的中间软件抽象层, 它是一组接口。 Socket不属于协议范畴,而是一个调用接口(API),Socket是对TCP/IP协议的封装,通过调用Socket,才能使用TCP/IP协议。Socket连接是长连接,理论上客户端和服务器端一旦建立连接将不会主动断开此连接。Socket连接属于请求-响应形式,服务端可主动将消息推送给客户端。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,214评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,307评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,543评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,221评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,224评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,007评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,313评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,956评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,441评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,925评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,018评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,685评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,234评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,240评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,464评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,467评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,762评论 2 345

推荐阅读更多精彩内容

  • iOS 网络知识 一、http协议 1、描述是一种详细规定了浏览器和万维网服务器之间互相通信的规则,是传送万维网文...
    如今0生活成了心术阅读 224评论 0 2
  • 计算机网络 网络分层⭐ 国际标准化组织提出了 OSI 模型:应用层、表示层、会话层、运输层、网络层、链路层和物理层...
    续袁阅读 372评论 0 3
  • 一.常识 TCP/IP协议(簇):四层 : 链路层 - 网络层 - 传输层 - 应用层物理层 - 链路层 ...
    李永开阅读 255评论 0 0
  • HTTP 超文本传输协议 请求,响应报文 链接建立流程 HTTP的特点 请求/响应报文 请求报文: 请求行:方法(...
    Alex1989阅读 293评论 0 1
  • 网络基础知识 计算机诞生 “第一台计算机(ENIAC)于1946年2月,在美国诞生。提出程序存储的是美国的数学家冯...
    水中的蓝天阅读 330评论 0 0