blob: c00a6ce2ca8d1a71db08c9546480a9b432751e69 [file] [log] [blame]
Junxiao Shi6c135622016-11-21 14:30:33 +00001nfdc-face
2=========
3
4SYNOPSIS
5--------
Junxiao Shi0d976922017-04-01 14:35:21 +00006| nfdc face [list [[remote] <FACEURI>] [local <FACEURI>] [scheme <SCHEME>]]
Junxiao Shid6958012017-02-20 03:34:48 +00007| nfdc face show [id] <FACEID>
Davide Pesaventod2147442018-02-19 23:58:17 -05008| nfdc face create [remote] <FACEURI> [[persistency] <PERSISTENCY>] [local <FACEURI>]
9| [reliability on|off] [congestion-marking on|off]
10| [congestion-marking-interval <MARKING-INTERVAL>]
11| [default-congestion-threshold <CONGESTION-THRESHOLD>]
Eric Newberry4f8dd962018-06-17 21:32:07 -070012| [mtu <MTU>]
Junxiao Shid6958012017-02-20 03:34:48 +000013| nfdc face destroy [face] <FACEID|FACEURI>
Junxiao Shi1d7fef52017-02-02 05:33:14 +000014| nfdc channel [list]
Junxiao Shi6c135622016-11-21 14:30:33 +000015
16DESCRIPTION
17-----------
18In NFD, a face is the generalization of network interface.
19It could be a physical network interface to communicate on a physical link,
20an overlay communication channel between NFD and a remote node,
21or an inter-process communication channel between NFD and a local application.
22
Junxiao Shi0d976922017-04-01 14:35:21 +000023The **nfdc face list** command shows a list of faces, their properties, and statistics,
24optionally filtered by remote endpoint, local endpoint, and FaceUri scheme.
25When multiple filters are specified, returned faces must satisfy all filters.
Junxiao Shi6c135622016-11-21 14:30:33 +000026
Junxiao Shi1f481fa2017-01-26 15:14:43 +000027The **nfdc face show** command shows properties and statistics of one specific face.
28
Junxiao Shi0d976922017-04-01 14:35:21 +000029The **nfdc face create** command creates a UDP unicast, TCP, or Ethernet unicast face.
30Local FaceUri is required for creating Ethernet unicast faces; otherwise it must be omitted.
Eric Newberry84d3adc2017-08-09 23:31:40 -040031The NDNLPv2 unicast reliability feature may be explicitly enabled by specifying **reliability on**
32or explicitly disabled by specifying **reliability off**.
33If enabled, this feature must also be enabled on the other endpoint to function properly.
Eric Newberryde332452018-01-30 11:45:32 -070034Reliability is disabled by default.
35The send queue congestion detection and signaling feature may be explicitly enabled by specifying
36**congestion-marking on** or explicitly disabled by specifying **congestion-marking off**.
Eric Newberry17d18492018-02-10 22:50:06 -070037Congestion marking is enabled by default on TCP, UDP, and Unix stream faces and is disabled by
38default on all other face types.
Eric Newberryde332452018-01-30 11:45:32 -070039Parameters for this feature can set with the **congestion-marking-interval** option (specified in
40milliseconds) and the **default-congestion-threshold** option (specified in bytes).
Eric Newberry4f8dd962018-06-17 21:32:07 -070041The MTUs of unicast Ethernet and UDP faces may be overridden using the **mtu** parameter (specified
42in bytes).
43However, a face may choose to limit the range of acceptable values for this parameter or disregard
44it altogether when setting its MTU.
45The MTU of an existing face may not be modified using this parameter and will result in an error.
Junxiao Shi6c135622016-11-21 14:30:33 +000046
Junxiao Shi05dd4442017-02-06 22:50:07 +000047The **nfdc face destroy** command destroys an existing face.
Junxiao Shi6c135622016-11-21 14:30:33 +000048
Junxiao Shi1d7fef52017-02-02 05:33:14 +000049The **nfdc channel list** command shows a list of channels.
50Channels are listening sockets that can accept incoming connections and create new faces.
51
Junxiao Shi6c135622016-11-21 14:30:33 +000052OPTIONS
53-------
Junxiao Shif0dfb332017-02-02 05:32:25 +000054<FACEID>
Junxiao Shi1f481fa2017-01-26 15:14:43 +000055 Numerical identifier of the face.
Junxiao Shi1d7fef52017-02-02 05:33:14 +000056 It is displayed in the output of **nfdc face list** and **nfdc face create** commands.
Junxiao Shi1f481fa2017-01-26 15:14:43 +000057
Junxiao Shif0dfb332017-02-02 05:32:25 +000058<FACEURI>
Junxiao Shi0d976922017-04-01 14:35:21 +000059 A URI representing the remote or local endpoint of a face.
60 Examples:
Junxiao Shi6c135622016-11-21 14:30:33 +000061
Junxiao Shi0d976922017-04-01 14:35:21 +000062 - udp4://192.0.2.1:6363
63 - udp6://[2001:db8::1]:6363
64 - udp://example.net
65 - tcp4://192.0.2.1:6363
66 - tcp6://[2001:db8::1]:6363
67 - tcp://example.net
68 - unix:///var/run/nfd.sock
69 - fd://6
70 - ether://[08:00:27:01:01:01]
71 - dev://eth0
Junxiao Shi6c135622016-11-21 14:30:33 +000072
73 When a hostname is specified, a DNS query is used to obtain the IP address.
74
Junxiao Shi0d976922017-04-01 14:35:21 +000075<SCHEME>
76 The scheme portion of either remote or local endpoint.
77 Examples:
78
79 - udp4
80 - unix
81 - dev
82
Junxiao Shi1d7fef52017-02-02 05:33:14 +000083<PERSISTENCY>
84 Either "persistent" or "permanent".
85 A "persistent" face (the default) is closed when a socket error occurs.
86 A "permanent" face survives socket errors, and is closed only with a **nfdc destroy** command.
87
Eric Newberryde332452018-01-30 11:45:32 -070088<MARKING-INTERVAL>
89 The initial marking interval (in milliseconds) during an incident of congestion.
90
91<CONGESTION-THRESHOLD>
92 This value serves two purposes:
93 It is the maximum bound of the congestion threshold for the face, as well as the default
94 threshold used if the face does not support retrieving the capacity of the send queue.
95
Junxiao Shi1f481fa2017-01-26 15:14:43 +000096EXIT CODES
97----------
Junxiao Shi1f481fa2017-01-26 15:14:43 +0000980: Success
99
1001: An unspecified error occurred
101
1022: Malformed command line
103
Junxiao Shi05dd4442017-02-06 22:50:07 +00001043: Face not found (**nfdc face show** and **nfdc face destroy** only)
Junxiao Shi6c135622016-11-21 14:30:33 +0000105
Junxiao Shi05dd4442017-02-06 22:50:07 +00001064: FaceUri canonization failed (**nfdc face create** and **nfdc face destroy** only)
107
1085: Ambiguous: multiple matching faces are found (**nfdc face destroy** only)
Junxiao Shi1d7fef52017-02-02 05:33:14 +0000109
Junxiao Shi0e13e1e2018-01-22 08:29:12 +0000110EXAMPLES
111--------
112nfdc face list
113 List all faces.
114
115nfdc face list scheme udp4
116 List all UDP-over-IPv4 faces.
117
118nfdc face show id 300
119 Show information about the face whose FaceId is 300.
120
121nfdc face create remote udp://router.example.net
122 Create a face with the specified remote FaceUri, keeping all other settings at their defaults.
123
124nfdc face create remote ether://[08:00:27:01:01:01] local dev://eth2 persistency permanent
125 Create a face with the specified remote FaceUri, local FaceUri, and persistency.
126
127nfdc face create remote udp://router.example.net reliability on
128 Create a face with the specified remote FaceUri and enable NDNLP reliability.
129
Eric Newberry17d18492018-02-10 22:50:06 -0700130nfdc face create remote udp://router.example.net congestion-marking-interval 100 default-congestion-threshold 65536
131 Create a face with the specified remote FaceUri. Set the base congestion marking interval to
132 100 ms and the default congestion threshold to 65536 bytes.
133
134nfdc face create remote udp://router.example.net congestion-marking off
135 Create a face with the specified remote FaceUri and explicitly disable congestion marking.
Eric Newberryde332452018-01-30 11:45:32 -0700136
Eric Newberry4f8dd962018-06-17 21:32:07 -0700137nfdc face create remote udp://router.example.net mtu 4000
138 Create a face with the specified remote FaceUri and an MTU of 4000 bytes (which may be ignored
139 or limited to within a certain range by the internal logic of the face).
140
Junxiao Shi0e13e1e2018-01-22 08:29:12 +0000141nfdc face destroy 300
142 Destroy the face whose FaceId is 300.
143
144nfdc face destroy udp4://192.0.2.1:6363
145 Destroy the face whose remote FaceUri is "udp4://192.0.2.1:6363".
146
Junxiao Shi6c135622016-11-21 14:30:33 +0000147SEE ALSO
148--------
149nfd(1), nfdc(1)