NS手册:路由协议详解 - NS模拟器学习

需积分: 3 34 下载量 191 浏览量 更新于2024-08-10 收藏 4.4MB PDF 举报
"这篇博客主要介绍了5G NR网络中的随机接入过程以及NS2网络模拟中的几种内部路由协议。" 在5G NR(New Radio)网络中,随机接入过程(Random Access Procedure)是移动设备(UE)与网络建立连接的第一步,主要用于初始接入、数据传输前的同步、上行链路授权请求等场景。这一过程通常包括以下几个步骤: 1. **竞争前导码发送**:UE选择一个随机的前导码序列,并在指定的随机接入信道(RACH)上传输,用于标识自身并请求接入。 2. **前导码检测与响应**:基站(gNB)检测到UE的前导码,如果成功,会发送一个随机接入响应(RAR),包含临时的身份标识和上行授权信息。 3. **竞争解决**:如果有多个UE使用相同的前导码,基站会通过发送RAR指示UE执行竞争解决步骤,如Aloha重传机制。 4. **上行调度请求**:UE根据RAR提供的信息发送上行调度请求,请求数据传输的资源。 5. **连接建立/确认**:最后,UE和基站完成连接建立或重配置流程,UE可以开始数据传输。 而在NS2(Network Simulator 2)这个网络模拟工具中,内部路由协议包括直接路由、静态路由、Session路由和DV路由: 1. **直接路由**:这种协议仅维护到近邻节点的路径,使用nextHop_、rtpref_和metric_变量来存储路径信息。计算路径基于当前链路状态和历史变化。 2. **静态路由**:在RouteLogic类中,静态路由首先构建邻接矩阵,然后通过C++的compute_routes()方法计算路由,并将结果插入到每个节点的路径中。init-all{}是其唯一定义的过程。 3. **Session路由**:类定义了init-all{}和compute-all{}过程来计算路径,适用于模拟开始和拓扑变化的情况,直接调用compute-router{}。 4. **DV路由**(Distance Vector Routing):这是一种动态路由协议,通过节点间的信息交换来计算路径。DV agent在init-all{}中启动,为每个节点创建rtobject和Agent/rtproto/DV代理。DV agent维护目标节点的队列、优先级、单位和下一跳接口,并在模拟开始时发送首次更新。路由更新通过send-periodic-update{}和send-updates{}过程定期发送,以避免时钟同步问题。 NS2网络模拟的翻译工作是由一个团队共同完成的,他们的努力使得NS的新手能够更轻松地理解和使用这一强大的模拟工具。对于NS的初学者,遇到问题可以通过在线社区和文档寻找答案,以加快学习进程。