Halaman

Selasa, 13 Mei 2025

Fungsi String

Menangani data teks dengan benar merupakan keterampilan utama yang harus dikuasai semua pembuat kode. Fungsi string akan meningkatkan produktivitas Anda saat bekerja dengan teks.

Dalam pelajaran ini, Anda akan belajar menggunakan fungsi string bawaan.

String adalah serangkaian karakter dalam tanda kutip.

Penjelasan:

Dalam pemrograman, string adalah serangkaian karakter yang diapit tanda kutip (tanda kutip tunggal ' ' atau tanda kutip ganda " ").

String dapat berisi huruf, angka, simbol, atau bahkan spasi.

Contoh: "Halo", '123', "ChatGPT!" semuanya adalah string.

Fungsi string memudahkan Anda bekerja dengan teks.

Fungsi upper() dan lower() memungkinkan Anda mengubah huruf besar/kecil pada string dengan cepat menjadi huruf kapital atau huruf kecil semua.

print('SmArTpHoNe'.lower())
print('SmArTpHoNe'.upper())
 

Output:

smartphone
SMARTPHONE
 

Penjelasan:

  • .lower() → Mengubah semua huruf menjadi huruf kecil (lowercase).

    • 'SmArTpHoNe'.lower() → smartphone

  • .upper() → Mengubah semua huruf menjadi huruf besar (uppercase).

    • 'SmArTpHoNe'.upper() → SMARTPHONE

Ini adalah contoh string method di Python.

 

img-component 

Fungsi upper() dan lower() hanya dapat digunakan pada string.

Fungsi yang hanya bekerja pada objek tertentu (string, daftar, dsb.) dipanggil menggunakan notasi titik.

Banyak fungsi bawaan yang perlu dipanggil menggunakan notasi titik.

Cara yang benar untuk memanggil fungsi string adalah:

✅ 'watch'.upper()

Penjelasan:

  • Di Python, string seperti 'watch' adalah objek, dan fungsi seperti .upper() adalah method yang dipanggil dari objek tersebut.

  • 'watch'.upper() artinya: panggil method upper() dari objek string 'watch'.

  • Ini akan mengubah semua huruf menjadi huruf besar → 'WATCH'.

 

Ingat bahwa fungsi print() diperlukan untuk menampilkan hasil di layar.

Ingat Anda dapat menggunakan variabel dalam fungsi.

Fungsi capitalize() akan menghemat waktu Anda saat Anda perlu mengubah karakter pertama suatu string menjadi huruf besar, sembari mengubah karakter lainnya menjadi huruf kecil.

print("happy birthday".upper())
print("happy birthday".lower())
print("happy birthday".capitalize())
 

Output:

HAPPY BIRTHDAY
happy birthday
Happy birthday 

Penjelasan:

  1. .upper() → Mengubah semua huruf menjadi huruf besar.

    • "happy birthday".upper() → HAPPY BIRTHDAY

  2. .lower() → Mengubah semua huruf menjadi huruf kecil.

    • "happy birthday".lower() → happy birthday

  3. .capitalize() → Mengubah huruf pertama menjadi besar, sisanya kecil.

    • "happy birthday".capitalize() → Happy birthday

 

city = "BERN"
print(city.capitalize())
 

Penjelasan:

  • Variabel city berisi string "BERN".

  • .capitalize() mengubah huruf pertama menjadi huruf besar dan sisanya menjadi huruf kecil.

  • Hasilnya akan menjadi: "Bern".

Output:

Bern

 

String tidak dapat diubah. Ini berarti bahwa setelah dibuat, Anda tidak dapat mengubahnya.

String tidak dapat diubah dan fungsi tidak akan mengubahnya. Anda perlu menyimpan string yang dimodifikasi dalam variabel untuk mempertahankannya.

 

item = "smartwatch"
print(item.upper())
print(item) # original string
item2 = item.upper()
print(item2)

Output:

SMARTWATCH
smartwatch
SMARTWATCH
 

Penjelasan:

  1. item.upper() → Mengubah "smartwatch" menjadi huruf besar dan mencetaknya, hasil:
    SMARTWATCH

  2. print(item) → Mencetak nilai asli dari variabel item tanpa perubahan, hasil:
    smartwatch

  3. item2 = item.upper() → Memasukkan hasil dari item.upper() ke variabel baru item2. Lalu dicetak hasilnya:
    SMARTWATCH

Kesimpulan:

  • String di Python immutable → operasi .upper() tidak mengubah string aslinya.

  • Variabel item tetap "smartwatch".

  • Hasil perubahan disimpan ke variabel baru (item2) jika ingin digunakan.

 

img-component

 

 

Penjelasan:

String: "Dog"

HurufIndex
D0
o1
g2

 Jawaban:

2
 

img-component

Fungsi find() memeriksa apakah karakter (atau pola karakter) ada dalam string. Fungsi ini mengembalikan indeks (posisi) dari nilai yang diberikan. Jika nilai yang diberikan muncul beberapa kali, fungsi akan mengembalikan kemunculan pertama (indeks terendah).

print("Bee".find("e"))

Output:

1
 

Penjelasan:

  • find() digunakan untuk mencari posisi (indeks) kemunculan pertama dari karakter yang dicari.

  • String: "Bee"

HurufIndex
B0
e1
e2
  • Jadi, huruf "e" pertama kali ditemukan di indeks 1.


Kesimpulan:

Hasilnya adalah: 1

 

Fungsi find() berlaku untuk string sehingga Anda memanggilnya menggunakan notasi titik.

"robot".find("o")

Penjelasan:

  • Fungsi .find("o") mencari kemunculan pertama huruf "o" dalam string "robot".

  • Indeks dimulai dari 0.

HurufIndex
r0
o1
b2
o3
t4
  • Huruf "o" pertama kali ditemukan di indeks 1.

Jawaban:

 1

Ingat bahwa fungsi print() diperlukan untuk menampilkan informasi di layar.

print("robot".find("t"))

Kode akan menampilkan angka 4.

Berikut alasannya: Metode find() dalam Python mengembalikan indeks kemunculan pertama substring yang ditentukan. Dalam kasus ini, metode ini mencari huruf "t" dalam string "robot". Huruf "t" ditemukan pada indeks 4 (pengindeksan dimulai dari 0), jadi hasilnya adalah 4.

 

find() akan mengembalikan kesalahan jika Anda tidak menyertakan argumen di antara tanda kurung. Tanpa sesuatu yang dicari dalam string, fungsi tersebut tidak dapat menjalankan tugasnya.

Hal ini tidak akan terjadi dengan upper(), lower(), dan capitalize(). Fungsi-fungsi tersebut tidak memerlukan informasi lebih lanjut untuk menyelesaikan tugasnya.

print('roBot'.upper())
print('roBot'.lower())
print('roBot'.capitalize())
print('roBot'.find())  # <-- This line has an issue
 

Output yang Diharapkan untuk Tiga Baris Pertama:

