-
Notifications
You must be signed in to change notification settings - Fork 41
A work-in-progress for what is to be a software-free web server for static content.
License
hamsternz/FPGA_Webserver
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
I'm slowly building a hardware-based web server. Feel free to look around, but it is not yet anywhere near working Status ====== * ARP replies sent at Gigabit speeds * ICMP is working at Gigabit speeds * UDP RX & TX works at Gigabit speeds TODO LIST OF MINOR ISSUES THAT I DON'T WANT TO FORGET ===================================================== Inbound packet processing ------------------------- * Inbound packet reception errors should cause the packet to be dropped. * Inbound packet CRC verification is not being performed - should cause packet to dropped * Inbound packet MAC filtering not coded - should only accept packets for 'our_mac' or the broadcast MAC. This could be handled the same as CRC or reception errors (where the FIFO can be rolled back). Doing this in one place could save resources. TCP/IP Session protocol ----------------------- * Can establish a TCP/IP session * Sends ACKs for incoming data * Currently listens on port 80 for any incoming connections * Replies with 'FPGA says "Hi"\r\n' to any incoming packets that contains data * Tears down session when remote end closes TCP/IP packet support - mostly finished --------------------------------------- * TCP RX IP Checksum is not being validated * TCP RX TCP Checksum is not being validated UDP Support - mostly finished ----------------------------- * UDP TX cannot send a packet without any data * UDP RX IP Checksum is not being validated * UDP RX UDP Checksum is not being validated * UDP RX of a packet with no data will not result in anything that the consuming design can see. ICMP Support - mostly finished ------------------------------ * ICMP 'echo request' is not validating that the IP checksum is correct * ICMP 'echo request' is not validating that the ICMP length field is correct. * ICMP 'echo request' is not validating that the ICMP checksum is correct Outbound packet processing -------------------------- * Outbound packets are not being sent correctly for 10 & 100Mbps speed. This requies a 4k FIFO, which will block the arbiter when less than 1600 entries are free (enough for a packet and some loop latency)
About
A work-in-progress for what is to be a software-free web server for static content.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published