Telecomunicazioni. Docente: Andrea Baiocchi DIET - Stanza 107, 1 piano palazzina P. Piga Via Eudossiana 18

Size: px
Start display at page:

Download "Telecomunicazioni. Docente: Andrea Baiocchi DIET - Stanza 107, 1 piano palazzina P. Piga Via Eudossiana 18"

Transcription

1 University of Roma La Sapienza Telecomunicazioni Docente: Andrea Baiocchi DIET - Stanza 07, piano palazzina P. Piga Via Eudossiana 8 andrea.baiocchi@uniroma.it Corso di Laurea in Ingegneria Gestionale a.a. 07/08 Computers Computers make it easier to do a lot of things, but most of the things they make it easier to do don't need to be done. [Andy Rooney]

2 Part of the slides are adapted from companion material of Chapter 4 (Network layer) of the book: Computer Networking: A Top Down Approach 7 th edition. by Jim Kurose and Keith Ross Pearson, 06. Outline ICMP ARP Routing algorithms Link state Distance Vector Routing in the Internet OSPF BGP The SDN control plane

3 ICMP: Internet Control Message Protocol Used by hosts & routers to communicate network-level control information error reporting: unreachable host, network, port, protocol echo request/reply (used by ping) ICMP msgs are carried in IP datagrams ICMP message: type, code, plus first 8 bytes of IP datagram causing error Type Code description 0 0 echo reply (ping) 3 0 dest network unreachable 3 dest host unreachable 3 dest protocol unreachable 3 3 dest port unreachable 3 6 dest network unknown 3 7 dest host unknown 4 0 source quench (congestion control - not used) 8 0 echo request (ping) 9 0 route advertisement 0 0 router discovery 0 TTL expired 0 bad IP header ICMP approach ICMP aim is to notify mulfunctioning to the host originating the packet that triggered malfunctioning detection. It does not specify ensuing actions. It does not locate the source of the problem e.g., intermediate system between packet origin and system detecting the error and issuing the ICMP msg Each notification ICMP message is related to a specific IP packet.

4 Traceroute Source sends series of UDP segments to dest First has TTL =, second has TTL=, etc. When n-th datagram arrives to n-th router: Router discards datagram and sends to source an ICMP message (type, code 0) Message includes name of router & IP address When ICMP message arrives, source calculates RTT Traceroute does this 3 times Stopping criterion UDP segment eventually arrives at destination host Destination returns ICMP port unreachable packet (type 3, code 3) When source gets this ICMP, stops. 3 probes 3 probes 3 probes Traceroute example traceroute: gaia.cs.umass.edu to Three delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu cs-gw ( ) ms ms ms border-rt-fa5--0.gw.umass.edu ( ) ms ms ms 3 cht-vbns.gw.umass.edu ( ) 6 ms 5 ms 5 ms 4 jn-at wor.vbns.net ( ) 6 ms ms 3 ms 5 jn-so wae.vbns.net ( ) ms 8 ms 8 ms 6 abilene-vbns.abilene.ucaid.edu ( ) ms 8 ms ms 7 nycm-wash.abilene.ucaid.edu ( ) ms ms ms ( ) 04 ms 09 ms 06 ms 9 de-.de.de.geant.net ( ) 09 ms 0 ms 04 ms 0 de.fr.fr.geant.net ( ) 3 ms ms 4 ms renater-gw.fr.fr.geant.net ( ) ms 4 ms ms nio-n.cssi.renater.fr ( ) ms 4 ms 6 ms 3 nice.cssi.renater.fr ( ) 3 ms 5 ms 4 ms 4 r3t-nice.cssi.renater.fr ( ) 6 ms 6 ms 4 ms 5 eurecom-valbonne.r3t.ft.net ( ) 35 ms 8 ms 33 ms ( ) 6 ms 8 ms 6 ms 7 * * * 8 * * * trans-oceanic link * means no response (probe lost, router not replying) 9 fantasia.eurecom.fr ( ) 3 ms 8 ms 36 ms

5 Traceroute example From my laptop, via LAN to the server next building traceroute to ( ), 64 hops max, 40 byte packets ms.58 ms.88 ms ms 4.58 ms 4.03 ms ms 4.66 ms ms ms 4.96 ms ms ms 4.3 ms 4.7 ms ms 4.6 ms.356 ms ms 9.44 ms 7.99 ms ms 8.5 ms 8.39 ms ms.5 ms.65 ms PDU e bit Trama di livello (Ethernet) che contiene un pacchetto IP, catturata da Wireshark E una sequenza di bit!!! Caratteri hex per comodità ( hex = 4 bit) 00d9d8d734009df7bb c eaec0a8cd59c0a8cd008004d a6b6c6d6e6f Header Ethernet Payload Ethernet Header Payload IP IP c0a8cd59 c0a8cd0 Header 08 00d9d8d df7bb 0800=IP 0=ICMP Payload ICMP ping request ICMP MAC MAC Protocol typeprotocol Indirizzo Indirizzo typeicmp IP IP Type Destinazione Sorgente Sorgente Destinazione

6 Outline ICMP ARP Routing algorithms Link state Distance Vector Routing in the Internet OSPF BGP The SDN control plane MAC addresses and ARP MAC (or LAN or physical or Ethernet) address: function: used locally to get frame from one interface to another physically-connected interface (same network, in IPaddressing sense) 48 bit MAC address (for most LANs) burned in NIC ROM, also sometimes software settable e.g.: A-F-BB AD hexadecimal (base 6) notation (each numeral represents 4 bits)

7 LAN addresses and ARP each adapter on LAN has unique LAN address A-F-BB AD 7-65-F7-B LAN (wired or wireless) 58-3-D7-FA-0-B0 adapter 0C-C4--6F-E3-98 LAN addresses (more) MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to assure uniqueness) MAC flat address portability can move LAN card from one LAN to another IP hierarchical address not portable address depends on IP subnet to which node is attached

8 ARP: address resolution protocol Question: how to determine interface s MAC address, knowing its IP address? F7-B LAN A-F-BB AD D7-FA-0-B0 ARP table: each IP node (host, router) on LAN has table IP/MAC address mappings for some LAN nodes: < IP address; MAC address; TTL> TTL (Time To Live): time after which address mapping will be forgotten (typically 0 min) C-C4--6F-E3-98 ARP protocol: same LAN A wants to send datagram to B B s MAC address not in A s ARP table. A broadcasts ARP query packet, containing B's IP address destination MAC address = FF- FF-FF-FF-FF-FF all nodes on LAN receive ARP query B receives ARP packet, replies to A with its (B's) MAC address frame sent to A s MAC address (unicast) A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state: information that times out (goes away) unless refreshed ARP is plug-and-play : nodes create their ARP tables without intervention from net administrator

