You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This folder is the source code for the Switcher and Routers.
2
+
This folder is the source code for the Switcher and Routers on the OpenFlow Protocol Network.
3
3
4
4
## Installation
5
5
```
@@ -11,6 +11,33 @@ npm run switcher
11
11
# Start a Router (can start as many as you want)
12
12
npm run router
13
13
```
14
+
15
+
## Switcher
16
+
`Switcher.ts`
17
+
18
+
The Switcher is a NodeJS application that listens on port 51510 for OpenFlow messages. The Switcher is responsible for managing the Routers and Clients.
19
+
20
+
The Switcher contains a FlowTable that is used to control the flow of traffic between Clients and Routers.
21
+
| Router | In | Out |
22
+
|--------|----|-----|
23
+
| R1 | E1 | R2 |
24
+
| R2 | R1 | R2 |
25
+
| R3 | R2 | E2 |
26
+
27
+
28
+
## Router
29
+
`Router.ts`
30
+
31
+
The Router is a NodeJS application that can be started as many different processes to create multiple OpenFlow layers that connect together.
32
+
33
+
When a new Router process is created, it will send a message to the Switcher to connect and if successful, it will be added to the FlowTable.
34
+
35
+
If the Router is #1 on the network, its details will be stored and forwarded to the Client once they join the network.
36
+
37
+
When the network is filled out with 2 other Routers and a receiving Client, the initial Client can send a message to the receiving Client and the message will be forwarded the #1 Router.
38
+
39
+
Router #1 will then forward the message to Router #2 and Router #2 will forward the message to Router #3 and Router #3 will forward the message to the receiving Client.
0 commit comments