sonar 0.0.4

Simple data transfer protocol using audio signals
Documentation
# todo



Check the current implementation of the modem module. I need you to help me to improve it by adding this stuff:

inside the define_layer_struct macro also add the following:
- 


## Data Link Layer

- Frame
    - DHCP Frame
    - ARP Frame
    - Ethernet Frame
    - PPP Frame
    - BSC or BISYNC Frame
- Error Detection
    - VRC * LRC = CRC
    - Checksum
    - Parity Bit
- Flow Control
    - Stop-and-Wait (+ARQ)
    - Sliding Window
    - Go-Back-N (+ARQ)
    - Selective Repeat (+ARQ)

    - Multiple Access Protocols
        - ALOHA
        - Slotted ALOHA
        - CSMA (Carrier Sense Multiple Access)
        - Controlled Access
            - Polling
            - Token Passing
            - Reservation
        - Channelization
            - Ethernet
            - VLAN
            - STP (Spanning Tree Protocol)

### Logical Addressing & Subnetting


## Network Layer

- Packet
    - ARP Packet (involves MAC address (from Data Link Layer))
    - DHCP (Dynamic Host Configuration Protocol)
    - ICMP (Internet Control Message Protocol)
        - v4
            <!-- - CPT Activity -->
            <!-- Fragmentation -->
        - v6
### Routing
    - 

## Transport Layer

- Segment
    - TCP (Transmission Control Protocol)
    - UDP (User Datagram Protocol)

## Application Layer

- Message
    - DNS (Domain Name System)
    - SNMP (Simple Network Management Protocol)
    - HTTP (HyperText Transfer Protocol)
    - FTP (File Transfer Protocol)
    - SMTP (Simple Mail Transfer Protocol)


# Network Security...

- Cryptography