SlideShare a Scribd company logo
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Switching and Routing
Professor Guido Maier
Academic Year 2013/2014
Project 1
Trie-based IP address lookup
Group 4
Luca Bianchi, Andrea Mola, Sebastian Troìa, Denny Tremolada e Ignacio Abadia
Tercedor
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Objective
The objective of this project is to create a network with multiple switches,
all controlled by an OpenFlow controller, and evaluate the behavior and the
performance of four lookup algorithm: binary trie lookup, path compressed
trie lookup, multibit trie lookup and level compressed trie lookup.
We will implement these algorithms by using an OpenFlow controller, and
we will see the lookup performance of each algorithm in a network of 30
hosts and 15 switches.
We will emulate network and hosts using mininet, and controller software is
implemented using NOX framework for OpenFlow.
In the end, we will see the performance of the algorithms in terms of Round
Trip Time (RTT), based on the lenght of the addresses, by using tools like
ping and we will compare the results with a network of 60 hosts and 30
switches.
Project 1 - Switching and Routing 1
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 2
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Network Diagram
Project 1 - Switching and Routing 3
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 4
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Network Configuration
Set Node IDs for hosts
Host1 = 1
Host2 = 2
...
Host29 = 29
Host30 = 30
Set Node IDs for switches
Switch1 = 101
...
Switch15 = 115
Add nodes
self.add_node( Switch1, Node( is_switch=True ) )
…
self.add_node( Switch15, Node( is_switch=True ) )
Project 1 - Switching and Routing 5
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Network Configuration
Add hosts
self.add_node( Host1, Node( is_switch=False ) )
self.add_node( Host2, Node( is_switch=False ) )
...
self.add_node( Host29, Node( is_switch=False ) )
self.add_node( Host30, Node( is_switch=False ) )
Add edges
self.add_edge( Host1, Switch1 )
self.add_edge( Host2, Switch1 )
...
self.add_edge( Host29, Switch15 )
self.add_edge( Host30, Switch15 )
Project 1 - Switching and Routing 6
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 7
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Network Setup
Start terminal 1 and enter in vm by ssh:
group4@group4:~$ ssh -X openflow@192.168.56.101
Project 1 - Switching and Routing 8
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Network Setup
Start mininet in the terminal 1:
sudo mn --custom /home/openflow/mininet/custom/mynet.py --topo mytopo --mac --controller
remote --pre /home/openflow/mininet/custom/myscript
Project 1 - Switching and Routing 9
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Network Setup
Project 1 - Switching and Routing 10
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Network Setup
Project 1 - Switching and Routing 11
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 12
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Test Connectivity
Now, we have to start a nox controller on vm:
openflow@openflowtutorial:~/nox/build/src$ ./nox_core -v -i ptcp: pytutorial
and in the terminal 1 we use pingall command to test connectivity between all hosts:
Project 1 - Switching and Routing 13
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 14
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Binary trie
Project 1 - Switching and Routing 15
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Binary trie
Project 1 - Switching and Routing 16
Example:
mininet> h1 ping -c100 h30
h30: 10.0.226.0/23
00001010.00000000.1110001|
RTT:
min value: 3,262 ms
med value: 13,208 ms
max value: 26,846 ms
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 17
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Path compressed trie
Project 1 - Switching and Routing 18
Skip:15
Segment:000101000000000
Skip:3
Segment:111
Skip:2
Segment:01
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Path compressed trie
Project 1 - Switching and Routing 19Project 1 - Switching and Routing
Skip:15
Segment:000101000000000
Skip:3
Segment:111
Skip:2
Segment:01
Example:
mininet> h1 ping -c100 h30
h30: 10.0.226.0/23
00001010.00000000.1110001|
RTT:
min value: 6,358 ms
med value: 11,953 ms
max value: 19,429 ms
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 20
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Multibit trie
Project 1 - Switching and Routing 21
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Multibit trie
Project 1 - Switching and Routing 22
Example:
mininet> h1 ping -c100 h30
h30: 10.0.226.0/23
00001010.00000000.1110001|
RTT:
min value: 3,303 ms
med value: 7,535 ms
max value: 18,471 ms
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 23
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Level compressed trie
Project 1 - Switching and Routing 24
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Level compressed trie
Project 1 - Switching and Routing 25
Example:
mininet> h1 ping -c100 h30
h30: 10.0.226.0/23
00001010.00000000.1110001|
RTT:
min value: 2.401 ms
med value: 4.418 ms
max value: 16.765 ms
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 26
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Results
Project 1 - Switching and Routing 27
AVERAGE VALUE Minimum Average Maximum
Binary 3.8292 ms 12.2415 ms 25.9098 ms
Path compression 4.9713 ms 11.09 ms 18.9039 ms
Multibit 3.7024 ms 7.6987 ms 15.9317 ms
Level compression 2.3220 ms 3.7068 ms 13.5765 msWINNER!!!
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Index
• Network Diagram
• Network Configuration
• Network Setup
• Test Connectivity
• Binary trie
• Path compressed trie
• Multibit trie
• Level compressed trie
• Results
• Comparison
Project 1 - Switching and Routing 28
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Comparison
Project 1 - Switching and Routing 29
minimum average maximum
19 20 21 22 23
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Comparison
Project 1 - Switching and Routing 30
minimum average maximum
19 20 21 22 23
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Comparison
Project 1 - Switching and Routing 31
minimum average maximum
19 20 21 22 23
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Comparison
Project 1 - Switching and Routing 32
minimum average maximum
19 20 21 22 23
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Comparison
Project 1 - Switching and Routing 33
In a network of 60 hosts and 30 switches the delays of each algorithm are similar to the network
with 15 switches and 30 hosts.*
AVERAGE VALUE Minimum Average Maximum
Binary 3.8292 ms 3.45 ms 12.2415 ms 12.108 ms 25.9098 ms 30.5478 ms
Path compression 4.9713 ms 4.236 ms 11.09 ms 10.837 ms 18.9039 ms 20.5478 ms
Multibit 3.7024 ms 3.857 ms 7.6987 ms 7.3025 ms 15.9317 ms 16.9087 ms
Level compression 2.3220 ms 2.4598 ms 3.7068 ms 3.2068 ms 13.5765 ms 14.7489 ms
15 switches 30 switches
* Note that measurements are made by a MacBook Air 1.3GHz dual-core Intel Core i5 processor,Turbo Boost up
to 2.6GHz,Intel HD Graphics 5000,8GB memory.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
END
Project 1 - Switching and Routing 34
THANK YOU
Luca Bianchi, Andrea Mola, Sebastian Troìa, Denny Tremolada e Ignacio Abadia
Tercedor

