diff --git a/README.md b/README.md
index 09b3e94..96a4fc4 100644
--- a/README.md
+++ b/README.md
@@ -10,7 +10,7 @@
ios-async-socket-explorer 是一个生产级TCP通信框架,来源于即时通讯领域实际工作经验(**已脱敏**)。展示了从**小型项目单 TCP 架构**,逐步演进为适用于中大型项目**多路复用架构**的过程,包含协议设计、架构解耦、高并发优化等核心实践。
**主要特性:**
-- 支持10k+并发连接的高性能架构,日均稳定处理10万+消息量
+- 支持峰值5k+并发连接的高性能架构,日均稳定处理10万+消息量
- 完善的弱网环境优化策略,包含指数退避重连算法和自适应心跳
- TLS加密与自定义二进制协议,保障通信安全性
- 企业级VIPER分层架构设计,单元测试覆盖率>90%
@@ -80,7 +80,7 @@ client.sendMessageWithAutoRoute(mediaMsg) // 自动路由到媒体会话
| 功能类别 | 核心特性 | 应用场景 |
| -------------|----------------------- | --------------------|
-| **网通通信核心** | 内置心跳保活、断线重连、ACK确认机制 | 即时通讯、IoT设备管理 |
+| **网络通信核心** | 内置心跳保活、断线重连、ACK确认机制 | 即时通讯、IoT设备管理 |
| **二进制协议设计** | 自定义TLV结构协议、CRC32校验、高效压缩 | 高吞吐、低延迟场景 |
| **高并发优化** | 多路复用连接池、GCD优化、零拷贝传输 | 实时数据同步 |
| **现代企业级架构** | VIPER分层架构、注入式解耦框架(Typhoon)、IM防腐层设计 | 大型项目长期维护 |
@@ -88,11 +88,12 @@ client.sendMessageWithAutoRoute(mediaMsg) // 自动路由到媒体会话
## 性能指标
-- **高并发能力**: 支持5,000+并发连接,内存占用1.6GB (约320KB/连接)
-- **消息吞吐量**: 单连接峰值8,000 pps (约6.4 Mbps),基准测试环境
+- **高并发能力**: 支持峰值5,000+并发连接,内存占用1.6GB (约320KB/连接)
+- **消息吞吐量**: 单连接峰值8,000 pps (约6.4 Mbps),基准测试环境(iPhone 14 Pro)
+- **线程效率**: 多线程切换耗时占比 < 3%,GCD优化调度
- **弱网表现**: 30%丢包环境下消息可达率>92%,平均延迟<800ms
- **响应速度**: 网络恢复后连接重建平均耗时<2秒
-- **资源占用**: 相比传统实现,内存占用减少35%,CPU使用降低28%
+- **资源占用**: 相比NSURLSession方案,内存占用减少35%,CPU使用降低28%
- **生产验证**: 日均处理10万+消息,真实服务于企业客户
## 🔥 技术亮点
@@ -182,6 +183,10 @@ Socket通信模块架构
原始数据或嵌套TLV (保留Tag 0xFFFF标记) |
+**示例数据包**:
+文本消息 "Hello" 的TLV编码:
+[10 01] [00 00 00 05] [48 65 6C 6C 6F]
+Tag Length Value("Hello")
- 采用**大端字节序**,兼容不同硬件平台
- 支持**协议版本协商**,实现向前兼容
@@ -248,22 +253,20 @@ iOS-Network-Stack-Dive/
│ └── AOP/
│ │ └── LoggingAspect/ # 日志追踪切面
│ └── NetworkMonitor/ # 网络监控
-├── CoreNetworkStack/
-│ ├── TransportLayer/ # 传输层实现
-│ │ ├── TCP-State-Machine/ # TCP状态机实现
-│ └── ProtocolLayer/
-│ ├── BinaryProtocol/ # 自定义二进制协议
-│ │ ├── Encoder-Decoder/ # 编解码器
-│ │ └── CRC-Checker/ # 校验模块
-│ └── Security/
-│ ├── KeyExchange/ # 密钥交换
-│ └── PacketEncryption/ # 数据加密
+├── CoreNetworkStack/
+│ ├── V1_BasicFunction/ # 最初演示版本(演示TCP问题,并解决问题)
+│ ├── V2_Concurrency/ # 多并发版本(单链接,此项目中更多用于演示作用)
+│ ├── TJPIMCore/ # IM核心,多路复用通讯框架
+│ └── TransportLayer/ # 传输层Mock
└── ProductionBridge/
└── VIPER-Sample/ # 真实项目代码片段
└── MessageModule/ # 消息模块实现
```
## 版本历史
+
+📋 版本历史
+
- **v1.0.0**:网络框架基础核心功能基本完成、生产级VIPER架构演示完成
- **v1.0.1**:修复了因libffi编译导致无法在模拟器运行的问题
- **v1.1.0**:新增全链路追踪、关键指标采集(网络质量/成功率/延迟)并添加演示Demo,引入序列号分区机制,整体逻辑优化
@@ -271,8 +274,10 @@ iOS-Network-Stack-Dive/
- **v1.2.1**:完善了消息错误机制,遵循单一职责拆分了数据包解析、组装,抽象了连接管理类,优化了握手交换协议版本信息逻辑
- **v1.3.0**:升级动态心跳机制,结合App状态+网络状态,使用更成熟稳定的方案动态调整心跳频率;埋点功能优化,提供更全面的埋点维度
+
+
## 后续迭代计划
-- **运营商网络适配**: 智能心跳策略、NAT超时处理、运营商防拦截
+- **运营商网络适配**: NAT超时处理、运营商防拦截
- **极端环境支持**: 智能降级策略、弱网优化、多级故障恢复
- **高性能传输**: 连接池优化、大文件传输、QoS流量控制
- **IM组件库**: 防腐层设计、聊天UI组件、VIPER架构示例
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Bulider/TJPMessageBuilder.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Bulider/TJPMessageBuilder.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Bulider/TJPMessageBuilder.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Bulider/TJPMessageBuilder.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Bulider/TJPMessageBuilder.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Bulider/TJPMessageBuilder.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Bulider/TJPMessageBuilder.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Bulider/TJPMessageBuilder.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Connect/TJPConnectionManager.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Connect/TJPConnectionManager.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Connect/TJPConnectionManager.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Connect/TJPConnectionManager.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Connect/TJPConnectionManager.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Connect/TJPConnectionManager.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Connect/TJPConnectionManager.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Connect/TJPConnectionManager.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPConcreteSession.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPConcreteSession.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPConcreteSession.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPConcreteSession.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPConcreteSession.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPConcreteSession.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPConcreteSession.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPConcreteSession.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPNetworkCoordinator.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPNetworkCoordinator.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPNetworkCoordinator.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPNetworkCoordinator.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPNetworkCoordinator.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPNetworkCoordinator.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Container/TJPNetworkCoordinator.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Container/TJPNetworkCoordinator.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Context/TJPMessageContext.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Context/TJPMessageContext.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Context/TJPMessageContext.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Context/TJPMessageContext.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Context/TJPMessageContext.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Context/TJPMessageContext.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Context/TJPMessageContext.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Context/TJPMessageContext.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Error/TJPErrorUtil.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPErrorUtil.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Error/TJPErrorUtil.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPErrorUtil.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Error/TJPErrorUtil.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPErrorUtil.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Error/TJPErrorUtil.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPErrorUtil.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETError.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETError.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETError.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETError.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETError.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETError.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETError.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETError.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETErrorHandler.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETErrorHandler.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETErrorHandler.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETErrorHandler.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETErrorHandler.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETErrorHandler.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/Error/TJPNETErrorHandler.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Error/TJPNETErrorHandler.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Heartbeat/TJPDynamicHeartbeat.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Heartbeat/TJPDynamicHeartbeat.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Heartbeat/TJPDynamicHeartbeat.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Heartbeat/TJPDynamicHeartbeat.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Heartbeat/TJPDynamicHeartbeat.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Heartbeat/TJPDynamicHeartbeat.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Heartbeat/TJPDynamicHeartbeat.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Heartbeat/TJPDynamicHeartbeat.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/IMClient/TJPIMClient.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/IMClient/TJPIMClient.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/IMClient/TJPIMClient.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/IMClient/TJPIMClient.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/IMClient/TJPIMClient.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/IMClient/TJPIMClient.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/IMClient/TJPIMClient.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/IMClient/TJPIMClient.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageFactory.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageFactory.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageFactory.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageFactory.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageFactory.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageFactory.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageFactory.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageFactory.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageSerializer.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageSerializer.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageSerializer.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageSerializer.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageSerializer.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageSerializer.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPMessageSerializer.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPMessageSerializer.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPTextMessage.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPTextMessage.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPTextMessage.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPTextMessage.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPTextMessage.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPTextMessage.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Message/TJPTextMessage.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Message/TJPTextMessage.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Network/TJPNetworkCondition.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Network/TJPNetworkCondition.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Network/TJPNetworkCondition.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Network/TJPNetworkCondition.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Network/TJPNetworkCondition.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Network/TJPNetworkCondition.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Network/TJPNetworkCondition.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Network/TJPNetworkCondition.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/NetworkUtility/TJPErrorDefine.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/NetworkUtility/TJPErrorDefine.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/NetworkUtility/TJPErrorDefine.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/NetworkUtility/TJPErrorDefine.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/NetworkUtility/TJPNetworkDefine.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/NetworkUtility/TJPNetworkDefine.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/NetworkUtility/TJPNetworkDefine.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/NetworkUtility/TJPNetworkDefine.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPMessageParser.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPMessageParser.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPMessageParser.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPMessageParser.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPMessageParser.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPMessageParser.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPMessageParser.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPMessageParser.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPParsedPacket.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPParsedPacket.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPParsedPacket.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPParsedPacket.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPParsedPacket.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPParsedPacket.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Parser/TJPParsedPacket.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Parser/TJPParsedPacket.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Policy/TJPReconnectPolicy.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Policy/TJPReconnectPolicy.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Policy/TJPReconnectPolicy.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Policy/TJPReconnectPolicy.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Policy/TJPReconnectPolicy.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Policy/TJPReconnectPolicy.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Policy/TJPReconnectPolicy.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Policy/TJPReconnectPolicy.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPConnectionDelegate.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPConnectionDelegate.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPConnectionDelegate.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPConnectionDelegate.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPHeartbeatProtocol.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPHeartbeatProtocol.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPHeartbeatProtocol.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPHeartbeatProtocol.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPMessageProtocol.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPMessageProtocol.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPMessageProtocol.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPMessageProtocol.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPSessionDelegate.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPSessionDelegate.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPSessionDelegate.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPSessionDelegate.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPSessionProtocol.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPSessionProtocol.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Protocol/TJPSessionProtocol.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Protocol/TJPSessionProtocol.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Sequence/TJPSequenceManager.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Sequence/TJPSequenceManager.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Sequence/TJPSequenceManager.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Sequence/TJPSequenceManager.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Sequence/TJPSequenceManager.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Sequence/TJPSequenceManager.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Sequence/TJPSequenceManager.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Sequence/TJPSequenceManager.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/TCP-State-Machine/StateMachine/TJPConnectStateMachine.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/TCP-State-Machine/StateMachine/TJPConnectStateMachine.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/TCP-State-Machine/StateMachine/TJPConnectStateMachine.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/TCP-State-Machine/StateMachine/TJPConnectStateMachine.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/TCP-State-Machine/StateMachine/TJPConnectStateMachine.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/TCP-State-Machine/StateMachine/TJPConnectStateMachine.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/TCP-State-Machine/StateMachine/TJPConnectStateMachine.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/TCP-State-Machine/StateMachine/TJPConnectStateMachine.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPCoreTypes.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPCoreTypes.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPCoreTypes.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPCoreTypes.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkConfig.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkConfig.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkConfig.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkConfig.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkConfig.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkConfig.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkConfig.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkConfig.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkUtil.h b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkUtil.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkUtil.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkUtil.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkUtil.m b/iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkUtil.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V3_FinalProduct/Utility/TJPNetworkUtil.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/TJPIMCore/Utility/TJPNetworkUtil.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V1_BasicFunction/TJPNetworkManagerV1.h b/iOS-Network-Stack-Dive/CoreNetworkStack/V1_BasicFunction/TJPNetworkManagerV1.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V1_BasicFunction/TJPNetworkManagerV1.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/V1_BasicFunction/TJPNetworkManagerV1.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V1_BasicFunction/TJPNetworkManagerV1.m b/iOS-Network-Stack-Dive/CoreNetworkStack/V1_BasicFunction/TJPNetworkManagerV1.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V1_BasicFunction/TJPNetworkManagerV1.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/V1_BasicFunction/TJPNetworkManagerV1.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V2_Concurrency/TJPConcurrentNetworkManager.h b/iOS-Network-Stack-Dive/CoreNetworkStack/V2_Concurrency/TJPConcurrentNetworkManager.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V2_Concurrency/TJPConcurrentNetworkManager.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/V2_Concurrency/TJPConcurrentNetworkManager.h
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V2_Concurrency/TJPConcurrentNetworkManager.m b/iOS-Network-Stack-Dive/CoreNetworkStack/V2_Concurrency/TJPConcurrentNetworkManager.m
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V2_Concurrency/TJPConcurrentNetworkManager.m
rename to iOS-Network-Stack-Dive/CoreNetworkStack/V2_Concurrency/TJPConcurrentNetworkManager.m
diff --git a/iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V2_Concurrency/TJPNetworkProtocol.h b/iOS-Network-Stack-Dive/CoreNetworkStack/V2_Concurrency/TJPNetworkProtocol.h
similarity index 100%
rename from iOS-Network-Stack-Dive/CoreNetworkStack/TransportLayer/V2_Concurrency/TJPNetworkProtocol.h
rename to iOS-Network-Stack-Dive/CoreNetworkStack/V2_Concurrency/TJPNetworkProtocol.h