Это продолжение серии статей, в которых я кратко освещаю основные моменты конкретной темы проектирования системной архитектуры. Первую статью можно прочитать . здесь Любая сложная система представляет собой мозаику из множества компонентов, каждый из которых выполняет свою определенную функцию. Эти компоненты не работают изолированно; они постоянно взаимодействуют по сети, обмениваясь данными и командами. Понимание основ этих взаимодействий имеет решающее значение. Необходимо понимать, как компоненты взаимодействуют по сети, чтобы по-настоящему оценить общую производительность и отказоустойчивость системы. Типы Сети можно разделить на четыре типа в зависимости от размера, архитектуры, диапазона и функции: : предназначена для личного использования, обычно в пределах досягаемости человека. Он может подключать такие устройства, как компьютер, смартфон и умные часы, часто через Bluetooth. Персональная сеть (PAN) ): соединяет устройства в пределах ограниченной территории, например дома, офиса или школы. Обычно он используется для подключения компьютеров и совместного использования ресурсов, таких как принтеры или подключения к Интернету, в пределах ограниченной географической области. Локальная сеть (LAN охватывает большую территорию, чем локальная сеть, но меньше, чем глобальная сеть, обычно охватывает город или большой кампус. Местные поставщики услуг часто используют его для подключения к предприятиям и домам в городе. Городская сеть (MAN): : охватывает большую географическую территорию, часто соединяя несколько локальных сетей. Интернет является наиболее ярким примером глобальной сети, связывающей компьютеры и сети по всему миру. Глобальная сеть (WAN) Компоненты Построение и обслуживание сетей было бы невозможно без специализированных аппаратных устройств: . Физические кабели (например, Ethernet) обеспечивают проводное соединение между устройствами, а точки беспроводного доступа позволяют устройствам подключаться к сети без физических кабелей, используя Wi-Fi или другие беспроводные технологии. Кабельная и беспроводная точка доступа : это аппаратные компоненты, часто карты, вставляемые в компьютеры или другие устройства, которые позволяют им подключаться к сети. Сетевая интерфейсная карта (NIC) : сетевое устройство, которое усиливает или регенерирует сигнал, позволяя ему передаваться на большие расстояния без ухудшения качества. В основном он используется в проводных и беспроводных сетях для расширения диапазона связи и обеспечения целостности данных на больших расстояниях. Повторитель Мост работает на уровне канала передачи данных. Мост — это ретранслятор, добавляющий функционал фильтрации контента путем считывания MAC-адресов источника и назначения. Он также используется для соединения двух локальных сетей, работающих по одному и тому же протоколу. Мост: : эти базовые сетевые устройства соединяют несколько устройств в локальной сети, выступая в качестве единого сегмента сети. Хаб не может фильтровать данные, поэтому пакеты данных отправляются на все подключенные устройства. Концентратор : устройства в сети, которые подключают другие устройства. В отличие от хабов, которые передают одни и те же данные всем устройствам, коммутаторы более интеллектуальны и направляют данные только на то устройство, которое в них нуждается. Коммутаторы : устройства, которые пересылают пакеты данных между компьютерными сетями. Они определяют лучший путь для передачи данных. Маршрутизаторы обычно соединяют локальные и глобальные сети и имеют динамически обновляемую таблицу маршрутизации, на основе которой они принимают решения о маршрутизации пакетов данных. Маршрутизаторы Топологии Топология сети — это структурная схема, которая определяет, как соединяются различные сетевые устройства и компоненты и как передаются данные. Выбор топологии существенно влияет на производительность, масштабируемость и отказоустойчивость сети. Его разделяют на два основных типа: : описывает физическое расположение устройств, кабелей и других сетевых компонентов. Он показывает, как физически подключены сетевые устройства. Физический : описывает поток данных внутри сети, независимо от ее физической конструкции. Он показывает, как данные передаются между сетевыми устройствами. Логический Выделяют следующие типы топологий: Точка-точка Прямое соединение между двумя узлами или конечными точками. Это простейшая форма топологии сети. : Преимущества Прямой выделенный канал обеспечивает высокоскоростную передачу данных. Простая конфигурация и настройка. Надежная связь, поскольку задействованы только два узла. : Недостатки Он не масштабируется для более крупных сетей, поскольку для каждой пары устройств потребуется выделенная линия. Это может быть дороже в сценариях, где требуется несколько подключений из-за необходимости использования отдельных ссылок. Автобус Все устройства используют одну линию связи. Данные, отправленные устройством, доступны всем другим устройствам, но только предполагаемый получатель принимает и обрабатывает эти данные. : Преимущества Легко реализовать для небольших сетей. Экономичность благодаря минимальному количеству кабелей. : Недостатки Производительность снижается по мере добавления новых устройств или увеличения сетевого трафика. Выход из строя одного кабеля может вывести из строя всю сеть. Кольцо Каждое устройство соединено с двумя другими устройствами, образуя кольцо. Данные перемещаются в одном, а иногда и в двух направлениях. : Преимущества Он может обрабатывать большие объемы данных, чем топология шины. : Недостатки Выход из строя одного кабеля или устройства может вывести из строя всю сеть. Сложнее установить и перенастроить. Звезда Все устройства подключены к центральному устройству (например, коммутатору или концентратору). : Преимущества Простота установки и управления. Выход из строя одного кабеля не влияет на другие устройства. : Недостатки Если центральное устройство выходит из строя, вся сеть становится неработоспособной. Требуется больше кабелей, чем топология шины. Дерево Гибридная топология, сочетающая в себе характеристики топологий «звезда» и «шина». Группы сетей с конфигурацией «звезда» подключаются к магистральной линейной шине. : Преимущества Иерархический и масштабируемый. Группировка устройств упрощает управление. : Недостатки Сбой в магистральной сети приведет к разделению сети. Требуется больше кабелей, чем в других топологиях. сетка Устройства взаимосвязаны. Каждое устройство подключено к любому другому устройству. : Преимущества Обеспечивает высокую избыточность и надежность. Данные могут передаваться с нескольких устройств одновременно. : Недостатки Это требует большего количества кабелей, что делает его дорогим. Сложный в установке и настройке. Гибридный Комбинация двух или более топологий. : Преимущества Гибкость и надежность, поскольку она наследует преимущества топологий своих компонентов. Масштабируемый. : Недостатки Сложный дизайн. Это может быть дороже из-за нескольких конфигураций. Протоколы Сетевые протоколы — это правила или стандарты, которые определяют, как данные передаются и принимаются по сети. Эти протоколы гарантируют, что устройства в сети (или в нескольких сетях) могут взаимодействовать друг с другом стандартизированным способом. Общие протоколы : основной набор протоколов, обеспечивающих работу Интернета. TCP гарантирует правильную отправку данных, а IP обеспечивает отправку данных в правильное место. TCP/IP : протокол без установления соединения, который, в отличие от TCP, не устанавливает соединение перед отправкой данных и не гарантирует порядок пакетов данных. UDP протоколы, используемые для передачи веб-страниц в Интернете. HTTPS включает меры безопасности для шифрования данных. HTTP, HTTPS: : протокол, предназначенный для передачи файлов по сети. FTP : используется для передачи электронной почты. SMTP : используется для получения и хранения электронной почты с почтового сервера. IMAP : используется для получения электронной почты с почтового сервера. POP3 : используется для отчетов об ошибках и диагностики, связанных с обработкой IP. ICMP : преобразует доменные имена в IP-адреса, позволяя пользователям получать доступ к веб-сайтам, используя удобочитаемые имена. DNS : динамически назначает IP-адреса устройствам в сети. DHCP : Криптографические протоколы предназначены для обеспечения безопасной связи в компьютерной сети. SSL/TLS : Протокол «точка-точка» (PPP) — это, по сути, набор асимметричных протоколов для различных соединений или каналов без формирования кадров. PPP : определяет способ взаимодействия устройств в локальной сети (LAN). Он работает как на физическом уровне, так и на канальном уровне модели OSI. Ethernet Модели OSI и TCP/IP OSI и TCP/IP — две основные модели, служащие в качестве руководящих структур, описывающих процессы, связанные с передачей данных по сети. Модель OSI Протокол Формат данных Модель TCP/IP 7 Приложение HTTP, DNS, SMTP, FTP Данные Приложение 6 Презентация ТЛС, SSL Данные Приложение 5 Сессия Розетки Данные Приложение 4 Транспорт TCP, UDP Сегмент, Пакет Транспорт 3 Сеть IP, ICMP, IPsec IP-дейтаграмма Интернет 2 Канал передачи данных PPP, Ethernet Рамка Сетевой интерфейс 1 Физический Оптоволокно, беспроводная связь Кусочек Сетевой интерфейс Модель (Взаимодействие открытых систем) представляет собой концептуальную основу для понимания сетевых взаимодействий на семи уровнях. Каждый слой выполняет определенную функцию: OSI : занимается физическим соединением между устройствами. Он определяет элементы оборудования, такие как кабели, коммутаторы и сетевые карты. Физический : отвечает за создание надежной связи между двумя напрямую соединенными узлами, обработку ошибок и регулирование потока данных. Канал передачи данных : определяет лучший путь для передачи данных от источника к месту назначения по сети. Сеть : обеспечивает сквозную связь, управление потоками данных и исправление ошибок. Транспорт : устанавливает, поддерживает и разрывает соединения приложения на обоих концах. Сеанс : преобразует данные между уровнями приложения и транспорта, обеспечивая читаемость данных. Презентация : напрямую взаимодействует с приложениями конечного пользователя, обеспечивая эффективную связь между программным обеспечением и нижними уровнями модели OSI. Приложение — это более краткая модель, используемая преимущественно в современном Интернете, которая упрощает уровни OSI до четырех категорий: TCP/IP : объединяет функции физического уровня и уровня канала передачи данных OSI, уделяя особое внимание тому, как данные отправляются/получаются в сетевой среде. Сетевой интерфейс : соответствует сетевому уровню в OSI, обрабатывая маршрутизацию данных, IP-адресацию и пересылку пакетов. Интернет : аналогично транспортному уровню OSI, гарантирует, что данные дойдут до нужного приложения и будут переданы надежно (TCP) или быстро (UDP). Транспорт : объединяет функции уровней сеанса, представления и приложения OSI, занимаясь процессами приложений конечного пользователя. Приложение Безопасность При проектировании системы обеспечение надежной сетевой безопасности имеет первостепенное значение для защиты конфиденциальных данных и поддержания доверия пользователей и заинтересованных сторон, обеспечения непрерывности бизнеса и соответствия нормативным требованиям. Распространенные угрозы и уязвимости : злонамеренные попытки нарушить нормальный трафик целевого сервера, службы или сети, захлестнув его потоком интернет-трафика. DDoS-атаки : Программное обеспечение, предназначенное для нарушения работы, повреждения компьютерной системы или получения несанкционированного доступа к ней. Сюда входят вирусы, черви, шпионское ПО и программы-вымогатели. Вредоносное ПО : злоумышленники тайно перехватывают и передают связь между двумя сторонами. Они могут подслушивать или выдавать себя за одну из сторон, обманывая другую. Атаки «человек посередине» : угрозы, исходящие изнутри организации, например, от сотрудников, бывших сотрудников или партнеров, владеющих внутренней информацией, касающейся методов обеспечения безопасности. Инсайдерские угрозы . Ошибки или недостатки программного обеспечения могут быть использованы для получения несанкционированного доступа или нарушения работы служб. Примеры включают переполнение буфера и необработанные исключения. Недостатки программного обеспечения . Физические компоненты могут иметь уязвимости, например встроенное ПО, которое можно подделать, или бэкдоры, установленные производителями. Слабые стороны оборудования . Неправильно настроенные устройства, такие как маршрутизаторы, коммутаторы или брандмауэры, могут подвергать сеть различным угрозам. Неправильно настроенные сетевые устройства . Недостаточная политика паролей, отсутствие многофакторной аутентификации или слабый контроль доступа могут привести к несанкционированному доступу. Слабая аутентификация и авторизация . Незашифрованные данные можно легко перехватить и прочитать при их передаче по сети. Незашифрованные данные . Системы, которые больше не поддерживаются или не обновлялись, могут иметь известные уязвимости, которыми легко воспользоваться. Устаревшие системы : это относится к физическим точкам доступа, где злоумышленник может подключиться к сети или напрямую получить доступ к серверам. Физические уязвимости Лучшие практики по обеспечению сетевой безопасности . Разверните аппаратные и программные брандмауэры для мониторинга и контроля входящего и исходящего сетевого трафика на основе политик безопасности. Брандмауэры . Используйте протоколы шифрования, особенно для конфиденциальных данных, как при передаче (например, SSL/TLS для веб-трафика), так и при хранении (например, шифрование базы данных). Шифрование : обновляйте все системы, программное обеспечение и приложения для устранения уязвимостей. Регулярные обновления . Внедрите MFA, чтобы добавить уровень безопасности, гарантируя, что пользователи предоставят два или более фактора проверки для получения доступа. Многофакторная аутентификация (MFA) : используйте инструменты мониторинга сети для постоянного мониторинга сети на предмет необычных действий или несанкционированного доступа. Мониторинг сети : информируйте сотрудников и пользователей о важности безопасности и о том, как распознавать потенциальные угрозы. Обучение по вопросам безопасности : ограничивает распространение угроз внутри сети и обеспечивает лучший контроль над доступом к данным. Сегментация сети : обеспечивает доступность данных и непрерывность бизнеса в случае нарушений или сбоев. Резервное копирование и аварийное восстановление . Физический доступ к сетевым устройствам может привести к взлому. Физическая безопасность Заключение Понимание основ сетевых технологий, от тонкостей топологии до нюансов базовых протоколов, — это не просто академическое упражнение — оно имеет решающее значение для создания надежных и эффективных систем. Прочное знание сетевых принципов обеспечивает беспрепятственное взаимодействие систем, отказоустойчивость и эффективное масштабирование.