NFD Permanent Face Junxiao Shi, 2015-06-23 1. Outline what is a permanent face necessity and benefit of having permanent faces guarantees provided by.

Slides:



Advertisements
Similar presentations
NDN in Local Area Networks Junxiao Shi The University of Arizona
Advertisements

Remote Procedure Call (RPC)
Interest NACK Junxiao Shi, Introduction Interest NACK, aka "negative acknowledgement", is sent from upstream to downstream to inform that.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
CSEE W4140 Networking Laboratory Lecture 4: IP Routing (RIP) Jong Yul Kim
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
IPv6 Mobility David Bush. Correspondent Node Operation DEF: Correspondent node is any node that is trying to communicate with a mobile node. This node.
IP layer restoration and network planning based on virtual protection cycles 2000 IEEE Journal on Selected Areas in Communications Reporter: Jyun-Yong.
Hands-On Microsoft Windows Server 2003 Networking Chapter 7 Windows Internet Naming Service.
Lesson 1: Configuring Network Load Balancing
Hands-On Microsoft Windows Server 2003 Networking Chapter 5 Dynamic Host Configuration Protocol.
NFD forwarding pipelines Junxiao Shi,
ROUTING PROTOCOLS Rizwan Rehman. Static routing  each router manually configured with a list of destinations and the next hop to reach those destinations.
Network Topologies.
IB ACM InfiniBand Communication Management Assistant (for Scaling) Sean Hefty.
Forwarding Hint in NFD Junxiao Shi,
ICMP (Internet Control Message Protocol) Computer Networks By: Saeedeh Zahmatkesh spring.
Mobile IP: Introduction Reference: “Mobile networking through Mobile IP”; Perkins, C.E.; IEEE Internet Computing, Volume: 2 Issue: 1, Jan.- Feb. 1998;
Proxy-assisted Content Sharing Using Content Centric Networking (CCN) for Resource-limited Mobile Consumer Devices Jihoon Lee, Dae Youb Kim IEEE Transactions.
M. Menelaou CCNA2 DYNAMIC ROUTING. M. Menelaou DYNAMIC ROUTING Dynamic routing protocols can help simplify the life of a network administrator Routing.
Chapter Nine The Session Layer. Objectives We’ll see how a new session is created, maintained, and dismantled. The process of logon authentication will.
1 Routing. 2 Routing is the act of deciding how each individual datagram finds its way through the multiple different paths to its destination. Routing.
Ad hoc On-demand Distance Vector (AODV) Routing Protocol ECE 695 Spring 2006.
NDNLPv2 Junxiao Shi, Outline This document recalls the history of NDN link protocols, presents the format of NDNLPv2, describes its semantics,
Access Strategy Junxiao Shi, Problem 2.
NFD forwarding pipelines Junxiao Shi,
Mobile Communications: Mobile Transport Layer Mobile Communications Chapter 10: Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping.
CS332, Ch. 26: TCP Victor Norman Calvin College 1.
Interest NACK Junxiao Shi, Introduction Interest NACK, aka "negative acknowledgement", is sent from upstream to downstream to inform that.
1 Network Layer Lecture 13 Imran Ahmed University of Management & Technology.
NFD forwarding pipelines Junxiao Shi,
Lemonade Requirements for Server to Client Notifications draft-ietf-lemonade-server-to-client-notifications-00.txt S. H. Maes C. Wilson Lemonade Intermediate.
Interest NACK Junxiao Shi, Introduction Interest NACK, aka "negative acknowledgement", is sent from upstream to downstream to inform that.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 6: Static Routing Routing and Switching Essentials.
NFD Tunnel Authentication Junxiao Shi,
WEEK 11 – TOPOLOGIES, TCP/IP, SHARING & SECURITY IT1001- Personal Computer Hardware System & Operations.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 6: Static Routing Routing and Switching Essentials.
ERICSON BRANDON M. BASCUG Alternate - REGIONAL NETWORK ADMINISTRATOR HOW TO TROUBLESHOOT TCP/IP CONNECTIVITY.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 6: Static Routing Routing Protocols.
Ad Hoc On-Demand Distance Vector Routing (AODV) ietf
18-WAN Technologies and Dynamic routing Dr. John P. Abraham Professor UTPA.
BGP Basics BGP uses TCP (port 179) BGP Established unicast-based connection to each of its BGP- speaking peers. BGP allowing the TCP layer to handle such.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
Improving Fault Tolerance in AODV Matthew J. Miller Jungmin So.
1 Switching and Forwarding Sections Connecting More Than Two Hosts Multi-access link: Ethernet, wireless –Single physical link, shared by multiple.
Fault Tolerance (2). Topics r Reliable Group Communication.
CHAPTER 6: STATIC ROUTING Static Routing 2 nd semester
+ Lecture#2: Ethernet Asma ALOsaimi. + Objectives In this chapter, you will learn to: Describe the operation of the Ethernet sublayers. Identify the major.
NFD forwarding pipelines Junxiao Shi,
NFD forwarding pipelines Junxiao Shi,
Address Resolution Protocol Yasir Jan 20 th March 2008 Future Internet.
Static Routing CCNA Routing and Switching Semester 2 Chapter 6
PART1 Data collection methodology and NM paradigms 1.
Route Readvertise Junxiao Shi, Introduction This document proposes a program to readvertise routes from one route origin to another. The initial.
NFD forwarding pipelines Junxiao Shi,
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 8: Single-Area OSPF Routing & Switching.
Chapter 9: Transport Layer
Exposing Link-Change Events to Applications
Instructor Materials Chapter 9: Transport Layer
NFD Tunnel Authentication
Access Strategy Junxiao Shi,
Packet Switching Datagram Approach Virtual Circuit Approach
NFD forwarding pipelines
IP Multicast Fast Reroute follow-up on draft-dimitri-rtgwg-mfrr-framework-00 RTG Working Group IETF 75 meeting Stockholm (Sweden) July 2009.
Internet Networking recitation #12
Chapter 2: Static Routing
Static Routing 1st semester
Static Routing 2nd semester
NFD Tunnel Authentication
Presentation transcript:

