1,OSI 7层参考模型
七层模型
普通交换机 : 数据链路层,物理层
三层交换机: 网络层, 数据链路层,物理层
LVS(四层负载均衡服务器),(传输控制层)(可以看到包的状态 和端口号)(不是业务服务器,而做分发,给到服务器,让客户端和服务器进行三次握手,建立连接)
根据URI 负载:
get/*****.html HTTP/1.0 (nignx 是七层,反向代理,双向建立连接,四层比七层快,七层可以根据资源进行负载均衡)
1.1应用层
OSI参考模型的最高层。其功能是实现应用进程(如用户程序、终端操作员等)之间的信息交换。同时,还具有一系列业务处理所需要的服务功能。应用层许多协议都是基于客户服务器方式。
1.2表示层
数据表示形式的控制层,其主要功能是把应用层提供的信息变换为能够共同理解的形式,提供字符代码、数据格式、控制信息格式、加密等的统一表示。
1.3传输层(运输层)
传输层是整个网络体系结构中的关键层次之一。IP数据报中的首部明确标记了两个主机的IP地址,但是“两个主机之间的通信”说法不清楚,因为真正进行通信的实体是主机中的进程。根据应用程序的不用需求,运输层需要两种不同的运输协议,即面向连接的TCP和无连接的UDP。TCP数据单元为段 而UDP中数据单元为数据报。
TCP 面向连接 全双工 面向字节流 每一条TCP连接有两个端点,这两个端点是什么呢?不是主机,也不是主机IP,不是应用进程,也不是运输层的协议端口。TCP链接的端点叫做套接字(socket)=IP地址:端口号
什么是连接 socket:双方资源的开辟(三次握手)
A ------> syn --------> B
A <------ syn+ACK <-------- B
A ------> ACK--------> B
数据包的交互完成;开辟队列 提供 接收对列 和发送队列 存储在内存中,
queue(两个队列)
ip + port ----±---- ip + port 需要资源组 具备唯一性
网卡有ip:
port 端口号 0 - 65535
TCP的可靠传输的实现:1.滑动窗口 2.超时重传 3.选择确认 SACK
TCP的流量控制:滑动窗口
TCP的拥塞控制:慢开始与拥塞避免
UDP是无连接 尽最大努力交付 面向报文 首部开销小 8字节 比TCP的20个字节小
http
s://blog.csdn.net/weixin_37760377/article/details/82379340
TCP的三次握手和四次挥手
TCP/IP 模型
应用层协议; 先建立连接,进行请求,数据交互
http
https 加密 非对称加密
1.4 网络层:
ip地址,子网掩码,网管,NDS1,DNS2(域名解析), 路由表
IPV4,IPV6
局域网, ip与掩码进行按位与
IP地址,路由表,下一跳
1.5数据链路层
MAC 地址
(端点)目标服务器 ,客户端之间 有 路由器,运行商路由器
同一个目表 ip 替换MAC地址 在各个节点传输
链表链路层
二,IO的学习
BIO,
NIO,
多路复用器
java需要会的 netty
Linux :
strace 指令,追踪java 线程的详细信息
netstat -natp 查看socket信息;
nc localhost 8080 三次握手 连接;