Contacts

Wireless data transmission: types, technology and devices. Data transmission in networks Communication and data transmission

If you want to understand how the Internet works, you need to understand what it is. The Internet is just a data network. It is not for nothing that its second name is the phrase “global network”. It is a set of software and hardware equipment that is connected by communication channels.

Hardware includes client, server, and network equipment. Their purpose is to transmit data, which can be absolutely any information from plain text to long video.

By client we mean Personal Computer, laptop, phone or any other device that is capable of sending requests for information from the network, receiving responses to them and displaying them in an accessible form. The server refers to the place where information is stored. These are databases that respond to client requests and convey to him what he is interested in. Network equipment is a channel that connects the server and the client.

How information is transferred

If we consider the essence of the global network schematically, it will look like this. The client sends a request for information to the server. This request is transmitted for processing through the network equipment to the server. Upon receipt, the server will generate an answer to the question and send it back via the network equipment to the client. This creates a diagram of interaction between the client and the server. In order for this scheme to work smoothly, the server must be in working order around the clock, otherwise the information stored in its possession will be inaccessible.

How network equipment works

In order for the client and server to interact with each other, network equipment is used: modems, routers, switches and communication channels.

The modem works by processing information from digital form into analog signals and vice versa, after which it transmits it via optical communication channels.

Routers work by storing a "routing table" that contains packets for data transmission and their corresponding addresses.

The switch transmits information between devices that are connected to it directly on a short distance using a special cable. As a rule, switches are used to create local networks, so modems and routers are used to work on the Internet.

Note

If you still remember what a MIME data type is, then, looking at the names of data encoding methods given above, you will immediately see that these are just MIME types. It is with their help that coding methods are specified.

In the vast majority of cases, the application/x-www-form-uriencoded encoding method is used. By the way, it is the one that is used by default if the encoding method is not specified. The multipart/form-data encoding method is used if you are going to send files to a Web server; it provides the binary data conversion appropriate for this case. The last method - text/plain - represents data in plain text, which can be useful if form data will be sent via e-mail(sometimes this method of data transfer is also used).

So, we've sorted out the data encoding. It remains to be seen how this data is transmitted over Network channels.

As you already know, to send data over the Internet, and indeed over any local or global computer network, a special set of rules called a protocol is used. The protocol defines how data will be encrypted and packaged for subsequent transmission over the network. Naturally, both the sending and receiving programs must support the same protocol in order to “understand” each other. (Otherwise, so-called incompatibility with the data transfer protocol will arise, a very unpleasant thing.) Actually, we have already talked about Internet protocols and there is no point in repeating them now.

You also know that the HTTP protocol is used to send Web pages and associated files (graphics, sounds, archives, etc.) over the Internet. It is also used for data transmission, and two methods of data transmission are provided for this. Both methods are widely used in Internet programming and have their advantages and disadvantages. Let's look at them.

The first method is called GET based on the value of the corresponding form parameter. When used, data is transmitted as part of the Internet address in an HTTP request.

As you remember, in order to receive the file it needs from the Web server, a Web browser sends this server a so-called HTTP request, which includes the Internet address required file. So, the data can be transmitted as part of this address.

Take, for example, the data set shown just above:

name1 = Ivan surname = Ivanovich name2 = Ivanov age = 30

Now let’s prepare it for sending using the GET method (the data itself is in bold):



As you can see, data sent using the GET method is placed at the very end of the Internet address and is separated from it by a question mark. In this case, the “name” = “value” pairs are separated from each other by the “commercial and” sign (“&”). Everything is very simple and clear.

This simplicity and clarity of data presentation is the main advantage of the GET method. As they say, everything is in plain sight. Debugging Web pages is also greatly simplified: since the address passed to the Web server is displayed in the address bar of the Web browser, you can always see what exactly was passed. (However, as you understand, confidential data cannot be transmitted using this method - everyone who stands behind your back will see it.)

http://www.mysite.ru/bin/choose.exe?chapter=3

As you can see, these are actually links to the server program, containing one chapter parameter and its value. This means that all other pages of such a site are formed dynamically by the server program, based on the received parameters. Using this principle, directory sites, program catalog sites, electronic stores and other sites containing a large number of classified information.

