230 likes | 295 Views
This announcement provides an outline of upcoming paper discussions, IP protocols, subnetting concepts, addressing formats, and the basics of routing and network hierarchy within the context of computer networking.
E N D
Announcements • List hy535-list@csd.uoc.gr • Lab is still under construction • Next session we will have paper discussion, assign papers, 3x15 min presentation • first homework will be given next class
Review • IP protocol • Address formats IPv4, IPv6 • Address per interface • Subnets, network mask, prefix len • IP is connectionless, packet forwarding • Packets follow independent paths to destination • Based on destination address • DNS to allow me to use symbolic names
Network layer vs. Link Layer • Each link has also a link layer address that is technology specific • Ethernet MAC • ATM etc … • Network layer address (IP) is independent of the networking technology
Sending to the subnet • Nodes are “close” can reach them directly in layer 2 - same “broadcast domain” ! • Need to know the MAC address • Need to map IP to MAC address • ARP, cache response, broadcast • No need for any other mechanism, this is not routing • But I can not have everything in a single subnet
What is routing/router • Device with multiple ports of different networking technologies • Forward a packet between subnets • Forwarding table • Contains prefixes (and not addresses) • Device • Gateway • Longest prefix match (LPM) • Default route 0.0.0.0/0
Concept of ASes • A set of systems under the same administration • Forth-net, EDET k.o.k • Same rules, policies • Different protocols inside and among the domains • Inside is relatively small • Intra-domain • Among is massively huge… • Inter-domain
The Big picture • Multiple Ases talking to each other • PoPs • We will revisit later… • Some numbers • ASes: 23,400 • Prefixes: 214,000 • Average AS Path lengths: 3,6 • Average Prefix length: 22,3
Hierarchy, what makes it all work • Can aggregate multiple routing table entries in large ones (less specific, larger prefix) • Is convenient to allocate addresses hierarchically • Global provider, local ISPs, customers • There are some problems though: multi-homing
What is important • Scale: can have tons of prefixes • Speed: need to forward fast • Resilience to faults: some link somewhere is bound to fail • Management and misconfigurations: there are 23,400 entities that collaborate to make all this work
Some generalities about routing • Attempt to find a “good” path for the packet • In reality, I just find the best “next-hop” • Routing is packet-packet • EXAMPLE
Cost in Routing • Good can have multiple definitions • Small delay • Do not send the packet to athens through the US • Less loaded (related to delay) • Less expensive (real money) • Less cost (administrative cost) • Less hops • In practice it is least cost routing today • See example SPF: cost is set according to some recipies/rules of thumb
ECMP • May have multiple next-hops with the same cost • Why not use them all • Router will load balance • But have to be done carefully to avoid out-of-order packets • ECMP, 8 or 16 in today;s routers • EXAMPLE
Standards • The role of standards • Necessary if different boxes are to work together • Standards bodies, IETF, ISO • The role of IETF • Democratic, collaborative • Working groups • Rough consensus and working code • Requests for Comments • Standards • Proposed standards • Informational • Historical
The local view – Intra-domain routing • Link state routing • The most commonly used today • Basic concept: • Each router has a complete view of the topology of the network • Pros: simple and fast convergence • Cons: expensive to maintain reliably • Flooding • Compute SPF routes • Link state routing allows me to do much-much more
What is important • The view of each router about the network has to agree • Else routing loops • TTL will catch it • EXAMPLE
Basic Structures • Each router has • A list of neighbors • The topology database that describes the network • And the routing table
Basic Operations • Join the network • Discover neighbors • Forming adjacency • Database exchange • Monitor for faults and handle changes • Monitor neighbor’s up status • Reliable Flooding • Route Computation • Scaling • Multiple areas
OSPF • Open SPF, standard protocol today • Not the only one though IS-IS is also strong • Has all the elements: • HELLO protocol for neighbor discovery and health monitoring • Database exchange for database syn on start • Reliable flooding for propagating changes
Details • Packets sent as an IP protocol (OSPF protocol 89) • Does not use TCP/UDP etc… • 5 packet types: hello, LS-req, LS-upd, LS-ack and DD-desc • LS-* packets carry link states
What is a LS • Describes an object in the network • Router, network, external prefix • Is originated by a specific router, has an id and a sequence number • Each OSPF router has a unique router-id • Routers exchange LS through flooding, build their LS database and then compute routes • EXAMPLE • EXAMPLE for link failure
Flooding • When receiving an update send it to all your adjacencies except the one it came from • It is reliable, each LS sent must be acknowledged (with an LS-ack packet) • Can receive duplicates • Discard • It is a bit expensive
Joining an OSPF network • EXAMPLE
Route computation • Build the shortest path tree rooted at the computing node and derive the next hop information for each destination • EXAMPLE