Lecture 21, part 2: Ethernet

Ethernet overview

A network is a group of computers (which I will also call nodes, hosts, or machines) that are connected together.

The physical medium that is used to connect them (e.g. twisted pairs of wires, radio waves, fiber-optic cable, etc) along with the rules for interpreting those signals (e.g. high voltage means 1) are referred to as the physical layer of the network. The physical layer gives a mechanism for transmitting a packet of bits from one host to another.

On top of the physical layer, the link layer defines how packets of bits should be sent and received. Ethernet is the most commonly used link-layer protocol.

Ethernet is a broadcast protocol: many hosts are connected to all other hosts. To send a packet, the sender first checks to see if the medium is in use. If not, it places the packet on the wire. It is possible that there are collisions if two hosts on the same network try to send at the same time. Senders are responsible for listening to the network to ensure that the packets they sent were received. If a collision is detected, the sender may retransmit after a delay. If the packet fails multiple times, it may be dropped. To detect collisions, ethernet packets contain a checksum.

Every ethernet packet contains a destination address; each receiver is responsible for discarding packets that are not destined for them. However, many network cards can be placed in promiscuous mode, where every packet is received whether it is addressed to the host or not.