业余无线电爱好者 - 计算机网络基础
type: channel
link: http://www.hicq.cc/category/network/
items: 第三章 传输层 第五节 传输控制协议TCP
items: IP转十六进制核心原理
items: 用户数据报协议

第三章 传输层 第五节 传输控制协议TCP
type: item
date: 2025-09-10T15:48:41+08:00
description: 第三章 传输层 第五节 传输控制协议TCP课程信息课程名称： 计算机网络原理授课教师： [教师姓名]授课时间： [具体时间]课时： 3学时教学目标知识目标理解TCP协议的基本概念和特点掌握TCP报文段的格式和字段含义了解TCP连接建立和释放过程掌握TCP的可靠传输机制理解TCP的流量控制和拥塞控制能力目标能够分析TCP报文段的格式能够理解TCP三次握手和四次挥手过程能够进行简单的TCP编程能够分析TCP性能问题教学内容一、TCP协议概述1.1 什么是TCP传输控制协议（Transmission Control Protocol，TCP） 是传输层的一个可靠协议，提供面向连接的、可靠的数据传输服务。1.2 TCP在OSI模型中的位置┌─────────────────────────────────────┐ │ 应用层 (Application) │ ← HTTP, FTP, SMTP, Telnet ├─────────────────────────────────────┤ │ 表示层 (Presentation) │ ├─────────────────────────────────────┤ │ 会话层 (Session) │ ├─────────────────────────────────────┤ │ 传输层 (Transport) │ ← TCP, UDP ├─────────────────────────────────────┤ │ 网络层 (Network) │ ← IP ├─────────────────────────────────────┤ │ 数据链路层 (Data Link) │ ├─────────────────────────────────────┤ │ 物理层 (Physical) │ └─────────────────────────────────────┘1.3 TCP的特点详解特点详细说明影响面向连接数据传输前需要建立连接保证可靠性，增加延迟可靠传输保证数据能够到达目的地需要确认和重传机制有状态维护连接状态信息服务器资源消耗较大全双工支持双向数据传输提高通信效率字节流将数据看作字节流需要应用层处理消息边界流量控制控制发送速率防止接收方溢出拥塞控制检测和避免网络拥塞提高网络利用率五、TCP流量控制5.1 滑动窗口机制滑动窗口示意图： ┌─────────────────────────────────────────────────────────────┐ │ 发送方滑动窗口 │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │已发送并确认│已发送未确认│可发送│不可发送 │ │ │ │ ┌─────┐ │ ┌─────┐ │┌───┐│ ┌─────────────────────┐ │ │ │ │ │1-100│ │ │101-200│ ││201││ │ 301-400 │ │ │ │ │ │ │ │ │ │ ││300││ │ │ │ │ │ │ └─────┘ │ └─────┘ │└───┘│ └─────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────┘ │ │ ↑ │ │ 发送窗口 │ └─────────────────────────────────────────────────────────────┘ 接收方滑动窗口： ┌─────────────────────────────────────────────────────────────┐ │ ┌─────────────────────────────────────────────────────────┐ │ │ │已接收并确认│可接收│不可接收 │ │ │ │ ┌─────┐ │┌───┐│ ┌─────────────────────────────────┐ │ │ │ │ │1-200│ ││201││ │ 301-500 │ │ │ │ │ │ │ ││300││ │ │ │ │ │ │ └─────┘ │└───┘│ └─────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────┘ │ │ ↑ │ │ 接收窗口 │ └──────────────────────────────────────────────────────────…

