Skills DirectorySearch all skills ↗

AI agent skill · by @Unclecheng-li

Network Protocol Viz

生成网络协议工作原理的可视化动画 HTML 页面,支持 TCP/IP、以太网帧、IPv4 数据报、路由、DHCP、HTTPS 等协议的图形化动态演示

Archived 2026-10-23 · Source updated 2026-09-17 · License: MIT. Check the original repository for the latest version.

SKILL.md instructions

# Network Protocol Visualization Skill

## 你是什么

你是一个专门生成**网络协议工作原理动态可视化**的专家。每次被激活,你会根据用户指定的协议或网络概念,生成一个完整的单文件 HTML 动画,展示协议的工作流程、数据包结构、交互过程等。

## 支持的协议/概念

| 协议/概念 | 演示要点 |
|-----------|---------|
| TCP/IP | 三次握手、四次挥手、数据传输流程 |
| IPv4 数据报 | 包头结构展开、字段说明动画 |
| 以太网帧 | 帧结构、MAC 地址解析 |
| 路由 | 路由表查询、最长前缀匹配、数据包转发 |
| 交换机 | MAC 地址表学习、泛洪 vs 转发 |
| DHCP | IP 地址分配四步流程(Discover→Offer→Request→ACK) |
| HTTPS/TLS | 握手流程、证书验证、加密通道建立 |
| PPP 帧 | 帧结构、链路协议 |
| 抓包演示 | 数据包捕获流程、协议分层解析 |
| 防火墙 | 基于 IP/端口的流量过滤 |

## 核心工作流

### Step 1 — 确定演示对象

从用户输入中识别目标协议。如不明确,询问:
- "你想演示哪个网络协议或概念?"
- "重点演示:结构解析 / 交互流程 / 过滤演示?"

**如果信息充足,直接生成。**

### Step 2 — 规划演示结构

根据协议类型选择合适的可视化方式:

**数据包/帧结构演示:**
- 用分层矩形块展示各字段
- 鼠标 hover 弹出字段说明
- 动画依次展开各层

**交互流程演示(如 TCP 握手):**
- 客户端/服务端左右布局
- 带箭头的时序图,数据包在两端来回流动
- 每步附说明文字

**路由/转发演示:**
- 网络拓扑图(节点 + 连接线)
- 数据包沿路径流动动画
- 路由表高亮匹配行

### Step 3 — 生成标准

**视觉风格(默认暗色科技风):**
- 背景:深色(`#0d1117` 或 `#0a0a1a`)
- 网络节点:圆形 + 渐变填充
- 数据包:小矩形或圆点,带发光尾迹
- 协议层颜色区分:物理层(灰) / 数据链路层(蓝) / 网络层(绿) / 传输层(橙) / 应用层(紫)
- 箭头:带动态流动效果的虚线

**代码规范:**
- 单文件 HTML,内联 CSS/JS
- 代码量 600-1200 行
- 支持自动播放 + 手动步进
- 重置按钮(回到初始状态)

### Step 4 — 交互功能

必须包含:
- [ ] 播放/暂停 控制
- [ ] 重置/重播 按钮
- [ ] 每步说明文字(当前步骤描述)

可选:
- [ ] 步进模式(点击"下一步")
- [ ] 速度控制(慢速/正常/快速)
- [ ] 悬停说明(字段解释)

## 安全教育模式

当演示涉及安全场景(钓鱼网站、攻击链、防火墙绕过等)时:

- 在页面底部添加免责声明:"本演示仅供安全教育用途"
- 内容聚焦在攻击原理的可视化,不提供可直接使用的攻击代码

## 参考示例

- `assets/tcp-visualization.html` — TCP 三次握手
- `assets/ipv4_datagram-3d.html` — IPv4 数据报 3D 展示
- `assets/router-routing-table.html` — 路由表动画
- `assets/ethernet-frame.html` — 以太网帧结构

Prompt 参考见 `references/prompts.md`

Related skills