**HNG Configuration RAN Sharing**
==
Dokumen ini berisi dokumentasi dalam melakukan konfigurasi HNG (HetNet Gateway) pada jaringan RAN Sharing MOCN (Multi Operator Core Network)
**SETTING ZONE**
---

1. Langkah pertama yaitu pembuatan zone
- **a)** Di dalam section ini kita membuat zone yang akan kita gunakan, pada gambar diatas penulis menggunakan nama "**magma-LTE**" sebagai nama zone yang digunakan.
- **b)** Setelah menentukan nama zone yang digunakan selanjutnya kita menentukan mekanisme "**Paging Cycle DRX**".
> **Penjelasan Singkat Paging Cycle**
> - ==Paging== merupakan mekanisme yang digunakan untuk melacak UE yang sedang dalam kondisi idle / yang sedang tidak aktif dalam mengirim dan menerima paket data
> - ==Paging Cycle DRX== merupakan interval waktu dari Paging Occasion yang berhasil pada saat user sedang dalam mode idle dan sedang memonitor Paging Channel jika ada Paging Messages yang masuk.
> - [**Link Penjelasan Tentang Paging Cycle**](https://www.linkedin.com/pulse/what-paging-occasion-frame-lte-cycle-drx-myapekshatelecom///)
- **c)** Di dalam section ini juga kita menentukan role dari zone yang kita buat. Pada gambar di atas penulis menentukan kalau zone yang penulis buat memiliki peran sebagai **Virtual-eNB**
- **d)** Di dalam section ini kita juga menentukan PLMN (Public Land Mobile Network) yang dimana PLMN kita gunakan untuk mengidentifikasi operator dan negara yang kita gunakan
> **Penjalasan Singkat PLMN (Public Land Mobile Network)**
> - PLMN terdiri dari :
> 1. ==mcc (Mobile Country Code)==, merupakan kode 3 digit yang secara unik mengidentifikasi suatu negara dalam jaringan seluler international.
> 2. ==mnc (Mobile Network Code)==, merupakan kode 2 atau 3 digit yang mengidentifikasi jaringan seluler tertentu dalam suatu negara.
>- [**Link Kumpulan Kode MCC dan MNC**](https://mcc-mnc.com//)
- **e)** Di dalam section ini kita juga menentukan **TAC (Tracking Area Code)** dari zona yang sudah kita buat.
> **Penjelasan Singkat TAC (Tracking Area Code)**
> - TAC (Tracking Area Code ) adalah kode unik yang digunakan untuk mengidentifikasi tracking area dari sebuah PLMN (Public Land Mobile Network)
**Code untuk menambahkan zone**
```
Ransharing# config
Ransharing#(config)# zone
Ransharing#(config-zone)# venb-zone magma-LTE
Ransharing#(config-zone-venb-zone-magma-LTE)# default-paging-drx v128
Ransharing#(config-zone-venb-zone-magma-LTE)# role
[HeNBGW,Virtual-eNB] (Virtual-eNB): Virtual-eNB
Ransharing#(config-zone-venb-zone-magma-LTE)# plmn mcc 510 mnc 11 home
[false,true]: true
Ransharing#(config-zone-venb-zone-magma-LTE)# plmn mcc 510 mnc 11 reserved-for-operator
[false,true] (false): false
Ransharing#(config-zone-venb-zone-magma-LTE)# plmn mcc 910 mnc 70 home
[false,true]: false
Ransharing#(config-zone-venb-zone-magma-LTE)# plmn mcc 910 mnc 70 reserved-for-operator
[false,true] (false): false
Ransharing#(config-zone-venb-zone-magma-LTE)# tracking-area-code 0001
Ransharing#(config-zone-venb-zone-magma-LTE)# end
```
**Code untuk melihat hasil konfigurasi zone**
```
Ransharing# show running-config zone
```
---
**SETTING NODE PRIMARY**
---

