TCP/IP协议相关知识点
一、TCP/IP协议簇概述
核心思想:分层、封装、端到端通信。
TCP/IP不是一个单一的协议,而是一个协议栈(Protocol Stack),由一系列协同工作的协议组成。它采用了四层模型(软考中常与OSI七层模型对比考察)。
TCP/IP四层模型 | 对应OSI层 | 核心功能 | 主要协议 |
---|---|---|---|
应用层 | 应用层、表示层、会话层 | 为应用程序提供网络服务接口 | HTTP, HTTPS, FTP, SMTP, POP3, IMAP, DNS, DHCP, Telnet, SNMP |
传输层 | 传输层 | 提供端到端的通信,数据分段、流量控制、差错恢复 | TCP, UDP |
网络层 | 网络层 | 寻址和路由,将数据包从源主机发送到目标主机 | IP, ICMP, IGMP, ARP, RARP |
网络接口层 | 数据链路层、物理层 | 负责在物理网络上帧的发送和接收 | Ethernet, PPP, Frame Relay, 802.11 (Wi-Fi) |
TCP/IP模型 | OSI七层模型 |
---|---|
应用层 | 应用层 表示层 会话层 |
传输层 | 传输层 |
网际层 | 网络层 |
网络接口层 | 数据链路层 物理层 |
记忆诀窍1(分层):
“应传网接” 或 “A4-T4-N3-L2”
- 应(应用层)-传(传输层)-网(网络层)-接(接口层)
- A4(Application)、T4(Transport)、N3(Network)、L2(Link),数字代表大致对应的OSI层数。
二、各层核心协议详解(软考重点)
1. 网络层
这一层负责“寻址和路由”,是互联网的“邮政系统”。
-
IP(网际协议)
- 功能:无连接、不可靠的数据包传输服务。负责寻址(IP地址)和路由(选择路径)。
- 关键概念:
- IP地址:逻辑地址,如
192.168.1.1
。分为IPv4和IPv6。 - 数据包:IP协议的数据传输单元。
- IP地址:逻辑地址,如
- 软考考点:IP地址分类(A、B、C、D、E)、子网划分、CIDR(无类别域间路由)、NAT(网络地址转换)。
-
ICMP(网际控制报文协议)
- 功能:用于传输控制信息,如网络通不通、主机是否可达、路由是否可用等。它不传输用户数据。
- 常见应用:
ping
命令(使用ICMP Echo Request和Reply)、tracert
/traceroute
命令(跟踪路径)。 - 记忆诀窍2:ICMP ≈ 网络“侦察兵”,负责探路和报信。
-
ARP(地址解析协议)
- 功能:通过已知的IP地址,获取其对应的MAC地址(物理地址)。
- 工作过程:在局域网内广播“谁是
IP-A
?”,拥有IP-A
的主机回应“我是IP-A
,我的MAC是MAC-A
”。 - 记忆诀窍3:ARP:IP -> MAC(问路:你要找的门牌号对应的具体房间)。
-
RARP(逆地址解析协议)
- 功能:与ARP相反,通过已知的MAC地址获取IP地址。现在已被DHCP协议取代。
2. 传输层
这一层负责“端到端”的通信,是应用程序之间的“数据传输管家”。
-
TCP(传输控制协议)
- 特点:面向连接、可靠、基于字节流。
- 如何保证可靠?
- 三次握手建立连接。
- 确认与重传机制。
- 流量控制(滑动窗口)。
- 拥塞控制(慢启动、拥塞避免、快重传、快恢复)。
- 软考考点:TCP首部格式(序列号、确认号、窗口大小等)、三次握手/四次挥手过程、滑动窗口机制。
-
UDP(用户数据报协议)
- 特点:无连接、不可靠、基于数据报、传输效率高。
- 应用场景:DNS查询、视频流媒体、语音通话(VoIP)、在线游戏等对实时性要求高、允许少量丢失的场景。
- 与TCP对比记忆诀窍4:
- TCP像打电话:先拨号(连接),确认对方在听(可靠),说慢了你会等我(流量控制)。—— “可靠但慢”
- UDP像发短信/寄明信片:直接发出,不管对方收没收到。—— “快速但不可靠”
3. 应用层
这一层的协议直接为用户应用程序提供服务。
- HTTP (80) / HTTPS (443):网页浏览。
- FTP (20/21):文件传输。端口20用于数据传输,21用于控制连接。
- SMTP (25):发送邮件。
- POP3 (110) / IMAP (143):接收邮件。
- DNS (53):域名解析,将域名(如
www.baidu.com
)转换为IP地址。 - DHCP (67/68):动态分配IP地址。
- Telnet (23):远程登录。
- SNMP (161/162):网络管理。
三、端口(Port)详解
端口的作用:在一台主机上,唯一标识一个正在运行的应用程序(进程)。IP地址好比公司的地址,端口号好比公司内部的部门或工位号。
端口号范围:
- 0-1023:知名端口,分配给系统主要服务。如 HTTP-80, HTTPS-443, FTP-21, DNS-53。
- 1024-49151:注册端口,分配给用户进程或应用程序。如 MySQL-3306, Oracle-1521。
- 49152-65535:动态/私有端口,客户端程序临时使用。
记忆诀窍5(端口号串联故事法):
- HTTP 80:
80
像两扇打开的网页(“8”像两个圈)。- HTTPS 443:
443
比80更安全,所以数字也多了(4+4+3=11,比8大)。- FTP 21:
21
像“FTP”里的“T”和“1”组合。- DNS 53:
53
谐音“巫山”,在“巫山”问路(域名解析)。- SMTP 25:
25
是圣诞老人发礼物的日子,他给你“发送”礼物(发邮件)。- POP3 110:
110
是报警电话,你需要“呼叫”警察来“接收”帮助(收邮件)。
四、软考核心考点与记忆总结
-
TCP vs UDP 对比
- 这是必考点。务必从连接性、可靠性、有序性、速度、应用场景、首部开销等方面进行全面对比。
-
TCP三次握手与四次挥手
- 三次握手(建立连接):
Client -> SYN -> Server
Server -> SYN+ACK -> Client
Client -> ACK -> Server
- 记忆诀窍6:“SYN, SYN+ACK, ACK” —— 可以想象成“你好,收到你好,我也好”。
- 四次挥手(断开连接):
A -> FIN -> B
B -> ACK -> A
B -> FIN -> A
A -> ACK -> B
- 记忆诀窍7:“FIN, ACK, FIN, ACK” —— 可以想象成A说“我说完了”,B说“好的”,B说“我也说完了”,A说“好的”。
- 三次握手(建立连接):
-
IP地址与子网划分
- 熟练掌握A/B/C类地址的默认掩码和范围。
- 掌握根据IP地址和子网掩码计算网络地址、广播地址、可用主机数。这是计算题高频考点。
-
协议与端口号对应关系
- 选择题中经常出现,要求选出某个服务对应的端口号。记住上面“串联故事法”中的几个关键端口即可应对大部分题目。
-
ARP与ICMP的作用
- 理解ARP是解决“下一跳”的MAC地址问题,在局域网内工作。
- 理解ICMP是网络层的“辅助”协议,用于传递控制和错误信息。
总记忆诀窍(思维导图法)
- 中心:TCP/IP协议簇
- 第一层分支:应用层、传输层、网络层、网络接口层
- 第二层分支:
- 应用层:画出HTTP/80, FTP/21等协议和端口。
- 传输层:画出TCP和UDP两个大分支,下面再细写它们的特点。
- 网络层:画出IP, ICMP, ARP,并注明其核心功能(寻址、控管、地址解析)。
- 网络接口层:注明Ethernet等,知道其作用即可。