THE POLICE LINE

Semakin lama saya hidup, semakin saya sadar Akan pengaruh sikap dalam kehidupan Sikap lebih penting daripada ilmu, daripada uang, daripada kesempatan, daripada kegagalan, daripada keberhasilan, daripada apapun yang mungkin dikatakan atau dilakukan seseorang.

Rabu, 09 Desember 2009

Protokol Internet

Protokol Internet

Protokol Internet (Inggris Internet Protocol disingkat IP) adalah protokol lapisan jaringan (network layer dalam OSI Reference Model) atau protokol lapisan internetwork (internetwork layer dalam DARPA Reference Model) yang digunakan oleh protokol TCP/IP untuk melakukan pengalamatan dan routing paket data antar host-host di jaringan komputer berbasis TCP/IP. Versi IP yang banyak digunakan adalah IP versi 4 (IPv4) yang didefinisikan pada RFC 791 dan dipublikasikan pada tahun 1981, tetapi akan digantikan oleh IP versi 6 pada beberapa waktu yang akan datang.

Protokol IP merupakan salah satu protokol kunci di dalam kumpulan protokol TCP/IP. Sebuah paket IP akan membawa data aktual yang dikirimkan melalui jaringan dari satu titik ke titik lainnya. Metode yang digunakannya adalah connectionless yang berarti ia tidak perlu membuat dan memelihara sebuah sesi koneksi. Selain itu, protokol ini juga tidak menjamin penyampaian data, tapi hal ini diserahkan kepada protokol pada lapisan yang lebih tinggi (lapisan transport dalam OSI Reference Model atau lapisan antar host dalam DARPA Reference Model), yakni protokol Transmission Control Protocol (TCP).

