Network Topologies

Network Topologies preview image

1 collaborator

Default-person Gagana B (Author)

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by the author
Model was written in NetLogo 5.1.0 • Viewed 663 times • Downloaded 36 times • Run 0 times
Download the 'Network Topologies' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

Network is an ordered interconnection of autonomous computers that allows the computers to exchange data. Topology of the network or Network topology is the arrangement of links, nodes and other components of a network that may be depicted physically or logically. This model attempts to model network topologies like star, bus, tree, mesh and ring.

HOW IT WORKS

Star configuration: The turtles move forward at an angle of 45 degrees to each other, and leave a trail as they do so. A star network consists of one central switch, hub or computer, which act as a conduit to transmit messages. This consists of a central node, to which all other nodes are connected; this central node provides a common connection point for all nodes through a hub. Advantages of this network include - better performance, easy detection of faults, and no distruptions while connecting or removing devices. Disadvantages of the configuration includes - limited capacity of nodes, expenses.

Ring configuration: With n turtles which move 72 degrees with respect to each other, only n-1 turtles move to the each time to represent the next node. A ring network is a network topology in which each node connects to exactly two other nodes, forming a single continuous pathway for signals through each node - a ring. Data travel from node to node, with each node along the way handling every packet. Advantages of the network include ease of isolation of faults and ease of adding and removing devices due to point line configuration. The disadvantages are - communication delay since bandwidth is shared among all links and difficulty in configuration.

Bus configuration: All turtles are assembled on to a straight line and alternatively made to move upwards and downwards to represent a linear sequence of buses. The bus is the data link in a bus network. The bus can only transmit data in one direction, and if any network segment is severed, all network transmission ceases.The advantages of this type of network includes - ease of connection, lesser length of cable required and the disadvantages include - requirement of terminators on both ends, difficulty in debugging, and makes the configuration slow.

Tree configration: The turtles split up into 3 parts and split up again into a pattern to represent the tree topology.Tree Topology integrates the characteristics of Star and Bus Topology. In Tree Topology, the number of Star networks are connected using Bus. This main cable seems like a main stem of a tree, and other star networks as the branches. It is also called Expanded Star Topology. The advantages are - ease in error detection, easy expansion and disadvantages are - maintainance and scalability.

Mesh configuration: The turtles are assembled onto a grid or matrix format where each node is connected to adjacent nodes. A mesh network is a network topology in which each node (called a mesh node) relays data for the network. All nodes cooperate in the distribution of data in the network. The advatages include - ability to withstand high traffic, ability to expand and modify without disrupting other nodes. The disadvantages of the topology are - difficulty in maintainance and reducdancy issues.

THINGS TO NOTICE

When the star topology button is clicked, the setup procedures run creating 9 turtles arranging themselves to form a star network after setting their headings and moving accordingly.

When the ring topology button is clicked, the go procedures execute creating 5 turtles arranging themselves in form of a ring network after setting their headings and moving accordingly.

When the bus topology button is clicked, the bus procedures execute creating 9 turtles arranging themselves in form of a straight line where the turtles are made to move upwards and downwards to simulate the configuration.

When the tree topology button is clicked, the tree procedures execute creating 11 turtles arranging themselves to split up in to 3 branches in the first step and unevenly thereon in order to simulate the configuration.

When the mesh topology button is clicked, the mesh procedures are executed, creating 9 turtles arranging themselves in form of a grid or a 3X3 matrix to simulate the configuration.

THINGS TO TRY

I suggest users and netlogo enthusiasts to try out other network topologies if any, and try the same above topologies to represent the same in different ways and orientations.

NETLOGO FEATURES

Simple concepts of netlogo like creating turtles, changing shapes and colours and leaving a trail etc. are extensively used.

RELATED MODELS

See other model in the sample tab under Networks category.

CREDITS AND REFERENCES

The model itself and for the NetLogo software: Wilensky, U. (2005). NetLogo Small Worlds model. http://ccl.northwestern.edu/netlogo/models/SmallWorlds. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL. Wilensky, U. (1999). NetLogo. http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

;Project by Gagana B

to setup
   clear-all
   ;;;;;;;;;;;;;;;;;;;;;;;;
   ;; Star Configuration ;;
   ;;;;;;;;;;;;;;;;;;;;;;;;
   set-default-shape turtles "circle" ;Setting default shape of turtle to circle
   create-turtles 9                   ;Creating 9 turtles
   ask turtles[set color red]         ;Setting the color of all turtles to red
   ;;
   ;;setting the heading of turtles as per appearance in star topology
   ;;
   ask turtle 0[set heading 0] 
   ask turtle 1[set heading 45]
   ask turtle 2[set heading 90]
   ask turtle 3[set heading 135]
   ask turtle 4[set heading 180]
   ask turtle 5[set heading 225]
   ask turtle 6[set heading 270]
   ask turtle 7[set heading 315]
   ask turtle 8[set heading 0]
   ask turtles[set pen-mode "down"]  ;Setting pen mode to down so that turtles leave a trail as they move
   ;;
   ;;defining movement of turtles
   ;; 
   ask turtle 1[forward 10]
   ask turtle 2[forward 10]
   ask turtle 3[forward 10]
   ask turtle 4[forward 10]
   ask turtle 5[forward 10]
   ask turtle 6[forward 10]
   ask turtle 7[forward 10]
   ask turtle 8[forward 10]
end 

to go
  clear-all
  ;;;;;;;;;;;;;;;;;;;;;;;;
  ;; Ring Configuration ;;
  ;;;;;;;;;;;;;;;;;;;;;;;;
  set-default-shape turtles "circle" ;Setting default shape of turtle to circle
  create-turtles 6                   ;Creating 6 turtles
  ask turtles[set color yellow]      ;Set color to yellow
  ;;
  ;;Defining headings of different turtles
  ;;
  ask turtles[set heading 0]
  ask turtles [forward 10]
  ask turtles [set pen-mode "down"] ;Setting pen mode to down so that turtles leave a trail as they move
  ;;
  ;;making all turtles move to 72 degrees
  ;;
  ask turtle 1[set heading 72]
  ask turtle 2[set heading 72]
  ask turtle 3[set heading 72]
  ask turtle 4[set heading 72]
  ask turtle 5[set heading 72]
  ;;
  ;;Defining movement of turtles
  ;;
  ask turtle 1[forward 10]
  ask turtle 2[forward 10]
  ask turtle 3[forward 10]
  ask turtle 4[forward 10]
  ask turtle 5[forward 10]
  ;;
  ;;making remaining turtles move by 144 degrees
  ;;
  ask turtle 2[set heading 144]
  ask turtle 3[set heading 144]  
  ask turtle 4[set heading 144]
  ask turtle 5[set heading 144]
  ;;
  ;;Defining movement of turtles
  ;;   
  ask turtle 2[forward 10]
  ask turtle 3[forward 10]
  ask turtle 4[forward 10]
  ask turtle 5[forward 10]
  ;;
  ;;make remaining turtles move by 216 degrees
  ;;
  ask turtle 3[set heading 216]
  ask turtle 4[set heading 216]
  ask turtle 5[set heading 216]
  ;;
  ;;Defining movement of turtles
  ;;
  ask turtle 3[forward 10]
  ask turtle 4[forward 10]
  ask turtle 5[forward 10]
  ;;
  ;;move remaining turtles move by 288 degrees
  ;;
  ask turtle 4[set heading 288]
  ask turtle 5[set heading 288]
  ;;
  ;;Defining movement of turtles
  ;;
  ask turtle 4[forward 10]
  ask turtle 5[forward 10]
  ;;
  ;;moving the last turtles back to 0 degrees
  ;;
  ask turtle 5[set heading 360]
  ;;
  ;;defining movement of turtle
  ;;
  ask turtle 5[forward 10]
end 

to bus
  clear-all
  ;;;;;;;;;;;;;;;;;;;;;;;
  ;; Bus Configuration ;;
  ;;;;;;;;;;;;;;;;;;;;;;;
  create-turtles 9                   ;Creating 9 turtles
  ;set-default-shape turtles "square" to represent nodes               
  ask turtle 1[set shape "square"]
  ask turtle 2[set shape "square"]
  ask turtle 3[set shape "square"]
  ask turtle 5[set shape "square"]
  ask turtle 6[set shape "square"]
  ask turtle 7[set shape "square"]
  ask turtle 0[set shape "square"]
  ;set-default-shape turtles "circle" for representing terminators of the bus topology   
  ask turtle 4[set shape "circle"]
  ask turtle 8[set shape "circle"]
  ask turtles[set color blue]        ;Setting color of turtles to blue
  ;;
  ;;Defining headings of turtles
  ;;
  ask turtle 0[set heading 90]
  ask turtle 1[set heading 90]
  ask turtle 2[set heading 90]
  ask turtle 3[set heading 90]
  ask turtle 4[set heading 90]
  ask turtle 5[set heading 270]
  ask turtle 6[set heading 270]  
  ask turtle 7[set heading 270]
  ask turtle 8[set heading 270]
  ;making the turtles leave a trail
  ask turtles [set pen-mode "down"]
  ;defining the movement of turtles
  ask turtle 1[forward 2]
  ask turtle 2[forward 4]
  ask turtle 3[forward 6]
  ask turtle 4[forward 8]
  ask turtle 5[forward 2]
  ask turtle 6[forward 4]
  ask turtle 7[forward 6]
  ask turtle 8[forward 8]
  ;movement of turtle 1 upwards
  ask turtle 1[set heading 0]
  ask turtle 1[forward 5]
  ;movement of turtle 2 downwards
  ask turtle 2[set heading 180]
  ask turtle 2[forward 5]
  ;movement of turtle 3 upwards
  ask turtle 3[set heading 0]
  ask turtle 3[forward 5]
  ;movement of turtle 6 downwards
  ask turtle 6[set heading 180]
  ask turtle 6[forward 5]
  ;movement of turtle 5 upwards
  ask turtle 5[set heading 0]
  ask turtle 5[forward 5]
  ;movement of turtle 7 upwards
  ask turtle 7[set heading 0]
  ask turtle 7[forward 5]
  ;movement of turtle 0 downwards
  ask turtle 0[set heading 180]
  ask turtle 0[forward 5]
  ;no movement defined for turtle 4 and 8 since they act as terminators or imply that the pattern continues
