What is OSPF and How Does It Work?