9 ARP cache (ARP table) Updated each time an ARP request or ARP reply is read from the broadcast medium Gratuitous ARP Addressing: routing to another LAN walkthrough: send datagram from A to B via R focus on addressing at IP (datagram) and MAC layer (frame) assume A knows B s IP address assume A knows IP address of first hop router, R (how?) assume A knows R s MAC address (how?) A C-E8-FF CC-49-DE-D0-AB-7D R...0 E6-E BB-4B...0 A-3-F9-CD-06-9B B BD-D-C7-56-A B-F-54-A-0F

10 Addressing: routing to another LAN A creates IP datagram with IP source A, destination B A creates link-layer frame with R's MAC address as destination address, frame contains A-to-B IP datagram MAC src: C-E8-FF-55 MAC dest: E6-E BB-4B IP src:... IP dest:... IP Eth Phy A C-E8-FF CC-49-DE-D0-AB-7D R...0 E6-E BB-4B...0 A-3-F9-CD-06-9B B BD-D-C7-56-A B-F-54-A-0F Addressing: routing to another LAN frame sent from A to R frame received at R, datagram removed, passed up to IP MAC src: C-E8-FF-55 MAC dest: E6-E BB-4B IP src:... IP src:... IP dest:... IP dest:... IP Eth Phy A C-E8-FF CC-49-DE-D0-AB-7D IP Eth Phy R...0 E6-E BB-4B...0 A-3-F9-CD-06-9B B BD-D-C7-56-A B-F-54-A-0F

11 Addressing: routing to another LAN R forwards datagram with IP source A, destination B R creates link-layer frame with B's MAC address as destination address, frame contains A-to-B IP datagram A C-E8-FF-55 IP Eth Phy R...0 A-3-F9-CD-06-9B MAC src: A-3-F9-CD-06-9B MAC dest: 49-BD-D-C7-56-A IP src:... IP dest:... IP Eth Phy B BD-D-C7-56-A... CC-49-DE-D0-AB-7D...0 E6-E BB-4B B-F-54-A-0F Addressing: routing to another LAN R forwards datagram with IP source A, destination B R creates link-layer frame with B's MAC address as destination address, frame contains A-to-B IP datagram A C-E8-FF-55 IP Eth Phy R...0 A-3-F9-CD-06-9B MAC src: A-3-F9-CD-06-9B MAC dest: 49-BD-D-C7-56-A IP src:... IP dest:... IP Eth Phy B BD-D-C7-56-A... CC-49-DE-D0-AB-7D...0 E6-E BB-4B B-F-54-A-0F

12 Addressing: routing to another LAN R forwards datagram with IP source A, destination B R creates link-layer frame with B's MAC address as dest, frame contains A-to-B IP datagram MAC src: A-3-F9-CD-06-9B MAC dest: 49-BD-D-C7-56-A IP src:... IP dest:... IP Eth Phy A C-E8-FF CC-49-DE-D0-AB-7D R...0 E6-E BB-4B...0 A-3-F9-CD-06-9B B BD-D-C7-56-A B-F-54-A-0F Outline ICMP ARP Routing algorithms Link state Distance Vector Routing in the Internet OSPF BGP The SDN control plane

13 Routing protocols Routing protocol goal: determine good paths (equivalently, routes), from sending hosts to receiving host, through network of routers path: sequence of routers packets will traverse in going from given initial source host to given final destination host good : least cost, fastest, least congested routing: a top-0 networking challenge! Graph abstraction 5 u v x 3 3 w y 5 z Graph: G = (N,E) = (NODES, EDGES) N = set of routers = { u, v, w, x, y, z } E = set of links ={ (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) } Remark: Graph abstraction is useful in other network contexts Example: PP, where N is set of peers and E is set of TCP connections; social networks where nodes are users and edges exist iff two users have a direct contact

14 Graph abstraction: costs u 5 v x 3 3 w y 5 z c(x,x ) = cost of link (x,x ) - e.g., c(w,z) = 5 cost could always be, or proportionl to link fee or inversely related to bandwidth, or inversely related to congestion Cost of path (x, x, x 3,, x p ) = c(x,x )+c(x,x 3 )+ +c(x p-,x p ) Question: What s the least-cost path between u and z? Routing algorithm: algorithm that finds least-cost path Routing Algorithm classification Global: link state algorithm (Dijkstra) all routers have complete topology, link cost info distributed implementation: all-to-all router messages, no central server. centralized implementation: all router send messages to a central server (Software Defined Network, SDN) Local: distance vector algorithm (Bellman-Ford) router knows physically-connected neighbors, link costs to neighbors iterative process of computation, exchange of messages only with neighbors

15 A Link-State Routing Algorithm Dijkstra s algorithm net topology, link costs known to all nodes accomplished via link state broadcast all nodes have same info computes least cost paths from one node ( source ) to all other nodes gives forwarding table for that node iterative: after k iterations, know least cost path to k destinations Notation: c(x,y): link cost from node x to y; = if not direct neighbors D(v): current value of cost of path from source to dest. v p(v): predecessor node along path from source to v N': set of nodes whose least cost path definitively known Dijsktra s Algorithm for node a Initialization: N' = {a} 3 for all nodes x 4 if x adjacent to a 5 then D(x) = c(a,x) and p(x)=a 6 else D(x) = 8 Loop 9 find y not in N' such that D(y) is a minimum 0 add y to N' update D(z) for all z adjacent to y and not in N' : D(z) = min{ D(z), D(y) + c(y,z) } if D(y)+c(y,z) < D(z) then p(z)=y /* new cost to z is either old cost to z or known 4 shortest path cost to y plus cost from y to z */ 5 until all nodes in N'

16 Dijkstra s algorithm: example D(v) p(v) D(w) p(w) D(x) p(x) D(y) p(y) D(z) p(z) Step N' 0 u 7,u 3,u 5,u uw 6,w 5,u,w uwx 6,w,w 4,x 3 uwxv 0,v 4,x 4 uwxvy,y 5 uwxvyz x 9 notes: construct shortest path tree by tracing predecessor nodes ties can exist (can be broken arbitrarily) u 5 3 w y z v Dijkstra s algorithm, discussion Algorithm complexity: n nodes each iteration: need to check all nodes, w, not in N n(n+)/ comparisons: O(n ) more efficient implementations possible: O(n logn) Oscillations possible: e.g., link cost = amount of carried traffic A +e D 0 0 B 0 e C e initially +e A 0 D B 0 +e 0 C recompute routing 0 A +e D 0 0 B +e C recompute +e A 0 D +e B 0 0 C recompute

17 Distance-vectors!33 d x (y) = estimate of least cost from x to y Node x knows cost to each neighbor v: c(x,v) Node x maintains its own distance vector (DV) D x = [d x (y): y є N ] Node x also maintains its neighbors DVs: for each neighbor v, x maintains D v = [d v (y): y є N ] DV are computed by means of the iterative Bellman-Ford algorithm Distance-vector algorithm!34 Basic idea: From time-to-time, each node sends its own DV estimate to neighbors (can be asynchronous) When a node x receives new DV estimate from neighbor, it updates its own DV using B-F equation: d x (y) = min {c(x,v) + d v (y) } for each node y in the network. v Under minor, natural conditions, the estimate D x (y) converge to the actual least cost d x (y)

