TFTP C++ not receiving ACK
===

I am writing a TFTP Client using C++. I was able to send a read request using "octet" mode to a default TFTP Client (tftpd32). The problem is that I am unable to send the ACK back at the regular TFTP respond. I am getting the following error: 

    Connection received from 127.0.0.1 on port 51401 [27/07 23:03:15.612]
    Read request for file <test.txt>. Mode octet [27/07 23:03:15.612]
    Using local port 51402 [27/07 23:03:15.612]
    Connection received from 127.0.0.1 on port 51401 [27/07 23:03:18.624]
    Unexpected request 4 from peer [27/07 23:03:18.624]
    Returning EBADOP to Peer [27/07 23:03:18.624]

Why I am able to send the RRQ but not the ACK using the same method?
