网络原理:网络通信基础概念全面整理
一、IP地址
IP地址是互联网上每一台设备的唯一标识,用于在网络中定位设备。
类似于现实生活中的“门牌号”,IP地址使得数据包能够准确发送到目标设备。
- IPv4:如 `192.168.1.1`,由32位二进制数表示,通常以点分十进制形式书写。
- IPv6:如 `2001:0db8::ff00:0042:8329`,由128位二进制数表示,解决IPv4地址不足的问题。
二、端口号
端口号是一个16位的整数,用于标识一台主机上的特定应用程序。
IP地址定位到设备,端口号则定位到设备上的具体服务。
- 范围:0 ~ 65535
- 常见端口:
- 80:HTTP
- 443:HTTPS
- 22:SSH
- 53:DNS
三、协议
协议是网络通信中双方事先约定好的规则,包括数据格式、传输方式、错误处理等。
常见协议:
- TCP:面向连接、可靠传输
- UDP:无连接、速度快但不保证可靠
- HTTP:超文本传输协议
- FTP:文件传输协议
- DNS:域名解析协议
四、协议分层
为了降低网络设计的复杂性,网络协议通常被分为多个层次,每一层负责不同的功能。
最经典的模型是 TCP/IP五层模型:
五、封装与分用
封装(Encapsulation)
发送数据时,从上至下逐层添加头部(和尾部)信息,形成最终在网络中传输的数据帧。
例如:
应用层数据 → 添加TCP头 → 添加IP头 → 添加以太网头和尾
分用(Demultiplexing)
接收数据时,从下至上逐层解析并移除头部信息,最终将数据交给目标应用程序。
六、客户端与服务器
- 客户端:发起请求的一方,如浏览器、手机APP。
- 服务器:接收请求并提供服务的一方,如Web服务器、数据库服务器。
七、请求与响应
典型的网络交互模式:
1. 请求:客户端向服务器发送数据,要求某种服务。
2. 响应:服务器处理请求后返回结果。
例如:
浏览器输入URL → 发送HTTP请求 → 服务器返回HTML页面
八、两台主机之间的网络通信流程
假设主机A向主机B发送一条消息:
1. 应用层:生成数据(如HTTP请求)
2. 传输层:添加TCP头(包含端口号),形成报文段
3. 网络层:添加IP头(包含源IP和目标IP),形成数据包
4. 数据链路层:添加MAC头,形成数据帧,通过物理设备发送
5. 物理层:将数据帧转为比特流传输
6. 经过路由器、交换机等设备转发,最终到达主机B
7. 主机B逐层解封装,将数据交给目标应用程序