OSPF stands for Open Shortest Path First, which means it's an open standard which implements a solution to the Shortest Path First problem. OSPF is a dynamic-routing protocol built by the Internet Engineering Task Force (IETF) with TCP/IP in mind. It is a routing protocol for using within a single controlled network of networks (internetwork). It's designed to be fast, scale well, and to use as little traffic as possible for its control messages, and therefore competes with older yet more popular and widely deployed dynamic-routing protocols for that purpose. The protocol is a transport layer protocol, whose protocol number is 89.
The protocol is a link-state protocol, which means that every router connected to the internetwork holds the exact and complete topography of the entire internetwork in the form of a database. Each of those routers learn of the topology dynamically, constructs a graph from the topology database, and then runs an algorithm on it to find the shortest path to each of the vertices on that graph. The algorithm results construct the routing table for each router, and the protocol ensures that each router will have a correct and complete routing table.
The protocol is designed to support all the latest developments of the Internet, such as routing according to the type of service (TOS) field in the IP header, support of CIDR and subnet masking, and more. The routers that run OSPF are identified and can even be authenticated cryptographically by the protocol, to protect against malicious users distributing false topology information.