18 Comparison of LS and DV algorithms message complexity LS: with n nodes, E links, O(nE) msgs sent DV: exchange between neighbors only convergence time varies speed of convergence LS: O(n ) algorithm requires O(nE) msgs may have oscillations DV: convergence time varies may be routing loops count-to-infinity problem robustness: what happens if router malfunctions? LS: node can advertise incorrect link cost each node computes only its own table DV: DV node can advertise incorrect path cost each node s table used by others error propagate thru network Outline ICMP ARP Routing algorithms Link state Distance Vector Routing in the Internet OSPF BGP The SDN control plane

19 Making routing scalable our routing study thus far - idealized all routers identical network flat not true in practice scale: with billions of destinations: can t store all destinations in routing tables! routing table exchange would swamp links! administrative autonomy internet = network of networks each network admin may want to control routing in its own network Internet approach to scalable routing aggregate routers into regions known as autonomous systems (AS) (a.k.a. domains ) intra-as routing routing among hosts, routers in same AS ( network ) all routers in AS must run same intra-domain protocol routers in different AS can run different intra-domain routing protocol gateway router: at edge of its own AS, has link(s) to router(s) in other AS es inter-as routing routing among AS es gateways perform interdomain routing (as well as intra-domain routing)

20 Interconnected ASes 3c 3a 3b AS3 a c d b Intra-AS Routing algorithm AS Forwarding table Inter-AS Routing algorithm a c AS b forwarding table configured by both intraand inter-as routing algorithm intra-as routing determine entries for destinations within AS inter-as & intra-as determine entries for external destinations Inter-AS tasks suppose router in AS receives datagram destined outside of AS: router should forward packet to gateway router, but which one? AS must:. learn which dests are reachable through AS, which through AS3. propagate this reachability info to all routers in AS job of inter-as routing! 3c other networks 3b 3a AS3 a AS c d b a AS c b other networks

21 Intra-AS Routing also known as interior gateway protocols (IGP) most common intra-as routing protocols: RIP: Routing Information Protocol OSPF: Open Shortest Path First (IS-IS protocol essentially same as OSPF) IGRP: Interior Gateway Routing Protocol (Cisco proprietary for decades, until 06) OSPF (Open Shortest Path First) open : publicly available uses link-state algorithm link state packet dissemination topology map at each node route computation using Dijkstra s algorithm router floods OSPF link-state advertisements to all other routers in entire AS carried in OSPF messages directly over IP (rather than TCP or UDP link state: for each attached lin

22 OSPF advanced features security: all OSPF messages authenticated (to prevent malicious intrusion) multiple same-cost paths allowed (only one path in RIP) for each link, multiple cost metrics for different TOS (e.g., satellite link cost set low for best effort ToS; high for real-time ToS) integrated uni- and multi-cast support: Multicast OSPF (MOSPF) uses same topology data base as OSPF hierarchical OSPF in large domains. Hierarchical OSPF

23 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 AS s. Outline 4. Internet architecture 4. What s inside a router 4.3 Internet Protocol (IP) Datagram format IPv4 addressing ICMP 4.4 Routing algorithms Link state 4.5 Routing in the Internet OSPF BGP

24 Internet inter-as routing: BGP BGP (Border Gateway Protocol): the de facto inter-domain routing protocol glue that holds the Internet together BGP provides each AS a means to: ebgp: obtain subnet reachability information from neighboring ASes ibgp: propagate reachability information to all ASinternal routers. determine good routes to other networks based on reachability information and policy allows subnet to advertise its existence to rest of Internet: I am here ebgp, ibgp connections b b a c 3b a c d 3a 3c d AS 3d AS ebgp connectivity ibgp connectivity AS 3 c gateway routers run both ebgp and ibgp protools

25 BGP basics BGP session: two BGP routers ( peers ) exchange BGP messages over semi-permanent TCP connection: advertising paths to different destination network prefixes (BGP is a path vector protocol) when AS3 gateway router 3a advertises path AS3,X to AS gateway router c: AS3 promises to AS it will forward datagrams towards X AS b AS 3 3b a d c AS a b c 3a 3d 3c BGP advertisement: AS3, X X d Path attributes and BGP routes advertised prefix includes BGP attributes prefix + attributes = route two important attributes: AS-PATH: list of ASes through which prefix advertisement has passed NEXT-HOP: indicates specific internal-as router to nexthop AS Policy-based routing: gateway receiving route advertisement uses import policy to accept/decline path (e.g., never route through AS Y). AS policy also determines whether to advertise path to other other neighboring ASes

26 BGP path advertisement AS b AS3 3b a c d AS,AS3,X AS a b c 3a AS3,X 3d 3c X d AS router c receives path advertisement AS3,X (via ebgp) from AS3 router 3a Based on AS policy, AS router c accepts path AS3,X, propagates (via ibgp) to all AS routers Based on AS policy, AS router a advertises (via ebgp) path AS, AS3, X to AS router c BGP path advertisement AS b AS3,X AS3 3b a c d AS,AS3,X AS a b c 3a AS3,X 3d 3c X d gateway router may learn about multiple paths to destination: AS gateway router c learns path AS,AS3,X from a AS gateway router c learns path AS3,X from 3a Based on policy, AS gateway router c chooses path AS3,X, and advertises path within AS via ibgp

27 BGP messages BGP messages exchanged between peers over TCP connection BGP messages: OPEN: opens TCP connection to remote BGP peer and authenticates sending BGP peer UPDATE: advertises new path (or withdraws old) KEEPALIVE: keeps connection alive in absence of UPDATES; also ACKs OPEN request NOTIFICATION: reports errors in previous msg; also used to close connection BGP, OSPF, forwarding table entries Q: how does router set forwarding table entry to distant prefix? AS a local link interfaces at a, d b c d AS,AS3,X AS3,X AS a b d AS3,X c AS3 3a AS3,X 3b 3d 3c physical link X dest X interface recall: a, b, c learn about dest X via ibgp from c: path to X goes through c d: OSPF intra-domain routing: to get to c, forward over outgoing local interface

28 BGP, OSPF, forwarding table entries Q: how does router set forwarding table entry to distant prefix? AS a b d c AS b AS3 3a 3b 3d 3c X a c d dest X interface recall: a, b, c learn about dest X via ibgp from c: path to X goes through c d: OSPF intra-domain routing: to get to c, forward over outgoing local interface a: OSPF intra-domain routing: to get to c, forward over outgoing local interface BGP route selection router may learn about more than one route to destination AS, selects route based on:. local preference value attribute: policy decision. shortest AS-PATH 3. closest NEXT-HOP router: hot potato routing 4. additional criteria

29 Hot Potato Routing AS b AS3 3b a d c AS,AS3,X AS a b 0 63 d 5 c 3a AS3,X 3c 3d X OSPF link weights d learns (via ibgp) it can route to X via a or c hot potato routing: choose local gateway that has least intradomain cost (e.g., d chooses a, even though more AS hops to X): don t worry about inter-domain cost! Another BGP policy example!58 AS X AS X AS Y AS Y Perth Sydney Perth Sydney Figure 0: Traffic flow between two ASes, one in Perth and the other in Sydney. Note the asymmetry in traffic: due to the action of hot potato routing, the path taken by a traffic flow from Perth to Sydney differs from the reverse path, since by BGP s Hot implementation, the closest routing: external link of an AS is always chosen to route traffic out from the AS. each ISP aims at minimizing the path of the outbound traffic within his own AS Hot potato routing is implemented as a part of the BGP decision process [90]. BGP allows network operators to choose the egress points of traffic at the prefix level. The decision may also vary across a network so that traffic at different points can end up being routed to different egress points. The idea of hot potato routing comes from its namesake: traffic is the hot potato in this case and the network tries to get rid of the hot potato as quickly as possible to avoid costs of transiting it over long distances. Therefore, traffic is sent on the shortest external route connecting an ingress to egress point. BGP provides less control over ingress points and this is what leads to the fundamental asymmetry in the IE traffic matrix. An example of hot potato routing is in Figure 0. Here, there is a clear asymmetry since the paths taken by traffic flows from Perth to Sydney differ from Sydney to Perth. To further understand hot potato routing, we refer the reader to [7] for a basic understanding of BGP routing policy.

30 BGP: achieving policy via advertisements W A B C X legend: provider network customer network: Y Suppose an ISP only wants to route traffic to/from its customer networks (does not want to carry transit traffic between other ISPs) A advertises path Aw to B and to C B chooses not to advertise BAw to C: B gets no revenue for routing CBAw, since none of C, A, w are B s customers C does not learn about CBAw path C will route CAw (not using B) to get to w BGP: achieving policy via advertisements W A B C X legend: provider network customer network: Y Suppose an ISP only wants to route traffic to/from its customer networks (does not want to carry transit traffic between other ISPs) A,B,C are provider networks X,W,Y are customer (of provider networks) X is dual-homed: attached to two networks policy to enforce: X does not want to route from B to C via X.. so X will not advertise to B a route to C

31 Why different Intra-, 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 Outline ICMP ARP Routing algorithms Link state Distance Vector Routing in the Internet OSPF BGP The SDN control plane

32 Software defined networking (SDN) Internet network layer: historically has been implemented via distributed, per-router approach monolithic router contains switching hardware, runs proprietary implementation of Internet standard protocols (IP, RIP, IS-IS, OSPF, BGP) in proprietary router OS (e.g., Cisco IOS) different middleboxes for different network layer functions: firewalls, load balancers, NAT boxes,.. ~005: renewed interest in rethinking network control plane Recall: per-router control plane Individual routing algorithm components in each and every router interact with each other in control plane to compute forwarding tables Routing Algorithm control plane data plane

33 Recall: logically centralized control plane A distinct (typically remote) controller interacts with local control agents (CAs) in routers to compute forwarding tables Remote Controller CA CA CA CA CA control plane data plane Software defined networking (SDN) Why a logically centralized control plane? easier network management: avoid router misconfigurations, greater flexibility of traffic flows table-based forwarding (recall OpenFlow API) allows programming routers centralized programming easier: compute tables centrally and distribute distributed programming: more difficult: compute tables as result of distributed algorithm (protocol) implemented in each and every router open (non-proprietary) implementation of control plane

34 Analogy:)mainframe)to)PC)evolution * Specialized Applications App App App App App App App App App App Open Interface Specialized Operating System Specialized Hardware Windows (OS) or Linux or Open Interface Microprocessor Mac OS Vertically integrated Closed, proprietary Slow innovation Small industry Horizontal Open interfaces Rapid innovation Huge industry * Slide courtesy: N. McKeown Traffic engineering: difficult traditional routing 5 u x v 3 3 w y 5 z Q: what if network operator wants u-to-z traffic to flow along uvwz, x-to-z traffic to flow xwyz? A: need to define link weights so traffic routing algorithm computes routes accordingly (or need a new routing algorithm)! Link weights are only control knobs : wrong!

