计算机网络简介
什么是计算机网络?
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,实现资源共享和信息传递的系统。
网络分层模型
OSI七层模型
┌─────────────────┐
│ 应用层 (7) │ HTTP、FTP、SMTP
├─────────────────┤
│ 表示层 (6) │ 数据格式转换、加密
├─────────────────┤
│ 会话层 (5) │ 会话管理
├─────────────────┤
│ 传输层 (4) │ TCP、UDP
├─────────────────┤
│ 网络层 (3) │ IP、ICMP、路由
├─────────────────┤
│ 数据链路层 (2) │ MAC、交换机
├─────────────────┤
│ 物理层 (1) │ 物理传输介质
└─────────────────┘TCP/IP四层模型
┌─────────────────┐
│ 应用层 │ HTTP、FTP、DNS、SMTP
├─────────────────┤
│ 传输层 │ TCP、UDP
├─────────────────┤
│ 网络层 │ IP、ICMP、ARP
├─────────────────┤
│ 网络接口层 │ 以太网、WiFi
└─────────────────┘网络协议
应用层协议
| 协议 | 端口 | 说明 |
|---|---|---|
| HTTP | 80 | 超文本传输协议 |
| HTTPS | 443 | 安全的HTTP |
| FTP | 21 | 文件传输协议 |
| SMTP | 25 | 邮件发送协议 |
| POP3 | 110 | 邮件接收协议 |
| DNS | 53 | 域名解析 |
| SSH | 22 | 安全外壳协议 |
| Telnet | 23 | 远程登录 |
传输层协议
TCP(Transmission Control Protocol)
- 面向连接
- 可靠传输
- 流量控制
- 拥塞控制
UDP(User Datagram Protocol)
- 无连接
- 不可靠传输
- 开销小,速度快
- 适合实时应用
网络设备
1. 集线器(Hub)
- 物理层设备
- 广播方式转发
- 半双工通信
- 已基本淘汰
2. 交换机(Switch)
- 数据链路层设备
- 根据MAC地址转发
- 全双工通信
- 性能高,安全性好
3. 路由器(Router)
- 网络层设备
- 根据IP地址转发
- 连接不同网络
- 具有路由选择功能
4. 网关(Gateway)
- 应用层设备
- 协议转换
- 连接异构网络
IP地址
IPv4地址
32位二进制数,通常用点分十进制表示。
192.168.1.1分类:
| 类别 | 范围 | 默认子网掩码 | 用途 |
|---|---|---|---|
| A类 | 1.0.0.0 - 126.255.255.255 | 255.0.0.0 | 大型网络 |
| B类 | 128.0.0.0 - 191.255.255.255 | 255.255.0.0 | 中型网络 |
| C类 | 192.0.0.0 - 223.255.255.255 | 255.255.255.0 | 小型网络 |
| D类 | 224.0.0.0 - 239.255.255.255 | - | 多播 |
| E类 | 240.0.0.0 - 255.255.255.255 | - | 保留 |
私有IP地址:
- A类:10.0.0.0 - 10.255.255.255
- B类:172.16.0.0 - 172.31.255.255
- C类:192.168.0.0 - 192.168.255.255
IPv6地址
128位二进制数,用冒号分隔的十六进制表示。
2001:0db8:85a3:0000:0000:8a2e:0370:7334子网划分
子网掩码
用于区分网络号和主机号。
IP地址: 192.168.1.10
子网掩码: 255.255.255.0
网络地址: 192.168.1.0
广播地址: 192.168.1.255
可用主机: 192.168.1.1 - 192.168.1.254CIDR(无类域间路由)
192.168.1.0/24 # 等价于 255.255.255.0
10.0.0.0/8 # 等价于 255.0.0.0网络命令
ping
测试网络连通性。
bash
# 测试与目标主机的连通性
ping www.baidu.com
# ping 4次后停止
ping -c 4 www.baidu.com
# 设置数据包大小
ping -s 1024 192.168.1.1traceroute
追踪数据包路由路径。
bash
# Linux/Mac
traceroute www.baidu.com
# Windows
tracert www.baidu.comnetstat
显示网络连接、路由表等信息。
bash
# 显示所有连接
netstat -a
# 显示TCP连接
netstat -t
# 显示监听端口
netstat -l
# 显示进程
netstat -p
# 常用组合
netstat -tunlpnslookup/dig
DNS查询工具。
bash
# nslookup
nslookup www.baidu.com
# dig(更详细)
dig www.baidu.com
# 查询指定DNS服务器
dig @8.8.8.8 www.baidu.comifconfig/ip
查看网络接口配置。
bash
# Linux(旧)
ifconfig
# Linux(新)
ip addr
ip link
ip route
# Windows
ipconfig
ipconfig /allcurl/wget
网络请求工具。
bash
# curl
curl https://www.baidu.com
curl -I https://www.baidu.com # 只获取头部
curl -X POST -d "data" URL # POST请求
# wget
wget https://example.com/file.zip
wget -c https://example.com/file.zip # 断点续传网络安全
防火墙
- 包过滤防火墙
- 应用层防火墙
- 状态检测防火墙
加密技术
- 对称加密:AES、DES
- 非对称加密:RSA、ECC
- 哈希算法:MD5、SHA-256
常见攻击
- DDoS攻击
- SQL注入
- XSS攻击
- CSRF攻击
- 中间人攻击
网络性能指标
1. 带宽(Bandwidth)
单位时间内传输的最大数据量,单位:bps、Mbps、Gbps。
2. 延迟(Latency)
数据从源到目的地的时间,单位:ms。
3. 吞吐量(Throughput)
单位时间内实际传输的数据量。
4. 丢包率(Packet Loss)
丢失的数据包占总数据包的比例。
💡 提示
这是一个demo文档,欢迎补充更多计算机网络相关内容。