NFD Permanent Face Junxiao Shi,

Outline what is a permanent face necessity and benefit of having permanent faces guarantees provided by a permanent face semantics of up/down state of a permanent face how forwarding pipelines and strategy could make use of up/down state of a permanent face impact on RIB daemon, NLSR, and network operations 2

Background 3

Socket error in a face Most NFD face types are implemented with socket API. A socket error occurs when the underlying communication channel is broken, for example: a connected local application closes its client face, local IP address changes, remote NFD has crashed. Currently, a socket error in a point-to-point face is treated as a face failure and causes NFD to close the face. Note: This applies to point-to-point faces only. A socket error in a multi-access face would not cause NFD to close the face. 4

"Persistent" face: still affected by socket error A face has a persistency property: A face has persistency=on-demand if it's created by accepting an incoming connection. A face has persistency=persistent if it's created by a management command. An on-demand face is closed automatically if it's left idle for a certain duration. A persistent face does not have such idle timeout. However, both on-demand and "persistent" faces cannot survive a socket error. When socket error occurs, the face is closed. 5

Consequence of closing a face When a face failure occurs, NFD closes the face, which triggers a chain of events: 1.FIB nexthop records referencing the failing face are removed. 2.A "face destroy" notification is sent. 3.Upon notification, RIB routes referencing the failing face are removed. 4.If an external process sends a management command to create a face toward the same peer, the new face would have a different FaceId. 6

Is this desirable? Is it desirable that a face is closed when there's a socket error? Sometimes, it's desirable: An end host moves to a new network; the tunnel to the old network's gateway router should be closed. Sometimes, it's undesirable: see next two examples 7

Backbone tunnel In a large NDN network where UDP tunnels are used as backbone links, those tunnels should not be closed upon socket errors. In today's NDN testbed, backbone tunnels are created by NLSR, because NFD is unable to make backbone tunnels permanent. But, Maintaining tunnels shouldn't be the responsibility of a routing daemon. This doesn't work well because NLSR cannot quickly detect when the temporary link error has resolved. 8

Unattended device In a home network where an unattended device (eg. a temperature sensor) connects to the home router over a UDP tunnel, the tunnel should be kept even if the home router reboots. When the home router reboots, the device may see a socket error and its NFD would close the face, causing the device to lose connectivity. Although the device could be scripted to reconnect periodically or upon face destroy notification, it's desirable not to disconnect in the first place. 9