Unfortunately, the GET method has a huge disadvantage: It cannot transfer large amounts of data. This is due to the limitation imposed by standards on the length of an Internet address: no more than 256 characters. Subtract from here the length of the actual address of the server program - and you will get the maximum allowable size of your data. The second disadvantage of the GET method is the flip side of its advantages. The data it sends is publicly visible and can be easily read in the address bar of a Web browser.

The GET method should be used if the data sent to the server program is obviously small and not secret. In particular, it is used to forward keywords search engines, in sites built on the basis of a server program (see above), etc. If you need to send voluminous or confidential data, use the second transmission method, called POST.

The POST method transfers data to the server program in the same HTTP request, but not as part of the Internet address, but in the form of so-called additional data. Since the size of the additional data is not limited (at least it can be very large), you can transfer anything you want, in any quantity. In particular, even files can be transferred to the Web server in this way.

Advantages of the POST method: there is no limit on the amount of transferred data and its “invisibility”. Disadvantages: difficulty in decrypting data and difficulty in debugging. The POST method is used to transmit, for example, personal data, addresses of customers in electronic stores, literary works to the sites http://www.stihi.ru and http://www.proza.ru, etc. In general, what has large volumes.

As they say, the WWWC committee intends to eventually abandon the GET method altogether and transfer all data using the POST method. So far, the GET method has simply been declared not recommended for use in newly created sites, but in reality it is still supported by Web browsers.

Communication line generally consists of a physical medium through which electrical information signals, data transmission equipment and intermediate equipment are transmitted. Synonymous with the term communication line(line) is the term link(channel).

The physical medium of data transmission can be a cable, that is, a set of wires, insulating and protective sheaths and connecting connectors, as well as the earth's atmosphere or outer space through which electromagnetic waves propagate.

Depending on the data transmission medium, communication lines are divided into the following:

§ wired (aerial);

§ cable (copper and fiber optic);

§ radio channels for terrestrial and satellite communications.

Wired (overhead) communication lines are wires without any insulating or shielding braiding, laid between poles and hanging in the air. Such communication lines traditionally carry telephone or telegraph signals, but in the absence of other options, these lines are also used to transmit computer data. The speed and noise immunity of these lines leave much to be desired. Today, wired communication lines are quickly being replaced by cable lines.

Cable lines are quite complex structures. The cable consists of conductors enclosed in several layers of insulation: electrical, electromagnetic, mechanical, and also, possibly, climatic. In addition, the cable can be equipped with connectors that allow you to quickly connect various equipment to it. There are three main types of cable used in computer networks: twisted pair cables copper wires, coaxial cables with copper core, as well as fiber optic cables.

A twisted pair of wires is called twisted pair Twisted pair exists in a shielded version , when a pair of copper wires is wrapped in an insulating shield, and unshielded , when the insulating wrap is missing. Twisting the wires reduces the effect of external interference on the useful signals transmitted along the cable.

Coaxial cable has an asymmetrical design and consists of an internal copper core and braid, separated from the core by a layer of insulation. There are several types of coaxial cable, differing in characteristics and areas of application - for local networks, for wide area networks, for cable television, etc.

Fiber Optic Cable consists of thin fibers through which light signals travel. This is the highest quality type of cable - it provides data transmission at very high speeds (up to 10 Gbit/s and higher) and better than other types of transmission media protects data from external interference.


Terrestrial and satellite radio channels are formed using a transmitter and receiver of radio waves. There is a large number various types radio channels that differ in both the frequency range used and the channel range. The short, medium and long wave bands (KB, MW and LW), also called amplitude modulation (AM) bands based on the type of signal modulation method used in them, provide long-distance communication, but at a low data transfer rate. Faster channels are those operating in the ultrashort wave (UHF) ranges, which are characterized by frequency modulation, as well as ultra-high frequency ranges (microwaves or microwaves).

In the microwave range (above 4 GHz), signals are no longer reflected by the Earth’s ionosphere and stable communication requires direct visibility between the transmitter and receiver. Therefore, such frequencies are used either by satellite channels or radio relay channels, where this condition is met.

In computer networks today, almost all described types of physical data transmission media are used, but the most promising are fiber optic ones. Today, both backbones of large territorial networks and high-speed communication lines of local networks are built on them.

