SlideShare una empresa de Scribd logo
1 de 14
Routing in the Next Generation Internet
        Algorithmus for
Multi-Path Hop-By-Hop Routing

               Diplomand:         Jens Oberender
               Betreuer:          Claus Gruber/LKN.TUM
               Erst-Gutachter:    Prof. Brandenburg/TI.Uni Passau
               Zweit-Gutachter:   Prof. Eberspächer/LKN.TUM
HammockSet Representation
• Undirected Graph – equal to any destination
• Node Sequence – implies edge direction
• Implementation
  – Graph: nodes store connected edges
     • Array[NodeID->SortedHeap[NodeID]]
  – HammockSet: supports sequence requests with hash table
     • Array[Pos->NodeID]
     • HashMap[NodeID->Pos]
• Operations
  – Test if (x,y) is covered by sequence   O(1)
  – Reverse Convex Hull (x)                O(n)        2
Construction Overview
• Create node sequences for each destination
   – Phase 1: Based on Bandwidth Ratings
   – Phase 2: Based on Estimated Traffic
• Choose Shared-Reserve-Link
• Set Edge Direction                   i                                            n               o


                                       j                                                    k

• Generate HammockSets        e
                                                                    c
                                                                            a

                                                                                                p


                                            g                                           l

                                                                h                                       m

                                                    f                   b       d

                                  [   i=j   g   f       ]   [   h   c   b   a   d   n   l   k   o   p   m   ]




• Phase 3: search&re-route high load links
• Phase 4: traffic planning                                                                         3
Avoid HammockSet Symmetry
• Set edge direction is based on
   – Link Capacity
     measures available bandwidth for all HammockSets together
     start with (2*C/n) assuming both directions are used
   – Diversity of Link Capacity
     failure on 1:1 bandwidth: 200% traffic
     failure on 1:10 bandwidth: 1100% traffic
   – Number of Links
     three and more links can handle failures better –
     preferred position: in middle of sequence and near to neighbor nodes
   – Traffic Demands
     only available for direct traffic, transferring demands depend on succeeding nodes
• Bad routing effects, if HammockSets have high symmetry
  failure reaction is similar for all HammockSets –
  extensive increasing load on backup links
⇒ Algorithm decisions should be                    4
 relatively independent to constant characteristics
Generate Sequence Order
• Algorithm: choose one out of the “border” nodes
• HammockSets that
  provide good bandwith after maximum failure
  also perform well in normal mode
   ⇒ Selection criteria: bandwidth after failure
Find Maximum node by first argument, if equal by second.
          func    rating (Node k, Neighbors N, Sequence S)
                 E := edges from candidate to N cup S
                 if (count(E) < 2) break;
                 // Capacity after maximum failure
                 D := ( C(Ef) | C(f)=max C(e) )
                 return { D, C(E) }                          5
          endfunc
i

Provide second outlink to neighbors
                                                                   j
                                                              0
  Scenario:                                              1 00
                                                    e              g
• HammockSet but neighbors created
  ToDo’s:




                                                                  1000
                                                        10
                                                           0
• construct S-R-Link




                                                           0
   – Which neighbor component should get a SRL?               f          1000
   – Capacity remains unused during normal Operation
   – Direct two links should provide medium to high capacity,
     since they carry all load
   – Choose nodes with fewest incoming links
• direct remaining edges
   – From several options, choose least crowded one                 6
   – Avoid long chains that increase packet running time
Criteria for SRL selection
•   (Estimated) Traffic distribution available
    always significantly differs from acceptable distribution
•   Sum up all traffic demands on convex hull
    is independent of distribution
    shows traffic likely proportional to #incoming edges

         func maxinData (node k)
            H := convex hull (k) over reverse edges
            return (sum M[H,t]) / C(k,t)
         endfunc

                                                                7
Neighbor Nodes Convex Hulls                                                 n
                                        n
                                                                    i
                    i                                           e
                e                                                           j               o
                            j               o
                                                a           f
a           f
                                                                    g
                    g                                   b                           k
        b                           k

                                                        c
        c

                                                    d                                               p
    d                                           p
                                                                        h       l
                        h       l




                                                                                    m
                                    m
                                        n                                               n
                    i                                               i
                e                                               e
                            j               o                               j               o
a           f                                   a           f
                    g                                               g
        b                           k                   b                           k

        c                                               c

    d                                           p   d                                               p
                        h       l                                       h       l




                                                                                                8
                                    m                                               m
How to optimize HammockSets
• Objective: provide a set of HammockSets,
  that can handle given traffic demands
