**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** --- ![image](https://hackmd.io/_uploads/H1hKsegyR.png) 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** --- ![image](https://hackmd.io/_uploads/H1MkQGgyC.png) **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** --- ![image](https://hackmd.io/_uploads/rkllAzxk0.png) **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** --- ![image](https://hackmd.io/_uploads/HJsqVzek0.png) **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** --- ![image](https://hackmd.io/_uploads/HJOaZme1A.png) **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** --- ![image](https://hackmd.io/_uploads/BJ_nMPl1C.png) **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** --- ![image](https://hackmd.io/_uploads/rJCpXdlJ0.png) ![image](https://hackmd.io/_uploads/HkyVEugJC.png) **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** --- ![image](https://hackmd.io/_uploads/SyNQs_xyC.png) **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 ```