Layanan yang ditawarkan oleh Protokol IP

  • IP menawarkan layanan sebagai protokol antar jaringan (inter-network), karena itulah IP juga sering disebut sebagai protokol yang bersifat routable. Header IP mengandung informasi yang dibutuhkan untuk menentukan rute paket, yang mencakup alamat IP sumber (source IP address) dan alamat IP tujuan (destination IP address). Anatomi alamat IP terbagi menjadi dua bagian, yakni alamat jaringan (network address) dan alamat node (node address/host address). Penyampaian paket antar jaringan (umumnya disebut sebagai proses routing), dimungkinkan karena adanya alamat jaringan tujuan dalam alamat IP. Selain itu, IP juga mengizinkan pembuatan sebuah jaringan yang cukup besar, yang disebut sebagai IP internetwork, yang terdiri atas dua atau lebih jaringan yang dihubungkan dengan menggunakan router berbasis IP.
  • IP mendukung banyak protokol klien, karena memang IP merupakan "kurir" pembawa data yang dikirimkan oleh protokol-protokol lapisan yang lebih tinggi dibandingkan dengannya. Protokol IP dapat membawa beberapa protokol lapisan tinggi yang berbeda-beda, tapi setiap paket IP hanya dapat mengandung data dari satu buah protokol dari banyak protokol tersebut dalam satu waktu. Karena setiap paket dapat membawa satu buah paket dari beberapa paket data, maka harus ada cara yang digunakan untuk mengidikasikan protokol lapisan tinggi dari paket data yang dikirimkan sehingga dapat diteruskan kepada protokol lapisan tinggi yang sesuai pada sisi penerima. Mengingat klien dan server selalu menggunakan protokol yang sama untuk sebuah data yang saling dipertukarkan, maka setiap paket tidak harus mengindikasikan sumber dan tujuan yang terpisah. Contoh dari protokol-protokol lapisan yang lebih tinggi dibandingkan IP adalah Internet Control Management Protocol (ICMP), Internet Group Management Protocol (IGMP), User Datagram Protocol (UDP), dan Transmission Control Protocol (TCP).
  • IP mengirimkan data dalam bentuk datagram, karena memang IP hanya menyediakan layanan pengiriman data secara connectionless serta tidak andal (unreliable) kepada protokol-protokol yang berada lebih tinggi dibandingkan dengan protokol IP. Pengirimkan connectionless, berarti tidak perlu ada negosiasi koneksi (handshaking) sebelum mengirimkan data dan tidak ada koneksi yang harus dibuat atau dipelihara dalam lapisan ini. Unreliable, berarti IP akan mengirimkan paket tanpa proses pengurutan dan tanpa acknowledgment ketika pihak yang dituju telah dapat diraih. IP hanya akan melakukan pengiriman sekali kirim saja untuk menyampaikan paket-paket kepada hop selanjutnya atau tujuan akhir (teknik seperti ini disebut sebagai "best effort delivery"). Keandalan data bukan merupakan tugas dari protokol IP, tapi merupakan protokol yang berada pada lapisan yang lebih tinggi, seperti halnya protokol TCP.
  • Bersifat independen dari lapisan antarmuka jaringan (lapisan pertama dalam DARPA Reference Model), karena memang IP didesain agar mendukung banyak komputer dan antarmuka jaringan. IP bersifat independen terhadap atribut lapisan fisik, seperti halnya pengabelan, pensinyalan, dan bit rate. Selain itu, IP juga bersifat independen terhadap atribut lapisan data link seperti halnya mekanisme Media access control (MAC), pengalamatan MAC, serta ukuran frame terbesar. IP menggunakan skema pengalamatannya sendiri, yang disebut sebagai "IP address", yang merupakan bilangan 32-bit dan independen terhadap skema pengalamatan yang digunakan dalam lapisan antarmuka jaringan.
  • Untuk mendukung ukuran frame terbesar yang dimiliki oleh teknologi lapisan antarmuka jaringan yang berbeda-beda, IP dapat melakukan pemecahan terhadap paket data ke dalam beberapa fragmen sebelum diletakkan di atas sebuah saluran jaringan. Paket data tersebut akan dipecah ke dalam fragmen-fragmen yang memiliki ukuran maximum transmission unit (MTU) yang lebih rendah dibandingkan dengan ukuran datagram IP. Proses ini dinamakan dengan fragmentasi ([[Fragmentasi paket jaringan|fragmentation). Router atau host yang mengirimkan data akan memecah data yang hendak ditransmisikan, dan proses fragmentasi dapat berlangsung beberapa kali. Selanjutnya host yang dituju akan menyatukan kembali fragmen-fragmen tersebut menjadi paket data utuh, seperti halnya sebelum dipecah.
  • Dapat diperluas dengan menggunakan fitur IP Options dalam header IP. Fitur yang dapat ditambahkan contohnya adalah kemampuan untuk menentukan jalur yang harus diikuti oleh datagram IP melalui sebuah internetwork IP.

Datagram IP

Format datagram Protokol IP

Paket-paket data dalam protokol IP dikirimkan dalam bentuk datagram. Sebuah datagram IP terdiri atas header IP dan muatan IP (payload), sebagai berikut:

  • Header IP: Ukuran header IP bervariasi, yakni berukuran 20 hingga 60 byte, dalam penambahan 4-byte. Header IP menyediakan dukungan untuk memetakan jaringan (routing), identifikasi muatan IP, ukuran header IP dan datagram IP, dukungan fragmentasi, dan juga IP Options.
  • Muatan IP: Ukuran muatan IP juga bervariasi, yang berkisar dari 8 byte hingga 65515 byte.

Sebelum dikirimkan di dalam saluran jaringan, datagram IP akan "dibungkus" dengan header protokol lapisan antarmuka jaringan dan trailer-nya, untuk membuat sebuah frame jaringan.

Header IP

Format Header Protokol IP

Header IP terdiri atas beberapa field sebagai berikut:

Field

Panjang

Keterangan

Version

4 bit

Digunakan untuk mengindikasikan versi dari header IP yang digunakan. Karena memiliki panjang 4 bit, maka terdapat 24=16 buah jenis nilai yang berbeda-beda, yang berkisar antara 0 hingga 15. Meskipun begitu hanya ada dua nilai yang bisa digunakan, yakni 4 dan 6, mengingat versi IP standar yang digunakan saat ini dalam jaringan dan Internet adalah versi 4 dan 6 merupakan singkatan dari versi selanjutnya (IPv6). Lihat situs web IANA untuk informasi mengenai field ini lebih lanjut.

Header length

4 bit

Digunakan untuk mengindikasikan ukuran header IP. Karena memiliki panjang 4 bit, maka terdapat 24=16 buah jenis nilai yang berbeda-beda. Field header length ini mengindikasikan bilangan double-word 32-bit (blok 4-byte) di dalam header IP. Ukuran terkecilnya adalah 5 (0x05), yang menunjukkan ukuran terkecil dari header IP yakni 20 byte. Dengan jumlah maksimum dari IP Options, ukuran header IP maksimum adalah 60 byte, yang diindikasikan dengan nilai 15 (0x0F).

Type of Service (TOS)

8 bit

Field ini digunakan untuk menentukan kualitas transmisi dari sebuah datagram IP. Ada dua jenis TOS yang didefinisikan, yakni pada RFC 791 dan RFC 2474. Hal ini akan dibahas pada seksi berikutnya.

Total Length

16 bit

Merupakan panjang total dari datagram IP, yang mencakup header IP dan muatannya. Dengan menggunakan angka 16 bit, nilai maksimum yang dapat ditampung adalah 65535 byte. Untuk datagram IP yang memiliki ukuran maksimum, field ini memiliki nilai yang sama dengan nilai maximum transmission unit yang dimiliki oleh teknologi protokol lapisan antarmuka jaringan.

Identifier

16 bit

Digunakan untuk mengidentifikasikan sebuah paket IP tertentu yang dikirimkan antara node sumber dan node tujuan. Host pengirim akan mengeset nilai dari field ini, dan field ini akan bertambah nilainya untuk datagram IP selanjutnya. Field ini digunakan untuk mengenali fragmen-fragmen sebuah datagram IP.

Flag

3 bit

Berisi dua buah flag yang berisi apakah sebuah datagram IP mengalami fragmentasi atau tidak. Meski berisi tiga bit, ada dua jenis nilai yang mungkin, yakni apakah hendak memecah datagram IP ke dalam beberapa fragmen atau tidak.

Fragment Offset

13 bit

Digunakan untuk mengidentifikasikan ofset di mana fragmen yang bersangkutan dimulai, dihitung dari permulaan muatan IP yang belum dipecah.

Time-to-Live (TTL)

8 bit

Digunakan untuk mengidentifikasikan berapa banyak saluran jaringan di mana sebuah datagram IP dapat berjalan-jalan sebelum sebuah router mengabaikan datagram tersebut. Field ini pada awalnya ditujukan sebagai penghitung waktu, untuk mengidentifikasikan berapa lama (dalam detik) sebuah datagram IP boleh terdapat di dalam jaringan. Adalah router IP yang memantau nilai ini, yang akan berkurang setiap kali hinggap dalam router.

Protocol

8 bit

Digunakan untuk mengidentifikasikan jenis protokol lapisan yang lebih tinggi yang dikandung oleh muatan IP. Field ini merupakan tanda eksplisit untuk protokol klien. Terdapat beberapa nilai dari field ini, seperti halnya nilai 1 (0x01) untuk ICMP, 6 (0x06) untuk TCP, dan 17 (0x11) untuk UDP (selengkapnya lihat di bawah). Field ini bertindak sebagai penanda multipleks (multiplex identifier), sehingga muatan IP pun dapat diteruskan ke protokol lapisan yang lebih tinggi saat diterima oleh node yang dituju.

Header Checksum

16 bit

Field ini berguna hanya untuk melakukan pengecekan integritas terhadap header IP, sementara muatan IP sendiri tidak dimasukkan ke dalamnya, sehingga muatan IP harus memiliki checksum mereka sendiri untuk melakukan pengecekan integritas terhadap muatan IP. Host pengirim akan melakukan pengecekan checksum terhadap datagram IP yang dikirimkan. Setiap router yang berada di dalam jalur transmisi antara sumber dan tujuan akan melakukan verifikasi terhadap field ini sebelum memproses paket. Jika verifikasi dianggap gagal, router pun akan mengabaikan datagram IP tersebut.
Karena setiap router yang berada di dalam jalur transmisi antara sumber dan tujuan akan mengurangi nilai TTL, maka header checksum pun akan berubah setiap kali datagram tersebut hinggap di setiap router yang dilewati.
Pada saat menghitung checksum terhadap semua field di dalam header IP, nilai header checksum akan diset ke nilai 0.

Source IP Address

32 bit

Mengandung alamat IP dari sumber host yang mengirimkan datagram IP tersebut, atau alamat IP dari Network Address Translator (NAT).

Destination IP Address

32 bit

Mengandung alamat IP tujuan ke mana datagram IP tersebut akan disampaikan, atau yang dapat berupa alamat dari host atau NAT.

IP Options and Padding

32 bit

[place holder]

Type of Service (ToS)

Field Type of Service (ToS) adalah sebuah field dalam header IPv4 yang memiliki panjang 8 bit dan digunakan untuk menandakan jenis Quality of Service (QoS) yang digunakan oleh datagram yang bersangkutan untuk disampaikan ke router-router internetwork. ToS didefinisikan di dalam dua buah standar, yakni RFC 791 dan RFC 2474.

ToS dalam RFC 791

[place holder]

ToS dalam RFC 2474

[place holder]

Time-to-Live (TTL)

[place holder]

Protocol

Berikut ini adalah nilai dari field Protocol

Nilai

Protokol

0

Internet Protocol (IP)

1

Internet Control Message Protocol (ICMP)

2

Internet Group Message Protocol (IGMP)

3

Gateway-to-Gatway Protocol (GGP)

4

IP in IP encapsulation

6

Transmission Control Protocol (TCP)

8

Exterior Gateway Protocol (EGP)

12

PARC Universal Packet Protocol (PUP)

17

User Datagram Protocol (UDP)

20

Host Monitoring Protocol (HMP)

22

Xerox NS IDP

27

Reliable Datagram Protocol (RDP)

41

Internet Protocol version 6 (IPv6)

47

Generic Routing Encapsulation (GRE)

50

IP Security Encapsulating Security Payload (IPSec ESP)

51

IP Security Authentication Header (AH)

66

MIT Remote Virtual Disk (RVD)

89

Open Shortest Path First (OSPF)

Untuk beberapa nilai lainnya, kunjungi alamat situs web IANA.

Aplikasi jaringan Windows yang berbasis Windows Sockets API (WinSock) dapat merujuk protokol berdasarkan namanya saja. Nama-nama protokol kemudian akan diterjemahkan ke dalam nomor protokol dengan menggunakan berkas yang disimpan di dalam %systemroot%\System32\Drivers\Etc\Protocol.

Fragmentasi Paket IP

Ketika sebuah host sumber atau router harus mentransmisikan sebuah datagram IP dalam sebuah saluran jaringan di mana nilai Maximum transmission unit (MTU) yang dimilikinya lebih kecil dibandingkan ukuran datagram IP, datagram IP yang akan ditransmisikan tersebut harus dipecah ke dalam beberapa fragmen. Proses ini disebut sebagai Fragmentation (fragmentasi). Ketika fragmentasi terjadi, muatan IP akan dibelah menjadi beberapa segmen, dan setiap segmen akan dikirimkan dengan header IP-nya masing-masing.

Header IP mengandung informasi yang dibutuhkan untuk menyatukan kembali muatan IP yang telah dipecah tersebut menjadi muatan IP yang utuh pada saat datagram IP tersebut telah sampai pada host tujuan. Karena IP merupakan teknologi datagram packet-switching dan juga fragmen dapat sampai ke tujuan dalam kondisi tidak terurut, fragmen-fragmen tersebut harus dikelompokkan (dengan menggunakan field Identification dalam header IP), diurutkan (dengan menggunakan field Fragment Offset dalam header IP), dan diperjelas pembatasannya (dengan menggunakan flag More Fragment dalam header IP).

Teknologi virtual circuit packet-switching seperti halnya X.25 dan Asynchronous Transfer Mode (ATM) hanya membutuhkan pembatasan fragmen/segmen. Sebagai contoh, dengan ATM Adaptation Layer 5, sebuah datagram IP akan dibelah menjadi beberapa segmen berukuran 48 byte yang menjadi muatan setiap sel ATM. ATM selanjutnya mengirimkan sel-sel ATM tersebut yang mengandung datagram IP dan menggunakan bit ketiga dari field Payload Type di dalam header ATM untuk mengindikasikan akhir aliran sel ATM untuk sebuah datagram IP.

Field-field dalam header IP yang berguna untuk fragmentasi

Ada tiga buah field yang berguna untuk menunjukkan apakah sebuah datagram IP harus difragmentasi atau tidak, yakni sebagai berikut:

  • Field identification:
    Digunakan untuk mengelompokkan semua fragmen dari sebuah datagram IP dalam sebuah kelompok. Host pengirim akan mengeset nilai field ini, dan nilai ini tidak akan beruba selama proses fragmentasi berlangsung. Field ini selalu diset (memiliki nilai) meskipun datagram IP tidak boleh diset dengan menggunakan bit flag Dont Fragment (DF).
  • Field Flag, yang memiliki dua buah nilai:
    • Don't fragment (DF):
      Flag ini akan diset ke nilai "0" untuk mengizinkan fragmentasi dilakukan, atau nilai "1" untuk mencegah fragmentasi dilakukan terhadap datagram IP. Dengan kata lain, fragmentasi akan terjadi jika flag DF ini bernilai "0". Jika fragmentasi dibutuhkan untuk meneruskan datagram IP (akibat ukuran datagram IP yang lebih besar dibandingkan dengan ukuran maximum transmission unit (MTU)) dan flag DF ini diset ke nilai "1", maka router akan mengirimkan pesan "ICMP Destination Unreachable-Fragmentation Needed And DF Set" kepada host pengirim, sebelum router tersebut akan mengabaikan datagram IP tersebut.
    • More Fragments (MF):
      Flag ini akan diset ke nilai "0" jika tidak ada fragmen lainnya yang mengikuti fragmen yang bersangkutan (berarti tanda bahwa fragmen tersebut merupakan fragmen terakhir), atau diset ke nilai "1" jika ada tambahan fragmen yang mengikuti fragmen tersebut (berarti tanda bahwa fragmen tersebut bukanlah fragmen terakhir).
  • Field' Fragment Offset:
    Field ini akan diset untuk mengindikasikan posisi fragmen yang bersangkutan terhadap muatan IP yang belum difragmentasikan. Field ini akan digunakan untuk mengurutkan kembali semua fragmen pada saat proses penyatuan kembali menjadi sebuah datagram IP yang utuh di pihak penerima. Ukurannya adalah 13 bit, sehingga mendukung nilai hingga 8191 saja.
    Mengingat ukuran muatan IP terbesar adalah 65515 byte (216-20), sedangkan ukuran field ini adalah 13 bit, maka field ini tidak dapat digunakan untuk mengindikasikan byte offset. Karenanya setiap nilai field fragment offset harus merepresentasikan nilai 3 bit. Dengan demikian, field Fragment Offset pun dapat didefinisikan dalam blok-blok berukuran 8 byte yang disebut sebagai Fragment block.
    Selama fragmentasi dilakukan, muatan IP akan dipecah ke dalam fragmen-fragmen dengan menggunakan batasan 8 byte dan nilai maksimum fragment block (8 byte) diletakkan pada setiap fragmen. Field Fragment Offset pun diset untuk mengindikasikan permulaan fragment block untuk fragmen tersebut dibandingkan dengan muatan IP yang belum difragmentasi.

Setiap fragmen yang difragmentasi oleh router, header IP akan disalin dan beberapa field ini akan diubah selama fragmentasi oleh router:

  • Header length: Bisa berubah atau tidak bergantung pada keberadaan IP Options, dan juga apakah IP Options tersebut disalin ke semua fragmen atau hanya fragmen pertama saja.
  • Time-to-Live (TTL): selalu dikurangi 1.
  • Total Length: Diubah untuk merefleksikan perubahan pada header IP yang baru dan tentunya muatan IP yang baru.
  • Flag More Fragment akan diset ke angka 1 untuk fragmen pertama atau fragmen pertengahan, atau nilai 0 untuk fragmen terakhir.
  • Fragment Offset: Diset untuk mengindikasikan posisi fragmen di dalam fragment block relatif terhadap muatan IP yang belum difragmentasi.
  • Header Checksum: dihitung ulang berdasarkan field yang berubah di dalam header IP.
  • Field "identification": tidak berubah untuk setiap fragmen.

Contoh proses fragmentasi

Contoh proses fragmentasi (gambar 1)

Sebagai sebuah contoh bagaimana proses fragmentasi berlangsung, perhatikan skenairo berikut:
Sebuah node yang berada di dalam jaringan Token Ring mengirimkan sebuah datagram IP yang dapat difragmentasikan dengan nilai field Identification (dalam header IP) diset ke nilai 9999 ke sebuah node dalam jaringan Ethernet, seperti terlukis dalam gambar. Anggaplah jaringan Token Ring tersebut memiliki pengaturan sebagai berikut: kepemilikan token selama 9 milidetik, kecepatan 4 megabit per detik, dan tidak ada header routing Token Ring, serta MTU 4482 byte. Sementara itu, jaringan Ethernet memiliki MTU 1500 byte, yang menggunakan skema enkapsulasi frame Ethernet II.

Sebelum fragmentasi terjadi, field-field dalam header IP untuk datagram IP yang asli bernilai sebagai berikut:

Field

Nilai

Total Length

4482

Identification

9999

flag DF

0

flag MF

0

Fragment Offset

0

Router yang menghubungkan dua jenis jaringan tersebut akan menerima datagram IP dari komputer pengirim dalam jaringan Token Ring. Router pun mengecek tabel routing yang ada di dalam dirinya dan menentukan antarmuka mana yang hendak digunakan untuk meneruskan pesan tersebut dan kemudian router mengetahui bahwa datagram IP yang dikirimkan lebih besar daripada nilai MTU, mengingat jaringan yang dituju merupakan jaringan Ethernet. Selanjutnya, router melihat flag DF dalam header IP: jika diset ke angka 1, router akan mengabaikan datagram yang bersangkutan dan mengirimkan pesan balasan "ICMP Destination Unreachable-Fragmentation Needed And DF Set" kepada pengirim datagram IP; dan karena memiliki nilai "0", router pun melakukan fragmentasi terhadap muatan datagram IP tersebut, yakni sebesar 4462 byte (dengan anggapan bahwa datagram tersebut tidak memiliki IP Options) ke dalam empat buah fragmen, yang setiap fragmennya memiliki ukuran 1500 byte (yang merupakan nilai MTU dari jaringan Ethernet).

Proses fragmentasi paket IP

Muatan IP maksimum yang dapat ditampung dalam MTU 1500 byte milik Ethernet adalah 1480 byte (20 byte digunakan sebagai header IP, dan dengan anggapan bahwa datagram tersebut tidak memiliki IP Options). Setiap muatan yang berukuran 1480 byte tesebut dipecah ke dalam 185 fragment block (185x8=1480). Karenanya router akan mengirimkan empat fragmen dengan ukuran muatan 1480 byte dan fragmen terakhir berukuran 22 byte (4462=1480+1480+1480+22)

Karena fragmentasi terjadi, maka nilai-nilai field datagram IP yang dikirimkan pun akan diubah oleh router menjadi nilai-nilai berikut:

Field

Nilai pada fragmen 1

Nilai pada fragmen 2

Nilai pada fragmen 3

Nilai pada fragmen 4

Total Length

1500

1500

1500

42

Identification

9999

9999

9999

9999

flag DF

0

0

0

0

flag MF

1

1

1

0

Fragment Offset

0

185

370

555

Contoh penyatuan kembali (proses reassembly)

[place holder]

Contoh datagram IP

Berikut ini adalah contoh dari datagram IP (packet capture dari Microsoft Network Monitor, dipantau dengan perintah "Ping 192.168.1.2"):

+  Frame: Base frame properties
+  ETHERNET: ETYPE = 0x0800 : Protocol = IP:  DOD Internet Protocol
      IP:   ID = 0x34CD; Proto = ICMP; Len: 60
         IP:   Version = 4 (0x4)
         IP:   Header Length = 20 (0x14)
         IP:   Precedence = Routine
         IP:   Type of Service = Normal Service
         IP:   Total Length = 60 (0x3C)
         IP:   Identification = 13517 (0x34cd)
         IP:   Flags Summary = 0 (0x0)
                  IP: .......0 = Last fragment in datagram
                  IP: ......0. = May fragment datagram if necessary
         IP:   Fragment Offset = 0 (0x0) bytes
         IP:   Time to Live = 128 (0x80)
         IP:   Protocol = ICMP - Internet Control Message
         IP:   Checksum = 0xB869
         IP:   Source Address = 192.168.1.1
         IP:   Destination Address = 192.168.1.2
         IP:   Data: Number of data bytes remaining = 40 (0x0028)
+  ICMP: Echo: From 192.168.1.1 To 192.168.1.2



ASCII

Dari Wikipedia Indonesia, ensiklopedia bebas berbahasa Indonesia.

Langsung ke: navigasi, cari

Kode Standar Amerika untuk Pertukaran Informasi atau ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex dan Unicode tetapi ASCII lebih bersifat universal, contohnya 124 adalah untuk karakter "|". Ia selalu digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII sebenarnya memiliki komposisi bilangan biner sebanyak 8 bit. Dimulai dari 00000000 hingga 11111111. Total kombinasi yang dihasilkan sebanyak 256, dimulai dari kode 0 hingga 255 dalam sistem bilangan Desimal.

[sunting] Tabel Karakter ASCII

Tabel berikut berisi karakter-karakter ASCII . Dalam sistem operasi Windows dan MS-DOS, pengguna dapat menggunakan karakter ASCII dengan menekan tombol Alt+[nomor nilai ANSI (desimal)]. Sebagai contoh, tekan kombinasi tombol Alt+87 untuk karakter huruf latin "W" kapital.

Karakter Nilai Unicode
(heksadesimal)
Nilai ANSI ASCII
(desimal)
Keterangan
NUL 0000 0 Null (tidak tampak)
SOH 0001 1 Start of heading (tidak tampak)
STX 0002 2 Start of text (tidak tampak)
ETX 0003 3 End of text (tidak tampak)
EOT 0004 4 End of transmission (tidak tampak)
ENQ 0005 5 Enquiry (tidak tampak)
ACK 0006 6 Acknowledge (tidak tampak)
BEL 0007 7 Bell (tidak tampak)
BS 0008 8 Menghapus satu karakter di belakang kursor (Backspace)
HT 0009 9 Horizontal tabulation
LF 000A 10 Pergantian baris (Line feed)
VT 000B 11 Tabulasi vertikal
FF 000C 12 Pergantian baris (Form feed)
CR 000D 13 Pergantian baris (carriage return)
SO 000E 14 Shift out (tidak tampak)
SI 000F 15 Shift in (tidak tampak)
DLE 0010 16 Data link escape (tidak tampak)
DC1 0011 17 Device control 1 (tidak tampak)
DC2 0012 18 Device control 2 (tidak tampak)
DC3 0013 19 Device control 3 (tidak tampak)
DC4 0014 20 Device control 4 (tidak tampak)
NAK 0015 21 Negative acknowledge (tidak tampak)
SYN 0016 22 Synchronous idle (tidak tampak)
ETB 0017 23 End of transmission block (tidak tampak)
CAN 0018 24 Cancel (tidak tampak)
EM 0019 25 End of medium (tidak tampak)
SUB 001A 26 Substitute (tidak tampak)
ESC 001B 27 Escape (tidak tampak)
FS 001C 28 File separator
GS 001D 29 Group separator
RS 001E 30 Record separator
US 001F 31 Unit separator
SP 0020 32 Spasi
! 0021 33 Tanda seru (exclamation)
" 0022 34 Tanda kutip dua
# 0023 35 Tanda pagar (kres)
$ 0024 36 Tanda mata uang dolar
% 0025 37 Tanda persen
& 0026 38 Karakter ampersand (&)
0027 39 Karakter Apostrof
( 0028 40 Tanda kurung buka
) 0029 41 Tanda kurung tutup
* 002A 42 Karakter asterisk (bintang)
+ 002B 43 Tanda tambah (plus)
, 002C 44 Karakter koma
- 002D 45 Karakter hyphen (strip)
. 002E 46 Tanda titik
/ 002F 47 Garis miring (slash)
0 0030 48 Angka nol
1 0031 49 Angka satu
2 0032 50 Angka dua
3 0033 51 Angka tiga
4 0034 52 Angka empat
5 0035 53 Angka lima
6 0036 54 Angka enam
7 0037 55 Angka tujuh
8 0038 56 Angka delapan
9 0039 57 Angka sembilan
: 003A 58 Tanda titik dua
; 003B 59 Tanda titik koma
< 003C 60 Tanda lebih kecil
= 003D 61 Tanda sama dengan
> 003E 62 Tanda lebih besar
? 003F 63 Tanda tanya
@ 0040 64 A keong (@)
A 0041 65 Huruf latin A kapital
B 0042 66 Huruf latin B kapital
C 0043 67 Huruf latin C kapital
D 0044 68 Huruf latin D kapital
E 0045 69 Huruf latin E kapital
F 0046 70 Huruf latin F kapital
G 0047 71 Huruf latin G kapital
H 0048 72 Huruf latin H kapital
I 0049 73 Huruf latin I kapital
J 004A 74 Huruf latin J kapital
K 004B 75 Huruf latin K kapital
L 004C 76 Huruf latin L kapital
M 004D 77 Huruf latin M kapital
N 004E 78 Huruf latin N kapital
O 004F 79 Huruf latin O kapital
P 0050 80 Huruf latin P kapital
Q 0051 81 Huruf latin Q kapital
R 0052 82 Huruf latin R kapital
S 0053 83 Huruf latin S kapital
T 0054 84 Huruf latin T kapital
U 0055 85 Huruf latin U kapital
V 0056 86 Huruf latin V kapital
W 0057 87 Huruf latin W kapital
X 0058 88 Huruf latin X kapital
Y 0059 89 Huruf latin Y kapital
Z 005A 90 Huruf latin Z kapital
[ 005B 91 Kurung siku kiri
\ 005C 92 Garis miring terbalik (backslash)
] 005D 93 Kurung sikur kanan
^ 005E 94 Tanda pangkat
_ 005F 95 Garis bawah (underscore)
` 0060 96 Tanda petik satu
a 0061 97 Huruf latin a kecil
b 0062 98 Huruf latin b kecil
c 0063 99 Huruf latin c kecil
d 0064 100 Huruf latin d kecil
e 0065 101 Huruf latin e kecil
f 0066 102 Huruf latin f kecil f
g 0067 103 Huruf latin g kecil
h 0068 104 Huruf latin h kecil
i 0069 105 Huruf latin i kecil
j 006A 106 Huruf latin j kecil
k 006B 107 Huruf latin k kecil
l 006C 108 Huruf latin l kecil
m 006D 109 Huruf latin m kecil
n 006E 110 Huruf latin n kecil
o 006F 111 Huruf latin o kecil
p 0070 112 Huruf latin p kecil
q 0071 113 Huruf latin q kecil
r 0072 114 Huruf latin r kecil
s 0073 115 Huruf latin s kecil
t 0074 116 Huruf latin t kecil
u 0075 117 Huruf latin u kecil
v 0076 118 Huruf latin v kecil
w 0077 119 Huruf latin w kecil
x 0078 120 Huruf latin x kecil
y 0079 121 Huruf latin y kecil
z 007A 122 Huruf latin z kecil
{ 007B 123 Kurung kurawal buka
¦ 007C 124 Garis vertikal (pipa)
} 007D 125 Kurung kurawal tutup
~ 007E 126 Karakter gelombang (tilde)
DEL 007F 127 Delete

0080 128 Dicadangkan

0081 129 Dicadangkan

0082 130 Dicadangkan

0083 131 Dicadangkan
IND 0084 132 Index
NEL 0085 133 Next line
SSA 0086 134 Start of selected area
ESA 0087 135 End of selected area

0088 136 Character tabulation set

0089 137 Character tabulation with justification

008A 138 Line tabulation set
PLD 008B 139 Partial line down
PLU 008C 140 Partial line up

008D 141 Reverse line feed
SS2 008E 142 Single shift two
SS3 008F 143 Single shift three
DCS 0090 144 Device control string
PU1 0091 145 Private use one
PU2 0092 146 Private use two
STS 0093 147 Set transmit state
CCH 0094 148 Cancel character
MW 0095 149 Message waiting

0096 150 Start of guarded area

0097 151 End of guarded area

0098 152 Start of string

0099 153 Dicadangkan

009A 154 Single character introducer
CSI 009B 155 Control sequence introducer
ST 009C 156 String terminator
OSC 009D 157 Operating system command
PM 009E 158 Privacy message
APC 009F 158 Application program command

00A0 160 Spasi yang bukan pemisah kata
¡ 00A1 161 Tanda seru terbalik
¢ 00A2 162 Tanda sen (Cent)
£ 00A3 163 Tanda Poundsterling
¤ 00A4 164 Tanda mata uang (Currency)
¥ 00A5 165 Tanda Yen
¦ 00A6 166 Garis tegak putus-putus (broken bar)
§ 00A7 167 Section sign
¨ 00A8 168 Diaeresis
© 00A9 169 Tanda hak cipta (Copyright)
ª 00AA 170 Feminine ordinal indicator
« 00AB 171 Left-pointing double angle quotation mark
¬ 00AC 172 Not sign
­ 00AD 173 Tanda strip (hyphen)
® 00AE 174 Tanda merk terdaftar
¯ 00AF 175 Macron
° 00B0 176 Tanda derajat
± 00B1 177 Tanda kurang lebih (plus-minus)
² 00B2 178 Tanda kuadrat (pangkat dua)
³ 00B3 179 Tanda kubik (pangkat tiga)
´ 00B4 180 Acute accent
µ 00B5 181 Micro sign
00B6 182 Pilcrow sign
·Posted by :
Citra yudha
00B7 183 Middle dot





0 komentar: