Telephone companies and others began to offer networking services to any organization that wished to subscribe. The, subnet was owned by the network operator, providing communication service for the customers' hosts and terminals. Such a System is called a public network. It is analogous to, and often a part of, the public telephone system.
Some such public network services are -
The DQDB was designed as a distributed multi-access network with the objective to connect local area networks (LANs) and metropolitan area networks (MANs). Communication is established with a dual bus architecture that allow for distributed queuing.
The DQDB MAC protocol has been standardized by the IEEE 802.6 committee as part of its MAN standard. The DQDB protocol is intended for use with a dual-bus configuration shown below.
For clarity in our discussion, we use the following terminology (not part of the 802.6 standard) - upstream (A) refers to upstream on bus A, downstream (A) refers to downstream on bus A. The node that is upstream (A) of all other nodes is designated head of bus A, or head (A). The terms - upstream (B), downstream (B), and head (B) have the obvious corresponding meanings.
Transmission on each bus consists of a steady stream of fixed-size slots with a length of 53 octets. Nodes read and copy data from the slots; they also gain access to the medium by writing to the slots. Head (A) is responsible for generating the slots on bus A, while head (B) is responsible for generating the slots on bus B. The slot-generation function is indicated by a solid circle in the figure above; the bus termination function is indicated by a solid square.
Operation of the network is controlled by a 125-µsec clock. The slot generators in head (A) and head (B) transmit multiple slots to the shared medium every 125 µsec.
All slots on the bus are 53 octets in length, consisting of a 1-octet access control field and a 52-octet segment. The two types of slots generated on the network are queue arbitrated (QA) and pre-arbitrated (PA) slots. QA slots are used to carry packet-switched type data and PA slots are used to carry circuit-switched type data. For PA slots, some arbitration function must be used to allocate a dedicated stream of slots for each circuit-switched stream of data. This function has not yet been standardized, hence we will be concerned with the allocation of QA slots.
Access to QA slots on the DQDB medium is provided by the distributed queue access protocol. Although the basic mechanism of this protocol at any one node is straight forward, the resulting distributed activity is complex. In discussing the distributed queue protocol, we need to remember that there are actually two media: bus A and bus B. Since the access control mechanisms are exactly the same with respect to bus A and bus B, we will generally confine ourselves to a discussion of access control of bus A unless otherwise noted.
The distributed queue access protocol is a distributed reservation scheme. This scheme must take into account the nature of the topology. The essence of the protocol can be summarized as follows. Node X wishes to transmit a block of data to node Y. X must choose the bus on which Y is downstream from X. Let us assume that the bus is A; that is, Y is downstream (A) from X. For X to transmit a block of data in a slot to Y, it must use an available block coming from upstream (A). If the upstream (A) stations monopolize the medium, X is prevented from transmitting. Therefore, X's reservation request must be made to its upstream (A) peers. This requires the use of bus B, since those stations upstream (A) from X are also downstream (B) from X and capable of receiving a reservation request from X on bus B.
The protocol requires that each station defer its own need to transmit to the needs of its downstream peers. As long as one or more downstream peers have outstanding reservation requests, a station will refrain from transmitting, allowing unused slots to continue downstream. The key requirement for the protocol, then, is a mechanism by which each station can keep track of the requests of all of its downstream peers.
The actual behavior of a node will depend on its position on the bus. The four positions of significance (with respect to bus A) are illustrated in the figure below, which shows a DQDB sub-network with N nodes.
Consider first Node(N-1), which is head (B). This node has no downstream (A) nodes, and therefore does not transmit data on bus A and does not need to make reservations on bus B. The only data transfer activity for node (N-1) on bus A is reception. The node reads all passing slots. Any QA slot with a destination address matching node (N-1) is copied.
Now consider the node closest to head (B), which in this case is labeled Node(N-2). Whenever this node needs to transmit a segment of data, it issues a request on bus B for an available slot on bus A. This is actually done by setting a request bit in a passing slot. Although Node(N-2) makes reservations on bus B, it never receives any reservation requests on bus B: Its only upstream (B) peer is node (N-1), which does not issue requests on bus B. On bus A, Node (N-2) receives segments of data addressed to it. In addition, when Node(N-2) has data to send on bus A and has issued a request on bus B, it may transmit its segment of data in the first free slot on bus A that passes. One bit in the slot indicates whether the slot is free or busy.
A third node whose position is important is head (A), which is labeled Node 0 in the figure. As the head of bus A, this node is responsible for generating the stream of slots on bus A. Thus there will be no QA slots on bus A with data addressed to this node, and all QA slots originate as free slots. When this node has data to send to any other node, it can simply insert that data in the next QA slot that it generates. Because there are no upstream (A) peers of Node 0, it has no need to issue requests.
However, it is responsible for seeing that outstanding requests plus its own needs are satisfied in a round-robin, or first-come-first-served basis. To do this, Node 0 must keep a running count of how many requests have arrived on bus B that have not yet been satisfied. Head (A) keeps track of the number of outstanding requests, which is simply the difference between incoming QA slots with a request and outgoing QA slots that are free. If head (A) has a segment of data to send at time T, it must wait until it has satisfied all of the requests outstanding at that time by issuing free QA slots. Once it has satisfied all those requests, it may transmit its own segment. Meanwhile, head (A) must keep track of additional request that arrive after time T.
One way to visualize this operation is to think of it in terms of tickets. Each time that a request arrives, head (A) generates a ticket. When the node has its own data to send, it generates a ticket on its behalf and places it on the bottom of the stack. As additional tickets are generated by arriving requests, these are placed on the stack. When head (A)’s ticket reaches the top of the stack, head (A) can issue a busy QA slot containing its data.
Finally, the figure above also depicts the behavior of a node other than the three already discussed, labeled Node x. Like Node(N-2), whenever Node x needs to transmit a segment of data, it issues a request on bus B for an available slot on bus A. In addition, like Node 0, Node x must keep a count of requests that pass by on bus B so that its own requests are handled fairly. On bus A, Node x receives segments of data addressed to it. In order to enforce a round-robin discipline, Node x must keep track of incoming requests that precede and follow its own request, in a manner similar to the behavior of Node 0. When Node x has data to send and has issued a request, it may transmit its segment of data in a passing free slot only after all preceding requests have been satisfied.
SMDS was designed to connect together multiple LANs, typically at the branch offices and factories of a single company. The goal was to produce a high-speed data service and get it out into the world with a minimum of fuss. SMDS is the first broadband (i.e., high-speed) switched service offered to the public.
To see a situation in which SMDS would be useful, consider a company with four offices in four different cities, each with its own LAN. The company would like to connect all the LANs, so that packets can go from one LAN to another. One solution would be to lease six high-speed lines and fully connect the LANs as shown in the figure below. Such a solution is certainly possible, but expensive.
An alternative solution is to use SMDS, as shown below-
Four LANs interconnected with leased lines
The SMDS network acts like a high-speed LAN backbone, allowing packets from any LAN to flow to any other LAN. Between the LANs, in the customer's offices, and the SMDS network, in the telephone company's offices, is a short access line leased from the telephone company. Usually, this line is a MAN and uses DQDB, but other options may also be available.
Whereas most telephone company services are designed for continuous traffic, SMDS is designed to handle bursty traffic. In other words, once in a while a packet has to be carried from one LAN to another quickly, but much of the time there is no LAN to LAN traffic.
The leased line solution as illustrated in the earlier figure has the problem of high monthly bills; once installed, the customer has to pay for the lines whether or not they are used continuously. For intermittent traffic, leased lines are an expensive solution, and SMDS is priced to compete with them. With n - LANs, a fully connected leased line network requires leasing n(n -1)/2 possible long (i.e., expensive) lines, whereas SMDS only requires leasing n short access lines to the nearest SMDS router.
Since the goal of SMDS is to carry LAN to LAN traffic, it must be fast enough to do the job. The standard speed is 45 Mbps.
With SMDS, each LAN connects to a telephone company switch which routes packets through the SMDS network as needed to reach the destination, possibly traversing multiple switches in the process.
The basic SMDS service is a simple connectionless packet delivery service. The SMDS packet format is shown below.
It has three fields:
the destination (where the packet is to go to),
the source (who sent it), and
a variable length payload field for up to 9188 bytes of user data.
The machine on the sending LAN that is connected to the access line puts the packet on the access line, and SMDS makes a best effort attempt to deliver it to the correct destination. No guarantee is given.
The source and destination addresses consist of a 4-bit code followed by a telephone number of up to 15 decimal digits. Each digit is coded in a separate 4-bit field. The telephone numbers contain country code, area code, and subscriber number, so the service could eventually be offered internationally.
When a packet arrives at the SMDS network, the first router checks to make sure that the source address corresponds to the incoming line, to prevent billing fraud. If the address is incorrect, the packet is simply discarded. If it is correct, the packet is sent along towards its destination.
A useful SMDS feature is broadcasting. The customer can specify a list of SMDS telephone numbers, and be assigned a special number for the whole list. Any packet sent to that number is delivered to all members on that list. The National Association of Securities Dealers uses this feature of MCI's SMDS service to broadcast new stock prices to all of its 5000+ members.
An additional user feature is address screening, on both outgoing and incoming packets. With outgoing screening, the customer can give a list of telephone numbers and specify that no packets may be sent to any other addresses. With incoming screening, only packets from certain pre-arranged telephone numbers will be accepted. When both features are enabled, the user can effectively build a private network with no SMDS connections to the outside world. For companies with confidential data, this feature is highly valuable.
The payload can contain any byte sequence the user wishes, up to 9188 bytes. SMDS does not look at it. It can contain an Ethernet packet, an IBM token ring packet, an IP packet, or anything else. Whatever is present in the payload field is moved without modification from the source LAN to the destination LAN.
SMDS handles bursty traffic as follows. The router connected to each access line contains a counter that is incremented at a constant rate, say once every 10 msec. When a packet arrives at the router, a check is made to see if the counter is greater than the packet length, in bytes. If it is, the packet is sent without delay and the counter is decremented by the packet length. If the packet length is greater than the counter, the packet is discarded.
In effect, with a tick every 10 msec the user may send at an average rate of 100,000 bytes/sec, but the burst rate may be much higher. If, for example, the line has been idle for 10 msec, the counter will be 1000, and the user will be allowed to send a 1-kilobyte burst at the full 45 Mbps, so it will be transmitted in about 180 msec. With a 100,000 byte/sec leased line, the same kilobyte would take 10 msec. Thus SMDS offers short delays for widely spaced independent data bursts, as long as the average rate remains below the agreed upon value. This mechanism provides fast response when needed but prevents users from using up more bandwidth than they have agreed to pay for.
Many older public networks, especially outside the United States, follow a standard called X.25. It was developed during the 1970s by CCITT to provide an interface between public packet-switched networks and their customers.
The physical layer protocol, called X.21, specifies the physical, electrical, and procedural interface between the host and the network. Very few public networks actually support this standard, because it requires digital, rather than analog signaling on the telephone lines.
The data link layer standard has a number of (slightly incompatible) variations. They all are designed to deal with transmission errors on the telephone line between the user's equipment (host or terminal) and the public network (router).
The network layer protocol deals with addressing, flow control, delivery confirmation, interrupts, and related issues. Basically, it allows the user to establish virtual circuits and then send packets of up to 128 bytes on them. These packets are delivered reliably and in order.
Most X.25 networks work at speeds up to 64 kbps, which makes them obsolete for many purposes. Nevertheless, they are still widespread, so one should be aware of their existence.
X.25 is connection-oriented and supports both switched virtual circuits and permanent ones.
A switched virtual circuit is created when one computer sends a packet to the network asking to make a call to a remote computer. Once established, packets can be sent over the connection, always arriving in order. X.25 provides flow control, to make sure a fast sender cannot swamp a slow or busy receiver.
A permanent virtual circuit is used the same way as a switched one, but it is set up in advance by agreement between the customer and the carrier. It is always present, and no call setup is required to use it. It is analogous to a leased line.
Because the world is still full of terminals that do not speak X.25, another set of standards was defined that describes how an ordinary (non intelligent) terminal communicates with an X.25 public network. In effect, the user or network operator installs a “black box” to which these terminals can connect. The black box is called a PAD (Packet Assembler Disassembler), and its function is described in a document known as X.3.
A standard protocol has been defined between the terminal and the PAD, called X.28; another standard protocol exists between the PAD and the network, called X.29. Together, these three recommendations are often called triple X.
Frame relay is a service for people who want an absolute bare-bones connection-oriented way to move bits from A to B at reasonable speed and low cost. Its existence is due to changes in technology over the past four decades. Forty years ago, communication using telephone lines was slow, analog, and unreliable, and computers were slow and expensive. As a result, complex protocols were required to mask errors, and the user computers were too expensive to have them do this work.
The situation has changed radically. Leased telephone lines are now fast, digital, and reliable, and computers are fast and inexpensive. This suggests the use of simple protocols, with most of the work being done by the user computers, rather than by the network. It is this environment that frame relay addresses.
Frame relay can best be thought of as a virtual leased line. The customer leases a permanent virtual circuit between two points and can then send frames (i.e., packets) of up to 1600 bytes between them. It is also possible to lease permanent virtual circuits between a given site and multiple other sites, so each frame carries a 10-bit number telling which virtual circuit to use.
The difference between an actual leased line and a virtual leased line is that with an actual one, the user can send traffic all day long at the maximum speed. With a virtual one, data bursts may be sent at full speed, but the long-term average usage must be below a pre-determined level. In return, the carrier charges much less for a virtual line than a physical one.
Frame relay provides a minimal service, primarily a way to determine the start and end of each frame, and detection of transmission errors. If a bad frame is received, the frame relay service simply discards it. It is up to the user to discover that a frame is missing and take the necessary action to recover. Unlike X.25, frame relay does not provide acknowledgements or normal flow control.
Even if the above services become popular, the telephone companies were still faced with a far more fundamental problem: multiple networks. The Telephone Service and Telex used the old circuit-switched network. Each of the new data services such as SMDS and frame relay used its own packet-switching network. DQDB is different from these, and the internal telephone company call management network (SSN 7) is yet another network. Maintaining all these separate networks is a major headache, and there is another network, cable television, that the telephone companies do not control.
The perceived solution was to have a single network for the future that will replace the entire telephone system and all the specialized networks with a single integrated network for all kinds of information transfer. This network should have a huge data rate compared to all existing networks and services and should make it possible to offer a large variety of new services.
The wide area service is called B-ISDN (Broadband Integrated Services Digital Network). It offers video on demand, live television from many sources, full motion multimedia electronic mail, CD-quality music, LAN interconnection, high-speed data transport for science and industry and many other services that have not yet even been thought of, all over the telephone line.
The underlying technology that makes B-ISDN possible is called ATM (Asynchronous Transfer Mode) because it is not synchronous (i.e., not tied to a master clock), as most long distance telephone lines are. Note that the acronym ATM here has nothing to do with the Automated Teller Machines many banks provide, although an ATM machine can use an ATM network to talk to its bank.
The basic idea behind ATM is to transmit all information in small, fixed-size packets called cells. The cells are 53 bytes long, of which 5 bytes are header and 48 bytes are payload, as shown in the figure below.
The ATM service is sometimes called cell relay, as an analogy to frame relay.
The use of a cell-switching technology is a gigantic break with the 100-year old tradition of circuit switching (establishing a copper path) within the telephone system. There are a variety of reasons why cell switching was chosen. Among them are the following:
Cell switching is highly flexible and can handle both constant rate traffic (audio, video) and variable rate traffic (data) easily.
At the very high speeds envisioned (gigabits per second are within reach), digital switching of cells is easier than using traditional multiplexing techniques, especially using fiber optics.
For television distribution, broadcasting is essential; cell switching can provide this and circuit switching cannot.
ATM networks are connection-oriented. Making a call requires first sending a message to set up the connection. After that, subsequent cells all follow the same path to the destination. Cell delivery is not guaranteed, but their order is. If cells 1 and 2 are sent in that order, then if both arrive, they will arrive in that order, never first 2 then 1.
ATM networks are organized like traditional WANs, with lines and switches (routers). The intended speeds for ATM networks are 155 Mbps and 622 Mbps, with the possibility of gigabit speeds later. The 155-Mbps speed was chosen because this is about what is needed to transmit high definition television. The exact choice of 155.52 Mbps was made for compatibility with AT&T's SONET transmission system. The 622 Mbps speed was chosen so four 155-Mbps channels could be sent over it. By now it should be clear why some of the gigabit test beds operated at 622 Mbps: they used ATM.
Note: Broadband ISDN using ATM has its own reference model, different from the OSI model and also different from the TCP/IP model.
To a considerable extent, ATM is a project invented by the telephone industry because after Ethernet was widely installed, the computer industry never rallied around any higher-speed network technology to make it standard. The telephone companies filled this vacuum with ATM, although in October 1991, many computer vendors joined with the telephone companies to set up the ATM Forum, an industry group that will guide the future of ATM.
Although ATM promises the ability to deliver information any where at speeds soon to exceed 1 Gbps, delivering on this promise was not easy. ATM is basically high-speed packet-switching, a technology the telephone companies had littIe experience with. What they did have, was a massive investment in a different technology (circuit switching) that is in concept unchanged since the days of Alexander Graham Bell. Needless to say, this transition will not happen quickly, all the more so because it is a revolutionary change rather than an evolutionary one, and revolutions never go smoothly.
The economics of installing ATM worldwide also have to be considered. A substantial fraction of the existing telephone system will have to be replaced. Who will pay for this? How much will consumers be willing to pay to get a movie on demand electronically, when they can get one at the local video store for a couple of dollars? Finally, the question of where many of the advanced services are provided is crucial. If they are provided by the network, the telephone companies will profit from them. If they are provided by computers attached to the network, the manufacturers and operators of these devices make the profits. The users may not care, but the telephone companies and computer vendors certainly do, and this will surely affect their interest in making ATM happen.
You may be wondering why so many incompatible and overlapping services exist, including DQDB, SMDS, X.25, frame relay, ATM, and more. The underlying reason is to foster competition in the tele-communications industry. Different companies with different interests and technologies are now free to offer whatever service they think there is a demand for, and many of them are doing this.
For instance, DQDB is an un-switched MAN technology that allows 53-byte cells (of which 44 are payload) to be sent down long wires within a city.
SMDSis a switched datagram technology for sending datagrams anywhere in a network at 45 Mbps.
X.25is an older connection-oriented networking technology for transmitting small variable sized packets at 64 kbps.
Frame relay is a service that provides virtual leased lines at speeds around 1.5 Mbps.
ATM is designed to replace the entire circuit-switched telephone system with cell switching and be able to handle data and television as well.
A summarized comparison between these competitors is given below.
Issue | DQDB | SMDS | X.25 | Frame Relay | ATM |
---|---|---|---|---|---|
Connection oriented | Yes | No | Yes | Yes | Yes |
Normal speed (Mbps) | 45 | 45 | 064 | 1.5 | 155 |
Switched | No | Yes | Yes | No | Yes |
Fixed-size payload | Yes | No | No | No | No |
Max payload | 44 | 9188 | 128 | 1600 | Variable |
Permanent VCs | No | No | Yes | Yes | Yes |
Multicasting | No | Yes | No | No | Yes |
How to move your Email accounts from one hosting provider to another without losing any mails?
How to resolve the issue of receiving same email message multiple times when using Outlook?
Self Referential Data Structure in C - create a singly linked list
Mosquito Demystified - interesting facts about mosquitoes
Elements of the C Language - Identifiers, Keywords, Data types and Data objects
How to pass Structure as a parameter to a function in C?
Rajeev Kumar is the primary author of How2Lab. He is a B.Tech. from IIT Kanpur with several years of experience in IT education and Software development. He has taught a wide spectrum of people including fresh young talents, students of premier engineering colleges & management institutes, and IT professionals.
Rajeev has founded Computer Solutions & Web Services Worldwide. He has hands-on experience of building variety of websites and business applications, that include - SaaS based erp & e-commerce systems, and cloud deployed operations management software for health-care, manufacturing and other industries.