Introduction 10

What is permanent face? A permanent face is a face maintained by NFD, not affected by failures, and kept until destroyed by management. A face can be marked as a permanent face by setting its persistency property to a new value "permanent". 11

UP/DOWN state A face has a "link state" property: UP: the face is available to transmit and receive packets DOWN: the face cannot transmit and receive packets Transition between UP and DOWN link states should trigger face status change notifications. Forwarding should notice when a face is DOWN: avoid sending Interests on this face, not expect Data coming back on this face. 12

Socket error on permanent face A socket error is still a face failure. When a face failure occurs on a permanent face, instead of closing the face, NFD would: 1.set the face to DOWN state 2.recreate or reconnect the socket, retry indefinitely, until connectivity is reestablished 3.set the face to UP state During this process: FaceId remains unchanged. FIB nexthop records and RIB routes are not removed. The face may be destroyed with a management command. 13

Face Implementation 14

Face Types Permanent face SHOULD be implemented for: UDP unicast: used by majority of backbone links Permanent face MAY be implemented for: TCP: used by some backbone links; implementation is more difficult because it involves reconnecting Permanent face is not applicable to: UNIX socket, TCP local, WebSocket: NFD does not make outgoing connection for those face types, so all faces are on-demand UDP multicast, Ethernet multicast: not point-to-point 15

BFD and permanent face NDNLPv2 BFD feature should be used on a permanent face. When a face is DOWN, BFD feature can detect when the face can go UP again. When a face is UP, BFD feature can detect a failure and declare the face as DOWN. Socket errors can be handled by BFD feature as a signal of face failure. 16

Forwarding Changes 17

Don't send Interest to DOWN face, unless strategy wants to probe Strategy SHOULD notice an upstream face is DOWN, and SHOULD NOT send Interests to this face. If a strategy attempts to send an Interest to a DOWN face, a PIT out record will be created, and the face SHOULD transmit the Interest if the underlying socket allows immediate transmission. The transmission serves as a probe in case connectivity has restored. The face SHOULD NOT buffer the Interest for transmission at a later time. 18

Don't expect Data from DOWN face Strategy MAY be triggered when an upstream face to which an Interest has been forwarded goes DOWN. When triggered, strategy MAY either try alternate paths, or return NACK to downstreams. The trigger is per PIT entry, because strategy is unable to enumerate the PIT. But this implies forwarding needs to enumerate PIT when a face goes DOWN. This carries a significant overhead. Optimization, such as "per-face pending Interest list", is needed. 19

Don't stop trying even if downstream is DOWN Strategy SHOULD continue trying to retrieval Data, even if all downstreams are DOWN. Retrievals are hop-by-hop and shouldn't be tied to downstream connectivity. This is especially important in a network with intermittent connectivity (eg. Delay Tolerant Network). Forwarder SHOULD return Data/Nack to a downstream even if it's DOWN. The face SHOULD transmit the Data if the underlying socket allows immediate transmission. The transmission serves as a probe in case connectivity has restored. The face SHOULD NOT buffer the Interest for transmission at a later time. 20

Impacts 21

Impact on RIB No semantic or functionality change is needed for RIB. RIB updates would be less frequent because there are less face destroy events. 22

Impact on end host operation An end host user won't worry anymore about losing connection due to underlying connection errors. When a permanent face creation command line is written into NFD startup script, the user can rest assumed that the connection would be available whenever underlying network permits. Prefix registration won't be lost due to face failures. When a permanent face reconnects, existing routes are kept. 23

Impact on NLSR Faces for backbone link SHOULD NOT be created by NLSR. Instead, 1.NFD startup script creates backbone link faces. Neighbor router name and routing cost are set as part of "face description". 2.NLSR, upon initialization, requests a face dataset with query condition Persistency=permanent, and connects to adjacent routers. 3.NLSR monitors face status change events, and updates its Adjacency LSA when face goes UP/DOWN. 24

Impact on network operations Backbone links are defined in NFD startup script, not in NLSR configuration file. It's possible to add or remove backbone links without restarting NLSR. 25