Types
The LSA types defined in OSPF are as follows: The opaque LSAs, types 9, 10, and 11, are designated for upgrades to OSPF for application-specific purposes. For example, OSPF-TE has traffic engineering extensions to be used by RSVP-TE in Multiprotocol Label Switching (MPLS). Opaque LSAs are used to flood link color and bandwidth information. Standard link-state database (LSDB) flooding mechanisms are used for distribution of opaque LSAs. Each of the three types has a different flooding scope. For all types of LSAs, there are 20-byte LSA headers. One of the fields of the LSA header is the link-state ID. Each router link is defined as one of four types: type 1, 2, 3, or 4. The LSA includes a link ID field that identifies, by the network number and mask, the object that this link connects to. Depending on the type, the link ID has different meanings as shown in below table: ----OSPFv2 for IPv4
As peOptions
The Options field is present in: * Hello packets * Database Description packets * all the LSAs The option field Indicative the feature supported by the source router. In Hello packet, a mismatch, will result in reject of neighbor. for LSA only packet that matches the destination routes willingness is forward. ;Options (8 bits): :* E-Bit: Indicative if area is AS-external capable, or STUBed. :* x-bit: Set 0, used previously used by MOSPF :* N/P-bit: Indicative if area is NSSA. :* EA-bit: Indicative receive and forward External-Attributes-LSAs :* DC-bit: Indicative router's handling of demand circuits, . :* O-bit: Indicative router's willingness to receive and forward Opaque-LSAs :* *: Reserved set 0Database description DBD
''Database description'' messages contain descriptions of the topology of the autonomous system or area. They convey the contents of the link-state database (LSDB) for the area from one router to another. Communicating a large LSDB may require several messages to be sent by having the sending device designated as a master device and sending messages in sequence, with the slave (recipient of the LSDB information) responding with acknowledgments. ;Interface MTU (16 bits): the largest IP datagram that can be sent without fragmentation. In bytes. ;flags(8 bits): 3 bits are defined. :*I-Bit: Indicative this is the first packet in the sequence of Database Description Packets. :*M-Bit: Indicative there is more packet to follow. :*MS-bit Indicative if source is master during the Database Exchange process. ;DD sequence number (32 bits): Database Description, increments until the complete database description has been sent.Link state request
Link state request (''LSR''): ''Link state request'' messages are used by one router to request updated information about a portion of the LSDB from another router. The message specifies the link(s) for which the requesting device wants more current information.Link State Update packet
;# LSAs: the total number of LSAs included in this update. ''Link-state update'' (''LSU'') messages contain updated information about the state of certain links on the LSDB. They are sent in response to a link state request message, and also broadcast or multicast by routers on a regular basis. Their contents are used to update the information in the LSDBs of routers that receive them.Link state acknowledgment
''Link-state acknowledgment'' (''LSAck'')messages provide reliability to the link-state exchange process, by explicitly acknowledging receipt of a Link State Update message. The LSA acknowledgment, explicitly acknowledged, that it have received a LSA, by mirroring it back.Common LSA 20-byte Packet Header
OSPF v3
In 2008, with the introduction of RFC5340 a new standard was set.LSA Packet Header Formats
As peCommon LSA 20-byte Packet Header
As peType 1: Router LSA Header
Type 2: Network-LSA Header
Type 3: Inter-Area-Prefix-LSA Header
Type 4: Inter-Area-Router-LSA Header
Type 5: AS-External-LSA Header
Type 6: MOSPF LSA Header (''Deprecated'')
Type 7: NSSA-LSA Header
''(Same as Type 5 except for the type number field)''Type 8: Link-LSA Header
Type 9: Intra-Area-Prefix LSA Header
{, class="wikitable" style="text-align:center" , - ! width="3%", Bit/References