FastTrack Training. "Network Basics". "Understanding the OSI Model". Part two. Eddie Martin December 2012
About a year ago, I noticed an interesting and fascinating series of lectures by Eddie Martin, which, thanks to its history and real-life examples, as well as its tremendous learning experience, is amazingly comprehensible and allows you to gain an understanding of quite complex technologies.
FastTrack Training. "Network Basics". "Understanding the OSI Model". Part two. Eddie Martin December 2012
Go to the fourth level. This is the transport level. So, we have a file with you that needs to be transferred. Let it be the same sales.ppt file. This file is a PowerPoint presentation. We at Cisco are awfully proud of using PowerPoint. And not only we, but many people like to use it.
Let's imagine that this is a half-hour PowerPoint presentation on 75 slides, yes, yes, this is Cisco :) And suppose that the file size will be approximately 27 megabytes. We very often send files of this size over the network. And over networks, large files are never sent in one piece, they are sent in small pieces.
This is like a book. Let's compare our file with the book. If I wanted to send this book over the network, I could not send it all, because there are so many pages in it. What would I have to do then? Break it into chapters and pages, or something else for a larger number, after which they can be sent much easier. I will need to determine how many pages I will receive and have to tear them one by one and send them separately, that is, I will split the file into mini-documents. This is called data segmentation.
Thus, at the transport level, when we send a file, the segmentation of data over the network begins, then they reach our server. We have to split our sales.ppt file into several segments. But how many chapters, how many segments of this file do we need to send?
For example, I'm going to send you 10 chapters as one segment of a file, well, or 20 chapters. For this we need to set up a process. We need to transfer a file from one client to another. To do this, you need to establish a session between them and create a logical communication tunnel, from one end to the other. And then the following happens. Anyone who requests this file using the File Transfer Protocol (FTP) reports that the file you want to receive will be split into 75 parts. It turns out there are 75 segments that need to be sent. And if, at the beginning, he somehow tells us: “Hey, I have 75 segments for this file, which I sent to you,” it turns out that he divided this file into parts. And accordingly, 75 different segments are expected at the other end of the tunnel.
But you and I need to make sure that all segments have reached the server. Depending on the application, if for example this is a file transfer application, it can use the FTP protocol, which guarantees you complete data transfer to the server and is a reliable service for sending files over the network.
So, my application decided to use reliable FTP. But what is its “reliability” and how is it ensured? And it is provided so. I divide the file into parts and send the first segment. When on the other side the server receives this segment, it tells us: “Hurray, I received the first segment.” And he answers: “You can send me the second one”. And so on. He receives the second segment and asks for the third, since he knows that he has already received the previous one. Your data applications have been designed to use this in particular.
We all know and have heard the term TCP / IP. Well, what does the term TCP mean? TCP is a data transmission control protocol that provides a pre-established data stream, re-requests data in case of data loss and eliminates duplication when receiving two copies of one packet, thereby ensuring the integrity of the transmitted data and notifying the sender of the transmission results. For example, the third packet fails and the server does not receive the third packet. He waits in accordance with the protocol, and then, after some waiting time, asks: "Send me the third package again." And if the retransmission does not occur, in the case of several such requests, we get the “Request timout”.
And what does this give to your applications? Reliability, guarantee that the file is transferred successfully. Therefore, your data applications should always use TCP first. The entire network as a whole “sucks” precisely according to this protocol. Yes, this is a technical term, no joke. I heard it many times from engineers at various levels. It is thanks to him that your databases are in order.
Well, how much does it cost? In life, there is nothing free. Perhaps, except that the love of my dog ​​Doc. He likes to dance with me no matter what mood I am in. This is perhaps the only thing in life that is free. The other dog - the dog of my wife, Bella, does not love me at all. But what is the price here? It costs us time and traffic, because we need to wait for the server to respond, even if it is located in another part of the world.
Now we have found a way to bypass the mechanism a bit and shorten this process a little, thanks to the TCP sliding window size function. If there was a transfer of several segments and there were no failures, the system can conclude that the network is reliable, and we can, for example, send 6 and 7 segments at once to save time. And then we can also send 8 and 9 segments, as the network is still reliable, and so on. And it speeds up data transfer. As a result, we can conclude the following - we can simultaneously send any number of segments, depending on the degree of network reliability. According to TCP / IP protocol standards, I can send up to 15 segments at once. But what if in the process of transferring several segments at once an error occurs? Suppose I send a segment from 50 to 64, in one packet, and an error occurs at 63. The server will say - send me 63 one more time, I did not receive it. The computer will send 63 and then will send a smaller number of segments at a time to avoid further errors. Thus, our packet data window will have a variable duration.
Now let's talk about another protocol involved at the application level, which you can choose to send files over the network. This is a trivial file transfer protocol - the Trivial File Transfer Protocol (TFTP). And if you look at its definition, then it says that it transfers files over the network without reliability. Let us return to our example and imagine that we chose this particular TFTP protocol to transfer segments. How would the transfer process go? Our computer would tell the server, "Hey, I have 75 segments here, catch it." And I would start sending them right away. What are the benefits of this protocol? It has faster transfer rates, but where is the reliability? For your application with databases it is better not to use it. The TFTP application layer protocol is based on the transport layer protocol (UDP or User Datagram Protocol), a user diagram protocol. So, you can choose TCP / IP or UDP / IP, depending on what you send. Most often, the data transfer layer itself selects the desired protocol from the two presented.
I'll tell you something.
In 1997, a boy named John Chambers, of whom you should have heard, has been working as president of Cisco for a couple of years. That time was very productive in the field of network technologies and Johnny wanted to make a breakthrough and do something new and useful. Let me remind you that it was Cisco who invented routers in the early 90s, and somewhere in 1993 they also invented switches. The Internet was born and Cisco began to acquire some IT companies in order to be a world leader and set the direction for the development of networks. And in 1997, John Chambers spoke here on campus to a group of investors and said the following:
“Our future lies in the fact that all remote transmissions will be almost free, as they will be divided into packet IP. Voice and data networks will be merged. ”
It was on that day that the fundamentals of data transfer to Cisco were born. We have become the key to combining different types of data.
At that time, the Internet was not at all, and if there was, then the connection was made via the phone. Then the user applications were not very reliable. But sending data was almost as important as telephony. Then the PBX became very important. When we said that we could transmit voice over the network, people laughed at us. They said about John: “What did this guy drink or smoke? What does he carry? But why did Cisco even need to integrate voice and data networks? Yes, it could just make the network even more important. It would make people think more about networking opportunities.
You must remember that hub time. Then e-mail was not as important as it is now, but people ran commercial applications and did not have data applications that they thought were critical. Then there were no normal protocols and voice was the only means of communication. We were faced with the task of making networks more reliable and intelligent. Who sells the most reliable switches and routers in the world? We, right. All this was necessary for the success of our business, because we sell more routers and switches than any other company in the world.
And now think, what protocol would you use to transfer voice data, TCP or UDP? Will data delay to check the reliability of a problem in the transmission of voice? Yes, of course it will. Video and voice should reach us quickly. We have up to 150 milliseconds to give a voice to reach you. We will have to maintain the transfer rate. We cannot correct the word and not worry that it will be stuck somewhere in the middle of the road.
We cannot send it again and again, otherwise it will turn out that I will say the same thing, the same thing, the same thing. Well, you understand. Therefore, we will have to use UDP protocol for voice and video transmission. This means - our network must be ready for this. You have to give the network that ability. You have to tell the network - this is the voice, let it flow. If a file is being sent in parallel and the channel is limited, you need to slow it down, no one will notice if it comes a second later. The main thing to support the flow of voice. This is critically important, because if you do not do this, the voice call or video call will be killed.
I will give an example from my experience. They hired me to sell voice and video. Then I sold more voice than ever in the history of networks, I sold "tons". And so the clients came to me and said that their network sucks (and this is a technical term, no joke). And I ask: “Do you have any critical data applications that depend on it? - Yes of course. - Let us at the beginning provide their functionality, and then we will deal with the task of voice transmission. Because I do not want to have the effect of a bottleneck and then return to the network revision. ”
This was the way of Cisco. Make networks smart so that it all works. In our era of video, this feature is very important. The voice is not so great in transmission, but the video is already just huge. Voice stream can be 8 kilobytes per second. This is a very small network-wide stream, but high-resolution video will already require more than 2 megabytes and must be transferred quickly. Therein lies the importance, and Cisco knows how to accomplish this task.
Many of you have come from competing companies such as Avaya, Nortel, etc., all of these competing companies have struggled to transfer voice from the PBX platform to the network, and they know that there are problems with the transmission of video and voice. But we succeeded in this, because we offered a ready-made solution that can interact with our network. After all, how can clients be assured of the correct interaction of a device that is simply plugged into the network if the network does not know about its existence and does not interact at the network level?
Previously, we had to look for options in different firms, and if one could not do something and the other could, then it was necessary to combine the possibilities, but now we can do everything. We offer full service. It takes a lot of time to set standards for the work of protocols - about 24-36 months, they do not appear from the air. Then these standards need to be loaded into the equipment. But we differ from competitors in that our equipment can be reprogrammed. We develop our Asics chips so that they can be reprogrammed using our software. And so you have the opportunity today to get a new feature on the equipment that you bought six months ago. Thus, we give you the opportunity to receive additional features of your device in the future, for the device you bought yesterday. And all this with just a simple update of your iOS. As we at Cisco develop our own software with our own standards. And our competitors will have to wait for new chips and new equipment with new standards, and this may take more than 2 years. And you have to buy a complete set of the new device. That's the whole difference. Of course, our services are more expensive, but in the longer term it is more convenient.
In the modern world, technologies are developing very quickly, you need to be able to adapt. We started talking about IP telephony in 1997, and in 1999-2000 we started selling it. Now these new waves of technology are rolling faster and faster. Architecture is more important than ever in terms of business. Not technology, but business.
So, we are talking about data transfer and we have TCP and UDP protocols in our head, but more importantly, the network can choose, compensate and understand which protocol it needs. Voice and video require the use of UDP and it is at this point that our competitors lose. Even Microsoft offers a lot of things, suggest using HP to connect / switch, use one for this, another for order, etc., but in the end, is it convenient for the client? I do not think. That is what gives us an advantage. We offer you a complete solution, and lead you all the way from the source to the server.
Let's remember who was first in voice transmission in 2004, who was the leader in the world? Nortel Networks. It was a great company. I never scold competitors such as Nortel, Avaya and the products of these companies. I say that they sometimes make the wrong decisions, or rather their leadership does it. I had a friend who worked for Nortel for 18 years. He was a great professional. But the company could not predict the requirements and needs of the networks. They did not begin to develop what we developed. And what happened to Nortel? They are no more, it is certainly a big disappointment.
And Avaya. This is a great competitor, but they do not do everything they can. I can guarantee you that. And all because they do not understand what is more important now in the market of services. First you need to examine the issue. You will not build a house anywhere? You will not build a five-story house on the place where there is no good foundation?
So, to summarize the transport level. He is important in talking to customers when you discuss voice and video. And today it is more important than anything else, since the video is “brutal.” There are excellent network development firms, but they stay away from the video. Since they know what the video will do with them and their networks. Do you know Tandberg? When did Tandberg turn to IT? Tandberg were very successful, but they stayed away from IT as much as they could.
But it is important to look into the future. I did, I was hired and I was a telecommunications manager. And when I came to the office of telecommunications managers, I talked and just talked about what awaits us in the future, not only about the fate of Cisco, but in general. I talked about whether we can adapt to the future. Soon people will come to us and ask for it. Can we offer it to them? We must be ready.
The same thing about the video. Then we wanted to make video calls as accessible as voice calls, but easier said than done. And you think IT specialists slept at night and did not worry about it? Experienced, and a lot, because they were afraid to come back and say: "I can not do this." Otherwise they would be fired. They could be. Could.
Now we move to where Cisco lives and breathes, to our daily work, to the third level - the network layer, which moves data in packets from one logical network to another. IP address, router (router), DHCP. This is the main thing that we will look at in this section.
You've probably heard the Cisco story. How did the Cisco story begin? Started her friendly couple from Stanford. To the north of here, in the 80s, they had two different networks. And it so happened that the husband worked in one department with one type of network, and his wife in another. They could not communicate with each other. And what did they have to do? As soon as PC personal computers appeared, they acquired one, put ports of the corresponding types of networks into it, and wrote excellent software that made it possible to connect the networks together. And now they had the opportunity to communicate, transfer information from one side to the other, to each other. It turns out that now it is possible to connect different types of networks. This is exactly what routers do and that is how they appeared.
These husband and wife worked on the same Stanford campus and they just wanted to communicate with each other. They came up with this decision and thought, and is it possible to create similar for other departments of the campus? Let's get a look. We have another type of network and we can connect it to ours by connecting the third port? Yes, they became innovators in their campus. . , .
UCLA USC. — ? . ? . . , , . , . , , .
, , , . -, , . , , . . , .
, 1985 : « , , . - . — , . . -, , , ». .
. , , . , . .
, . — . « », PSTN. : « / , »? . , . , , .
, . IBM . , , , . , . CISCO , , « ». « » , .
90- . IBM , , Novell , , - .
IP IP-. IP , -. , . , IP. . , Token Ring, , IP. , IP-?
Thank you for staying with us. Do you like our articles? Want to see more interesting materials? Support us by placing an order or recommending to friends, 30% discount for Habr users on a unique analogue of the entry-level servers that we invented for you:The Truth About VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps $ 20 or how to share the server? (Options are available with RAID1 and RAID10, up to 24 cores and up to 40GB DDR4).