How to Simulate Hierarchical Star Topology Using MATLAB

To simulate a Hierarchical Star Topology in MATLAB has includes to generate a network in which the star topologies are arranged in multiple layers. In a hierarchical star topology, each and every cluster has a central hub, and these hubs are associated to a higher-level hub, that creates a hierarchy. This kind of topology is usual in large networks in which each cluster performs by way of a local network associated to a central core network.

Here is a brief approach to simulate this process:

Steps to Simulate a Hierarchical Star Topology

  1. Define the Multi-Layer Star Structure:
    • Generate multiple clusters; everyone is organized in a star topology with a central hub.
    • Associate the hubs of every cluster to a main hub that creates a higher-level star topology.
  2. Simulate Data Transmission:
    • Enable nodes within a cluster to interact via their local hub.
    • Execute routing via the main hub if interaction is essential among different clusters.
  3. Implement Transmission Delays and Routing:
    • Estimate transmission latency within clusters and among clusters according to distance.
    • Measure the routing path by way of data flows from an origin node to a destination node, travels via hubs as essential.
  4. Visualize Network Layout and Transmission Activity:
    • Measure the parameters like successful transmissions, delays, and routing paths.
    • Utilize MATLAB plots to envision the ordered star layout and data flow.

Example Code for Simulating a Hierarchical Star Topology

In this sample, we utilize three star clusters associated to a central hub.

% Parameters for Hierarchical Star Topology Simulation

numClusters = 3;               % Number of star clusters

nodesPerCluster = 4;           % Number of nodes per star cluster (including the local hub)

totalNodes = numClusters * (nodesPerCluster – 1) + 1; % Total nodes including main hub and local hubs

distanceWithinCluster = 50;    % Distance from nodes to local hub

distanceBetweenClusters = 150; % Distance from local hubs to main hub

propagationSpeed = 2e8;        % Propagation speed in meters per second

transmissionProbability = 0.3; % Probability of initiating a transmission at each node per time step

simulationTime = 20;           % Duration of the simulation in seconds

% Initialize Node Positions

mainHubPosition = [0, 0]; % Main hub at the center

nodePositions = mainHubPosition;

clusterHubs = [];

% Set up positions for clusters and nodes within clusters

for i = 1:numClusters

angle = (i – 1) * (2 * pi / numClusters);

clusterHubPosition = mainHubPosition + [cos(angle), sin(angle)] * distanceBetweenClusters;

clusterHubs = [clusterHubs; clusterHubPosition];

nodePositions = [nodePositions; clusterHubPosition]; % Add cluster hub position

for j = 2:nodesPerCluster

nodeAngle = 2 * pi * (j – 2) / (nodesPerCluster – 1);

nodePosition = clusterHubPosition + distanceWithinCluster * [cos(nodeAngle), sin(nodeAngle)];

nodePositions = [nodePositions; nodePosition];

end

end

% Define Connection Matrix

connectionMatrix = zeros(totalNodes);

mainHub = 1;

% Connect main hub to each cluster hub

for i = 1:numClusters

clusterHub = i * (nodesPerCluster – 1) + 1;

connectionMatrix(mainHub, clusterHub) = 1;

connectionMatrix(clusterHub, mainHub) = 1;

end

% Connect nodes within each cluster in a star pattern

for i = 1:numClusters

clusterHub = i * (nodesPerCluster – 1) + 1;

for j = 1:(nodesPerCluster – 1)

node = clusterHub + j;

connectionMatrix(clusterHub, node) = 1;

connectionMatrix(node, clusterHub) = 1;

end

end

% Calculate Transmission Delay for each Connection

delayMatrix = (connectionMatrix * distanceWithinCluster) / propagationSpeed;

% Initialize Transmission Log

transmissions = zeros(totalNodes, simulationTime);

% Routing Helper Function

function path = hierarchicalRouting(src, dst, connectionMatrix, mainHub)

% Check if source and destination are in the same cluster

if connectionMatrix(src, dst) == 1

path = [src, dst];

elseif connectionMatrix(src, mainHub) == 1 && connectionMatrix(dst, mainHub) == 1

