По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Пятая часть тут. Когда транспортные протоколы «мечтают», они «мечтают» о приложениях? Скорее всего они должны это делать, поскольку основная цель сети - поддержка приложений, а основным ресурсом, который требуется приложениям из сети, являются данные, перемещаемые из одного процесса (или процессора) в другой. Но как можно передавать данные по проводу, по воздуху или по оптическому кабелю? Пожалуй, лучше всего начать с более привычного примера: человеческого языка. Данные лекции написаны с использованием форматирования, языка и слов, позволяющего вам читать и понимать представленную информацию. Какие проблемы нужно преодолеть языку, чтобы общение, письменность и чтение стали возможными? Мысли должны быть записаны в форме, которая позволяет их воспринимать получателем. В человеческих языках информация упаковывается в слова, предложения, абзацы, главы и книги. Каждый уровень этого подразделения предполагает определенную единицу информации и определенную организационную систему. Например, звуки или идеи инкапсулируются в буквы или символы; звуки или идеи затем объединяются в слова; слова объединяются в предложения и т. д. Предложения следуют определенной грамматической форме, поэтому вы можете расшифровать значение символов. Такое кодирование мыслей и информации в символы, которое позволяет читателю (получателю) восстановить исходное значение, будет называться маршалингом данных в этих лекциях. Одним из аспектов маршалинга является определение-процесс привязки одного набора символов к определенному значению. Метаданные, или данные о данных, позволяют понять, как интерпретировать информацию в потоке. Должен быть какой-то способ управления ошибками при передаче или приеме. Предположим, у вас есть домашняя собака, которая любит гоняться за мячиком. Однажды мяч улетает на улицу. Собака мчится за мячиком и, кажется, она попадет под движущийся автомобиль. Что вы делаете? Возможно, вы кричите ей «Стоп!» — а потом, может быть, «Нет!» — и, возможно, «Остановись!». Использование нескольких команд, которые должны привести к одному и тому же действию - собака должна остановиться перед тем, как выбежать на улицу, - чтобы убедиться, что собака правильно получила и поняла сообщение. Вы надеетесь, что, если вы отправите несколько сообщений, вы убедитесь в том, что вы говорите, поймет собака, и у вас с ней нет недопонимания. Это, по сути, форма исправления ошибок. Существует много видов исправления ошибок, встроенных в человеческий язык. Человеческие языки более точно определяют информацию, которую они содержат, поэтому несколько пропущенных букв не приводят к потере всего сообщения. Эта избыточная спецификация может рассматриваться как форма прямого исправления ошибок. Однако это не единственная форма исправления ошибок, которую содержат человеческие языки. Они также содержат вопросы, которые могут быть заданы для проверки, подтверждения или получения недостающих битов или контекста информации, ранее «переданной» через язык. Должен быть какой—то способ поговорить с одним человеком или небольшой группой людей в большой толпе, используя единственную среду—воздух. Это не редкость, когда нужно поговорить с одним человеком из комнаты, полной людей. Человеческий язык создал способы решения этой проблемы во многих ситуациях, например, называя чье-то имя или говоря достаточно громко, чтобы быть услышанным человеком, с которым вы непосредственно сталкиваетесь (другими словами, реализация языка может быть направленной). Способность говорить с одним человеком среди многих или с определенным подмножеством людей — это мультиплексирование. Наконец, должен быть какой-то способ контролировать ход разговора. С книгой все просто: писатель создает текст по частям, которые затем собираются в формат, который читатель может читать и перечитывать в совершенно ином темпе. Не многие люди думают о книге как о форме управления потоком, но перевод мыслей в письменную форму — это эффективный способ отключить скорость отправителя (скорость письма) от скорости получателя (скорость чтения). Разговорная речь имеет другие формы управления потоком, и остекленевший взгляд в глазах слушателя, когда он потерял линию рассуждения, за которой следует говорящий, или даже физические жесты, указывающие, что говорящий должен замедлиться. Подводя итог, успешные системы связи должны решить четыре проблемы: Упорядочивание данных; преобразование идей в символы и грамматику, понятную получателю Управление ошибками, чтобы идеи правильно передавались от отправителя к получателю Мультиплексирование или предоставление возможности использовать общую среду или инфраструктуру для разговоров между различными парами отправителей и получателей. Управление потоком, или возможность убедиться, что получатель действительно получает и обрабатывает информацию, прежде чем отправитель передаст больше данных.
img
Сетевая индустрия использует множество терминов и понятий для описания коммутации и маршрутизации, потому что многие термины пересекаются в определениях этих понятий. Это может сбить с толку. Работает ли маршрутизатор маршрутизатором или коммутатором? В чем разница между коммутацией на 3 уровне (L3) и маршрутизацией? Что бы найти ответы на эти вопросы необходимо разобраться, что происходит с пакетом, когда он проходит через сеть. Понимание широковещательных и коллизионных доменов Два основных понятия, которые вы должны понять. Коммутация. Понятие широковещательного домена и домена коллизий На рисунке изображена простая сеть, иллюстрирующая эти два понятия. Домен коллизий определяется как набор хостов, подключенных к сети. В некоторых случаях хосты одновременно не буду передавать пакеты из-за возможного столкновения последних. Например, если Хост А и хост Б соединены прямым проводом, то они не смогут передавать пакеты одновременно. Однако, если между хостами установлено какое-то физическое устройств, то одновременная передача данных возможна, так как они находятся в отдельных доменах коллизий. Широковещательный домен-это набор хостов, которые могут обмениваться данными, просто отправляя данные на 2 уровне(L2). Если узел A посылает широковещательный пакет для всех хостов, по локальной сети, и хост B получает его, эти два хоста находятся в одном широковещательном домене. Широковещательный домен и домен коллизий Мостовое соединение создает домен коллизий, но не широковещательный домен. Традиционная коммутация пакетов и мостовое соединение- технически- это одно и то же. Основное различие заключается в том, что в большинстве коммутируемых сред каждое устройство, подключенное к сети, находится в отдельном домене коллизий. Что же изменяется в формате типичного пакета, когда он проходит через коммутатор? Рисунок не показывает измения в формате пакетов данных прошедших через коммутатор Вообще, устройства по обе стороны от коммутатора не "видят", что между ними есть коммутатор, они также не знают назначения своих пакетов; коммутаторы прозрачны для устройств подключенных к сети. Если узел А хочет отправить пакет на ip-адресс 192.168.1.2 (узел B), он отправляет в эфир широковещательный запрос для всех узлов, подключенных к тому же сегменту сети, запрашивает MAC-адрес хоста с IP-адресом 192.168.1.2 (это называется Address Resolution Protocol (ARP)). Так как узел B находится в том же широковещательном домене, что и узел A, узел A может быть уверен, что узел B получит этот широковещательный запрос и отправит ответный пакет с верным MAC-адресом для обмена пакетами. Широковещательные домены и домены коллизии в маршрутизации Сеть построена на основе маршрутизатора не создает широковещательный домен и домен коллизий данная схема приведена на рисунке: Возникает вопрос, как пакет отправленный с хоста А достигнет хост Б с ip-адресом 192.168.2.1? Хост Ане может отправить широковещательный пакет для обнаружения адреса узла B, поэтому он должен использовать какой-то другой метод чтобы выяснить, как добраться до этого пункта назначения. Откуда узел А знает об этом? Обратите внимание, что после каждого IP-адреса на рисунке выше, есть значение / 24. Это число указывает длину префикса, или количество битов, установленных в маске подсети. Хост А может использовать эту информацию для определения что хост B не находится в том же широковещательном домене (не в том же сегменте), и хост A должен использовать определенный метод маршрутизации для достижения цели, как показано на рисунке ниже. Теперь, когда хост A знает, что хост B не находится в том же широковещательном домене, что и он, он не может отправить широковещательный запрос для получения адреса хоста B. Как, тогда, пакету, отправленному с узла А, добраться до узла B? Отправляя свои пакеты к промежуточному маршрутизатору, Хост A помещает в заголовок пакета IP-адрес хоста B, а также еще MAC-адрес промежуточного маршрутизатора, как показано на рисунке. Узел А помещает MAC-адрес маршрутизатора в заголовок пакета. Маршрутизатор принимает этот пакет, приходящий из сети. Далее маршрутизатор проверяет IP-адрес назначения и определяет, какой наиболее короткий маршрут построить и сравнивает данные из пакета с таблицей маршрутизации (в данном случае сравниваются данные хоста B), и заменяет MAC-адрес правильным MAC-адресом для следующего перехода. Затем маршрутизатор пересылает пакет в другой сегмент, который находится в другом широковещательном домене. Коммутация L3 Коммутация 3 уровня очень похожа на маршрутизацию, как показано на рисунке ниже (обратите внимание, что это то же самое, что изображено на рисунке выше). Это связано с тем, что коммутация 3 уровня является маршрутизируемой; Нет никакой функциональной разницы между коммутацией 3 уровня и маршрутизацией.
img
Ну просто очень частый кейс: создается виртуальная машина на Linux ОС (Hyper-V или VMware, не важно), которая работает длительное время. Но в один прекрасный момент, память сервера переполняется и приходится расширять диск. В виртуализации (гипервизоре) это сделать очень просто - нарастить виртуальный диск с физического. А что делать внутри виртуалки, где живет Linux/CentOS? В статье мы расскажем, как расширить пространство памяти (диск) на сервера под управлением Linux/CentOS, последовательно управляя PV (Physical Volume, физические тома), VG (Volume Group, группа томов) и LV (Logical Volume, логические разделы). А вообще мы можем расширить диск или нужно создать новый? Это очень важный пункт. Обязательно проверьте вот что: дело в том, что диск разделенный на 4 раздела более не сможет быть расширен. Проверить это легко. Подключаемся к серверу CentOS и вводим команду fdisk -l: # fdisk -l Disk /dev/sda: 187.9 GB, 187904819200 bytes 255 heads, 63 sectors/track, 22844 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 25 200781 83 Linux /dev/sda2 26 2636 20972857+ 8e Linux LVM Если вывод команды у вас выглядит так, как показано выше - все хорошо. У вас пока только два раздела - /dev/sda1 и /dev/sda2. Можно создать еще два. Однако, если вывод команды будет выглядеть вот так: # fdisk -l Disk /dev/sda: 187.9 GB, 187904819200 bytes 255 heads, 63 sectors/track, 22844 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 25 200781 83 Linux /dev/sda2 26 2636 20972857+ 8e Linux LVM /dev/sda3 2637 19581 136110712+ 8e Linux LVM /dev/sda4 19582 22844 26210047+ 8e Linux LVM Это означает, что для решения задачи расширения памяти на сервере вам нужно создавать новый диск, а не расширять предыдущий. Мы рассматриваем первый вариант, когда у вас еще есть возможность создавать разделы. Погнали! Создаем новую партицию Проверяем что у нас на физических дисках командой fdisk -l # fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 391 3036285 8e Linux LVM Сервер видит 10.7 ГБ места на диске. Начинаем создавать новую партицию (раздел) командой fdisk /dev/sda. После запроса ввода команды, указываем n, чтобы создать новую партицию: # fdisk /dev/sda The number of cylinders for this disk is set to 1305. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): n В следующем разделе конфигурации, указываем ключ p чтобы создать раздел. Тут будьте внимательны - самый первый пункт нашей статьи - у вас должно быть на этот момент строго меньше 4 партиций на диске! Command action e extended p primary partition (1-4) p На следующем экране задаем номер для партиции. Так как у нас уже есть партиции /dev/sda1 и /dev/sda2, то следуя порядковому номеру, мы указываем цифру 3: Partition number (1-4): 3 В следующем пункте, мы рекомендуем нажать Enter дважды, то есть принять предложенные по умолчанию значения: First cylinder (392-1305, default 392): Using default value 392 Last cylinder or +size or +sizeM or +sizeK (392-1305, default 1305): Using default value 1305 Отлично. Теперь мы меняем типа нашего раздела. Для этого, в следующем меню нажимаем ключ t, указываем номер партиции, который только что создали (напомним, это был номер 3), 3, а в качестве Hex code укажем 8e, а дальше просто Enter: Command (m for help): t Partition number (1-4): 3 Hex code (type L to list codes): 8e Changed system type of partition 3 to 8e (Linux LVM) Готово. Мы вернулись в основное меню утилиты fidsk. Сейчас ваша задача указать ключ w и нажать Etner, чтобы сохранить опции партиций на диске: Command (m for help): w После, что самое важное этого метода - перезагружать ничего не нужно! Нам просто нужно заново сканировать партиции утилитой partprobe: # partprobe -s Если команда выше не работает, то попробует сделать с помощью partx: # partx -v -a /dev/sda И если уже после этого у вас не появляется новая партиция - увы, вам придется согласовать время перезагрузки сервера и перезагрузить его. Успешным результатом этого шага будет вот такой вывод команды fdisk, где мы видим новую партицию: # fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 391 3036285 8e Linux LVM /dev/sda3 392 1305 7341705 8e Linux LVM Расширяем логический раздел LV с новой партиции Теперь наша задача следующая: создаем физический том (PV) из новой партиции, расширяем группу томов (VG) из под нового объема PV, а затем уже расширяем логический раздел LV. Звучит сложно, но поверьте, это легко! Итак, по шагам: создаем новый физический том (PV). Важно: у вас может быть не /dev/sda3, а другая, 4, например, или вообще /dev/sdb3! Не забудьте заменять в командах разделы, согласно вашей инсталляции. # pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created Отлично. Теперь находим группу томов (VG, Volume Group). А точнее, ее название. Делается это командой vgdisplay: # vgdisplay --- Volume group --- VG Name MerionVGroup00 ... Найдено. Наша VG называется MerionVGroup00. Теперь мы ее расширим из пространства ранее созданного PV командой vgextend: # vgextend MerionVGroup00 /dev/sda3 Volume group "MerionVGroup00" successfully extended Теперь расширяем LV из VG. Найдем название нашей LV, введя команду lvs: # lvs LV VG Attr LSize MerionLVol00 MerionVGroup00 MerionLVol00 - найдено.Расширяем эту LV, указывая до нее путь командой lvextend /dev/MerionVGroup00/MerionLVol00 /dev/sda3: # lvextend /dev/MerionVGroup00/MerionLVol00 /dev/sda3 Extending logical volume MerionLVol00 to 9.38 GB Logical volume MerionLVol00 successfully resized Почти у финиша. Единственное, что осталось, это изменить размер файловой системы в VG, чтобы мы могли использовать новое пространство. Используем команду resize2fs: # resize2fs /dev/MerionVGroup00/MerionLVol00 resize2fs 1.39 (29-May-2006) Filesystem at /dev/MerionVGroup00/MerionLVol00 is mounted on /; on-line resizing required Performing an on-line resize of /dev/MerionVGroup00/MerionLVol00 to 2457600 (4k) blocks. The filesystem on /dev/MerionVGroup00/MerionLVol00 is now 2457600 blocks long. Готово. Проверяет доступное место командой df -h. Enjoy! Получаете ошибку в resize2fs: Couldn't find valid filesystem superblock Если вы получили ошибку вида: $ resize2fs /dev/MerionVGroup00/MerionLVol00 resize2fs 1.42.9 (28-Dec-2013) resize2fs: Bad magic number in super-block while trying to open /dev/MerionVGroup00/MerionLVol00 Couldn't find valid filesystem superblock. Это значит, что у вас используется файловая система формата XFS, вместо ext2/ext3. Чтобы решить эту ошибку, дайте команду xfs_growfs: $ xfs_growfs /dev/MerionVGroup00/MerionLVol00 meta-data=/dev/MerionVGroup00/MerionLVol00 isize=256 agcount=4, agsize=1210880 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 data = bsize=4096 blocks=4843520, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 Как тебе такое, Илон Маск?
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59