More Related Content

Similar to Trie-based IP address lookup

B21DA0201_04.ppt
B21DA0201_04.pptB21DA0201_04.ppt
B21DA0201_04.ppt
DrPreethiD1
 
B21DA0201_03.ppt
B21DA0201_03.pptB21DA0201_03.ppt
B21DA0201_03.ppt
DrPreethiD1
 
Design and experimental validation of a new bandwidth sharing scheme based on...
Design and experimental validation of a new bandwidth sharing scheme based on...Design and experimental validation of a new bandwidth sharing scheme based on...
Design and experimental validation of a new bandwidth sharing scheme based on...
Luca Bianchi
 
Review of Network switches and Routers- 2021.pptx
Review of Network switches and Routers-  2021.pptxReview of Network switches and Routers-  2021.pptx
Review of Network switches and Routers- 2021.pptx
ShawW2
 
User Datagram Protocol
User Datagram ProtocolUser Datagram Protocol
User Datagram Protocol
Purushottam Kamble
 
packet traveling (pre cloud)
packet traveling (pre cloud)packet traveling (pre cloud)
packet traveling (pre cloud)
iman darabi
 
Transition from PROFIBUS to PROFINET Network | Webinar
Transition from PROFIBUS to PROFINET Network | WebinarTransition from PROFIBUS to PROFINET Network | Webinar
Transition from PROFIBUS to PROFINET Network | Webinar
Sadatulla Zishan
 
MininetasSDNPlatform.pdf
MininetasSDNPlatform.pdfMininetasSDNPlatform.pdf
MininetasSDNPlatform.pdf
Fernando Velez Varela
 
Activy tecnologi and instructions
Activy tecnologi and instructionsActivy tecnologi and instructions
Ruengsakulrach_ECTI2015
Ruengsakulrach_ECTI2015Ruengsakulrach_ECTI2015
Ruengsakulrach_ECTI2015
Natchaphon Ruengsakulrach
 
BATCH 13-VLSI-final.pptx
BATCH 13-VLSI-final.pptxBATCH 13-VLSI-final.pptx
BATCH 13-VLSI-final.pptx
ssuser47c279
 
