Java网络相关

2023-06-15 11:34:40 浏览数 (2)

1. OSI 7层网络

从上到下分别是: 应用层,表示层,会话层(Session),运输层,网络层,数据链路层,物理层

2. TCP/IP

TCP/IP 由4层组成: 应用层,传输层,网络层,网络接口层

  • 网络接口层: 数据链路层 物理层
  • 网络层: 主要有 IP, ICMP 等协议
  • 运输层: 主要有 TCP, UDP 等协议
  • 应用层 主要有 Http, DNS, Socket, Session, SIP, TELNET, FTP, NNTP等 协议/格式

3. TCP 三次握手/四次挥手

TCP 数据包

  1. src_port 16bit
  2. dest_port 16bit
  3. seq 32bit (TCP握手挥手的顺序号)
  4. ack 32bit (TCP Acknowledge, 确认号, ack = seq 1 )
  5. TCP报头长度 4bit
  6. 保留位 6bit
  7. control flags 6bit --- 控制位 (包含: URG,ACK,PSH,RST,SYN,FIN)
  8. 窗口大小 16bit (TCP 滑动窗口算法)
  9. 校验和 16bit
  10. 紧急指针 16bit
  11. MSS Maximum Segment Size
  12. data 数据
TCP三次握手四次挥手TCP三次握手四次挥手

TCP 三次握手

  1. 发送 syn=1, 随机产生 seq
  2. 返回 ack = syn 1; syn = 1, 随机产生 seq
  3. 检查 ack是否正确,再次发送 ack

TCP 四次挥手

  1. 发送 FIN = 1 (Finish), seq = u
  2. 收到 FIN,发回ack, ack = seq 1
  3. 关闭连接,发送 FIN
  4. 收到 FIN,发回ack,seq = seq 1;一方主动关闭,另一方被动关闭

4. HTTP 原理

传输流程

  1. 地址解析 (DNS)
  2. 封装 HTTP 数据包
  3. 封装 TCP包并且连接 (三次握手)
  4. Client 发送请求
  5. Server 响应
  6. Server 关闭 TCP连接 (四次挥手)

HTTP 状态码

1xx 消息响应

2xx 成功响应

3xx Redirect 重定向

4xx Client端错误

5xx Server端错误

HTTPS

  • 建立连接获取证书
  • 证书验证
  • 数据加密和传输

5. CDN 原理

分发系统

最近的Cache服务器最快分发给用户

负载均衡系统

CDN 支持 GSLB (全局负载均衡) 和 SLB (本地负载均衡)

GSLB 根据就近原则确定服务的CDN

SLB 负责节点内部负载均衡 包括 LVS (四层调度),七层调度,链路负载调度

管理系统

分为网络管理系统 和 运营管理

网络管理 包括 设备管理,拓扑管理,链路监控,故障管理

运营管理 包括 用户管理,产品管理,计费管理,统计分析

0 人点赞