35 Traffic engineering: difficult 5 u x v 3 3 w y 5 z Q: what if network operator wants to split u-to-z traffic along uvwz and uxyz (load balancing)? A: can t do it (or need a new routing algorithm) Traffic engineering: difficult Networking 40 5 u v x x 3 3 w y 5 z z Q: what if w wants to route blue and red traffic differently? A: can t do it (with destination based forwarding, and LS, DV routing)

36 Software defined networking (SDN) 4. programmable control applications routing access control Remote Controller load balance 3. control plane functions external to dataplane switches control plane data plane CA CA CA CA CA. control, data plane separation : generalized flowbased forwarding (e.g., OpenFlow) SDN perspective: data plane switches Data plane switches fast, simple, commodity switches implementing generalized dataplane forwarding (Section 4.4) in hardware switch flow table computed, installed by controller API for table-based switch control (e.g., OpenFlow) defines what is controllable and what is not protocol for communicating with controller (e.g., OpenFlow) routing network-control applications access control load balance northbound API SDN Controller (network operating system) southbound API control plane data plane SDN-controlled switches

37 SDN perspective: SDN controller SDN controller (network OS): maintain network state information interacts with network control applications above via northbound API interacts with network switches below via southbound API implemented as distributed system for performance, scalability, fault-tolerance, robustness routing network-control applications access control load balance northbound API SDN Controller (network operating system) southbound API control plane data plane SDN-controlled switches SDN perspective: control applications network-control apps: brains of control: implement control functions using lowerlevel services, API provided by SND controller unbundled: can be provided by 3 rd party: distinct from routing vendor, or SDN controller routing network-control applications access control load balance northbound API SDN Controller (network operating system) control plane southbound API data plane SDN-controlled switches

38 Components of SDN controller Interface layer to network control apps: abstractions API Network-wide state management layer: state of networks links, switches, services: a distributed database communication layer: communicate between SDN controller and controlled switches routing network graph Network-wide distributed, robust state management Link-state info statistics OpenFlow access control RESTful API host info load balance Interface, abstractions for network control apps flow tables SNMP intent switch info Communication to/from controlled devices SDN controller Network Layer: Control Plane!75 OpenFlow protocol OpenFlow Controller operates between controller, switch TCP used to exchange messages optional encryption three classes of OpenFlow messages: controller-to-switch asynchronous (switch to controller) symmetric (misc)

