UPF MP2 流程
MP2
MP2
接口共有以下 7 个接口:
IP
五元组分流规则 (开发,业务相关)DNS
重定向规则 (开发,业务相关)DNS
分流规则 (开发,业务相关)基于
UE
标识的黑白名单访问控制 (开发,业务相关)UE
信息查询 (开发,不相关业务)基于
UE
的带宽管理 (开发,业务相关)UE
位置查询 (不开发,不相关业务,需要基站侧支持)
注:IP
五元组分流规则是,所有业务相关规则的必要前提
UPF
我们清楚UPF
业务转发对逻辑是先区分识别业务,后按照不同业务进行转发:
区分识别业务:通过报文精确匹配
PDR
做业务识别(UPF 中 upf_pdr_detect 节点)按照不同业务进行转发:通过匹配的
PDR
关联的FAR
做相应的转发 (UPF 中 upf_process 节点)
UPF
对UE
上下行流量转发流程是不同的,如下图:
其中关键节点有:
ip4-input (区分识别业务)
upf-pdr-detect (区分识别业务)
upf-process (处理报文按照不同业务进行转发)
ip4-input:节点通过报文目的ip
,查找路由表找到报文的下一跳节点;
对于GTPU
报文(UE
的上行流量),其目的IP
一定是UPF
,下一跳也就指向本地,进而进入UPF
的处理流程;
对于非GPUT
报文(UE
的下行流量),其目的IP
是UE IP
,在Session
建立时,UPF
会在对应NWI
的VRF
中建立UE IP
的路由表,将对应的流量引入UPF
处理节点;
对于非UE
流量,则按照路由表下一跳正常转发。
upf-pdr-detect:节点通过对报文进行精确匹配PDR
;匹配 UE IP
,SDF
。
upf-process:按照匹配的PDR
关联的FAR
进行业务处理转发,转发的出端口就是在这个节点设置的。
UPF MP2 开发流程
UPF MP2
流程设计:
MP2
首先侧重IP 五元组分流
,能将边缘流量过滤出来,并依照UPF
转发实现逻辑分流到边缘,是MP2
的开发前提,因此设计实现如何过滤出UE
到边缘的流量,并在处理转发时正确的转发到边缘Interface
是主要内容。
过滤出UE
到边缘的流量:在UPF
创建PFD
时,增加设置该FD
是分流到边缘MEC
;并在pdr_detect
时,检查FD
是否为分流边缘,并置位报文元数据。
处理转发时正确的转发到边缘Interface
:在upf_process
时,通过报文元数据判断是否为边缘流量,并正确分流到边缘。
本设计是在UPF
原节点进行修改(没有增加MP2
节点是因为,后续开发可以继续利用UPF
原有功能,不需要重发代码搬移)
配置:在
UPF
启动时,增加MEC
专用路由,专用端口comment{N6-MEC} ip table add 100 # 增加专用路由表 set interface ip table GigabitEthernet0/f/0 100 # MEC DN interface set interface ip address GigabitEthernet0/f/0 192.168.2.16/24 # 设置对接 MEC DN GW ip route add 0.0.0.0/0 table 100 via 192.168.2.1 GigabitEthernet0/f/0 # 设置到 MEC DN 默认路由 upf mec route ip4 table set 100 # 设置 UPF MEC 专用路由表
代码:
修改
PFCP
建立Session
流程:在Session
建立时,向MEC
专用路由增加UE IP
指向UPF
路由,建立DPO
修改建立
pfd
:增加建立pfd
指定该条FD
是分流到边缘MEC
upf pfd-list appid 1030 fd {permit in ip from 172.20.231.0/24 to 192.168.2.1/32} mec-traffic upf pre-def urr id 2200000003 trigers 16 upf pre-def rule rule_name rule1 app_id 1030 urr_ids 2200000003 upf dnn name default.mnc092.mcc466.gprs rule_id rule1
uranus> show upf pfd-list ---------------------------------------------------- PFD List Info: app_id counts: 16 ---------------------------------------------------- app id: 1030 mec traffic # 有 mec traffic 说明该条 fd 将分流到边缘 mec precedence: 0 PFD idx: 0 Flow Describe(1):V4: permit in ip from 172.20.231.0/24 to 192.168.2.1 # 该条流量将分流到边缘 mec URL(0): DN(0): Customer:(0)= uranus>
对业务识别的修改,
upf-pdr-detect
:对报文匹配到的 SDF,校验是否为分流到边缘MEC
,若是将置位报文元数据mec_traffic
对处理报文的修改,
upf-process
:通过报文元数据mec_traffic
是否置位判断是否为到边缘MEC
的流量,若是,则将该流量引入MEC
专用路由进行转发
注:后续MP2
业务开发,通过判断报文元数据是否为边缘流量,进行业务区分,并在此基础上开发相关业务逻辑。