Hello @Aamirkhanna ,
a router performs inter networking between different IP subnets that are mapped to different L2 segments
>> My question is does the router have multiple DLLs(multiple NICs) with different mac addr(since Mac addr is based on NIC), each associated with their corresponding interface such that the receiving DLL passes the packet to NL above and during outgoing of same packet NL passes it to DLL of the appropiate interface which in turn passes it next hop?
This is true, the router is not limited to LAN interfaces it can have WAN interfaces of different types synch serial using different encapsulations or ATM or POS.
Using the CEF tables : Forwarding Information Base FIB and the Adjacency Table a router is able to efficiently process a received packet extracting the IP packet from the received frame, adjusting the IPv4 header ( decrease by 1 the TTL and recompute the header checksum that will increment by 1) . The IPv4 packet with the updated header will be object of packet rewrite that is encapsulated in a frame according to the exit interface and using MAC addresses in case of a LAN interface with MAC SA = exit interface MAC and Dest MAC = MAc of next-hop or final destination. In case of non LAN exit interface MAC addresses are not involved for example for serial interface with PPP, in the case of FR there is an outgoing value that is the DLCI value to reach tne next-hop.
With ATM is even more complex as the packet has to be segmented in 48 bytes cell payloads to travel in ATM cells that are fixed size of 53 bytes with 5 bytes of header ( before Segmentation the IPv4 packet is placed within an AAL5 PDU with AAL5snap being the more common encapsulation). In the ATM cell header the values of VPI and VCI are the equivalent of FR DLCI to send the cells over a specific PVC permanent virtual circuit to the next-hop that will re-assembly the AAL5 PDU and it will extract the IP packet.
The diagram that you have provided shows how a router works at network layer for example for IPv4 and interconnects two different data link segments
Hope to help
Giuseppe