destination. The network layer must know the topology of the subnet and choos...
destination. The network layer must know the topology of the subnet and choos...destination. The network layer must know the topology of the subnet and choos...
destination. The network layer must know the topology of the subnet and choos...
Ashish Gupta
 
Network_Layer.ppt
Network_Layer.pptNetwork_Layer.ppt
Network_Layer.ppt
RajSingh52036
 
Optical Switching in the Datacenter
Optical Switching in the DatacenterOptical Switching in the Datacenter
Optical Switching in the Datacenter
Kostas Katrinis
 
Software defined network
Software defined networkSoftware defined network
Software defined network
Bogamoga1
 
Using Mikrotik Switch Features to Improve Your Network
Using Mikrotik Switch Features to Improve Your Network Using Mikrotik Switch Features to Improve Your Network
Using Mikrotik Switch Features to Improve Your Network
GLC Networks
 
Chapter 3 - Transport Layer for VN Students
Chapter 3 - Transport Layer for VN StudentsChapter 3 - Transport Layer for VN Students
Chapter 3 - Transport Layer for VN Students
alberttochiro
 
Peek Traffic Controller PTC 1
Peek Traffic Controller PTC 1Peek Traffic Controller PTC 1
Peek Traffic Controller PTC 1
Peter Ashley
 
Cisco Networking (Routing and Switching)
Cisco Networking (Routing and Switching)Cisco Networking (Routing and Switching)
Cisco Networking (Routing and Switching)
Alan Mark
 
final14-4
final14-4final14-4

Similar to Trie-based IP address lookup (20)

B21DA0201_04.ppt
B21DA0201_04.pptB21DA0201_04.ppt
B21DA0201_04.ppt
 
B21DA0201_03.ppt
B21DA0201_03.pptB21DA0201_03.ppt
B21DA0201_03.ppt
 
Design and experimental validation of a new bandwidth sharing scheme based on...
Design and experimental validation of a new bandwidth sharing scheme based on...Design and experimental validation of a new bandwidth sharing scheme based on...
Design and experimental validation of a new bandwidth sharing scheme based on...
 
Review of Network switches and Routers- 2021.pptx
Review of Network switches and Routers-  2021.pptxReview of Network switches and Routers-  2021.pptx
Review of Network switches and Routers- 2021.pptx
 
User Datagram Protocol
User Datagram ProtocolUser Datagram Protocol
User Datagram Protocol
 
packet traveling (pre cloud)
packet traveling (pre cloud)packet traveling (pre cloud)
packet traveling (pre cloud)
 
Transition from PROFIBUS to PROFINET Network | Webinar
Transition from PROFIBUS to PROFINET Network | WebinarTransition from PROFIBUS to PROFINET Network | Webinar
Transition from PROFIBUS to PROFINET Network | Webinar
 
MininetasSDNPlatform.pdf
MininetasSDNPlatform.pdfMininetasSDNPlatform.pdf
MininetasSDNPlatform.pdf
 
Activy tecnologi and instructions
Activy tecnologi and instructionsActivy tecnologi and instructions
Activy tecnologi and instructions
 
Ruengsakulrach_ECTI2015
Ruengsakulrach_ECTI2015Ruengsakulrach_ECTI2015
Ruengsakulrach_ECTI2015
 
BATCH 13-VLSI-final.pptx
BATCH 13-VLSI-final.pptxBATCH 13-VLSI-final.pptx
BATCH 13-VLSI-final.pptx
 
destination. The network layer must know the topology of the subnet and choos...
destination. The network layer must know the topology of the subnet and choos...destination. The network layer must know the topology of the subnet and choos...
destination. The network layer must know the topology of the subnet and choos...
 
Network_Layer.ppt
Network_Layer.pptNetwork_Layer.ppt
Network_Layer.ppt
 
Optical Switching in the Datacenter
Optical Switching in the DatacenterOptical Switching in the Datacenter
Optical Switching in the Datacenter
 
Software defined network
Software defined networkSoftware defined network
Software defined network
 
Using Mikrotik Switch Features to Improve Your Network
Using Mikrotik Switch Features to Improve Your Network Using Mikrotik Switch Features to Improve Your Network
Using Mikrotik Switch Features to Improve Your Network
 
Chapter 3 - Transport Layer for VN Students
Chapter 3 - Transport Layer for VN StudentsChapter 3 - Transport Layer for VN Students
Chapter 3 - Transport Layer for VN Students
 
