950 likes | 1.2k Vues
This course, led by Prof. Yuval Shavitt, delves into the essential principles of communication networks. Students will learn about the structure and performance of the Internet, routing protocols (RIP, OSPF, BGP), and foundational theories in probability and graph theory. The syllabus covers topic areas such as measurement optimization, switching techniques, and various routing algorithms. A significant component includes hands-on projects and home assignments to reinforce learning concepts. Classes are held weekly with designated office hours for additional student support.
E N D
Principles in Communication Networks • Instructor: Prof. Yuval Shavitt, • Office hours: room 303 s/w eng. bldg., Sun12:00-13:00 • Prerequisites (דרישות קדם): • Introduction to computer communications (TAU, Technion, BGU) • Expectations from students: • probability • Queueing theory basics • Graph theory
Course Syllabus (tentative) • Internet structure • Internet measurements • Measurement optimization • Measurement analysis • Introduction to switching, router types • Use of Gen. Func.: HOL analysis, TCP analysis. • Matching algorithms and their analysis • CLOS networks: non-blocking theorem, routing algorithms and their analysis • Scheduling algorithms
Grade composition • Final exam – 60% • Project – 30% (Magen) • Home assignments (2-3) - 10%
Routing in the Internet Routing in the Internet is done in three levels: • In LANs in the MAC layer: • Spanning tree protocol for Ethernet Transparent bridge. • Source routing for token rings • Inside autonomous systems (ASes): • RIP, OSPF, IS-IS, (E)IGRP • Between ASes: • BGP
… the administration of an AS appears to other ASes to have a single coherent interior routing plan and presents a consistent picture of what networks are reachable through it. RFC 1930: Guidelines for creation, selection, and registration of an Autonomous System Autonomous Systems • Autonomous Routing Domains: A collection of physical networks glued together using IP, that have a unified administrative routing policy. • An AS is an autonomous routing domain that has been assigned a number.
Intra-AS and Inter-AS Routing 1.2 3.1 1 2.1 2 2.2 1 2 4 1 3 2 3 3 1 4 3 Both Inter-AS and intra-AS are used to create the routing tables 2
Intra-AS and Inter-AS Routing 1.2 3.1 1 2.1 2 2.2 1 2 4 1 3 2 3 3 1 4 3 2
Why different Intra- and Inter-AS routing ? • Policy: • Inter-AS: admin wants control over how its traffic routed, who routes through its net. • Intra-AS: single admin, so no policy decisions needed • Scale: • hierarchical routing saves table size, reduced update traffic • Performance: • Intra-AS: can focus on performance • Inter-AS: policy may dominate over performance
RIPRouting Information Protocol • A Distance Vector protocol • Based on routed in 4.3 BSD UNIX • Distance metric: minimum hop • Max hop = 15 • Distance vectors were exchanged every 30 seconds – advertisements • Each advertisements route to up to 25 dest networks
RIP: Link Failure and Recovery • If no advertisement heard for 180 Sec – link declared dead • Route via neighbor invalidated • new advertisements sent to neighbors • neighbors in turn send out new advertisements (if tables changed) • link failure info quickly propagates to entire net • poison reverse used to prevent ping-pong loops (infinite distance = 16 hops)
Split Horizon Split Horizon: a node omit from the advertisement any information about destination routed on the link Split Horizon with Poisonous Reverse: All destinations are includes in the message, distance to those routed on the link are set to • Immediately kill two-hop loops
RIP-2 • Standardized in the 1990s • Added authentication • RIPng – added support for IPv6
Other DV Algorithms • IGRP and EIGRP included many improvements • Support for multiple metrics • bandwidth, delay, load, MTU, and reliability. • EIGRP: included the DUAL algorithm to prevent transient loops
OSPFOpen Shortest Path First • Open – publically available • A link state algorithm • Route computation using Dijkstra’s algorithm • OSPF advertisement carries one entry per neighbor router • Advertisements disseminated to entire AS (via flooding)
OSPF Features • Security: all OSPF messages authenticated (to prevent malicious intrusion); TCP connections used • Multiple same-cost paths allowed • For each link, multiple cost metrics for different ToS (e.g., satellite link cost set “low” for best effort; high for real time) • Integrated uni- and multicast support: • Multicast OSPF (MOSPF) uses same topology data base as OSPF • Hierarchical OSPF in large domains.
Hierarchical OSPF backbone Area 1 Area 3 Boundary router Area border router Backbone router Internal router Area 2
Hierarchical OSPF • Two-level hierarchy: local area, backbone. • Link-state advertisements only in area • each nodes has detailed area topology; only know direction (shortest path) to nets in other areas. • Area border routers:“summarize” distances to nets in own area, advertise to other Area Border routers. • Backbone routers: run OSPF routing limited to backbone. • Boundary routers: connect to other ASes.
IS-ISIntermediate System to Intermediate System • A link state protocol • Developed in parallel to OSPF • Very similar to OSPF • Tend to use less messages thus scales better to large networks • ISP grade
BGP • BGP (Border Gateway Protocol):the de facto standard • Path Vector protocol: • similar to Distance Vector protocol • each Border Gateway broadcast to neighbors (peers) entire path (i.e., sequence of ASs) to destination • E.g., Gateway X may sendits path to dest. Z: Path (X,Z) = X,Y1,Y2,Y3,…,Z
BGP (cont.) Suppose: gateway X send its path to peer gateway W • W may or may not select path offered by X • cost, policy (don’t route via competitors AS), loop prevention reasons. • If W selects path advertised by X, then: Path (W,Z) = W, Path (X,Z) • Note: X can control incoming traffic by controlling its route advertisements to peers: • e.g., if don’t want to route traffic to Z - don’t advertise any routes to Z
Why Inter-AS and Intra-AS routing? Policy: • Inter-AS: admin wants control over how its traffic routed, who routes through its net. • Intra-AS: single admin, so no policy decisions needed Scale: • hierarchical routing saves table size, reduced update traffic Performance: • Intra-AS: can focus on performance • Inter-AS: policy may dominate over performance
AS Type of Relationships (ToR) Relationship between a pair of ASes: • customer-to-provider relationship • provider-to-customer relationship • peer-to-peer relationship • E.g., Level3 and AT&T • sibling-to-sibling relationship
× × × × × × × × × × × × × × × × Valley Free Routing • If all ASes set their export policies according to the BGP export rules, then an AS path in any BGP routing table entry is valley-free
A View of the AS Hierarchy Provider - customer
A View of the AS Hierarchy No transitivity No SP concatenation Provider - customer Data path
A View of the AS Hierarchy Provider - customer Data path Peer to peer
Remarks • Since AS connectivity is not always published, certainly ToR is not published • While revealing connectivity is not trivial, revealing ToR is very hard.
How are routers connected? • Why should we care? • While communication protocols will work correctly on ANY topology • ….they may not be efficient for some topologies • Knowledge of the topology can aid in optimizing protocols
The Internet as a graph • Remember: the Internet is a collection of networks called autonomous systems (ASs) • The Internet graph: • The AS graph • Nodes: ASs, links: AS peering • The router level graph • Nodes: routers, links: fibers, cables, MW channels, etc. • There are mid-level aggregation schemes • PoP topologies, city topologies • How does it looks like?
Poisson distribution Random graphs in Mathematics The Erdös-Rényi model • Generation: • create n nodes. • each possible link is added with probability p. • Number of links: np • If we want to keep the number of links linear, what happen to p as n?
The Waxman model • Integrating distance with the E-R model • Generation • Spread n nodes on a large enough grid. • Pick a link uar and add it with prob. that exponentially decrease with its length • Stop if enough links • Heavily used in the 90s
100 90 80 70 60 50 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100
The Faloutsos brothers Measured the Internet AS and router graphs. Mine, she looks different! Notre Dame Looked at complex system graphs: social relationship, actors, neurons, WWW Suggested a dynamic generation model 1999
The Faloutsos Graph1995 Internet router topology3888 nodes, 5012 edges, <k>=2.57
25 2212 SCIENCE CITATION INDEX Nodes: papers Links: citations Witten-Sander PRL 1981 1736 PRL papers (1988) P(k) ~k- ( = 3) (S. Redner, 1998)
Sex-web Nodes: people (Females; Males) Links: sexual relationships 4781 Swedes; 18-74; 59% response rate. Liljeros et al. Nature 2001
(2) The attachment is NOT uniform. A node is linked with higher probability to a node that already has a large number of links. Examples : WWW : new documents link to well known sites (CNN, YAHOO, NewYork Times, etc) Citation : well cited papers are more likely to be cited again SCALE-FREE NETWORKS (1) The number of nodes (N) is NOT fixed. Networks continuously expand by the addition of new nodes Examples: WWW : addition of new documents Citation : publication of new papers
Scale-free model P(k) ~k-3 (1)GROWTH: At every timestep we add a new node with m edges (connected to the nodes already present in the system). (2)PREFERENTIAL ATTACHMENT :The probability Π that a new node will be connected to node i depends on the connectivity ki of that node A.-L.Barabási, R. Albert, Science 286, 509 (1999)
Back to the Internet • Understanding its structure and dynamics • help applications (WWW, file sharing) • help improving routing • predict Internet growth • So lets look at the data….
…Data? • The Internet is an engineered system, so someone must know how it is built, no? • NO! It is an uncoordinated interconnection of Autonomous Systems (ASes=networks). • No central database about Internet structure. • Several projects attempt to reveal the structure: Skitter, RouteViews, …
The Internet Structure routers
The Internet Structure The AS graph