A popular medium is also twisted pair, which is characterized by an excellent quality-to-cost ratio, as well as ease of installation. Using twisted pair cables, end users of networks are usually connected at distances of up to 100 meters from the hub. Satellite channels and radio communications are used most often in cases where cable communications cannot be used - for example, when a channel passes through a sparsely populated area or to communicate with a mobile network user.

Even when considering the simplest network consisting of only two machines, one can see many of the problems inherent in any computer network, including problems associated with the physical transmission of signals over communication lines , without the solution of which any type of communication is impossible.

IN computer technology used to present data binary code . Inside the computer, data ones and zeros correspond to discrete electrical signals. Representing data as electrical or optical signals is called encoding . Exist various ways encoding binary digits 1 and 0, e.g. potential a method in which one corresponds to one voltage level and zero to another, or pulse a method when pulses of different or the same polarity are used to represent numbers.

Similar approaches can be used to encode data and transfer it between two computers over communication lines. However, these communication lines differ in their electrical characteristics from those that exist inside the computer. The main difference between external communication lines and internal ones is their much longer , and also because they pass outside a shielded enclosure through spaces often subject to strong electromagnetic interference. All this leads to significantly greater distortion of rectangular pulses (for example, “rolling over” of the fronts) than inside the computer. Therefore, to reliably recognize pulses at the receiving end of a communication line when transmitting data inside and outside the computer, it is not always possible to use the same speeds and coding methods. For example, the slow rise of the pulse edge due to the high capacitive load of the line requires the transmission of pulses at a lower speed (so that the leading and trailing edges of adjacent pulses do not overlap and the pulse has time to grow to the required level).

IN computer networks apply both potential and pulse coding of discrete data , as well as a specific way of representing data that is never used inside a computer - modulation(Fig. 3). During modulation, discrete information is represented by a sinusoidal signal of the frequency that is well transmitted by the existing communication line.

Potential or pulse coding is used on channels High Quality, and modulation based on sinusoidal signals is preferable in the case where the channel introduces strong distortions into the transmitted signals. Typically, modulation is used in wide area networks to transmit data over analog telephone links, which were designed to carry voice in analog form and are therefore not well suited for direct pulse transmission.

To convert data from one type to another, use modems. Term "modem" - short for modulator/demodulator. A binary zero is converted, for example, into a low signal, and a one - high frequency. In other words, by converting data, the modem modulates the frequency of the analog signal (Fig. 4).

The method of signal transmission is also affected by the number of wires in the communication lines between computers.

Data transfer can occur in parallel (Fig. 5) or sequentially (Fig. 6).

To reduce the cost of communication lines in networks, they usually strive to reduce the number of wires and because of this they do not use parallel transmission of all the bits of one byte or even several bytes, as is done inside a computer, but sequential, bit-by-bit transmission, requiring only one pair of wires.

When connecting computers and devices, three various methods, denoted by three different terms. The connection happens: simplex, half duplex and full duplex(Fig. 7 ).

A simplex connection is said to occur when data moves in only one direction. A half-duplex connection allows data to travel in both directions, but at different times, and finally, a full-duplex connection is when data travels in both directions at the same time.

Rice. 7. Examples of data flows.

Another important concept is connection switching.

Any communication networks support some method of switching their subscribers among themselves. These subscribers can be remote computers, local networks, fax machines, or simply interlocutors communicating using telephones. It is practically impossible to provide each pair of interacting subscribers with their own non-switched (i.e., permanent connection) physical communication line, which they could exclusively “own” for a long time. Therefore, any network always uses some method of switching subscribers, which ensures the availability of existing physical channels simultaneously for several communication sessions between network subscribers.

Connection switching allows network hardware to share the same physical communication channel between many devices. There are two main ways to switch connections - circuit switching and packet switching.

Circuit switching creates a single, continuous connection between two network devices. While these devices communicate, no other device can use this connection to transmit its own information - it is forced to wait until the connection becomes free.

A simple example of a circuit switch - switch type A-B, used to connect two computers to one printer. To allow one of the computers to print, you turn a toggle switch, establishing a continuous connection between the computer and the printer. A point-to-point connection is formed . As shown in the picture, only one computer can print at the same time.

Rice. 6Switching circuits

