---
# System prepended metadata

title: ATSSS 執行流程
tags: [比賽, atsss]

---

# ATSSS 比賽

## 確認事項
1. 注意核心網路筆電聯上的網路是正確可以上網
2. 

## 執行流程
### 和網
1. 確認 gtp5g(atsss/gtp5g)和core network和ue確認 rfc8803 kernel module install，執行 ./start.sh(記得AI沒連上要註解那張網卡的nat)，執行./namespace.sh，./ran.sh
2. upf/free5gc ./run.sh
3. upf/mptcp ./run.sh
4. core_netwok/free5gc ./run.sh
5. sudo ip netns exec n3 bash && cd core_network/free5gc && ./tngf.sh -tngf && 執行 ./n3_start.sh n3，namespace下要能有forward功能(不要nat)
6. sudo ip netns exec ran bash && cd atsss/ueransim && ./build/nr-gnb -c ./config/free5gc-gnb.yaml
7. cd core_network/webconsole go run server.go

### ue
1. cd ATSSS_ue_code/ueransim && ./build/nr-ue -c ./config/free5gc-ue.ymal
2. 先將webconsole的值改成default值 ***16f3b3f7158c***，接著查看ue/eap5g/wpa_supplicant/sec.cof，將SQN改成這個值減一
3. sudo ./wpa_supplicant -c ../wpa_supplicant.conf -i wlp2s0 -dd
4. 執行完後，看有沒有greTun0 interface
5. ping 8.8.8.8，大概執行17次後會斷線
6. ip a看gre tunnel 拿到10.0.0.x的ip

### 和網
1. 在n3 namespace ip link del greTun0
2. 將 ./exec.sh的gre remote ip改成ue端看到的
3. 在n3 namespace下執行exec.sh
4. ./upf_mptcp.sh
5. /upf/mptcp-proxy 執行./run.sh
6. iperf3 -s
7. (ip mptcp limit show)
8. (ip mptcp endpoint show)
如果有錯誤 
    ip mptcp limit set subflow 2 add_addr_accepted 2
    ip mptcp endpoint add 172.16.0.1 id 1 subflow

### ue
1. 確認能ping 8.8.8.8嗎
2. 進入root，執行./table
3. root中，複製mptcp.sh裡面的指令並逐一執行， 也要執行table.sh
4. ip mptcp limit show
5. ip mptcp endpoint show
6. ATSSS-UE-code/libconvert make exec

如果有錯誤 
    ip mptcp limit set subflow 2 add_addr_accepted 2
    ip mptcp endpoint add 172.16.0.2 id 1 subflow
    ip mptcp endpoint add 172.16.0.3 id 2 subflow
    

### AI
首先在AI /Desktop/face_tmp中執行:
pipenv shell --python 3.9
進入python環境，執行:
python main.py
等待log顯示 Now socket listening，接著換ue執行

當AI等待時，在ue /Desktop/CHT_comp_sender/python-webcam-socket-streaming/ 中執行
先以sudo ls執行，避免
完成:
sudo -E CONVERT_LOG=/home/demo/log/convert.log LD_PRELOAD=/home/demo/ATSSS-UE-code/libconvert-MPTCP/build/libconvert_client.so SYN_PARAM_PATH=/sys/module/syn_rfc8803/parameters python3


回復:
ue
執行recovery.sh

核網:
n3 namespace
ip link delete greTun0


ue n3連上後
1.核網執行exec，建greTun
2.ip mptcp endpoint flush 
3.ue 執行mptcp.sh
4.ue 執行table.sh
可能要檢查route
5.確認rfc-8803 kernel module 

再來就核網執行upf_mptcp.sh,開proxy,開iperf3 server

切換成ran無限版本:
1. 改gtp5g
2. 改wpa
3. 修改recovery.sh 註解第10行 第7行