• Use traffic estimation information
  with bandwidth-balanced quotes
• Each link has two directions,
  optimal: both occur even often for destinations
• What could change the actual load on a link?
  Depends on the role in this HammockSet
   – Fixed as a Neighbor
   – Node sequence may be rearranged
                                                    9
Bottleneck Detection
• If bottlenecks are obvious,
  list all HammockSet-Sequences
  that include this edge
• Examine whether few changed sequence
  could resolve bottleneck
  whithout generating new ones


                                         10
High load on directed edge (x→y)
• Pick destination HammockSets
  with sequences that include the (x→y) edge
                                    →
• Edge-Characteristics
  – TrafficMatrix                (x->>t), (y->>t)
  – Current traffic on           (x->y)
  – Remaining traffic            (x->>t  x->y)

             y                                    y

                     x                        x
                                                              11
   [   A y       B   x   C   ]    [   A   B   x   y   C   ]
Change Sequence Order
• Alter one HammockSet
  having low (traffic(x,y)-traffic(y,x))
• Sequence change should not
  heavily influence other edges
  (already processed ones)



                                           12
Change the point-of-view
                      • HammockSet-centered optimization
        HammockSets      – What happens in case of link failure? (impl)
                         – Calculate Normal and Backup Capacity
edges                      (impl)
                         – Can the network flow be distributed
                           evenly?


        HammockSets   • Edge-centered optimization
                         – What edges carry heavy load?
edges                    – Is the HammockSet generation
                           independent enough of the network
                           structure?
                         – Generate Scenarios and sample data
                                                                13
Objective Implementation
• Is there any need to restructure
  heuristic-generated HammockSets?
 Find a network type where heuristic fails
• What capacity must be reserved
  for failure occurrence?
• Flow Benchmarking


                                             14

Más contenido relacionado

Similar a Routing Algorithm for Multi-Path Hop-By-Hop Routing

Double patterning (4/20 update)
Double patterning (4/20 update)Double patterning (4/20 update)
Double patterning (4/20 update)Danny Luk
 
Digital signature
Digital signatureDigital signature
Digital signatureYug Sharma
 
Kirchhoff's Laws Handout
Kirchhoff's Laws HandoutKirchhoff's Laws Handout
Kirchhoff's Laws Handoutjjlendaya
 
Project scheduling and control techniques
Project scheduling and control techniquesProject scheduling and control techniques
Project scheduling and control techniquesCjkayes CjKayes
 
Circles and tangents with geometry expressions
Circles and tangents with geometry expressionsCircles and tangents with geometry expressions
Circles and tangents with geometry expressionsTarun Gehlot
 
Circles and tangents with geometry expressions
Circles and tangents with geometry expressionsCircles and tangents with geometry expressions
Circles and tangents with geometry expressionsTarun Gehlot
 
Implementing QoS Solutions for H.323 Video Conferencing over IP
Implementing QoS Solutions for H.323 Video Conferencing over IPImplementing QoS Solutions for H.323 Video Conferencing over IP
Implementing QoS Solutions for H.323 Video Conferencing over IPVideoguy
 
Time Machine session @ ICME 2012 - DTW's New Youth
Time Machine session @ ICME 2012 - DTW's New YouthTime Machine session @ ICME 2012 - DTW's New Youth
Time Machine session @ ICME 2012 - DTW's New YouthXavier Anguera
 
Accessibity and OER survey questions
Accessibity and OER survey questionsAccessibity and OER survey questions
Accessibity and OER survey questionsakgruszczynska
 
Lukáš Šabľa - Vim
Lukáš Šabľa - VimLukáš Šabľa - Vim
Lukáš Šabľa - Vimwebelement
 

Similar a Routing Algorithm for Multi-Path Hop-By-Hop Routing (12)

Double patterning (4/20 update)
Double patterning (4/20 update)Double patterning (4/20 update)
Double patterning (4/20 update)
 
Chapter 4 bj ts dc biasing
Chapter 4 bj ts dc biasingChapter 4 bj ts dc biasing
Chapter 4 bj ts dc biasing
 
Digital signature
Digital signatureDigital signature
Digital signature
 
Lec4 jwfiles
Lec4 jwfilesLec4 jwfiles
Lec4 jwfiles
 
Kirchhoff's Laws Handout
Kirchhoff's Laws HandoutKirchhoff's Laws Handout
Kirchhoff's Laws Handout
 
Project scheduling and control techniques
Project scheduling and control techniquesProject scheduling and control techniques
Project scheduling and control techniques
 
