OSI 7层模型
分层思想
将一系列复杂过程,通过分解使每阶段功能单一化的过程
- 使整个流程更加清晰,复杂问题简单化
- 每一阶段专注处理单一问题,更深入
OSI7层模型意义
本质是要解决互联网通信问题,OSI(Open System interconnection)
开放的通信系统互联参考模型。通过国际化定义标准,使全球计算机通信使用同一标准。
层级 | 层名 | 解决问题(个人想法) | 对应硬件设备 |
---|---|---|---|
7 | 应用层 | 实际提供网络服务 | PC/防火墙 |
6 | 表示层 | 将数据编码 | PC/防火墙 |
5 | 会话层 | 协调网络数据传输 | PC/防火墙 |
4 | 传输层 | 数据添加TCP/UDP包头,指明来、去端口 | 防火墙 |
3 | 网络层 | 数据添加IP包,指明来、去网络IP地址 | 路由器 |
2 | 数据链路层 | 数据添加MAC信息,FCS数据校验 | 交换机 |
1 | 物理层 | 数据的二进制传输 | 网卡/网线 |
注:在实际应用过程中表示层与会话层实际协议不多,因此这两层最后合并在应用层中,出现OSI5层模型。
OSI7层模型常用协议及其联系
物理层-网络工程
- 物理层的传输硬件有网线、网卡、空气等。
- 数据信息最基础的单位是bit、Byte、KB、MB、GB、TB、PB。
1PB = 1024TB
1TB = 1024GB
1GB = 1024MB
1MB = 1024KB
1KB = 1024Byte
1Byte = 8bit - 信号类型可以分为电信号(模拟信号、数字信号),光信号。
- 模拟信号传输中信号会衰减,需要放大器来实现远距离传输。
- 数字信号传输过程中需要中继器来矫正信号。
- 模拟信号传输距离比数字信号远,但是数字信号抗干扰能力强。
- 光纤可以分为单模光纤和多模光纤,单模光纤传输距离更远、抗干扰能力强,带宽更宽,一般用于跨城市传输。
- 短距离传输中多模光纤与单模光纤差异性小,实际应用中单模光纤黄色,多模光纤为橙色与淡蓝色。
- 常见网线(双绞线)有5类线、超5类线、6类线、7类线。
- 双绞线线头标准有
T568A:白绿 绿 白橙 蓝 白蓝 橙 白棕 棕
T568B:白橙 橙 白绿 蓝 白蓝 绿 白棕 棕- 网线的用途分类:
- 交叉线,一端为A一端为B,同种设备之间使用(OSI5层模型中3层以上设备,视为同种设备)
- 直通线,两端都是A或者B(一般为B),异种设备之间使用。
- 全反线,一段为A,另一端为反A,也称为console线,用于设置交换机,一端为水晶头另一端连接PC机的USB或者VGA线。
数据链路层
数据链路层在OSI5层模型中属于第2层
,在中国传输的最大传输单元为1518
字节[最大传输单元在一个地区要统一约定,可以在交换机中设置,设置过长(己方数据帧长)对方交换机无法识别,设置过短(对方数据帧长)己方交换机无法识别]。
-
帧结构说明
帧内容顺序排列 [目标MAC地址 源MAC地址 源IP地址 目标IP地址 源端口号 目标端口号 传输内容 FCS校验]
-
工作在数据链路层的硬件设备:网卡、交换机
-
交换机工作原理
- 收到数据帧之后,将源MAC地址与端口记录在自己的MAC地址表中。
- 检查帧中的目标MAC地址,在MAC地址表中进行匹配,匹配成功则单播,匹配失败则除接受端口外进行广播。
- MAC地址表默认老化(端口无数据,MAC地址表清除记录)时间是300秒。
-
交换机相关概念
-
接口标识
单位 数值 E 10Mb/s F 100Mb/s G 1KMb/s Te 1GMb/s -
接口速率自适应1000M/100M/10M,自适应速率接口模式可以工作在1000M/100M/10M任一模式。
-
端口状态 up/down
down模式的三种可能:- 人工down
- 两端速率不匹配
- 双工模式不匹配(双工分为单工、半双工、双工)
-
下载思科模拟软件[1],交换机5大基本工作模式及命令。
第一次配置网络设备,需要使用console线,在PC需要使用“超级终端”等软件,点击交换机,选择CLI进入命令行。
模式名称 模式标识 进入命令 模式权限 用户模式 switch> 进入软件界面直接显示 可以查看交换机基本信息,不能做修改配置 特权模式 switch# 在用户模式下输入enable 可以查看所有配置,不能做修改配置,但可以测试、保存、初始化配置,是 常用模式
全局配置模式 switch(config)# 在特权模式下输入configure terminal 默认该模式不能查看配置,但可以修改配置,且全局生效 接口配置模式 switch(config-if)# 在全局配置模式中输入interface f0/1(接口名) 默认该模式不能查看配置,但可以修改配置,且对该接口生效 console口/线/控制台模式 switch(config-line)# 在全局配置模式中输入line console 0 默认该模式不能查看配置,但可以修改配置,且对console口生效 其他常用命令/快捷键
用途 命令/快捷键 退出至上一级控制模式 exit 直接退出至特权模式 end 软件支持命令缩写字母 命令不必写全 命令支持提示 未写全命令后使用?例如exi? 命令支持补全(Win只支持路径地址补全) 未写全命令后Tab键 配置主机名 configure terminal(进入全局配置)-> hostname 设备名 设置用户密码 line console 0(进入控制台模式)-> password 密码 -> login(设置密码生效,登陆验证) 设置特权密码 configure terminal(进入全局配置)-> enable password 密码(明文)或者enable secret 密码(密文) 保存配置设置 enable(特权模式)-> copy running-config startup-config 或者 write 清空、初始化配置 enable(特权模式)-> erase startup-config 查看 running-config
文件信息enable(特权模式)-> show running-config 查看 startup-config
文件信息enable(特权模式)-> show startup-config 查看MAC地址表 enable(特权模式)-> show mac-address-table 查看接口状态列表 enable(特权模式)-> show ip interface brief 人工关闭接口 interface f0/1(接口名)-> shutdown 人工打开接口 interface f0/1(接口名)-> no shutdown 删除配置命令 命令前加no命令,在何种模式配置需在何种模式删除,使用no命令,删除时命令无须加参数,例如hostname sw1 -> no hostname 其他模式强制使用特权模式命令 命令前加do,例如do sh ip int b 虚拟软件重启设备 reload 快速删除光标全所有字符 ctrl+u 快速定位光标到行首 ctrl+a 快速定位光标到行尾 ctrl+e 跳过自动解析功能 ctrl+shift+6 -
交换机配置原理
交换机启动后读取硬盘startup-config
文件(初始化交换机无此文件)是否存在,若存在读取startup-config
内容至内存中running-config
文件,如不存在则创建新running-config
。交换机再根据running-config
进行配置,配置交换机所输入命令,均是在修改running-config
,因此每次修改配置后需要将running-config
信息存入startup-config
。 -
交换机接口状态说明
交换机一共有两个接口状态,前一个物理状态主要是考虑是否人为关闭接口,后一个协商状态考虑两台设备接口是否协商成功。
-
交换机的远程控制
交换机作为2层网络设备,理论上没有IP协议,为管理方便,厂商都在交换机中内置小型网络设备,对该设备配置IP地址,从而实现交换机的远程管理。configure terminal(进入全局配置) -> intface vlan 1(虚拟端口) -> ip address 10.1.1.253 255.255.255.0 -> no shutdown
配置默认网关
configure terminal(进入全局配置) -> ip default-gateway 10.1.1.254
关闭设备自动解析功能(错误命令需要查找很久,建议关闭):
configure terminal(进入全局配置) -> no ip domain-lookup
-
网络层
网络层设备必须手动配置IP地址,手动开启接口(默认关闭)。
-
路由器配置
路由器设备需要手动配置IP地址,手动开启接口。用途 命令 为路由器端口配置IP interface f0/1(接口名)-> ip address 10.1.1.254(IP地址) 255.255.255.0(子网掩码) 为路由器端口配置路由表 interface f0/1(接口名)-> ip route 10.1.1.0(目标网段) 255.255.255.0(子网掩码)30.1.1.1(下一跳IP地址)2(浮动路由配置管理距离值) 人工打开接口 interface f0/1(接口名)-> no shutdown 查看路由表 enable(特权模式)-> show ip route -
路由器的远程控制配置
路由器可以使用SSH(22)与telnet(23)两种方式远程控制。-
进入全局配置模式
configure terminal
-
设置远程访问数量
line vty 0 4(可以有5个客户端访问)
-
开启服务端口
transport input telnet/ssh/none/all
(telnet/ssh/全部关闭/全部开启) -
telnet服务
设置密码password 密码 -> login -> exit
telnet客户端访问命令 telnet 10.1.1.254(IP地址) -
SSH服务
修改设备名hostname r1 -> 设置域名ip domain-name r1.qf.com -> 生成秘钥对crypto key generate rsa -> 设置密码password 密码 -> login -> exit
模拟软件中SSH客户端访问命令 ssh -l r1(用户名/主机名(无用户名时使用)) 10.1.1.254(IP地址)
实际中SSH客户端访问命令 ssh -l r1@10.1.1.254(IP地址) -
在实际使用中只使用密码不安全,因此需要设置用户名
取消之前设置密码no password -> no login -> login local -> exit -> 配置用户数据库username xx(用户名) password 123.com(密码)
-
路由器的工作原理
路由:跨越从源主机到目标主机的一个互联网络来转发数据包的过程
路由表:路由器中维护的路由条目的集合,路由器根据路由表做路径选择
路由表的形成:- 直连网段配置IP地址,端口UP状态,形成直连路由
- 非直连网段需要静态路由或动态路由,将网段添加到路由表中
- 静态路由,由管理员手工配置的,是单向的,缺乏灵活性
- 默认路由,当路由器在路由表中找不到目标网络的路由条目时,路由器把请求转发到默认路由接口
- 静态路由的配置
Router(config)# ip route network mask {address | interface}
- 默认路由的配置
Router (config)# ip route 0.0.0.0 0.0.0.0 address
- 浮动路由,在静态路由或者默认路由配置命令最后面加正整数,正整数就表示管理距离值,值越大优先级越低,直连路由默认值为0,静态路由默认值为1,默认路由默认值为+∞
-
路由器的工作过程
- 一个帧到达路由,路由器首先检查目标MAC地址是否自己,如果不是则丢弃,如果是则解封装,并将IP包送到路由器内部
- 路由器检查IP包头中的目标IP,并匹配路由表,如果匹配失败,则丢弃,并向源IP回馈错误信息,如匹配成功,则将IP包路由到出接口。
- 封装帧,首先将出接口的MAC地址作为源MAC封装好,然后检查ARP缓存表,检查是否有下一跳的MAC地址,如有,将提取并作为目标MAC地址封装到帧中,如没有,则发送ARP广播请求下一跳的MAC,并获取到对方的mac地址,再记录缓存,并封装帧,最后将帧发送出去。
- 路由表配置示意图
-