39 OpenFlow: controller-to-switch messages Key controller-to-switch messages features: controller queries switch features, switch replies configure: controller queries/sets switch configuration parameters modify-state: add, delete, modify flow entries in the OpenFlow tables packet-out: controller can send this packet out of specific switch port OpenFlow Controller OpenFlow: switch-to-controller messages Key switch-to-controller messages packet-in: transfer packet (and its control) to controller. See packetout message from controller flow-removed: flow table entry deleted at switch port status: inform controller of a change on a port. OpenFlow Controller Fortunately, network operators don t program switches by creating/sending OpenFlow messages directly. Instead use higher-level abstraction at controller

40 SDN: control/data plane interaction example network graph statistics Link-state info s 3 Dijkstra s link-state Routing 4 OpenFlow RESTful API host info 6 s3 s 5 flow tables SNMP s4 intent switch info 3 4 S, experiencing link failure using OpenFlow port status message to notify controller SDN controller receives OpenFlow message, updates link status info Dijkstra s routing algorithm application has previously registered to be called when ever link status changes. It is called. Dijkstra s routing algorithm access network graph info, link state info in controller, computes new routes SDN: control/data plane interaction example network graph statistics 3 Link-state info Dijkstra s link-state Routing 4 OpenFlow RESTful API host info 5 flow tables SNMP intent switch info 5 6 link state routing app interacts with flow-table-computation component in SDN controller, which computes new flow tables needed Controller uses OpenFlow to install new tables in switches that need updating 6 s s3 s s4

41 SDN: selected challenges hardening the control plane: dependable, reliable, performance-scalable, secure distributed system robustness to failures: leverage strong theory of reliable distributed system for control plane dependability, security: baked in from day one? networks, protocols meeting mission-specific requirements e.g., real-time, ultra-reliable, ultra-secure Internet-scaling

COMP211 Chapter 5 Network Layer: The Control Plane

COMP211 Chapter 5 Network Layer: The Control Plane COMP211 Chapter 5 Network Layer: The Control Plane All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 7 th edition Jim Kurose, Keith

More information

Telecomunicazioni. Docente: Andrea Baiocchi DIET - Stanza 107, 1 piano palazzina P. Piga Via Eudossiana 18

Telecomunicazioni. Docente: Andrea Baiocchi DIET - Stanza 107, 1 piano palazzina P. Piga Via Eudossiana 18 University of Roma La Sapienza Telecomunicazioni Docente: Andrea Baiocchi DIET - Stanza 07, piano palazzina P. Piga Via Eudossiana 8 E-mail: andrea.baiocchi@uniroma.it Corso di Laurea in Ingegneria Gestionale

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

5.1 introduction 5.5 The SDN control 5.2 routing protocols plane. Control Message 5.3 intra-as routing in Protocol the Internet

5.1 introduction 5.5 The SDN control 5.2 routing protocols plane. Control Message 5.3 intra-as routing in Protocol the Internet Chapter 5: outline 5.1 introduction 5.5 The SDN control 5.2 routing protocols plane link state 5.6 ICMP: The Internet distance vector Control Message 5.3 intra-as routing in Protocol the Internet t 5.7

More information

Chapter 4: Network Layer, partb

Chapter 4: Network Layer, partb Chapter 4: Network Layer, partb The slides are adaptations of the slides available by the main textbook authors, Kurose&Ross Network Layer 4-1 Interplay between routing, forwarding routing algorithm local

More information

CSC 4900 Computer Networks: Routing Protocols

CSC 4900 Computer Networks: Routing Protocols CSC 4900 Computer Networks: Routing Protocols Professor Henry Carter Fall 2017 Last Time Link State (LS) versus Distance Vector (DV) algorithms: What are some of the differences? What is an AS? Why do

More information

Internet rou)ng. V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst

Internet rou)ng. V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst Internet rou)ng V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst Slide material copyright 1996-2013 J.F Kurose and K.W. Ross, All Rights Reserved Graph abstraction 5 graph: G

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations; and

More information

EC441 Fall 2018 Introduction to Computer Networking Chapter 5: Network Layer Control Plane

EC441 Fall 2018 Introduction to Computer Networking Chapter 5: Network Layer Control Plane EC441 Fall 2018 Introduction to Computer Networking Chapter 5: Network Layer Control Plane This presentation is adapted from slides produced by Jim Kurose and Keith Ross for their book, Computer Networking:

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

Network Layer: The Control Plane

Network Layer: The Control Plane Network Layer: The Control Plane 7 th Edition, Global Edition Jim Kurose, Keith Ross Pearson April 06 5- Software defined networking (SDN) Internet network layer: historically has been implemented via

More information

Last time. Transitioning to IPv6. Routing. Tunneling. Gateways. Graph abstraction. Link-state routing. Distance-vector routing. Dijkstra's Algorithm

Last time. Transitioning to IPv6. Routing. Tunneling. Gateways. Graph abstraction. Link-state routing. Distance-vector routing. Dijkstra's Algorithm Last time Transitioning to IPv6 Tunneling Gateways Routing Graph abstraction Link-state routing Dijkstra's Algorithm Distance-vector routing Bellman-Ford Equation 10-1 This time Distance vector link cost

More information

Chapter 4: outline. Network Layer 4-1

Chapter 4: outline. Network Layer 4-1 Chapter 4: outline 4.1 introduction 4.2 virtual circuit and datagram networks 4.3 what s inside a router 4.4 IP: Internet Protocol datagram format IPv4 addressing ICMP IPv6 4.5 routing algorithms link

More information

Lecture 19: Network Layer Routing in the Internet

Lecture 19: Network Layer Routing in the Internet Lecture 19: Network Layer Routing in the Internet COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

Chapter IV: Network Layer

Chapter IV: Network Layer Chapter IV: Network Layer UG3 Computer Communications & Networks (COMN) Myungjin Lee myungjin.lee@ed.ac.uk Slides copyright of Kurose and Ross Hierarchical routing our routing study thus far - idealization

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

Chapter 4: Network Layer. Lecture 12 Internet Routing Protocols. Chapter goals: understand principles behind network layer services:

Chapter 4: Network Layer. Lecture 12 Internet Routing Protocols. Chapter goals: understand principles behind network layer services: NET 331 Computer Networks Lecture 12 Internet Routing Protocols Dr. Anis Koubaa Reformatted slides from textbook Computer Networking a top-down appraoch, Fifth Edition by Kurose and Ross, (c) Pearson Education

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

Telecomunicazioni. Docente: Andrea Baiocchi. DIET - Stanza 107, 1 piano palazzina P. Piga Via Eudossiana 18

Telecomunicazioni. Docente: Andrea Baiocchi. DIET - Stanza 107, 1 piano palazzina P. Piga Via Eudossiana 18 University of Roma La Sapiena Telecomunicaioni Docente: Andrea Baiocchi DIET - Stana 07, piano palaina P. Piga Via Eudossiana 8 E-mail: andrea.baiocchi@uniroma.it Corso di Laurea in Ingegneria Gestionale

More information

Network layer: Overview. Network layer functions Routing IP Forwarding