'roBot'.upper() → Mengubah semua huruf menjadi huruf kapital.

Output: ROBOT

'roBot'.lower() → Mengubah semua huruf menjadi huruf kecil.

Output: robot

'roBot'.capitalize() → Mengubah huruf pertama menjadi huruf kapital, sisanya menjadi huruf kecil.

Output: Robot

Masalah dengan Baris Terakhir:

print('roBot'.find())

Baris ini akan menyebabkan kesalahan karena metode .find() memerlukan setidaknya satu argumen, yang merupakan substring yang Anda cari.

Contoh penggunaan yang benar: 'roBot'.find('B')

Versi yang Dikoreksi:

Jika Anda ingin mencari 'B', seharusnya seperti ini:

print('roBot'.find('B'))
 

Ini akan mengembalikan 2 karena 'B' berada pada indeks 2.

Hasil Akhir yang Benar:

ROBOT
robot
Robot
2  # if searching for 'B' 

Jika Anda menjalankannya seperti yang Anda tulis, Python akan memberi Anda:

TypeError: find() takes at least 1 argument (0 given)
 

find() akan mengembalikan -1 jika nilai tidak dapat ditemukan dalam string.

print("robot".find("A"))
 

Metode .find() mencari substring "A" dalam string "robot".

Karena "A" tidak ditemukan dalam "robot", .find() akan mengembalikan -1.

Keluaran:

-1
 

Penjelasan:

.find() mengembalikan indeks kemunculan pertama jika ditemukan.

Jika tidak ditemukan, maka akan mengembalikan -1.

word = 'vehicle'
print(word.find('r'))

Penjelasan:

Metode find() mengembalikan indeks terendah dari substring jika ditemukan dalam string.

Jika substring tidak ditemukan, ia mengembalikan -1.

Dalam kasus ini, Anda mencari 'r' dalam string 'vehicle'.

'r' tidak ada dalam 'vehicle'.

Jadi outputnya adalah:

-1
 

Pelajaran yang Dapat Dipetik

Bagus sekali! Anda mempelajari bahwa:

🌟 Fungsi upper(), lower(), dan capitalize() digunakan untuk mengubah huruf besar pada string

🌟 Fungsi find() mencari nilai dalam string dan mengembalikan indeks saat pertama kali nilai tersebut muncul

 

 

 

 

 

 

 

 

 

 

 


 

 

 


Senin, 12 Mei 2025

Kuis Desain Jaringan

 1. Dua perangkat manakah yang umum ditemukan pada lapisan akses model desain LAN perusahaan hierarkis? (Pilih dua.)

Jawaban yang benar adalah:

✅ Access Point
✅ Layer 2 Switch

Penjelasan:

Dalam model desain jaringan hierarki (enterprise LAN design), ada tiga lapisan utama:

  1. Access Layer → Menghubungkan perangkat end-user (PC, printer, dll).

  2. Distribution Layer → Menghubungkan access layer ke core layer, sering ada routing dan policy.

  3. Core Layer → Backbone jaringan, kecepatan tinggi.

Perangkat di Access Layer:

  • Access Point → Menghubungkan perangkat wireless ke jaringan.

  • Layer 2 Switch → Menghubungkan perangkat kabel (wired) seperti PC, printer ke jaringan.

Yang bukan di Access Layer:

  • Firewall → Biasanya di perbatasan jaringan atau distribution layer (untuk keamanan).

  • Layer 3 Device → Biasanya di distribution atau core layer (untuk routing antar VLAN/jaringan).

  • Modular Switch → Bisa di distribution atau core layer karena biasanya skala besar dan modular.

Jadi, jawaban yang benar:

➡️ Access Point
➡️ Layer 2 Switch

 

2. Karakteristik jaringan apa yang memungkinkannya tumbuh cepat untuk mendukung pengguna dan aplikasi baru tanpa memengaruhi kinerja layanan yang diberikan kepada pengguna yang sudah ada?

Jawaban yang benar adalah:
✅ Scalability

Penjelasan:

  • Reliability → Kemampuan jaringan untuk tetap beroperasi dengan stabil dan minim gangguan.

  • Scalability → Kemampuan jaringan untuk bertumbuh dan mendukung lebih banyak pengguna atau aplikasi baru tanpa mengorbankan performa pengguna yang sudah ada.

  • Quality of Service (QoS) → Mengatur prioritas lalu lintas jaringan agar aplikasi penting (seperti suara atau video) mendapat jalur yang memadai.

  • Accessibility → Kemudahan bagi pengguna untuk mengakses jaringan atau sumber daya dari mana saja.

Jadi, yang berkaitan dengan pertumbuhan cepat & tidak mengganggu layanan existing adalah:

➡️ Scalability

 

3. Cocokkan definisi dengan tujuan keamanan.

Berikut adalah jawaban yang benar untuk mencocokkan kategori dengan definisi tujuan keamanan:

CategoriesOptions
A. ensuring availability✅ the assurance of timely and reliable access to data
B. ensuring confidentiality✅ only the intended recipients can access and read the data
C. maintaining integrity✅ the assurance that the information has not been altered during transmission

 

Penjelasan Ringkas:

  • Availability → Fokus pada akses yang cepat dan andal ke data/sistem.

  • Confidentiality → Hanya pihak yang berwenang boleh mengakses atau membaca data.

  • Integrity → Menjamin data tidak berubah/termodifikasi tanpa izin selama transmisi atau penyimpanan.

 

4. Seorang siswa sedang melakukan streaming film ke komputernya tetapi film tersebut terus berhenti. Layanan apa yang akan memberikan prioritas lebih tinggi pada lalu lintas streaming dan mencegah film tersebut berhenti?

Jawaban yang benar adalah:
✅ Quality of Service (QoS)

Penjelasan:

  • Quality of Service (QoS) adalah fitur jaringan yang digunakan untuk memprioritaskan jenis lalu lintas tertentu, seperti streaming video, voice call, atau aplikasi penting lainnya, agar mendapatkan bandwidth yang memadai dan tidak terganggu oleh lalu lintas lain.

Pilihan lain yang salah:

  • HTTPS → Protokol untuk enkripsi komunikasi web, tidak memprioritaskan lalu lintas.

  • Security → Berkaitan dengan perlindungan data & akses, bukan prioritas bandwidth.

  • Fault Tolerance → Kemampuan sistem untuk tetap berfungsi saat terjadi gangguan hardware/software, bukan untuk mengelola lalu lintas jaringan.

Jadi solusi agar film tidak terhenti saat streaming → QoS.

 

5. Benar atau Salah?
Dampak kegagalan perangkat jaringan yang penting dapat dibatasi oleh fitur yang disebut toleransi kesalahan.

✅ True

Penjelasan:

  • Fault Tolerance adalah fitur atau desain jaringan yang memungkinkan sistem tetap berjalan meskipun ada perangkat atau komponen yang gagal.

  • Dengan fault tolerance, dampak kegagalan perangkat penting bisa diminimalkan, misalnya dengan adanya redundansi (cadangan) atau jalur alternatif.