Majority modern networks, including the Internet, use packet switching. Data transfer programs on such networks divide the data into pieces called packets. In a packet switching network, data can travel simultaneously in one packet, or in several. The data will arrive at the same destination, even though the paths it took may be completely different.

To compare two types of network connections, let's assume that we interrupted the channel in each of them. For example, by disconnecting the printer from the manager in Fig. 6 (by moving the toggle switch to position B), you have made it impossible to print. A circuit switching connection requires a continuous communication channel.

Rice. 7. Packet switching

On the contrary, data in a packet switching network can travel in different ways. This can be seen in Fig. 7. Data does not necessarily follow one path on the way between office and home computers; breaking one of the channels will not lead to loss of connection - the data will simply take a different route. Packet switching networks have many alternative routes for packets.

Packet switching is a subscriber switching technique that was specifically designed for the efficient transmission of computer traffic.

The essence of the problem is pulsating nature of traffic , which is generated by typical network applications. For example, when accessing a remote file server the user first browses the contents of that server's directory, which causes a small amount of data to be transferred. It then opens the required file in text editor, and this operation can create quite a lot of data exchange, especially if the file contains large graphical inclusions. After displaying a few pages of a file, the user works with them locally for a while, which requires no network transfer at all, and then returns modified copies of the pages to the server - again creating intensive network transfer.

The traffic ripple factor of an individual network user, equal to the ratio of the average intensity of data exchange to the maximum possible, can be 1:50 or 1:100. If for the described session we organize channel switching between the user’s computer and the server, then most of the time the channel will be idle. At the same time, the network's switching capabilities will be used and will not be available to other network users.

When packet switching occurs, all messages transmitted by a network user are broken up at the source node into relatively small parts called packets. A message is a logically completed piece of data - a request to transfer a file, a response to this request containing the entire file, etc.

Messages can be of any length, from a few bytes to many megabytes. On the contrary, packets can usually also have a variable length, but within narrow limits, for example from 46 to 1500 bytes. Each packet is provided with a header that specifies the address information needed to deliver the packet to the destination node, as well as the packet number that will be used by the destination node to assemble the message.

Packets are transported in the network as independent information blocks. Network switches receive packets from end nodes and, based on address information, transmit them to each other, and ultimately to the destination node.

Packet network switches differ from circuit switches in that they have internal buffer memory to temporarily store packets if the switch's output port is busy transmitting another packet when a packet is received. In this case, the package remains in the package queue for some time buffer memory output port, and when it gets its turn, it is transferred to the next switch. This data transmission scheme allows you to smooth out traffic ripples on the backbone links between switches and thereby use them in the most effective way to increase the throughput of the network as a whole.

Indeed, for a pair of subscribers, the most effective would be to provide them with sole use of a switched communication channel, as is provided in circuit-switched networks. With this method, the interaction time between a pair of subscribers would be minimal, since data would be transmitted from one subscriber to another without delay.

A packet switched network slows down the process of communication between a particular pair of subscribers. However, the total amount of computer data transmitted by the network per unit time using the packet switching technique will be higher than using the circuit switching technique.

Typically, given the same access speed, a packet-switched network turns out to be 2-3 times cheaper than a circuit-switched network, that is, a public telephone network.

Each of these schemes ( circuit switching (circuit switching) or packet switching (packet switching)) has its advantages and disadvantages, but according to the long-term forecasts of many experts, the future belongs to packet switching technology, as it is more flexible and universal.

Circuit-switched networks are well suited to switch data at a constant rate, where the unit of switching is not a single byte or packet of data, but a long-term synchronous data stream between two subscribers.

Both packet-switched networks and circuit-switched networks can be divided into two classes on another basis - networks with dynamic switching and networks with constant switching.

In the first case, the network allows a connection to be established at the initiative of the network user. Switching is performed for the duration of the communication session, and then (again at the initiative of one of the interacting users) the connection is broken. In general, any network user can connect to any other network user. Typically, the connection period between a pair of users during dynamic switching ranges from several seconds to several hours and ends when a certain job is performed - transferring a file, viewing a page of text or image, etc.

