全栈编程基础知识7
1.计算机网络
1.osi七层模型
国际化标准组织提出的
应用层:计算机提供服务的
表示层:数据处理 编码解码 加密解密 压缩解压
会话层:管理应用程序之间的会话
传输层:两台主机之间建立通信
网络层:路由和寻址,决定数据在网络中的游走路径
数据链路层:帧编码和误差纠正
物理层:透明地址传送和比特传输
2.tcp。ip模型
应用层
传输层
网络层
网络接口层
3.常见的协议
http 超文本传输
smtp 简单邮件。是负责发送的
pop3 imap 邮件接收。
ftp 文件传输协议。不安全,SFTP安全的。
telnet远程登录协议,不安全,用ssh
ssh安全网络传输协议
RTP 实时传输协议
DNS域名管理
4.传输层协议
tcp:面向连接 可靠的
udp:无连接 尽最大努力的
5.网络层协议
ip:网络协议
arp:地址解析,ip转mac地址
ICMP:报文协议。传输网络状态和错误消息的协议
NAT 地址转换协议
OSPF:开放式最短路径优先协议
RIP路由信息协议
BGP边界网关协议
6.输入url地址发生了什么?
通过dns协议找到域名对应的ip,建立tcp链接,通过ospf选最短路径,arp 地址转换,建立tcp链接之后。通过http展示html信息。
7.http和https区别?
端口80和443
url前缀吧不同
http基于tcp的明文,https基于ssl tls的http协议
2.websocket
1.基于tcp的双全工通信协议。客户端和服务端都可以发送和接受消息。
2.tcp三次握手
-
客户端:我想和你建立链接
-
服务端:消息收到了,我也想和你建立链接
-
客户端:建立链接。
3.websocket只需要一次建立链接的过程。ws:// wss://
4.websocket建立过程?
-
客户端发送请求
-
服务端建立链接
-
双向数据传输
-
客户端或者服务端发送关闭帧
-
通过心跳机制维持连接
5.SSE和websocket区别?
SSE 基于http或者https协议的长连接,服务端能向浏览器推送数据,客户端不能向服务端发送
websocket:能双向
区别1:一个单向一个双向
区别2:协议不同
区别3:SSE实现简单,websocket复杂点 兼容性 心跳重连等。SSE支持自动重连。
区别4:SSE能自动重连,websocket手动
区别5:SSE传输文本,传输二进制需要Base64编码,websocket支持传输原生文本和二进制数据。
SSE常用语LLM大模型预言
3.ping
1.过程 基于ICMP协议的

4.DNS
1.服务器?
根,顶级,权威,本地
2.DNS挟持?
DNS的解析结果被修改了,用户访问的域名指向了错误的ip地址,导致用户无法访问正常的ip地址。也叫做DNS重定向,DNS欺骗,DNS污染