计算机网络基础:完整指南
· 14分钟阅读
计算机网络是我们互联世界的基础。每次您浏览网站、发送电子邮件、观看视频或参加视频通话时,您都在依赖一个复杂但优雅的协议、硬件和软件系统协同工作。了解网络如何运作不仅仅是IT专业人员的事——对于任何使用技术、管理系统或想要有效排除连接问题的人来说,这都是必备知识。
本指南从零开始涵盖计算机网络的基本概念。我们将探讨组织网络通信的理论模型、驱动互联网的实用协议、设备如何在全球范围内相互查找,以及安全机制如何保护传输中的数据。无论您是刚开始网络学习之旅的学生、构建联网应用程序的开发人员,还是为认证考试学习的专业人士,本指南都能为您提供所需的坚实基础。
什么是计算机网络?
简单来说,计算机网络是将计算设备连接在一起以共享资源和通信的实践。网络可以小到通过电缆连接的两台笔记本电脑,也可以大到连接每个大陆数十亿设备的全球互联网。
网络通常按其地理范围分类。局域网(LAN)在有限区域内连接设备——家庭、办公室或建筑物。LAN通常使用以太网(有线)或Wi-Fi(无线)技术,并提供高速度(现代以太网为1-10 Gbps)。广域网(WAN)使用光纤、卫星链路和租用线路等技术跨越大距离——城市、国家或大陆——连接LAN。互联网本身就是世界上最大的WAN,是一个覆盖整个地球的网络之网络。
其他网络类型包括覆盖城市或校园的城域网(MAN)、连接个人工作空间内设备的个人区域网(PAN)(例如蓝牙设备),以及在公共基础设施上创建安全加密连接的虚拟专用网(VPN)。了解这些区别有助于您为任何网络场景选择正确的架构和工具。
OSI模型:7层详解
开放系统互连(OSI)模型由国际标准化组织(ISO)于1984年开发,为理解网络通信的工作原理提供了一个通用框架。它将复杂的数据传输过程划分为七个不同的层,每层都有特定的职责。虽然没有真实世界的协议完全映射到OSI模型,但它仍然是讨论和排除网络问题的标准参考。
第1层——物理层:这是基础——通过物理介质传输原始比特的实际硬件。它包括电缆(铜缆、光纤)、无线射频、连接器、电压和信号标准。当您插入以太网电缆或连接到Wi-Fi时,您正在与物理层交互。常见标准包括以太网(IEEE 802.3)、Wi-Fi(IEEE 802.11)和蓝牙。此层的问题包括电缆损坏、干扰和信号随距离衰减。
第2层——数据链路层:此层处理直接连接节点之间的可靠数据传输。它将原始比特打包成帧,添加MAC(媒体访问控制)地址用于本地识别,并管理对共享物理介质的访问。交换机在此层运行,使用MAC地址表仅将帧转发到正确的目标端口。数据链路层还使用校验和(如CRC)处理错误检测,并使用流量控制防止较快的发送方压倒较慢的接收方。
第3层——网络层:路由层。它确定数据从源到目的地跨多个网络传输的最佳路径。IP(互联网协议)在此运行,分配逻辑地址(IP地址)并使路由器能够逐跳将数据包转发到目的地。关键协议包括IPv4、IPv6、ICMP(由ping和traceroute使用)以及OSPF和BGP等路由协议。使用我们的IP查询工具来探索网络层寻址的实际应用。
第4层——传输层:此层确保应用程序之间完整、可靠的数据传输。TCP(传输控制协议)提供面向连接的、有保证的传输,具有流量控制和错误恢复功能——对于网页浏览、电子邮件和文件传输至关重要。UDP(用户数据报协议)提供无连接的、尽力而为的传输,开销较低——非常适合视频流、游戏和DNS查询等实时应用程序。此层的端口号将数据定向到主机上的特定应用程序。
第5层——会话层:会话层管理应用程序之间的连接(会话)。它处理会话的建立、维护和终止,以及长数据传输的同步和检查点。在实践中,会话管理通常集成到应用层协议中,而不是作为单独的层存在。
第6层——表示层:此层处理网络格式和应用程序格式之间的数据转换。它负责加密/解密、压缩/解压缩和数据格式转换(如字符编码)。保护HTTPS连接的TLS/SSL加密在概念上在此层运行。
第7层——应用层:最顶层是用户与网络交互的地方。它直接向应用程序提供网络服务:网页浏览(HTTP/HTTPS)、电子邮件(SMTP、IMAP、POP3)、文件传输(FTP、SFTP)、域名解析(DNS)和远程访问(SSH)。当您排除"网站无法加载"问题时,通常从第7层开始向下工作。
TCP/IP:互联网的协议套件
虽然OSI模型是理论参考,但TCP/IP模型才是互联网实际运行的基础。TCP/IP协议套件由Vint Cerf和Bob Kahn在20世纪70年代为美国国防部的ARPANET项目开发,具有四层,大致映射到OSI模型的七层。
网络访问层(结合OSI第1-2层)处理物理传输和本地网络成帧。互联网层(OSI第3层)使用IP管理逻辑寻址和路由。传输层(OSI第4层)使用TCP或UDP提供端到端通信。应用层(OSI第5-7层)包含应用程序直接使用的所有高级协议。
TCP(传输控制协议)是可靠互联网通信的主力。在任何数据传输之前,TCP使用三次握手建立连接:客户端发送SYN(同步)数据包,服务器响应SYN-ACK(同步-确认),客户端用ACK(确认)确认。这确保双方都准备好通信。在数据传输期间,TCP对每个段进行编号,要求接收确认,重传丢失的段,管理拥塞以避免网络过载,并保证数据完整且按顺序到达。
UDP(用户数据报协议)采取相反的方法:它在不建立连接的情况下发送数据,也不保证传输。这可能听起来不可靠,但这正是某些应用程序所需要的。例如,视频会议宁愿丢弃偶尔的帧,也不愿暂停重传——实时对话中一秒钟的延迟比短暂的视觉故障更具破坏性。DNS查询也使用UDP以提高速度,因为TCP三次握手的开销会明显减慢每次网页加载(通常需要多次DNS查询)。
IP(互联网协议)提供跨网络路由数据的寻址系统。IPv4使用32位地址(如192.168.1.1),提供约43亿个唯一地址——这个数字在20世纪80年代似乎取之不尽,但早已不足以满足当今互联世界的需求。IPv6使用128位地址(如2001:0db8:85a3:0000:0000:8a2e:0370:7334),提供340涧个地址——足以为地球表面的每个原子分配一个唯一地址,还有剩余。从IPv4到IPv6的过渡正在进行中,大多数现代系统同时支持两种协议(双栈)。
DNS:互联网的电话簿
域名系统(DNS)是互联网最关键但又最不可见的服务之一。每次您在浏览器中输入"nettool1.com"之类的URL时,DNS都会将该人类可读的域名转换为计算机用于定位服务器的数字IP地址。没有DNS,您需要记住每个访问网站的IP地址。
DNS作为分布式分层数据库运行,分为权威区域。顶部是根服务器——由全球组织运营的13个逻辑根服务器集群(标记为A到M)。这些根服务器知道在哪里找到.com、.org、.net等扩展名以及.uk和.jp等国家代码的顶级域(TLD)服务器。TLD服务器反过来知道哪些权威名称服务器保存各个域的实际DNS记录。
当您访问网站时,DNS解析过程遵循以下步骤。您的设备首先检查其本地缓存——如果最近解析过此域,答案将存储在本地以便快速检索。如果没有,它会查询您配置的DNS解析器(通常由您的ISP或Google的8.8.8.8或Cloudflare的1.1.1.1等公共服务提供)。解析器检查自己的缓存,如果记录不在那里,它会执行递归查找:查询根服务器,然后查询相应的TLD服务器,然后查询域的权威名称服务器。最终答案在每个级别缓存以供将来查询,由记录的TTL(生存时间)值控制。
DNS支持多种记录类型,每种都有不同的用途。A记录将域映射到IPv4地址。AAAA记录映射到IPv6地址。CNAME记录创建别名(将一个域名指向另一个域名)。MX记录指定域的邮件服务器。TXT记录保存任意文本,通常用于电子邮件身份验证(SPF、DKIM、DMARC)和域所有权验证。NS记录将权限委托给特定的名称服务器。使用我们的DNS查询工具实际探索这些记录类型。
DNS安全是一个重要考虑因素。传统的DNS查询以明文发送,使监控网络流量的任何人都可以看到它们。DNS over HTTPS(DoH)和DNS over TLS(DoT)加密DNS查询,防止窃听和操纵。DNSSEC(域名系统安全扩展)向DNS记录添加加密签名,允许解析器验证响应未被篡改——防止DNS欺骗和缓存投毒攻击。
HTTP和HTTPS:网络的工作原理
超文本传输协议(HTTP)是支持万维网的应用层协议。每个网页、图像、API调用和Web应用程序都依赖HTTP在客户端(浏览器)和服务器之间进行通信。了解HTTP对于Web开发、系统管理和网络故障排除至关重要。
HTTP遵循简单的请求-响应模型。客户端