Network layer: Overview. Network layer functions Routing IP Forwarding Network layer: Overview Network layer functions Routing IP Forwarding Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every host, router application

More information

Announcements. CS 5565 Network Architecture and Protocols. Project 2B. Project 2B. Project 2B: Under the hood. Routing Algorithms

Announcements. CS 5565 Network Architecture and Protocols. Project 2B. Project 2B. Project 2B: Under the hood. Routing Algorithms Announcements CS 5565 Network Architecture and Protocols Lecture 20 Godmar Back Project 2B due in 2 parts: Apr 29 and May 6 Extra Credit Opportunities: Expand simulator (and your implementation) to introduce

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 40 Data and Computer Communications Networks Network Layer NAT, Routing, Link State, Distance Vector Prof. Lina Battestilli Fall 07 Chapter 4 Outline Network Layer: Data Plane 4. Overview of Network

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane Lu Su Assistant Professor Department of Computer Science and Engineering State University of New York at Buffalo Adapted from the slides of the book s authors

More information

DATA COMMUNICATOIN NETWORKING

DATA COMMUNICATOIN NETWORKING DATA COMMUNICATOIN NETWORKING Instructor: Ouldooz Baghban Karimi Course Book & Slides: Computer Networking, A Top-Down Approach By: Kurose, Ross Introduction Course Overview Basics of Computer Networks

More information

Hierarchical Routing. Our routing study thus far - idealization all routers identical network flat not true in practice

Hierarchical Routing. Our routing study thus far - idealization all routers identical network flat not true in practice Hierarchical Routing Our routing study thus far - idealization all routers identical network flat not true in practice scale: with 200 million destinations: can t store all destinations in routing tables!

More information

Chapter 4: Network Layer

Chapter 4: Network Layer Chapter 4: Network Layer 4. 1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing ICMP IPv6 4.5 Routing algorithms

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 13

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 13 CMPE 50/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 3 Lab3 online Due March 4 th. Introduction -2 IP addresses: how to get one? Q: how does network

More information

CSC 8560 Computer Networks: Control Plane

CSC 8560 Computer Networks: Control Plane CSC 8560 Computer Networks: Control Plane Professor Henry Carter Fall 2017 Last Time Subnets provide granularity for address assignment and ease management. What is 192.168.8.0? 192.168.32.0? 192.168.8.0:

More information

Chapter 4 Network Layer. Network Layer 4-1

Chapter 4 Network Layer. Network Layer 4-1 Chapter 4 Network Layer Network Layer 4- Chapter 4: Network Layer 4. Introduction 4. Virtual circuit and datagram networks 4. What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing

More information

DATA COMMUNICATOIN NETWORKING

DATA COMMUNICATOIN NETWORKING DATA COMMUNICATOIN NETWORKING Instructor: Ouldooz Baghban Karimi Course Book & Slides: Computer Networking, A Top-Down Approach By: Kurose, Ross Introduction Course Overview Basics of Computer Networks

More information

Inter-AS routing and BGP. Network Layer 4-1

Inter-AS routing and BGP. Network Layer 4-1 Inter-AS routing and BGP Network Layer 4-1 Review: intra-as routing v Also known as interior gateway protocols (IGP) v Most common intra-as routing protocols: RIP: Routing Information Protocol, distance

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Network Layer ICMP (5.6), Network Management(5.7) & SDN (5.1, 5.5, 4.4) Prof. Lina Battestilli Fall 2017 Outline 5.6 ICMP: The Internet Control Message

More information

Course on Computer Communication and Networks. Lecture 7 Network Layer, Chapter 4 (6/e) - Part B (7/e Ch5)

Course on Computer Communication and Networks. Lecture 7 Network Layer, Chapter 4 (6/e) - Part B (7/e Ch5) Course on Computer Communication and Networks Lecture 7 Network Layer, Chapter 4 (6/e) - Part B (7/e Ch5) EDA344/DIT 420, CTH/GU Based on the book Computer Networking: A Top Down Approach, Jim Kurose,

More information

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 16, 2017

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 16, 2017 CS 43: Computer Networks Internet Routing Kevin Webb Swarthmore College November 16, 2017 1 Hierarchical routing Our routing study thus far - idealization all routers identical network flat not true in

More information

CS 43: Computer Networks. 24: Internet Routing November 19, 2018