Circles and tangents with geometry expressions
Circles and tangents with geometry expressionsCircles and tangents with geometry expressions
Circles and tangents with geometry expressions
 
Circles and tangents with geometry expressions
Circles and tangents with geometry expressionsCircles and tangents with geometry expressions
Circles and tangents with geometry expressions
 
Implementing QoS Solutions for H.323 Video Conferencing over IP
Implementing QoS Solutions for H.323 Video Conferencing over IPImplementing QoS Solutions for H.323 Video Conferencing over IP
Implementing QoS Solutions for H.323 Video Conferencing over IP
 
Time Machine session @ ICME 2012 - DTW's New Youth
Time Machine session @ ICME 2012 - DTW's New YouthTime Machine session @ ICME 2012 - DTW's New Youth
Time Machine session @ ICME 2012 - DTW's New Youth
 
Accessibity and OER survey questions
Accessibity and OER survey questionsAccessibity and OER survey questions
Accessibity and OER survey questions
 
Lukáš Šabľa - Vim
Lukáš Šabľa - VimLukáš Šabľa - Vim
Lukáš Šabľa - Vim
 

Más de Jens Oberender

Konsumterror #BCBN20 Barcamp Sessopn
Konsumterror #BCBN20 Barcamp SessopnKonsumterror #BCBN20 Barcamp Sessopn
Konsumterror #BCBN20 Barcamp SessopnJens Oberender
 
Erfahrungsbericht als Area Governor bei Toastmasters International
Erfahrungsbericht als Area Governor bei Toastmasters InternationalErfahrungsbericht als Area Governor bei Toastmasters International
Erfahrungsbericht als Area Governor bei Toastmasters InternationalJens Oberender
 
Smartphone Applications - Common Criteria is going Mobile
Smartphone Applications - Common Criteria is going MobileSmartphone Applications - Common Criteria is going Mobile
Smartphone Applications - Common Criteria is going MobileJens Oberender
 
Pitch Your Project and Vision – Zielgerichtete Kommunikation
Pitch Your Project and Vision – Zielgerichtete KommunikationPitch Your Project and Vision – Zielgerichtete Kommunikation
Pitch Your Project and Vision – Zielgerichtete KommunikationJens Oberender
 
Konzeptbotschafter: The Elevator Pitch
Konzeptbotschafter: The Elevator PitchKonzeptbotschafter: The Elevator Pitch
Konzeptbotschafter: The Elevator PitchJens Oberender
 
Schlipsträger werden - Sinnsuche zum Berufseinstieg
Schlipsträger werden - Sinnsuche zum BerufseinstiegSchlipsträger werden - Sinnsuche zum Berufseinstieg
Schlipsträger werden - Sinnsuche zum BerufseinstiegJens Oberender
 
Überblick Common Criteria
Überblick Common CriteriaÜberblick Common Criteria
Überblick Common CriteriaJens Oberender
 
Grundlagen kooperativer Anonymisierungsnetze
Grundlagen kooperativer AnonymisierungsnetzeGrundlagen kooperativer Anonymisierungsnetze
Grundlagen kooperativer AnonymisierungsnetzeJens Oberender
 
Widerstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von AnonymisierungsnetzenWiderstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von AnonymisierungsnetzenJens Oberender
 
Getting Things Done (GfA Präsentation)
Getting Things Done (GfA Präsentation)Getting Things Done (GfA Präsentation)
Getting Things Done (GfA Präsentation)Jens Oberender
 
Riding the Flow - Wissenarbeit nach der Getting Things Done Methode
Riding the Flow - Wissenarbeit nach der Getting Things Done MethodeRiding the Flow - Wissenarbeit nach der Getting Things Done Methode
Riding the Flow - Wissenarbeit nach der Getting Things Done MethodeJens Oberender
 
Grundlagen Kooperativer Anonymität
Grundlagen Kooperativer AnonymitätGrundlagen Kooperativer Anonymität
Grundlagen Kooperativer AnonymitätJens Oberender
 
Widerstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von AnonymisierungsnetzenWiderstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von AnonymisierungsnetzenJens Oberender
 
Verlustbehaftete Komprimierung
Verlustbehaftete KomprimierungVerlustbehaftete Komprimierung
Verlustbehaftete KomprimierungJens Oberender
 
On the Design Dilemma in Dining Cryptographer Networks
On the Design Dilemma in Dining Cryptographer NetworksOn the Design Dilemma in Dining Cryptographer Networks
On the Design Dilemma in Dining Cryptographer NetworksJens Oberender
 
