Converting 100BASE ETH into slower media - Page 1
Forum section: electronics / projects

author: Yansi
author_rank: Super Contributor
timestamp: January 04, 2017, 05:04:54 pm
content: Hello,just a quick question if someone can point me to a word or phrase under which I can find the principles and workings behind converting a high speed 100BASE ethernet to a slower media (like ADSL or whatever).What I would like to know, is how is the bandwidth limiting done, as obviously, if I have data coming through a 100mbps cable, all of them are really not able to fit inside a 1mbps link, if there comes more than 1mbps.What will happen, if I have more incoming traffic, than the slower media can take? Are those ETH frames simply discarded, or is there any more sensible way to tell the sender the line is already busy? (like ACK/NAK for incoming data)Does this process has any name so I can google more info about how it is usually implemented? Like if I would like to make my own "ETH to somethingslow converter", how should I process the incoming frames from the ETH, if there is too much of them?ThanksYan

author: jm_araujo
author_rank: Regular Contributor
timestamp: January 04, 2017, 05:27:59 pm
content: Ethernet is a "Best Effort" protocol.Packets that can't be forwarded are dropped, no feedback is given to the sender. You can have a buffer to store some packets hoping for lower traffic period, but if it gets full you have to drop packets the same.Usually higher level protocols (like TCP/IP) have mechanisms implemented to request for the lost packets again.

author: Yansi
author_rank: Super Contributor
timestamp: January 04, 2017, 05:56:13 pm
content: OKay, thank you for confirming! I have already thought that the excessive frames are simply dropped.I am just a beginner with regards to ethernet embedded design, so be please bear with me, more stupid questions might follow!

author: lwatts666
author_rank: Unknown
timestamp: January 04, 2017, 08:54:49 pm
content: Quote from: jm_araujo on January 04, 2017, 05:27:59 pmTCP/IP Also has a windowing mechanism to manage 'in flight' packets. It won't send more data until previously sent data is acknowledged. The size of the window, and hence the amount of unacknowledged data in flight, is optimized based on packet loss. Google "Nagel Algorithm" for details.

author: NiHaoMike
author_rank: Super Contributor
timestamp: January 05, 2017, 03:16:44 am
content: Ethernet supports pause frames to tell the source to slow down.

author: Cerebus
author_rank: Super Contributor
timestamp: January 05, 2017, 04:11:33 am
content: Quote from: NiHaoMike on January 05, 2017, 03:16:44 amIn theory, yes. In practice, no. I have never seen a higher level protocol that actually makes use of Ethernet pause frames that isn't itself one of the IEEE 802.x series of protocols.

author: Cerebus
author_rank: Super Contributor
timestamp: January 05, 2017, 04:28:04 am
content: In practice routers and the like buffer the rates between dissimilar speed media and only start dropping packets once the internal buffer's memory gets exhausted.This can lead to quite unpleasant interactions with protocol features like "slow start with congestion avoidance" in TCP. A router will accept, say, 100 packets for one second and buffer them, only dropping packets 101 and onwards when there is really only enough outgoing bandwidth for 25 packets a second. The sender doesn't find out about this until four or so seconds later when it gets a retransmission request for packet 101 from the far end, during which time it has transmitted 300 additional packets that were mostly unceremoniously dropped. The better routers actually start dropping packets before they absolutely have to to give the higher level protocols a 'heads up' that there's a bottleneck (e.g. Cisco's WRED - Weighted Random Early Drop).Although some media (Frame relay and ATM come to mind) have mechanisms for both forward and reverse congestion signalling, very few widely used higher level protocols have a way of making use of those signals and when it is actually specified in a protocol it is often an optional feature that isn't widely implemented.

author: jwm_
author_rank: Frequent Contributor
timestamp: January 05, 2017, 04:33:41 am
content: If you would like to learn more about how higher level protocols like TCP 'learn' the available bandwidth, look up 'flow control' and 'congestion control' as those are the primary mechanisms used on the internet today end-to-end.Another mechanism used due to its simplicity is acking each packet and not sending a new one until the last was acids, so there is never more than one packet on the wire. This is used by tftp, the protocol used to pull boot images for diskless workstations since it is trivial to implement in small bioses directly.Things get more interesting at higher levels of networking, This is a pretty fascinating subject, the go to book on it is 'interconnections' by Radia Perlman. Or at least it was when I was at sun working on Solaris kernel networking code. The concepts are pretty universal though.

author: Yansi
author_rank: Super Contributor
timestamp: January 05, 2017, 12:59:33 pm
content: I am currently just poking around more in the hardware side of ethernet, so learning just about the modulation schemes, PHY internal workings and interfacing (MII, RMII, SMI), etc. TCP will probably come later, until I get a good grasp of the basics.

author: elecman14
author_rank: Unknown
timestamp: January 05, 2017, 03:04:42 pm
content: You should check outhttps://ossmann.blogspot.com/2011/02/throwing-star-lan-tap.htmlHere is a quote from the article:QuoteThis is conversion form gigabit down to 100 base T. You might be able to apply the same principles to degrade 100 base T to 10 Base T.

author: Yansi
author_rank: Super Contributor
timestamp: January 05, 2017, 04:03:04 pm
content: Lol, what a nonsense. By no means I thought of crippling cables to reduce speeds....but to convert the speed to a slower (but quite longer distance) transport media using an engineering correct solution, not a childs hack.