Contoh:

  • Jika sebuah switch utama mati, jaringan tetap bisa berjalan lewat switch cadangan.

  • Server dengan power supply ganda (redundan) tetap nyala walau satu power supply rusak.

Kesimpulan:

➡️ Pernyataan tersebut benar (True).

 

 6. Jenis alamat manakah yang tidak pernah berubah pada perangkat dan mirip dengan nama seseorang?

Jawaban yang benar adalah:
✅ MAC address

Penjelasan:

  • MAC address (Media Access Control address) adalah alamat unik bawaan pabrik yang ditanam di kartu jaringan (NIC) sebuah perangkat.

  • MAC address bersifat permanen (hardware address) dan tidak berubah, mirip seperti nama asli seseorang.

Pilihan lain:

  • IP address → Bisa berubah (dinamis) tergantung jaringan (seperti alamat rumah sementara).

  • Network address → Merujuk ke alamat jaringan (bukan spesifik ke perangkat individu).

  • Logical address → Biasanya maksudnya adalah IP address (bisa berubah).

Jadi, alamat yang tidak berubah seperti nama tetap adalah:

➡️ MAC address

 

7. Apa saja tiga lapisan model desain hierarkis sakelar? (Pilih tiga.)

Jawaban yang benar adalah:
✅ Access
✅ Distribution
✅ Core

Penjelasan:

Model desain hierarki jaringan (termasuk switch) terdiri dari tiga lapisan utama:

  1. Access Layer → Menghubungkan perangkat end-user (PC, printer, access point) ke jaringan.

  2. Distribution Layer → Penghubung antara Access Layer dan Core Layer, biasanya melakukan routing antar VLAN, filtering, dan kebijakan keamanan.

  3. Core Layer → Backbone jaringan, menangani lalu lintas data dengan kecepatan tinggi antar bagian jaringan.

Pilihan lain yang salah:

  • Data Link → Nama lapisan OSI (Layer 2), bukan bagian dari model hierarki jaringan.

  • Network Access → Istilah umum, sering dikaitkan dengan lapisan OSI atau akses fisik.

  • Enterprise → Bukan bagian dari tiga lapisan desain hierarki jaringan, lebih merujuk ke tingkatan organisasi atau jaringan secara luas.

Jadi, jawaban benar:

➡️ Access
➡️ Distribution
➡️ Core

 

8. Fitur jaringan mana yang menggunakan redundansi sebagai sarana untuk membatasi jumlah pengguna yang terpengaruh jika terjadi kegagalan?

Jawaban yang benar adalah fault tolerance (toleransi kesalahan).

Toleransi kesalahan adalah fitur jaringan yang dirancang untuk menyediakan redundansi, sehingga jika satu jalur atau perangkat gagal, jaringan tetap bisa berfungsi dengan mengalihkan lalu lintas ke jalur alternatif. Hal ini meminimalkan dampak kegagalan dan membatasi jumlah pengguna yang terpengaruh. Redundansi adalah elemen kunci dalam jaringan yang memiliki toleransi kesalahan.

 

9. Karakteristik jaringan apa yang memungkinkan lalu lintas video memiliki prioritas dibanding lalu lintas dari aplikasi email?

Jawaban yang benar adalah kualitas layanan (QoS).

Kualitas Layanan (QoS) adalah karakteristik jaringan yang memungkinkan jenis lalu lintas tertentu, seperti video, memiliki prioritas lebih tinggi dibanding jenis lalu lintas lain, seperti email. QoS memastikan bahwa aplikasi yang lebih penting (seperti panggilan video atau streaming) menerima bandwidth yang diperlukan dan latensi yang lebih rendah, sementara lalu lintas yang kurang penting (seperti email) mungkin tertunda atau diberi prioritas lebih rendah. Ini membantu mengoptimalkan kinerja aplikasi yang sensitif terhadap waktu.

10. Apa tanggung jawab lapisan distribusi dalam desain jaringan hierarkis?
Jawaban yang benar adalah Lapisan ini mengendalikan arus lalu lintas antara lapisan lainnya.

Dalam desain jaringan hierarkis, lapisan distribusi bertanggung jawab untuk merutekan lalu lintas antara lapisan akses (tempat perangkat akhir terhubung) dan lapisan inti (yang menyediakan layanan backbone berkecepatan tinggi). Lapisan distribusi biasanya menangani tugas-tugas seperti perutean, penyaringan, dan memastikan bahwa lalu lintas mengalir secara efisien antara berbagai bagian jaringan. Lapisan ini bertindak sebagai perantara, mengarahkan data antara lapisan akses dan lapisan inti.

11. Model desain jaringan mana yang meningkatkan efisiensi dengan membagi jaringan menjadi bagian-bagian yang lebih kecil.
Jawaban yang benar adalah hierarkis.

Model desain jaringan hierarkis meningkatkan efisiensi dengan membagi jaringan menjadi lapisan atau segmen yang lebih kecil dan lebih mudah dikelola. Desain ini biasanya mencakup tiga lapisan: lapisan inti, lapisan distribusi, dan lapisan akses. Setiap lapisan memiliki tanggung jawab khusus, dan dengan membagi jaringan menjadi bagian-bagian yang lebih kecil ini, jaringan menjadi lebih mudah dikelola, dipecahkan masalahnya, dan ditingkatkan skalanya. Model ini juga membantu mengoptimalkan kinerja dan memastikan aliran lalu lintas yang efisien di seluruh jaringan.

12. Cocokkan fitur dengan deskripsi
Berikut ini adalah kecocokan yang tepat antara kategori dan opsi:

Skalabilitas (A) → memungkinkan jaringan untuk berkembang

Kualitas Layanan (B) → memprioritaskan lalu lintas

Toleransi Kesalahan (C) → menyediakan keandalan

 

 


 

 

 

 

 

Argumen Fungsi

Fungsi bawaan seperti print() dan range() adalah blok kode yang dibuat oleh orang lain untuk melakukan hal-hal tertentu. Ini sangat menyederhanakan kode, karena Anda tidak perlu menulis ulang kode setiap kali. Yang perlu Anda lakukan hanyalah memanggilnya!

Dalam pelajaran ini, Anda akan meningkatkan keterampilan Anda dengan fungsi bawaan.

print("Hours: 4")

✅ Output:

Hours: 4
 

print("Name:", "Anna", "Age:", 25)

Fungsi di sini adalah print(). Fungsi ini mengambil argumen yang dipisahkan dengan koma.
Argumen yang dilewatkan:

"Nama:" (string)

"Anna" (string)

"Usia:" (string)

25 (bilangan bulat)

✅ Jawaban:

Pemanggilan fungsi memiliki 4 argumen.

 

Fungsi print() menerima argumen dari tipe data apa pun:

print("Online:", True)      # string and boolean
print("Credit:", 385.91)    # string and float
print(2, "bananas")         # integer and string

✅ Output:

Online: True
Credit: 385.91
2 bananas
 

Penjelasan:

Fungsi print() dapat mengambil beberapa argumen dengan tipe yang berbeda.

Fungsi ini memisahkannya dengan spasi secara default.

Tipe yang digunakan di sini adalah:

string + boolean

string + float

integer + string


print("Weight:", 77.6)


✅ Identifikasi tipe data:

Argumen ke-1: "Weight:" → string

Argumen ke-2: 77.6 → float

✅ Jawaban:

 

Argument Value Data Type
1st "Weight:" string
2nd 77.6 float

 

Fungsi dapat menerima operasi sebagai argumen.

Sebagai contoh, fungsi print() dapat menerima operasi matematika, logika, dan perbandingan.

print(5 > 7)             # comparison
print(True and False)    # logical
print("motor" + "bike")  # concatenation
 

✅ Output:

Perbandingan (5 > 7)

Mengevaluasi apakah 5 lebih besar dari 7.

Hasil: Salah

Logika AND (Benar dan Salah)

Logika AND antara Benar dan Salah.

Hasil: Salah

Penggabungan String ("motor" + "sepeda")

Menggabungkan dua string menjadi satu.

Hasil: sepeda motor

✅ Output Akhir:

False
False
motorbike
 

x = "air"
y = "plane"
print(x + y)
 

Variabel x memuat string "udara".

Variabel y memuat string "bidang".

Ekspresi x + y menggabungkan dua string tersebut.

✅ Keluaran:

airplane

✅ Penjelasan:

Operator + menggabungkan dua string tanpa spasi.

Hasilnya adalah: "air" + "plane" = "airplane".

 

Fungsi yang berbeda menerima jenis argumen yang berbeda. Misalnya, fungsi range() hanya menerima bilangan bulat.

Contoh: Menghasilkan angka dari 0 hingga 4

range(5)
 

Namun untuk melihat output, Anda perlu menggunakan print() atau mengubahnya menjadi daftar:
✅ Kode Lengkap:

print(list(range(5)))
 

✅ Output:

[0, 1, 2, 3, 4]
 

Anda dapat menggunakan nilai yang disimpan dalam variabel sebagai argumen.

balance = 304
print("Money in account:", balance)
 

✅ Penjelasan:

Variabel balance menyimpan nilai integer 304.

Fungsi print() akan menampilkan string "Uang di rekening:" diikuti dengan nilai balance.

✅ Output:

Money in account: 304
 

name = "Tom"
country = "France"
age = 35
print(country)
 

✅ Penjelasan:

Nama variabel diberi nilai "Tom".

Variabel negara diberi nilai "Prancis".

Variabel usia diberi nilai 35.

Pernyataan print(negara) akan menampilkan nilai variabel negara.

✅ Keluaran:

France
 

item = "Table"
num = 5
print(item, num)
 

✅ Output:

Table 5
 

✅ Penjelasan:

print(item, num) akan mencetak nilai item ("Tabel") dan num (5) dengan spasi di antara keduanya.

Alternatif (menggunakan f-string):

print(f"{item} {num}")
 

Argumen yang diteruskan ke suatu fungsi harus dipisahkan dengan koma, jika tidak maka akan menyebabkan kesalahan.

name = "Anna"
surname = "Anderson"
print(name surname)
 

❌ Masalah:

Anda lupa menggunakan operator koma atau + antara nama dan nama keluarga dalam fungsi print().

Python akan memberi Anda SyntaxError karena tidak tahu cara menggabungkan nama dan nama keluarga tanpa pemisah.

✅ Cara yang Benar untuk Memperbaiki:

Menggunakan koma (menambahkan spasi secara otomatis):

print(name, surname)
 

Output:

Anna Anderson
 

Menggunakan + untuk penggabungan (tanpa spasi di antara keduanya):

print(name + surname)
 

Output:

AnnaAnderson
 

Menggunakan + dengan spasi yang ditambahkan secara manual:

print(name + " " + surname)
 

Output:

Anna Anderson
 

temperature = 55
humidity = 60
print(temperature, "℃")

✅ Output:

55 ℃
 

✅ Penjelasan:

print(temperature, "℃") mencetak nilai temperatur diikuti spasi dan simbol derajat Celsius.

 

Penjelasan:

Fungsi type() dalam Python digunakan untuk memeriksa tipe data suatu variabel atau nilai.

Contoh:

x = 10
print(type(x))
 

Output:

<class 'int'>
 

img-component

 

Suatu fungsi dapat menjadi argumen untuk fungsi lainnya.

print(type("word"))
 

✅ Penjelasan:

"word" adalah string literal.

type("word") adalah pemanggilan fungsi yang mengembalikan tipe "word", yaitu <class 'str'>.

Hasil ini menjadi argumen fungsi print().

✅ Keluaran:

<class 'str'>
 

✅ Kesimpulan:

type("word") memeriksa tipe data "word".

print() kemudian menampilkan hasilnya di layar.

Jadi ya, type("word") adalah argumen dari print().

 

Instruksi int(), str(), dan float() adalah fungsi yang digunakan untuk konversi data.

Kode Anda akan menghasilkan kesalahan jika Anda memberikan tipe data yang salah sebagai argumen. Beberapa fungsi memerlukan tipe data tertentu sebagai argumen.

Misalnya, fungsi int() tidak akan dapat mengubah karakter non-numerik (misalnya a–z) menjadi angka dan akan menghasilkan kesalahan.

print(int(5.5))      # 5
print(int('5'))       # 5
print(str(5))         # 5
print(int('pencil'))  # error
 

✅ Penjelasan:

print(int(5.5))

Fungsi int() mengonversi angka floating-point 5.5 menjadi integer.

Fungsi ini memotong bagian desimal dan mengembalikan 5.

Keluaran:

5
 

print(int('5'))

Fungsi int() mengonversi string '5' menjadi integer.

Keluaran:

5
 

print(str(5))

Fungsi str() mengonversi bilangan bulat 5 menjadi string.

Keluaran:

5
 

print(int('pencil'))

Fungsi int() tidak dapat mengubah string 'pencil' menjadi bilangan bulat karena bukan angka yang valid.

Ini akan memunculkan ValueError karena string input tidak mewakili angka.

Pesan Kesalahan:

ValueError: invalid literal for int() with base 10: 'pencil'
 

✅ Final Output:

5
5
5
ValueError: invalid literal for int() with base 10: 'pencil'
 

num = '45'  # string
print(int(num) + 3)

✅ Penjelasan:

num = '45':

Variabel num diberi string '45'.

int(num):

Fungsi int() digunakan untuk mengubah string '45' menjadi bilangan bulat 45.

int(num) + 3:

Setelah mengubah num menjadi bilangan bulat, kode tersebut menambahkan 3 ke 45.

print(int(num) + 3):

Ini mencetak hasil penjumlahan: 45 + 3 = 48.

✅ Output:

48
 

Pelajaran yang Dapat Dipetik

