This commit is contained in:
2026-05-25 02:16:22 +03:00
parent 2661ef1437
commit 3974a44fb2
2 changed files with 50 additions and 63 deletions
+49 -61
View File
@@ -4,7 +4,7 @@
Исходя из результатов обзора, в качестве пользовательской формы задания конфигурации выбрано табличное представление. Такая форма представления удобна тем, что позволяет явно фиксировать элементы сети и их атрибуты, редактировать отдельные значения и проверять заполненность полей. При этом она допускает частично заданные конфигурации: часть параметров может быть указана сразу, а часть оставлена пустой для последующего уточнения.
При разработке табличного представления конфигурации сети виртуальных машин рассматривались два варианта организации данных: представление в первой нормальной форме (далее~-- 1НФ) и представление в третьей нормальной форме (далее~-- 3НФ). Оба варианта позволяют структурированно описать сеть, однако различаются сложностью редактирования данных в случае непосредственной работы с таблицами.
При разработке табличного представления конфигурации сети виртуальных машин рассматривались два варианта организации данных: единая таблица (представление аналогично первой нормальной форме в контексте СУБД \cite{DB} ) и раздельные таблицы (аналогично третьей нормальной форме в контексте СУБД). Оба варианта позволяют структурированно описать сеть, однако различаются сложностью редактирования данных в случае непосредственной работы с таблицами.
Разберём оба представления на примере топологии, изображённой на рисунке~\ref{fig:exmpl1}
@@ -16,13 +16,9 @@
\label{fig:exmpl1}
\end{figure}
\subsubsection*{Первая нормальная форма}
\subsubsection*{Представление в единой таблице}
Первая нормальная форма \cite{DB}:
Переменная отношения находится в \textbf{1НФ} тогда и только тогда, когда в любом допустимом значении этой переменной отношения каждый её кортеж содержит только одно значение для каждого из атрибутов.
В первой нормальной форме данные представляются в виде одной таблицы, где каждая строка содержит атомарные значения: имя узла, интерфейс, адреса, принадлежность сети и т.д. Такое представление остаётся достаточно простым для ручного заполнения и позволяет сразу видеть основную структуру конфигурации.
При представлении данных в виде одной таблицы каждая строка содержит сведения об отдельном элементе или связи конфигурации: имя узла, интерфейс, адреса, принадлежность сети и т.д. Такое представление остаётся достаточно простым для ручного заполнения и позволяет сразу видеть основную структуру конфигурации.
Пример представления конфигурации сети в 1НФ приведен в таблице \ref{tab:1nf}.
@@ -45,32 +41,20 @@ com\_right & Switch & eth2 & D & \\
com\_right & Switch & eth3 & C & \\
\hline
\end{tabular}
\caption{Конфигурация сетевых устройств}
\caption{Единая таблица конфигурации сетевых устройств}
\label{tab:1nf}
\end{table}
\subsubsection*{Третья нормальная форма}
\subsubsection*{Представление в раздельных таблицах}
Третья нормальная форма \cite{DB}:
Переменная отношения находится в \textbf{3НФ} тогда и только тогда, когда её неключевые атрибуты, если они существуют, являются одновременно:
\begin{enumerate}
\item взаимно независимыми;
\item неприводимо зависимыми от первичного ключа.
\end{enumerate}
\begin{itemize}
\item \textbf{Неключевой атрибут} --- это атрибут, который не входит в состав первичного ключа рассматриваемой переменной отношения.
\item \textbf{Взаимно независимые атрибуты} --- это два или больше атрибутов, таких что ни один из них функционально не зависит от какой-либо комбинации остальных атрибутов. Подобная независимость подразумевает, что каждый такой атрибут может обновляться независимо от остальных атрибутов.
\end{itemize}
В третьей нормальной форме данные разделяются на отдельные сущности: узлы (устройства), интерфейсы, сетевые сегменты и связи. Каждой из этих сущностей сопоставляется отдельная таблица. Такой подход уменьшает дублирование данных по сравнению с 1НФ, однако делает представление более громоздким. Для понимания одной связи приходится обращаться сразу к нескольким таблицам.
При представлении данных в виде раздельных таблиц сведения о конфигурации распределяются по основным видам сущностей: узлы (устройства), интерфейсы, сетевые сегменты и связи. Каждой из этих сущностей сопоставляется отдельная таблица. Такой подход уменьшает дублирование данных по сравнению с единой таблицей, однако делает представление более громоздким. Для понимания одной связи приходится обращаться сразу к нескольким таблицам.
Пример представления конфигурации сети в 3НФ приведен в таблицах \ref{tab:3nf1} - \ref{tab:3nf3}.
\begin{table}[htbp]
\centering
\small
\begin{table}[h]
\begin{minipage}[t]{0.3\textwidth}
\centering
\begin{tabular}{|l|l|}
\hline
@@ -84,50 +68,54 @@ com\_right & Switch & eth3 & C & \\
com\_right & Switch \\
\hline
\end{tabular}
\caption{Сетевые устройства}
\captionof{table}{Сетевые устройства}
\label{tab:3nf1}
\end{table}
\begin{table}[h]
\end{minipage}
\hfill
\begin{minipage}[t]{0.38\textwidth}
\centering
\begin{tabular}{|l|l|l|}
\hline
Host Name & Interface & Network \\
\hline
PC1 & eth1 & A \\
PC2 & eth1 & B \\
PC3 & eth1 & C \\
PC4 & eth1 & D \\
com\_left & eth1 & tr \\
com\_left & eth2 & A \\
com\_left & eth3 & B \\
com\_right & eth1 & tr \\
com\_right & eth2 & D \\
com\_right & eth3 & C \\
\hline
Host Name & Interface & Network \\
\hline
PC1 & eth1 & A \\
PC2 & eth1 & B \\
PC3 & eth1 & C \\
PC4 & eth1 & D \\
com\_left & eth1 & tr \\
com\_left & eth2 & A \\
com\_left & eth3 & B \\
com\_right & eth1 & tr \\
com\_right & eth2 & D \\
com\_right & eth3 & C \\
\hline
\end{tabular}
\caption{Интерфейсы}
\captionof{table}{Интерфейсы}
\label{tab:3nf2}
\end{minipage}
% \hfill
% \begin{minipage}[t]{0.28\textwidth}
% \centering
% \begin{tabular}{|l|l|}
% \hline
% Interface & IP \\
% \hline
% PC1.eth1 & 10.0.0.1/24 \\
% PC2.eth1 & 10.0.0.2/24 \\
% PC3.eth1 & 10.0.0.3/24 \\
% PC4.eth1 & 10.0.0.4/24 \\
% \hline
% \end{tabular}
% \captionof{table}{IP-адреса интерфейсов}
% \label{tab:3nf3}
% \end{minipage}
\end{table}
\begin{table}[h]
\centering
\begin{tabular}{|l|l|}
\hline
Interface & IP \\
\hline
PC1.eth1 & 10.0.0.1/24 \\
PC2.eth1 & 10.0.0.2/24 \\
PC3.eth1 & 10.0.0.3/24 \\
PC4.eth1 & 10.0.0.4/24 \\
\hline
\end{tabular}
\caption{IP-адреса интерфейсов}
\label{tab:3nf3}
\end{table}
\begin{table}[h] \centering \begin{tabular}{|l|l|} \hline Interface & IP \\ \hline PC1.eth1 & 10.0.0.1/24 \\ PC2.eth1 & 10.0.0.2/24 \\ PC3.eth1 & 10.0.0.3/24 \\ PC4.eth1 & 10.0.0.4/24 \\ \hline \end{tabular} \caption{IP-адреса интерфейсов} \label{tab:3nf3} \end{table}
\subsubsection*{Выбор представления}
В качестве основного пользовательского представления была выбрана первая нормальная форма. Она удобнее в сравнении с 3НФ для ручного заполнения, проще воспринимается при описании лабораторных стендов и не требует постоянного перехода между большим количеством связанных таблиц.
В качестве основного пользовательского представления была выбрана единая таблица. Она удобнее для ручного заполнения, проще воспринимается при описании лТабличное представление в 1НФ используется как форма ввода,абораторных стендов и не требует постоянного перехода между несколькими связанными таблицами.
Табличное представление в 1НФ используется как форма ввода, а при дальнейшей обработке данные могут преобразовываться во внутреннюю модель, где отдельно выделяются узлы, интерфейсы и связи. Такой подход сохраняет простоту заполнения таблицы и одновременно позволяет использовать данные для экспорта во входные форматы средства развертывания сетевых конфигураций или средства построения диаграмм топологии.
Единая таблица используется как форма ввода, а при дальнейшей обработке данные могут преобразовываться во внутреннюю модель, где отдельно выделяются узлы, интерфейсы и связи. Такой подход сохраняет простоту заполнения таблицы и одновременно позволяет использовать данные для экспорта во входные форматы средства развертывания сетевых конфигураций или средства построения диаграмм топологии.