Denial Of Service Flooding Detection In Anonymity Networks
Denial Of Service Flooding Detection In Anonymity NetworksDenial Of Service Flooding Detection In Anonymity Networks
Denial Of Service Flooding Detection In Anonymity NetworksJens Oberender
 

Más de Jens Oberender (17)

Konsumterror #BCBN20 Barcamp Sessopn
Konsumterror #BCBN20 Barcamp SessopnKonsumterror #BCBN20 Barcamp Sessopn
Konsumterror #BCBN20 Barcamp Sessopn
 
Erfahrungsbericht als Area Governor bei Toastmasters International
Erfahrungsbericht als Area Governor bei Toastmasters InternationalErfahrungsbericht als Area Governor bei Toastmasters International
Erfahrungsbericht als Area Governor bei Toastmasters International
 
Smartphone Applications - Common Criteria is going Mobile
Smartphone Applications - Common Criteria is going MobileSmartphone Applications - Common Criteria is going Mobile
Smartphone Applications - Common Criteria is going Mobile
 
Pitch Your Project and Vision – Zielgerichtete Kommunikation
Pitch Your Project and Vision – Zielgerichtete KommunikationPitch Your Project and Vision – Zielgerichtete Kommunikation
Pitch Your Project and Vision – Zielgerichtete Kommunikation
 
Konzeptbotschafter: The Elevator Pitch
Konzeptbotschafter: The Elevator PitchKonzeptbotschafter: The Elevator Pitch
Konzeptbotschafter: The Elevator Pitch
 
Schlipsträger werden - Sinnsuche zum Berufseinstieg
Schlipsträger werden - Sinnsuche zum BerufseinstiegSchlipsträger werden - Sinnsuche zum Berufseinstieg
Schlipsträger werden - Sinnsuche zum Berufseinstieg
 
Überblick Common Criteria
Überblick Common CriteriaÜberblick Common Criteria
Überblick Common Criteria
 
Grundlagen kooperativer Anonymisierungsnetze
Grundlagen kooperativer AnonymisierungsnetzeGrundlagen kooperativer Anonymisierungsnetze
Grundlagen kooperativer Anonymisierungsnetze
 
Widerstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von AnonymisierungsnetzenWiderstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von Anonymisierungsnetzen
 
Getting Things Done (GfA Präsentation)
Getting Things Done (GfA Präsentation)Getting Things Done (GfA Präsentation)
Getting Things Done (GfA Präsentation)
 
Riding the Flow - Wissenarbeit nach der Getting Things Done Methode
Riding the Flow - Wissenarbeit nach der Getting Things Done MethodeRiding the Flow - Wissenarbeit nach der Getting Things Done Methode
Riding the Flow - Wissenarbeit nach der Getting Things Done Methode
 
Grundlagen Kooperativer Anonymität
Grundlagen Kooperativer AnonymitätGrundlagen Kooperativer Anonymität
Grundlagen Kooperativer Anonymität
 
Widerstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von AnonymisierungsnetzenWiderstandsfähigkeit von Anonymisierungsnetzen
Widerstandsfähigkeit von Anonymisierungsnetzen
 
Verlustbehaftete Komprimierung
Verlustbehaftete KomprimierungVerlustbehaftete Komprimierung
Verlustbehaftete Komprimierung
 
Peer-to-Peer Security
Peer-to-Peer SecurityPeer-to-Peer Security
Peer-to-Peer Security
 
On the Design Dilemma in Dining Cryptographer Networks
On the Design Dilemma in Dining Cryptographer NetworksOn the Design Dilemma in Dining Cryptographer Networks
On the Design Dilemma in Dining Cryptographer Networks
 
Denial Of Service Flooding Detection In Anonymity Networks
Denial Of Service Flooding Detection In Anonymity NetworksDenial Of Service Flooding Detection In Anonymity Networks
Denial Of Service Flooding Detection In Anonymity Networks
 

Último

Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Último (20)

Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