IP转十六进制核心原理
type: item
date: 2025-09-09T22:12:00+08:00
description: IP转十六进制核心原理生活类比： 把IP地址看成 "电话号码"（如192.168.1.108），转换十六进制就像 "把号码翻译成摩斯密码" 每个数字 → 一组固定长度的特殊符号（十六进制两位）graph LR A[IP地址] --> B[拆成4段] --> C[每段转十进制数] --> D[十进制转十六进制] --> E[补零凑齐两位] --> F[拼接最终结果]分步教学演示（以192.168.1.108为例）步骤1：拆解IP地址 → 理解四段结构IP地址：192 . 168 . 1 . 108 │ │ │ │ 段1 段2 段3 段4 → 像手机号 138-XXXX-YYYY强调：每段范围是0-255（类比手机号每段0-9）步骤2：每段十进制转十六进制（核心计算）计算工具："除16取余法"（用计算器演示） 以段1（192）为例：192 ÷ 16 = 12 → 商数12（十六进制的C）余数 = 0 → 192 - 12×16 = 0结果：C + 0 → C0学生动手实践表：IP段计算过程十六进制记忆口诀192192÷16=12余0 → 12=C, 0=0C0"除16，商余拼"168168÷16=10余8 → 10=A, 8=8A8商A余8 → A811÷16=0余1 → 0=0, 1=101不足两位要补零！108108÷16=6余12→ 6=6,12=C6C6×16=96,108-96=12→C关键提示：十六进制符号：0-9对应数字，10=A, 11=B, 12=C, 13=D, 14=E, 15=F结果必须两位！不足补零（如1→01）步骤3：拼接最终结果 → 生成连续代码段1：C0 段2：A8 段3：01 段4：6C ↓↓↓ 像拼乐高 最终：C0A8016C类比训练： 把 "上海-浦东-张江-108号" 转成缩写 "SH-PD-ZJ-108" → 同样分段编码常见错误预防表错误类型案例纠正方法记忆口诀忘记补零1转成1强制补零 → 01"一位数前加零"十六进制符号混淆12写成1212→C"超9用字母"计算顺序错误先取余再除先除16得商，再取余数"先除后余"忽略小数点192.168写成C0A8严格按.分段"见点就分段"课堂互动游戏游戏1：IP解码挑战赛教师给出十六进制代码，学生反向解析IP地址：题目：C0A86401 → 答案：192.168.100.1 解析： C0 → 192 A8 → 168 64 → 100（6×16 + 4 = 100） 01 → 1游戏2：快速转换接力分组竞赛，用速查表完成转换（提供工具表）：十进制十六进制十进制十六进制0-150-F192C01610168A83220255FF644012880任务：将 10.255.128.64 转十六进制 → 0A FF 80 40教学工具包动态转换器： 在线IP转十六进制工具计算尺教具：┌──────┬─────┐ │ 十进制 │ 十六进制 │ ├──────┼─────┤ │ 192 │ C0 │ ← 滑动指针对准 └──────┴─────┘为什么需要转换？ → 实际应用场景网络配置：路由器设置需要十六进制格式的子网掩码协议分析：Wireshark抓包显示的源/目的IP都是十六进制编程开发：# Python socket编程示例 import socket addr = socket.inet_aton("192.168.1.108") print(addr.hex()) # 输出：c0a8016c终极记忆法： 把IP地址想象成 "四组密码锁"（每组0-255），转十六进制就是 "把数字密码转成字母密码"

用户数据报协议
type: item
date: 2025-09-09T20:38:00+08:00
description: 第三章 传输层 第四节 用户数据报协议UDP课程信息课程名称： 计算机网络原理课程代码： 04741授课教师： [教师姓名]授课时间： [具体时间]课时： 2学时教学目标知识目标理解UDP协议的基本概念和特点掌握UDP数据报的格式和字段含义了解UDP与TCP的区别和联系掌握UDP的应用场景和优缺点能力目标能够分析UDP数据报的格式能够选择合适的传输层协议能够进行简单的UDP编程教学内容一、UDP协议概述1.1 什么是UDP用户数据报协议（User Datagram Protocol，UDP） 是传输层的一个简单协议，提供无连接的、不可靠的数据传输服务。1.2 UDP在OSI模型中的位置┌─────────────────────────────────────┐ │ 应用层 (Application) │ ← HTTP, DNS, DHCP, SNMP ├─────────────────────────────────────┤ │ 表示层 (Presentation) │ ├─────────────────────────────────────┤ │ 会话层 (Session) │ ├─────────────────────────────────────┤ │ 传输层 (Transport) │ ← UDP, TCP ├─────────────────────────────────────┤ │ 网络层 (Network) │ ← IP ├─────────────────────────────────────┤ │ 数据链路层 (Data Link) │ ├─────────────────────────────────────┤ │ 物理层 (Physical) │ └─────────────────────────────────────┘1.3 UDP的特点详解特点详细说明影响无连接发送数据前不需要建立连接减少延迟，提高效率不可靠不保证数据能够到达目的地需要应用层处理可靠性无状态不维护连接状态信息服务器可处理更多客户端简单高效协议开销小，传输效率高适合实时应用支持广播可以同时向多个主机发送数据适合网络发现和媒体分发无流量控制不控制发送速率可能导致接收方缓冲区溢出1.4 UDP与TCP的详细对比特性UDPTCP说明连接性无连接面向连接UDP直接发送，TCP需要三次握手可靠性不可靠可靠UDP不保证送达，TCP保证送达传输效率高低UDP开销小，TCP开销大协议开销8字节20字节UDP头部更小流量控制无有TCP有滑动窗口机制拥塞控制无有TCP有慢启动、拥塞避免等顺序保证无有TCP保证数据顺序适用场景实时应用文件传输UDP适合对实时性要求高的应用1.5 UDP的传输过程发送方 网络 接收方 │ │ │ │ ──── UDP数据报 ────────→ │ │ │ │ ──── UDP数据报 ────────→ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │特点：发送方直接发送数据，无需建立连接数据可能丢失、重复或乱序接收方可能收不到数据二、UDP数据报格式2.1 UDP数据报整体结构┌─────────────────────────────────────────────────────────────┐ │ IP头部 (20字节) │ ├─────────────────────────────────────────────────────────────┤ │ UDP头部 (8字节) │ ├─────────────────────────────────────────────────────────────┤ │ UDP数据 (可变长度) │ └─────────────────────────────────────────────────────────────┘2.2 UDP头部详细结构 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 源端口 | 目标端口 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 长度 | 校验和 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 数据 | | (可变长度) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-…