一、概述
目前使用的计算机网络模型主要分为两个:OSI七层模型和TCP/IP模型。
相比OSI七层模型 ,TCP/IP模型更简洁,更实用,因此目前所使用的基本都是TCP/IP模型,已成为事实标准。
二、OSI七层模型
OSI(Open System Interconnect)七层模型于1984年被国际标准化组织(ISO)制定,并正式发布。
该模型将计算机网络通信协议分为七层,该模型目的是将复杂的网络通信问题划分为更小、更容易管理的部分,每一层负责不同的功能。
- 应用层(Application Layer):为终端用户使用的应用提供网络服务(处理用户数据的协议)。
- 表示层(Presentation Layer):行消息数据的语法处理,负责数据的格式转换、加密解密和压缩解压缩等操作,以保证应用程序能够正确地读取和处理数据。
- 会话层(Session Layer):负责建立、维护和关闭应用程序之间的会话,为应用程序提供可靠的数据传输和错误处理机制。
- 传输层(Transport Layer):负责将数据可靠地传输到目标主机的应用程序中,提供端到端的数据传输服务。
- 网络层(Network Layer):负责实现不同网络之间的互联,提供路由选择和寻址等功能,以保证数据能够正确地传递到目标网络中。
- 数据链路层(Data Link Layer):负责将物理层传输的比特流组织成➡帧(Frame),并进行错误检测和纠正,以保证数据无误地传输。
- 物理层(Physical Layer):负责传输比特流,即0和1的数据流,这一层关注数据传输的物理特性,如电压、电流、频率等。这一层的数据单位叫做比特(bit)。
分层过于细致,以至于使用网络的体系结构变得臃肿复杂
三、TCP/IP模型
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)模型
- 应用层(Application Layer)
- 传输层(Transport Layer)
- 网络层(Network Layer):解决两台网络上的主机之间的通信问题,即路由路径的选择
- 数据链路层(Data Link Layer):解决两台直接相连的主机之间的通信问题
- 物理层(Physical Layer)
与OSI七层模型相比,TCP/IP模型将应用层、表示层和会话层统一为应用层,更加简洁。
四、TCP/IP协议栈
4.1 应用层
文件传输和通信
- HTTP(HyperText Transfer Protocol):用于在客户端和服务器之间传输超文本数据,通常用于 Web 浏览器和 Web 服务器之间的通信。
- HTTPS(HyperText Transfer Protocol Secure):HTTP 的安全版本,通过 SSL/TLS 加密传输数据,保证通信过程中的安全性。
- DNS(Domain Name System):用于将域名解析为对应的 IP 地址,从而实现域名和 IP 地址之间的映射。
- FTP(File Transfer Protocol):用于在客户端和服务器之间传输文件,支持上传和下载文件的功能。
邮件功能
- SMTP(Simple Mail Transfer Protocol):用于在邮件服务器之间传输电子邮件,负责发送邮件。
- POP3(Post Office Protocol version 3):用于从邮件服务器上下载邮件到本地计算机,负责接收邮件。
- IMAP(Internet Message Access Protocol):也是用于接收邮件的协议,与 POP3 类似,但提供了更丰富的功能,如在服务器上管理邮件等。
远程登录和管理
- SSH(Secure Shell):用于远程登录和执行命令,提供了加密的网络连接,保证了通信的安全性。
- Telnet:用于远程登录和执行命令,类似于 SSH,但不提供加密功能,通信数据不安全。
- SNMP(Simple Network Management Protocol):用于网络设备之间的管理和监控,可以实现对网络设备的远程配置和监控。
4.2 传输层
- TCP(Transmission Control Protocol):提供可靠的、面向连接的数据传输服务,确保数据的可靠性、顺序性和完整性。TCP适用于对数据传输质量要求较高的场景,如文件传输、网页浏览等。
- UDP(User Datagram Protocol):提供无连接的数据传输服务,不保证数据的可靠性,也不保证数据的顺序性和完整性。UDP适用于实时性要求较高、对数据传输质量要求不那么严格的场景,如音视频传输、在线游戏等。
- RTP(Real-Time Transport Protocol,实时传输协议):针对多媒体数据流的一种传输层协议
4.3 网络层
设备:路由器
IP协议
- IPv4(Internet Protocol):是互联网中最基本的协议,用于在网络中传输数据包。IP协议定义了数据包的格式、寻址方式和路由选择等信息,是整个互联网的基础。
- IPv6(Internet Protocol version 6):是IP协议的下一代版本,用于解决IPv4地址空间不足的问题。IPv6采用128位地址长度,提供了更大的地址空间,支持更多的设备连接到互联网。
控制和管理
- ICMP(Internet Control Message Protocol):用于在IP网络中传递控制消息和错误信息。ICMP通常用于网络设备之间的通信,如路由器和主机之间的通信,以及用于检测网络连通性和故障诊断。
- IGMP(Internet Group Management Protocol,互联网组管理协议):负责IPv4组播成员管理的协议,用来在组播接收者和与其直接相邻的组播路由器之间建立和维护组播组成员关系。
ARP
- ARP(Address Resolution Protocol):用于将IP地址映射为MAC地址(物理地址)。ARP协议在局域网内部使用,通过发送ARP请求获取目标设备的MAC地址,从而实现数据包的传输。
- RARP(Reverse Address Resolution Protocol):与ARP相反,用于将MAC地址映射为IP地址。RARP协议通常用于无盘工作站等设备,可以根据MAC地址获取对应的IP地址。
4.4 数据链路层
设备:交换机
- 以太网(Ethernet):基于802.3协议标准,一种常见的局域网技术,使用MAC地址进行帧的传输和接收
- 接入网
- PPP(Point to Point Protocol,点对点协议):用于一根链路直连的两台设备之间进行通信
- ATM
- PTM
- GEM
- Docisi
4.5 物理层
设备:集线器
使用不同的物理介质完成数据的传输
- 光纤
- Wi-Fi
- Buletooth蓝牙
- Cable有线电视电缆