UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2007/2008
PENGEMBANGAN CONNECTIONLESS NETWORK PROTOCOL (CLNP) PADA JARINGAN TELEKOMUNIKASI AERONAUTIKA (ATN) SISWO ERTANTO
(0800777112)
HARIS DEVAL SEBAYANG
(0800784566)
YITRO KURNIAWAN
(0800784704)
Abstrak Penulisan dari skripsi ini bertujuan untuk membangun protokol CLNP yang digunakan pada ATN, khususnya pada modul output,selain itu skripsi ini juga bertujuan untuk mengembangkan ATN secara keseluruhan yang dilaksanakan oleh BPPT. Metode Penelitian yang digunakan adalah metode kepustakaan, metode analisa, metode perancangan, dan metode pengujian. Hasil yang telah dicapai pada penelitian ini adalah berupa rancangan modul output yang bekerja pada protokol CLNP sehingga dapat dipahami cara kerja dari modul output tersebut. Simpulan yang diperoleh bahwa modul CLNP output ini akan meneruskan paket dari layer di atasnya (TP4) ataupun paket yang berasal dari fungsi forwarding untuk diteruskan ke layer dibawahnya, dimana fungsi tersebut akan menambahkan header CLNP pada paket yang diteruskan dan melakukan segmentasi paket jika dibutuhkan. Kata Kunci : ATN, CLNP, CLNP_OUTPUT.
iv
PRAKATA
Pertama-tama, kami bersyukur untuk kasih dan berkat dari Tuhan Yesus yang telah menyediakan semuanya dalam penyusunan skripsi ini, baik itu waktu, keperluan sehari hari, dan kesehatan. Kami juga berterima kasih kepada orang orang yang telah banyak membantu dalam menyelesaikan skripsi ini. Kepada : 1.
Bapak Rusdianto Roestam, Ir. M.Sc, Ph.D, selaku dosen pembimbing skripsi kami yang telah membantu dan berjasa dalam memberikan bimbingan serta arahan-arahan yang sangat bermanfaat dalam penyelesaian skripsi ini.
2.
Bapak Husni Fahmi Ph.D, Ibu Haret Faidah , Bapak Tahar Agastani, Bapak Tri Sampurno, selaku tim pengembangan ATN di BPPT.
3.
Bapak Bambang Heru T. Ir, M.Sc selaku dosen pembimbing sementara.
4.
Bapak Fredy Purnomo S.Kom, M.Kom selaku Kepala Jurusan Teknik Informatika Universitas Bina Nusantara
5.
Ibu Henny Surya Ningsih, S.Kom, MSoftsyseng selaku Sekretaris Jurusan Teknik Informatika Universitas Bina Nusantara.
6.
Para staff pengajar Fakultas Ilmu Komputer yang telah memberikan ilmu pengetahuan yang sangat berguna untuk sekarang dan masa depan kami.
7.
Orang Tua dan keluarga yang telah banyak memberikan dorongan dan semangat selama penulisan skripsi ini.
v
8.
Segenap rekan Mahasiswa yang telah membantu dan memberikan dukungan untuk penyelesaian skripsi ini.
9.
Masing-masing anggota kelompok skripsi ini yang telah berjuang maksimal dalam penyelesaian skripsi ini.
10.
Seluruh pihak yang pernah turut berperan dalam proses penyelesaian skripsi ini yang tidak dapat disebutkan satu-persatu.
Skripsi ini masih jauh dari sempurna, masih banyak kekurangan di berbagai bagian. Oleh karena itu, sangat dibutuhkan saran dan kritik untuk menyempurnakan skripsi ini. Akhir kata, penulis berharap skripsi ini dapat berguna dalam pengembangan ATN pada masa yang akan datang,sehingga penerbangan di Indonesia semakin baik, aman dan maju.
Jakarta, 23 Januari 2008
Penulis
vi
DAFTAR ISI
Halaman Judul Luar .............................................................................................. i Halaman Judul Dalam ........................................................................................... ii Halaman Persetujuan Hard Cover ........................................................................ iii Abstrak ................................................................................................................. iv Prakata .................................................................................................................. v Daftar Isi .............................................................................................................. vii Daftar Tabel ..........................................................................................................xiii Daftar Gambar ......................................................................................................xiv Daftar Lampiran ....................................................................................................xvi
BAB 1
BAB 2
PENDAHULUAN 1.1
Latar Belakang ......................................................................... 1
1.2
Tujuan dan Manfaat .................................................................. 3
1.3
Ruang Lingkup ........................................................................ 3
1.4
Metodologi Penelitian .............................................................. 4
1.5
Sistematika Penulisan ............................................................... 4
LANDASAN TEORI 2.1
CNS/ATM
....................................................................... 6
2.1.1
....................................................................... 6
CNS
vii
2.1.2
ATM ........................................................................... 6
2.1.3
ACARS (Aircraft Communications Addressing and Reporting System)....................................................... 7
2.2
ATN
....................................................................... 8
2.2.1 Manfaat dari ATN ......................................................... 11 2.2.2 Ruang Lingkup ATN........................................................ 12 2.3
Struktur ATN
................ ........................................................ 14
2.3.1
CPDLC ...................................................................... 14
2.3.2
COPP dan COSP ....................................................... 15
2.3.3
Transport Layer pada ATN......................................... 15
2.3.3.1 Protokol pada Transport layer ATN......................... 16 2.3.3.1.1 COTP........................................................... 16 2.3.3.1.2 CLTP ........................................................... 17 2.3.4
CLNP ....................................................................... 18
2.3.4.1 Fungsi fungsi CLNP ................................................ 18 2.3.4.2 Struktur PDU dari CLNP ......................................... 24 2.3.4.2.1 Fixed Part .................................................... 25 2.3.4.2.2 Address Part ................................................ 29 2.3.4.2.3 Segmentation Part........................................ 30 2.3.4.2.4 Option Part .................................................. 31 2.3.4.2.5 Data Part ..................................................... 32 2.3.5 VDL Mode ....................................................................... 32 viii
2.4 TCP/IP
....................................................................... 32
2.4.1 Arsitektur TCP/IP ............................................................ 33 2.4.2 Koneksi TCP.................................................................... 34
BAB 3
2.5
Linux Kernel
.................................................................. 36
2.6
VHF (Very High Frequency) ..................................................... 37
PERANCANGAN SISTEM 3.1
Sistem yang sedang berjalan ..................................................... 39 3.1.1
AFTN ........................................................................ 39
3.1.2
Data yang ditransmit dalam penerbangan.................... 40
3.2
Permasalahan
.................................................................. 42
3.3
Sistem yang disarankan. ............................................................ 43
3.4
Keuntungan dari penelitian ....................................................... 45
3.5
Sub Sistem yang akan disarankan ............................................. 46
3.6
Desain dari Sub Sistem yang Disarankan .................................. 46 3.6.1
Gambaran Besar CLNP .............................................. 46
3.6.2
Modul clnp_input ....................................................... 47
3.6.3
Modul clnp_route ....................................................... 48
3.6.4
Modul clnp_output ..................................................... 49
3.6.4.1 Compose PDU Header.......................................... 50 3.6.4.2 Mengatur nilai Fixed Part ..................................... 50 3.6.4.2.1 Network Layer Protocol Identifier................ 52 ix
3.6.4.2.2 Length Indicator........................................... 52 3.6.4.2.3 Version/Protocol Identifier Extension........... 52 3.6.4.2.4 Lifetime PDU .............................................. 52 3.6.4.2.5 PDU Flag..................................................... 52 3.6.4.2.6 Tipe CLNP ….............................................. 53 3.6.4.2.7 Segment Length............................................ 54 3.6.4.2.8 Checksum..................................................... 54
3.6.4.3 Mengatur Nilai Address Part ................................ 54 3.6.4.3.1 Mengatur Destination Address Length Indicator
................................... 55
3.6.4.3.2 Mengatur Destination Address ..................... 55 3.6.4.3.3 Mengatur Source Address Length Indicator.......................................... 55 3.6.4.3.4 Mengatur Source Address............................ 55 3.6.4.4 Mengatur Segmentation Part................................. 56 3.6.4.4.1 Mengatur Data Unit Identifier ...................... 57 3.6.4.4.2 Mengatur Segment Offset............................. 57 3.6.4.4.3 Mengatur Total Length................................. 57 3.6.4.5 Mengatur Option Part ........................................... 57 3.6.4.5.1 Mengatur Parameter Code 50 ....................... 58 3.6.4.5.2 Mengatur Parameter Length ......................... 58 x
3.6.4.5.3 Mengatur Parameter Value........................... 58 3.6.4.6 Proses Segmentasi ................................................ 59 3.7
BAB 4
3.7.1
Pengujian Fungsi compose_clnph() ............................ 61
3.7.2
Pengujian Fungsi clnp_fragment() .............................. 62
IMPLEMENTASI DAN PENGUJIAN 4.1
4.2
4.3
BAB 5
Skenario Pengujian ................................................................... 61
Implementasi Module clnp_output ............................................. 63 4.1.1
Struktur header CLNP ................................................ 63
4.1.2
Fungsi clnp_queue_xmit() .......................................... 65
4.1.3
Fungsi compose_clnp()............................................... 65
4.1.4
Fungsi dst_output()..................................................... 66
4.1.5
Fungsi clnp_output()................................................... 67
4.1.6
Fungsi clnp_finish_output()........................................ 68
4.1.7
Fungsi clnp_fragment()............................................... 70
4.1.8
Fungsi clnp_finish_output2()...................................... 74
4.1.9
Fungsi dev_queue_xmit() ........................................... 75
Pengujian
.................................................................. 76
4.2.1
Pengujian Fungsi compose_clnph() ............................ 77
4.2.2
Pengujian Fungsi clnp_fragment() .............................. 78
Kelebihan CLNP ...................................................................... 86
KESIMPULAN DAN SARAN xi
5.1
Kesimpulan .............................................................................. 87
5.2
Saran ........................................................................................ 88
DAFTAR PUSTAKA .......................................................................................... 89 RIWAYAT HIDUP ............................................................................................. 90 LAMPIRAN-LAMPIRAN SURAT SURVEI
xii
DAFTAR TABEL Tabel 2.1
Fungsi fungsi CLNP ....................................................................... 19
Tabel 2.2
Tipe Kode PDU .............................................................................. 28
Tabel 2.3
Peta Kernel ..................................................................................... 37
Tabel 3.1
Daftar Tipe PDU............................................................................. 53
Tabel 3.2
Tabel NSAP – CAMAL.................................................................. 56
Tabel 3.3
Contoh Nilai Fungsi Parameter ....................................................... 58
Tabel 4.1
Initial PDU ..................................................................................... 79
Tabel 4.2
Derived PDU I ............................................................................... 81
Tabel 4.3
Derived PDU II .............................................................................. 83
Tabel 4.4
Derived PDU II .............................................................................. 85
xiii
DAFTAR GAMBAR Gambar 2.1
Komunikasi AMS (ACARS) dan AFS (AFTN)............................... 7
Gambar 2.2
Model Umum ATN ........................................................................ 10
Gambar 2.3
Komponen ATN ............................................................................. 13
Gambar 2.4
Perbandingan ATN – OSI ............................................................... 14
Gambar 2.5
Bagian-bagian PDU ........................................................................ 22
Gambar 2.6
Fixed Part ...................................................................................... 26
Gambar 2.7
Address Part ................................................................................... 29
Gambar 2.8
Segmentation Part .......................................................................... 30
Gambar 2.9
Option Part..................................................................................... 31
Gambar 2.10 Data Part........................................................................................ 32 Gambar 2.11 Perbandingan OSI layer dengan DoD Layer ................................... 33 Gambar 2.12 Proses Pembuatan Koneksi TCP .................................................... 35 Gambar 2.13 Peta Kernel .................................................................................... 36 Gambar 3.1
Gambaran besar modul CLNP ........................................................ 47
Gambar 3.2
Flow chart clnp_routing ................................................................. 49
Gambar 3.3
Flowchart dari fungsi Compose PDU Header ................................. 50 xiv
Gambar 3.4
Flowchart pemberian nilai pada Fixed Part di header ..................... 51
Gambar 3.5
Flowchart pemberian nilai pada field Address Part ......................... 54
Gambar 3.6
Flowchart pemberian nilai pada field Segmentation Part ................ 56
Gambar 3.7
Flowchart pemberian nilai pada field Option Part........................... 57
Gambar 3.8
Flowchart algoritma fragmentasi
Gambar 4.1
Struktur data clnp_hdr (fixed, address part), clnp_segment
…........................................... 59
(segmentation part) dan clnp_option (option part)
....................... 64
Gambar 4.2
Fungsi clnp_queue_xmit()
…....................................................... 65
Gambar 4.3
Potongan fungsi compose_clnph()
Gambar 4.4
Fungsi dst_output()
Gambar 4.5
Fungsi clnp_output() ...................................................................... 67
Gambar 4.6
Clnp_finish_output() ....................................................................... 68
Gambar 4.7
Define MTU
............................................... 66
...................................................................... 66
....................................................................... 69
Gambar 4.8.a Potongan fungsi clnp_fragment() ..................................................... 70 Gambar 4.8.b Potongan fungsi clnp_fragment() ..................................................... 71 Gambar 4.8.c Potongan fungsi clnp_fragment() ..................................................... 73 Gambar 4.8.d Potongan fungsi clnp_fragment() ..................................................... 74 Gambar 4.9
Fungsi clnp_finish_output2() ........................................................... 75
xv
DAFTAR LAMPIRAN
clnp.h ...................................................................................................................
L1
clnp_output.c .......................................................................................................
L7
clnp_csum.c ........................................................................................................
L12
clnp_module.c ...................................................................................................... L16 dumper.c ...............................................................................................................
L17
Makefile ............................................................................................................... L18
xvi