The Proposal

For my design project, I will be designing a network bridge that will connect one isolated LAN to another. The bridge will operate in two distinct modes. First, it will have the ability to be set to a promiscuous mode, that is, whatever packets are sent to the bridge will automatically be transferred through. This mode will make the device act much like a simple network hub. The second mode will cause the device to act like a network switch. That is, it will only allow packets destined for the appropriate LAN to pass over the bridge.

This device will act primary at the network layer of the 5-tier computer networking architecture. All routing and forwarding will take place by examining the destination IP address in the packet header. After examination, the Coldfire will make the decision to either send the packet along or simply drop the packet.

The device itself will consist of two Motorola ColdFire Boards, each with a desktop computer connected via a RJ-45 cable from the Network Interface Card of the PC to the Ethernet port on the system board. The two system boards will then be connected through their DB-9 (Serial) Ports. One program will be running on both boards.

First, the program will initialize each of the boards UART modules. Next, the program will be in a constant loop, checking for changes in the Ethernet data register. If the bridge is set to allow all packets to pass through, the data will simply be passed to the boards UART transmit buffer. The UARTs of both boards will negotiate and the data will be transmitted. The receiving board will then transmit this data from its UART to the Ethernet data register, which will pass the data onto the receiving PC, simulating the transfer of data over a hub.

When in "switch" mode, the boards will act like an intelligent hub. On each board, a predetermined value will be saved in a certain memory location. This will be the network (IP) address of the opposite PC (LAN). Upon receiving a packet from the Ethernet port, the program will compare the destination IP address contained in the packetís header with the value saved in memory. If these values match, then the packet will be forwarded same as before. If the values do not match however, the packet will be dropped.

For the board-to-board communication, data will be transferred one bit at a time through the Serial port. Through use of the various control registers, an open communications pipe will be kept open. The UARTs on each board will be able to control transmissions and receptions, which will avoid collisions when both boards are trying to send data across the bridge. This communications pipe will remain open until one of the users sends the appropriate character set into the UART buffer, which wil then terminate the communications program, thus closing the pipe.