Hebat! Anda telah mempelajari bahwa:

🌟 Anda dapat menggunakan variabel sebagai argumen untuk fungsi

🌟 Suatu fungsi dapat menjadi argumen untuk fungsi lain

🌟 Beberapa fungsi memerlukan tipe data tertentu sebagai argumen

 

 

Minggu, 11 Mei 2025

Ringkasan Desain Jaringan

Jaringan Yang Andal

Seiring berkembangnya jaringan, kami telah mempelajari bahwa ada empat karakteristik dasar yang harus dipenuhi oleh arsitek jaringan untuk memenuhi harapan pengguna: Toleransi Kesalahan, skalabilitas, QoS, dan keamanan.

Jaringan yang toleran terhadap kesalahan membatasi jumlah perangkat yang terpengaruh selama kegagalan. Jaringan ini memungkinkan pemulihan cepat saat kegagalan tersebut terjadi. Jaringan ini bergantung pada beberapa jalur antara sumber dan tujuan pesan. Jika satu jalur gagal, pesan akan langsung dikirim melalui tautan lain.

Jaringan yang dapat diskalakan berkembang dengan cepat untuk mendukung pengguna dan aplikasi baru. Hal ini dilakukan tanpa menurunkan kinerja layanan yang diakses oleh pengguna yang sudah ada. Jaringan dapat diskalakan karena perancangnya mengikuti standar dan protokol yang berlaku.

QoS merupakan persyaratan yang semakin meningkat bagi jaringan saat ini. Karena konten data, suara, dan video terus berkumpul dalam jaringan yang sama, QoS menjadi mekanisme utama untuk mengelola kemacetan dan memastikan pengiriman konten yang andal kepada semua pengguna. Bandwidth jaringan diukur dalam bps. Ketika komunikasi simultan dicoba di seluruh jaringan, permintaan bandwidth jaringan dapat melebihi ketersediaannya, sehingga menciptakan kemacetan jaringan. Fokus QoS adalah memprioritaskan lalu lintas yang sensitif terhadap waktu. Jenis lalu lintas, bukan konten lalu lintas, adalah yang penting.

Administrator jaringan harus menangani dua jenis masalah keamanan jaringan: keamanan infrastruktur jaringan dan keamanan informasi. Administrator jaringan juga harus melindungi informasi yang terkandung dalam paket yang dikirimkan melalui jaringan, dan informasi yang disimpan pada perangkat yang terhubung ke jaringan. Ada tiga persyaratan utama untuk mencapai tujuan keamanan jaringan: Kerahasiaan, Integritas, dan Ketersediaan.

 

Desain Jaringan Hirarkis

Alamat IP terdiri dari dua bagian. Bagian pertama mengidentifikasi bagian jaringan. Bagian jaringan dari alamat IP akan sama untuk semua host yang terhubung ke jaringan lokal yang sama. Bagian kedua dari alamat IP mengidentifikasi host individual pada jaringan tersebut. Baik alamat MAC fisik maupun alamat IP logis diperlukan agar komputer dapat berkomunikasi pada jaringan hierarkis.

Pusat Jaringan dan Berbagi pada PC menampilkan informasi dasar jaringan dan koneksi yang telah disiapkan, termasuk jaringan aktif dan apakah Anda terhubung dengan kabel atau nirkabel ke internet dan dalam LAN Anda. Anda dapat melihat properti koneksi Anda di sini.

Pada jaringan Ethernet, alamat MAC host mirip dengan nama seseorang. Alamat MAC menunjukkan identitas individu dari host tertentu, tetapi tidak menunjukkan lokasi host tersebut di jaringan. Jika semua host di internet (jutaan dan jutaan jumlahnya) diidentifikasi hanya dengan alamat MAC uniknya, bayangkan betapa sulitnya menemukan satu host saja. Lebih baik membagi jaringan yang lebih besar menjadi bagian-bagian yang lebih kecil dan lebih mudah dikelola. Salah satu cara untuk membagi jaringan yang lebih besar adalah dengan menggunakan model desain hierarkis.

Jaringan hierarkis dapat diskalakan dengan baik. Lapisan akses menyediakan titik koneksi untuk perangkat pengguna akhir ke jaringan dan memungkinkan beberapa host terhubung ke host lain melalui perangkat jaringan, biasanya switch atau access point nirkabel. Biasanya, semua perangkat dalam satu lapisan akses akan memiliki bagian jaringan yang sama dari alamat IP. Lapisan distribusi menyediakan titik koneksi untuk jaringan terpisah dan mengendalikan aliran informasi antar jaringan. Perangkat lapisan distribusi mengendalikan jenis dan jumlah lalu lintas yang mengalir dari lapisan akses ke lapisan inti. Lapisan inti adalah lapisan backbone berkecepatan tinggi dengan koneksi redundan. Lapisan ini bertanggung jawab untuk mengangkut sejumlah besar data antara beberapa jaringan akhir. Tujuan utama lapisan inti adalah mengangkut data dengan cepat.

 

Fungsi

 img-component

 

Dalam pelajaran ini, Anda akan mempelajari tentang fungsi.

Fungsi adalah blok kode yang dapat digunakan kembali untuk tugas-tugas tertentu. Fungsi membantu menjaga kode Anda sesingkat dan semudah mungkin untuk dikerjakan, sehingga Anda terhindar dari pengulangan kode.

Anda telah melihat (dan menggunakan) fungsi dalam pelajaran sebelumnya. print(), input(), dan type() adalah fungsi.

Suatu fungsi melakukan suatu tugas. Cocokkan fungsi dengan tugas yang dilakukannya

img-component

 

Fungsi berisi kode untuk melakukan suatu tugas. Untuk menggunakan kode ini, Anda hanya perlu memanggil fungsi tersebut.

Setiap fungsi memiliki nama. Kode dalam suatu fungsi hanya akan dijalankan saat fungsi tersebut dipanggil.

Sebagai contoh, fungsi print() berisi ratusan baris kode dengan semua instruksi yang dibutuhkan untuk mengambil pesan, memprosesnya, dan menampilkannya di layar.

Fungsi membuat kode dapat digunakan kembali. Fungsi yang sama dapat dipanggil beberapa kali.

img-component

Fungsi memerlukan informasi yang harus diteruskan agar tugas dapat diselesaikan. Kita meneruskan informasi ke fungsi sebagai argumen.

Lewatkan argumen ke fungsi print() sehingga tugas dapat diselesaikan

img-component

Argumen berada di dalam tanda kurung () setelah nama fungsi.

Identifikasi elemen fungsi

Fungsi lain yang telah Anda gunakan adalah range().

Fungsi range() mengembalikan serangkaian angka.

Fungsi range() menerima angka sebagai argumen

range(3)

Saat range(3) dipanggil, Python akan menghasilkan urutan angka mulai dari 0 hingga sebelum 3, yaitu:

range(3) → 0, 1, 2
 

  • range(n) = mulai dari 0, berhenti di n (tidak termasuk n).

  • Jadi range(3) bukan 1, 2, 3, tapi 0, 1, 2.

  •  

    range(5)

  • Name: range

  • Argument: 5

  •  

  • Name adalah nama fungsi, yaitu range.

  • Argument adalah nilai yang diberikan ke fungsi, yaitu 5, yang artinya fungsi akan menghasilkan angka dari 0 sampai 4.

    Contoh penggunaannya: 

    for i in range(5):
        print(i)

    Hasil:

    0
    1
    2
    3
    4
     

    Fungsi memerlukan argumennya agar dapat berfungsi. Argumen yang hilang dapat mengakibatkan kesalahan.

    Jika kamu menulis:

    range()

    Maka akan muncul error karena fungsi range() minimal membutuhkan satu argumen (yaitu stop).

    🔧 Contoh yang benar:

    range(5)       # Benar → menghasilkan 0, 1, 2, 3, 4
    range(1, 5)    # Benar → menghasilkan 1, 2, 3, 4
     

    Kalau tanpa argumen, seperti range(), maka Python akan menampilkan error seperti:

    TypeError: range expected at least 1 argument, got 0
     

    Suatu fungsi dapat mengambil beberapa argumen.

    Misalnya, kita dapat meneruskan beberapa argumen ke fungsi print() untuk menampilkan beberapa nilai dalam satu baris.

    print("Your seat:", 4)

     Output kode Anda akan menjadi:

    Your seat: 4 

     

    print("Credit:", 98)

    Dalam kode print("Kredit:", 98), ada 2 argumen yang diteruskan ke fungsi print():

    String "Kredit:"

    Integer 98

    Jadi, jumlah argumennya adalah 2.

     

    Fungsi cetak dapat mengambil argumen dari tipe data yang berbeda.

    Identifikasi tipe data argumen
    print("Skor:", 35)

    Dalam kode print("Skor:", 35):

    Argumen ke-1: "Skor:" — Ini adalah string.

    Argumen ke-2: 35 — Ini adalah integer.

     

    Beberapa argumen dalam suatu fungsi dipisahkan dengan koma,

    print() dan range() adalah contoh fungsi bawaan. Python memiliki banyak fungsi bawaan yang dapat Anda gunakan kembali dalam kode Anda dengan memanggilnya.

    Contoh fungsi bawaan lain yang digunakan sebelumnya dalam kursus ini adalah type().

    Fungsi type() digunakan untuk menentukan tipe data dari suatu objek tertentu. Misalnya:

    x = 5
    print(type(x)) 

    Ini akan menampilkan:

    <class 'int'>

    Dalam kasus ini, type(x) mengembalikan tipe variabel x, yang merupakan integer (int).

    Poin Penting

    Anda mempelajari bahwa:

    🌟 Fungsi adalah blok kode yang dapat digunakan kembali yang menjalankan tugas tertentu

    🌟 Fungsi membuat kode Anda lebih terorganisasi

    🌟 Informasi untuk menyelesaikan tugas diberikan sebagai argumen

     

     

     


     

  • Rabu, 07 Mei 2025

    Pengirisan dan Pengindeksan Lanjutan

    Pengindeksan dan pemotongan sangatlah berguna, memungkinkan Anda untuk sepenuhnya mengendalikan data yang Anda ekstrak dari urutan.

    Dalam pelajaran ini, Anda akan membawa keterampilan pengindeksan dan pemotongan Anda ke tingkat berikutnya.

    Python mendukung "pengindeksan dari akhir", yang disebut pengindeksan negatif. Ini berarti nilai terakhir dari suatu urutan memiliki indeks -1.

    img-component 

     

    animals = ["cat", "dog", "bird", "cow"]
    print(animals[-1]) # Last element
    print(animals[-2]) # Second last element
    print(animals[-3:]) # Last 3 elements
    print(animals[-3:-1])

     

    c = ['$', '£', '€', '¥']
    print(c[-1])

    vehicle = 'motorbike'
    print(vehicle[-1])

    Anda dapat menggabungkan pengindeksan positif dengan negatif saat mengiris.

    c = ['$', '£', '€', '¥']
    print(c[1:-1])

    c = ['$', '£', '€', '¥']
    print(c[0:-2])

    Ingat, daftar dapat berubah. Anda dapat mengubah nilai dalam daftar setelah daftar dibuat.

    c = ['$', '£', '€', '¥']
    c[1] = '₣'
    print(c)

    c = ['$', '£', '€', '¥']
    c[:2] = ['₣', '฿']
    print(c)

    vehicle = 'airplane'
    vehicle[:3] = 'water'
    print(vehicle)

    vehicle = 'airplane'
    vehicle[:3] = 'water' 

     

    Pelajaran yang Dapat Dipetik
    Anda mempelajari bahwa:

    🌟 Python mendukung "pengindeksan dari akhir" (pengindeksan negatif)

    🌟 Nilai terakhir dari suatu urutan memiliki indeks -1

     

     

     

     

     

    Selasa, 06 Mei 2025

    KUIS COMMAND LINE & WIRESHARK

     1. Penjelasan:

    **tcpdump** adalah:

    • Tool baris perintah (command-line) untuk menganalisis dan menangkap paket jaringan.

    • Bukan berbasis GUI, melainkan digunakan di terminal atau shell seperti bash atau cmd.

    Fakta-fakta penting:

    • Dapat menampilkan isi paket TCP/IP yang melewati antarmuka jaringan.

    • Sangat kuat untuk troubleshooting dan forensik jaringan.

    • Bisa dipasangkan dengan Wireshark (yang berbasis GUI) untuk analisa lanjutan.


    Jika kamu ingin versi GUI dari tcpdump, maka Wireshark adalah pilihan yang tepat.

     

    2. Penjelasan:

    **Nmap (Network Mapper)** adalah tool open-source yang digunakan untuk:

    ✅ a. Port Scanning

    • Fungsi utama Nmap adalah memindai port terbuka di suatu host atau jaringan.

    ✅ d. Mendeteksi Sistem Operasi

    • Nmap dapat melakukan OS fingerprinting untuk menebak sistem operasi dari host target.


    3. Penjelasan:

    Wireshark adalah aplikasi network protocol analyzer berbasis GUI yang digunakan untuk:

    ✅ b. Melakukan Sniffing

    • Wireshark menangkap dan menganalisis paket jaringan secara real-time (sniffing).

    • Menampilkan detail setiap paket: protokol, alamat IP, port, flag TCP, dll.


    4. Mari kita jumlahkan bilangan biner berikut:

    • 101 (biner) = 5 (desimal)

    • 10 (biner) = 2 (desimal)

    • 1000 (biner) = 8 (desimal)

    Total (desimal):

    5 + 2 + 8 = 15

    Konversi ke biner:

    15 (desimal) = 1111 (biner)


    ✅ Jawaban yang benar adalah: c. 1111

     

    5. Penjelasan:

    Mari kita uraikan bagian penting dari hasil tcpdump:

    192.168.0.57.http > 192.168.0.23.36232

    Format ini menunjukkan:

    • 192.168.0.57 adalah source IP address

    • .http berarti port sumber adalah 80 (HTTP)

    • 192.168.0.23.36232 adalah destination IP address dan port (36232)


    Kesimpulan:

    IP address source adalah 192.168.0.57 → ✔️ Pernyataan BENAR

     

    6. Penjelasan:

    Izin -rwx------ artinya:

    • Pemilik (user) memiliki hak read (r), write (w), dan execute (x).

    • Grup dan others tidak punya izin apa pun.

    Jika ingin mendapatkan -rwx------, maka perintah yang benar adalah:

    chmod 700 nama_file
     

    Mengapa chmod 600 salah?

    • chmod 600 hanya memberikan:

      • rw- kepada pemilik

      • Tidak ada izin untuk grup dan others

    • Tidak ada execute (x) permission, sehingga program tidak bisa dijalankan


    Kesimpulan:

    • Pernyataan "chmod 600 menghasilkan -rwx------" adalah SALAH ✅

    • Harusnya: chmod 700

     

    7. Penjelasan:

    Dalam etika hacker sejati (white hat / ethical hacker), terdapat sejumlah prinsip yang dijunjung tinggi, salah satunya adalah:

    "Tidak menggunakan, menyebarkan, atau mengumpulkan software bajakan (illegal/pirated software)."

    Aturan ini berasal dari prinsip dasar etika dan penghormatan terhadap hak kekayaan intelektual. Hacker sejati fokus pada:

    • Keamanan sistem

    • Eksplorasi teknologi

    • Meningkatkan pengetahuan, bukan merusak atau melanggar hukum


    Jadi:

    • Hacker etis (ethical hacker) berbeda dari cracker atau peretas jahat

    • Menjaga integritas adalah bagian dari etika mereka


    Kesimpulan:
    Pernyataan tersebut adalah BENAR ✅


    8. Berikut adalah penjabaran dari hasil tcpdump yang diberikan:

    08:29:29.379494 IP (tos 0x0, ttl 64, id 15289, offset 0, flags [DF], proto TCP (6), length 1500)
        192.168.0.57.35600 > 192.168.0.56.microsoft-ds: Flags [.], cksum 0x05d8 (correct), seq 36500:37960, ack 370, win 4687, length 1460

    Jawaban:

    1. Port Source (asal)
      → 35600

    2. Panjang Paket
      → 1500 (lihat bagian: length 1500 pada baris pertama)

    3. IP address source (asal)
      → 192.168.0.57

    4. IP address destination (tujuan)
      → 192.168.0.56

    5. Kondisi Paket ditunjukkan oleh
      → Flags [.]
      (menunjukkan ini adalah acknowledgement tanpa SYN/FIN/RST)

    6. Port Destination (tujuan)
      → microsoft-ds = 445 (port untuk SMB - Server Message Block)

     

    9. Penjelasan:

    Di sistem operasi Linux, direktori /root adalah home directory milik user root (superuser). Jadi:

    • cd /root → masuk ke direktori home user root (jika Anda punya akses root).

    • BUKAN cd /home/root, karena user root tidak berada di dalam /home, melainkan langsung di /root.


    Penjelasan opsi lainnya:

    • cd /usr/root → tidak umum, biasanya tidak ada

    • cd /etc → masuk ke direktori konfigurasi sistem

    • cd /var/www → ke folder web server (misal Apache/Nginx)

    • cd / → ke root filesystem (bukan direktori user root)

    • cd /home → ke direktori semua user biasa

    • cd /home/root → tidak umum, biasanya tidak ada user root di sini


    Kesimpulan:

    cd /root adalah perintah untuk pindah ke direktori user root di sistem Linux. ✅

     

     10. Penjelasan:

    Hasil tcpdump berikut:

    ads1-fo.stickyadstv.com.http > 192.168.0.57.37769: Flags [S.], ...
     

    Menunjukkan paket SYN-ACK (Flags [S.]) — ini adalah bagian dari three-way handshake TCP, bukan "sliding window 60".


    Rincian Informasi Penting:

    • Flags [S.] → SYN dan ACK (bukan sliding window)

    • length 60 → panjang total paket (header TCP/IP) — bukan ukuran sliding window

    • win 14480 → ini adalah nilai dari sliding window (bukan 60)


    Kesimpulan:

    Pernyataan "menunjukan paket dengan kondisi 'TCP sliding windows 60'" adalah:

    ❌ Salah (False) — karena sliding window-nya adalah 14480, bukan 60

     

     11. Hasil tcpdump yang Anda berikan menunjukkan bahwa paket TCP diterima dengan baik, karena ada segmen yang kembali dengan flag [S.] yang menandakan paket SYN-ACK yang berarti koneksi TCP berhasil diatur.

    Jadi, jawabannya adalah:

    True



     

     

     

     
     




    Senin, 05 Mei 2025

    Desain Jaringan Hirarkis

    Alamat Fisik dan Logika

    Nama seseorang biasanya tidak berubah. Sebaliknya, alamat seseorang berkaitan dengan tempat tinggal orang tersebut dan dapat berubah. Pada host, alamat MAC tidak berubah; alamat tersebut secara fisik ditetapkan ke NIC host dan dikenal sebagai alamat fisik. Alamat fisik tetap sama di mana pun host ditempatkan pada jaringan.

    Alamat IP mirip dengan alamat seseorang. Alamat ini dikenal sebagai alamat logis karena ditetapkan secara logis berdasarkan lokasi host. Alamat IP, atau alamat jaringan, ditetapkan ke setiap host oleh administrator jaringan berdasarkan jaringan lokal.

    Alamat IP terdiri dari dua bagian. Bagian pertama mengidentifikasi bagian jaringan. Bagian jaringan dari alamat IP akan sama untuk semua host yang terhubung ke jaringan lokal yang sama. Bagian kedua dari alamat IP mengidentifikasi masing-masing host pada jaringan tersebut. Dalam jaringan lokal yang sama, bagian host dari alamat IP bersifat unik untuk setiap host, seperti yang ditunjukkan pada gambar.

    Baik alamat MAC fisik maupun alamat IP logis dibutuhkan komputer agar dapat berkomunikasi pada jaringan hierarkis, seperti halnya nama dan alamat seseorang dibutuhkan untuk mengirim surat.

     


    Analogi Hirarkis

    Bayangkan betapa sulitnya berkomunikasi jika satu-satunya cara untuk mengirim pesan kepada seseorang adalah dengan menggunakan nama orang tersebut. Jika tidak ada alamat jalan, kota, daerah, atau batas negara, menyampaikan pesan kepada orang tertentu di seluruh dunia akan hampir mustahil.

    Amerika Utara

     

    Kanada

     

    Nova Scotia

     

    Halifax

     


    Pada jaringan Ethernet, alamat MAC host mirip dengan nama seseorang. Alamat MAC menunjukkan identitas individual dari host tertentu, tetapi tidak menunjukkan lokasi host tersebut di jaringan. Jika semua host di internet (jutaan jumlahnya) diidentifikasi hanya dengan alamat MAC uniknya, bayangkan betapa sulitnya menemukan satu host saja.

    Selain itu, teknologi Ethernet menghasilkan lalu lintas siaran dalam jumlah besar agar host dapat berkomunikasi. Siaran dikirim ke semua host dalam satu jaringan. Siaran menghabiskan bandwidth dan memperlambat kinerja jaringan. Apa yang akan terjadi jika jutaan host yang terhubung ke internet semuanya berada dalam satu jaringan Ethernet dan menggunakan siaran?

    Karena kedua alasan ini, jaringan Ethernet besar yang terdiri dari banyak host tidaklah efisien. Lebih baik membagi jaringan yang lebih besar menjadi bagian-bagian yang lebih kecil dan lebih mudah dikelola. Salah satu cara untuk membagi jaringan yang lebih besar adalah dengan menggunakan model desain hierarkis.

     

    Access, Distribution, dan Core 

    Lalu lintas IP dikelola berdasarkan karakteristik dan perangkat yang terkait dengan masing-masing dari tiga lapisan model desain jaringan hierarkis: Akses, Distribusi, dan Inti.

    lapisan akses

    Lapisan akses menyediakan titik koneksi bagi perangkat pengguna akhir ke jaringan dan memungkinkan beberapa host untuk terhubung ke host lain melalui perangkat jaringan, biasanya berupa switch, seperti Cisco 2960-XR yang ditunjukkan pada gambar, atau titik akses nirkabel. Biasanya, semua perangkat dalam satu lapisan akses akan memiliki bagian jaringan yang sama dari alamat IP. 

    Jika pesan ditujukan ke host lokal, berdasarkan bagian jaringan dari alamat IP, pesan tersebut tetap bersifat lokal. Jika ditujukan ke jaringan lain, pesan tersebut diteruskan ke lapisan distribusi. Switch menyediakan koneksi ke perangkat lapisan distribusi, biasanya perangkat Lapisan 3 seperti router atau switch layer 3.

    Cisco 2960-XR

     


    Lapisan Distribusi

    Lapisan distribusi menyediakan titik koneksi untuk jaringan terpisah dan mengendalikan aliran informasi antarjaringan. Lapisan ini biasanya berisi switch yang lebih kuat, seperti seri Cisco C9300 yang ditunjukkan pada gambar, daripada lapisan akses serta router untuk perutean antarjaringan. Perangkat lapisan distribusi mengendalikan jenis dan jumlah lalu lintas yang mengalir dari lapisan akses ke lapisan inti. 

    Cisco C9300 Series

     

    Lapisan Inti

    Lapisan inti merupakan lapisan backbone berkecepatan tinggi dengan koneksi redundan (cadangan). Lapisan ini bertanggung jawab untuk mengangkut sejumlah besar data antara beberapa jaringan akhir. Perangkat lapisan inti biasanya mencakup switch dan router berkecepatan tinggi yang sangat kuat, seperti Cisco Catalyst 9600 yang ditunjukkan pada gambar. Sasaran utama lapisan inti adalah mengangkut data dengan cepat.

    Cisco Catalyst 9600

     



    Soal

    1. Penjelasan:

    • Logical address: Ditentukan oleh software (yaitu protokol TCP/IP) dan dapat berubah tergantung jaringan yang digunakan.

      • Contoh: IP address (IPv4 atau IPv6)

    • Physical address: Ditentukan oleh hardware dan unik secara permanen untuk setiap perangkat.

      • Contoh: MAC address (Media Access Control)


    Ringkasan:

    Jenis Alamat Contoh Tetap/Berubah Tingkat Jaringan
    Logical address IP address Bisa berubah Network layer
    Physical address MAC address Tetap Data link layer


    2. Penjelasan:

    • MAC address (Media Access Control address) adalah alamat unik yang diberikan ke setiap perangkat jaringan oleh pabrik (hardware).

    • MAC digunakan di Data Link Layer (Layer 2) dari model OSI.

    • Digunakan untuk komunikasi dalam jaringan lokal (LAN), seperti saat frame dikirim antar perangkat yang terhubung ke switch.


    Perbandingan Singkat:

    Jenis Alamat Contoh Tetap / Berubah Digunakan Oleh
    Physical MAC address Tetap (bisa diubah manual) Switch, NIC (hardware)
    Logical IP address Bisa berubah Router, Internet layer

     

    3. Penjelasan:

    • Physical address = MAC address

      • Ditetapkan oleh pabrik pada perangkat jaringan (misalnya Network Interface Card / NIC).

      • Tidak berubah ketika perangkat berpindah ke jaringan lain.

      • Contoh: 00:1A:2B:3C:4D:5E

    • Logical address = IP address

      • Ditugaskan oleh jaringan (secara manual atau otomatis via DHCP).

      • Berubah ketika perangkat tersambung ke jaringan yang berbeda.


    Contoh Sederhana:

    Jika kamu memindahkan laptop dari jaringan rumah ke Wi-Fi kampus:

    • MAC address: Tetap sama.

    • IP address: Berubah, karena jaringan kampus menggunakan range IP yang berbeda.

     

     

    4. Penjelasan:

    Sebuah IP address terdiri dari dua bagian utama:

    1. Network portion – Mengidentifikasi jaringan tempat perangkat berada.

    2. Host portion – Mengidentifikasi perangkat (host) secara unik di dalam jaringan tersebut.


    Contoh:

    Jika IP address-nya adalah 192.168.1.10 dengan subnet mask 255.255.255.0:

    • Network portion: 192.168.1

    • Host portion: 10 → ini yang unik untuk perangkat tersebut di jaringan tersebut



    5. Penjelasan:

    Dalam jaringan hirarkis 3-layer (Cisco Network Design), ada tiga lapisan utama:

    1. Access Layer

      • Fungsi utama: Memberikan konektivitas langsung ke perangkat end-user, seperti PC, printer, IP phone.

      • Contoh perangkat: Switch akses (Access Switch)

      • Inilah layer di mana Ethernet LAN terhubung ke perangkat.

    2. Distribution Layer

      • Menghubungkan access layer ke core layer.

      • Bertugas melakukan routing antar VLAN, kebijakan keamanan, dan pengendalian lalu lintas.

    3. Core Layer

      • Menyediakan transit cepat dan andal antar bagian jaringan.

      • Fokus pada kinerja tinggi dan redundansi.

    4. Physical Layer (opsional dalam konteks soal)

      • Mengacu ke media fisik (kabel, konektor), bukan lapisan desain jaringan.


    Ringkasan:

    Layer Fungsi utama
    Access Konektivitas ke perangkat pengguna akhir
    Distribution Pengaturan kebijakan dan routing lokal
    Core Backbone jaringan untuk lalu lintas cepat
    Physical Media transmisi (bukan bagian dari desain layer)