Rabu, 22 Juni 2011

Pembuatan snake living DOS

name "pepenk snake"

org     100h

jmp     start

;bagian data

s_size  equ     8

snake dw s_size dup(29)

tail    dw      ?

;bagian kode pengarahan bios
left    equ     4bh
right   equ     4dh
up      equ     48h
down    equ     50h

; arah ular
cur_dir db      left

wait_time dw    1

; pesan latar
msg db "ÌÌÌÌ DOS living snakes ¹¹¹¹", 0dh,0ah,0ah

db "code ini dicontoh dari emu8086 examples.", 0dh,0ah
db "saya hanya sedikit mengganti karakter ular dengan kode ascii.", 0dh,0ah
db "begitu pula dengan jejak yang ditinggalkan oleh ular tersebut," , 0dh,0ah
db "karena dalam keyboard biasa tidak ada karakter seperti itu", 0dh,0ah                                                                          
db "serta mengedit kode kode simpel lainya",0dh,0ah
db "karena pengetahuan saya tentang bahasa assembly masih sangat rendah.", 0dh,0ah, 0ah

db "jadi terimalah project saya apa adanya", 0dh,0ah
db "karena hanya ini yang mampu saya lakukan pada kode yang sudah ada.", 0dh,0ah, 0ah

db "saya tidak mampu untuk membuat kode sendiri dari 0", 0dh,0ah
db "jadi tolong maafkan saya.", 0dh,0ah, 0ah

db "tekan esc untuk keluar.", 0dh,0ah
db "ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ", 0dh,0ah, 0ah
db "tekan tombol apa saja untuk memulai", 0dh,0ah,0ah

db "tekan tombol arah untuk mengarahkan ular saya" ,0dh,0ah,0ah

db "þedited by I NYOMAN HERMAWANþ$"

; bagian kode

start:

; prin pesan latar:
mov dx, offset msg
mov ah, 9
int 21h


; tunggu untuk penekanan key:
mov ah, 00h
int 16h


; sembunyikan text cursor:
mov     ah, 1
mov     ch, 2bh
mov     cl, 0bh
int     10h          


game_loop:

; === select first video page
mov     al, 0  ; page number.
mov     ah, 05h
int     10h

; === show new head:
mov     dx, snake[0]

; set cursor at dl,dh
mov     ah, 02h
int     10h

; prin kode 'ascii 216' sebagai karakter ular:
mov     al, 'H'
mov     ah, 09h
mov     bl, 0ah
mov     cx, 1  
int     10h    


mov     al, 'E'
mov     ah, 09h
mov     bl, 0ch
mov     cx, 1  
int     10h                  


mov     al, 'R'
mov     ah, 09h
mov     bl, 0dh
mov     cx, 1  
int     10h
         

mov     al, 'M'
mov     ah, 09h
mov     bl, 06h
mov     cx, 1  
int     10h


mov     al, 'A'
mov     ah, 09h
mov     bl, 0bh
mov     cx, 1  
int     10h
 

mov     al, 'W'
mov     ah, 09h
mov     bl, 04h
mov     cx, 1  
int     10h
 

mov     al, 'A'
mov     ah, 09h
mov     bl, 05h
mov     cx, 1  
int     10h

             
mov     al, 'N'
mov     ah, 09h
mov     bl, 09h
mov     cx, 1  
int     10h
   

mov     al, 'Ï'
mov     ah, 0ah
mov     bl, 0fh
mov     cx, 1  
int     10h            

; tetapkan ekor:
mov     ax, snake[s_size * 2 - 2]
mov     tail, ax

call    move_snake


; sembunyikan karakter lama:
mov     dx, tail

; set cursor at dl,dh
mov     ah, 02h
int     10h

; prin kode 'ascii 234 ' sebagai jejak ular:
mov     al, 'Û'
mov     ah, 09h
mov     bl, 09h
mov     cx, 1  
int     10h



check_for_key:

; periksa perintah users:
mov     ah, 01h
int     16h
jz      no_key

mov     ah, 00h
int     16h

cmp     al, 1bh    ; esc - key?
je      stop_game  ;

mov     cur_dir, ah

no_key:



mov     ah, 00h
int     1ah
cmp     dx, wait_time
jb      check_for_key
add     dx, 4
mov     wait_time, dx



; === eternal game loop:
jmp     game_loop


stop_game:

; show cursor back:
mov     ah, 1
mov     ch, 0bh
mov     cl, 0bh
int     10h

ret

; bagian fungsi


move_snake proc near

; set es to bios info segment:
mov     ax, 40h
mov     es, ax

  ; point di to tail
  mov   di, s_size * 2 - 2
  ; move all body parts
  ; (last one simply goes away)
  mov   cx, s_size-1
move_array:
  mov   ax, snake[di-2]
  mov   snake[di], ax
  sub   di, 2
  loop  move_array


cmp     cur_dir, left
  je    move_left
cmp     cur_dir, right
  je    move_right
cmp     cur_dir, up
  je    move_up
cmp     cur_dir, down
  je    move_down

jmp     stop_move       ; no direction.


move_left:
  mov   al, b.snake[0]
  dec   al
  mov   b.snake[0], al
  cmp   al, -1
  jne   stop_move      
  mov   al, es:[4ah]    ; col number.
  dec   al
  mov   b.snake[0], al  ; return to right.
  jmp   stop_move

move_right:
  mov   al, b.snake[0]
  inc   al
  mov   b.snake[0], al
  cmp   al, es:[4ah]    ; col number.  
  jb    stop_move
  mov   b.snake[0], 0   ; return to left.
  jmp   stop_move

move_up:
  mov   al, b.snake[1]
  dec   al
  mov   b.snake[1], al
  cmp   al, -1
  jne   stop_move
  mov   al, es:[84h]    ; row number -1.
  mov   b.snake[1], al  ; return to bottom.
  jmp   stop_move

move_down:
  mov   al, b.snake[1]
  inc   al
  mov   b.snake[1], al
  cmp   al, es:[84h]    ; row number -1.
  jbe   stop_move
  mov   b.snake[1], 0   ; return to top.
  jmp   stop_move

stop_move:
  ret
move_snake endp

Selasa, 21 Juni 2011

BAB 1 Komunikasi Data


BAB 1
KOMUNIKASI DATA, JARINGAN DATA, DAN INTERNET

1.1  Komunikasi Dan Jaringan Untuk Perusahaan Masa Kini
Fasilitas komunikasi data dan jaringanyang efektif dan efisien adalah hal yang penting bagi semua perusahaan. Dalam bagian ini, pertama-tama kita melihat kecenderungan yang meningkatkn tantangan bagi para manajer bisnis dalam merencanakan dan mengatur fasilitas-fasilitas tersebut. Kemudian, kita akan melihat secara khusus persyaratan untuk kecepatan transmisi yang selalu besar dan kapasitas jaringan.
Tiga yang secara konsisten mengarahkan arsitektur dan evolusi fasilitas komunikasi data dan jaringan adalah :
  1. Pertumbuhan lalu lintas
  2. Perkembangan layanan baru, dan
  3. Kemajuan teknologi
Tren teknologi memungkinkan adanya persediaan dari kapasitas lalu lintas yang meningkat dan pendukung layanan jangkauan luas. Empat tren teknologi yang penting adalah :
  1. Tren semakin cepat dan semakin murah, baik dalam berhitung maupun komunikasi, terus berlanjut. Berhitung ini maksudnya komputer yang lebih kuat dan kelompok computer yang mampu menyokong aplikasi yang lebih menantang, seperti aplikasi multimedia. Dalam istilah komunikasi, penggunaan serat optic yang semakin meningkat telah membuat harga transmisi menurun dan meningkatkan kapasitas secara besar-besaran. Sebagai contoh, untuk telekomunikasi jarak-jauh dan link jaringan data, penawaran baru-baru ini untuk dense wavelength division multiplexing (DWDM) memungkinkan kapasitas dari banyak tera-bit per detik. Untuk local area network (LAN), banyak perusahaan saat ini mempunyai jaringan tulang punggung Gigabit Ethernet dan beberapa lainnya mulai menyebarkan Ethernet 10-Gbps.
  2. Baik jaringan telekomunikasi berorientasi-suara, seperti public switched telephone network (PSTN) (jaringan telepon pengalih publik), maupun jaringan data, termasuk internet, lebih ‘cerdas’ dari sebelumnya. Terdapat dua bidang ‘kecerdasan’ yang perlu diperhatikan. Pertama, jaringan saat ini dapat memberikan tingkat kualitas layanan (quality of service-QoS) yang berbeda, yang mencakup spesifikasi untuk penundaan maksimum,throughput (lewatan) minimum, dan sebagaimya. Kedua, jarimgan menyediakan berbagai layan  manajemen dan pengamanan jaringan yang dapat disesuaikan dengan kebutuhan masing-masing.
  3. Internet, Web, dan aplikasi-aplikasi yang berhubungan telah muncul sebagai fitur-fitur dominan, baik dalam dunia bisnis maupun pribadi, membuka banyak peluang dan tantangan untuk para manajer.
  4. Terdapat tren mobilitas yang terus meningkat sepanjang decade, membebaskan para pekerja dari kungkungan perusahaan dalam bentuk fisik. Inovasi-inovasinya mencakup voice mail (surat suara), remote area access, pager (penyeranta), faks, e-mail (surat elektronik, telepon nirkabel, telepon dan jaringan seluler serta internet portal. Hasilnya para karyawan dapat membawa pekerjaan mereka ke manapun mereka pergi.
1.1.1        Persyaratan Transmisi Data dan Kapasitas Jaringan
Perubuahan penting dalam cara organisasi-organisasi menjalankan bisnis dan informasi proses telah dipicu oleh perubahan dalam teknologi jaringan dan hal ini juga mengarahkan perubahan itu.Sulit untuk memisahkan anak ayam dan telur. Begitu pila, kegunaan internet, baik untuk bisnis maupun pribadi menunjukkan lingkaran ketergantungan : tersediaanya layanan berbasis-gambar lewat internet (contohnya,Web) telah menghasilkan peningkatan jumlah pengguna dan volume lalu lintas yang dihasilkan oleh masing-masing pengguna. Hal ini akhirnya menghasilkan kebutuhan untuk meningkatkan kecepatan dan efisiensi internet. Di sisi lain, hanya karena kecepatan yang meningkat semacam itulah yang membuat penggunaan aplikasi berbasi-Web cocok bagi para pengguna akhir (end user). Pada bagian ini, kita menyurvei beberapa factor pengguna akhir yang cocok dengan persamaan ini . Kita mulai dengan kebutuhan akan LAN berkecepatan tinggi dalam lingkungan bisnis, Karen kebutuhan ini yang muncul pertama kali dan memaksa perkembangan jaringan. Kemudian, kita beralih pada persyaratan bisnis WAN. Akhirnya, kita memberikan penjelasan singkat tentang dampak dari perubahan elektronik komersial pada persyaratan jaringan.
A. Munculnya LAN Berkecepatan-Tinggi
Komputer pribadi dan workstation mikrokomputer mulai diterima secara luas dalam bisnis menghitung di awal tahun 1980-an dan sekarang telah mencapai status telepon secara maya : sebuah perangkat penting untuk para pekerja kantor. Baru-baru ini, LAN kantor menyajikan layanan konektivitas dasar- menghubungkan personal computer dan terminal mainframe (kerangka induk) dan sistem midrange (kelas menengah) yang menjalankan aplikasi perusahaan, serta menyajikan konektivitas kelompok kerja pada tingkat departemen atau divisi. Di kedua kasus, pola lalu lintas relatif lebih ringan, dengan penekanan pada transfer file dan surat elektronik. LAN yang tersedia untuk tipe beban kerja seperti ini, biasanya Ethernet dan token ring (ring token), cocok untuk lingkungan ini.
Pada tahun 1990-an, dua tern penting ini mengubah peran personal komputer dan karenanya LAN perlu memiliki :
  1. Kecepatan dan kekuatan menghitung dari personal komputer tetap mengalami pertumbuhan yang dahsyat.
  2. Organisasi-organisasi Sistem Manajemen Informasi (management information system-MIS) telah mengenali LAN sebagai platform menghitung yang dapat berjalan dan penting, menghasilkan fokus pada perhitungan jaringan.
Dampak dari tren-tren ini telah meningkatkan volume data yang harus ditangani melalui LAN dan, karena aplikasi lebih interaktif, untuk mengurangi penundaan transfer data. Generasi Ethernet 10-Mbps sebelumnya dan token ring 16-Mbps tidak menunjang persyaratan-persyaratan ini. Berikut adalah contoh-contoh persyaratan untuk LAN berkecepatan tinggi :
  • Centaralized server farm
  • Power workgroup
  • Backbone local berkecepatan-tinggi
B. Kebutuhan Akan WAN Korporat
Seperti awal tahun 1990-an dan di akhir-akhir ini, terdapat penekanan model pengolahan data terpusat dalam banyak organisasi. Pada lingkungan khusus, mungkin saja terdapat fasilitas menghitung yang penting di beberapa kantor wilayah, terdiri dari mainframe atau system midrange yang lengkap. Fasilitas terpusat ini dapat menangani mayoritas aplikasi korporat, termasuk keuangan dasar, akunting, dan program personali, juga banyak aplikasi bisnis yang spesifik lainnya. Kantor yang lebih kecil dan terpencil (contohnya, suatu cabang bank) dapat dilengkapi dengan terminal atau personal komputer dasar yang terhubung dengan salah satu pusat wilayah pada lingkungan berorientasi-transaksi. Model ini mulai berunah di awal 1990-an, dan perubahan tersebut semakin cepat di pertengahan tahun 1990-an. Banyak organisasi telah menyebarkan pegawainya ke kantor-kantor yang lebih kecil. Terdapat peningkatan penggunaan komunikasi jarak jauh (telekom). Semua tren ini berarti semakin banyak data yang harus dipindahkan dari dan ke dalam area luas. Aliran lalu lintas ini berpindah membawa beban yang lebih besar pada LAN backbone dan, tentu saja, pada fasilitas WAN yang digunakan korporat. Oleh karena itu, seperti dalam area local, perubahan dalam pola lalu lintas korporat mengarahkan pada pembuatan WAN berkecepatan-tinggi.
1.2  Model Komunikasi
Tujuan dasar dari sistem komunikasi adalah menjalankan pertukaran data antara dua pihak. komunikasi antara sebuah workstation dan sebuah server yang dihubungkan dengan sebuah jaringan telepon umum. Contoh lainnya adalah pertukaran sinyal-sinyal suara antara dua telepon pada satu jaringan yang sama.
Berikut ini adalah elemen-elemen penting dari model terdebut :
  1. Sumber
  2. Transmiter
  3. Sistem transmisi
  4. Receiver (penerima)
  5. Tujuan
Dalam tabel 1.1 terlampir daftar tugas utama yang harus dijalankan dalam sistem komunikasi data. Daftar tersebut dapat diubah: elemen-elemen bias ditambahkan, item-item dalam daftar dapat digabungkan, dan beberapa item yang merepresentasikan beberapa tugas yang berasal dari “tingkat” system yang berbeda.
Utilisasi Sistem Transmisi
Pengalamatan
Pengantarmukaan (interfacing
Perutean (routing)
Pembangkit sinyal
Pemulihan
Sinkronisasi
Pemformatan pesan
Manajemen pertukaran
Pengamanan
Deteksi dan koreksi kesalahan
Manajemen jaringan
Kendali alir (Flow control)
1.3  Komunikasi Data
1.3.1 Transmisi Informasi
            Bangunan dasar dari fasilitas komunikasi apa pun adalah jalur transmisi. Salah satu pilihan dasar yang dihadapi oleh pengguna bisnis adalah media transmisi. Untuk komunikasi jarak jauh, pilihan tersebut umumnya tidak selalu dibuat oleh pembawa jarak jauh. Selain itu, perubahan teknologi secara pesat telah mengubah campuran dari media yang digunakan. Salah satu yang perlu diperhatikan adalah transmisi serat optik dan transmisi nikabel (contohnya, satelit dan radio). Sekarang ini, dua media tersebut menggerakkan evolusi dari transmisi komunikasi data.
1.3.2 Transmisi dan Media Transmisi
            Informasi dapat dikomunikasikan dengan mengubahnya menjadi sinyal-sinyal elektromagnetik dan mentransmisikan sinyal-sinyal tersebut melalui beberapa media, seperti jaringan telepon twisted-pair (pasangan-berbelit). Media transmisi yang paling sering digunakan adalah jaringan twisted-pair, kabel koaksial, kabel serat optic, serta gelombang mikro terrestrial dan satelit. Kecepatan data yang dapat dicapai dan kecepatan dimana kesalahan dapat terjadi bergatntung pada sifat alami sinyal dan tipe media.
1.3.3 Teknik-Teknik Komunikasi
            Transmisi informasi yang melintasi media transmisi mencakup lebih dari sekedar menyisipkan sinyal pada media. Teknik yang digunakan untuk mengkodekan informasi dalam bentuk sinyal elektromagnetik harus ditentukan. Terdapat beragam cara dal pengkodean yang dapat dilakukan, dan pilihan tersebut mempengaruhi kinerja serta keandalan. Lebih jauh lagi, transmisi informasi yang berhasil melibatkan kerja sama yang tinggi antara berbagai komponen.
1.3.4 Efisiensi Transmisi
            Biaya terbesar pada komputer/fasilitas komunikasi apa pun adalah biaya transmisi. Oleh karena itu, penting untuk memaksimalkan jumlah informasi yang dapat dibawa dari sumber atau meminimalkan kapasitas transmisi yang diperlukan untuk memenuhi persyaratan komunikasi informasi yang ada. Dua cara untuk mencapi tujuan ini adalah multiplexing dan kompresi. Dua teknik ini dapat digunakan secara terpisah atau digabungkan.
1.4  Jaringan
Terdapat ratusan juta komputer yang digunakan di dunia. Selain itu, perluasan memory dan daya pemrosesan dari komputer-komputer ini berati bahwa pengguna dapat membuat mesin-mesin tersebut bekerja pada jenis-jenis aplikasi dan fungsi baru. Oleh karena itu, tekanan dari para pengguna sistem ini terhadap cara-cara berkomunikasi diantara semua mesin ini tak terelakkan lagi. Hal ini mengubah cara berpikir pra vendor dan bagaimana semua produk serta layanan automasi dijual. Pemintaan untuk konektivitas termanifestasi dalam dua persyaratan khusus; kebutuhan akan perangkat lunak komunikasi, dan kebutuhan akan jaringan. Di bagian ini akan menjelaskan secara singkat beragam jaringan yang ada.
  • Wide Area Network (WAN)
Wide area network umumnya mencakup area geografis yang luas, melintasi jalan umum, dan bergantung paling tidak pada sebagian dari sirkuit yang disediakan oleh fasilitas umum. Secara khusus, WAN terdiri dari sejumlah node (simpul) pengalihan yang saling terkoneksi. Transmisi dari perangkat apa pun dikirimkan melalui node internal ke perangkat tujuan yang spesifik. Node-node ini (termasuk node batas) tidak bergantung pada isi data; tetapi, dimaksudkan untuk menyediakan fasilitas pengalihan yang akan memindahkan data dari node ke node sampai mereka mencapai tujuan. Secara tradisional, WAN telah diimplementasikan dengan menggunakan salah satu dari dua teknologi; circuit switching(pengalihan sirkuit) dan packet switching (pengalihan paket). Sedangkan saat ini, frame relay (relay bingkai) dan jaringan ATM telah memiliki peranan penting.
  • Circuit Switching
Di dalam jaringan circuit-switching, jalur komunikasi yang tepat dibangun di antara dua station melalui node jaringan. Jalur itu merupakan suatu rangkaian jaringan fisik yang terhubung di antara node. Contoh yang palin umum dalam circuit switching adalah jaringan telepon.
  • Paket Switching
Jaringan paket switching menggunakan pendekatan yang berbeda. Pada kasus ini, Tidak perlu mengunakan kapasitas transmisi di sepanjang jalur melewati jaringan. Akan tetapi, data dikirim keluar dengan menggunakan urutan potongan kecil yang disebut paket. Masing-masing paket melewati jaringan dari satu node ke node lainnya di sepanjang jalur dari sumber ke tujuan. Pada setiap node, seluruh paket diterima, disimpan dengan cepat, dan ditransmisikan ke node berikutnya. Jaringan paket switching umumnya digunakan unutk komunikasi dari terminal ke komputer dan komputer ke komputer.
  • Frame Relay
Frame relay dikembangkan untuk memamfaatkan kecepatan data yang tinggi dan angka kesalahan yang kecil. Di mana jaringan paket switching yang asli dirancang dengan kecepatan data sampai ke pengguna terakhir sebesar kira-kira 64 kbps, sedangkan jaringan frame relay dirancang agar dapt beroperasi secara efisien pada kecepatan sampai 2 Mbps. Kunci untuk mencapai kecepatan data yang tinggi ini adalah membuang mayoritas tambahan yang berkaitan dengan kontrol kesalahan.
  • ATM
Mode transfer asinkron (asynchronous transfer mode-ATM), terkadang disebut cell relay (relay sel), merupakan puncak perkembengan circuit switching dan paket switching. ATM dapat dipandang sebagai sebuah evolusi dari frame relay. Perbedaan yang paling jelas antara frame relay dengan ATM adalah frame relay mengunakan paket variabel-length yang disebut frame, sedangkan ATM menggunakan paket panjang tetap yang disebut cell.
  • Local Area Network (LAN)
LAN merupakan suatu jaringan komunikasi yang saling menghubungkan berbagai jenis perangkat dan menyediakan alat untuk pertukaran informasi di antara perangkat-perangkat tersebut. LAN cakupannya lebih kecil, dan kecepatan data internal LAN biasanya lebih besar daripada kecepatan data internal WAN.
  • Jaringan Nirkabel
Jaringan nirkabel telah digunakan secara luas dalam lingkungan bisnis. Teknologi nirkabel juga umum, baik untuk wide area voice maupun jaringan data. Jaringan nirkabel memberikan keuntungan dalam pergerakan dalam area serta instalasi dan konfigurasi yang senggang.
1.5  Internet
1.5.1 Asal Mula Internet
            Internet merupakan evolusi dari ARPANET, yang dikembangkan pada tahun 1969 oleh Advance Research Project Agency (ARPA) dari Departemen Pertahanan AS. Hal itu merupakan jaringan paket switching yang pertama kali beroperasi. ARPANET mulai beroperasi di empat lokasi. Sekarang, jumlah host telah mencapai ratusan juta, jumlah pengguna mencapai milyaran, dan jumlah negara yang berpartisipasi mencapai 200. Jumlah koneksi terus bertambah secara eksponensial.
1.5.2 Elemen-Elemen Penting
            Tujuan dari internet tentu saja untuk saling menghubungkan sistem, yang disebut host; ini mencakup PC, workstation, server, mainframe, dan lain-lain. Sebagian besar host yang menggunakan internet terhubung dalam sebuah jaringan, seperti LAN atau WAN, jaringan-jaringan ini nantinya dihubungkan dengan router (perute), masing-masing perute menyertai dua atau lebih jaringan. Pada dasarnya internet beroperasi sebagai berikut. Suatu host mengirimkan data ke host lainnya di manapun dalam internet. Host sumber memecah data untuk dikirimkan melalui urutan paket, disebut  IP datagram (datagram protokol internet) atau IP paket (paket protokol internet). Masing-masing paket mencakup sebuah IP address (alamat protokol internet), karena alamat ini dibawa dalam sebuah paket IP. Berdasarkan alamat tujuan ini, masing-masing paket berjalan melalui serangkaian perute dan jaringan dari sumber ke tujuan. Setiap perute, ketika menerima sebuah paket, akan membuat keputusan perutean dan meneruskan paket tersebut sepanjang jalan hingga mencapai tujuan.
1.5.3 Arsitektur Internet
Sekarang, internet dibangung dari ribuan jaringan bertingkat yang tumpang-tindih. Oleh karena itu, tidaklah mungkin menyajikan deskripsi detail dari arsitektur atau topologi internet secara tepat. Berikut ini adalah terminologi dari internet :
  • Central office (CO)
  • Customer premise equipment (CPE)
  • Internet service provider (ISP)
  • Network service provider ( NSP)
  • Point of presense (POP)
Salah satu elemen penting dari internet adalah seperangkat hostyang menyertainya. Anggap saja host tersebut adalah sebuah komputer. Sekarang komputer ada dalam banyak bentuk, termasuk telepon genggam, dan bahkan mobil. Semua bentuk ini dapat menjadi host bagi internet.

BAB 2 Komunikasi Data


ARSITEKTUR PROTOKOL, TCP/IP, DAN APLIKASI BERBASIS INTERNET

2.1  Kebutuhan Akan Arsitektur Protokol
Ketika komputer, terminal, dan atau perangkat pengolahan data lainnya saling bertukar data, prosedur-prosedur yang terlibat dapat sangat kompleks. Kita ambil contoh transfer sebuah file antara dua komputer. Jalur data antara dua komputer harus ada, baik secara langsung maupun melalui sebuah jaringan komunikasi. Akan tetapi, lebih banyak jalur dibutuhkan. Tugas-tugas khusus yang dilakukan antara lain :
  1. Sistem sumber harus mengaktifkan jalur komunikasi data langsung atau menginformasikan jaringan komunikasi dari identitas sistem tujuan yang diinginkan.
  2. Sistem sumber harus memastikan bahwa sistem tujuan dipersiapkan untuk menerima data.
  3. Aplikasi transfer file pada sistem harus memastikan program manajemen file pada sistem tujuan telah dipersiapkan untuk menerima dan menyimpan data bagi pengguna tertentu.
  4. Jika format yang digunakan dalal dua sistem berbeda, satu atau sistem lainnya harus melakukan fungsi translasi format.
Komunikasi dapat dicapai dengan membuat lapisan yang sama, atau peer, dalam dua sistem berkomunikasi. Lapisan peer berkomunikasi dengan blok data yang telah diformat yang mengikuti seperangkat aturan atau konvensi ynag dikenal sebagai sebuah protokol. Fitur-fitur utama dari sebuah protokol adalah sebagai berikut :
  1. Sintaks : Berhubungan dengan format blok-blok data
  2. Semantik : Mencakup kendali informasi untuk koordinasi penanganan kesalahan
  3. Timing : Mencakup kecepatan pencocokan dan pengurutan
2.2  Arsitektur Potokol TCP/IP
2.2.1 Lapisan TCP/IP
  • Lapisan fisik (physical layer)
  • Lapisan akses jaringan (network access layer)
  • Lapisan internet (internet layer)
  • Lapisan host-ke-host, atau lapisan transpor (transport layer)
  • Lapisan aplikasi (application layer)
2.2.2 Operasi dari TCP dan IP
Bebeapa jenis protokol akses jaringan, seperti Ethernet logic, dulu digunakan untuk menghubungkan sebuah komputer ke subjaringan. Protokol ini memungkinkan host mengirim data sepanjang subjaringan ke host lainnya atau, jika host target ada di subjaringan yang lain, data akan diteruskan ke sebuah perute. IP diimplementasikan di semua sistem akhir dan perute. Hal itu berperan sebagai sebuah relay untuk memindahkan sebuah blok data dari satu host, melalui satu perute atau lebih, ke host lainnya. TCP diimplementasikan hanya di sistem akhir; TCP mengikuti jejak blok data untuk memastikan bahwa semuanya dikirim dengan benar ke aplikasi yang tepat. Untuk komunikasi yang berhasil, setiap entitas dalam keseluruhan dalam sistem harus memiliki alamat yang unik. Sesungguhnya, dua tingkat pengalamatandibutuhkan setiap host pada subjaringan harus memiliki alamat internet global yang unik; hal ini memungkinkan data disampaikan ke host yang tepat. Masing-masing proses dengan sebuah host harus memiliki sebuah alamat yang unik dalam host tersebut; hal ini memungkinkan protokol host-ke-host (TCP) mengantarkan data ke proses yang tepat . Alamat terakhir ini dikenal dengan sebutan port (porta).
Marilah kita mencari sebuah operasi yang sederhana. Misalkan suatu proses berhubungan dengan port 3 pada host A, ingin mengirimkan sebuah pesan ke proses lainnya, yang berhubungan dengan port 2 pada host B. Proses pada A memindahkan pesan turun ke TCP dengan instruksi mengirimkannya ke host B, port 2. TCP memindahkan pesan turun ke TCP dengan instruksi mengirimkannya ke host B. Perhatikan bahwa IP tidak perlu diberitahukan mengenai identitas dari port tujuan. Apa yang perlu diketahui hanyalah data yang ingin disampaikan ke host B. Selanjutnya, IP memindahkan pesan ke lapisan akses jaringan (contohnya, Ethernet logic) dengan instruksi mengirimkannya ke perute J (lompatan pertama dari jalan menuju B).
Pada setiap potongan ini, TCP membubuhkan kendali informasi yang dikenal dengan header (kepala) TCP, membentuk suatu segmen TCP. Kendali informasi akan digunakan oleh entitas protocol TCP peer pada host B. Contoh item-item yang ada di header ini, antara lain:
  • Port tujuan : ketika entitas TCP pada B menerima segmen tersebut, ia harus mengetahui ke mana data tersebut harus dikirimkan.
  • Nomor urutan: TCP memberi nomor pada segmen-segmen yang dikirimkan ke port tujuan tertentu secara berurutan, sehingga jika mereka tiba tidak sesuai dengan urutan, maka entitas TCP pada B akan mengurutkan kembali.
  • Checksum (ceksum) : TCP pengirim meliputi suatu kode yang merupakan suatu fungsi dari isi sisa segmen. TCP penerima mengerjakan perhitungan yang sama dan membandingkan dengan hasil kode yang datang. Ketidaksesuaian akan terjadi jika terdapat kesalahan dalam transmisi.


2.2.3 TCP dan UDP
            Sebagai tambahan pada TCP, terdapat satu protocol tingkat-transpor yang biasanya digunakan sebagai bagian dari deretan protocol TCP/IP; Protocol datagram pengguna (User Datagram Protocol)-UDP). UDP memungkinkan pengiriman, pemeliharaan urutan, atau perlindungan terhadap duplikasi. UDP memungkinkan suatu prosedur untuk mengirimkan pesan ke prosedur lainnya dengan mekanisme protocol yang minimum. Aplikasi yang berorientasi pada transaksi menggunakan UDP; salah satu contohnya adalah SNMP (Simple Neywork Management Protocol atau protokol manajemen jaringan sederhana), protokol manajemen jaringan standar untuk jaringan TCP/IP. Oleh karena UDP tidak berkoneksi, sangat sedikit yang dilakukannya. Pada intinya, hal itu menambahkan sesuatu kemampuan pengalamatan port ke IP.
2.2.4 IP dan IPv6
            Pada tahun 1995, internet Engineering Task Force (IETF), yang mengembangkan standar-standar protokol untuk internet, mengeluarkan suatu spesifikasi untuk generasi IP selanjutnya, yang kemudian dikenal sebagai IPng. Spesifikasi ini kemudian berubah menhadi suatu standar pada tahun 1996, dikenal sebagai IPv6, IPv6 menyediakan sejumlah pengayaan fungsi pada IP yang sudah ada, didesain untuk mengakomodasi kecepatan yang lebih tinggi dari jaringan-jaringan masa kini dan campuran dari aliran data, termasuk grafis dan video yang sekarang menjadi lebih umum.
2.2.5 Aplikasi TCP/IP
            Sejumlah aplikasi telah distandarisasi untuk berorientasi di atas TCP. Kita menyebutkan tiga dari hal yang paling umum di sini.
  1. Protokol pengiriman suratsederhana (Simple mail transfer protocol-SMTP)
Menyediakan fasilitas transfor e-mail dasar. Protokol ini menyediakan suatu mekanisme untuk memindahkan pesan diantara host terpisah. Fitur-fitur SMTP mencakup diskusi lewat e-mail (mailing-list), penerimaan kembali (return receipt), dan meneruskan (forwarding).
  1. Protokol transfer berkas (File transfer protocol-FTP)
Digunakan untuk mengirim file dari satu sistem ke yang lainnya di bawah perintah pengguna. Baik file teks maupun biner diakomodasi, dan protokol tersebut menyediakan fitur-fitur untuk mengendalikan akses pengguna.
  1. TELNET
Menyediakan kemampuan remote logon, yang memungkinkan seseorang pengguna pada sebuah terminal atau PC untuk melakukan login ke sebuah komputer yang berjauhan seolah-olah terhubung langsung ke komputer itu.
Antarmuka protokol, masing-masing lapisan pada protokol TCP/IP beriteraksi dengan lapisan tetangganya. Pada sumber, lapisan aplikasi mengggunakan layanan dari lapisan ujung-ke-ujung (end-to-end) dan membuat data datang ke lapisan tersebut.Hubungan yang serupa terdapat pada antarmuka ujung-ke-ujung dan lapisan internet. Serta pada antarmuka internet dan lapisan akses jaringan. Di tempat tujuannya, setiap lapisan mengirimkan sampai ke lapisan tinggi lainnya.
2.3  Model OSI
Model acuan Open System Interconnection (OSI) dikembangkan oleh International Organization for Standardization (ISO) sebagai sebuah model untuk arsitektur protokol komputer dan sebagai suatu kerangka untuk mengembangkan standar-standar protokol. Model OSI terdiri dari tujuh lapisan, antara lain :
  1. Aplikasi
  2. Presentasi
  3. Sesi
  4. Transpor
  5. Jaringan
  6. Data link
  7. Fisik
Aplikasi

Menyediakan akses ke lingkungan OSI untuk para pengguna dan juga menyediakan layanan informasi terdistribusi.
Presentasi

Menyediakan kebebasan bagi proses aplikasi dari perbedaan-perbedaan representasi data (sintaks)
Sesi

Menyediakan struktur kontrol untuk komunikasi antara aplikasi; membangun, mengatur, dan mengakhiri koneksi (sesi) antara aplikasi yang beroperasi.
 Transpor

Menyediakan transfrer data yang handal dan transparan antara tiap titik akhir; menyediakan pemulihan error dari ujung-ke-ujung dan flow-kontrol
Jaringan

Menyediakan lapisan atas dengan kebebasan transmisi data dan teknologi switching yang digunakan untuk menghubungkan sistem; bertanggung jawab untuk membangun, memelihara, dan mengakhiri koneksi.
Link Data

Menyediakan transfer informasi yang handal melalui link fisik; mengirim blok-blok (frame) dengan sinkronisasi yang dibutuhkan, kontrol kesalahan, dan flow kontrol
Fisik

Berhubungan dengan transmisi bit stream yang tidak terstruktur sepanjang media fisik; berhubungan dengan karakteristik-karakteristik mekanik, elektrik, fungsional dan prosedural untuk mengakses media fisik.
2.4  Standarisasi Arsitektur Protokol
2.4.1 Standarisasi Dalam Kerangka Kerja OSI
            Motivasi penting untuk pengembangan model OSI adalah menyediakan suatu kerangka untuk distandarisasi. Pada model ini, satu standar protokol atau lebih dapay dikembangkan pada setiap lapisan. Model ini mendefinisikan dalam istilah umum fungsi-fungsi yang dijalankan pada lapisan tersebut dan memfasilitasi proses pembuatan standar dalam dua cara, yaitu :
  1. Oleh karena fungsi dari masing-masing lapisan telah terdefinisi, maka standar-standar dapat dikembangkan secara bebas dan bersamaan untuk setiap lapisan . Hal ini mempercepat proses pembuatan standar.
  2. Oleh karena batasan antara lapisan telah terdefinisi, perubahan-perubahan dalam standar di satu lapisan tidak mempengaruhi piranti lunak yang telah ada di lapisan lainnya. Hal ini memmpermudah pengenalan standar-standar baru.
Tiga elemen kunci standarisasi yang dibutuhkan di setiap lapisan :
  • Spesifikasi kontrol
  • Definisi layanan
  • Pengalamatan
2.4.2 Layanan Primitif dan Parameter
            Layanan-layanan di antara lapisan yang saling berdekatan dalam arsitektur OSI dinyatakan dalam istilah primitif dan parameter. Suatu primitf menetapkan fungsi yang dilakukan, dan parameter digunakan untuk memindahkan data serta mengendalikan informasi. Bentuk aktual dari primitif bergantung pada implementasinya. Contohnya adalah sebuah prosedur panggilan. Empat tipe primitif digunakan dalam standar-standar untuk menentukan interaksi di antara lapisan yang berdekatan dalam arsitektur tersebut. Hal ini didefinisikan dalam tabel 2.1.
Permintaan
Sebuah primitif dikeluarkan oleh pengguna untuk menggunakan beberapa layanan dan memindahkan parameter-parameter yang diperlukan dalam menentukan layanan yang diminta sepenuhnya.
Indikasi
Sebuah primitif yang dikeluarkan oleh provider layan digunakan untuk :
  1. Mengindikasi bahwa sebuah prosedur telah digunakan oleh pengguna layanan
  2. Memberitahukan pengguna layanan akan apa diinisiatifkan oleh provider..
Respons
Sebuah primitif dikeluarkan oleh pengguna layanan untuk memperkenalkan atau melengkapi beberapa prosedur yang sebelumnya yang digunakan oleh sebuah indikasi pengguna itu.
Konfirmasi
Sebuah primitif yang dikeluarkan oleh provider layanan untuk memperkenalkan dan melengkapi beberapa prosedur yang sebelumnya oleh permintaan pengguna layanan
Tabel 2.1 Tipe-tipe layanan primitif
2.5 Aplikasi Berbasis Internet
            Sejumlah aplikasi telah distandarisasi untuk beroperasi di atas TCP. Di sini, kita menyebutkan tiga dari yang paling umum :
  1. Protokol pengiriman suratsederhana (Simple mail transfer protocol-SMTP)
Menyediakan fasilitas transfor e-mail dasar. Protokol ini menyediakan suatu mekanisme untuk memindahkan pesan diantara host terpisah. Fitur-fitur SMTP mencakup diskusi lewat e-mail (mailing-list), penerimaan kembali (return receipt), dan meneruskan (forwarding).
  1. Protokol transfer berkas (File transfer protocol-FTP)
Digunakan untuk mengirim file dari satu sistem ke yang lainnya di bawah perintah pengguna. Baik file teks maupun biner diakomodasi, dan protokol tersebut menyediakan fitur-fitur untuk mengendalikan akses pengguna.
  1. TELNET
Menyediakan kemampuan remote logon, yang memungkinkan seseorang pengguna pada sebuah terminal atau PC untuk melakukan login ke sebuah komputer yang berjauhan seolah-olah terhubung langsung ke komputer itu.
2.6 Multimedia
            Dengan meningkatnya ketersediaan akses broadband (jalur lebar) pada internet menyebabkan meningkatnya minat terhadap aplikasi multimedia berbasis-Web dan berbasis-Internet. Satu cara untuk mengatur konsep-konsep yang berhubungan dengan multimedia adalah dengan melihat taksonomi yang menangkap sejumlah dimensi dari bidang ini.
Media
Mengacu pada bentuk informasi yang mencakup teks, gambar tak bergerak, audio, dan video
Multimedia
Interaksi manusia-komputer melibatkan teks, grafis, suara, dan video. Multimedia juga mengacu pada perangkat penyimpanan yang digunakan untuk menyimpan isi multimedia.
Pengaliran media
(Media streaming)
Mengacu pada file-file multimedia, seperti video klip dan audio, yang mulai dimainkan dengan segera atau dalam hitungan detik setelah file tersebut diterima oleh komputer dari internet atau Web. Dengan demikian, isi media tersebut langsung digunakan ketika dikirimkan ddari server, bukan menunggu sampai seluruh isi file diunduh.
Tabel 2.2 Terminologi multimedia
2.6.1 Aplikasi-Aplikasi Multimedia
Domain
Contoh Aplikasi
Manajemen Informasi
Hipermedia, database berkemampuan-multimedia, pencarian berbasis-isi
Hiburan
Game (permainan) komputer, video digital, audio (MP3)
Telekomunikasi
Konferensi video, shared workplace (ruang kerja bersama), komunitas maya
Publikasi/ Pengiriman Informasi
Pelatihan online, buku-buku elektronik, media streaming
Tabel 2.3 Domain dari sistem multimedia dan contoh aplikasi
2.6.2 Lalu Lintas Elastis dan Tidak Elastis
            Lalu lintas elastis dapat menyesuaikan diri, di sepanjang jangkauan yang luas, terhadap perubahan-perubahan dalam penundaan serta throughput (lewatan) sepanjang internet dan masih memenuhi kebutuhan dari aplikasi-aplikasinya. Lalu lintas tidak elastis tidak mudah beradaptasi, terhadap semua perubahan dalam penundaan dan throughput dalm internet Contoh utama adalah lalu lintas real-time, seperti suara dan video. Persyaratan-persyaratan untuk lalu lintas tidak elastis mencakup hal-hal berikut :
  • Throughput
  • Penundaan
  • Variasi penundaan
  • Kehilangan paket