Powered By Blogger

Senin, 31 Oktober 2011

jarkom

a) What are the basics tasks of a communications system?
0.25 each and round-up (2 pts total)
Message formatting, error detection and recovery, addressing, routing, flow control, system management,
security, and QoS

b) What are the fundamental challenges to improve communications systems (hint: think about the fundamental
measures of a communications system)?
0.25 each and round-up (2 pts total)
Greater throughput, less delay, less loss, lower cost, more mobility, greater robustness, and better secrecy

c) Think about the OSI reference model and the 5-layer Internet reference model we are using in this class.
Identify what is different between these two models (be more specific than just saying “two layers”!).
1 each layer noted (2 pts total)
The key difference is that the 5-layer Internet model does not have the presentation and session layers found in the OSI model. Otherwise the models are essentially the same.

d) In the 5-layer Internet reference model which layers handle point-to-point functions and which layers handle
end-to-end functions?
0.5 each and round-up (2 pts total) Note: Will accept layer 3 as point-to-point
Layers 1 and 2 are point-to-point and layers 3 and 4 are end-to-end.

e) Is sockets a protocol or interface? Carefully explain why.
1 each for key point (2 pts total)
An interface is a complete set of rules for information exchange between adjacent layers in a single site – and this
is the function that sockets provides as an applications programming interface (API) where the underlying protocol
is TCP or UDP. So, sockets is an interface.

f) What problems do Information Theory and Coding Theory address? In what department are these areas
typically studied.
1 each (2 pts total)
Information theory deals with the channel itself to determine the maximum capacity of the channel. Coding theory
is the study of coding techniques for the channel (to achieve high data rate approaching the maximum capacity).
Information Theory and Coding Theory are usually studied in Electrical Engineering.

Problem #2
Answer the following general questions, each question requiring some simple calculation:
a) Consider a 100 meter 100 Mb/s Ethernet link transporting 1500 byte frames. What is the transmission delay
for a frame? What is the approximate propagation delay of this link? Which delay dominates for this link?
2 for each delay (4 pts total)
A meter is roughly 3 feet. Signal propagates about 1 foot in 1 nanosecond, so the propagation delay is about 300
nanoseconds. The transmission delay is 12000 bits per frame divided by 10 million bits per second, which is 120
microseconds per frame. The transmission delay is about 3 orders of magnitude greater than the propagation
delay.

b) Consider a buffer with 100 packets queued, each packet is 1500 bytes in length. The buffer is for an
intermediate node with a 100 Mb/s egress (output) link with no throttling. How long will it take for all
packets to be transmitted (that is, for the buffer to empty out)?
2 for each calculation (4 pts total)
The transmission delay is 12000 bits per frame divided by 10 million bits per second, which is 120 microseconds
per frame. The last frame in the queue must wait for 100 transmissions, so 100 x 120 microseconds is 12
milliseconds.

c) It is about 2500 miles to Seattle from here. Is the round-trip-time from here to Seattle and back (assuming
no queueing delays) greater or less than the human perception threshold?
2 for each calculation (4 pts total)
Signal propagates about 1 foot in 1 nanosecond, there are 5280 feet in a mile, so roughly 5 microseconds delay
per mile. Thus, 5000 miles (2500 miles there and back) is about 25 milliseconds, this is less than the human delay
threshold of about 100 milliseconds (so, the RTT from here to Seattle will appear “instantaneous”).

Problem #3
Answer the following questions regarding the Application Layer.

a) An application layer protocol typically defines four things. What are these four things?
1 pt each (4 pts total)
Types of messages, syntax of messages, semantics of messages, and timing (when and how).

b) What are ping and traceroute used for? Describe the output from each program.
2 each (4 pts total)
Ping is used to determine the presence (liveliness) of a remote host and the RTT to this host. The output is “host
not found” (if the host is not there) or a list of RTTs for each ping packet sent. Traceroute is used to determine the
hops (by IP address) from a source to a destination. For each hop listed, three sample RTTs are reported

c) What is a web cache used for (i.e., what benefits are derived from using a web cache)? Where can a web
cache be located or placed?
2 pt each subquestion (4 pts total)
A web cache may be used to reduce response time as experienced by a user, reduce load on a link, and/or
reduce load on a web server. A web cache may be placed in the user client (e.g., within the browser application),
at “my” network edge (we call this a proxy server), and/or at the edge of the network containing the server (we call
this a transparent cache).

d) What is DNS and what is it used for? If all DNS servers could be “crashed” (taken offline), what would
happen to the Internet (be precise).
2 pts each for DNS use and for “what would happen” (4 pts total)
DNS is Domain Name Service and is used to associate host names (as in say, www.yahoo.com or
christen@csee.usf.edu) with IP addresses. If all DNS servers were to be crashed one would be unable to use
hostnames and could only use IP addresses when using Internet services.

Minggu, 23 Oktober 2011

"Basis Data"


DBMS (Data Base Management System)Yaitu perangkat lunak untuk mendefinisikan, 
menciptakan, mengelola dan mengendalikan pengaksesan basis data dengan praktis dan efisien.  

Sistem Basis Data adalah gabungan antara Basis data dan perangkat lunak DBMS termasuk   didalamnyaprogram aplikasi yang dibuat dan bekerja dalam suatu sistem yang bertujuan untukdapatmemanipulasidata dari basis data sehingga diperoleh informasi yang diinginkan. 
Operator CROSS JOIN
Berguna untuk melakukan operasi cross join atau perkalian kartesian. Kaidah pemakaiannya dalam klausa FROM:

tabelA CROSS JOIN tabelB

Contoh:

SELECT *
FROM tabel1 CROSS JOIN tabel2;

Tabel1                         Tabel2
 

hasil CROSS JOIN:
+-----+-----+-----+-----+
|  A  |  B  |  X  |  Y  |
+-----+-----+-----+-----+
|  1  |  2  |  5  |  6  |
|  3  |  4  |  5  |  6  |
|  1  |  2  |  7  |  8  |
|  3  |  4  |  7  |  8  |
+-----+-----+-----+-----+

Pernyataan diatas identik dengan:

SELECT *
FROM tabel1, tabel2;

Operator NATURAL JOIN
Akan melakukan operasi equijoin dengan memperlakukan nama-nama kolom yang sama sebagai kolom penghubung antar tabel.

SELECT infoprib.id_bin,
       infoprib.nama,
       main.id_bin,
       main.kd_film
FROM infoprib NATURAL JOIN main;
hasil NATURAL JOIN:

+--------+--------------------+-----------------
| id_bin | nama               | id_bin | kd_film
+--------+--------------------+-----------------
| drewb  | Drew Barrymore     | drewb  | batfo
| stone  | Sharon Stone       | stone  | basic
| stone  | Sharon Stone       | stone  | glori
| stone  | Sharon Stone       | stone  | spesi
| sylve  | Sylvester Stallon  | sylve  | cliff
| sylve  | Sylvester Stallon  | sylve  | rambo
| sylve  | Sylvester Stallon  | sylve  | spesi


Berbagai operator Join yang lain
 (tidak semua sistem mendukung operator2 ini)
·       LEFT OUTER JOIN
Bila baris pada tabel yang terletak di sebelah kiri operator ini ada yang tidak memiliki pasangan dengan tabel yang terletak di kanan operator ini, baris ini tetap disertakan dalam hasil peggabungan.

·       RIGHT OUTER JOIN
Merupakan kebalikan dari LEFT OUTER JOIN. Bila baris pada tabel yang terletak di sebelah kanan operator ini ada yang tidak memiliki pasangan dengan tabel yang terletak di kiri operator ini, baris ini tetap disertakan dalam hasil peggabungan.

