Що таке комп'ютерні мережі. Основні поняття.

Networking
Basic networking knowledge, understanding layers and protocols.
Understanding networks: layers and protocols
Мережевий протокол - набір правил для взаємодії між компютерами. Протоколи визначають формат, синхронізацію, послідовність та контроль помилок. Без цих правил компютер не бачитиме сенс в потоці вхідних бітів.
OSI (Open System Interconnection) модель – включає набір протоколів, що визначають та стандартизують процес комунікації даних. Модель поділяє цей процес на 7 груп, які називаються шарами.

Мережеві шари:

Basic understanding of TCP/IP model and protocols

Мережеві шари:
Application layer (Програмний) – надає програми для усунення мережевих проблем, передачу файлів, віддалений контроль та інтернет діяльність. Також підтримує APIs (Application Programming Interfaces), що дозволяє програмам написаних для певних операційних систем доступатися до мережі.
Transport layer (Транспортний) – забезпечує сервіси контролю потоку, контролю помилок та підтвердження для інтернету. Служить в якості інтерфейсу для мережевих додатків.
Internet layer (Інтернет) – забезпечує логічну, незалежну від апаратного забезпечення адресацію, так що дані можуть передаватися між підмережами з різною фізичною архітектурою. Забезпечує маршрутизацію, щоби зменшити трафік та підтримує доставку по мережі. Повязує фізичні адреси (що використовуються на рівні Network Access layer) з логічними адресами.
Network Access layer (Доступ до мережі) – забезпечує інтерфейс з фізичною мережею. Форматує дані для передачі і адресує дані для підмережі базуючись на адресах фізичного апаратного забезпечення. Забезпечує контроль помилок для даних переданих по фізичній мережі.
Basic knowledge of physical layer protocols and media
Фізичний рівень визначає електричні, часові та інші характеристики мереж, по яким біти інформації передаються в формі електричних сигналів. Продуктивність каналів передачі даних (їх смуга пропускання, час запізнення та частота помилок) визначається різними властивостями фізичних носіїв.
Application layer protocols basics (HTTP, FTP, Telnet)
Програмний шар є наверху набору TCP/IP протоколів. Комунікує з нижчими шарами через TCP чи UDP порти.
Understanding HTTP and WWW
HTTP (Hypertext Transfer Protocol) використовується для комунікації бравзера з веб сервером. НТТР підтримує передачу HTML документів. Для встановлення зєднання використовується TCP транспорт протокол.
НТТР відповідає за наступне:
Встановлює зєднання між бравзером та сервером
Встановлення параметрів для сесії
Забезпечує впорядковану передачу вмісту HTML
Закриття зєднання з сервером
Після встановлення TCP зєднання, бравзер використовує HTTP GET команду, щоби отримати Веб сторінку з сервера.
UDP (User Datagram Protocol) – протокол в стеку TCP/IP, що на відміну від протоколу TCP працює без встановлення зєднання. Виконує обмін повідомленнями без підтвердження та гарантії доставки. При використанні протоколу UDP відповідальність за обробку помилок та повторну передачу даних покладена на протокол рівнем вище. Ефективний для серверів, що надсилають невеликі відповіді великій кількості клієнтів.
Basic troubleshooting tools (ICMP, ping, traceroute)
Ping – утиліта, що тестує мережеве зєднання.
Traceroute – утиліта, що відслідковує шлях датаграми (повідомлення) між мережами.
ICMP (Internet Control Message Protocol) – мережевий протокол, що використовується для передачі повідомлень про помилки, що виникли при передачі даних. На основі цього протоколу заснована дія утиліт ping та traceroute.
Client/Server model
Клієнт-сервер – мережева архітектура, в якій завдання чи мережеве навантаження розділене між постачальниками послуг (серверами) і замовниками (клієнтами).
Sockets, IP and port addressing
Мережевий сокет – кінцева абстрактна точка зєднання в компютерній мережі.
Сокет API – програмний інтерфейс для контролю та використання мережевих сокетів.
Адреса сокета – комбінація IP адреси та номера порта.
Using proxy server
Проксі сервер – сервер (компютер або програма), що дозволяє виконувати непрямі (а черех проксі) запити до мережевих сервісів.
Використовується для доступу компютерів з локальної мережі в інтернет, кешування даних, стиснення даних, захист локальної мережі від зовнішнього доступу, обмеження доступу до інтернету та контроль трафіку, для анонімного доступу.
File transfer services: FTP, TFTP
FTP (File Transfer Protocol) – клієнт/сервер утиліта і протокол, що використовується для передачі файлів між двома компютерами в TCP/IP мережі. Також може створювати та видаляти директорії та відображати вміст директорій.
TFTP (Trivial File Transfer Protocol) – клієнт/сервер утиліта і протокол, що базується на UDP та використовується для простих операцій передачі файлів.
Name resolution services: DNS, whois
DNS (Domain Name System) – система для іменування ресурсів в TCP/IP мережах.
WHOIS – мережевий протокол/сервіс (базується на протоколі TCP), що дає можливість визначити власника доменного імені/ІР адрес.
Remote access services: Telnet, SSH, rdesktop, VNC
Telnet – набір компонентів, що надають термінальний доступ до віддаленого компютера. Телнет сесія вимагає Телнет клієнт та Телнет сервер. Телнет є також протоколом, системою правил, що визначає взаємодію між Телнет сервером та клієнтом.