The document discusses routing protocols in IP networks and interdomain routing. It provides an overview of IPv6 neighbor discovery, routing protocols RIP and OSPF, and interdomain routing with BGP. Key concepts covered include how routers discover each other on the local link, distance vector and link-state routing, using areas in OSPF, and the path vector exchange in BGP to choose optimal routes between autonomous systems.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Presentation given at MPLS+SDN+NFVWORLD 2019 in Paris that shows how network architects can leverage the support for IPv6 Segment that is included in the Linux kernel to develop new end-to-end services that use IPv6 Segment Routing on clients, routers and servers.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Part 10 : Routing in IP networks and interdomain routing with BGPOlivier Bonaventure
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Presentation given at MPLS+SDN+NFVWORLD 2019 in Paris that shows how network architects can leverage the support for IPv6 Segment that is included in the Linux kernel to develop new end-to-end services that use IPv6 Segment Routing on clients, routers and servers.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Part 10 : Routing in IP networks and interdomain routing with BGPOlivier Bonaventure
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
These slides summarise the 0-RTT converters that were proposed in the IETF MPTCP working group to aid the deployment of Multipath TCP. Additional details are available in https://www.ietf.org/internet-drafts/draft-bonaventure-mptcp-converters-01.txt
Keynote given at DRCN2018, shows that innovation is back in the transport and network layer with a description of Multipath TCP, QUIC and IPv6 Segment Routing.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
The Transmission Control Protocol (TCP) is used by the vast majority of applications to transport their data reliably across the Internet and in the cloud. TCP was designed in the 1970s and has slowly evolved since then. Today's networks are multipath: mobile devices have multiple wireless interfaces, datacenters have many redundant paths between servers, and multihoming has become the norm for big server farms. Meanwhile, TCP is essentially a single-path protocol: when a TCP connection is established, the connection is bound to the IP addresses of the two communicating hosts and these cannot change. Multipath TCP (MPTCP) is a major modification to TCP that allows multiple paths to be used simultaneously by a single transport connection. Multipath TCP circumvents the issues mentioned above and several others that affect TCP. The IETF is currently finalising the Multipath TCP RFC and an implementation in the Linux kernel is available today.
This tutorial will present in details the design of Multipath TCP and the role that it could play in cloud environments. We will start with a presentation of the current Internet landscape and explain how various types of middleboxes have influenced the design of Multipath TCP. Second we will describe in details the connection establishment and release procedures as well as the data transfer mechanisms that are specific to Multipath TCP. We will then discuss several use cases for the deployment of Multipath TCP including improving the performance of datacenters and
mobile WiFi offloading on smartphones. All these use cases are key when both accessing cloud-based services or when providing them. We will end the tutorial with some open research issues.
This tutorial was given at the IEEE Cloud'Net 2012 conference in novembrer 2012.
The pptx version containing animations that are not shown here is available from http://www.multipath-tcp.org
Part 5 : Sharing resources, security principles and protocolsOlivier Bonaventure
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Unicast Routing Protocols:RIP, OSPF, and BGP
Objectives
Upon completion you will be able to:
Distinguish between intra and interdomain routing
Understand distance vector routing and RIP
Understand link state routing and OSPF
Understand path vector routing and BGP
14.1 INTRA- AND INTERDOMAIN ROUTING
Routing inside an autonomous system is referred to as intradomain routing. Routing between autonomous systems is referred to as interdomain routing.
How do we get datagrams to the right physical host?
Tricky part comes when a router is forwarding to a LAN with multiple hosts (which is typically the case)
IP datagrams contain an IP address
Configured in OS
NIC’s only understand addressing of their particular network
Ethernet’s 48 bit MAC addresses
Beyond TCP: The evolution of Internet transport protocolsOlivier Bonaventure
The transport layer is one of the key layers of the Internet protocol stack. It enrichs the network layer service to make it suitable for applications. Almost 40 years after its initial design, TCP remains the most widely used transport protocol. In the early 2000s, SCTP was proposed as an alternative to TCP. Despite a clean and extensible design and many useful features, it did not reach wide deployment. This failure is mainly caused by middleboxes. We'll describe their operation and explain why Multipath TCP, which is a backward compatible evolution to TCP, has better chances of being deployed. We'll explain the main principles behind Multipath TCP and the lessons that can be drawn from its design. We'll then analyse why Internet giants like Google and Microsoft now consider application-layer solutions like QUIC to replace standard protocols like TCP.
These slides summarise the 0-RTT converters that were proposed in the IETF MPTCP working group to aid the deployment of Multipath TCP. Additional details are available in https://www.ietf.org/internet-drafts/draft-bonaventure-mptcp-converters-01.txt
Keynote given at DRCN2018, shows that innovation is back in the transport and network layer with a description of Multipath TCP, QUIC and IPv6 Segment Routing.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
The Transmission Control Protocol (TCP) is used by the vast majority of applications to transport their data reliably across the Internet and in the cloud. TCP was designed in the 1970s and has slowly evolved since then. Today's networks are multipath: mobile devices have multiple wireless interfaces, datacenters have many redundant paths between servers, and multihoming has become the norm for big server farms. Meanwhile, TCP is essentially a single-path protocol: when a TCP connection is established, the connection is bound to the IP addresses of the two communicating hosts and these cannot change. Multipath TCP (MPTCP) is a major modification to TCP that allows multiple paths to be used simultaneously by a single transport connection. Multipath TCP circumvents the issues mentioned above and several others that affect TCP. The IETF is currently finalising the Multipath TCP RFC and an implementation in the Linux kernel is available today.
This tutorial will present in details the design of Multipath TCP and the role that it could play in cloud environments. We will start with a presentation of the current Internet landscape and explain how various types of middleboxes have influenced the design of Multipath TCP. Second we will describe in details the connection establishment and release procedures as well as the data transfer mechanisms that are specific to Multipath TCP. We will then discuss several use cases for the deployment of Multipath TCP including improving the performance of datacenters and
mobile WiFi offloading on smartphones. All these use cases are key when both accessing cloud-based services or when providing them. We will end the tutorial with some open research issues.
This tutorial was given at the IEEE Cloud'Net 2012 conference in novembrer 2012.
The pptx version containing animations that are not shown here is available from http://www.multipath-tcp.org
Part 5 : Sharing resources, security principles and protocolsOlivier Bonaventure
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Unicast Routing Protocols:RIP, OSPF, and BGP
Objectives
Upon completion you will be able to:
Distinguish between intra and interdomain routing
Understand distance vector routing and RIP
Understand link state routing and OSPF
Understand path vector routing and BGP
14.1 INTRA- AND INTERDOMAIN ROUTING
Routing inside an autonomous system is referred to as intradomain routing. Routing between autonomous systems is referred to as interdomain routing.
How do we get datagrams to the right physical host?
Tricky part comes when a router is forwarding to a LAN with multiple hosts (which is typically the case)
IP datagrams contain an IP address
Configured in OS
NIC’s only understand addressing of their particular network
Ethernet’s 48 bit MAC addresses
Beyond TCP: The evolution of Internet transport protocolsOlivier Bonaventure
The transport layer is one of the key layers of the Internet protocol stack. It enrichs the network layer service to make it suitable for applications. Almost 40 years after its initial design, TCP remains the most widely used transport protocol. In the early 2000s, SCTP was proposed as an alternative to TCP. Despite a clean and extensible design and many useful features, it did not reach wide deployment. This failure is mainly caused by middleboxes. We'll describe their operation and explain why Multipath TCP, which is a backward compatible evolution to TCP, has better chances of being deployed. We'll explain the main principles behind Multipath TCP and the lessons that can be drawn from its design. We'll then analyse why Internet giants like Google and Microsoft now consider application-layer solutions like QUIC to replace standard protocols like TCP.
These slides describe some of the Open Education Resources that I have developed with many students and colleagues over a decade. It provides pointers to some of these ressources.
IPv6 Segment Routing is a major IPv6 extension that provides a modern version of source routing that is currently being developed within the Internet Engineering Task Force (IETF). We propose the first open-source implementation of IPv6 Segment Routing in the Linux kernel. We first describe it in details and explain how it can be used on both endhosts and routers. We then evaluate and compare its performance with plain IPv6 packet forwarding in a lab environment. Our measurements indicate that the performance penalty of inserting IPv6 Segment Routing Headers or encapsulat- ing packets is limited to less than 15%. On the other hand, the optional HMAC security feature of IPv6 Segment Routing is costly in a pure software implementation. Since our implementation has been included in the official Linux 4.10 kernel, we expect that it will be extended by other researchers for new use cases.
Presented at ANRW'17 https://irtf.org/anrw/2017/program.html on behalf of David Lebrun
Fourth lesson of the Computer Networking class. Covers reliable transport principles and the introduction for sharing resources (MAC and congestion control)
Internet Protocol version 6 (IPv6) is what you are going to discover onwards. Here, you will get format, features and related required information of IPv6 addresses and its related protocols.
Module 4: Configuring and Troubleshooting IPv6 TCP/IP
This module introduces you to IPv6, a technology that will help ensure that the Internet can support a growing user base and the increasingly large number of IP-enabled devices. The current Internet Protocol Version 4 (IPv4) has served as the underlying Internet protocol for almost thirty years. Its robustness, scalability, and limited feature set is now challenged by the growing need for new IP addresses, due in large part to the rapid growth of new network-aware devices.
Lessons
Overview of IPv6
IPv6 Addressing
Coexistence with IPv6
IPv6 Transition Technologies
Transitioning from IPv4 to IPv6
Lab : Configuring an ISATAP Router
Configuring a New IPv6 Network and Client
Configuring an ISATAP Router to Enable Communication Between an IPv4 Network and an IPv6 Network
Lab : Converting the Network to Native IPv6
Transitioning to a Native IPv6 Network
After completing this module, students will be able to:
Describe the features and benefits of IPv6.
Implement IPv6 addressing.
Implement an IPv6 coexistence strategy.
Describe and select a suitable IPv6 transition solution.
Transition from IPv4 to IPv6.
Troubleshoot an IPv6-based network.
8-Lect_8 Addressing the Network.tcp.pptxZahouAmel1
Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing the Network.Addressing
Die monatlichen Anlässe in Zusammenarbeit mit dem Swiss IPv6 Council behandeln verschiedene technische Themenbereiche von IPv6.
Das Referat von Jen Linkova vom 30. November 2015 widmete sich dem Neighbor Discovery Protokoll, einem Schlüsselmechanismus um Verbindungen zwischen IPv6 Knotenpunkten und LANs aufzubauen. Die Referentin fokussierte sich in der Präsentation auf die technischen Details des Designs, der Implementierung sowie Sicherheitsaspekten.
Gerne stellen wir Ihnen die Präsentation zum Anschauen und Herunterladen zur Verfügung. Haben Sie Feedback zum Event? Wir sind gespannt auf Ihre Meinung.
I walk through What is BGP, Why BGP and BGP Attributes, Path Selection, Use Case of BGP, iBGP, eBGP, CCNP Routing, Multi Homing
What is BGP?
Why BGP?
BGP Peer Relationships
Configuration of BGP
BGP attributes and Path Selection
BGP use cases
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Cosmetic shop management system project report.pdfKamal Acharya
Buying new cosmetic products is difficult. It can even be scary for those who have sensitive skin and are prone to skin trouble. The information needed to alleviate this problem is on the back of each product, but it's thought to interpret those ingredient lists unless you have a background in chemistry.
Instead of buying and hoping for the best, we can use data science to help us predict which products may be good fits for us. It includes various function programs to do the above mentioned tasks.
Data file handling has been effectively used in the program.
The automated cosmetic shop management system should deal with the automation of general workflow and administration process of the shop. The main processes of the system focus on customer's request where the system is able to search the most appropriate products and deliver it to the customers. It should help the employees to quickly identify the list of cosmetic product that have reached the minimum quantity and also keep a track of expired date for each cosmetic product. It should help the employees to find the rack number in which the product is placed.It is also Faster and more efficient way.
Vaccine management system project report documentation..pdfKamal Acharya
The Division of Vaccine and Immunization is facing increasing difficulty monitoring vaccines and other commodities distribution once they have been distributed from the national stores. With the introduction of new vaccines, more challenges have been anticipated with this additions posing serious threat to the already over strained vaccine supply chain system in Kenya.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Saudi Arabia stands as a titan in the global energy landscape, renowned for its abundant oil and gas resources. It's the largest exporter of petroleum and holds some of the world's most significant reserves. Let's delve into the top 10 oil and gas projects shaping Saudi Arabia's energy future in 2024.
Welcome to WIPAC Monthly the magazine brought to you by the LinkedIn Group Water Industry Process Automation & Control.
In this month's edition, along with this month's industry news to celebrate the 13 years since the group was created we have articles including
A case study of the used of Advanced Process Control at the Wastewater Treatment works at Lleida in Spain
A look back on an article on smart wastewater networks in order to see how the industry has measured up in the interim around the adoption of Digital Transformation in the Water Industry.
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Dr.Costas Sachpazis
Terzaghi's soil bearing capacity theory, developed by Karl Terzaghi, is a fundamental principle in geotechnical engineering used to determine the bearing capacity of shallow foundations. This theory provides a method to calculate the ultimate bearing capacity of soil, which is the maximum load per unit area that the soil can support without undergoing shear failure. The Calculation HTML Code included.
Final project report on grocery store management system..pdfKamal Acharya
In today’s fast-changing business environment, it’s extremely important to be able to respond to client needs in the most effective and timely manner. If your customers wish to see your business online and have instant access to your products or services.
Online Grocery Store is an e-commerce website, which retails various grocery products. This project allows viewing various products available enables registered users to purchase desired products instantly using Paytm, UPI payment processor (Instant Pay) and also can place order by using Cash on Delivery (Pay Later) option. This project provides an easy access to Administrators and Managers to view orders placed using Pay Later and Instant Pay options.
In order to develop an e-commerce website, a number of Technologies must be studied and understood. These include multi-tiered architecture, server and client-side scripting techniques, implementation technologies, programming language (such as PHP, HTML, CSS, JavaScript) and MySQL relational databases. This is a project with the objective to develop a basic website where a consumer is provided with a shopping cart website and also to know about the technologies used to develop such a website.
This document will discuss each of the underlying technologies to create and implement an e- commerce website.
Courier management system project report.pdfKamal Acharya
It is now-a-days very important for the people to send or receive articles like imported furniture, electronic items, gifts, business goods and the like. People depend vastly on different transport systems which mostly use the manual way of receiving and delivering the articles. There is no way to track the articles till they are received and there is no way to let the customer know what happened in transit, once he booked some articles. In such a situation, we need a system which completely computerizes the cargo activities including time to time tracking of the articles sent. This need is fulfilled by Courier Management System software which is online software for the cargo management people that enables them to receive the goods from a source and send them to a required destination and track their status from time to time.
2. Agenda
• Routing in IP networks
• IPv6 subnets
• Routing organisation
• RIP
• OSPF
• Interdomain routing
3. Neighbour discovery
IPv6: 1080:0:0:0:8:A
Eth : A
1080:0:0:0:8:A wants to send a packet to 1080:0:0:0:8:C
1
2
Neighbour solicitation: Addr Eth 1080:0:0:0:8:C ? sent to IPv6 multicast address
3
IPv6: 1080:0:0:0:8:E
Eth : E
Ipv6: 1080:0:0:0:8:C
Eth : C
Ipv6: 1080:0:0:0:8:C
Eth : C
IPv6: 1080:0:0:0:8:E
Eth : E
IPv6: 1080:0:0:0:8:A
Eth : A
Ipv6: 1080:0:0:0:8:C
Neighbour advertisement: 1080:0:0:0:8:C is reachable via Ethernet Add : C
Eth : C
IPv6: 1080:0:0:0:8:E
Eth : E
IPv6: 1080:0:0:0:8:A
Eth : A
4. ICMPv6 Neighbor
Discovery
• Neighbour solicitation
Type : 135 Code:0 Checksum
The IPv6 address for which the link-layer Reserved
R : true if node is a router
S : true if answers to a neighbour solicitation
• Neighbour advertisement
Target IPv6 Address
(e.g. Ethernet) address is needed.
May also contain an optional field with the link-layer (e.g.
Ethernet) address of the sender.
Type : 136 Code:0 Checksum
R S O Reserved
Target IPv6 Address
Target link layer Address
The IPv6 and link-layer addresses
5. Router
advertisements
Ver Tclass Flow Label
58 255
Payload Length
Router IPv6 address
(link local)
FF02::1
(all nodes)
Type:134 Code : 0 Checksum
CurHLim Router lifetime
Retrans Timer
Maximum hop limit to avoid spoofed packets from
outside LAN
M O Res
Reachable Time
Options
Value of hop limit to be used by hosts when sending
IPv6 packets
The lifetime associated with the default router in units
of seconds. 0 is the router sending the advertisement
is not a default router.
The time, in milliseconds, that a node assumes a
neighbour is reachable after having received a
reachability confirmation.
The time, in milliseconds, between retransmitted
Neighbor Solicitation messages.
MTU to be used on the LAN
Prefixes to be used on the LAN
6. RA options
• Format of the options
• MTU option
• Prefix option
Type Length Options
Options (cont.)
Type : 5 Length:1 Reserved
MTU
Type : 3 Length:4 PreLen L A Res.
Valid Lifetime
Preferred Lifetime
Reserved2
IPv6 prefix
Number of bits in IPv6 prefix that identify subnet
The validity period of the prefix in seconds
The duration in seconds that addresses generated from
the prefix via stateless address autoconfiguration remain
preferred.
7. Autoconfiguration
• What happens when an endsystem boots ?
ICMPv6 : Neighbour Solicitation
Sent to multicast address
Is someone using IPv6 address :
FE80::M64(800:200C:417A) ?
• Use Link-local IPv6 address (FE80::/64)
• Each host, has a link-local IPv6 address
• But another node might have chosen the
same address !
R
Ethernet : 0800:200C:417A
FE80::M64(800:200C:417A)
Address is valid if nobody answers
8. Global IPv6 address
• How to obtain the IPv6 prefix of the subnet ?
• Wait for router advertisements
• Solicit router advertisement
R
ICMPv6 : Router Solicitation
IPv6 Src: FE80::M64(800:200C:417A)
Ethernet : 0800:200C:417A IPv6 Dest: FF02::2
FE80::M64(800:200C:417A)
9. Global IPv6 address
• IPv6 addresses are allocated for limited
lifetime
• This allows IPv6 to easily support
renumbering
R
ICMPv6 : Router Advertisement
IPv6 Src: FE80::M64(EthernetR)
IPv6 Dest: FF02::1
IPv6 Prefix = 2001:6a8:1100::/48
Prefix lifetime
Ethernet : 0800:200C:417A
FE80::M64(800:200C:417A)
10. Privacy issues
• Autoconfigured IPv6 addresses contain
the MAC address of the hosts
• How to maintain privacy with IPv6 ?
• Use DHCPv6 and never reallocate the
same IPv6 address
• Allow hosts to use random host ids
• algorithms have been implemented to
generate such random host ids on
nodes with and without stable storage
12. Agenda
• IPv6
• Routing in IP networks
• IPv6 subnets
• RIP
• OSPF
13. RIP
• Distance vector
• default period : 30 seconds (with jitter)
• distance vector is multicasted in UDP
message to all RIP routers in local subnets
• Optional extension :
• send distance vector after each change
• but some links flaps...
• send distance vector if routing table
changed and did not send another
vector within the last 5 seconds
14. RIP : message format
• RIP messages are sent over UDP
• port 520
17. OSPF
• Standard link-state routing protocol for
TCP/IP architecture
• Builds upon link-state routing with
some extensions
• Hierarchical routing with areas
• Designated routers on subnets
• Equal Cost Multipath
18. OSPF
• Operation
• HELLO packets to discover neighbours
• Update of routing tables
• Link state packets
• acknowledgements, sequence
numbers, age
• periodic transmission/ link changes
• Database description
• Link state Request
• used when a router boots to request link
state packets from neighbours
19. OSPF details
R R R R
2001:db8:1::A/48 2001:db8:1::B/48 2001:db8:1::C/48 2001:db8:1::D/48
2001:db8:1::C/48
2001:db8:1::B/48
2001:db8:1::A/48
2001:db8:1::D/48
20. OSPF details
(2)
R R R R
2001:db8:1::A/48 2001:db8:1::B/48 2001:db8:1::C/48 2001:db8:1::D/48
2001:db8:1::C/48
2001:db8:1::B/48
2001:db8:1::A/48
LAN
2001:db8:1::D/48
21. OSPF in large
networks
• Divide network in areas
• Backbone area : network backbone
• all routers connected to two or more areas
belong to the backbone area
• All non-backbone areas must be attached to
the backbone area
• at least one router inside each area must
be attached to the backbone
• OSPF routing must allow any router to send
packets to any other router
22. OSPF details
(4)
R1 R5
R7 R8
D E
R9 R10
C
D E
R3 R4
RA
RC
RB
Inside each non-backbone area
l Routers exchange link state packets to
distribute the topology of the area
l Routers do not know the topology of
other areas, but each router knows how
to reach the backbone area
Stub AREA 1
AREA 0
AREA 2
Inside backbone area
l Routers exchange link state packets to
distribute the topology of the backbone area
l Each router knows how to reach the other
areas and distance vectors are used to
distribute inter-area routes
24. Equal Cost Multipath
• How to use all paths without hurting
TCP performance
R3 R7
R1 R2
R4
R5
R6
R8
R9
RD
25. Agenda
• Routing in IP networks
• Interdomain routing
• Peering links
• BGP basics
26. Interdomain routing
• Goals
• Allow to transmit IP packets along the
best path towards their destination
through several transit domains while
taking into account their routing policies
of each domain without knowing their
detailed topology
• From an interdomain viewpoint, best path
often means cheapest path
• Each domain is free to specify inside its
routing policy the domains for which it
agrees to provide a transit service and
the method it uses to select the best path
to reach each destination
27. Interdomain links
• Private link
• Usually a leased line between two routers
belonging to the two connected domains
R1 R2
DomainA DomainB
28. Interconnection
exchanges
• How to efficiently connect several
domains together ?
R1
R2
R3
R4
Physical link
Interdomain link
32. Routing policies
• A domain specifies its routing policy by
defining on each BGP router two sets of filters
for each peer
• Import filter
• Specifies which routes can be accepted by
the router among all the received routes
from a given peer
• Export filter
• Specifies which routes can be advertised by
the router to a given peer
33. Routing policies
with RPSL
AS1 AS2
AS3 AS4
$
AS7
Customer-provider
$ $ $
$
Shared-cost
Import policy for AS4
Import: from AS3 accept AS3
import: from AS7 accept AS7
import: from AS1 accept ANY
import: from AS2 accept ANY
Export policy for AS4
export: to AS3 announce AS4 AS7
export: to AS7 announce ANY
export: to AS1 announce AS4 AS7
export: to AS2 announce AS4 AS7
Import policy for AS7
Import: from AS4 accept ANY
Export policy for AS4
export: to AS4 announce AS7
34. Agenda
• Routing in IP networks
• Interdomain routing
• Peering links
• BGP basics
35. Border Gateway Protocol
• Path vector protocol
• BGP router advertises its best route to each
destination
AS1 AS2
AS4
2001:db8:1/48
AS5
lprefix:2001:db8:1/48
lASPath: AS1
lprefix: 2001:db8:1/48
ASPath: ::AS2:AS4:AS1
lprefix: 2001:db8:1/48
lASPath: AS4:AS1
lprefix: 2001:db8:1/48
ASPath: AS1
• ... with incremental updates
36. BGP : Principles
• BGP relies on the
incremental exchange of path vectors
BGP session established
over
TCP connection between
peers
Each peer sends all its
active routes
As long as the BGP session
remains up
Incrementally update BGP routing
tables
AS3
R1
R2
AS4
BGP
session
BGP Msgs
37. BGP basics (2)
• 2 types of BGP messages
• UPDATE (path vector)
• advertises a route towards one prefix
• Destination address/prefix
• Interdomain path (AS-Path)
• Nexthop
• WITHDRAW
• a previously announced route is not
reachable anymore
• Unreachable destination address/prefix
38. BGP router
BGP Loc-RIB
Peer[N]
All
BGP Msgs
from Peer[N] BGP Msgs
Peer[1]
Import filter
Attribute
manipulation
Peer[N]
Peer[1]
Export filter
Attribute
manipulation
acceptable
routes
BGP Decision
Process
BGP Routing Information Base
Contains all the acceptable routes
learned from all Peers + internal routes
l BGP decision process selects
the best route towards each destination
BGP Msgs
from Peer[1]
to Peer[N]
BGP Msgs
to Peer[1]
Import filter(Peer[i])
Determines which BGM Msgs
are acceptable from Peer[i] Export filter(Peer[i])
Determines which
routes can be sent to Peer[i]
One best
route to each
destination
BGP Adj-RIB-In
BGP Adj-RIB-Out
39. Example
AS20
R2
AS30
AS10
UPDATE
lprefix: 2001:db8:12/48,
lNextHop:R1
lASPath: AS10
UPDATE
lprefix: 2001:db8:12/48,
lNextHop:R2
lASPath: AS20:AS10
R1 R3
2001:db8:12/48
BGP
R4
AS40
BGP
BGP
UPDATE
lprefix: 2001:db8:12/48,
lNextHop:R1
lASPath: AS10
UPDATE
lprefix: 2001:db8:12/48,
lNextHop:R4
lASPath: AS40:AS10
l What happens if link AS10-AS20 goes down ?
40. How to prefer some
routes over others ?
RA RB
R1
Backup: 2Mbps
Primary: 34Mbps
AS1
AS2
41. BGP router
BGP RIB
Peer[N]
Peer[1]
Import filter
Attribute
manipulation
Peer[N]
Peer[1]
Export filter
Attribute
manipulation
BGP Msgs
from Peer[N]
BGP Msgs
from Peer[1]
BGP Msgs
to Peer[N]
BGP Msgs
All
acceptable
routes
BGP Decision
Process
One best to Peer[1]
route to each
destination
Import filter
l Selection of acceptable routes
l Addition of local-pref attribute
inside received BGP Msg
lNormal quality route : local-pref=100
lBetter than normal route :local-pref=200
lWorse than normal route :local-pref=50
Simplified BGP Decision Process
l Select routes with highest
local-pref
l If there are several routes,
choose routes with the
shortest ASPath
l If there are still several routes
tie-breaking rule
42. How to prefer some
routes over others
• Limitations
RA
R1 R2
R3
RB
Cheap
Expensive
AS1
AS2
AS3
AS4
R5 AS5
43. How to prefer routes ?
RA RB
R1
Backup: 2Mbps
Primary: 34Mbps
AS1
AS2
RPSL-like policy for AS1
aut-num: AS1
import: from AS2 RA at R1 set localpref=100;
from AS2 RB at R1 set localpref=200;
accept ANY
export: to AS2 RA at R1 announce AS1
to AS2 RB at R1 announce AS1
RPSL-like policy for AS2
aut-num: AS2
import: from AS1 R1 at RA set localpref=100;
from AS1 R1 at RB set localpref=200;
accept AS1
export: to AS1 R1 at RA announce ANY
to AS2 R1 at RB announce ANY
44. How to prefer routes ?
RA
R1 R2
R3
RB
Cheap
Expensive
AS1
AS2
AS3
AS4
R5 AS5
RPSL policy for AS1
aut-num: AS1
import: from AS2 RA at R1 set localpref=100;
from AS4 R2 at R1 set localpref=200;
accept ANY
export: to AS2 RA at R1 announce AS1
to AS4 R2 at R1 announce AS1
u AS1 will prefer to send over cheap link
u But the flow of the packets destined to
AS1 will depend on the routing policy of
the other domains
45. local-pref and
economical
l In practicer, elolcaalti-oprnefsish oiftpens combined
with filters to enforce economical
relationships
Prov1 Prov2
$ $
AS1
Peer1
Peer2
Peer3
Peer4
Cust1 Cust2
$ Customer-provider
$
Shared-cost
$
Local-pref values used by AS1
> 1000 for the routes received from a Customer
500 – 999 for the routes learned from a Peer
< 500 for the routes learned from a Provider
46. local-pref
• Which route will be used by AS1 to reach AS5 ?
AS1
$
$
AS4
AS2
AS3
Shared-cost
$
$
AS5 $ Customer-provider
$
• and how will AS5 reach AS1 ?
$
AS8
AS6
AS7
$
$
Internet paths are often asymmetrical
47. Internet 1990s
• NSFNet
• American backbone
• no commercial traffic
• Some regional
networks
• US regions, national
networks in Europe
• Universities/research
labs
• connected to regional
networks or NSFNet
48. Internet early 2000s
• Tier-1 ISPs
• Dozen transit ISPs
shared-cost
• Tier-2 ISPs
• Regional/ National
ISPs
• Tier-3 ISPs
• Smaller ISPs,
Entreprises,
• shared-cost with
other T3 ISPs
49. Today’s Internet
• Hyper Giants
• google, microsoft,
yahoo, amazon, ...
• google peers 70%
ISPs
• Tier-1 ISPs
• Tier-2 ISPs
• Tier-3 ISPs
Craig Labovitz), Scott Iekel-Johnson, Danny McPher•son, JMon Oabenrhyeid ep, Faerneamr Jianhagniasn, at IXPs
Internet Inter-Domain Traffic, SIGCOMM 2010
Editor's Notes
The transmission of IPv6 packets over Ethernet is defined in :
M. Crawford, Transmission of IPv6 Packets over Ethernet Networks, RFC2464, December 1998
Note that in contrast with ARP used by IPv4, ICMPv6 neighbour solicitation messages are sent to a multicast ethernet address and not to the broadcast ethernet address. This implies that only the IPv6 enabled hosts on the LAN will receive the ICMPv6 message.
The ICMPv6 neighbour discovery messages are sent with HopLimit=255
The role of the R, S and O flags is described as follows in RFC4861
R Router flag. When set, the R-bit indicates that
the sender is a router. The R-bit is used by
Neighbor Unreachability Detection to detect a
router that changes to a host.
S Solicited flag. When set, the S-bit indicates that
the advertisement was sent in response to a
Neighbor Solicitation from the Destination address.
The S-bit is used as a reachability confirmation
for Neighbor Unreachability Detection. It MUST NOT
be set in multicast advertisements or in
unsolicited unicast advertisements.
O Override flag. When set, the O-bit indicates that
the advertisement should override an existing cache
entry and update the cached link-layer address.
When it is not set the advertisement will not
update a cached link-layer address though it will
update an existing Neighbor Cache entry for which
no link-layer address is known. It SHOULD NOT be
set in solicited advertisements for anycast
addresses and in solicited proxy advertisements.
It SHOULD be set in other solicited advertisements
and in unsolicited advertisements.
When the M bit is set to true, this indicates that IPv6 addresses should be obtained from DHCPv6
When the O bit is set to true, this indicates that the hosts can obtain additional information (e.g. address of DNS resolver) from DHCPv6
The router advertisements messages can also be sent in unicast in response to solicitations from hosts. A host can obtain a router advertisement by sending a router solicitation which is an ICMPv6 message containing only the router solicitation message (type 133).
The two L and A bits are defined as follows :
L 1-bit on-link flag. When set, indicates that this
prefix can be used for on-link determination. When
not set the advertisement makes no statement about
on-link or off-link properties of the prefix. In
other words, if the L flag is not set a host MUST
NOT conclude that an address derived from the
prefix is off-link. That is, it MUST NOT update a
previous indication that the address is on-link.
A 1-bit autonomous address-configuration flag. When
set indicates that this prefix can be used for
stateless address configuration.
Other options have been defined for the router advertisements. For example, the RDNSS option defined in
J. Jeong, S. Park, L. Beloeil, S. Madanapalli, IPv6 Router Advertisement Option for DNS Configuration, RFC 5006, Sept. 2007
allows a router to advertise the IPv6 address of the DNS resolver to be used by hosts on the LAN.
This utilisation of ICMPv6 Neighbour solicitation is called Duplicate Address Detection. It is used everytime a host obtains a new IPv6 address and is required to ensure that a hostis not using the same IPv6 address as another host on the same LAN.
IPv6 is supposed to easily support renumbering and IPv6 router advertisements are one of the ways to perform this renumbering by allowing hosts to update their IPv6 addresses upon
reception of new router advertisement messages. However, in practice renumbering an IPv6 network is not easily because IPv6 addresses are manually encoded in too many
configuration files, see e.g. :
F. Baker, E. Lear, R. Droms, Procedures for Renumbering an IPv6 Network without a Flag Day, RFC4192, 2005
This extension to support privacy-aware IPv6 addresses is defined in
T. Narten, R. Draves, S. Krishnan, Privacy Extensions for Stateless Address Autoconfiguration in IPv6, RFC4941, Sept. 2007
RFC2453 RIP Version 2. G. Malkin. November 1998
Gary Malkin, RIP : an intra-domain routing protocol, Addison-Wesley, 2002
RFC2328 OSPF Version 2. J. Moy. April 1998.
J. Moy, OSPF: Anatomy of an Internet Routing Protocol, Addison Wesley, 1998
For more information on the organization of the Internet, see :
G. Huston, Peerings and settlements, Internet Protocol Journal, Vol. 2, N1 et 2, 1999,http://www.cisco.com/warp/public/759/ipj_Volume2.html
For more information on interconnection points or Internet exchanges, see :
http://www.euro-ix.net/
http://www.ripe.net/ripe/wg/eix/index.html
http://www.ep.net/ep-main.html
On link AS7-AS4
AS7 advertises its own routes to AS4
AS4 advertises to AS7 the routes that allow to reach the entire Internet
On link AS4-AS2
AS4 advertises its own routes and the routes belonging to AS7
AS2 advertises the routes that allow to reach the entire Internet
On link AS3-AS4
AS3 advertises its internal routes
AS4 advertises its internal routes and the routes learned from AS7 (its customer)
On link AS1-AS2
AS1 advertises its internal routes and the routes received from AS3 and AS4 (its customers)
AS2 advertises its internal routes and the routes learned from AS74(its customer)
RFC 2622 Routing Policy Specification Language (RPSL). C. Alaettinoglu, C.
Villamizar, E. Gerich, D. Kessens, D. Meyer, T. Bates, D. Karrenberg,
M. Terpstra. June 1999.
RFC 2650 Using RPSL in Practice. D. Meyer, J. Schmitz, C. Orange, M.
Prior, C. Alaettinoglu. August 1999.
Internet Routing Registries contain the routing policies of various ISPs, see :
http://www.ripe.net/ripencc/pub-services/whois.html
http://www.arin.net/whois/index.html
http://www.apnic.net/apnic-bin/whois.pl
If link AS10-AS20 goes down, AS20 will not consider anymore the path learned from AS10. It will thus remove this path from its routing table and will instead select the path learned from AS40. This will force AS20 to send the following UPDATE to AS30 :
Note that in RPSL, the set localpref construct does not exist. It is replaced with action preference=x. Unfortunately, in RPSL the routes with the lowest preference are preferred. RPSL uses thus the opposite of local-pref....
This local-pref settings corresponds to the economical relationships between the various ASes.
Since AS1 is paid to carry packets towards Cust1 and Cust2, it will select a route towards those networks whenever possible.
Since AS1 does not need to pay to carry packets towards Peer1-4, AS1 will select a route towards those networks whenever possible.
AS1 will only utilize the routes receive from its providers when there is no other choice.
It is shown in the following papers that this way of utilizing the local-pref attribute leads to stable BGP routes :
Lixin Gao, Timothy G. Griffin, and Jennifer Rexford, "Inherently safe backup
routing with BGP," Proc. IEEE INFOCOM, April 2001
Lixin Gao and Jennifer Rexford, "Stable Internet routing without global
coordination," IEEE/ACM Transactions on Networking, December 2001, pp.
681-692
The RPSL policy of AS1 could be as follows :
RPSL policy for AS1
aut-num: AS1
import: from Cust1 action set localpref=200; accept Cust1
from Cust2 action set localpref=200; accept Cust2
from Peer1 action set localpref=150; accept Peer1
from Peer2 action set localpref=160; accept Peer2
from Peer3 action set localpref=170; accept Peer3
from Peer4 action set localpref=180; accept Peer4
from Prov1 action set localpref=100; accept ANY
from Prov2 action set localpref=100; accept ANY
Due to the utilization of the local-pref attribute, some paths on the Internet are longer than their optimum length, see :
Lixin Gao and Feng Wang , The Extent of AS Path Inflation by Routing Policies, GlobalInternet 2002
See :
L. Subramanian, S. Agarwal, J. Rexford, and RH Katz. Characterizing the Internet hierarchy from multiple vantage points. In IEEE INFOCOM, 2002