**Penjelasan Node Primary**
- **a)** **Node** adalah perangkat terpogram yang digunakan untuk menghubungkan jaringan dan perangkat komputer untuk mengirimkan data di antara perangkat
- **b)** Pada gambar diatas kita sudah menetapkan **node primary** untuk HNG yang kita gunakan, penetapan node primary merupakan salah satu langkah yang penting dalam pengaturan jaringan untuk menentukan node mana yang akan berperan sebagai **node utama yang mengendalikan operasi** dan pengaturan lainnya di dalam HNG.
**Penjelasan system**
```
system
server-info
ping-interval 30 ! 30
ping-timeouts-allowed 4 ! 4
!
```
- **a).** **Server info**, pada bagian ini mengatur informasi terkait dengan pengaturan ping ke server.
> **Penjelasan singkat terkait komponen di dalam server info**
> - **==ping-interval 30!30==** perintah ini digunakan untuk mengatur interval (Jeda Waktu) untuk **melakukan Ping ke server** nilai 30 berarti ping akan dikirim setiap 30 detik.
> - **==ping-timeouts-allowed 4!4==** perintah ini digunakan untuk memberikan berapa banyak **ping gagal yang diizinkan sebelum dianggap sebagai masalah koneksi**. Dalam hal ini jumlah timeout yang diizinkan adalah sebanyak 4 kali.
```
crash
generate-core enabled ! enabled
max-crashes 50 ! 50
!
```
- **b). Crash**, pada bagian ini mengatur parameter terkait dengan penanganan crash di dalam sistem
>**Penjelasan singkat terkait komponen di dalam Crash**
>- **==generate-core enabled ! enabled==** perintah ini digunakan untuk membuat core dump ketika terjadi crash secara tiba tiba. **Core dump** dibuat untuk membantu dalam menganalisis penyebab crash
>**a). Core Dump** berisi snapshot memori sistem saat terjadi crash, file ini dapat digunakan untuk **mendiagnosis penyebab crash, mengidentifikasi bug dalam software, memulihkan data yang hilang**
>- **==max-crashes 50 ! 50==** perintah ini digunakan untuk menentukan berapa kali crash diizinkan sebelum diambil tindakan lebih lanjut seperti **reboot**. Dalam hal ini ditentukan sebanyak 50 kali crash diizinkan sebelum tindakan lebih lanjut dilakukan.
```
pws-logs
retention-duration 24 ! 24
!
```
- **c). pws-logs**, pws-logs berkaitan dengan pengaturan log PWS(Parallel Wireless System). Log PWS mencatat berbagai peristiwa dan informasi yang terjadi pada sistem Parallel Wireless.
> **Penjelasan singkat terkait komponen di dalam pws-logs**
> - **==retention-duration 24!24==** perintah ini digunakan untuk mengatur durasi penyimpanan file log PWS. Dalam hal ini durasi yang ditetapkan untuk menyimpan file log PWS adalah selama 24 jam. Setelah 24 jam, file log terlama akan dihapus secara otomatis.
```
audit-trail
rotate
file-size 5 ! 5
file-count 10 ! 10
!
!
```
- **d). audit-trail**, Log audit trail mencatat semua aktivitas dan perubahan yang terjadi pada sistem, seperti login, perubahan konfigurasi, dan akses file.
> **Penjelasan singkat terkait komponen di dalam audit-trail**
> - **==rotate==** , ini menunjukkan bahwa rotasi file audit trail diaktifkan. Rotasi file berarti file log baru akan dibuat secara berkala, dan file lama akan dihapus atau disimpan di lokasi lain.
> - **==file-size 5!5==** Ini menentukan bahwa setiap file log audit trail akan **memiliki ukuran maksimum 5 megabyte (MB)**. Ketika file mencapai ukuran ini, file baru akan dibuat dan file lama akan dihapus atau disimpan di lokasi lain.
> - **==file-count 10!10==** ini menentukan bahwa sistem akan **menyimpan maksimal 10 file log audit trail**. Ketika file baru dibuat dan jumlah file mencapai 10, file terlama akan dihapus atau disimpan di lokasi lain.
```
logging
rotate
file-size 50 ! 50
file-count 500 ! 500
```
**e). logging** konfigurasi ini berkaitan dengan log umum sistem. Log ini mencatat berbagai informasi dan peristiwa yang terjadi pada sistem, seperti pesan sistem, error, dan informasi debug.
> **Penjelasan singkat terkait komponen di dalam logging**
> - **==rotate==**, ini menunjukkan bahwa rotasi file log diaktifkan. Rotasi file berarti file log baru akan dibuat secara berkala, dan file lama akan dihapus atau disimpan di lokasi lain.
> - **==file-size 50 ! 50==**, menentukan bahwa setiap file log akan memiliki ukuran maksimum 50 megabyte (MB). Ketika file mencapai ukuran ini, file baru akan dibuat dan file lama akan dihapus atau disimpan di lokasi lain.
> - **==file-count 500 ! 500==**, menentukan bahwa sistem akan menyimpan maksimal 500 file log. Ketika file baru dibuat dan jumlah file mencapai 500, file terlama akan dihapus atau disimpan di lokasi lain.
**Code untuk menambahkan Node Primary**
```
Ransharing# config
Ransharing(config)# system
Ransharing(config-system)# node primary
Value for 'hostname' (<string, min: 3 chars, max: 32 chars>): Ransharing
Ransharing(config-system-node-primary)# end
```
**Code untuk melihat hasil konfigurasi node primary**
```
Ransharing# show running-config system node primary
```
---
**SETTING PORT**
---

