SlideShare uma empresa Scribd logo
1 de 36
Addressing the Scalability of Ethernet with MOOSE Malcolm Scott, Daniel Wagner-Hall and Jon Crowcroft University of Cambridge Computer Laboratory
Ethernet in the data centre 1970s protocol; still ubiquitous Usually used with IP, but not always(ATA-over-Ethernet) Density of Ethernet addresses is increasing Larger deployments, more devices, more NICs Data centre virtualisation: each VM has a unique Ethernet address (or more than one!) Photo: “Ethernet Cable” by pfly. Used under Creative Commons license. http://www.flickr.com/photos/pfly/130659908/
Why not Ethernet? Heavy use of broadcast destination Capacity wasted source Broadcast ARP required forinteraction with IP on needlessly switch broadcast frames! On large networks, broadcast can overwhelm slower links e.g. wireless Switches’ address tables Inefficient routing: Spanning Tree MAC address Port 12 01:23:45:67:89:a b 16 00:a1:b2:c3:d4:e 5 … … • Maintained by every switch • Automatically learned Shortest path • Table capacity: ~16000 addresses disabled! • Full table results in unreliability, or at best heavy flooding
Spanning tree switching illustrated
Spanning tree switching illustrated destination
Divide and conquer? Traditional solution: artificially subdivide networkat the IP layer: subnetting and routing Administrative burden More expensive equipment Hampers mobility IP Mobility has not (yet) taken off Scalability problems remain withineach subnet
Mobility Mobility around the airport terminal Mobility within the data centre Seamless virtual machine migration Easy deployment: no location-dependent configuration ...and between data centres Large multi-data-centre WANs are becoming common Ethernet is pretty good at mobility
The requirements of TINA Converged airport network Must support diverse commodity equipment Roaming required throughout entire airport complex Ideally, would use one large Ethernet-like network The INtelligent  Airport
Airport networks Airports have surpassed the capabilities of Ethernet London Heathrow Airport: Terminal 5 alone is too big MPLS-VPLS: similar problems to IP subnetting VPLS adds more complexity: LERs map every destination MAC address to a LSP: up to O(hosts) LSRs map every LSP to a next hop: could be O(hosts2) in core! Encapsulation does not help
The underlying problem with Ethernet MAC addresses provideno location information
Flat vs. Hierarchical address spaces Flat-addressed Ethernet: manufacturer-assigned MAC address valid anywhere on any network But every switch must discover and store the location of every host Hierarchical addresses: address depends on location Route frames according to successive stages of hierarchy No large forwarding databases needed LAAs? High administrative overhead if done manually
MOOSE:  Multi-level Origin-Organised Scalable Ethernet A new way to switch Ethernet Perform MAC address rewriting on ingress Enforce dynamic hierarchical addressing No host configuration required Good platform for shortest-path routing Appears to connected equipment as standard Ethernet
MOOSE:  Multi-level Origin-Organised Scalable Ethernet Switches assign each host a MOOSE address = switch ID . host ID(MOOSE address must form a valid unicast LAA: two bits in switch ID fixed) Placed in source field in Ethernet header as each frame enters the network(no encapsulation, therefore no costly rewriting of destination address!)
Allocation of host identifiers Only the switch which allocates a host ID ever uses it for switching (more distant switches just use the switch ID) Therefore the detail of how host IDs are allocated can vary between switches Sequential assignment Port number and sequential portion(isolates address exhaustion attacks) Hash of manufacturer-assigned MAC address(deterministic: recoverable after crash)
The journey of a frame From: 00:16:17:6D:B7:CF To:   broadcast Host: “00:16:17:6D:B7:CF” 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
The journey of a frame Host: “00:16:17:6D:B7:CF” New frame, so rewrite From: 02:11:11:00:00:01 To:   broadcast 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
The return journey of a frame Host: “00:16:17:6D:B7:CF” 02:11:11 02:22:22 02:33:33 From: 00:0C:F1:DF:6A:84 To:   02:11:11:00:00:01 Host: “00:0C:F1:DF:6A:84”
The return journey of a frame Host: “00:16:17:6D:B7:CF” 02:11:11 02:22:22 New frame, so rewrite From: 02:33:33:00:00:01 To:   02:11:11:00:00:01 02:33:33 Host: “00:0C:F1:DF:6A:84”
From: 02:33:33:00:00:01 To:   02:11:11:00:00:01 The return journey of a frame Host: “00:16:17:6D:B7:CF” 02:11:11 Destination is on 02:11:11 02:22:22 Destination is on 02:11:11 02:33:33 Host: “00:0C:F1:DF:6A:84”
The return journey of a frame Host: “00:16:17:6D:B7:CF” Destination is local From: 02:33:33:00:00:01 To:   00:16:17:6D:B7:CF 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
The return journey of a frame From: 02:33:33:00:00:01 To:   00:16:17:6D:B7:CF Host: “00:16:17:6D:B7:CF” Each switch in this setuponly ever has three address table entries (regardless of the number of hosts) 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
Security and isolation benefits The number of switch IDs is predictable, unlike the number of MAC addresses Address flooding attacks are ineffective Resilience of dynamic networks (e.g. wireless) is increased Host-specified MAC addressis not used for switching Spoofing is ineffective
Shortest path routing MOOSE switch ≈ layer 3 router One “subnet” per switch 02:11:11:00:00:00/24 Don’t advertise individual MAC addresses! Run a routing protocol between switches, e.g. OSPF variant OSPF-OMP may be particularly desirable: optimised multipath routing for increased performance
Beyond unicast Broadcast: unfortunate legacy DHCP, ARP, NBNS, NTP, plethora of discovery protocols... Deduce spanning tree using reverse path forwarding (PIM): no explicit spanning tree protocol Can optimise away most common sources, however Multicast and anycast for free SEATTLE suggested generalised VLANs (“groups”) to emulate multicast Multicast-aware routing protocol can provide a true L2 multicast feature
ELK: Enhanced Lookup General-purpose directory service Master database: held on one or moreservers in core of network Slaves can be held near edge of networkto reduce load on masters Read: anycast to nearest slave Write: multicast to all masters Entire herd of ELK kept in sync by mastersvia multicast + unicast Photo: “Majestic Elk” by CaptPiper. Used under Creative Commons license. http://www.flickr.com/photos/piper/798173545/
ELK: Enhanced Lookup Primary aim: handle ARP & DHCP without broadcast ELK stores (MAC address, IP address) tuples Learned from sources of ARP queries Acts as DHCP server, populating directory as it grants leases Edge switch intercepts broadcast ARP / DHCP query and converts into anycast ELK query ELK is not guaranteed to know the answer, but it usually will (ARP request for long-idle host that isn’t using DHCP)
Mobility If a host moves, it is allocated a new MOOSE address by its new switch Other hosts may have the old address in ARP caches Forward frames, IP Mobility style(new switch discovers host’s old location by querying other switches for its real MAC address) Gratuitous ARP,Xen VM migration style
Related work Encapsulation(MPLS-VPLS, IEEE TRILL, ...) Destination address lookup:Big lookup tables Complete redesign(Myers et al.) To be accepted, must be Ethernet-compatible Domain-narrowing(PortLand – Mysore et al., UCSD) Is everything really a strict tree topology? DHT for host location(SEATTLE – Kim et al., Princeton) Unpredictable performance; topology changes are costly Left photo: “Pdx Bridge to Bridge Panorama” by Bob I Am. Used under Creative Commons license. http://www.flickr.com/photos/bobthebritt/219722612/ Right photo: “Seattle Pan HDR” by papalars. Used under Creative Commons license. http://www.flickr.com/photos/papalars/2575135046/
Prototype implementation ,[object Object]
Designed for clarity and to mimic a potential hardware design
Modularity
Separation of control anddata planes
Capable of up to 100 Mbpsswitching on a modern PC
Could theoretically handlevery large number of nodes,[object Object]
Prototype implementation: Data plane ,[object Object]
Locally-connected hosts (MAC address, host ID, Port)

