# Why wifi can not act like a server and client at the same time?

According to my experiments, any wifi card can (naturally) connect to a access point as a client and act as a server (most of them in ad-hoc mode).

Why can not a wifi card behave as both a client and a server at the same time?

Is there a hardware restriction that can not be worked around by a software? Can't switching between the modes be an option if we accept performance impact?

• I suspect this is due to having to pick which DSSS code to use (en.wikipedia.org/wiki/Direct-sequence_spread_spectrum) and how you can resolve a transmission on the two unrelated networks at the same time. – pjc50 Jun 8 '14 at 20:03
• Apple Airports seem to manage it OK. They can join existing networks and be access points themselves simultaneously, i.e. extend the network, and they don't have two cards. – user207421 Feb 18 '15 at 2:10

It's a driver limitation. There is no reason a wifi radio couldn't be both a client and server at the same time, but no-one has written driver software to do that because there is no real demand and the amount of work is considerable.

• Actually there is such a product (as you already know) called "wireless range extender". People might develope such a driver for a cheap solution. Maybe diving into wireless card driver of Linux project is a good starting point. – ceremcem Jun 9 '14 at 18:33
• I have a network at my house of 6 WiFi access points, two of them are hard-wired, the other 4 are on a radio (WiFi) link. They are all usable as access points. The WiFi connected repeaters pick different, unused channels for their interlink. – R Drast May 7 '15 at 10:31

this is a hardware limitation I believe. At a particular time your wifi module in your laptop or pc is tuned to a specific channel. Unless you are using a special sniffing wifi hardware that sniffs a lot of channels. Usually, when you are communicating with a router, your pc/laptop modulates your data to fall into that channel and sends them to the router. THe router too sends packets of data to that specific channel. Two devices speaking at the same time in the same channel will create a noisy situation and will destroy data.

refer this for extra knowledge: Why do wifi channels overlap?

• I think your answer is not correct. Sure, you want to prevent two stations transmitting at the same time but the driver that implements the protocol should be able to work around this (retries, increase power, etc..). As mentioned earlier, it is probably a software (driver) limitation as it should keep track of multiple sets of traffic (server and client roles) at the same time. – captcha Feb 18 '15 at 4:25
• this hardware limitation is coming from science. If two people use the same channel to transmit at the same time then either the strong one wins, or both transmissions may fail. In the protocol, IEEE 802.11 for Wifi, it is made sure two that the software stack waits to transmit through the hardware till here is no one else communicating in the channel. – Denis Feb 18 '15 at 4:30
• your explanation makes more sense then mine but I was trying to say the same thing. Of course a driver will not all of a sudden change the law of physics. The driver should however be able to alternate between the signals; rx and tx as a client for a while, then rx and tx as a server for a while. The performance will go down but it is possible to be client and server in this way. – captcha Feb 18 '15 at 21:49
• I think we both got "at the same time" in two different ways. I took it too literally and you took it more towards time-slicing . – Denis Feb 19 '15 at 2:59

It can be client and the server at the same time. Read this article Full-Duplex Wireless Design

You can Try the Zig-Bee Modules for functioning of the module as the transceiver ,using the Nest Mode or Tree mode.

While contacting the WLAN network we have to provide the Access-Point for the System to access,

While talking about client utility with a WiFi card, your system has a WiFi card you can share your data and vice-versa connect to others on the WAN so you are both transmitting and receiving at the same time

Wi-fi Uses the Concept of FHSS AND OFDM so either way communication is pretty easy

• You Must have a Database Or Information for WiFi card to function as a server in this case that is not present and you require Acesspoint to really connect to the Database