...
A token ring network is a type of local area network, configured in either a ring or star topology, where a bit sequence or special waveform called a token is used to grant write access to the network. Only the host(s) with a token is/are permitted to transmit data on the network. Control in a token ring network can either be centralized, where a central controller distributes the token(s) to hosts, or it can be decentralized, where hosts pass the token(s) between themselves. In both cases, tokens are typically distributed and passed in a circular and cyclic fashion.
In this module, we will only consider ring topology token ring networks.
Characteristics of Token Ring Networks
...
- single point of failure
- inability to add/remove hosts w/o disrupting others
- delay increases as number of hosts in ring increases
Operation of a Token Ring
...
Recall that a NIC is a network interface card, which implements the protocols of the underlying network and simply exposes an abstract network interface to the host for frame reception and transmission.
...
As discussed briefly, a token is what provides access control in a token ring network. Tokens are a special sequence of bits or a special waveform – the exact representation of a token depends on the token ring implementation. Only devices with a valid token may transmit at a given time. There are two types of tokens – idle tokens and busy tokens. If a host is given an idle token, that host may initiate a transmission onto the (idle) network. On the other hand, if the host is passed a busy token, the host may not use the network, since it is being used (i.e. is busy) by another ongoing transmission.
A host with a buffer of data to transmit will operate in receive mode until it receives an idle token from the network. Once an idle token has been received, the host will transition to transmit mode, where it converts the idle token to a busy token and may transmit its accumulated buffer of data onto the network in the form of a frame. Until an idle token is received, or if a busy token is received by the host , the host must operate in receive mode, forwarding any received frames to the next host in the network (and copying frames to itself if it's the destination).
Single Token Operation
When operating with a single token, the transmitting host will initiate its data transmission with a busy token at the head of the data frame. When the frame traverses the ring, all intermediate hosts will see the busy token and will continue to operate in receive mode, forwarding the frame along to the next host. When the frame arrives back at the transmitting host, the host will convert the busy token to an idle token and transmit the idle token to the next host as it's continuing to remove its data frame from the network. This next host will see the new idle token and may initiate a transmission if it has data to transmit; otherwise, it may pass the idle token on to its next host.
Multiple Token Operation
Multiple tokens can be used simultaneously in a token ring network. When multiple tokens are used, the transmitting host places the next token on the ring immediately after the end of the data frame, while the current token is placed at the beginning of the data frame. This means that for rings that have large propagation delays or that have typically small frames transmitted, several frames may exist on the ring simultaneously.
As an example, if a transmitting host has data to transmit, it will precede its frame with a busy token, transmit its frame, and then transmit an idle token. When the next host receives the busy token, it will continue to operate in receive mode; however, after the data frame it receives is retransmitted, it will see the idle token and may convert it to a busy token if it has data to transmit. Otherwise, the next host will simply pass on the idle token.
Single Frame Operation
There is a third mode of operation, which is effectively a subcategory of single token. This third mode of operation is called single frame. Token rings operating in single frame mode will only have a single frame (or partial single frame) on the entire network at any given time. What sets this apart from single token operation is that the entire frame must be removed from the network by the transmitting host before the transmitting host is permitted to transmit the idle token. Contrast this to single token mode, where the source host generates and sends the idle token before it has remove its entire data frame from the network.
Performance Analysis of Token Ring Networks
Latencies in Token Rings
There are a couple different latencies or delays that must be considered when analyzing a token ring network.
Host Latency
On the hosts themselves, delay is incurred when the frame is received and (briefly) buffered while the host NIC analyzes the destination address of the frame.
Compare this to a centralized controller that polls hosts/handles tokens, where the walk time is equal to the propagation delay plus the token transmission time.
Ring Latency
The ring latency is the time requires for a token to circulate around the ring if all stations are operating in receive mode. This is essentially the walk time of each link in the topology plus the host latencies discussed above.