01.1 (Conspect) TCP/IP overview

Before we start learning about network programming, we will discuss TCP/IP.

Data transmission environment

Step 1: we need to figure out how the data will be transmitted in general, that is (in the form of what?).

- I mean, what's the media gonna be? - The answer is, maybe a wire. Trucks of winches (for a long time it was an effective method (we stuff data carriers and send them to another city, it was more effective than downloading data from somewhere). Transmit by fibre optic cable or by air - radio signal.

You have to imagine how well the data will be transmitted. We must take this into account and choose media by this criterion. For example, the weight of the same coding on the wire (0 and 1) has two problems.

Connecting the computer to the data transmission environment

We now agree on how several subscribers of our environment will transmit this very data in this environment, and if this agreement is called level 2 protocol, it means several environments - lei. There are mixed networks. We must accept how we will want to share this environment:

  1. Channel-switched networks - there are multiple channels of communication between computers, all computers are connected to each other, and in order for computer A to transmit information to computer B. He takes the channel that links them, transmits the information through it, the corresponding software that knows what a marker of the beginning of data transmission catches this fact. And it waits for the end marker and primes the message. If each of them is infinitely large (a lot of them are square-size), they may be missing. We have n channels and H computers. They have to rent this anal and release it further, because there are not enough channels for everyone.
  2. Pact-switching networks - at the moment. The unit of transmission is the packet. A single transmission medium is connected to the torus by all subscribers in our network, but they do not send data to it from beginning to end, but cutting it into pieces called packets. We must decide who sends how (in what order).

1 problem - determine the procedures of subscription of this channel and some intermediate agent that will sell and collect this channel. 2 problem - encapsulation, i.e. to determine the packet

!Octet = 8 bits

Media discipline

Example: ethernet

Ethernet packets are called frames

Carrier-sense multiple access with collision detection is smart, but makes transmission time unpredictable.

Raw old ethernet local network is functioning normally until 30% of all the time it's busy, and 70% stale. If load goes over 50%, the network is considered inoperable.

Example: Token_ring

This policy has guaranteed delivery speed, but slow.

Invariants

Incapsulation

All higher level data is separated into pieces (this is called fragmentation), each fit to be payload of a current level packet (level 2 packet is frame). Then data is wrapped into packet metadata (e. g. ethernet: MAC-addresses, type, checksum etc) and then sent.

Independence
There's (theoretically) no dependence on lower level implementation, e. g. ethernet frames are just the same, either if media is twisted pair or coaxial.

Consolidation of various SPDs

Combining many transmission environments, read local area networks (although this is a slightly narrower concept) into a WAN.

Here arises the task which was said at first - to learn how to identify all subscribers to the global network. The global network is always changing. Only raggedy geeks may want a list of all Internet subscribers and it will not help them anything.

  1. Identification
  2. Ensuring the possibility of data delivery from the sender to the recipient. Within a single SPD this is implied by default. But in the case of multiple SPDs it is not obvious. The site says "planning for data delivery", but this is a euphemism of the word routes. It's a rather complicated task. However, if we want the data to be transmitted, we have to describe a rule according to which data from subscriber A can reach B. If we have a complete network map somewhere, it can look and decide how to transmit. The problem is to keep the entire card. And the second drawback is that the Internet is big, and some link may fall off in a blocked route. The other is not knowing exactly how the data will reach its destination, but knowing who to send it to next. Dynamic route construction.

TCP/IP model, it has the following levels:

Global network

The task of data transfer is solved, but:

So we shall continue. Next subtask is to unite all local networks (sets of nodes bound by joint media) into global network

Router
a node of two or more local networks, that can retransmit packets from one network to another
Route
a chain of routers leads from sender to recipient
Routing

a process of determining this chain

Host
a node of global network

Identifying and routing

Dynamic connectivity

No host can bear a full routing map of global network:

But some information on what is connected to what is critical. Question is: what is «what»?

E. g.: the Internet

HSE/ArchitectureOS/01_TCPIP_Overview/Conspect_en (последним исправлял пользователь NataliaKrauze 2020-04-17 17:31:15)