end 

to tree
    clear-all
    ;;;;;;;;;;;;;;;;;;;;;;;;
    ;; Tree configuration ;;
    ;;;;;;;;;;;;;;;;;;;;;;;;  
    create-turtles 11                 ;Creating 11 turtles
    ask turtles[set color white]      ;Defining colour of turtles as white to maintain uniformity
    ask turtles[set shape "square"]
    ask turtles [set pen-mode "down"] ;Setting pen mode so that turtles leave a trail
    ;defining turtle heading and movement
    ask turtle 1[set heading 120]     
    ask turtle 1[forward 12]
    ask turtle 2[set heading 180]
    ask turtle 2[forward 7]
    ask turtle 3[set heading 240]
    ask turtle 3[forward 12]
    ask turtle 4[set heading 240]
    ask turtle 4[forward 12]
    ask turtle 5[set heading 240]
    ask turtle 5[forward 12]
    ask turtle 4[set heading 135]
    ask turtle 4[forward 5]
    ask turtle 5[set heading 225]
    ask turtle 5[forward 5]
    ask turtle 6[set heading 180]
    ask turtle 6[forward 7]
    ask turtle 7[set heading 180]
    ask turtle 7[forward 7]
    ask turtle 8[set heading 180]
    ask turtle 8[forward 7]
    ask turtle 6[set heading  180]
    ask turtle 6[forward 5]
    ask turtle 7[set heading 135]
    ask turtle 7[forward 5]
    ask turtle 8[set heading 225]
    ask turtle 8[forward 5]
    ask turtle 9[set heading 120]
    ask turtle 9[forward 12]
    ask turtle 10[set heading 120]
    ask turtle 10[forward 12]
    ask turtle 9[set heading 135]
    ask turtle 9[forward 5]
    ask turtle 10[set heading 225]
    ask turtle 10[forward 5]    
end 

to mesh
  clear-all
  ;;;;;;;;;;;;;;;;;;;;;;;;
  ;; Mesh Configuration ;;
  ;;;;;;;;;;;;;;;;;;;;;;;;
  create-turtles 9 ;Creating 9 turtles
  ask turtles[set color green] ;setting color as green to maintain uniformity in colour
  ask turtles[set pen-mode "down"] ;making the turtles leave a trail
  ;;
  ;;defining heading and movement for turtles
  ;;
  ask turtle 1[set heading 0]
  ask turtle 1[forward 8]
  ask turtle 2[set heading 90]
  ask turtle 2[forward 8]
  ask turtle 3[set heading 180]
  ask turtle 3[forward 8]
  ask turtle 4[set heading 270]
  ask turtle 4[forward 8]
  ask turtle 5[set heading 0]
  ask turtle 5[forward 8]
  ask turtle 6[set heading 90]
  ask turtle 6[forward 8]
  ask turtle 7[set heading 180]
  ask turtle 7[forward 8]
  ask turtle 8[set heading 270]
  ask turtle 8[forward 8]
  ask turtle 5[set heading 270]
  ask turtle 5[forward 8]
  ask turtle 6[set heading 0]
  ask turtle 6[forward 8]
  ask turtle 7[set heading 90]
  ask turtle 7[forward 8]
  ask turtle 8[set heading 180]
  ask turtle 8[forward 8]
  ask turtle 1[set heading 90]
  ask turtle 1[forward 8]
  ask turtle 1[set heading 270]
  ask turtle 1[forward 8]
  ask turtle 5[set heading 180]
  ask turtle 5[forward 8]
  ask turtle 5[set heading 360]
  ask turtle 5[forward 8]
  ask turtle 8[set heading 90]
  ask turtle 8[forward 8]
  ask turtle 8[set heading 270]
  ask turtle 8[forward 8]
  ask turtle 7[set heading 0]
  ask turtle 7[forward 8]
  ask turtle 7[set heading 180]
  ask turtle 7[forward 8]
end 

There is only one version of this model, created over 9 years ago by Gagana B.

Attached files

File Type Description Last updated
Network Topologies.png preview Preview for 'Network Topologies' over 9 years ago, by Gagana B Download

This model does not have any ancestors.

This model does not have any descendants.