In the second case, the network does not provide the user with the opportunity to perform dynamic switching with another arbitrary network user. Instead, the network allows a pair of users to order a connection for an extended period[ of time. The connection is established not by users, but by the personnel maintaining the network. The time for which permanent switching is established is usually measured in several months. The permanent switching mode in circuit-switched networks is often called service dedicated or leased channels.

Examples of networks that support dynamic switching mode are telephone networks common use, local networks, Internet network.

Some network types support both modes of operation.

Another problem that needs to be solved when transmitting signals is the problem mutual synchronization of the transmitter of one computer with the receiver of another . When organizing the interaction of modules inside a computer, this problem is solved very simply, since in this case all modules are synchronized from a common clock generator. The synchronization problem when connecting computers can be solved different ways, both through the exchange of special clock pulses over a separate line, and through periodic synchronization with predetermined codes or pulses of a characteristic shape, different from the shape of the data pulses.

Asynchronous and synchronous transmission. When exchanging data at the physical layer, the unit of information is a bit, so the physical layer always maintains bit synchronization between the receiver and transmitter.

However, when poor quality Communication lines (usually this refers to telephone switched channels) to reduce the cost of equipment and increase the reliability of data transmission introduce additional means of synchronization at the byte level.

This mode of operation is called asynchronous or start-stop. Another reason for using this mode of operation is the presence of devices that generate bytes of data at random times. This is how the keyboard of a display or other terminal device works, from which a person enters data for processing by a computer.

In asynchronous mode, each byte of data is accompanied by special start and stop signals. The purpose of these signals is, firstly, to notify the receiver of the arrival of data and, secondly, to give the receiver enough time to perform some synchronization-related functions before the next byte arrives.

The described mode is called asynchronous because each byte can be slightly shifted in time relative to the bit clocks of the previous byte

The task of reliable exchange of binary signals represented by corresponding electromagnetic signals in computer networks is solved by a certain class of equipment. IN local networks This network adapters, and in global networks - data transmission equipment, which includes, for example, the considered modems. This equipment encodes and decodes each information bit, synchronizes the transmission of electromagnetic signals over communication lines, verifies the correctness of transmission using a checksum, and can perform several other operations.

Control questions:

3. What communication lines are used in computer networks?

4. Which lines of communication are the most promising?

5. How are binary signals transmitted in a network? What is modulation?

6. What is the modem used for?

7. What is serial and parallel data transmission?

8. What is simplex, half duplex and full duplex connection?

9. What is connection switching?

10. What are the two main methods of switching a connection?

11. What is packet switching and what is its advantage?

12. When is it appropriate to use circuit switching?

13. Explain the concepts of asynchronous and synchronous data transfer?

I talked about digital signals. Why are these digital signals so good? As strange as it may sound, digital signals are analog in nature, since they are transmitted by changing the value of voltage or current, but they transmit signals with previously agreed levels. At their core, they are discrete signals. What does the word “discrete” mean? Discrete means consisting of separate parts, separate, discontinuous. Digital signals are classified as discrete signals, since they have only TWO STATES: “active” and “not active” - “there is voltage/current” and “no voltage/current”.

The main advantage of digital signals is that they are easier to transmit and process. Voltage is most often used for transmission. Therefore, two states are accepted: the voltage is close to zero (less than 10% of the voltage value) and the voltage is close to the supply voltage (more than 65% of the value). For example, with a circuit supply voltage of 5 Volts, we receive a signal with a voltage of 0.5 Volts - “zero”, but if 4.1 Volts - “one”.

Serial method of information transfer

There are simply two wires, an electrical signal source and an electrical signal receiver, that attach to these wires.

This is the PHYSICAL LEVEL.

As we have already said, we can transmit only two signals through these two wires: “there is voltage/current” and “there is no voltage/current”. What methods of information transfer can we implement?

The simplest way is that there is a signal (the light is on) - this is ONE, there is no signal (the light is not on) - this is ZERO


If you think about it, you can come up with several more different combinations. For example, take a wide impulse as one, and a narrow impulse as zero:


Or even even take the front and tail of the pulse as one and zero. Below is a picture, in case you have forgotten what the front and tail of a pulse are.


And here is the practical implementation:


Yes, you can come up with at least as many different combinations as possible, if the “recipient” and “sender” agree on reception and transmission. Here I have just listed the most popular transmission methods digital signal. That is, all these methods are PROTOCOLS. And, as I already said, you can come up with a lot of them.

Communication speed

Imagine the scene... Students, there is a lecture... The teacher dictates the lecture, and the students write it down


But if the teacher very quickly dictates a lecture, and in addition this lecture is on physics or mathematical analysis, then the result is:


Why did this happen?

From the point of view of digital data transmission, we can say that the speed of data exchange between the “Sender” and the “Recipient” is different. Therefore, there may be a real situation where the “Receiver” (student) is unable to receive data from the “Sender” (teacher) due to a mismatch in the data transfer rate: the transfer rate may be higher or lower than that to which the receiver (student) is configured. .

This problem is solved differently in different serial data transmission standards:

  • preliminary agreement on the data transfer speed (agree with the teacher to dictate the lecture slower or a little faster);
  • Before transmitting information, the “Sender” transmits some service information, using which the “Recipient” adapts to the “Sender” (Teacher: “Whoever does not record this lecture in full will not receive credit”)

Most often, the first method is used: the required data exchange speed is pre-set in communication devices. For this, a clock generator is used, which generates pulses to synchronize all nodes of the device, as well as to synchronize the communication process between devices.

Flow control

It is also possible that the “Recipient” (student) is not ready to accept the data transmitted by the “Sender” (teacher) for any reason: busy, malfunction, etc.


This problem is solved using various methods:

1) At the protocol level. For example, the exchange protocol stipulates: after the “Sender” transmits the “start of data transmission” service signal within a certain time, the “Recipient” is obliged to confirm the acceptance of this signal by transmitting a special “ready to receive” service signal. This method called “software flow control” - “Soft”