Peek Traffic Controller PTC 1
Peek Traffic Controller PTC 1Peek Traffic Controller PTC 1
Peek Traffic Controller PTC 1
 
Cisco Networking (Routing and Switching)
Cisco Networking (Routing and Switching)Cisco Networking (Routing and Switching)
Cisco Networking (Routing and Switching)
 
final14-4
final14-4final14-4
final14-4
 

Recently uploaded

john krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptxjohn krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptx
Madan Karki
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
sachin chaurasia
 
cnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classicationcnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classication
SakkaravarthiShanmug
 
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
IJECEIAES
 
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.pptUnit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
KrishnaveniKrishnara1
 
Hematology Analyzer Machine - Complete Blood Count
Hematology Analyzer Machine - Complete Blood CountHematology Analyzer Machine - Complete Blood Count
Hematology Analyzer Machine - Complete Blood Count
shahdabdulbaset
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
Prakhyath Rai
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
Las Vegas Warehouse
 
Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...
bijceesjournal
 
Mechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdfMechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdf
21UME003TUSHARDEB
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
Victor Morales
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
gerogepatton
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
171ticu
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
171ticu
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
Madan Karki
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
MDSABBIROJJAMANPAYEL
 
Seminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptxSeminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptx
Madan Karki
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
shadow0702a
 

Recently uploaded (20)

john krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptxjohn krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptx
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
 
cnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classicationcnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classication
 
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
 
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.pptUnit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
 
Hematology Analyzer Machine - Complete Blood Count
Hematology Analyzer Machine - Complete Blood CountHematology Analyzer Machine - Complete Blood Count
Hematology Analyzer Machine - Complete Blood Count
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
 
Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...
 
Mechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdfMechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdf
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
 
Seminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptxSeminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptx
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
 

Trie-based IP address lookup

  • 1. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Switching and Routing Professor Guido Maier Academic Year 2013/2014 Project 1 Trie-based IP address lookup Group 4 Luca Bianchi, Andrea Mola, Sebastian Troìa, Denny Tremolada e Ignacio Abadia Tercedor
  • 2. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Objective The objective of this project is to create a network with multiple switches, all controlled by an OpenFlow controller, and evaluate the behavior and the performance of four lookup algorithm: binary trie lookup, path compressed trie lookup, multibit trie lookup and level compressed trie lookup. We will implement these algorithms by using an OpenFlow controller, and we will see the lookup performance of each algorithm in a network of 30 hosts and 15 switches. We will emulate network and hosts using mininet, and controller software is implemented using NOX framework for OpenFlow. In the end, we will see the performance of the algorithms in terms of Round Trip Time (RTT), based on the lenght of the addresses, by using tools like ping and we will compare the results with a network of 60 hosts and 30 switches. Project 1 - Switching and Routing 1
  • 3. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 2
  • 4. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Network Diagram Project 1 - Switching and Routing 3
  • 5. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 4
  • 6. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Network Configuration Set Node IDs for hosts Host1 = 1 Host2 = 2 ... Host29 = 29 Host30 = 30 Set Node IDs for switches Switch1 = 101 ... Switch15 = 115 Add nodes self.add_node( Switch1, Node( is_switch=True ) ) … self.add_node( Switch15, Node( is_switch=True ) ) Project 1 - Switching and Routing 5
  • 7. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Network Configuration Add hosts self.add_node( Host1, Node( is_switch=False ) ) self.add_node( Host2, Node( is_switch=False ) ) ... self.add_node( Host29, Node( is_switch=False ) ) self.add_node( Host30, Node( is_switch=False ) ) Add edges self.add_edge( Host1, Switch1 ) self.add_edge( Host2, Switch1 ) ... self.add_edge( Host29, Switch15 ) self.add_edge( Host30, Switch15 ) Project 1 - Switching and Routing 6
  • 8. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 7
  • 9. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Network Setup Start terminal 1 and enter in vm by ssh: group4@group4:~$ ssh -X openflow@192.168.56.101 Project 1 - Switching and Routing 8
  • 10. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Network Setup Start mininet in the terminal 1: sudo mn --custom /home/openflow/mininet/custom/mynet.py --topo mytopo --mac --controller remote --pre /home/openflow/mininet/custom/myscript Project 1 - Switching and Routing 9
  • 11. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Network Setup Project 1 - Switching and Routing 10
  • 12. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Network Setup Project 1 - Switching and Routing 11
  • 13. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 12
  • 14. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Test Connectivity Now, we have to start a nox controller on vm: openflow@openflowtutorial:~/nox/build/src$ ./nox_core -v -i ptcp: pytutorial and in the terminal 1 we use pingall command to test connectivity between all hosts: Project 1 - Switching and Routing 13
  • 15. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 14
  • 16. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Binary trie Project 1 - Switching and Routing 15
  • 17. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Binary trie Project 1 - Switching and Routing 16 Example: mininet> h1 ping -c100 h30 h30: 10.0.226.0/23 00001010.00000000.1110001| RTT: min value: 3,262 ms med value: 13,208 ms max value: 26,846 ms
  • 18. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 17
  • 19. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Path compressed trie Project 1 - Switching and Routing 18 Skip:15 Segment:000101000000000 Skip:3 Segment:111 Skip:2 Segment:01
  • 20. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Path compressed trie Project 1 - Switching and Routing 19Project 1 - Switching and Routing Skip:15 Segment:000101000000000 Skip:3 Segment:111 Skip:2 Segment:01 Example: mininet> h1 ping -c100 h30 h30: 10.0.226.0/23 00001010.00000000.1110001| RTT: min value: 6,358 ms med value: 11,953 ms max value: 19,429 ms
  • 21. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 20
  • 22. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Multibit trie Project 1 - Switching and Routing 21
  • 23. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Multibit trie Project 1 - Switching and Routing 22 Example: mininet> h1 ping -c100 h30 h30: 10.0.226.0/23 00001010.00000000.1110001| RTT: min value: 3,303 ms med value: 7,535 ms max value: 18,471 ms
  • 24. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 23
  • 25. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Level compressed trie Project 1 - Switching and Routing 24
  • 26. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Level compressed trie Project 1 - Switching and Routing 25 Example: mininet> h1 ping -c100 h30 h30: 10.0.226.0/23 00001010.00000000.1110001| RTT: min value: 2.401 ms med value: 4.418 ms max value: 16.765 ms
  • 27. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 26
  • 28. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Results Project 1 - Switching and Routing 27 AVERAGE VALUE Minimum Average Maximum Binary 3.8292 ms 12.2415 ms 25.9098 ms Path compression 4.9713 ms 11.09 ms 18.9039 ms Multibit 3.7024 ms 7.6987 ms 15.9317 ms Level compression 2.3220 ms 3.7068 ms 13.5765 msWINNER!!!
  • 29. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Index • Network Diagram • Network Configuration • Network Setup • Test Connectivity • Binary trie • Path compressed trie • Multibit trie • Level compressed trie • Results • Comparison Project 1 - Switching and Routing 28
  • 30. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Comparison Project 1 - Switching and Routing 29 minimum average maximum 19 20 21 22 23
  • 31. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Comparison Project 1 - Switching and Routing 30 minimum average maximum 19 20 21 22 23
  • 32. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Comparison Project 1 - Switching and Routing 31 minimum average maximum 19 20 21 22 23
  • 33. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Comparison Project 1 - Switching and Routing 32 minimum average maximum 19 20 21 22 23
  • 34. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Comparison Project 1 - Switching and Routing 33 In a network of 60 hosts and 30 switches the delays of each algorithm are similar to the network with 15 switches and 30 hosts.* AVERAGE VALUE Minimum Average Maximum Binary 3.8292 ms 3.45 ms 12.2415 ms 12.108 ms 25.9098 ms 30.5478 ms Path compression 4.9713 ms 4.236 ms 11.09 ms 10.837 ms 18.9039 ms 20.5478 ms Multibit 3.7024 ms 3.857 ms 7.6987 ms 7.3025 ms 15.9317 ms 16.9087 ms Level compression 2.3220 ms 2.4598 ms 3.7068 ms 3.2068 ms 13.5765 ms 14.7489 ms 15 switches 30 switches * Note that measurements are made by a MacBook Air 1.3GHz dual-core Intel Core i5 processor,Turbo Boost up to 2.6GHz,Intel HD Graphics 5000,8GB memory.
  • 35. DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE END Project 1 - Switching and Routing 34 THANK YOU Luca Bianchi, Andrea Mola, Sebastian Troìa, Denny Tremolada e Ignacio Abadia Tercedor