I don't get how Network addressing works for Multi-processor systems.
Check me out : Normal TCP/IP Networking uses The destination IP to designate the entire host/system, and the L4 (TCP/UDP) destination port to designate the target application.
I can (presumably) set the system to have one IP address, and have applications running on the different CPU's use different L4 port numbers. Then, for each incoming packet the L4 port can be used to decide to which CPU to send it. BUT - how does the system ensure applications on one CPU will not re-use a L4 Port number being used on the other?
If the above is the same, it seems to mean I can't really use two (or more) CPU's for one application. For example, if I am running a web-server, all packets toward it will have a TCP port value of 80, and how will the system then decide which packets to send top which CPU?
- It is possible, of course to give each CPU its own IP address - but then again, I will not be able to run a multi-CPU application.
What am I missing? how does this work?