文章目录
1. 网络模型
1.1 OSI 七层模型
OSI,即开放系统互连模型,是计算机网络中的经典模型。它由七个层次组成:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。每一层都有其特定的功能和责任,为上层提供服务并使用下层的服务。
当然,OSI(开放系统互连)模型是用于描述计算机网络通信的标准模型,它由七层组成。每一层都有其特定的功能,以下是每一层的详细描述:
1. 物理层 (Physical Layer)
- 功能:确保原始数据的比特流(bit stream)在物理通信介质(如电缆或无线电波)上的透明传输。
- 主要工作:定义物理设备的技术标准,如电压、时钟频率、接口的形状和尺寸等。
- 设备和技术:中继器、集线器、传输介质(如双绞线、光纤、无线通信链路)等。
2. 数据链路层 (Data Link Layer)
- 功能:确保在物理链路上的无差错的数据帧的传输,进行帧的封装、物理寻址、错误检测和控制帧流。
- 主要工作:将物理层传来的比特流组合成数据帧,并进行错误检测和纠正。
- 子层:LLC (Logical Link Control) 和 MAC (Media Access Control)。
- 设备和技术:网桥、交换机、MAC 地址、ARP、PPP、Ethernet、VLAN等。
3. 网络层 (Network Layer)
- 功能:决定数据的路径选择和转发,实现数据包的路由和中继。
- 主要工作:数据包的路由选择、逻辑寻址(如IP地址)及错误处理等。
- 设备和技术:路由器、IP 地址、ICMP、OSPF、BGP、IP路由等。
4. 传输层 (Transport Layer)
- 功能:确保两台主机之间的数据传输可靠和透明,进行错误恢复和流量控制。
- 主要工作:提供端对端的通信服务,进行段的封装、连接的建立、维护和终止、错误恢复、流量控制等。
- 协议:TCP、UDP、SCTP等。
5. 会话层 (Session Layer)
- 功能:建立、管理和终止会话。
- 主要工作:确保通信系统中的两个用户在数据通信过程中可以正常地进行会话。
- 应用:RPC、SQL、NetBIOS、ASP等。
6. 表示层 (Presentation Layer)
-
功能:进行数据的转换、加密、压缩和解压缩。
-
主要工作:
- 数据格式转换:将数据从一种格式转换为另一种格式,例如 ASCII 到 EBCDIC。
- 数据加密:确保数据在传输过程中的安全性。
- 数据压缩:减少数据传输的时间。
-
例子:MIME 编码、数据格式转换、文件加密等。
7. 应用层 (Application Layer)
- 功能:为用户提供应用服务,并协调下层协议栈中的各层。
- 主要工作:
- 网络服务进程到进程之间的通信:如电子邮件、文件传输、远程登录等。
- 定义与其他应用程序的通信规则。
- 协议和应用:HTTP、FTP、SMTP、POP3、IMAP、Telnet、DNS等。
在 OSI 七层模型中,不同的层传输的数据单元的名称不同,物理层是比特,数据链路层是帧,网络层是数据包,传输层是 TPDU,应用层是 APDU。
概念一:几种常见的设备所处的 OSI 模型层级:集线器和中继器处于物理层,交换机处于数据链路层,路由器处于网络层。
- 具体概念参考:
集线器和中继器(物理层)
交换机(链路层)
路由器(网络层)
1.2 TCP/IP 模型和混合模型
TCP/IP 模型:原本只是 Linux/Unix 下的一个网络通信栈,比 OSI 模型简单,没有表示层和会话层,凭借实用和开放的特性成为了互联网业界的标准。 TCP/IP 模型将 OSI 中的物理层和数据链路层抽象成了网络接口层,向上一次是网际层 (IP 协议),传输层和应用层。
2. 协议和服务
2.1 协议架构
几个关键名词:
- 协议 Protocol
- 层 Layer
- 对等 Peers:不同的主机之间存在着对等的协议层
- 接口 Interface:传输的过程中上层的协议会调用下层协议的接口
- 协议栈 Protocol Stack:一系列有联系的协议
2.2 服务类型
根据提供的服务特性,可以将服务分类为面向连接的服务和无连接的服务。面向连接的服务像电话通话一样需要先建立连接,而无连接的服务则更像寄信,直接发送数据。
2.3 服务原语 Primitives
面向连接的服务有五个服务原语
- LISTEN 等待一个还没来的连接
- CONNECT 和一个等待的对等层进行连接
- RECEIVE 等待一个还没来的 message
- SEND 向对等层发送一个 message
- DISCONNECT 结束一个连接
3. 网络
3.1 网络的类型
计算机网络可以按照覆盖范围划分为:个人区域网(PAN)、局域网(LAN)、城域网(MAN)和广域网(WAN)。
- 广域网 WAN:特点是会有很多的路由器和子网
- 虚拟专用网络 VPN:计算机通过虚拟链路相连接,没有真实的线路
- ISP网络:由网络服务商提供的网络
- 最大的网络就是因特网 Internet Work
3.2 网络传输
网络传输主要关注数据从一个设备发送到另一个设备的方式。根据传输方式的不同,网络传输可以分为以下几种:
-
单播 (Unicast):
- 定义:单播是指数据从单一源点发送到单一目的地。
- 示例:当你从网站下载文件时,服务器会通过单播发送数据到你的计算机。
-
广播 (Broadcast):
- 定义:广播是指数据从单一源点发送到网络中的所有设备。
- 示例:在一个局域网 (LAN) 中,ARP 请求使用广播来查找 IP 地址对应的 MAC 地址。
-
组播 (Multicast):
- 定义:组播是指数据从单一源点发送到指定的多个目的地。
- 示例:IPTV 服务和某些实时通信协议使用组播来同时向多个订阅者发送内容。
-
任播 (Anycast):
- 定义:任播是指数据从单一源点发送到任意一个在接收组中的目的地(通常是距离最近的一个)。
- 示例:DNS 服务在某些情况下使用任播来提高响应速度。
3.3网络性能指标
网络性能指标是用来评估网络操作和质量的度量。以下是一些常见的网络性能指标:
-
带宽 (Bandwidth):
- 定义:带宽是指网络在单位时间内可以传输的最大数据量。
- 单位:通常使用比特/秒 (bps)。
-
延迟 (Latency):
- 定义:延迟是指数据从发送点到接收点所需的时间。
- 单位:通常使用毫秒 (ms)。
-
吞吐量 (Throughput):
- 定义:吞吐量是指网络在特定条件下实际传输的数据量。
- 单位:与带宽类似,通常使用比特/秒 (bps)。
-
丢包率 (Packet Loss Rate):
- 定义:丢包率是指在数据传输过程中丢失的数据包与总数据包之比。
- 单位:通常使用百分比 (%)。
-
抖动 (Jitter):
- 定义:抖动是指数据传输的延迟不稳定,具有变化性。
- 单位:通常使用毫秒 (ms)。
-
可用性 (Availability):
- 定义:可用性是指网络在一段时间内的工作时间与总时间的比值。
- 单位:通常使用百分比 (%)。
-
数据率/比特率 (Bit Rate):
- 定义:数据率或比特率表示在单位时间内传输或处理的数据量。它衡量的是数据的传输速度。
- 单位:通常使用“比特/秒”(bps)来表示。常见的单位还有 Kbps(千比特/秒)、Mbps(兆比特/秒)、Gbps(吉比特/秒)等。