Teknologi Informasi
Menurut kamus besar Bahasa Indonesia, teknologi diartikan ilmu pengetahuan terapan atau keseluruhan sarana untuk menyediakan barang-barang yang diperlukan bagi kelangsungan dan kenyamanan hidup manusia. Lebih spesifik untuk teknologi informasi artinya yang dimaksud barang-barang yang diperlukan adalah informasi. Dengan informasi yang baik dan benar, manusia dapat mengambil keputusan dalam hidup secara tepat. Teknologi informasi di zaman dulu dilakukan melaui pengukiran di dinding-dinding.
Perkembangan ukiran di dinding-dinding mendorong manusia untuk menciptakan sebuah tulisan yang kemudian diletakan pada papirus di Mesir Kuno. Seiring berjalannya waktu muncul teknologi kertas yang lebih jernih. Di zaman modern teknologi informasi diawali dari radio, kemudian televisi, dan saat ini adalah komputer. Menurut Kelly (2011:10), informasi adalah data yang telah diolah menjadi sebuah bentuk yang berarti bagi penerimanya dan bermanfaat dalam pengambilan keputusan saat ini atau saat mendatang.
Hampir setiap orang saat ini memiliki gadget, baik itu smartphone, tablet, atau laptop. Istilah teknologi informasi lebih dominan melekat pada tiga hal tersebut. Sebelumnya ada media informasi seperti pamflet, poster, atau banner. Kelemahan dari ketiga media tersebut adalah menggunakan bahan baku kayu dan beberapa kali terdapat issue hilangnya kayu maka akan hilang produsen oksigen. Kelemahan itu yang menjadikan teknologi informasi dengan media smartphone, tablet, atau laptop semakin populer. Untuk dapat membuat sebuah informasi di ketiga media tersebut dibutuhkan kemampuan dalam bahasa pemrograman.
Bahasa mesin yang terdiri atas 0 dan 1, menjadi cikal bakal adanya bahasa pemrograman. Bahasa mesin yang begitu rumit karena terdiri atas deretan angka 0 dan 1 maka diciptakan bahasa pemrograman tingkat tinggi pertama oleh Zuse bernama Plankalkul. Kemudian muncul bahasa pemrograman yang semakin dekat dengan bahasa manusia. Dengan bahasa pemrograman yang lebih dekat dengan bahasa manusia maka perancangan akan lebih mudah dilakukan. Bahasa pemrograman populer di awal abad ke-21 adalah Python, JavaScript, R, serta PHP.
Internet Protocol Address
Internet Protocol Address atau Alamat Protokol Internet dapat dianalogikan sebagai nomor rumah yang identik. Tujuan dari nomor yang identik adalah agar saat mengirim informasi tidak terjadi bias. Seperti analogi pengiriman paket pesanan melalui aplikasi online, jika kita mencantumkan alamat yang sama dengan alamat orang lain tentu pengirim paket tersebut akan sulit membedakan mana lokasi yang berhak menerima paket tersebut.
Alamat IP terbagi menjadi 4 bagian yang setiap bagian dapat diisi angka 0-255, artinya alamat IP itu dimulai dari 0.0.0.0 hingga 255.255.255.255. Alamat tersebut tidak random tetapi secara matematis dibuat oleh Internet Assigned Numbers Authority atau IANA yang merupakan salah satu divisi dari Internet Corporation for Assigned Names and Numbers atau ICANN.
Bagi konsumen internet alamat IP ada dua jenis yaitu public dan private. Alamat IP public terbagi menjadi dua lagi, yaitu dynamic (berubah secara otomatis) dan static (konsisten). Sedangkan bagi website developer ada dua jenis alamat IP yaitu, shared dan dedicated (lebih mudah untuk sertifikat SSL). Untuk mengetahui alamat IP di windows dapat menggunakan command dengan mengetik perintah ipconfig.
IP address bekerja pada layer ke 3 dari OSI model (PDNTSPA {physical, data link, network, transport, session, presentation, application}). Merujuk RFC 1918 ada 3 range untuk private IP address, yaitu:
- 10.0.0.0 - 10.255.255.255
- 172.16.0.0 - 172.31.255.255
- 192.168.0.0 - 192.168.255.255
- FEDC:0000:0000:0089:0245:78FF:FE45:BA98
- IP 192.168.100.80/25
- Host ID /25 = 32 - 25 = 7 > 2^7 = 128 > berarti jumlah Host ID 128 host dikurangi AWS 5 sehingga tersisa 123 host ID
- Network ID pada 192.168.100.80 = 192.168.100.0
- Broadcast pada 192.168.100.80 = 192.168.100.122
- IP address yang bisa digunakan 192.168.100.1 s.d. 192.168.100.121
- Subnet mask pada 192.168.100.80/25 = 256 - 128 > 255.255.255.128
- IP 20.20.0.22/22
- Host ID /22 = 32 - 22 = 10 > 2^10 = 1024 > berarti jumlah Host ID 1024 host dikurangi AWS 5 sehingga tersisa 1019 host ID
- Network ID pada 20.20.0.22/22 = 20.20.0.0
- Broadcast pada 20.20.0.22/22 > 1024 / 256 = 4 > 20.20.3.255
- IP address yang bisa digunakan 20.20.0.1 s.d. 20.20.3.254
- Subnet mask pada 20.20.0.22/22 > 2^10 > 10 - 8 = 2 > 2^2 = 4 > 256 - 4 = 252 > 255.255.252.0
- IP 10.10.10.10/24
- Host ID /24 = 32 - 24 = 8 > 2^8 = 256 > berarti jumlah Host ID 256 host dikurangi AWS 5 sehingga tersisa 251 host ID
- Network ID pada 10.10.10.10/24 = 10.10.10.0
- Broadcast pada 10.10.10.10/22 = 10.10.10.256
- IP address yang bisa digunakan 10.10.10.1 s.d. 10.10.10.254
- Subnet mask pada 10.10.10.10/24 > 256 - 256 = 0 > 255.255.255.0
Lebih mudah untuk menentukan alamat jaringan secara online di jodies.de/ipcalc. Subnetting merupakan teknik secara logika untuk memecah single network menjadi banyak jaringan yang disebut subnet. Perhatikan gambar di bawah:
![]() |
sumber: vitalsource.com |
Ada 3 alasan penggunaan subnets, yaitu meningkatkan kecepatan, mereduksi lalu lintas jaringan, dan keamanan yang lebih baik. Subnet bekerja dengan class atau classless inter-domain routing (CIDR), ada 3 jenis class yaitu class A [network.host.host.host], class B [network.network.host.host], dan class C [network.network.network.host]. Perhatikan:
- Class A | 0 - 126 | 8 bits | contoh: 34.126.35.125
- Class B | 128 - 191 | 16 bits | contoh: 134.23.45.123
- Class C | 192 - 223 | 24 bits | contoh: 212.11.123.3
Jika menggunakan Amazon Cloud atau AWS maka akan ada 5 alamat yang digunakan, yaitu:
- Network ID : porsi dari alamat IP untuk identifikasi jaringan dan membuat unik
- Subnet mask : range dari alamat IP yang bisa digunakan dengan sebuah jaringan atau subnet, terbagi menjadi network bits dan host bits
- Host ID range : range tetap dari semua alamat IP antara alamat subnet dan alamat broadcast (setelah dikurangi first subnet dan last subnet)
- Number of usable host IDs : bergantung class dan prefix dari subnet, berjalan antara 30 s.d. 254
- Broadcast ID : alamat IP yang digunakan sebagai target semua sistem
Alamat IP dapat disalahgunakan oleh hacker seperti, online stalking, download ilegal melalui alamat IP, mentrek lokasi perangkat, secara langsung menyerang jaringan, hingga meretas perangkat lunak dan keras. Untuk mengatasinya dapat menggunakan proxy server atau virtual private network. Selain masalah keamanan IPv4 juga memiliki masalah pada jumlahnya. Sebagai solusinya ada 3, yaitu CIDR (cirinya ada tanda garis miring), NAT (IP address yang diterjemahkan ke IP address lain), dan IPv6 (memiliki 128 bit).
Hosting, Server, dan Domain
Agar teknologi informasi dapat diakses secara global maka perlu dilakukan setting hosting, server, dan domain. Pengaturan hosting secara sederhana adalah di mana file informasi akan disimpan. Jadi yang dimaksud hosting itu seperti menyimpan file di harddisk, sedangkan server untuk menjalankan file yang di simpan di harddisk tersebut. Server memiliki harddisk, RAM, hingga processor. Berbeda dengan domain yang mengubah alamat menjadi lebih mudah. Sebelumnya alamat dari informasi masih berupa angka, namun angka masih sulit untuk diingat oleh manusia sehingga perlu diubah menjadi kata atau kalimat yang lebih mudah diingat oleh pengguna. Nah, di sanalah fungsi dari domain.
Misalnya akan dibuat sebuah informasi melalui blogger yang dimiliki oleh google, secara otomatis file tersimpan di pihak google dan servernya juga di sediakan oleh google, namun untuk domain yang disediakan oleh google masih berupa nama_blog.blogspot.com. Untuk mengubah itu diperlukan domain yang biasanya berbayar. Contoh lainnya misalnya akan dibuat sebuah informasi dengan basis reactJS, maka perlu dibuat terlebih dahulu informasi tersebut dengan teknologi reactJS. Setelah informasi dibuat maka diperlukan media hosting, biasanya perusahaan yang menyediakan hosting akan seperangkat servernya, namun tidak diketahui spesifikasi servernya.
![]() |
sumber: aws |
Secara tradisional, hosting dan server bisa dibuat sendiri namun dengan konsekuensi biaya yang relatif lebih mahal. Sedangkan nama domain sulit untuk dibuat sendiri karena pada dasarnya setiap nama domain itu akan diramban di mesin pencari google sehingga nama domain akan terdaftar di google. Secara lengkap untuk melakukan konfigurasi dengan biaya yang relatif lebih murah dibandingkan membuat server sendiri adalah memanfaatkan teknologi cloud seperti amazon web service (AWS), SAP, yandex cloud, dan alibaba cloud.
Dasar Pemerograman Website
Pada awalnya website digunakan untuk bertukar informasi antarilmuan di berbagai universitas dunia. Orang yang memperkenalkan website pertama kali adalah Tim Berners-Lee, sedangkan website pertama beralamatkan di http://info.cern.ch/. Cara kerja dari website adalah server side dan client side. Beberapa orang menyangka bahwa yang dimaksud server adalah komputer dengan spesifikasi tinggi untuk menyimpan dokumen informasi. Pernyataan tersebut memang benar namun kurang tepat. Pada dasarnya akan lebih tepat jika mengatakan bahwa server adalah sebuah perangkat lunak yang digunakan untuk menghubungkan antarkomputer dengan spesifikasi yang berada di atas rata-rata.
Dalam website server yang banyak digunakan adalah perangkat lunak HTTP atau hypertext transfer protocol. Dengan HTTP sebuah website akan memiliki alamat yang masih berupa angka. Kemudian untuk mempermudahnya digunakan DNS atau domain name system. Nah, sisi server ini akan bekerja dengan minimal 3 alat, yaitu HTML, CSS, dan JavaScript.
Setiap file HTML, CSS, maupun JavaScript berjalan dengan kode yang dituliskan. Nah, kode tersebut berjalan di atas plain text sehingga sebaiknya menggunkan text editor dan bukan seperti OpenOffice writer yang berupa rich text. Dengan demikian untuk mempelajari teknologi website setidaknya harus memiliki text editor, browser, dan tentunya perangkat komputer. Dengan menggunakan HTML, CSS, dan JavaScript suduh cukup untuk membuat website, berbeda dengan pembuatan web application atau software aplikasi berbasis web biasanya memerlukan framework dengan siklus hidup software development, yaitu:
- Plan: what is the problem and what resources do you need to solve it?
- Analyze: what do you want from a solution?
- Design: how will you build what you want?
- Develop: build what you designed
- Test: did you get what you want?
- Implement: start to use what you built
- Maintain: improve what you built
Protokol Aplikasi
Protokol komunikasi adalah aturan dalam sebuah sistem. HTTP atau hypertext transfer protocol digunakan untuk dapat menjangkau halaman web. HTTP ditampilkan dalam bentuk URL atau uniform resource locator. HTTP berubah menjadi HTTPS atau hypertext transfer protocol secure ketika dikombinasikan dengan SSL/TLS. Secure socket layer atau SSL merupakan standar kompunikasi antara 2 sistem dengan menggunakan enkripsi. Sedangkan TLS atau transport layer security merupakan versi terbaru dari SSL yang lebih aman. TLS biasanya digunakan untuk keamanan dalam sistem pembayaran seperti bank. Bedanya TLS melakukan verifikasi bahwa sistem tujuan telah benar yang sedang bertukar data.
![]() |
sumber: aws.amazon.com |
Protokol yang digunakan antarmail servers adalah SMTP atau simple mail transfer protocol. Nah, untuk komunikasi mail antarclient ada 2 jenis protokol, yaitu IMAP dan POP. Perbedaannya IMAP bersifat real time sedangkan POP tidak atau harus di download terlebih dahulu. Protokol tambahan lainnya adalah DNS, ICMP, DHCP, dan FTP. Domain name system atau DNS mengubah IP address yang berupa angka menjadi nama yang lebih mudah diingat. Nah, untuk memeriksa apakah IP address mengalami masalah digunakan protokol ICMP atau internet control message protocol. Contohnya penggunaan command ping. Apabila terjadi host atau port tidak dapat dijangkau maka ICMP akan mengirim pesan error. Alamat IP yang tidak ada kendala atau error disebarkan dengan dynamic host configuration protocol atau DHCP. Selanjutnya ketika alamat IP telah tersebar tentu memungkinkan adanya komunikas, jika komunikasi tersebut berupa pertukaran file maka disanalah digunakan protokol FTP atau file transfer protocol.
Ada banyak sebetulnya model protokol jaringan seperti Systems Network Architecture (IBM), AppleTalk (Apple), Netware (Novell), dan Open System Interconnection (OSI). Namun, ada satu model protokol jaringan yang populer dan banyak digunakan saat ini yaitu model TCP/IP atau Transmission Control Protocol/Internet Protocol. Sedangkan model OSI merupakan model jaringan teoritis yang diusulkan untuk menstandardisasi komunikasi antara perangkat melalui jaringan, artinya tidak ada implementasi praktis atau dengan kata lain hanya menjelaskan bagaimana aplikasi dapat bekerja melalui jaringan. Model OSI memiliki 7 layer, yaitu physical, data link, network, transport, session, presentation, dan application. Saat seseorang menerima data maka akan melewati application, presentation, session, transport, network, data link, dan physical.
- Physical : melibatkan perangkat keras seperti router, kabel, dan switch kemudian frame diubah menjadi aliran bit dan dikirim ke penerima
- Data Link : paket tadi dipecah kembali menjadi frame-frame (MAC address)
- Network : segment tadi dipecah kembali menjadi paket-paket yang lebih kecil (header, body)
- Transport : data di pecah menjadi bagian-bagian kecil yang disebut segment (TCP, UDP)
- Session : pertukaran informasi sementara yang dapat menyimpan data terakhir sehingga jika sistem mati tidak hilang secara total
- Presentation : mengonversi data agar sistem dengan format berbeda dapat bertukar informasi (encrypt, compress, encoding)
- Application : berinteraksi langsung dengan client (HTTP, FTP, SMTP)
Setelah server menerima data biner tersebut maka akan direspon sesuai kode pemrograman dengan menghasilkan kode biner juga. Kode biner respons akan diubah di physical layer menjadi frame dan dikirimkan ke data link layer untuk kemudian frame diubah menjadi paket-paket. Selanjutnya dikirim ke network layer dan paket-paket tersebut diubah menjadi segment untuk dikirim ke transport layer. Di transport layer segment-segment tersebut akan dirakit menjadi data utuh dan mengirimnya ke session layer. Selanjutnya session layer akan menutup sesi atau meneruskan data ke presentation layer. Sampai sini data masih berupa enkripsi sehingga data perlu di decrypt. Dan data yang telah di decrypt akan dikirim ke application layer hingga data dimasukkan ke dalam aplikasi dan dapat ditampilkan ke client.
![]() |
sumber: https://id.wikipedia.org/wiki/Model_OSI#/media/Berkas:OSI_Model_v1.svg |
Berbeda dengan model OSI yang memiliki 7 layer, pada model TCP/IP memiliki 5 layer, yaitu application, transport, network, data link, dan physical. Model OSI sifatnya teoritis atau abstraksi untuk mempermudah pemahaman sedangkan model TCP/IP lebih bersifat praktis dan banyak digunakan hingga saat ini. Model TCP/IP pada awalnya hanya memiliki 4 layer yang dikembangkan oleh departemen pertahanan Amerika Serikat pada tahun 1989. Layer yang dipecah saat itu adalah link layer menjadi data link dan physical. Hal ini terjadi karena adanya variasi koneksi fisik, yaitu ethernet, Wi-Fi, fiber optic, dan masih banyak lagi. Di setiap layer model TCP/IP terdapat serangkaian protokol tertentu.
- Physical : perangkat fisik yang saling terhubung (10 Base T, 802.11)
- Data link : menafsirkan sinyal (Ethernet, Wi-Fi)
- Network : jaringan yang berbeda dapat bertukar informasi (IP)
- Transport : memilah client dan server mana yang boleh mendapatkan data (TCP, UDP)
- Application : session, presentation, dan application digabung (HTTP, SMTP)
Contohnya adalah membeli di e-commerce Alibaba. Komputer, gelombang radio, dan kabel merupakan physical layer, lalu data link akan memberikan berpindahnya data secara bercabang-cabang. Selanjutnya network akan mengidentifikasi data akan melewati titik-titik mana saja. Kemudian transport layer memastikan data akan dikirim ke client mana, hingga akhirnya data berhasil masuk ke aplikasi client.
ref: