Скачать презентацию Часть 2 все о пакетах и пакетной коммутации Скачать презентацию Часть 2 все о пакетах и пакетной коммутации

8 - Packet switching and packet delay.pptx

  • Количество слайдов: 41

Часть 2: все о пакетах и пакетной коммутации Что такое пакетная коммутация (packet switching)? Часть 2: все о пакетах и пакетной коммутации Что такое пакетная коммутация (packet switching)? – с. 2 Из чего складывается задержка передаваемых по сети сообщений от отправителя к получателю (packet delay) – с. 18 Смотровой буфер (Playback Buffer) – с. 33

Часть 2: все о пакетах и пакетной коммутации • Рассмотрим, почему коммутация пакетов очень Часть 2: все о пакетах и пакетной коммутации • Рассмотрим, почему коммутация пакетов очень полезна и все современные сети по сути основаны на ней • Пакет представляет собой кусочек информации, самодостаточный настолько, чтобы его можно было отдельно доставить адресату • Как пакетная коммутация помогает обеспечить нагрузку на сеть, надежную и эффективную доставку данных через сеть • Разберем немного математические основы передачи пакетов • В конце этой части вы будете знать, как приложения типа Skype и You. Tube обеспечивают плавную передачу данных, сколько времени надо для пересылки пакетов между двумя точками и как много пакетов можно требуется для заполнения пространства до марса и т. д. • Важно усвоить 3 причины задержки и разного времени доставки пакетов: Ø Задержка с отправкой из-за конечной длины пакета – Packetization delay Ø Задержка из-за пересылки по среде распространения сигнала – propagation delay Ø Ожидание в очереди на пути к адресату при буферизации в памяти роутеров – queuing delay

Что из себя представляет пакетная коммутация (packet switching)? Что из себя представляет пакетная коммутация (packet switching)?

Краткое содержание 1. Что такое коммутация каналов? 2. Что такое пакетная коммутация? 3. Почему Краткое содержание 1. Что такое коммутация каналов? 2. Что такое пакетная коммутация? 3. Почему интернет построен на коммутации пакетов? 4

Коммутация каналов Выделенный канал (провод) Коммутация каналов - вид связи, при котором по запросу Коммутация каналов Выделенный канал (провод) Коммутация каналов - вид связи, при котором по запросу пользователя на физическом уровне устанавливается временное соединение с требуемой точкой (пунктом назначения), то есть между взаимодействующими сетевыми узлами организуется последовательность логических каналов, и данному соединению выделяется (резервируется) фиксированная полоса пропускания на всём сетевом пути. Преимущество - отсутствие перегрузок, недостаток - неэффективное использование ресурсов сети, так как они резервируются за пользователем на всё время соединения, даже если трафик отсутствует. Примером таких сетей служат обычные телефонные сети

Коммутация каналов Выделенный канал (провод) Коммутатор каналов (Circuit Switch) Коммутация каналов Выделенный канал (провод) Коммутатор каналов (Circuit Switch)

Коммутация каналов На каждый телефонный звонок выделяется 64 kb/s. Магистральная телефонная линия шириной в Коммутация каналов На каждый телефонный звонок выделяется 64 kb/s. Магистральная телефонная линия шириной в 10 Gb/s может обеспечивать 150000 звонков одновременно Принимающий звонок абонент “Callee” Звонящий “Caller” Центральная ATC (Central Office - C. O. ) Междугородная АТС (Trunk Exchange)

Коммутация каналов - При каждом звонке абонентам (узлам) выделяется собственная гарантированная изолированная полоса пропускания Коммутация каналов - При каждом звонке абонентам (узлам) выделяется собственная гарантированная изолированная полоса пропускания фиксированной ширины - Звонок можно разделить на 3 этапа: 1. Установление соединения (создания канала) между конечными абонентами (“дозвание”) 2. Коммуникация 3. Закрытие канала (“разрыв связи”) - Изначально (с 1880), канал представлял собой физический провод между абонентами - Теперь канал скорее напоминает виртуальный частный провод

Недостатки связи с коммутацией каналов 1. Низкая эффективность. Обмен данными между компьютерами как правило Недостатки связи с коммутацией каналов 1. Низкая эффективность. Обмен данными между компьютерами как правило происходит прерывисто, например нажатие клавиш для отправки команд через sshсоединение или загрузка веб-страниц. Если каждое соединение будет иметь выделенный канал связи, он будет использоваться малоэффективно. 2. Различная требуемая скорость. Компьютеры обмениваются информацией с самой разнообразной скоростью. Например, веб-сервер потокового видео с битрейтом до 6 Mb/s, или пользователь, печатающий по 1 символу в секунду. Канал определенной фиксированной ширины будет малопригоден для различных приложений. 3. Трудности с организацией каналов. Коммутаторы каналов поддерживают и управляют каждым создаваемым каналом индивидуально, что приводит к необходимости сложной организации их работы.

Краткое содержание 1. Что такое коммутация каналов? 2. Что такое пакетная коммутация? 3. Почему Краткое содержание 1. Что такое коммутация каналов? 2. Что такое пакетная коммутация? 3. Почему интернет построен на коммутации пакетов?

Пакетная коммутация Data B Header A Address B Коммутатор пакетов (Packet Switch) S 2 Пакетная коммутация Data B Header A Address B Коммутатор пакетов (Packet Switch) S 2 Next-hop B S 2 C S 3 D S 3 S 1 S 4 S 3 C D

Пакетная коммутация Коммутатор пакетов (Packet Switch) Пакетная коммутация Коммутатор пакетов (Packet Switch)

У коммутатора пакетов есть буфер пакетов Data H Буферы накапливают пакеты: - Когда два У коммутатора пакетов есть буфер пакетов Data H Буферы накапливают пакеты: - Когда два или более пакетов приходят одновременно - Во время образования заторов (congestions) в сети Затор или перегрузка сети или пробка - состояние сети, при котором данных для передачи больше, чем позволяет пропускная способность канала, - в результате сетевой трафик замедляется и некоторые пакеты могут теряться

Пакетная коммутация A Источник B R 2 H R 1 R 3 Цель R Пакетная коммутация A Источник B R 2 H R 1 R 3 Цель R 4 - Пакеты направляются индивидуально по своему пути шаг-за-шагом (hop-by-hop) на основе сравнения адреса из их заголовка с таблицей маршрутизации текущего раутера - Все пакеты используют полную пропускную способность сети, причем совместно - Маршрутизаторы (routers) поддерживают связь не по принципу «на каждое соединение в отдельности»

Краткое содержание 1. Что такое коммутация каналов? 2. Что такое пакетная коммутация? 3. Почему Краткое содержание 1. Что такое коммутация каналов? 2. Что такое пакетная коммутация? 3. Почему интернет построен на коммутации пакетов?

Почему интернет построен на коммутации пакетов? 1. Эффективное использование дорогостоящих линий связи - Линии Почему интернет построен на коммутации пакетов? 1. Эффективное использование дорогостоящих линий связи - Линии связи изначально считались дорогостоящим и скудным ресурсом - Пакетная коммутация позволяет множеству неравномерных «скачкообразных» потоков использовать один канал связи совместно и эффективно - “Circuit switching is rarely used for data networks, . . . because of very inefficient use of the links” – Bertsekas/Gallager 2. Устойчивость к ошибкам на линиях связи и в маршрутизаторах - “For high reliability, . . . [the Internet] was to be a datagram subnet, so if some lines and [routers] were destroyed, messages could be. . . rerouted” – Tanenbaum 3. Исторически, все сети, которые интернет должен был объединить, были сетями с пакетной коммутацией

Выводы Теперь вы должны четко представлять себе ответы на 3 вопроса: 1. Что такое Выводы Теперь вы должны четко представлять себе ответы на 3 вопроса: 1. Что такое коммутация каналов? 2. Что такое пакетная коммутация? 3. Почему интернет построен на коммутации пакетов?

Задержка передаваемых по сети сообщений от отправителя к получателю – от начала до конца Задержка передаваемых по сети сообщений от отправителя к получателю – от начала до конца

Краткое содержание 1. Несколько полезных определений 2. Задержка от отправителя к получателю 3. Задержка Краткое содержание 1. Несколько полезных определений 2. Задержка от отправителя к получателю 3. Задержка (сообщений) из-за ожидания в очереди 19

Несколько полезных определений Задержка распространения сигнала (Propagation Delay) tl время, требуемое пакету передаваемых данных Несколько полезных определений Задержка распространения сигнала (Propagation Delay) tl время, требуемое пакету передаваемых данных для прохождения от отправителя к получателю: это время, которое требуется для передачи одного бита по линиям связи в сети со скоростью распространения c. l Пример: одному биту требуется около 5 ms чтобы пройти 1000 km по оптоволоконному кабелю со скоростью c = 2 x 108 m/s. В сетях на основе витой пары, скорость прохождения сигнала равна примерно 70% от скорости света, в оптоволоконных сетях – немного меньше. Важно: задержка распространения не зависит от скорости передачи данных (data rate) между узлами сети - 1 kb/s или 10 Gb/s – tl является функцией скорости прохождения каждого бита по линии 20 связи и ее длины (длины кабеля, например)

Несколько полезных определений Задержка из-за пакетирования tp: время, затрачиваемое на то, чтобы передать весь Несколько полезных определений Задержка из-за пакетирования tp: время, затрачиваемое на то, чтобы передать весь пакет от первого до последнего бита p r bits/s Пример 1: на пакет размером 64 byte уходит 5. 12 ms при передаче по сети со скоростью 100 Mb/s Пример 2: на пакет размером 1 kbit уходит 1. 024 s при передаче по сети со скоростью 1 kb/s. В этом примере проявляется разница в терминологии, когда подразумевается двоичная и десятичная системы счисления для первой и второй величин, соответственно По сути, скорость передачи данных r зависит от того, как быстро мы способны посылать бит за битом в сеть, то есть как «плотно» их можно упаковывать. 1 kb/s означает, что можно отправлять по кабелю 1000 бит каждую секунду, 10 Gb/s - 10 млн. бит и т. д. 21

Краткое содержание 1. Несколько полезных определений 2. Задержка от отправителя к получателю 3. Задержка Краткое содержание 1. Несколько полезных определений 2. Задержка от отправителя к получателю 3. Задержка (сообщений) из-за ожидания в очереди 22

Задержка от отправителя к получателю A l 1 , r 1 l 2 , Задержка от отправителя к получателю A l 1 , r 1 l 2 , r 2 l 3 , r 3 l 4 , r 4 B Пример: сколько времени потребуется пакету длиной p для прохождения пути от A до B, начиная с момента отправки 1 -го бита до прибытия последнего бита? Подразумевается, что коммутаторы работают по принципу «store-and-forward» передачи с буферизацией пакетов (с промежуточным хранением) на всех отрезках пути, то есть роутер решает куда послать пакет когда полностью его получает. Более редкий тип маршрутизации – «cut through» , когда получив заголовок биты начинают пересылаться дальше не дожидаясь прибытия всего пакета 23

Задержка от отправителя к получателю A l 1 , r 1 l 2 , Задержка от отправителя к получателю A l 1 , r 1 l 2 , r 2 S 1 A S 1 S 2 l 4 , r 4 B S 3 time p/r 1 p/r 2 l 1/c p/r 3 l 2/c p/r 4 S 3 B l 3 , r 3 l 3/c l 4/c time 24

Краткое содержание 1. Несколько полезных определений 2. Задержка от отправителя к получателю 3. Задержка Краткое содержание 1. Несколько полезных определений 2. Задержка от отправителя к получателю 3. Задержка (сообщений) из-за ожидания в очереди 25

Очереди и задержка сообщений в них Чтобы разобраться с производительностью сети, основанной на пакетной Очереди и задержка сообщений в них Чтобы разобраться с производительностью сети, основанной на пакетной коммутации, можно представлять себе ее как набор очередей, соединенных каналами связи. При заданных (известных) скоростях передачи данных по этим каналам и их длине, единственная неизвестная величина – задержка сообщений при прохождении очереди. Если мы сможем понять из чего складывается эта задержка, то станет ясным как работает сама сеть. 26

Очереди и задержка сообщений в них Пересекающиеся потоки вызывают заторы и изменяют время ожидания Очереди и задержка сообщений в них Пересекающиеся потоки вызывают заторы и изменяют время ожидания в очереди 27

Задержка из-за ожидания в очереди Data H Other packets A l 1 , r Задержка из-за ожидания в очереди Data H Other packets A l 1 , r 1 l 2 , r 2 S 2 Q 2(t) S 1 A S 1 S 2 l 4 , r 4 B S 3 p/r 1 p/r 2 Q 2(t) p/r 3 l 1/c l 2/c p/r 4 S 3 B l 3 , r 3 l 3/c Обычно пакеты отправляются в том порядке, в котором они приходят: тип очереди FCFS (First Come, First Served) или "первым пришёл - первым обслужен", это дисциплина обслуживания очередей типа "очередь", как правило применяемая при коммутации пакетов и маршрутизации time l 4/c * Разница в правописании в учебниках термина «организация (формирование) очереди» : Queueing = UK spelling, adopted by Kleinrock at UCLA in 1960 s, Queueing and queuing (US spelling) are both widely used. 28

Вопрос: какую роль может играть задержка в очереди? Qi(t) является функцией времени, то есть Вопрос: какую роль может играть задержка в очереди? Qi(t) является функцией времени, то есть зависит от загрузки сети другими пакетами на данный момент. Вопрос: насколько велика она может быть? • С помощью команды “ping” можно получить на него ответ! • По сути, ping дает удвоенное время следования пакета «туда-обратно» = 2 * RTT • Посмотрим на интегральные функции распределения времени задержки для двух примеров 29

Разброс по времени задержки пакетов 100% 90% Stanford-Princeton 4, 000 km 80% Variation ~50 Разброс по времени задержки пакетов 100% 90% Stanford-Princeton 4, 000 km 80% Variation ~50 ms 70% CDF (%) 60% 50% 40% 30% 20% 10% 0% 0 100 200 300 RTT (ms) 400 500 600 700 30

Разброс по времени задержки пакетов 100% 90% Stanford-Princeton 4, 000 km 70% 10, 000 Разброс по времени задержки пакетов 100% 90% Stanford-Princeton 4, 000 km 70% 10, 000 km Variation ~50 ms 80% CDF (%) Stanford-Tsinghua Variation ~200 ms 60% 50% 40% 30% 20% 10% 0% 0 100 200 300 400 500 600 700 RTT (ms) 31

Выводы Суммарная задержка от отправителя получателю складывается из 3 частей: к - Задержка распространения Выводы Суммарная задержка от отправителя получателю складывается из 3 частей: к - Задержка распространения сигнала по каналам связи (фиксированная величина) - Задержка из-за пакетирования – время, требуемое для посылки всех байт пакета в сеть (фиксированная величина) - Задержка из-за ожидания в очереди в буферах пакетов маршрутизаторов (переменная непредсказуемая величина) 32

Смотровой буфер (Playback Buffer) Смотровой буфер (Playback Buffer)

Проблема: Приложениям, работающим в реальном времени (типа You. Tube и Skype) приходится решать проблему Проблема: Приложениям, работающим в реальном времени (типа You. Tube и Skype) приходится решать проблему непостоянного времени задержки изза ожидания в очередях буферов маршрутизаторов 34

Смотровые буферы Место, до которого произведена буферизация Место воспроизведения Смотровой буфер From: youtube. com Смотровые буферы Место, до которого произведена буферизация Место воспроизведения Смотровой буфер From: youtube. com 35

Смотровые буферы 1 Mb/s Server p o pt 1 Mb/s by nt Playback rate Смотровые буферы 1 Mb/s Server p o pt 1 Mb/s by nt Playback rate Se Variable delay b Re Se rv e r Cumulative Bytes d ive ce La y Buffer Time

Смотровые буферы 1 Mb/s Server Смотровой буфер Video decoder Место воспроизведения Screen Смотровые буферы 1 Mb/s Server Смотровой буфер Video decoder Место воспроизведения Screen

Слишком маленький смотровой буфер 1 Mb/s Server p o pt 1 Mb/s Re Se Слишком маленький смотровой буфер 1 Mb/s Server p o pt 1 Mb/s Re Se nt by Se rv e r Cumulative Bytes d ive ce Variable delay 1 Mb/s Buffer Time b La y Буфер следует увеличить! “ребуферизация”

Смотровой буфер - В режиме пересылки данных от отправителя к получателю с пакетной коммутацией, Смотровой буфер - В режиме пересылки данных от отправителя к получателю с пакетной коммутацией, задержка по времени их получения является переменной величиной - Для учета этой неравномерности применяется «playback buffer» (смотровой буфер) - Можно было бы сделать его очень большим, но тогда видео начинало бы воспроизводиться с огромной задержкой - Поэтому, приложения оценивают величину задержки, устанавливают размер смотрового буфера, и меняют его в случае колебаний во времени задержки

Задержка из-за ожидания в очереди Data H Other packets A l 1 , r Задержка из-за ожидания в очереди Data H Other packets A l 1 , r 1 l 2 , r 2 S 2 Q 2(t) S 1 A S 1 S 2 l 4 , r 4 B S 3 p/r 1 p/r 2 Q 2(t) p/r 3 l 1/c l 2/c p/r 4 S 3 B l 3 , r 3 Задержки в очередях добавляют переменное и непредсказуемое время к суммарной задержке пакета! l 3/c time l 4/c 40

Резюме • Приложения, работающие в режиме реального времени, используют смотровые буферы, чтобы учесть разное Резюме • Приложения, работающие в режиме реального времени, используют смотровые буферы, чтобы учесть разное время задержки в очередях буферов маршрутизаторов • Следующая тема – как можно попытаться это описать с помощью моделей очередей, начнем с простой детерминированной модели 41