Broadcast address

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

A broadcast address is a network address at which all devices connected to a multiple-access communications network are enabled to receive datagrams. A message sent to a broadcast address may be received by all network-attached hosts.

In contrast, a multicast address is used to address a specific group of devices and a unicast address is used to address a single device.

For network layer communications, a broadcast address may be an IP address. In Ethernet networks, it can be a MAC address.

IP networking[edit]

In Internet Protocol version 4 (IPv4) networks, broadcast addresses are special values in the host-identification part of an IP address.[1] The all-ones value was established as the standard broadcast address for networks that support broadcast.[1] This method of using the all-ones address was first proposed by R. Gurwitz and R. Hinden in 1982.[2] The later introduction of subnets and Classless Inter-Domain Routing changed this slightly, so that the all-ones host address of each subnet is that subnet's broadcast address.[3][4]

As shown in the example in the table below, the broadcast address for an IPv4 host can be obtained by taking the bit complement (bitwise NOT) of the subnet mask and then performing a bitwise OR operation with the host's IP address. In short, take the host's IP address and set to '1' any bit positions which hold a '0' in the subnet mask. For example, for broadcasting a packet to an entire IPv4 subnet using the private IP address space 172.16.0.0/12, which has the subnet mask 255.240.0.0 (again, refer to the table below to see how this is obtained), the broadcast address is 172.16.0.0 bitwise ORed with 0.15.255.255 = 172.31.255.255.

Network IP address breakdown for 172.16.0.0/12 Binary form Dot-decimal notation
In bold below is shown the host part (suffix) of the IP address, with the network address prefix being the non-bold bits to its left. To obtain the broadcast address, the host bits get set to all 1's, while the network address prefix bits remain intact.
1. Network IP Address 10101100.00010000.00000000.00000000 172.16.0.0
2. Subnet Mask, or just "Netmask" for short (The '/12' in the IP address in this case means only the left-most 12 bits are 1s, as shown here. This reserves the left 12 bits for the network address (prefix) and the right 32 - 12 = 20 bits for the host address (suffix).) 11111111.11110000.00000000.00000000 255.240.0.0
3. Bit Complement (Bitwise NOT) of the Subnet Mask 00000000.00001111.11111111.11111111 0.15.255.255
4. Broadcast address (Bitwise OR of 1. Network IP Address and 3. Bit Complement of the Subnet Mask. This makes the broadcast address the largest possible IP address (and host address, since the host address portion is all 1s) for any given network address.) 10101100.00011111.11111111.11111111 172.31.255.255

A special definition exists for the IP address 255.255.255.255. It is the broadcast address of the zero network or 0.0.0.0, which in Internet Protocol standards stands for this network, i.e. the local network. Transmission to this address is limited by definition, in that it is never forwarded by the routers connecting the local network to other networks.

IP broadcasts are used by BOOTP and DHCP clients to find and send requests to their respective servers.

Internet Protocol version 6 (IPv6) does not implement this method of broadcast, and therefore does not define broadcast addresses. Instead, IPv6 uses multicast addressing to the all-hosts multicast group. No IPv6 protocols are defined to use the all-hosts address, though; instead, they send and receive on particular link-local multicast addresses. This results in higher efficiency, because network hosts can filter traffic based on multicast address and do not need to process all broadcasts or all-hosts multicasts.

Ethernet[edit]

Broadcast is possible also on the underlying data link layer in Ethernet networks. Frames are addressed to reach every computer on a given LAN segment if they are addressed to MAC address FF:FF:FF:FF:FF:FF. Ethernet frames that contain IP broadcast packages are usually sent to this address.

Ethernet broadcasts are used by Address Resolution Protocol and Neighbor Discovery Protocol to translate IP addresses to MAC addresses.

IPX networking[edit]

Internetwork Packet Exchange (IPX) allows broadcast. A packet with network number of FFFFFFFF is sent to all networks available. When the node number is specified as FFFFFFFFFFFF, the packet is intended to be received by all hosts in the network.

AppleTalk[edit]

The AppleTalk protocol allows broadcast. When the node ID is specified as 255, a packet is sent to all networks available.

See also[edit]

References[edit]

  1. ^ a b J. Mogul (October 1984). BROADCASTING INTERNET DATAGRAMS. doi:10.17487/RFC0919. RFC 919.
  2. ^ IEN 212, IP - Local Area Network Addressing Issues, Robert Gurwitz, Robert Hinden, Bolt Beranek and Newman (BBN) (September 1982)
  3. ^ J. Mogul (October 1984). BROADCASTING INTERNET DATAGRAMS IN THE PRESENCE OF SUBNETS. doi:10.17487/RFC0922. RFC 922.
  4. ^ RFC 922, Broadcasting Internet Datagrams In the Presence of Subnets, J. Mogul (October 1984)