2) On the physical level- additional communication channels are used, through which the “Sender”, BEFORE transmitting information, asks the “Recipient” about his readiness to receive). This method is called “hardware flow control” - “Hard”;


Both methods are very common. Sometimes they are used simultaneously: both at the physical level and at the exchange protocol level.

When transmitting information it is important synchronize the operation of the transmitter and receiver. The method of setting the communication mode between devices is called “synchronization”. Only in this case can the “Recipient” correctly (reliably) receive the message transmitted by the “Sender”.

Communication Modes

Simplex communication.

In this case, the Recipient can only receive signals from the sender and cannot influence him in any way. This is mainly television or radio. We can only either watch or listen to them.


Half duplex communication.

In this mode, both the sender and the receiver can transmit signals to each other alternately if the channel is free. An excellent example of half-duplex communication is walkie-talkies. If both subscribers chatter into their radios at the same time, then no one will hear anyone.

- First, first. I'm second. How can you hear?

– I can hear you normally, lights out!


The signal can only be sent by the sender, in which case the receiver receives it. Or the signal can be sent by the receiver, in which case the sender receives it. That is, both the sender and the recipient have equal rights to access the channel (communication line). If they both transmit a signal to the line at once, then, as I already said, nothing will come of it.

Duplex communication.

In this mode, signal reception and transmission can be carried out in two directions at once. simultaneously. A striking example of this is a conversation on a mobile or home phone, or a conversation on Skype.


We looked at the history of the development of computer networks. We considered all the important stages in the formation of the Internet and general principles her work.

Our topic today will be called: data transmission technologies in networks. Naturally, first of all, computer ones. In this article, we will also consider the main means of data transmission (the concepts of physical and logical interfaces), we will analyze the basic technologies for encoding a signal during its transmission, the characteristics of communication lines, as well as loss protection mechanisms.

So! Why does the network exist? That's right - to transmit data (information) through it. How is this information transmitted (distributed)? That's right - after a certain transmission medium(cable infrastructure or - in the wireless range).

Data transmission technologies in their work use (depending on their specific implementation) various physical interfaces.

Note: An interface is a physical (or logical) boundary during the interaction of several independent objects - a kind of layer between them.

Interfaces are divided into two categories:

  1. physical interfaces
  2. logical interfaces

Physical interface this is the final connection port (a connector with a group of electrical contacts). For example - interface. A pair of ports, connected by connectors and cable is called a data transmission line (channel).


A logical interface is a set of rules (protocol) that defines the very logic of data exchange between devices connected by a line (network).

The organization of data transfer on a computer network occurs in close interaction of these two interfaces: a physical component (network card) and a logical one (its driver).

A prerequisite for the successful implementation of any data transmission technology is the presence of an additional component in the data stream - transmission protocol.

A logical layer transfer protocol is a set of rules that govern the exchange of data between different applications or devices. These rules define a uniform way to transmit messages and handle transmission errors. At the physical level, a protocol is a set of service data attached to the main packets (frames) of information, without which effective interaction on the network is simply impossible.

The protocol must abstract (ignore) the specific transmission medium, its task is to provide reliable communication between nodes in switch cloud.


Let's look at the process of organizing data transfer in more detail!

First, this is what happens: the application (program) asks the OS for permission to communicate with another device (printer, remote computer, surveillance camera, etc.) The operating system issues a command to the driver network card, which loads the first portion of data into the card buffer and initiates the interface for transmission

At the other end of the line (network), the remote device receives incoming data into the buffer of its network card. After the end of the transmission, the protocol checks whether there are any errors in the transmitted parts (packets) of data (if necessary, requests their retransmission) and loads the received data from the card buffer into the pre-reserved space random access memory. From there, the final application (program) retrieves information and works with it.

Here is a diagram for clarity (clickable):


Based on everything said above, we can draw the following conclusion: network construction technologies come down to connecting remote devices electrically and informationally! Those. - create a physical transmission medium(cable, wireless connection) and provide common data transfer protocol over the network.

Client this is a module (program, service, separate computer) used to generate and transmit messages (requests) to the resources of a remote device (server), followed by receiving results from it and transmitting them to the corresponding applications on the client.

Server this is a module (program, service...) that constantly waits for requests from clients to arrive from the network and serves (with the participation of the local OS) these requests.

One server can serve many clients at once. Here is another example: the database with which clients work. They have client program modules installed that connect to the database and support only GUI working with her. All calculations and processing take place on the server and using its resources.


Let's look at another definition! The client-server component, which provides access to some computer resource over the network, is called network service. Moreover, each service is associated with a specific type of network resource.

For example: the print service allows us to print documents on a network printer, and the file service allows us to access data located on remote computers. For surfing the Internet there is a web service, which consists of a server part (web server) and a client part (web browser) of the user (IE, Opera, Firefox, etc.)

In light of all of the above, data transmission technologies must rely on more than just OS, but on network operating systems that provide the user with access to the information and hardware resources of other computers. Moreover, these operating systems, according to the definitions stated above, are also divided into two large classes: server and client OS.

Client systems primarily make requests to the server components of other computers, and the server components server OSes provide these services. Of course, on this moment, almost any modern OS is capable of performing both the role of a client and a server. Server systems were simply initially created with the intention of servicing them maximum quantity requests and have better fault tolerance (reliability).

Here, for example, is what kind of “toy” we have in our server room:


But about her another time :)

Now let's talk to you about this: modern (digital) signal transmission technologies are associated with its conversion (coding). Why do we need this? There are several reasons for this:

  1. Prevention of data transmission errors (due to confident signal recognition by the receiving side)
  2. Data is transferred faster (due to higher density useful information in the stream)

As you can see, these are already two very good reasons to pay due attention to coding methods :)

The photo below shows two signals: analog (red line) and digital (black “steps”)


In this case, the analog sequence was digitized (sampled) at a certain frequency. The higher the sampling frequency, the smaller the step our “steps” will have and the more similar the digitized signal will be to the original (red).

Similar processes occur when sampling (digitizing) our voice, taken from the microphone input.

Used in computing binary code. Inside a computer, this is equivalent to two states: presence and absence. electrical voltage(logical “zero” or “one”). Here everything is simple: there is a current - “one”, there is no current - “zero”.

Modern technologies data transfers allow signal encoding in other (more efficient) ways. But first, one more small classification. According to the method of implementation, the procedure is divided into:

  1. Physical signal encoding
  2. and - logical (at a higher level - on top of the physical)

Let's first take a quick look at the first point. There are, for example, potential encoding method, in which one corresponds to one voltage level (one potential), and zero to another. And when pulse method, pulses of different polarities are used to represent numbers.

