diff --git a/003-mac-address.md b/003-mac-address.md index 954c193..daab810 100644 --- a/003-mac-address.md +++ b/003-mac-address.md @@ -7,5 +7,4 @@ L'indirizzo MAC, noto anche come *Physical Address* o *indirizzo layer 2* o *dat - Il MAC address è composto da 48 bit (6 byte). Ogni byte è rappresentato in formato esadecimale e i byte possono essere separati da trattini (`-`), punti (`.`) oppure due punti (`:`), a seconda della notazione adottata - I primi 3 byte costituiscono l'**OUI** (Organizationally Unique Identifier), un codice standard che identifica il produttore della scheda di rete - Gli ultimi 3 byte sono assegnati dal produttore e garantiti univoci per ogni dispositivo -- L'indirizzo MAC è fisso e direttamente integrato nella scheda di rete (NIC - network interface card) - +- L'indirizzo MAC è fisso e direttamente integrato nella scheda di rete (NIC - network interface card) \ No newline at end of file diff --git a/004-ethernet-frame.md b/004-ethernet-frame.md new file mode 100644 index 0000000..b774123 --- /dev/null +++ b/004-ethernet-frame.md @@ -0,0 +1,28 @@ +# Ethernet Frame + +L'Ethernet Frame è definito dallo standard `IEEE 802.3` ed opera a livello data-link nelle reti cablate. Di seguito si descrive la struttura tipica di un frame Ethernet: + +![frame-structure](/asset/img/frame-structure.png) + +## Struttura del Frame + +L'ethernet frame è composto da tre parti principali: header, payload e trailer. La dimensione totale di un frame Ethernet standard varia da un minimo di 64 byte a un massimo di 1518 byte. + +### Header + +- L'header include gli indirizzi MAC di origine e destinazione, che identificano rispettivamente il dispositivo mittente e quello ricevente all'interno della rete locale +- **Type/Length**: questo campo può avere doppia funzione: + - Puó indicare la lunghezza del payload + - Tramite un valore esadecimale, identifica il tipo di protocollo utilizzato per generare il payload (ad esempio, 0x0800 equivale a IPv4). + +### Payload + +Il payload contiene i dati provenienti dal livello di rete (network layer). + +- Il payload ha una dimensione massima di 1500 byte, nota come `MTU` (Maximum Transfer Unit) +- Se il payload non raggiunge la dimensione minima di 46 byte, viene applicato un padding per garantire la corretta dimensione minima del frame +- Nel caso in cui il payload del livello di rete superi l’MTU, esso viene frammentato in più pacchetti per poter essere correttamente incapsulato nei frame Ethernet. + +### Trailer + +- **FCS (Frame Check Sequence)**: il trailer termina il frame con un campo di 4 byte, il cui scopo è la verifica dell’integrità dei dati trasmessi. \ No newline at end of file diff --git a/asset/img/frame-structure.png b/asset/img/frame-structure.png new file mode 100644 index 0000000..47fc8be Binary files /dev/null and b/asset/img/frame-structure.png differ