**Penjelasan port**
```
port eth0
type physical
mtu 1500 ! 1500
dad on ! on
!
port eth1
type physical
mtu 1500 ! 1500
dad on ! on
!
```
- **Port**, abaris ini mengidentifikasi nama yang diberikan ke port Ethernet. Dalam kasus ini, **eth0 dan eth1** adalah nama yang digunakan untuk port Ethernet pertama dan kedua.
> - **==type physical==**, Baris ini menyatakan bahwa port tersebut adalah interface Ethernet fisik, bukan interface virtual (seperti VLAN).
> - **==mtu 1500 ! 1500==**, mtu adalah singkatan dari **Maximum Transmission Unit (Unit Transmisi Maksimum)**, yang menentukan ukuran terbesar (dalam byte) dari sebuah paket tunggal yang dapat dikirim atau diterima oleh port ini. Di sini, nilainya diatur ke 1500, yang merupakan ukuran MTU standar umum pada jaringan Ethernet.
> - **==dad on ! on==**, dad adalah singkatan dari **Deteksi Alamat Duplikat (Duplicate Address Detection)**. Fitur ini membantu mencegah konflik jaringan dengan memastikan bahwa perangkat tidak memiliki alamat IP yang sama dengan perangkat lain di jaringan. Mengaktifkan dad di sini akan mengaktifkan mekanisme ini pada port.
**Code untuk mengkonfigurasi port eth0**
```
Ransharing# config
Ransharing(config)# port eth0
Value for 'type' [bond,dummy,physical,vlan]:physical
Ransharing(config-port-eth0)# mtu 1500
Ransharing(config-port-eth0)# end
```
**Code untuk mengkonfigurasi port eth1**
```
Ransharing# config
Ransharing(config)# port eth1
Value for 'type' [bond,dummy,physical,vlan]:physical
Ransharing(config-port-eth1)# mtu 1500
Ransharing(config-port-eth1)# end
```
**Code untuk melihat hasil konfigurasi port**
```
Ransharing# show running-config port
```
---
**SETTING VIRTUAL NETWORK**
---

**Code untuk menambahkan virtual network untuk OAM**
```
Ransharing# config
Ransharing(config)# virtual-network Mplane
Ransharing(config-virtual-network-Mplane)# interface OAM
Value for 'type' [floating,local]: local
Value for 'address' (<IPv4 address>): 10.30.1.155
Value for 'netmask' (<IPv4 address>): 255.255.255.0
Value for 'node' [primary]: primary
Value for 'port' [eth0,eth1]: eth0
Ransharing(config-virtual-network-Mplane-interface-OAM)# end
```
**Code untuk menambahkan virtual network untuk interface RAN**
```
Ransharing# config
Ransharing(config)# virtual-network Access-LTE
Ransharing(config-virtual-network-Access-LTE)# interface RAN
Value for 'type' [floating,local]: local
Value for 'address' (<IPv4 address>): 192.168.2.155
Value for 'netmask' (<IPv4 address>): 255.255.255.0
Value for 'node' [primary]: primary
Value for 'port' [eth0,eth1]: eth0
Ransharing(config-virtual-network-Access-LTE-interface-RAN)# end
```
**Code untuk menambahkan virtual network untuk interface CORE 1**
```
Ransharing# config
Ransharing(config)# virtual-network Magma-LTE
Ransharing(config-virtual-network-Magma-LTE)# interface CORE1
Value for 'type' [floating,local]: local
Value for 'address' (<IPv4 address>): 10.0.4.105
Value for 'netmask' (<IPv4 address>): 255.255.255.0
Value for 'node' [primary]: primary
Value for 'port' [eth0,eth1]: eth0
Ransharing(config-virtual-network-Magma-LTE-interface-CORE1)# end
```
**Code untuk menambahkan virtual network untuk interface CORE 2**
```
Ransharing# config
Ransharing(config)# virtual-network Magma-LTE
Ransharing(config-virtual-network-Magma-LTE)# interface CORE2
Value for 'type' [floating,local]: local
Value for 'address' (<IPv4 address>): 10.0.5.105
Value for 'netmask' (<IPv4 address>): 255.255.255.0
Value for 'node' [primary]: primary
Value for 'port' [eth0,eth1]: eth1
Ransharing(config-virtual-network-Magma-LTE-interface-CORE2)# end
```
**Code untuk melihat hasil konfigurasi virtual network**
```
Ransharing# show running-config virtual-network
```
---
**SETTING MME MAGMA POOL**
---

**Code untuk membuat peers mme Magma pertama**
```
Ransharing# config
Ransharing(config)# venb
Ransharing(config-venb)# peers
Ransharing(config-venb-peers)# mme MagmaMME
Ransharing(config-peers-mme-MagmaMME)# sctp-crosspath enabled
Ransharing(config-peers-mme-MagmaMME)# peer-sctp-endpoint
Ransharing(config-mme-MagmaMME-peer-sctp-endpoint)# port
(<unsignedShort>) (36412): 36412
Ransharing(config-mme-MagmaMME-peer-sctp-endpoint)# bind-address 10.0.4.101
Ransharing(config-peer-sctp-endpoint-bind-address-10.0.4.101)# primary true
Ransharing(config-peer-sctp-endpoint-bind-address-10.0.4.101)# end
```
**Code untuk membuat peers mme Magma kedua**
```
Ransharing# config
Ransharing(config)# venb
Ransharing(config-venb)# peers
Ransharing(config-venb-peers)# mme MagmaMME-1
Ransharing(config-peers-mme-MagmaMME-1)# sctp-crosspath enabled
Ransharing(config-peers-mme-MagmaMME-1)# peer-sctp-endpoint
Ransharing(config-mme-MagmaMME-1-peer-sctp-endpoint)# port
(<unsignedShort>) (36412): 36412
Ransharing(config-mme-MagmaMME-peer-sctp-endpoint)# bind-address 10.0.5.101
Ransharing(config-peer-sctp-endpoint-bind-address-10.0.5.101)# primary true
Ransharing(config-peer-sctp-endpoint-bind-address-10.0.5.101)# end
```
**Code untuk membuat peers mme pool 01**
```
Ransharing# config
Ransharing(config)# venb peers mme-pool MME-POOL01
Ransharing(config-peers-mme-pool-MME-POOL01)# mme MagmaMME
Ransharing(config-mme-pool-MME-POOL01-mme-MagmaMME)# admin-state enabled
Ransharing(config-mme-pool-MME-POOL01-mme-MagmaMME)# end
Ransharing# end
```
**Code untuk membuat peers mme pool 2**
```
Ransharing# config
Ransharing(config)# venb peers mme-pool MME-POOL2
Ransharing(config-peers-mme-pool-MME-POOL2)# mme MagmaMME-1
Ransharing(config-mme-pool-MME-POOL2-mme-MagmaMME)# admin-state enabled
Ransharing(config-mme-pool-MME-POOL2-mme-MagmaMME)# end
Ransharing# end
```
**Code untuk melihat hasil mme Magma pool**
```
show running-config venb peers
```
---
**SETTING FREKUENSI**
---