·       FULL OUTER JOIN
Gabungan dari LEFT OUTER JOIN dan RIGHT OUTER JOIN

·       UNION JOIN
Menggabungkan ke-2 tabel dengan kolom pasangannya akan diberi nilai NULL.
Bila tabel pertama berisi N1 baris dan tabel kedua berisi N2 baris maka hasilnya berupa N1 + N2 baris
 




MySQL adalah
  • database server, dapat menyimpan sejumlah database
  • diakses oleh program client (MySQL Command Line Client, aplikasi Java, dll)
  • akses dengan bahasa SQL (structured query language)
 SQL adalah bahasa standar dalam basis data yang digunakan untuk melakukan manipulasi data (merupakan bahasa pemrograman/query standart yang digunakan untuk mengakses basis data relasional).

Sehingga bahasa Query ini dibagi menjadi 3 bagian :
1. DDL (Data Definition Language)
  • Membuat database (CREATE DATABASE)
  • Menghapus database (DROP DATABASE)
  • Menciptakan tabel (CREATE TABLE)
  • Menghapus tabel (DROP TABLE)
  • Mengubah tabel (ALTER TABLE)
2. DML (Data Manipulation Language)
  • Menambah record (INSERT INTO)
  • Melihat isi tabel (SELECT)
  • Menganti isi record (UPDATE)
  • Menghapus record (DELETE)
3. DCL (Data Control Language)
    kelompok perintah yang dipakai untuk melakukan otorisasi terhadap pengaksesan data dan pengalokasian ruang.
Misal: suatu data bisa diakses si A, tetapi tidak bisa diakses oleh si B
  • GRANT
  • REVOKE
  • COMMIT
  • ROLLBACK 
Tipe Data
Keterangan
CHAR atau CHARACTER
- Menyatakan deretan karakter  (huruf, bil, tanda baca, karakter khusus (ex:enter)) atau String
- Biasanya lebarnya ttt / tetap, mk biasanya dipakai sbg kunci primer (NIP, NIM),ttp tdk sbg kunci primer juga bisa (Jurusan, lebarnya 2 digit: MI, TI)
- Cara nulisnya diapit tanda petik bisa tunggal ’-’ atau ganda ”-”
VARCHAR
- Untuk menyatakan string dengan panjang tidak tetap (nama, alamat, dll)
- Lebih boros penyimpanan di memori
- Cara nulisnya diapit tanda petik bisa tunggal ’-’ atau ganda ”-”
DECIMAL atau DEC
Bilangan pecahan, ttp formatnya lebih jelas ex: 5,2 (---,--) shg tampilan dilayar lebih rapi dibanding float dan double (tergantung nilainya)
INTEGER atau INT
- Menyatakan tipe data bilangan bulat, defaulnya max 11 karakter
- Bisa dipakai untuk operasi matematis
- Tdk operasi matematis juga bisa (ex:tinggi badan)
SMALLINT
Menyatakan tipe data bilangan bulat yang jangkauannya lebih kecil dari pada INTEGER
FLOAT
Tipe data bilangan real/pecahan, lebar dibelakang koma 17 karakter
DOUBLE
Tipe data bilangan real/pecahan dengan presisi/teliti lebih tinggi dari pada FLOAT, lebar dibelakang koma sampai 30 digit
DATE
Untuk menyatakan tanggal (th-bl-tgl)
TIME
Untuk menyatakan waktu
ex: jam chek In, chek Out di hotel
TIMESTAMP
Untuk menyatakan tanggal dan waktu
BLOB
Untuk menyatakan data biner yang berguna untuk menyimpan gambar atau suara
AUTO-INCREMENT
Untuk menyatakan data yang akan dinaikkan sebesar satu secara otomatis
BOOLEAN
Untuk menyatakan tipe nalar yi benar atau salah
ENUM
Untuk mendefinisikan data yang mempunyai kemungkinan nilai tetentu.