CS 43: Computer Networks. 24: Internet Routing November 19, 2018 CS 43: Computer Networks 24: Internet Routing November 19, 2018 Last Class Link State + Fast convergence (reacts to events quickly) + Small window of inconsistency Distance Vector + + Distributed (small

More information

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 14, 2013

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 14, 2013 CS 43: Computer Networks Internet Routing Kevin Webb Swarthmore College November 14, 2013 1 Reading Quiz Hierarchical routing Our routing study thus far - idealization all routers identical network flat

More information

Computer Networking Introduction

Computer Networking Introduction Computer Networking Introduction Halgurd S. Maghdid Software Engineering Department Koya University-Koya, Kurdistan-Iraq Lecture No.15 Chapter 4: outline 4.1 introduction 4.2 virtual circuit and datagram

More information

CSCI Topics: Internet Programming Fall 2008

CSCI Topics: Internet Programming Fall 2008 CSCI 491-01 Topics: Internet Programming Fall 2008 Network Layer Derek Leonard Hendrix College November 17, 2008 Original slides copyright 1996-2007 J.F Kurose and K.W. Ross 1 Chapter 4: Roadmap 4.1 Introduction

More information

Inter-AS routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

Inter-AS routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Inter-AS routing Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Some materials copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved Chapter 4:

More information

Network Layer: Control Plane 5-2

Network Layer: Control Plane 5-2 Network Laer: Control Plane EECS34 8-03-05 4- Chapter 5: network laer control plane chapter goals: understand principles behind network control plane traditional routing algorithms SDN controlllers Internet

More information

NETWORK LAYER CONTROL PLANE

NETWORK LAYER CONTROL PLANE NETWORK LAYER CONTROL PLANE 1 GOALS Understand principles behind network control plane Traditional routing algorithms SDN controlllers Internet Control Message Protocol Network management And their instantiation,

More information

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on receiving side, delivers segments to transport layer network layer protocols in every

More information

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP Chapter 4: outline 4.1 introduction 4.2 virtual circuit and datagram networks 4.3 what s inside a router 4.4 IP: Internet Protocol datagram format IPv4 addressing ICMP IPv6 4.5 routing algorithms link

More information

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSCE 463/612 Networks and Distributed Processing Spring 2018 CSCE 463/612 Networks and Distributed Processing Spring 2018 Network Layer IV Dmitri Loguinov Texas A&M University April 12, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter

More information

Network layer: Overview. Network layer functions Routing IP Forwarding

Network layer: Overview. Network layer functions Routing IP Forwarding Network layer: Overview Network layer functions Routing IP Forwarding 1 Network Layer Functions Transport packet from sending to receiving hosts (processes) Network layer protocols in every host, router

More information

Network layer Network Layer 4-1

Network layer Network Layer 4-1 Network layer 1 Network layer transport segment from sending to receiving host on sending side puts segments into datagrams on rcving side, delivers segments to transport layer network layer protocols

More information

Network Layer: Routing

Network Layer: Routing Network Laer: Routing Instructor: Anirban Mahanti Office: ICT 74 Email: mahanti@cpsc.ucalgar.ca Class Location: ICT Lectures: MWF :00 :0 hours Notes derived Computer Networking: A Top Down Approach Featuring

More information

CSC 4900 Computer Networks: Routing Algorithms

CSC 4900 Computer Networks: Routing Algorithms CSC 4900 Computer Networks: Routing Algorithms Professor Henry Carter Fall 2017 Last Time Subnets provide granularity for address assignment and ease management. What is 192.168.8.0? 192.168.32.0? 192.168.8.0:

More information

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan Internet Protocol: Routing Algorithms Srinidhi Varadarajan Routing Routing protocol Goal: determine good path (sequence of routers) thru network from source to dest. Graph abstraction for routing algorithms:

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Layer CPSC 335 Data Communication Systems Readings: 4.4.3, 4.4.4, 4.5, 4.5.1 David Nguyen Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March

More information

Network Routing. Packet Routing, Routing Algorithms, Routers, Router Architecture

Network Routing. Packet Routing, Routing Algorithms, Routers, Router Architecture Network Routing Packet Routing, Routing Algorithms, Routers, Router Architecture Routing Routing protocol Goal: determine good path (sequence of routers) thru network from source to dest. Graph abstraction

More information

Lecture 9. Network Layer (cont d) Network Layer 1-1

Lecture 9. Network Layer (cont d) Network Layer 1-1 Lecture 9 Network Layer (cont d) Network Layer 1-1 Agenda Routing Tables Unicast and Multicast Routing Protocols Routing Algorithms Link State and Distance Vector Routing Information and Open Shortest

More information

Module 3 Network Layer CS755! 3-1!

Module 3 Network Layer CS755! 3-1! Module 3 Network Layer CS755 3-1 Please note: Most of these slides come from this book. Note their copyright notice below A note on the use of these ppt slides: We re making these slides freely available

More information

Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation:

Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation: IPv6 Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation: header format helps speed processing/forwarding header changes to facilitate QoS IPv6 datagram format:

More information

CSc 450/550 Computer Networks Internet Routing

CSc 450/550 Computer Networks Internet Routing CSc 450/550 Computer Networks Internet Routing Jianping Pan Summer 2007 7/12/07 CSc 450/550 1 Review Internet Protocol (IP) IP header addressing class-based, classless, hierarchical, NAT routing algorithms

More information

Network Layer. CMPS 4750/6750: Computer Networks

Network Layer. CMPS 4750/6750: Computer Networks Network Layer CMPS 4750/6750: Computer Networks 1 Outline Overview of network layer Forwarding (data plane) Routing (control plane) The Internet Protocol (IP) Routing in the Internet: OSPF, BGP 2 Network

More information

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition ELEC / COMP 177 Fall 01 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Homework #4 Due Thursday, Nov 1 st Project # Due Tuesday, Nov 6 th Later this semester: Homework #5 Due Thursday,

More information

11/13/2017 Network Layer (SSL) Network-layer functions. Recall the two network-layer functions:

11/13/2017 Network Layer (SSL) Network-layer functions. Recall the two network-layer functions: Chapter 5: outline 5. introduction 5.2 routing protocols link state distance vector 5.3 intra-as routing in the Internet 5.4 inter-as routing: BGP 5.5 The SDN control 5.6 ICMP: The Internet Control Message

More information

CMPE 80N: Introduction to Networking and the Internet. Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 20

CMPE 80N: Introduction to Networking and the Internet. Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 20 CMPE 80N: Introduction to Networking and the Internet Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 0 Announcements Final exam: June 7 th at 4pm. Comprehensive. Photo id required.

More information

CS118 Discussion 1A, Week 7. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m.

CS118 Discussion 1A, Week 7. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m. CS118 Discussion 1A, Week 7 Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m. 1 Outline Network control plane Routing Link state routing (OSPF) Distance vector routing (RIP) BGP ICMP Midterm/Project 2

More information

CS555, Spring /5/2005. April 12, 2005 No classes attend Senior Design Projects conference. Chapter 4 roadmap. Internet AS Hierarchy

CS555, Spring /5/2005. April 12, 2005 No classes attend Senior Design Projects conference. Chapter 4 roadmap. Internet AS Hierarchy CS555, Spring 2005 April 12, 2005 No classes attend Senior Design Projects conference Network Layer 4-1 Chapter 4 roadmap 4.1 Introduction and Network Service Models 4.2 VC and Datagram Networks 4.3 What

More information

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2018 CSCD 330 Network Programming Spring 018 Lecture 16 Network Layer Routing Protocols Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 017 1 Network

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14 1 Two notes on routing algorithm Do not believe ou can understand an routing protocol, e.g.,

More information

CSCD 330 Network Programming Spring 2017

CSCD 330 Network Programming Spring 2017 CSCD 330 Network Programming Spring 017 Lecture 16 Network Layer Routing Protocols Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 1996-007

More information

Chapter 4: Network Layer

Chapter 4: Network Layer Chapter 4: Network Laer 4. Introduction 4. Virtual circuit and datagram networks 4. What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing ICMP IPv6 4. Routing algorithms Link

More information

CSCE 463/612 Networks and Distributed Processing Spring 2017

CSCE 463/612 Networks and Distributed Processing Spring 2017 CSCE 46/6 Networks and Distributed Processing Spring 07 Network Layer III Dmitri Loguinov Texas A&M University April, 07 Original slides copyright 996-004 J.F Kurose and K.W. Ross Homework #4 Grading Default

More information

Chapter 5 Link Layer. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012

Chapter 5 Link Layer. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Chapter 5 Link Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All material copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved

More information

Lecture 4. The Network Layer (cont d)

Lecture 4. The Network Layer (cont d) Lecture 4 The Network Layer (cont d) Agenda Routing Tables Unicast and Multicast Routing Protocols Routing Algorithms Link State and Distance Vector Routing Information and Open Shortest Path First Protocols

More information

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 4 The Network Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Network layer functions Transport packet from sending to receiving hosts Network layer protocols in every

More information

Chapter 4: Network Layer

Chapter 4: Network Layer Mecanismes d Echange d Informations Chapter 4 Network Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint

More information

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding 0/6/08 Interpla between routing and forwarding Routing Algorithms Link State Distance Vector BGP routing routing algorithm local forwarding table header value output link 000 00 0 00 value in arriving

More information

CS 457 Networking and the Internet. Shortest-Path Problem. Dijkstra s Shortest-Path Algorithm 9/29/16. Fall 2016

CS 457 Networking and the Internet. Shortest-Path Problem. Dijkstra s Shortest-Path Algorithm 9/29/16. Fall 2016 9/9/6 S 7 Networking and the Internet Fall 06 Shortest-Path Problem Given: network topology with link costs c(x,y): link cost from node x to node y Infinity if x and y are not direct neighbors ompute:

More information

Routing in the Internet

Routing in the Internet Routing in the Internet Daniel Zappala CS 460 Computer Networking Brigham Young University Scaling Routing for the Internet 2/29 scale 200 million destinations - can t store all destinations or all prefixes

More information

Routing. Outline. Algorithms Scalability

Routing. Outline. Algorithms Scalability Routing Outline Algorithms Scalability 1 Internetworking What is internetwork An arbitrary collection of networks interconnected to provide some sort of host-host to packet delivery service A simple internetwork

More information

Topics for This Week

Topics for This Week Topics for This Week Routing Protocols in the Internet OSPF, BGP More on IP Fragmentation and Reassembly ICMP Readings Sections 5.6.4-5.6.5 1 Hierarchical Routing aggregate routers into regions, autonomous

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department of Computer Science TU München Master Course Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Christian Grothoff, Ph.D. Stephan Günther

More information

Interplay Between Routing, Forwarding

Interplay Between Routing, Forwarding Internet Routing 1 Interplay Between Routing, Forwarding routing algorithm local forwarding table header value output link 0100 0101 0111 1001 3 1 value in arriving packet s header 0111 3 1 Graph Abstraction

More information

Lecture 5 The Network Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Lecture 5 The Network Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 5 The Network Layer part II Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it IP datagram format IP protocol version number header length (bytes) type of data max number remaining

More information

Computer Networks. Instructor: Niklas Carlsson

Computer Networks. Instructor: Niklas Carlsson Computer Networks Instructor: Niklas Carlsson Email: niklas.carlsson@liu.se Notes derived Computer Networking: A Top Down Approach, b Jim Kurose and Keith Ross, Addison-Wesle. The slides are adapted and

More information

Last time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing

Last time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing Last time Network layer Introduction forwarding vs. routing Virtual circuit vs. datagram details connection setup, teardown VC# switching forwarding tables, longest prefix matching IP: the Internet Protocol

More information

Intra-AS Routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.

Intra-AS Routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley. Intra-AS Routing Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesle http://xkcd.com/85/ Some materials copright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 3516: Advanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 320 Fall 2017 A-term 1 Some slides are originally from the course materials of the textbook

More information

Chapter 4: Network Layer. TDTS06 Computer networks. Subnets. Subnets. Subnets. IP Addressing: introduction

Chapter 4: Network Layer. TDTS06 Computer networks. Subnets. Subnets. Subnets. IP Addressing: introduction hapter 4: Network Layer TDTS06 omputer s Lecture 6: Network layer III Routing in the Internet Jose M. Peña, jospe@ida.liu.se ID/DIT, LiU 2009-09-16 4. 1 Introduction 4.2 Virtual circuit and datagram s

More information

Link layer: introduction

Link layer: introduction Link layer: introduction terminology: hosts and routers: nodes communication channels that connect adjacent nodes along communication path: links wired links wireless links LANs layer-2 packet: frame,

More information

Chapter 4: Network Layer. Chapter 4 Network Layer. Chapter 4: Network Layer. Network layer. Chapter goals:

Chapter 4: Network Layer. Chapter 4 Network Layer. Chapter 4: Network Layer. Network layer. Chapter goals: Chapter 4 Network Layer Computer Networking: A Top Down Approach Featuring the, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley, July 004. Chapter 4: Network Layer Chapter goals: understand principles

More information

Department of Computer Science Southern Illinois University Carbondale

Department of Computer Science Southern Illinois University Carbondale Department of Computer Science Southern Illinois University Carbondale CS441 Mobile & Wireless Computing Overview of Computer Networking Network Layer of TCP/IP Model Data and Computer Communications 7

More information

HY 335 Φροντιστήριο 8 ο

HY 335 Φροντιστήριο 8 ο HY 335 Φροντιστήριο 8 ο Χειμερινό Εξάμηνο 2009-2010 Παπακωνσταντίνου Άρτεμις artpap@csd.uoc.gr 4/12/2009 Roadmap IP: The Internet Protocol IPv4 Addressing Datagram Format Transporting a datagram from source

More information

Network Layer: Routing. Routing. Routing protocol. Graph abstraction for routing algorithms: graph nodes are routers graph edges are physical links

Network Layer: Routing. Routing. Routing protocol. Graph abstraction for routing algorithms: graph nodes are routers graph edges are physical links Network Layer: Routing A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Master Course Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Christian Grothoff, Ph.D. Dr. Nils

More information

Chapter 4: Network Layer: Part II

Chapter 4: Network Layer: Part II 4: Network Laer Chapter 4: Network Laer: Part II (last revision 9/04/05. v3) 4. Introduction 4. Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol Datagram format

More information

CS 204: BGP. Jiasi Chen Lectures: MWF 12:10-1pm Humanities and Social Sciences

CS 204: BGP. Jiasi Chen Lectures: MWF 12:10-1pm Humanities and Social Sciences CS 204: BGP Jiasi Chen Lectures: MWF 12:10-1pm Humanities and Social Sciences 1403 http://www.cs.ucr.edu/~jiasi/teaching/cs204_spring17/ 1 Overview AS relationships Inter-AS routing BGP Example Paper discussion

More information

Shortest Paths Algorithms and the Internet: The Distributed Bellman Ford Lecturer: Prof. Chiara Petrioli

Shortest Paths Algorithms and the Internet: The Distributed Bellman Ford Lecturer: Prof. Chiara Petrioli Shortest Paths Algorithms and the Internet: The Distributed Bellman Ford Lecturer: Prof. Chiara Petrioli Dipartimento di Informatica Rome University La Sapienza G205: Fundamentals of Computer Engineering

More information

Interplay between routing, forwarding

Interplay between routing, forwarding Chapter 4: outline 4. introduction 4. virtual circuit and datagram networks 4. what s inside a router 4.4 IP: Internet Protocol datagram format IPv4 addressing ICMP IPv6 4.5 routing algorithms link state

More information

EECS 3214: Computer Networks Protocols and Applications

EECS 3214: Computer Networks Protocols and Applications EECS 3214: Computer Networks Protocols and Applications Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/3214 These slides

More information

Inter-Domain Routing: BGP

Inter-Domain Routing: BGP Inter-Domain Routing: BGP Richard T. B. Ma School of Computing National University of Singapore CS 3103: Compute Networks and Protocols Inter-Domain Routing Internet is a network of networks Hierarchy

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

The Internet network layer

The Internet network layer The Internet network layer host, router network layer functions: transport layer: TCP, UDP network layer routing protocols path selection RIP, OSPF, BGP forwarding table link layer physical layer IP protocol

More information