The audience who can go through is middle level system engineers , programmers, and one who aspires to understand the network architecture.
In windows everything goes with dll’s , API’s , usermode applications and kernel mode drivers. People at the debugging end only talk in terms of process , PEB, threads, TEB and API call’s. Today I am going to explain about the windows networking I/O model which is vast but interesting.
Everyday , users access files on remote servers , access the shares, access the drives etc. Many of the engineers or system administrators do not think about the troubleshooting aspect of file systems, because it is one of the toughest protocol to understand which is Server Message Block ( SMB ) . My article will help system engineers to analyze and debug SMB protocol and after reading my blog , every one can have a fair idea about the file operations and they can easily start troubleshooting the issues.
As I said earlier in my post, every component in windows operating system is either a SYS or a DLL . Microsoft has designed the redirector in the form of a driver. The term redirector is used with network because its job is to redirect the request to the destination using TCP stack.
In windows the basic functionality of redirector is used access files from a client to the server .Here client falls into two categories , on which is operating system and other is the client application. This helps engineers while troubleshooting various issues related to file systems which are very complex to resolve.
So typical implementation of client redirector is shown below ( write diagram )
Network redirector is used to forward the file I/O requests from source / client to destination , either from an custom / user mode application or from windows explorer, the request is then handled by the network redirector and pass the request to the appropriate NDIS interface and down to the NIC card.