Routing Algorithm for Multi-Path Hop-By-Hop Routing

  • 1. Routing in the Next Generation Internet Algorithmus for Multi-Path Hop-By-Hop Routing Diplomand: Jens Oberender Betreuer: Claus Gruber/LKN.TUM Erst-Gutachter: Prof. Brandenburg/TI.Uni Passau Zweit-Gutachter: Prof. Eberspächer/LKN.TUM
  • 2. HammockSet Representation • Undirected Graph – equal to any destination • Node Sequence – implies edge direction • Implementation – Graph: nodes store connected edges • Array[NodeID->SortedHeap[NodeID]] – HammockSet: supports sequence requests with hash table • Array[Pos->NodeID] • HashMap[NodeID->Pos] • Operations – Test if (x,y) is covered by sequence O(1) – Reverse Convex Hull (x) O(n) 2
  • 3. Construction Overview • Create node sequences for each destination – Phase 1: Based on Bandwidth Ratings – Phase 2: Based on Estimated Traffic • Choose Shared-Reserve-Link • Set Edge Direction i n o j k • Generate HammockSets e c a p g l h m f b d [ i=j g f ] [ h c b a d n l k o p m ] • Phase 3: search&re-route high load links • Phase 4: traffic planning 3
  • 4. Avoid HammockSet Symmetry • Set edge direction is based on – Link Capacity measures available bandwidth for all HammockSets together start with (2*C/n) assuming both directions are used – Diversity of Link Capacity failure on 1:1 bandwidth: 200% traffic failure on 1:10 bandwidth: 1100% traffic – Number of Links three and more links can handle failures better – preferred position: in middle of sequence and near to neighbor nodes – Traffic Demands only available for direct traffic, transferring demands depend on succeeding nodes • Bad routing effects, if HammockSets have high symmetry failure reaction is similar for all HammockSets – extensive increasing load on backup links ⇒ Algorithm decisions should be 4 relatively independent to constant characteristics
  • 5. Generate Sequence Order • Algorithm: choose one out of the “border” nodes • HammockSets that provide good bandwith after maximum failure also perform well in normal mode ⇒ Selection criteria: bandwidth after failure Find Maximum node by first argument, if equal by second. func rating (Node k, Neighbors N, Sequence S) E := edges from candidate to N cup S if (count(E) < 2) break; // Capacity after maximum failure D := ( C(Ef) | C(f)=max C(e) ) return { D, C(E) } 5 endfunc
  • 6. i Provide second outlink to neighbors j 0 Scenario: 1 00 e g • HammockSet but neighbors created ToDo’s: 1000 10 0 • construct S-R-Link 0 – Which neighbor component should get a SRL? f 1000 – Capacity remains unused during normal Operation – Direct two links should provide medium to high capacity, since they carry all load – Choose nodes with fewest incoming links • direct remaining edges – From several options, choose least crowded one 6 – Avoid long chains that increase packet running time
  • 7. Criteria for SRL selection • (Estimated) Traffic distribution available always significantly differs from acceptable distribution • Sum up all traffic demands on convex hull is independent of distribution shows traffic likely proportional to #incoming edges func maxinData (node k) H := convex hull (k) over reverse edges return (sum M[H,t]) / C(k,t) endfunc 7
  • 8. Neighbor Nodes Convex Hulls n n i i e e j o j o a f a f g g b k b k c c d p d p h l h l m m n n i i e e j o j o a f a f g g b k b k c c d p d p h l h l 8 m m
  • 9. How to optimize HammockSets • Objective: provide a set of HammockSets, that can handle given traffic demands • Use traffic estimation information with bandwidth-balanced quotes • Each link has two directions, optimal: both occur even often for destinations • What could change the actual load on a link? Depends on the role in this HammockSet – Fixed as a Neighbor – Node sequence may be rearranged 9
  • 10. Bottleneck Detection • If bottlenecks are obvious, list all HammockSet-Sequences that include this edge • Examine whether few changed sequence could resolve bottleneck whithout generating new ones 10
  • 11. High load on directed edge (x→y) • Pick destination HammockSets with sequences that include the (x→y) edge → • Edge-Characteristics – TrafficMatrix (x->>t), (y->>t) – Current traffic on (x->y) – Remaining traffic (x->>t x->y) y y x x 11 [ A y B x C ] [ A B x y C ]
  • 12. Change Sequence Order • Alter one HammockSet having low (traffic(x,y)-traffic(y,x)) • Sequence change should not heavily influence other edges (already processed ones) 12
  • 13. Change the point-of-view • HammockSet-centered optimization HammockSets – What happens in case of link failure? (impl) – Calculate Normal and Backup Capacity edges (impl) – Can the network flow be distributed evenly? HammockSets • Edge-centered optimization – What edges carry heavy load? edges – Is the HammockSet generation independent enough of the network structure? – Generate Scenarios and sample data 13
  • 14. Objective Implementation • Is there any need to restructure heuristic-generated HammockSets? Find a network type where heuristic fails • What capacity must be reserved for failure occurrence? • Flow Benchmarking 14