3

How is bandwidth managed in an unmanaged network switch?

Suppose that port 1 is connected to a a very busy server. If suddenly machines connected to ports 2, 3 and 4 decide to send a massive amount of packets (in an extreme scenario: at maximum theoretical throughput) to the server in port 1, how will the switch handle this?

Will the switch perform any sort of flow control, ensuring that each sending port gets a fair share of the available bandwidth to port 1, or will they simply be served in a "first come, first served" manner (obviously, dropping packets as necessary)?

2

In your scenario, most ethernet frames will be dropped, and it is up to the upper-layer protocols, e.g. TCP, to handle that. There is a rudimentary ethernet flow control, but it is poorly supported. Switches only have tiny buffers, and a 3:1 bandwidth over-subscription will really cause a 3:1 frame drop rate.

Ethernet (layer-2 frames), and IP (layer-3 packets) will really play no part in this. TCP (layer-4 segments) guarantees delivery by requesting dropped segments be resent and shrinking the TCP windows. UDP, or other connectionless protocols, will need an application to request lost data to be resent.

| improve this answer | |
  • 1
    Thank you for your answer. Just to be absolutely clear on one detail: the switch will make no effort to ensure any kind of fairness, correct? As in, the frames which are dropped by the switch will be whichever hit the switch at the given moment that the buffers are full, right? – user5728855 Aug 10 '16 at 0:13
  • 1
    Under normal circumstances, no. Some switches can be set up with layer-2 QoS to give some traffic preference, but the buffers are so small that an overload of the magnitude in your scenario will quickly overload it. There are studies about LAN over-subscription rates. It can be very expensive to impractical to get a 1:1 rate, so you try to achieve a balance. – Ron Maupin Aug 10 '16 at 0:17
0

You will encounter overruns. Which indicate number of times receiver hardware wasn't able to deliver received data into a hardware buffer. Usually hardware buffer is is shared with other ports for example ports 1-8 share same buffer and ASIC. In some switches models if ASIC buffer is overload than data is queued to general buffer but this is causing what we calling punting and slows down whole switch as packets need to be processed by CPU. packets which would not fit into hardware or general buffer will be dropped. But in your scenario wouldn't really be a issue. Issue is when you have more traffic than backplane could handle.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.