For encoding technology, a certain problem when transmitting data is that external (relative to the computer itself) data transmission lines can be stretched over long distances and are subject to various interference and interference. This leads to distortion of the reference rectangular signal transmission pulses and new (reliable) algorithms for its encoding and transmission are needed.

In computer networks it is used as potential, so pulse coding. The following data transmission method is also used: modulation.

With modulation, discrete data is transmitted using a sinusoidal signal of the frequency that is well transmitted by the available communication line.


The first two conversion options are used for high quality lines, and modulation is used in channels with strong signal distortion. Modulation, for example, is used in wide area networks to transmit traffic over analog telephone lines, which were designed specifically for voice (analog) transmission and are therefore poorly suited for transmitting digital pulses.

The transmission method itself is also influenced by such a thing as the number of conductors (cores) in the communication lines. To reduce their cost, the number of wires is often reduced. With this technology, data transfer is carried out serially and not in parallel (as is customary for communication lines inside a computer).

Coding methods at the physical level include algorithms such as NRZ(Non Return Zero), Manchester Code ( Manchester), MLT-3(Multi Level Transmission) and a number of others. I don’t see much point in dwelling on them in detail; if it’s interesting, you can always read about them on the Internet. In short, I got away! :)

Let's say a few words about logical coding. As the name suggests, it is carried out on top of the physical one (overlapping it) and serves to provide additional reliability when transmitting data. How?

For example: if the nature of the transmitted signal does not change for a long time (when transmitting long sequences of logical zeros or ones), the receiver may make a mistake when reading the next bit of information. It simply will not be able to decompose the overall data flow into individual components and, as a result, correctly assemble the original structure from them in its buffer.

Logical coding (to which the original data sequence is subjected) introduces its own bits with the opposite meaning into long sequences of bits, or even replaces them with other sequences. In addition, it allows you to improve the spectral characteristics of the signal, in general - to simplify its decoding, and in addition - to transmit additional service control signals in the general flow.

Basically, three technologies are used for logical conversion:

  1. bit stuffing
  2. redundant coding
  3. scrambling

Also - I won’t dwell separately (so as not to bore you) :) I hope you got the main idea!

I will briefly report with the following screenshot:

Here you can see what the same signal looks like when different algorithms are applied to it:

Data transmission technologies have a number of other problems that must be dealt with. And one of them is the problem of mutual synchronization of the transmitter of one computer and the receiver of another. Agree that it will be difficult to understand the data flow if two devices start generating it simultaneously “towards” each other. It's going to be a mess! :)

Synchronization problem remote computers can be solved in different ways: by exchanging special clock pulses or by transferring service data that is not related to the main flow of information. One of the standard techniques used to increase transmission reliability is counting checksum each byte (block of bytes) and transmitting this value to the receiving side.

Note: checksum is - some value calculated by “imposing” a certain algorithm on the data and used to check its integrity during transmission. Checksums can be used to quick comparison two sets of data for their identity. Different data will have different checksums.

Another technology for confirming data integrity is the exchange between interacting service devices signals-receipts, confirming the correctness of reception. Often this function is included by default in the network communication protocol itself.

Data transmission technologies involve the transfer of information from one computer to another - in both directions. Even when it seems to us that we are only receiving data (for example, downloading music), in fact, the exchange goes in two directions. There is simply a main data stream (which interests us - music) and an auxiliary (service) flow going in the opposite direction, formed by Vitancias about successful (or unsuccessful) transfer.

Depending on whether they can transmit data in both directions or not, physical channels are divided into several types:

  • Duplex channel- ensures simultaneous transmission of information in both directions. A duplex can consist of two independent physical media (one conductor for reception, the second for transmission). It is also possible that one medium is used to provide duplex operation. In this case, additional algorithms are used on clients to separate each data stream from the general array of information.
  • Half duplex channel- also provides transmission in both directions, but not simultaneously, but in turn. Those. For a certain time, data is transmitted in one direction, and then in the opposite direction.
  • Simplex channel- allows information to be transmitted in only one direction. Duplex can consist of two simplex channels.

Oh, that's a lot of letters :) I think that's enough for today, we'll move forward gradually. In the following articles we will definitely continue our acquaintance with, but for now - goodbye, and - until the next articles!

Finally, watch the topical video:

Did you like the article? Share it