Mais conteúdo relacionado

Mais procurados

Expl sw chapter_02_switches_part_1
Expl sw chapter_02_switches_part_1Expl sw chapter_02_switches_part_1
Expl sw chapter_02_switches_part_1aghacrom
 
MPLS L3 VPN Deployment
MPLS L3 VPN DeploymentMPLS L3 VPN Deployment
MPLS L3 VPN DeploymentAPNIC
 
VPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOMEVPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOMEnetworkershome
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelOlivier Bonaventure
 
IPv6 Best Practice
IPv6 Best PracticeIPv6 Best Practice
IPv6 Best Practiceflyingpotato
 
0.5mln packets per second with Erlang
0.5mln packets per second with Erlang0.5mln packets per second with Erlang
0.5mln packets per second with ErlangMaxim Kharchenko
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPOlivier Bonaventure
 
214270 configure-aci-multi-site-deployment
214270 configure-aci-multi-site-deployment214270 configure-aci-multi-site-deployment
214270 configure-aci-multi-site-deploymentcoolboyasif
 
Point to-point protocol (ppp), PAP & CHAP
Point to-point protocol (ppp), PAP & CHAPPoint to-point protocol (ppp), PAP & CHAP
Point to-point protocol (ppp), PAP & CHAPNetProtocol Xpert
 
Bgp 6 advanced transit as issues
Bgp 6   advanced transit as issuesBgp 6   advanced transit as issues
Bgp 6 advanced transit as issuesAuguste Behe
 

Mais procurados (20)

Otv notes
Otv notesOtv notes
Otv notes
 
Expl sw chapter_02_switches_part_1
Expl sw chapter_02_switches_part_1Expl sw chapter_02_switches_part_1
Expl sw chapter_02_switches_part_1
 
MPLS L3 VPN Deployment
MPLS L3 VPN DeploymentMPLS L3 VPN Deployment
MPLS L3 VPN Deployment
 
BGP Advanced topics
BGP Advanced topicsBGP Advanced topics
BGP Advanced topics
 
VPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOMEVPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOME
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernel
 
IPv6 Best Practice
IPv6 Best PracticeIPv6 Best Practice
IPv6 Best Practice
 
Vpc notes
Vpc notesVpc notes
Vpc notes
 
Socketcan
SocketcanSocketcan
Socketcan
 
Cisco OTV 
Cisco OTV Cisco OTV 
Cisco OTV 
 
0.5mln packets per second with Erlang
0.5mln packets per second with Erlang0.5mln packets per second with Erlang
0.5mln packets per second with Erlang
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGP
 
CCNA ALL IN ONE
CCNA ALL IN ONE CCNA ALL IN ONE
CCNA ALL IN ONE
 
214270 configure-aci-multi-site-deployment
214270 configure-aci-multi-site-deployment214270 configure-aci-multi-site-deployment
214270 configure-aci-multi-site-deployment
 
Ccnpswitch
CcnpswitchCcnpswitch
Ccnpswitch
 
Point to-point protocol (ppp), PAP & CHAP
Point to-point protocol (ppp), PAP & CHAPPoint to-point protocol (ppp), PAP & CHAP
Point to-point protocol (ppp), PAP & CHAP
 
MPLS Layer 3 VPN
MPLS Layer 3 VPN MPLS Layer 3 VPN
MPLS Layer 3 VPN
 
Bgp 6 advanced transit as issues
Bgp 6   advanced transit as issuesBgp 6   advanced transit as issues
Bgp 6 advanced transit as issues
 
Np unit1
Np unit1Np unit1
Np unit1
 
Np unit iv ii
Np unit iv iiNp unit iv ii
Np unit iv ii
 

Semelhante a TINA showcase: MOOSE Scalable Ethernet

Networks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshhNetworks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshhVijayKaran7
 
Lecture 26 Link Layer .pptx
Lecture 26 Link Layer .pptxLecture 26 Link Layer .pptx
Lecture 26 Link Layer .pptxHanzlaNaveed1
 
Chapter 5 : Link Layer
Chapter 5 : Link LayerChapter 5 : Link Layer
Chapter 5 : Link LayerAmin Omi
 
Training Day Slides
Training Day SlidesTraining Day Slides
Training Day Slidesadam_merritt
 
Introduction to tcp ip linux networking
Introduction to tcp ip   linux networkingIntroduction to tcp ip   linux networking
Introduction to tcp ip linux networkingSreenatha Reddy K R
 
Lecture 5 internet-protocol_assignments
Lecture 5 internet-protocol_assignmentsLecture 5 internet-protocol_assignments
Lecture 5 internet-protocol_assignmentsSerious_SamSoul
 
11 coms 525 tcpip - internet protocol - forward
11   coms 525 tcpip - internet protocol - forward11   coms 525 tcpip - internet protocol - forward
11 coms 525 tcpip - internet protocol - forwardPalanivel Kuppusamy
 
Data center network architectures v1.3
Data center network architectures v1.3Data center network architectures v1.3
Data center network architectures v1.3Jeong, Wookjae
 
Mp So C 18 Apr
Mp So C 18 AprMp So C 18 Apr
Mp So C 18 AprFNian
 

Semelhante a TINA showcase: MOOSE Scalable Ethernet (20)

Week16 lec1
Week16 lec1Week16 lec1
Week16 lec1
 
Networks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshhNetworks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshh
 
Lecture 26 Link Layer .pptx
Lecture 26 Link Layer .pptxLecture 26 Link Layer .pptx
Lecture 26 Link Layer .pptx
 
Chapter 5 : Link Layer
Chapter 5 : Link LayerChapter 5 : Link Layer
Chapter 5 : Link Layer
 
ARP.ppt
ARP.pptARP.ppt
ARP.ppt
 
Networking.pdf
Networking.pdfNetworking.pdf
Networking.pdf
 
Arp spoofing
Arp spoofingArp spoofing
Arp spoofing
 
Networking basics
Networking basicsNetworking basics
Networking basics
 
net work iTM3
net work iTM3net work iTM3
net work iTM3
 
Training Day Slides
Training Day SlidesTraining Day Slides
Training Day Slides
 
Ethernet_Networking2.ppt
Ethernet_Networking2.pptEthernet_Networking2.ppt
Ethernet_Networking2.ppt
 
Introduction to tcp ip linux networking
Introduction to tcp ip   linux networkingIntroduction to tcp ip   linux networking
Introduction to tcp ip linux networking
 
Lecture 5 internet-protocol_assignments
Lecture 5 internet-protocol_assignmentsLecture 5 internet-protocol_assignments
Lecture 5 internet-protocol_assignments
 
11 coms 525 tcpip - internet protocol - forward
11   coms 525 tcpip - internet protocol - forward11   coms 525 tcpip - internet protocol - forward
11 coms 525 tcpip - internet protocol - forward
 
6005679.ppt
6005679.ppt6005679.ppt
6005679.ppt
 
lis508p02a-10.ppt
lis508p02a-10.pptlis508p02a-10.ppt
lis508p02a-10.ppt
 
Data center network architectures v1.3
Data center network architectures v1.3Data center network architectures v1.3
Data center network architectures v1.3
 
IPv6
IPv6IPv6
IPv6
 
Mp So C 18 Apr
Mp So C 18 AprMp So C 18 Apr
Mp So C 18 Apr
 
Lecture-07 .pdf
Lecture-07 .pdfLecture-07 .pdf
Lecture-07 .pdf
 

Último

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Último (20)

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

TINA showcase: MOOSE Scalable Ethernet

  • 1. Addressing the Scalability of Ethernet with MOOSE Malcolm Scott, Daniel Wagner-Hall and Jon Crowcroft University of Cambridge Computer Laboratory
  • 2. Ethernet in the data centre 1970s protocol; still ubiquitous Usually used with IP, but not always(ATA-over-Ethernet) Density of Ethernet addresses is increasing Larger deployments, more devices, more NICs Data centre virtualisation: each VM has a unique Ethernet address (or more than one!) Photo: “Ethernet Cable” by pfly. Used under Creative Commons license. http://www.flickr.com/photos/pfly/130659908/
  • 3. Why not Ethernet? Heavy use of broadcast destination Capacity wasted source Broadcast ARP required forinteraction with IP on needlessly switch broadcast frames! On large networks, broadcast can overwhelm slower links e.g. wireless Switches’ address tables Inefficient routing: Spanning Tree MAC address Port 12 01:23:45:67:89:a b 16 00:a1:b2:c3:d4:e 5 … … • Maintained by every switch • Automatically learned Shortest path • Table capacity: ~16000 addresses disabled! • Full table results in unreliability, or at best heavy flooding
  • 5. Spanning tree switching illustrated destination
  • 6. Divide and conquer? Traditional solution: artificially subdivide networkat the IP layer: subnetting and routing Administrative burden More expensive equipment Hampers mobility IP Mobility has not (yet) taken off Scalability problems remain withineach subnet
  • 7. Mobility Mobility around the airport terminal Mobility within the data centre Seamless virtual machine migration Easy deployment: no location-dependent configuration ...and between data centres Large multi-data-centre WANs are becoming common Ethernet is pretty good at mobility
  • 8. The requirements of TINA Converged airport network Must support diverse commodity equipment Roaming required throughout entire airport complex Ideally, would use one large Ethernet-like network The INtelligent Airport
  • 9. Airport networks Airports have surpassed the capabilities of Ethernet London Heathrow Airport: Terminal 5 alone is too big MPLS-VPLS: similar problems to IP subnetting VPLS adds more complexity: LERs map every destination MAC address to a LSP: up to O(hosts) LSRs map every LSP to a next hop: could be O(hosts2) in core! Encapsulation does not help
  • 10. The underlying problem with Ethernet MAC addresses provideno location information
  • 11. Flat vs. Hierarchical address spaces Flat-addressed Ethernet: manufacturer-assigned MAC address valid anywhere on any network But every switch must discover and store the location of every host Hierarchical addresses: address depends on location Route frames according to successive stages of hierarchy No large forwarding databases needed LAAs? High administrative overhead if done manually
  • 12. MOOSE: Multi-level Origin-Organised Scalable Ethernet A new way to switch Ethernet Perform MAC address rewriting on ingress Enforce dynamic hierarchical addressing No host configuration required Good platform for shortest-path routing Appears to connected equipment as standard Ethernet
  • 13. MOOSE: Multi-level Origin-Organised Scalable Ethernet Switches assign each host a MOOSE address = switch ID . host ID(MOOSE address must form a valid unicast LAA: two bits in switch ID fixed) Placed in source field in Ethernet header as each frame enters the network(no encapsulation, therefore no costly rewriting of destination address!)
  • 14. Allocation of host identifiers Only the switch which allocates a host ID ever uses it for switching (more distant switches just use the switch ID) Therefore the detail of how host IDs are allocated can vary between switches Sequential assignment Port number and sequential portion(isolates address exhaustion attacks) Hash of manufacturer-assigned MAC address(deterministic: recoverable after crash)
  • 15. The journey of a frame From: 00:16:17:6D:B7:CF To: broadcast Host: “00:16:17:6D:B7:CF” 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
  • 16. The journey of a frame Host: “00:16:17:6D:B7:CF” New frame, so rewrite From: 02:11:11:00:00:01 To: broadcast 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
  • 17. The return journey of a frame Host: “00:16:17:6D:B7:CF” 02:11:11 02:22:22 02:33:33 From: 00:0C:F1:DF:6A:84 To: 02:11:11:00:00:01 Host: “00:0C:F1:DF:6A:84”
  • 18. The return journey of a frame Host: “00:16:17:6D:B7:CF” 02:11:11 02:22:22 New frame, so rewrite From: 02:33:33:00:00:01 To: 02:11:11:00:00:01 02:33:33 Host: “00:0C:F1:DF:6A:84”
  • 19. From: 02:33:33:00:00:01 To: 02:11:11:00:00:01 The return journey of a frame Host: “00:16:17:6D:B7:CF” 02:11:11 Destination is on 02:11:11 02:22:22 Destination is on 02:11:11 02:33:33 Host: “00:0C:F1:DF:6A:84”
  • 20. The return journey of a frame Host: “00:16:17:6D:B7:CF” Destination is local From: 02:33:33:00:00:01 To: 00:16:17:6D:B7:CF 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
  • 21. The return journey of a frame From: 02:33:33:00:00:01 To: 00:16:17:6D:B7:CF Host: “00:16:17:6D:B7:CF” Each switch in this setuponly ever has three address table entries (regardless of the number of hosts) 02:11:11 02:22:22 02:33:33 Host: “00:0C:F1:DF:6A:84”
  • 22. Security and isolation benefits The number of switch IDs is predictable, unlike the number of MAC addresses Address flooding attacks are ineffective Resilience of dynamic networks (e.g. wireless) is increased Host-specified MAC addressis not used for switching Spoofing is ineffective
  • 23. Shortest path routing MOOSE switch ≈ layer 3 router One “subnet” per switch 02:11:11:00:00:00/24 Don’t advertise individual MAC addresses! Run a routing protocol between switches, e.g. OSPF variant OSPF-OMP may be particularly desirable: optimised multipath routing for increased performance
  • 24. Beyond unicast Broadcast: unfortunate legacy DHCP, ARP, NBNS, NTP, plethora of discovery protocols... Deduce spanning tree using reverse path forwarding (PIM): no explicit spanning tree protocol Can optimise away most common sources, however Multicast and anycast for free SEATTLE suggested generalised VLANs (“groups”) to emulate multicast Multicast-aware routing protocol can provide a true L2 multicast feature
  • 25. ELK: Enhanced Lookup General-purpose directory service Master database: held on one or moreservers in core of network Slaves can be held near edge of networkto reduce load on masters Read: anycast to nearest slave Write: multicast to all masters Entire herd of ELK kept in sync by mastersvia multicast + unicast Photo: “Majestic Elk” by CaptPiper. Used under Creative Commons license. http://www.flickr.com/photos/piper/798173545/
  • 26. ELK: Enhanced Lookup Primary aim: handle ARP & DHCP without broadcast ELK stores (MAC address, IP address) tuples Learned from sources of ARP queries Acts as DHCP server, populating directory as it grants leases Edge switch intercepts broadcast ARP / DHCP query and converts into anycast ELK query ELK is not guaranteed to know the answer, but it usually will (ARP request for long-idle host that isn’t using DHCP)
  • 27. Mobility If a host moves, it is allocated a new MOOSE address by its new switch Other hosts may have the old address in ARP caches Forward frames, IP Mobility style(new switch discovers host’s old location by querying other switches for its real MAC address) Gratuitous ARP,Xen VM migration style
  • 28. Related work Encapsulation(MPLS-VPLS, IEEE TRILL, ...) Destination address lookup:Big lookup tables Complete redesign(Myers et al.) To be accepted, must be Ethernet-compatible Domain-narrowing(PortLand – Mysore et al., UCSD) Is everything really a strict tree topology? DHT for host location(SEATTLE – Kim et al., Princeton) Unpredictable performance; topology changes are costly Left photo: “Pdx Bridge to Bridge Panorama” by Bob I Am. Used under Creative Commons license. http://www.flickr.com/photos/bobthebritt/219722612/ Right photo: “Seattle Pan HDR” by papalars. Used under Creative Commons license. http://www.flickr.com/photos/papalars/2575135046/
  • 29.
  • 30. Designed for clarity and to mimic a potential hardware design
  • 32. Separation of control anddata planes
  • 33. Capable of up to 100 Mbpsswitching on a modern PC
  • 34.
  • 35.
  • 36. Locally-connected hosts (MAC address, host ID, Port)
  • 38.
  • 39. Prototype implementation: Control plane Separate thread Routing protocol: PWOSPF Only for proof-of-concept: real implementation would likely need OSPF’s authentication features etc. Map switch IDs onto PWOSPF’s 4-byte address fields by padding RHS with null bytes 02.11.11.00/24 Maintain Ports’ remote-switches forwarding databases (routing tables, really)
  • 40. Prototype evaluation UnmodifiedPC’s ARPcache: Virtual network (Xen) Six virtual switches, 10 VMs each: MOOSE vs. Linux bridging Linux bridge FDBs: 60 entries on each switch: O(hosts) MOOSE FDBs: 5 switch entries + 10 host entries on each switch:the latter will remain constant in larger deployments, so O(switches) Address HWtype HWaddress Iface 10.100.11.1 ether 02:00:0c:01:00:01 eth1 10.100.11.3 ether 02:00:0a:01:00:01 eth1 10.100.11.4 ether 02:00:0a:03:00:01 eth1 10.100.11.8 ether 02:00:0b:02:00:01 eth1
  • 41. Hardware implementation Based on OpenFlow and NetFPGA Switch packets purely in hardware Manage addresses in high-level software (Daniel Wagner-Hall)
  • 42. Final thoughts Ethernet: another 35 years? Not an ideal starting point, but it’s what we’ve got If it is to last, it needs to scale yet remain compatible MOOSE is a simple, novel and easily-implementable approach Address the cause, not the symptom “we choose to achieve reliability through simplicity” – Robert M. Metcalfe and David R. Boggs

Notas do Editor

  1. Densely-connected mesh, but spanning tree protocol disables links
  2. ANIM: data from [here] to [here]Direct link, but can’t use [CLICK]Packet takes long way round
  3. Google
  4. Flat, manufacturer-allocated namespace  hierarchySplit MAC addressReiterate: switches rewrite addresses so hosts don’t have to
  5. ANIM: Host transmits broadcast frame (simplicity) [CLICK]Switch one sees non-MOOSE source address  [CLICK] new frame on net  rewrite[CLICK] Packet makes its way to all destinations
  6. ANIM: Host transmits broadcast frame (simplicity) [CLICK]Switch one sees non-MOOSE source address  [CLICK] new frame on net  rewrite[CLICK] Packet makes its way to all destinations
  7. ANIM: now transmit reply. Note dest addr MOOSE. [CLICK]As before, [CLICK] rewrite sourceNow route frame using switch ID ONLY: [CLICK] each sw on path knows where sw one isLast switch [CLICK] rewrites dest to avoid confusion[CLICK] Deterministic address tables
  8. ANIM: now transmit reply. Note dest addr MOOSE. [CLICK]As before, [CLICK] rewrite sourceNow route frame using switch ID ONLY: [CLICK] each sw on path knows where sw one isLast switch [CLICK] rewrites dest to avoid confusion[CLICK] Deterministic address tables
  9. ANIM: now transmit reply. Note dest addr MOOSE. [CLICK]As before, [CLICK] rewrite sourceNow route frame using switch ID ONLY: [CLICK] each sw on path knows where sw one isLast switch [CLICK] rewrites dest to avoid confusion[CLICK] Deterministic address tables
  10. ANIM: now transmit reply. Note dest addr MOOSE. [CLICK]As before, [CLICK] rewrite sourceNow route frame using switch ID ONLY: [CLICK] each sw on path knows where sw one isLast switch [CLICK] rewrites dest to avoid confusion[CLICK] Deterministic address tables
  11. ANIM: now transmit reply. Note dest addr MOOSE. [CLICK]As before, [CLICK] rewrite sourceNow route frame using switch ID ONLY: [CLICK] each sw on path knows where sw one isLast switch [CLICK] rewrites dest to avoid confusion[CLICK] Deterministic address tables
  12. Off-the-shelf PC with a few server NICs added
  13. Modular design; should map onto hardwareGeneric switch + rewriting moduleFrame receiver (rewrites if necessary)Forwarding databaseFrame transmitter