% Route through main hub if they are in different clusters

path = [src, mainHub, dst];

else

path = [];

end

end

% Simulate Data Transmission in Hierarchical Star Topology

for t = 1:simulationTime

for node = 2:totalNodes

if rand() < transmissionProbability

% Randomly select a destination node

destNode = randi([2, totalNodes]);

if destNode ~= node

% Get the routing path using hierarchical routing

path = hierarchicalRouting(node, destNode, connectionMatrix, mainHub);

delay = (length(path) – 1) * distanceWithinCluster / propagationSpeed;

% Log transmissions along the path

for p = 1:length(path) – 1

transmissions(path(p), t + p – 1) = 1; % Transmission at each hop

end

disp([‘Time ‘ num2str(t) ‘s: Node ‘ num2str(node) ‘ sent data to Node ‘ num2str(destNode) …

‘ via path [‘ num2str(path) ‘] with delay ‘ num2str(delay) ‘ seconds’]);

end

end

end

end

% Visualize Hierarchical Star Topology Layout

figure;

gplot(connectionMatrix, nodePositions, ‘-o’);

hold on;

text(nodePositions(:, 1), nodePositions(:, 2), arrayfun(@num2str, 1:totalNodes, ‘UniformOutput’, false));

title(‘Hierarchical Star Topology Layout’);

xlabel(‘X Position’);

ylabel(‘Y Position’);

hold off;

% Visualize Transmission Activity Over Time

time = 1:simulationTime;

figure;

imagesc(transmissions);

colorbar;

title(‘Transmission Activity Over Time in Hierarchical Star Topology’);

xlabel(‘Time (s)’);

ylabel(‘Node ID’);

Explanation of the Code

  • Parameters:
    • numClusters and nodesPerCluster describe the amount of clusters and nodes per cluster that contain a local hub in each cluster.
    • distanceWithinCluster and distanceBetweenClusters set the distances among  nodes inside a cluster and among cluster hubs and the main hub.
  • Connection Matrix:
    • connectionMatrix is builds to denotes the hierarchical star topology, that includes:
      • Every cluster hub is associated to the main hub.
      • Nodes inside each cluster are associated to their particular cluster hubs in a star layout.
  • Data Transmission Simulation:
    • At every time step, all nodes have a gamble to begins a data transmission to a arbitrarily chosen destination node.
    • The hierarchicalRouting function validates if the origin and destination nodes are in the similar cluster. If they are not, documents are transmitted via the main hub.
  • Propagation Delay Calculation:
    • delayMatrix keeps the propagation latency for each link according to the distance among nodes and the transmission speed.
  • Visualization:
    • The initial plot illustrates the layout of the ordered star topology, with nodes, cluster hubs, and the main hub.
    • The second plot demonstrates routing activity over time, with every row illustrating a node and each column denotes a time step.

Analysis and Extension Ideas

  • Multi-Level Hierarchy: Expand the hierarchy by incorporating another layer of hubs that generates a three-tier network.
  • Variable Node Density: Enable every cluster to have a diverse amount of nodes, replicates uneven network clusters.
  • Congestion Analysis: Measure traffic at the main hub to evaluate the congestion and bottleneck concerns.
  • Fault Tolerance: Replicate node or link failures and learn the effects on transmission and data flow.
  • Traffic Prioritization: Execute traffic selection at the main hub to offer preference to particular kinds of data or nodes.

We thorough the entire Manual and analysed the simulation process on how the Hierarchical Star Topology projects will be simulated and executed using the tool of MATLAB framework over network. If you did like to know more details regarding this process we will offered it.

Upon your request we carry out your project performance, get good guidance from our team to get best solution on your interested areas. get novel services from our team, send us a message upon your needs our help team will give you quick solution.   To simulate a Hierarchical Star Topology Projects Using MATLAB all you need to do is send us a message we guide  scholars with  best research solution only at phdprime.com.

Opening Time

9:00am

Lunch Time

12:30pm

Break Time

4:00pm

Closing Time

6:30pm

  • award1
  • award2