Ethernet II
Ethernet II adalah sebuah standar enkapsulasi paket data jaringan berbasis teknologi Ethernet yang digunakan oleh protokol TCP/IP. Standar ini dikembangkan oleh Digital Equipment Corporation (DEC), Intel Corporation, dan Xerox sebelum akhirnya diserahkan kepada komite IEEE 802 untuk menjadi standar IEEE 802.3. Ethernet II juga disebut sebagai Ethernet II frame format atau DIX frame format (mengingat pihak-pihak yang mengembangkannya adalah DEC, Intel dan Xerox).
Sebuah "frame" Ethernet II terdiri atas beberapa "field", yakni sebagai berikut:
"Field" Preamble adalah sebuah "field" yang memiliki panjang "8 byte". 7 "byte" dari field ini merupakan susunan angka 0 dan 1 (setiap byte berisi urutan bit codice_1) yang digunakan untuk melakukan sinkronisasi dengan pihak penerima, sedangkan 1 byte terakhir yang berisi codice_2 mengindikasikan bahwa "frame" tersebut adalah "frame" pertama. Sehingga, field ini berfungsi untuk melakukan sinkronisasi dengan pihak penerima dan menandai setiap frame Ethernet.
"Field" Destination Address adalah sebuah "field" yang memiliki panjang 6 "byte" yang menandakan alamat tujuan ke mana "frame" yang bersangkutan akan dikirimkan. Alamat tujuan ini bisa berupa alamat "unicast" Ethernet, alamat "multicast" Ethernet, atau alamat "broadcast" Ethernet. Alamat "unicast" Ethernet merupakan alamat fisik Ethernet yang bersangkutan, yang berupa MAC address, sedangkan alamat "broadcast" Ethernet merupakan sebuah alamat yang memiliki semua bitnya diset ke angka 1, sehingga membentuk pola alamat codice_3.
"Field" Source address adalah sebuah "field" yang memiliki panjang 6 "byte" dan menunjukkan alamat sumber dari mana frame yang bersangkutan berasal. Alamat ini umumnya adalah alamat "unicast" Ethernet.
"Field" EtherType adalah sebuah "field" yang memiliki panjang 2 "byte" yang mendndakan protokol lapisan tinggi yang terkandung di dalam "frame" Ethernet yang bersangkutan. Setelah sebuah kartu jaringan meneruskan "frame" yang bersangkutan kepada sistem operasi "host" tersebut, nilai dari "field" ini akan digunakan untuk meneruskan muatan Ethernet kepada protokol lapisan tinggi yang cocok. Jika tidak ada protokol lapisan tinggi yang cocok, maka nilai dari "field" ini akan diabaikan.
"Field" ini bertindak sebagai tanda pengenal protokol dalam format "frame" Ethernet II. Untuk sebuah "datagram" IP, nilai dari field ini diset ke nilai codice_4, sementara untuk sebuah pesan ARP, nilainya adalah codice_5. untuk selengkapnya, lihat di website IANA.
"Field" Payload untuk sebuah "frame" Ethernet II berisi sebuah "protocol data unit" (PDU) yang dimiliki oleh sebuah protokol lapisan yang lebih tinggi. Ethernet II dapat mengirimkan data dengan ukuran maksimum 1500 byte. Karena Ethernet memiliki fasilitas untuk mendeteksi adanya kolisi dalam jaringan, maka dalam "frame-frame" Ethernet II harus terdapat "payload" paling tidak 46 byte. Jika memang "payload" yang dimiliki oleh protokol lapisan yang lebih tinggi kurang dari 46 "byte", maka "data" tersebut harus diisi dengan beberapa "bit" kosong, agar tetap memiliki panjang 46 "byte".
"Field" Frame Check Sequence (FCS) adalah sebuah field yang ukurannya 4 "byte" yang menyediakan verifikasi integritas bit terhadap keseluruhan "frame" Ethernet II yang bersangkutan. "Field" FCS ini juga disebut dengan "Cyclic Redundancy Check" (CRC). Pihak peneirim akan menghitung nilai dari FCS dan menempatikan hasilnya di dalam "field" ini. Ketika pihak penerima mendapatkan "frame" yang bersangkutan, pihak penerima tersebut akan melakukan penghitungan ulang terhadap FCS dengan menggunakan algoritme yang sama, dan membandingkannya dengan yang terdapat di dalam FCS. Jika kedua nilai tersebut sama, maka "frame" yang bersangkutan dianggap valid dan akan diproses oleh pihak penerima. Jika tidak sama, maka "frame" tersebut diabaikan, seolah-olah tidak ada "frame" yang dikirimkan.
Kalkulasi yang terjadi pada Ethernet II yang disimpan di dalam "field" ini hanya menyediakan layanan integritas level "bit" saja, bukannya layanan integritas terhadap data keseluruhan atau bahkan layanan autentikasi. Sebuah nilai FCS yang valid tidak menjamin bahwa "frame" yang bersangkutan tidak dimodifikasi oleh orang yang tidak berhak selama transit di "node" lainnya. Kalkulasi terhadap FCS telah diketahui secara umum dan sebuah "node" yang terletak di antara dua buah "node" yang saling berhubungan dapat saja mengintersepsi "frame" yang sedang dipertukarkan, memodifikasi "frame" tersebut, menghitung kembali nilai FCS dan meletakannya ke dalam "field" ini sebelum meneruskaan "frame" tersebut. Si "node" penerima pun tidak dapat mendeteksi bahwa "frame" yang diterimanya telah dimodifikasi hanya dengan "field" FCS. Karenanya, untuk mencegah hal ini terjadi, gunakan protokol level tinggi yang menawarkan fitur keamanan, seperti halnya IPSec.
Selain itu, "field" ini hanya menyediakan deteksi terhadap kesalahan pada level "bit" saja, dan tidak dilengkapi dengan fitur pemulihan dari kesalahan tersebut ("error recovery"). Ketika nilai FCS yang dihitung oleh pihak penerima tidak sama dengan nilai FCS yang disimpan di dalam "frame", maka satu-satunya kesimpulan yang dapat diambil dari hal itu adalah bahwa sebuah "bit" atau beberpa "bit" telah berubah. Penghitungan FCS juga tidak menyediakan informasi tentang di mana letak kesalahan tersebut atau bagaimana cara mengoreksinya, tapi beberapa jenis mekanisme CRC lainnya (yang digunakan dalam teknologi "framing" lainnya) dapat melakukan hal ini. Contoh dari hal ini adalah "field" codice_6 dalam header sebuah sel Asynchronous Transfer Mode (ATM), yang dapat menyediakan layanan pendeteksian kesalahan seperti halnya Ethernet II serta juga mampu melakukan pemulihan terhadap kesalahan tersebut, meski terbatas.
Berikut ini merupakan contoh dari "frame" Ethernet II yang diambil dengan menggunakan Microsoft Network Monitor untuk sebuah "datagram" IP:
Semua frame Ethernet harus membawa payload paling tidak 46 bita. Ukuran minimum frame Ethernet tersebut adalah hasil dari pengaplikasian skema "media access" yang digunakan oleh Ethernet, yakni CSMA/CD ("carier sense multiple access with collision detection"), sehingga mengakibatkan ukuran minimalnya yang harus 46 bita.