Monday, 10 March 2014
Interprocess Communication 1
Posted by
admin,
on
Monday, March 10, 2014
1. Tentang pengenalan
IPC (Inter-process Communication)
Inter-Process Communication (IPC), adalah mekanisme pertukaran data antara satu proses dengan proses lainnya, baik itu proses yang berada di dalam komputer yang sama ataupun komputer yang berbeda terhubung melalui sebuah jaringan.
IPC dapat dilakukan dengan berbagai metode diantaranya:
- Files, adalah sebuah record yang disimpan dalam disk yang dapat diakses oelh setiap proses. Metode ini dapat dijalankan di kebanyakan OS.
- Signal, adalah komunikasi yang menggunakan perintah untuk mengirim dari satu proses ke proses lainnya. Metode ini dapat dijalankan di kebanyakan OS.
- Socket, Sebuah aliran data yang dikirim melalui interface jaringan, baik untuk proses yang berbeda pada komputer yang sama atau komputer lain. Metode ini dapat dijalankan di kebanyakan OS.
- Message Queue, adalah sebuah data stream anonim yang mirip dengan metode Pipe, tetapi Message Queue menyimpan dan mengambil informasi dalam bentuk packets. Metode ini dapat dijalankan di kebanyakan OS.
- Pipe, adalah sebuah aliran data dua arah yang dihubungkan melalui standar input (stdin) dan output (stdout) dan membaca karakter demi karakter. Metode ini dapat dijalankan di semua sistem yang mendukung POSIX (Portable Operating System Interface), Windows.
- Named Pipe, adalah implementasi Pipe melalui sebuah file pada sistem file, bukan melalui standar input dan output. Metode ini dapat dijalankan di semua sistem yang mendukung POSIX (Portable Operating System Interface), Windows.
- Semaphore, adalah sebuah struktur sederhana yang mensinkronisasikan thread atau proses yang bekerja pada sumber daya yang sama. Metode ini dapat dijalankan di semua sistem yang mendukung POSIX (Portable Operating System Interface), Windows.
- Shared Memory, adalah proses yang memiliki akses ke memori yang sama, sehingga memungkinkan semua proses untuk mengubah dan membaca perubahan yang dilakukan oleh suatu proses. Metode ini dapat dijalankan di semua sistem yang mendukung POSIX (Portable Operating System Interface), Windows.
- Message Passing, adalah proses komunikasi antar bagian sistem untuk membagi variabel yang dibutuhkan. Proses ini menyediakan dua operasi yaitu mengirim pesan dan menerima pesan. Bila dua buah sistem ingin berkomunikasi satu sama lain, maka harus dibuat sebuah link komunikasi antara kedua sistem tersebut. Setelah itu, kedua bagian itu dapat saling bertukar pesan melalui link komunikasi tersebut. Metode ini digunakan di paradigma MPI, Java RMI, CORBA, DDS, MSMQ, Mailslots, QNX.
- Memory-mapped File, adalah sebuah file yang dipetakan ke RAM dan dapat dimodifikasi dengan mengubah alamat memori secara langsung. Metode ini dapat dijalankan di semua sistem yang mendukung POSIX (Portable Operating System Interface), Windows.
Application Programming Interface
Atau bisa kita sebut API, API adalah sebuah adalah sekumpulan perintah, fungsi, dan protocol yang bisa digunakan pengembang software untuk membagun perangkat lunak tertentu. API menyediakan bahan yang biasa diolah seperti perintah dasar, contohnya membuat windows atau tombol. Selain itu, API juga biasa digunakan untuk perintah lanjutan.
Pada sistem terdistribusi API digunakan sebagai penanganan proses send and receive atau singkatnya yaitu melakukan proses komunikasi. terdapat beberapa karakteristik IPC menggunakan API ini
a. Synchronous and asynchronous communication Pada bentuk komunikasi synchronous pengiriman dan penerimaan proses sinkronisasi terjadi pada setiap pesan, pada kasus ini kedua receiver dan sender menggunakan operasi blocking, maksud dari blocking disini adalah sender tidak akan melakukan proses sebelum receiver sinyal bahwa pesan yang dikirim sudah diterima, sedangkan dari segi receiver, maka receiver tidak akan menerima pesan dari sender lain selama pesan dari sender sebelumnya diterima. Sedangkan pada bentuk komunikasi asynchronous menggunakan operasi sender non-blocking, penjelasan tentang operasi non-blocking adalah sender tidak akan mengirim pesan lain sebelum pesan yang sebelumnya diterima oleh receiver. untuk receiver bisa menggunakan operasi blocking atau non-blocking.
b. Message destinations Dengan konsep message destination ini pengirim harus tahu sampai pada tingkat port, karena sebuah penerima bisa saja memiliki banyak pengirim, sehingga untuk mengefektifkan terdapat banyak port untuk menerima data.
c. Reliability Pada karakteristik ini muncul akibat dari banyak terjadinya paket kiriman data yang hilang atau packet lost, maka dari itu bagaimana membuat pesan yang dikirim harus reliable atau handal. faktor validitas dan integritas juga mempengaruhi realible ini.
d. Ordering Pada dasarnya sebuah data pesan sebelum dikirim akan dipecah menjadi bentuk paket-paket dan dikirim secara independen. maka dari itu ordering atau pengurutan paket diperlukan agar ketika penggabungan pada penerima tidak terjadi eror.
SOCKET
Socket adalah interface pada jaringan yang menjadi titik komunikasi antarmesin pada Internet Protocol, dan tentunya tanpa komunikasi ini, tidak akan ada pertukaran data dan informasi jaringan. Socket terdiri dari elemen-elemen utama sebagai berikut:
(1) Protokol.
(2) Local IP.
(3) Local Port.
(4) Remote IP.
(5) Remote Port.
Komunikasi socket jaringan memang tidak mengenal lelah, pertukaran data terjadi terus-menerus dan memegang peranan vital.
Bayangkan sebuah server game online yang berkomunikasi tanpa henti, dimainkan oleh entah berapa banyak client yang tersebar. Ini merupakan salah satu contoh aplikasi dari sekian banyak aplikasi yang menggunakan socket jaringan untuk saling berkomunikasi dan bertukar data.
UDP, singkatan dari User Datagram Protocol, adalah salah satu protokol lapisan transpor TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antara host-host dalam jaringan yang menggunakan TCP/IP. 
Gambar diatas merupakan datagram yang disediakan oleh Java API
TCP (Transmission Control Protocol)
Adalah sekelompok protocol yang mengatur komunikasi data komputer di Internet. Komputer-komputer yang terhubung ke internet berkomunikasi dengan protocol ini. Karena menggunakan bahasa yang sama, yaitu protocol TCP/IP, perbedaan jenis komputer dan system operasi tidak menjadi masalah. Komputer PC dengan system Operasi Windows dapat berkomunikasi dengan komputer Macintosh atau dengan Sun SPARC yang menjalankan Solaris. Jadi, jika sebuah komputer menggunakan protocol TCP/IP dan terhubung langsung ke Internet, maka komputer tersebutdapat berhubungan dengan komputer di belahan dunia manapun yang juga terhubung ke Internet.
Dalam TCP steam communication ada beberapa hal yang di tangani, Message sizes, Flow control, Message duplication and ordering, Message destinations
Eksternal Data Representation and Marshalling
Informasi yang disimpan pada program yang sedang berjalan disebut struktur data. Dimana untuk pengiriman struktur data perlu dilakukan pengubahan kedalam bentuk urutan bytes sebelum dikirim dan diubah kembali menjadi struktur data ketika sudah sampai ditujuan. Pengiriman data pada awal waktu sangat sulit dilakukan, karena tiap data memiliki masing-masing tipe seperti bilangan terdapat interger dan float, bahkan pada integer sendiri terbagi menjadi 2 jenis tipe instruksi (big-endian dan little-endian), oleh karena itu pada saat ini mulai dilakukan penyetaraan metode pengiriman data yang memungkinkan dua komputer untuk dapat saling bertukar data (data biner) :
1. Pesan diubah menjadi bentuk lain yang telah disepakati kedua belah pihak sebelum dikirim dan kemudian diubah kedalam bentuk masing-masing lagi setelah sampai ditujuan.
2. Pesan menggunakan format si pengirim, kemudian baru si penerima mengubahnya.
Namun secara keseluruhan poin 1 adalah yang digunakan, sehingga penggunaan standar eksternal dalam merepresentasikan struktur data disebut external data representation. Sedangkan Marshalling adalah penyusunan item data (translation) kedalam bentuk yang cocok untuk proses pengiriman dan unmarshalling adalah pengubahan susunan item data (generation) tadi pada sisi penerima.
Tiga pendekatan alternatif kepada External Data Representation dan Marshalling diantaranta :
1. Bentuk Umum Data Corba = fokus dengan representasi eksternal untuk jenis terstruktur dan primitif yang dapat dilalui sebagai argumen dan hasil metode remote doa di CORBA.
2. Serialisasi objek Java = fokus terhadap perataan dan representasi data eksernal dari objek single atau pohon objek yang mungkin dibutuhkan untuk dikirim dalam pesan atau disimpan dalam disk.
3. XML (Extensible Markup Language) = mendefnisikan format textual untuk representasi struktur data.
A. CORBA’S Common Data Representation (CDR)
CORBA CDR adalah representasi data eksternal. CDR dapat merepsentasikan semua tipe data yang dapat digunakan sebagai argument dan nilai keluaran dalam remote invocation. Terdapat 15 tipe primitif dalam CDR yaitu :
- shot (16 bit) - double - float
- long (32 bit) - char - any
- unsigned long - boolean - octect
- unsigned short - tipe komposit
Setiap argumen atau hasil dari pengaturan permintaan direpsentasikan dalam urutan byte dalam permintaan atau hasil pesan. Dalam tipe primitif, CDR menjelaskan sebuah representasi untuk permintaan big-endian dan little-endian, dengan nilai yang dikirimkan menyesuaikan dengan si pengirim. Si penerima akan mengubah pesan tersebut apabila membutuhkan instruksi yang berbeda. Sedangkan dalam tipe Constructred, merupakan nilai primitif yang meliputi setiap tipe pembentuknya dimasukkan kedalam baris byte. Contohnya : 
Merupakan 3 field pada struct person, dimana setiap barisnya terdiri dari 4 byte yang mana diasumsikan 1 byte mewakili 1 karakter. Operasi marshalling pada contoh ini dapat dengan otomatis tergenerate / terbentuk dari spesifikasi tipe data yang dikirimkan melalui pesan. Tipe dari struktur data dan tipe dari basis data dijelaskan pada COBRA IDL. Contohnya :
struct Person {
string name;
string place;
unsigned long year;
}
B. Java Object Serialization
Pada Java RMI, kedua objek dan nilai data primitif mungkin akan di kirim sebagai argumen dan hasil dari method permintaan. Objek adalah sebuah contoh/kejadian pada class Java. Contoh Java class yang setara dengan struct person yang didefinisikan dengan COBRA IDL :
Kondisi kelas tersebut mengimplementasikan Serializable interface, dengan tanpa method yang memungkinkan instance nya di serialkan. Serializable dalam java memiliki arti aktifitas menyetarakan sebuah objek atau sekumpulan objek yang terhubung kedalam bentuk yang serial yang memungkinkan untuk disimpan atau dikirimkan melalui pesan.
Pada objek Java dapat memiliki ikatan terhadap objek lain. Ketika sebuah objek di serialkan, maka semua objek yang memiliki hubungan dengannya akan diserialkan ini bertujuan agar ketika objek dibentuk ulang di tujuan (sisi penerima), semua yang berhubungan dengan objek tersebut akan masih terhubung.
Untuk menserialkan objek, informasi dari class objek tersebut harus dituliskan, diikuti dengan tipe dan nama variabel instancenya. Jika variabel instancenya mengacu pada class yang baru maka akan dilakukan hal yang sama, terus menerus hingga tidak terdapat lagi variabel yang mengacu pada suatu class. Setiap kelas memilik penangannannya dan tidak ada class yang ditulis lebih dari satu kali kedalam aliran byte.
Serialization pada objek Java menggunakan refleksi untuk menemukan nama kelas dari objek yang akan diserialkan beserta nama, tipe, dan nilai dari variabel instance. Sedangkan pada sisi Deserialization, nama class pada bentuk serial digunakan untuk membentuk ulang sebuah class dengan objek yang memiliki nama, tipe, serta nilai instancenya sesuai dengan yang diserialkan sebelumnya.
C. Extensible Markup Language (XML)
XML adalah bahasa markup yang didefinisikan oleh World Wide Web Consortium untuk penggunaan Web. Bahasa markup secara umum mengacu pada pengkodingan textual yang merepsentasikan sebuah text dan detail sebagai strukturnya. XML dan HTML diturunkan dari SGML (Standardized Generalized Markup Language), sebuah bahasa markup yang sangat sulit. HTML didesain untuk tampilan dari sebuah web, sedangkan XML didesain untuk menulis struktur dokumen untuk sebuah web.
Item data XML di tag dengan string “markup”. Tag ini berfungsi untuk menjelaskan struktur logika dari data dan asosiasi passangan nilai atribut dengan struktur logika. Dimana penggunaan tag ini berbeda dengan HTML yang berfungsi untuk menspesifikasikan bagaimana sebuah browser dapat menampilkan teks. Fungsi dari XML itu sendiri adalah untuk memungkinkan komunikasi antara client dengan web service, pendefinisian interface, serta properti web lainnya.
Contoh dari XML untuk kasus struct person :
Pada XML ini terdiri dari tag dan karater data. Karakter data adalah sebuah data pada contoh diatas adalah “Smith” atau “1984”, dan dokumen XML diapit oleh 2 buah tag contohnya adalah dengan
Element dan atribut pada XML
1. Element : Merupakan data yang diapit oleh kedua tag. Contohnya : Smith
2. Atribut : Merupakan pemberian id/label terhadap data. Contohnya : id=”123456”
3. Nama : Nama dari tag dan attribut dapat diawali dengan garis bawah / sama dengan, yang dilanjutkan dengan huruf,angka, dll. Namun tidak bisa mengawali dengan kata “xml”.
4. Data Biner : Perepsentasian data kedalam biner menggunakan basis 64 dengan hanya mampu mengenkripsi karakter aplhanumerik ditambah dengan +,/ dan =.
Parsing dan bentuk dokumen
Bentuk dokumen umum yang benar adalah .. dan .. . Selain itu maka akan muncul fatal error.
1. CDATA, untuk penguraian konten dari elemen karena mungkin mengandung struktur bersarang. Kemudian untuk spesial karakter dapat juga menggunakan CDATA. Sebagai contoh :
2. XML Prolog,s etiap dokumen XML harus memiliki prolog / pendahuluan yang memiliki paling tidak spesifikasi dari versi XML. Dapat juga ditambah dengan jenis encoding dll. Contoh 
XML namespaces
Adalah sekumpulan nama untuk koleksi dari tipe element dan attribut yang tujukan dengan URL. Dokumen XML lain dapat menggunakan XML namespaces dengan mangacu ke URLnya. Contoh :
XML Schemas
Menjelaskan tentang elemen dan atribut yang dapat muncul dalam dokumen tersebut, bagaimana elemen di sarangkan. Contoh :
D. Remote Object References
adalah sebuah pengidentifikasi untuk remote objek yang cocok dalam sebuah sistem terdistribusi. Remote objek digunakan ketika client meminta sebuah method melalui sebuah server dengan menggunakan remote objek. Remote Object References haruslah unik karena banyak client yang menggunakan metode ini untuk miminta objek. Ada beberapa cara untuk membuat teknik ini menjadi unik, diantaranya adalah menggabungkan alamat IP user dengan nomer port dari proses yang dibentuk, ditambah dengan waktu pembentukan proses dan sebuah nomor objek lokal (nomor proses pembentukan objek).
Saturday, 1 March 2014
Dasar Mengoperasikan Adt-bundle Untuk Develop dan Programming Android
Posted by
admin,
on
Saturday, March 01, 2014
Jika anda
belum memiliki software Adt-bundle bisa di download di link berikut : http://developer.android.com/sdk/index.html,
Ada akan mendownload file dalam bentuk .RAR, jika sudah selesai extract file tersebut maka akan muncul
folder sebagai berikut :
Untuk menjalankan
eclipse sebagai IDE buka folder eclipse
> jalankan eclipse.exe
Untuk pertama kali run
anda diminta menentukan workspace (tempat penyimpanan project), untuk direktori
workspace bebas sesuaikan dengan keinginan anda. Jika sudah run biasa muncul
quick start, langsung close tab quick start tersebut.
Maka kurang lebih
tampilan akan seperti berikut
Sedikit penjelasan : di bagian kiri merupakan kumpulan
project yang sudah anda create, sedangkan di samping kanan merupakan editor
untuk kodingan yang akan dibuat.
Mulai
develop android
Pertama kita harus membuat profile emulator sebagai tempat
running android.
Pilih Window > Android
Virtual Device Manager > Pilih New
Kemudian
isikan bebera device requirement
Kemudian
pilih ok
Kemudian
sebelumnya kita harus membuat project baru, caranya sbb :
Yaitu
pertama kita harus membuat project android baru.
Klik
tombol Next sampai tombol Finish menjadi aktif, dan klik tombol finish
Ketika project baru
selesai dibuat maka akan muncul filder seperti diatas di package explorer.
Terdapat 3 bagian
penting yang penulis beri tanda kuning,
- 1. Src
Dibagian
ini merupakan bagian logic dari aplikasi yang akan ada buat, pada src terdapat
package dan di dalam package terdapat file dengan extensi .java, Android menggunakan java sebagai bahasa pemrogramannya
- 2. Layout
Pada
bagian layout terdapat file dengan exntensi .xml, file ini berfungsi untuk
menangani tampilan dari aplikasi, bisa disebut tempat membuat user interface. Ketika
anda klik maka file xml ini akan muncul pada bagian editor. Ada dua cara untuk
membuat user interface, pertama drag and drop- dengan cara memilih tab Graphical Layout pada bagian bawah file,
kedua by code dengan memilih .xml dibagian bawah
- 3. AndroidManifest.xml
Pada
android manifest merupakan represesntasi dari aplikasi yang anda buat, kenapa? Karena
didalam manifest ini harus anda isi dengan class2 ingin anda jadikan sebagai
activity. Terdapat juga deklarasi pormission terhadap akses device, terdapat
juga nama packaga, versi plikasi dll. misal aplikasi anda akan menggunakan
kamera maka akses tersebut harus didefinisikan di manifest ini.
Cara menjalankan aplikasi yang sudah dibuat
Untuk memastikan apakah emulator benar2 bisa menjalankan aplikasi kita perlu memunculkan menu console, caranya pilih menu window di bagian atas pilih show view> console jika tidak ada pilih other masuk ke folder android kemudian pilih console
kemudian pastikan di tampilan console tidak terjadi "emulator-5556 disconnected! Cancelling 'nama.package activity launch'!"
^ hal ini berarti anda harus menjalankan ulang emulator anda
^ Ini berarti aplikasi anda berhasil di run
Download ebook pemrograman android disini
--Selamat
mencoba dan semoga bermafaat-
Saturday, 22 February 2014
NETWORKING AND INTERNETWORKING
Posted by
admin,
on
Saturday, February 22, 2014
3.1 Introduction
Sistem terdistribusi menggunakan berbagai macam arsitektur jaringan, seperti local networking (Jaringan yang hany...), wide networking (jaringan ….) , internetworking (jaringan yang...) , untuk melakukan komunikasi. ada beberapa faktor kemampuan sistem yang dipengarhi oleh sistem komunikasi sistem terdistribusi yaitu performance, reliabilitas, scalabilitas, mobilitas and qualitas dari layanan.
Selain arsitektur jaringan sistem terdistribusi juga menggunakan bermaca-macam media transmisi, ada yang menggunakan kabel udp, fiber optic. dan perangkat keras yang lain seperti penggunaan router, switch, repeater. dan menggunakan macam2 software yang berbeda untuk melakukan komunikasi. akibat dari hterogenitas perangkat pendukung komunikasi sistem terdistribusi menyebabkan pengaruh yang bermacam-macam juga pada performansi sistem terdistribusi.
Lebih mengerucut lagi komunikasi sistem terdistribusi di dukung oleh berbagai macam komunikasi-komunikasi kecil yang dilakukan antar hardware pendukungnya, dalam konteks ini kita sebut dengan komunikasi subsistem
Networking issues for distributed systems
Pada awal jaringan komputer di desain pada skala kecil sehingga aplikasi yang digunakan masih bersifat sederhana, namun pada saat komersialisai internet terjadi banyak hubungan node yang membentuk suatu sistem yang luas dan besar sehingga kebutuhan akan reliabilitas, scalabilitas, mobilitas, keamanan dan kualitas dari services..
Performance • Performansi jaringan memperhatikan 2 aspek :
Latency adalah delay antara pesan dikirim dan sampai pada pesan diterima pada komputer tujuan. Kedua adalah Data transfer rate merupakan kecepatan transfer data biasanya ditulis dalam bit per second.
Scalabilitas - Merupakan suatu aspek yang mengacu pada semakin luasnya jaringan yang harus di tangani, dulu jaringan merupakan sebuah objek yang independent, karena ditemukannya internet semua jaringan yang ada melakukan keterhubungan sehingga membantuk jaringan yang luas.
Realibilitas - realibilitas pada sistem terdistribusi meintik tekankan pada pengangan eror, atau eror recovery. dengan semakin rumitnya arsitektur jaringan menyebabkan eror akan semakin menigkat dengan begitu dibutuhkan sistem yang handal.
Security - Atau bisa disebut keamanan , keamana digunakan sebagai pelindung dari derangan baik dari hacker ataupun virus. ada beberpa fitur yang di tambahkan sebagai pendukung keamanan pada jaringan seperti firewall, gateway dll.
Mobilitas - Dengan adanya teknologi jaringan tanpa kabel atau wireless maka mobilitas perangkan sangat mungkin dilakukan misalnya pada laptop handphone.
Kualitas layanan - Faktor yang diperhatikan selain beberpa faktor diatas adalah kualitas layanan, kualitas layanan ini bagaimana sebuah request dari client ditangani oleh server. dan bagai mana penjadwalan yang dilakukan.
Multicasting- Karena Jaringan tidak hanya komunikasi antara 2 komputer tapi sudah ribuan komputer maka dimungkinkan sebuah komputer menerima ribuan request dari client, maka diperlukan suatu penanganan atau disebut multi processing.
3.2 Types of network
Pada umumnya jaringan (network) dibagi menjadi beberapa tipe berdasarkan jangkauannya, yaitu:
Personal Area Networks (PANs), adalah jaringan komunikasi komputer (termasuk juga perangkat digital) yang hanya berjarak beberapa meter. Tipe ini memiliki cost yang sangat rendah. PAN sendiri memiliki dua tipe yaitu yang berbasis kabel (wired) dan nirkabel (wireless).
Local Area Networks (LANs), adalah tipe jaringan lokal yang dapat membawa pesan dengan kecepatan tinggi melalui media komunikasi berupa kabel (twisted pair, kabel koaksial, dan kabel optik) yang biasanya digunakan dalam lingkungan kecil seperti jaringan perkantoran, rumah dan kampus dan biasanya terdapat hub dan switch sebagai komponen penyusun jaringan LAN. Total bandwith dalam LAN tinggi dan latencynya rendah, kecuali ketika traffic sangat tinggi.
Wired Area Networks (WANs), adalah jaringan dengan kecepatan membawa pesan yang rendah karena terletak di berbagai kota, negara atau benua yang memiliki jarak yang jauh dan biasanya merupakan jaringan milik sebuah organisasi. WAN mengunakan media komunikasi berupa router yang mengelola jaringan komunikasi dan merutekan pesan atau paket ke tujuan. Namun WAN memiliki delay di setiap rutenya sehingga nilai latencynya dihitung berdasarkan rute yang dilalui.
Metropolitan Area Networks (MANs), adalah jaringan yang tersebar di kota-kota besar yang biasanya digunakan untuk transmisi video, suara dan data lainnya dengan jarak kurang lebih 50 Km dan memiliki meida komunikasi berupa kabel tembaga dengan bandwith yang tinggi atau dengan kabel optik.
Wireless Local Area Networks (WLANs), adalah jaringan lokal nirkabel yang tidak menggunakan media komunikasi berupa kabel seperti LAN. WLAN biasanya digunakan untuk menyediakan jaringan untuk perangkat mobile, atau untuk mengurangi cost dari kabel yang digunakan oleh jaringan LAN. WLAN menggunakan standar IEEE 802.11 (WiFi).
Wireless Metropolitan Area Networks (WMANs), adalah jaringan yang menggunakan standar IEEE 802.16 (WiMAX) yang bertujuan untuk memberi alternatif dari koneksi jaringan yang berbasis kabel ke rumah-rumah dan perkantoran dan juga untuk menggantikan jaringan WiFi.
Wireless Wide Area Networks (WWANs), adalah jaringan yang digunakan hampir di seluruh dunia untuk telepon genggam seperti standar jaringan GSM (Global System for Mobile communications) yang bisa beroperasi di area yang sangat luas (seperti komunikasi negara antar negara menggunakan telepon genggam).
Kecepatan jaringan ini relatif rendah, namun dengan adanya jaringan generasi ketiga telepon genggam, yaitu 3G yang memiliki kecepatan yang lebih baik. Bahkan sudah ada jaringan 4G yang memiliki kecepat lebih tinggi lagi dibanding 3G.
Berikut adalah tabel perbandingan performansi dari tiap tipe jaringan diatas:
Ada pula Internetworks, yaitu subsistem dalam komunikasi yang menghubungkan antar dua atau lebih segmen jaringan dimana jaringan tersebut saling dihubungkan untuk menyediakan fasilitas komunikasi data sehigga jaringan yang terbentuk lebih besar lagi. Jaringan tersebut dihubungkan melalui sebuah router.
Namun dari beberapa tipe jaringan diatas, tentu saja ada error yang bisa terjadi. Kehandalan dari tiap tipe jaringan dapat dinilai dari media komunikasi yang digunakan dimana jaringan yang menggunakan kabel lebih handal dibanding dengan jaringan wireless, dikarenakan jaringan wireles mendapati kendala seperti packet loss akibat faktor dari luar yang bisa mempengaruhi transmisi data. Namun tidak meutup kemungkinan juga terjadinya packet loss di jaringan berbasis kabel, karen packet loss juga bisa disebabkan oleh adanya delay dan buffer overflow pada switch dan node yang dituju.
3.3 Network principles
Dasar dari semua jaringan internet adalah teknik paket switching yang dapat memungkinkan paket data dikirim / dialamatkan kebeberapa tujuan yang berbeda menggunakan satu link, dimana paket data diproses menggunakan teknik buffer, ketika link kosong maka paket data baru akan di kirim lewat satu link tersebut.
3.3.1 Packet Transmission (Pengiriman Paket)
Sebagian besar aplikasi pada jaringan komputer bertugas untuk mengirimkan sejumlah informasi lojik / pesan yang dimana pesan tersebut dipecah-pecah terlebih dahulu kedalam paket-paket. Contohnya adalah urutan data biner dengan panjang berbatas yang juga disematkan kode sumber dan tujuan komputer. Pemecahan pesan menjadi paket memiliki fungsi yaitu :
a. Agar setiap komputer mampu mengalokasikan penyimpanan data yang cukup untuk menampung kemungkinan data yang besar, karena buffer tidak mampu menampung data besar sekaligus, sehingga harus dipecah-pecah menjadi bagian kecil
b. Untuk mencegah delay / penundaan pengiriman pesan, jika data tidak dipecah maka pasti dalam antrian data selanjutnya harus menunggu sampai data pertama selesai dikirim, dengan pemecahan dapat dimungkinkan untuk mengirimkan paket-paket yang berbeda.
3.3.2 Data Streaming
Streaming merupakan proses pengiriman dan penampilan multimedia (audio/video) secara real time. Dimana penjaminan terhadap proses ini harus tinggi dengan latency yang serendah-rendahnya, karena waktu memainkan frame media tersebut harus sama saat pada client juga. Bandwidth rata-rata yang dibutuhkan untuk melakukan video streaming adalah 1,5 Mbpd untuk data terkompresi dan 120 Mbps untuk data tidak terkompresi, dengan jenis transmisi umumnya adalah UDP. Namun dikarenakan UDP masih terdapat kekurangan, maka dibuatlah pembangunan rute saluran dari sumber ke tujuan dimana rute saluran tersebut akan diatur sebelumnya, dimana hal ini untuk menentukan mana saluran yang kosong / sedikit trafficnya. Pembuatan rute ini bertujuan untuk menyeimbangkan jaringan agar proses data streaming semakin lancar dan data tidak hilang.
Teknologi jaringan yang dapat menyediakan bandwidth tinggi adalah jaringan ATM dengan jenis IP yaitu IPv6 yang dapat menurunkan tingkat latency dan dapat menjamin kualitas service. Bagian komunikasi sistem yang menyediakan QoS harus memiliki kemampuan untuk preallocation sumber daya jaringan.
3.3.3 Switching Schemes
Sebuah jaringan terdiri dari beberapa set node yang terhubungkan oleh sirkuit, untuk mengirimkan informasi antar node tersebut maka dibutuhkan sebuah sistem switching.
a. Broadcast merupakan teknik pengiriman data yang tidak melibatkan switching. Sehingga semua informasi dikirimkan ke semua node dan tujuan dari pengiriman informasi ini akan terdeteksi oleh user potensial dengan melihat address pengirimnya.
b. Circuit Switching
Teknik ini menyerupai cara kita menggunakan telepon, dimana ketika pengirim akan mengirimkan data, maka jalur dari sumber akan diteruskan ke server untuk kemudian dari server akan diteruskan ke jalur yang sesuai dengan permintaan sumber pengirim.
c. Packet Switching (store and forward network)
Hampir sama dengan teknik Circuit, namun pada packet switching yang dipertukarkan pada server / pos penukaran adalah berupa paket data, dimana ketika paket data datang pada pos 1 maka paket tersebut akan disimpan di memori komputer pos 1, kemudian akan diteruskan oleh suatu proram ke pos terdekat berikutnya.
d. Frame Relay
Pada kenyataannya, menggunakan teknik circuit dan packet mengalamin kendala pada waktu delay yang lumayan besar, oleh karena itu pada teknik frame relay akan dapat menangani waktu delay tersebut dengan menukar (switching) paket-paket kecil (frame) pada sebuah kawat / jalur kecil. Jadi ketika pertukaran node terjadi, maka akan dicek bit pertama pada data yang masuk kesana, kemudian untuk frame-frame dari data tersebut tidak akan disimpan pada node, melaikan akan diteruskan hingga sampai tujuan, sehingga akan menurutkan waktu delay.
3.3.4 Protocols
Protokol merupakan sekumpulan aturan dan format yang digunakan dalam berkomunikasi antar proses dalam perihal melaksanakan sebuah tugas. Definisi dari protokol memiliki 2 bagian penting yaitu :
a. spesifikasi dari urutan pesan yang harus ditukar;
b. spesifikasi dari format data pada pesan.
Sebuah protokol diimplementasikan oleh sepasang modul software yang terletak pada sisi pengirim dan penerima. Dimana alur protokol akan didahului oleh protokol lapis atas, kemudian turun kelapisan bawah (hardware) dan di sisi penerima akan berjalan sebaliknya.
1. Protocol Layers
Software jaringan tersusun dari hirarki lapisan-lapisan, dimana setiap lapisan merepresentasikan antarmuka ke layar diatasnya. Sebuah layer itu terepresentasikan oleh setiap modul, dimana modul-modul tersebut akan saling berkomunikasi pada layer yang sejenis di setiap komputer yang terhubung dengannya. Namun tetap modul tidak dapat begitu saja dapat berkomunikasi antar sesama, melaikan harus melewati hirarki layer yang ada di tempatnya (komputernya).
Bentuk data di setiap layer hampir berbeda satu dengan yang lainnya dimana disetiap layer akan di enkapsulasi untuk dicocokan sesuai dengan layernya.
2. Protocol Suites
Merupakan sekumpulan set yang utuh dari layer-layer pada jaringan. Pada umumnya contoh jenis protocol suites adalah OSI (Open Sistem Interkoneksi) layer dengan 7 lapisan layernya, dimana selain itu terdapat pula jenis TCP/IP dengan 5 lapisan layernya. Untuk saat ini akan membahas mengenai OSI layer.
3. Packet Assembly
Pada lapisan transport biasanya dilakukan pemecahan pesan menjadi paket-paket yang siap dikirimkan dan kemudian merangkai ulang paket-paket tadi menjadi pesan yang sama. Pada layer network, paket yang masuk kesana akan terdiri dari header dan panjang data, dimana panjang data / maximum transfer unit (MTU). Jika paket data melebihi MTU yang telah ditentukan maka paket tersebut harus dipecah lagi menyesuaikan dengan batas MTU.
4. Ports
Tugas pada layer transport adalah untuk memberikan layanan pengiriman pesan antar pasangan port jaringan . Ports adalah software yang menjelaskan tentang tujuan pada komputer pengguna, dimana ports berada pada proses-proses sehingga memungkinkan pengiriman paket data ke node tujuan sesuai dengan alamat yang telah di tentukan pada layer ini. Ininya ports berugas untuk merouting data agar sampe dengan tujuan dengan tepat.
5. Addressing
Alamat dari sebuah jaringan merupakan sebuah angka numerik yang unik yang menerangkan sebuah komputer pengguna dan memungkinkan untuk dilacak oleh nodes. Contohnya internet service yang memperbolehkan node untuk dilacak adalah HTTP dan FTP, dengan nomor port HTTP adalah 80 sedangkan FTP adalah 21.
6. Packet Delivery
Terdapat 2 jenis pendekatan mengenai pengiriman paket data :
a. Datagram packet delivery
Merupakan jenis pengiriman paket data dimana paket data tidak perlu untuk di setup sebelum dikirim dan ketika paket data telah dikirim maka jaringan tidak memiliki informasi mengenai data tersebut / acuh. Urutan pengiriman paket data dapat mengikuti rute yang berbeda-beda sehingga memungkinkan paket data yang diterima tidak berurutan seperti semula.
Contohnya adalah UDP.
b. Virtual Circuit Packet Delivery
Pada jenis pengiriman ini, akan ditentukan rute untuk pengiriman dengan menggunakan virtual circuit dimana akan dilakukan pengecekan kesetiap node yang memungkinkan untuk dibuat rute.Contohnya adalah TCP.
3.3.5 Routing
Routing adalah suatu fungsi dalam suatu jaringan kecuali pada jaringan LAN contohnya Ethernet. Pada jaringan yang berskala luas diberlakukan adaptive routing : merupakan rute terbaik untuk berkomunikasi antara dua titik dalam jaringan yang dievaluasi berkala, dengan mempertimbangkan arus lalu lintas dalam jaringan. Terdapat 2 bagian pada algoritma routing, yaitu :
1. Masing- masing paket menentukan rute mana yang akan ditempuh saat perjalanan di jaringan. Pada lapisan circuit-switch dan framerelay jaringan seperti ATM dna rute ditentukan setiap sirkuit virtual atau koneksi didirikan.
2. Dinamis
Algoritma yang digunakan saat routing yaitu distance vector algorithm. Ada method yang namanya Bellman method, metode ini memanfaatkan shoertest past algorithem sehingga cocok untuk digunakan pada pada penentuan rute di jaringan yang luas.
Dirouting sendiri memiliki yang namanya routing table, routing table berisikan satu kemungkinan rute (next hop) dalam perjalanan suatu paket.Pertukaran info antar node dilakukan dengan mengirim summary pada routing table menggunakan Router Information protocol (RIP). RIP secara informal mendeskripsikan secara::
1. Periodik, setiap local routing table berubah nilainya maka table summary akan memberitahukan node tetangganya.
2. Saat informasi telah diterima dari router tetangga, table yang menerima info akan memperlihatkan rute perjalanan baru dengan kondisi lower-cost. Setelah mendapat nilai rute yang terbaik maka table akan memperbaharui isi local table dengan rute baru tersebut.
Berikut pseudocode algoritmanya yang terjadi di routing table :
Send: Each t seconds or when Tl changes, send Tl on each non-faulty outgoing link.
Receive: Whenever a routing table Tr is received on link n:
for all rows Rr in Tr {
if (Rr.link n) {
Rr.cost = Rr.cost + 1;
Rr.link = n;
if (Rr.destination is not in Tl) add Rr to Tl; // add new destination to Tl
else for all rows Rl in Tl {
if (Rr.destination = Rl.destination and
(Rr.cost < Rl.cost or Rl.link = n)) Rl = Rr;
// Rr.cost < Rl.cost : remote node has better route
// Rl.link = n : remote node is more authoritative
}
}
3.3.6 Congestion Control
Congestion kontrol merupakan kapasitas dalam suatu jaringan yang memiliki batas link komunikasi dan switching node. Jika kapsitas mendakati bebanya maka paket yang ada didalam node akan dikirimkan. Jika kapasitas melebihi beban maka proses yang terjadi akan berlanjut dan bekerja sampai batas ruang yang tersedia.
Setelah kondisi mencapai node yang diinginkan, tetapi akan ada beberapa node yang tidak sampai karena ada beberapa packet data yang tidak dikirim karen sesekali mengalami loss packet. Jika ada tingkat packet loss yang mencapai tingkat tinggi efeknya akan berakibat pada throuput didalam jaringan.
Jika didalam perjalanannya terjadi high traffic maka langkah terbaik yang diamb il agar paket data bisa terkirim semua sampai tujuan yaitu dengan menahan paket di node awal sampai traffic mengalami penurunan kemudian baru dilanjutkan kembali. Tetapi juga ada kondisi dimana di suatu traffic mengalami buffering paket yang lebih lama sehingga menyebabkan aplikasi pada akhirnya yang harus menangani jaringan sampai selesai.
Seacara umum, congestion control memiliki tujuan untuk menginformasikan segala bentuk node baik yang mengalami high traffic menjadi berkurang. Semua lapisan jaringan berbasis datagram, IP, dan ethernet. Kualitas pada layananpun mempengaruhi dari congestion control ini, sehingga dapat memonitoring dan memastikan bahwa proses pada jalur dapat dilakukan sesuahi kebutuhan yang ada.
3.3.7 Internetworking
Membangun suatu jaringan yang terintegrasi (internetworking) harus memiliiki banyak subnet. Untuk itu dibutuhkanlah hal-hal seperti
1. Skema pengalamatan internetwork terpadu yang memungkinkan paket yang akan ditujukan kepada semua host yang terhubung ke setiap subnet
2. Protokol mendefinisikan format paket internetwork dan memberikan aturan sesuaiyang mereka tangani
3. Interkoneksi komponen yang rute paket ke tujuan mereka berada dalam alamat internetwork, transmisi paket menggunakan subnet dengan berbagai teknologi jaringan.
Berikut contoh gambaran dari internetworking pada sebuah university
Routers : Router bertanggung jawab untuk meneruskan paket internetwork yang tiba pada setiap sambungan ke koneksi keluar yang benar, sebagaimana dijelaskan di atas. Mereka mempertahankan tabel routing untuk tujuan itu.
Bridges : Bridge menghubungkan jaringan dari berbagai jenis. Beberapa bridge menghubungkan ke beberapa jaringan, dan ini disebut sebagai bridge / router karena mereka juga melakukan fungsi routing.
Hubs : Hub merupakan cara mudah untuk menghubungkan host dan memperluas segmen Ethernet dan broadcast teknologi jaringan lokal lainnya. Hub juga dapat digunakan untuk mengatasi keterbatasan jarak segmen tunggal dan menyediakan cara untuk menambahkan host.
Switches : Switch memiliki fungsi yang sama dengan router, tapi untuk jaringan lokal (biasanya Ethernets) saja. Keuntungan dari switch daripada hub adalah bahwa mereka memisahkan lalu lintas masuk dan mengirimkan hanya pada jaringan keluar yang relevan, mengurangi kemacetan di sisi lain jaringan yang terhubung.
Tunneling : Sepasang node yang terhubung ke jaringan yang terpisah dari jenis yang sama dapat berkomunikasi melalui jenis lain pada jaringan dengan membangun protokol ‘tunneling’'.Protokol ini merupakan lapisan perangkat lunak yang mengirimkan paket melalui lingkungan jaringan asing.
Berikut gambar yang mengilustrasikan penggunaan tunneling untuk mendukung migrasi Internet ke IPv6 Protokol.
Paket IPv6 diringkas dalam IPv4 dan diangkut melalui intervensi jaringan IPv4.
Tuesday, 21 January 2014
MATERI KULIAH SEM-7
Posted by
admin,
on
Tuesday, January 21, 2014
MATERI KULIAH SEM-6
Posted by
admin,
on
Tuesday, January 21, 2014
Cara mendownload
1. Pilih file yang akan di download
2. Klik tombol donwload di kanan bawah
1. Artificial Intelligence (AI)
PPT [download]
2. Pemodelan Sistem
PPT [download]
4. RPL OOT
PPT
5. Rekayasa Aplikasi Internet
PPT
6. Sistem Terdistribusi
PPT
MATERI KULIAH SEM-5
Posted by
admin,
on
Tuesday, January 21, 2014
1. Sistem Informasi
PPT [download]
2. Jaringan Komputer
PPT [download]
3. Teori Komputasi
PPT [download]
4. Sistem Operasi
PPT [download]
5. Desain dan Analisis Algoritma
PPT [download]
7. Keprofesian Bidang Informatika
PPT [download]
8. Kewirausahaan
PPT [download]
Subscribe to:
Posts
(
Atom
)







