Skip to content

This project is based on the linux tuntap device, and builds a basic protocol stack from the bottom up

Notifications You must be signed in to change notification settings

zhangxm99/Myprotostack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

                      +--------------------------------+                                          
                      |           IPManager            |                                          
                      |+--------+           +--------+ |                                          
                      || TCPQ   |      -----|  UDPQ  | |                                          
                      |+--------+   if UDP  +--------+ |                                          
                      |       ^      /   +-----------+ |                                          
                      |        \    /  --|ICMPManager| |                                          
                      |   if TCP\  / -/  +-----------+ |      NetworkLayer                                    
                      |          \/-/if ICMP      |    |                                          
                      |           ^      |<-------|    |                                          
                      |-----------|------|-------------|                                          
                      |    receive|      |transmit     |                                          
                      |           |      |             |                                          
                      |           |      v             |                                          
                      |           IPDevice |           |                                          
                      +--------------------|-----------+                                          
                        |                  |                                                      
                 ip_read|                  |ip_write                                              
                      +-|------------------v-----------+                                          
                      | |      EthernetManager         |                                          
                      |                                |                                          
                      |+--------+         +-----------+|                                          
                      ||  ipQ   |    ---->|ArpManager ||                                          
                      |+--------+   /     +-----------+|                                          
                      |     ^      /        /          |                                             
                      |      \    /if arp  /           |      LinkLayer                                    
                      | if IP \  /        /            |                                          
                      |        \/        v             |                                          
                      |         ^       |              |                                          
                      |---------|-------|--------------|                                          
                      | receive |       v transmit     |                                          
                      |     ^    etdevice       |      |                                          
                      +--------------------------------+                                          
                            |                   |                                                 
                 tuntap_read|                   |tuntap_write                                     
                      +-----|-------------------|------+                                          
                      |     |                   v      |                                          
                      |                                |                                          
                      | Tuntap                         |      PhysicalLayer                                   
                      |                                |                                          
                      |                                |                                          
                      +--------------------------------+                                          

About

This project is based on the linux tuntap device, and builds a basic protocol stack from the bottom up

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published