**Code untuk konfigurasi Frekuensi**
```
profiles
lte
frequency B5_10Mhz_2525
duplex-mode FDD
eutra-bandname Band-5
eutra-bandwidth 10MHz
earfcn 2525
!
!
!
```
**Code untuk melihat hasil konfigurasi frekuensi**
```
show running-config venb peers
```
---
**SETTING INSTANCE**
---


**Code untuk konfigurasi Instance**
```
Ransharing# config
zone magma-LTE
enb-id 13135
call-control admin-state disabled ! disabled
ue-mss-alter admin-state disabled ! disabled
ue-mss-alter mss-value 1360 ! 1360
ue-mss-alter ipv6-mss-value 1340 ! 1340
access
s1
gtpu-endpoint
virtual-network Access-LTE
bind-address [ 192.168.2.155 ]
port 2152 ! 2152
profile default
!
sctp-endpoint
virtual-network Access-LTE
port 36412 ! 36412
profile default
bind-address 192.168.2.155
primary true ! false
!
!
!
!
core
s1
gtpu-endpoint
virtual-network Magma-LTE
bind-address [ 10.0.4.105 10.0.5.105 ]
port 2152 ! 2152
profile default
!
sctp-endpoint
virtual-network Magma-LTE
port 36412 ! 36412
profile default
bind-address 10.0.5.105
primary true ! false
!
bind-address 10.0.4.105
primary false ! false
!
!
mme-pool MME-POOL01
admin-state enabled ! enabled
mme-adaptive-selection admin-state disabled ! disabled
mme-adaptive-selection health-check-timer 60 ! 60
mme-adaptive-selection err-threshold-high-percentage 70 ! 70
mme-adaptive-selection err-threshold-low-percentage 20 ! 20
fallback false ! false
!
mme-pool MME-POOL2
admin-state enabled ! enabled
mme-adaptive-selection admin-state disabled ! disabled
mme-adaptive-selection health-check-timer 60 ! 60
mme-adaptive-selection err-threshold-high-percentage 70 ! 70
mme-adaptive-selection err-threshold-low-percentage 20 ! 20
fallback false ! false
!
!
!
!
!
```
**Code untuk melihat hasil konfigurasi instance**
```
Ransharing# show running-config venb instance
```
---
**SETTING ACCESSNODE**
---

**Code untuk konfigurasi accessnode**
```
accessnodes
dynamic-config
autogen disabled ! disabled
aging-timeout 31 ! 31
!
cws MOCN1_TIP
id 40004180
hardware-class-id CI0060
description CWS3
hc-psk-interval 24 ! 24
hc-psk-length 10 ! 10
location
override-allowed true ! true
latitude 0.000000000000000e+0 ! 0.000000000000000e+0
longitude 0.000000000000000e+0 ! 0.000000000000000e+0
!
environment both ! both
stats-collection-interval-profile default ! default
lte
venb CapsRansSharing
security-profile default ! default
s1ap-layer
s1ap-profile-name default ! default
sctp-port 36412 ! 36412
sctp-profile-name default ! default
!
cell MOCN1_TIP
port-number TRX-1-2
tracking-area-code 0001
ta-initial-offset 5 ! 5
max-subscribers 32 ! 32
supported-3gpp-release R8 ! R8
profiles
operator-qci default ! default
frequency B5_10Mhz_2525
protocol-parameters default ! default
access-control default ! default
timers default ! default
cell-selection default
eutra-cell-reselection default
intra-frequency-reselection default
reselection-inter-frequency default
ue-measurements default ! default
sps-config default ! default
!
admin-state enabled ! disabled
!
!
!
!
```
**Code untuk melihat hasil konfigurasi accessnode**
```
Ransharing# show running-config accessnodes
```
---
**Untuk melihat STATE sudah inservice atau belum**
---
**Code untuk melihat status state magma**
```
Ransharing# show accessnodes cws lte cell oper-data
```
**Code untuk melihat status state cws**
```
Ransharing# show accessnodes cws oper-data
```