Skip to content

JihoChoi/i-ack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

i-ACK

🚩⭕ Implicit ACK

Newcomer's Project for SNU CSE SCONE

Contributors

Installation & Instructions

Installation
Instructions

Project Overview

Modify OpenWrt for routers to generate L2 ACK and send the ACK to senders to improve throughput

Default OpenWrt

    [Server]  <------>  [AP]  <------>  [Client]

        | <----- REQ ---- | <----- REQ ---- |

        | ----- DATA ---> | ----- DATA ---> |

                          | <-- L2 ACK ---- |

          <-- L4 ACK ---- | <-- L4 ACK ---- |

Modified

    [Server]  <------>  [AP]  <------>  [Client]

        x <----- REQ ---- x <----- REQ ---- x

        x ----- DATA ---> x ----- DATA ---> x

                     [DET DATA]
                          $
                    [GEN L4 ACK]

                          x <-- L2 ACK ---- x

                    [DET L2 ACK]
                          $
                    [SND L4 ACK]

        x <--- F-ACK ---- x

                          x <-- L4 ACK ---- x
                      
                      [IGNORE]

OpenWrt Structure

(Open Embedded System for Wireless Routers)

Stack Overflow

./build_dir

is used to upack all the source archives and to compile them

  • host
  • toolchain
  • target
./staging_dir

is used to install all the compiled programs into or for preparing the firmware image

  • host
  • toolchain
  • target

Background Information

Network Layers - Open Systems Interconnection Model (OSI Model)

Layer Name Protocols
L7 Application FTP Data Data
(L6) (Presentation)
(L5) (Session)
L4 Transport TCP Segments TCPH + Data
L3 Network IPv4 Packets IPH + TCPH + Data
L2 Data Link MAC Frames FH + IPH + TCPH + Data + FF
L1 Physical Bits

Wireless Network - IEEE802.11

  • L2 ACK : MAC ACK for Wireless (Wi-Fi) Connection
  • L4 ACK : TCP ACK

TCP Congestion Control

  • .

References