HELLO packet
What is a HELLO packet?
A HELLO packet is a special data packet (message) that is sent out periodically from a router to establish and confirm network adjacency relationships to other routers in the Open Shortest Path First (OSPF) communications protocol. On networks capable of broadcast or Multicast transmission, a HELLO packet can be sent from one router to all other routers simultaneously to discover neighboring routes.
OSPF networks are made up of many interconnected routers. These routers are connected on their interfaces. The HELLO packet is the method for routers to announce to each other that they share an interface.
These interfaces can be physical, such as Ethernet or fiber, or they can be virtual, as with Generic Routing Encapsulation or virtual private networks. Each interface may also be connected directly to one other router in a point-to-point configuration or to many other routers in a multiaccess network. These combinations make up the four types of OSPF networks: nonbroadcast multiple access (NBMA), broadcast, point to point and point to multipoint.
Without the use of a HELLO packet, each router would need to have its connections to other routers manually configured. Once routers successfully exchange HELLO packets, they can automatically establish adjacency and can begin to route data between them.
HELLO packet format and contents
The HELLO packet is made up of the standard OSPF packet header and the HELLO specific information.
What is in the OSPF header?
The OSPF packet header contains the OSPF version and packet type, the router ID, area ID, and packet authentication and checksum information:
- Type. This identifies the OSPF type of packet: 1 for HELLO packets, 2 for database description, 3 for link state requests, 4 for link state update and 5 to acknowledge other packets have been received.
- Router ID. This is a 32-bit number unique to the router to identify it in the OSPF network.
- Area ID. This 32-bit number identifies the subarea or logical grouping of neighbor routers in the larger OSPF network.
- Authentication. Each OSPF packet may contain authentication information to prevent rouge routers from participating in the network. The authentication can be set to none, simple clear text password, or MD5 hashed password.
What is the HELLO-specific information?
The HELLO packet body contains the network mask, hello interval, router priority, dead interval, designated router, backup designated router and a list of neighbors -- the network mask, hello interval and dead interval must be the same for routers to establish adjacency:
- Network mask. This specifies the network mask of the interface.
- Hello interval. This is how often the router will send a HELLO packet on the interface to maintain adjacency. The default is 10 seconds for broadcast and point-to point networks and 30 seconds for NBMA. A fast HELLO packet is if the hello interval is 1 second or less.
- Router priority. This is a number from 0 to 255, which defaults to 1. The router with the highest value will become the designated router.
- Dead interval. If a router does not receive a HELLO packet from an adjacent router within this amount of time, it will declare the link dead and break adjacency. It is usually four times the hello interval.
- Designated router. The router ID of the designated router manages the central link state database on multiaccess networks.
- Backup designated router. The router ID of the backup designated router also maintains the link state database in the event of a fault with the designated router.
- List of neighbors. This is a list of the router IDs that the router has established adjacency to. Each router expects to see itself in the list of neighbors from routers it has established adjacency to. The list of neighbors is the basis for the link state advertisement.