网络安全 网络基础知识
协议和网络
对于网络安全专业人员来说,深入了解计算机如何通信至关重要。计算机网络幕后发生的事情比使用应用程序时可以观察到的要多得多。
OSI 模型
OSI ("Open Systems Interconnection") 模型代表了一种简单直观的方法来标准化跨网络通信所需的不同部分。
该模型通过将需求分为多个层,明确了网络通信所需的内容。
OSI 模型如下所示:
层 |
它能做什么 |
7 - 申请 |
人类处理数据和信息的地方 |
6 - 演示 |
确保数据采用可用格式 |
5 - 会议 |
能够保持连接 |
4 - 交通 |
数据被转发到能够处理请求的服务 |
3 - 网络层 |
负责数据包应在网络上传输的路径 |
2 - 数据链路 |
负责数据包应该发送到哪些物理设备 |
1 - 物理 |
传输数据的物理基础设施 |
前 3 层通常在操作系统内的软件中实现:
层 |
在哪里实施 |
7 - 申请 |
软件 |
6 - 演示 |
软件 |
5 - 会议 |
软件 |
底层 3 层通常在网络设备内的硬件中实现,例如交换机、路由器和防火墙:
层 |
在哪里实施 |
3 - 网络层 |
硬件 |
2 - 数据链路 |
硬件 |
1 - 物理 |
硬件 |
第 4 层,即传输层,连接软件与硬件层。
SDN ("Software Defined Networking") 是一种允许通过软件实现更多硬件层的技术。
第 7 层 - 应用层
应用程序的业务逻辑和功能就在这里。这是用户用来通过网络与服务交互的方式。大多数开发人员在应用程序层上创建应用程序。
您使用的大多数应用程序都位于应用程序层上,隐藏了其他层的复杂性。
第 7 层应用示例:
- HTTP ("Hypertext Transfer Protocol") - 使我们能够访问网络应用程序
- FTP ("File Transfer Protocol") - 允许用户传输文件
- SNMP ("Simple Network Management Protocol") - 读取和更新网络设备配置的协议
有许多应用程序使用这些协议,例如 Google Chrome、Microsoft Skype 和 FileZilla。
第 6 层 - 表示层
通常是一个看不见的层,但负责调整、转换和翻译数据。这是为了确保应用程序和下面的层能够相互理解。
- 用于表示文本和数据的编码方案,例如 ASCII(美国信息交换标准代码)和 UTF(Unicode 转换格式)。
- 服务加密,例如 SSL ("Secure Sockets Layer") 和 TLS ("Transport Security Layer")
- 压缩,例如在许多 HTTP 实现中使用的 GZip。
第 5 层 - 会话层
该层的职责是处理应用程序和下面的层之间的连接。它涉及建立、维护和终止连接,也称为会话。
很好地代表会话层的常见协议有:
- SOCKS - 通过代理服务器发送数据包的协议。
- NetBIOS - 一种用于建立会话和解析名称的旧 Windows 协议。
- SIP ("Session Initiation Protocol") - 用于进行 VOIP ("Voice Over IP") 通信
第 4 层 - 传输
该层允许应用程序在网络上表示。
该层的一些著名应用程序:
- TCP ("Transmission Control Protocol") - 用于许多应用程序,确保稳定性、控制在任何给定时间可以发送的数据量、可靠性等。
- UDP ("User Datagram Protocol") - 适用于许多服务的轻量级且快速的协议。
- QUIC ("Quick UDP Internet Connections") - 一种旨在实现更快连接的协议,与 HTTP 协议版本 2 紧密结合。
第 3 层 - 网络
负责通过路由器在网络之间路由数据包的层。
在这一层上,存在以下协议:
- IP ("Internet Protocol") - 每天访问互联网时使用。有两个版本:IP 版本 4 和 6。
- ICMP ("Internet Control Message Protocol") - 由网络设备和网络运算符使用,用于诊断网络连接或供设备发送和响应错误条件等。
- IPSec ("Internet Protocol Security") - 允许两个网络设备之间进行加密且安全的连接。
第 2 层 - 链接
顾名思义,链路网络由设计用于通过网络节点所连接的实际链路(物理连接)发送数据包的协议组成。一种更简单的思考方式是,链路层负责将数据从物理层移动到逻辑层(到网络层)。
该层的协议包括:
- 以太网 - 大多数操作系统在使用物理电缆连接到网络时使用的基本协议。
- Wi-Fi ("Wireless Fidelity") - 用于通过无线电信号访问网络。它使用一系列称为 IEEE 802.11.xx 的协议
- NDP ("Neighbor Discovery Protocol") - IP 版本 6(IPv6) 在链路层上使用此协议来收集通过 IPv6 进行通信所需的信息
第 1 层 - 物理层
物理层代表允许比特和字节在物理介质之间传输的信令。它可以使用电信号或光(例如光纤)通过无线电或电缆信号进行传输。
物理层协议的示例包括:
- CAN 总线 ("Controller Area Network") - 用于微控制器和其他设备,与其他类似设备进行通信,不涉及计算机。常用于 ICS ("Industrial Control Systems")。
- 以太网物理层 - 由以太网在物理层上使用,以高达每秒数千兆位的流量发送信号。
- 蓝牙物理层 - 蓝牙对于如何发送和接收无线电信号也有自己的规范。