- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-28-2017 08:42 PM - edited 03-08-2019 12:32 PM
Three PCs (A, B, C) are connected to the SW1.
I have always wondered that how collision can never happen in Switch. Even though PC A and PC B sends the frame exactly at the same time to PC C, collision doesn't happen. Recently, my friend told me that collision cannot happen in that scenario because the switch has the large buffer. He explained to me briefly about how it works. My question is how big is this buffer? Plus, what would happen if received data from PC A and PC B are bigger than this buffer size? -> I am guessing that the switch would simply drop the frames and clear the buffer. If clearing buffer keeps happening (Packet Loss) because received data is bigger than the buffer size, how does the control flow happen? Lastly, is large buffer == Queue?
Solved! Go to Solution.
- Labels:
-
Other Switching
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-30-2017 01:38 AM
That varies between switch devices. Generally, switches with more buffer capacity tend to be more expensive. (Much like PCs or smart phone with additional memory.)
"Plus, what would happen if received data from PC A and PC B are bigger than this buffer size? -> I am guessing that the switch would simply drop the frames and clear the buffer."
Yes, frame/packet is dropped; usually not as "buffer"likely still contains earlier received frames/packets.
" If clearing buffer keeps happening (Packet Loss) because received data is bigger than the buffer size, how does the control flow happen?"
That depends on source to destination flow management protocol. Sometimes loss goes unnoticed. When detected, loss may cause retransmission or lost may cause source to stop sending.
"Lastly, is large buffer == Queue?"
Yes and no. First "large" isn't needed, i.e. does buffer == queue? Second, queue is often used in the context of multiple frames/packets waiting, e.g. an egress queue. Although buffer can be used in that context too, it's often more often used for single frame/packet waiting area (e.g. a memory area to save a frame/packets actually being actively received from the wire) or waiting area perhaps more dynamically managed, e.g. memory buffers allocated for multiple received frames/packets that haven't be specifically processed for a particular destination egress queue yet. (The last, though, might also be called a queue.) Again, there's overlap in the usage of the two terms, including either might be used.
https://en.wikipedia.org/wiki/Data_buffer
https://en.wikipedia.org/wiki/Queue_(abstract_data_type)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-30-2017 12:26 AM
The frame buffer are those egress queues on the switch port. Each switch port are designed to equipped with enough memory buffer to support the port speed (e.g. 10Gbps) and max frame sizes (e.g. jumbo frame 9000) so that it don't get overrun by operation.
Egress drops (due to buffer overun) happen if there is a backpressure coming from the other end (e.g. NIC of the server connected) due to some sw/hw issue preventing the receiving end (e.g. server) nic are processing the incoming frame quick enough. That is considered exception to the desired operation.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-30-2017 01:38 AM
That varies between switch devices. Generally, switches with more buffer capacity tend to be more expensive. (Much like PCs or smart phone with additional memory.)
"Plus, what would happen if received data from PC A and PC B are bigger than this buffer size? -> I am guessing that the switch would simply drop the frames and clear the buffer."
Yes, frame/packet is dropped; usually not as "buffer"likely still contains earlier received frames/packets.
" If clearing buffer keeps happening (Packet Loss) because received data is bigger than the buffer size, how does the control flow happen?"
That depends on source to destination flow management protocol. Sometimes loss goes unnoticed. When detected, loss may cause retransmission or lost may cause source to stop sending.
"Lastly, is large buffer == Queue?"
Yes and no. First "large" isn't needed, i.e. does buffer == queue? Second, queue is often used in the context of multiple frames/packets waiting, e.g. an egress queue. Although buffer can be used in that context too, it's often more often used for single frame/packet waiting area (e.g. a memory area to save a frame/packets actually being actively received from the wire) or waiting area perhaps more dynamically managed, e.g. memory buffers allocated for multiple received frames/packets that haven't be specifically processed for a particular destination egress queue yet. (The last, though, might also be called a queue.) Again, there's overlap in the usage of the two terms, including either might be used.
https://en.wikipedia.org/wiki/Data_buffer
https://en.wikipedia.org/wiki/Queue_(abstract_data_type)
