5g

  1. 问题(需求)驱动:

LTE下没有按照DDD分层设计理念进行设计,底层通信方式没有跟高层很好的隔离,通信方式的变更对顶层代码的结构,实现影响较大;
(LTE中的通信方式主要是:共享内存和单向队列)
5g-nr中,通信方式主要有:共享内存(普通共享内存和读写冲突共享内存),单向队列(SCQ和TTISCQ)以及XC;
通信方式更加多样,而且随着系统的演进或许会存在更多的通信方式,为了能够保持系统的稳定性,可扩展性,必须在设计之初就将
扩展的相关因素考虑在内。

    2. 基于以上这些方面,采用更加清晰明了的思想和设计原则:

设计思想基于分层,协作的方式来进行设计
a. SOLID原则;
b. 简单设计四原则;
c. 高内聚,低耦合原则;
接口设计采用点到点的通信方式,分别定义Sender, Receiver, Selector
由于为event驱动,所以又会涉及pool的定义,tunnel的创建;

   3. 实现设计:

a. 可维护性----相关log打印;通过打印可以排查大部分问题,比如A组件调用了B组件的发送接口,妄等消息发送成功等等;
b. 可扩展性----通信方式的扩展方便,例如添加原子方式的共享内存访问,只需要在框架内简单添加对应的通信接口即可;
c. 框架可扩展性----在系统的通信方式无法在当前框架内添加实现时,可以通过扩展框架的方式实现新的通信方式的添加;
当然没有能够永远可扩展框架,只可能尽可能的保持一个可视范围内的可扩展。

你可能感兴趣的:(NG-RAN)