网站架构
核心层:企业级路由器,外网入口
汇聚层:企业级交换机(3层交换),解决路由器端口不足问题,划分多个局域网(vlan虚拟局域网)
接入层: 与具体用户连接的设备一般是一些普通的千兆/百兆的交换机即可..
OSI 7层模型
概述:通过软件加工,最后被对方收到过程 OSI7层模型
OSI 7层简介:武术网传汇表用------物数网传会表应
应用层 ❤---------各种应用软件, 一些应用层协议http,https ....
表示层------------负责数据,加密,转换...压缩
会话层------------创建,管理,结束会话
传输层❤----------数据可靠传输(TCP)/不可靠传输(UDP)
网络层❤----------数据传输(不同局域网):源地址和目标地址(IP) 路由功能(指路)
数据链路层--------数据传输(局域网) 源地址和目标地址(MAC地址)
物理层--------通过网卡把上面的数据转换为0101101010数据流通过网络介质传递.
3.3 OSI 7层详解
1)主要就是提供应用程序可以接入网络的接口,并根据程序的不同对应不同的接口协议
http 80------(超文本传输协议)网站协议 https 443网站协议(加密)
dns 53-------域名解析服务 (域名--->ip)
smtp--------简单邮件传输协议 发邮件
telnet--------连接linux,未加密的协议
2)传输层
负责可靠或不可靠的传输
概念: 端口
协议------tcp 可靠的传输协议(tcp:3次握手与4次挥手)
udp 不可靠的传输协议
3) 网络层
网络层的主要作用就是
路由(指路)
寻址(根据ip地址找人 源ip和目标ip)
网络层: ip地址
4) 数据链路层
Layer2数据链路层:MAC层-IEEE 802.3协议,MAC地址是48bit的
mac地址 网卡物理地址,每个网卡有个世界上独一无二的地址.
数据包在局域网中传输的时候,通过mac地址互相访问.
5)物理层
网卡把数据转换为01010010信息,通过网络介质传播. -
3.4 数据传输与 OSI7层模型
1) 数据在局域网中处理过程
2) 数据在跨局域网传输流程
TCP/IP协议
4.1 4层模型概述
4.2 TCP/UDP
传输控制协议(TC P)------------用户数据报协议(UDP)
面向连接------------------------无连接
可靠传输------------------------不可靠传输
流控(检查数据是否丢失,丢失重新发送)---尽力而为,尽力传递
使用T CP应用:WEB浏览器,电子邮件,文件传输程序(在新版本协议中http3.0中默认使用udp)
使用UDP的应用:域名系统(DNS),视频流,IP语音(VoIP),直播
tcp数据包结构
udp数据包结构
4.3 TCP/IP 3次握手
3次握手:与目标服务的指定端口建立连接(比如22,80)
建立连接后,用户向服务器发出请求(给我某个页面),服务器给响应)(把指定页面给你)
4次挥手:数据传输完成,4次挥手(断开连接)
暗送秋波之高追求cang 之路
你:表示我要追求你,我要给你送秋波
对方:对方同意,并且也表示我要给你送秋波
你:我收到你的心意了,你的秋波和你的人我都要了,然后我们去领证吧
用户:向服务器发出建立连接的请求(SYN请求男) ,随机序列号seq=100
服务端: 我收到你的请求,同意,并且我也要与你创建连接 (ACK,SYN请求),随机序列号seq=300 ,ack=101
用户:我收到了你确认,我也愿意,准备开始传输数据(ACK请求), seq=101, ack=301
4.4 TCP/IP 4次挥手
用户: 发出断开连接的请求(FIN,ACK) seq=41 ack=3
服务端: 收到断开请求,同意(ACK) seq=3 ack=42
服务端: 发出断开连接的请求(FIN,ACK) seq=3 ack=42
用户: 确认断开(ACK) seq=42 ack=4
4.5 抓包查看孩TCP/IP 3次握手 4次挥手
原理: 通过telnet 10.0.0.200 22 断开所有的远程连接
linux: nc -kl 666 windows: telnet 10.0.0.200 666
#注意关闭防火墙
systemctl disable firewalld
systemctl stop firewalld
#wireshark 抓取指定端口的数据包
tcp.port == 6666
2) 三次握手抓包
用户:向服务器发出建立连接的请求(SYN请求) ,随机序列号seq=100
服务端: 我收到你的请求,同意,并且我也要与你创建连接 (ACK,SYN请求),随机序列号seq=300 ,ack=101
用户:我收到了你确认,我也愿意,准备开始传输数据(ACK请求), seq=101, ack=301
3)四次挥手抓包
1、发出断开连接的请求(FIN,ACK) seq=41 ack=9
2、服务端向客户端去人信息 ACK seq=ack ack=seq+1
3、服务端向客户端发出断开连接请求(FIN,ACK)
4、客户端向服务端发出确认消息(ACK)