close
Warning:
Can't synchronize with repository "(default)" ("(default)" is not readable or not a Git repository.). Look in the Trac log for more information.
- Timestamp:
-
Aug 9, 2011, 7:38:33 PM (13 years ago)
- Author:
-
nkiran
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v2
|
v3
|
|
13 | 13 | |
14 | 14 | {{{ |
15 | | LNRS servers GNRS servers |
16 | | ^ ^ |
17 | | | | |
18 | | | | |
19 | | v v |
20 | | +-----------+ req +-------------+ +-------------+ +-------------+ |
21 | | | | -------> | Local Agent | ------> | | ------> | | |
22 | | |Host/Client| | OR | | LNRS server | | GNRS server | |
23 | | | | <------- | Gateway | <------ | | <------ | | |
24 | | +-----------+ resp +-------------+ +-------------+ +-------------+ |
25 | | ^ ^ |
26 | | | | |
27 | | | | |
28 | | v v |
29 | | LNRS servers GNRS servers |
| 15 | LNRS servers GNRS servers |
| 16 | ^ ^ |
| 17 | | | |
| 18 | | | |
| 19 | v v |
| 20 | +-----------+ req +-------------+ +-------------+ +-------------+ |
| 21 | | | ----> | Local Agent | ----> | | ----> | | |
| 22 | |Host/Client| | OR | | LNRS server | | GNRS server | |
| 23 | | | <---- | Gateway | <---- | | <---- | | |
| 24 | +-----------+ resp +-------------+ +-------------+ +-------------+ |
| 25 | ^ ^ |
| 26 | | | |
| 27 | | | |
| 28 | v v |
| 29 | LNRS servers GNRS servers |
30 | 30 | }}} |
31 | 31 | |
32 | 32 | {{{ |
33 | 33 | A host/client may interact with the name resolution service to either (1) report |
34 | | or update it's present network location binding(s), or, (2) to query corresponding |
| 34 | or update it's present network address binding(s), or, (2) to query corresponding |
35 | 35 | bindings of other network entities. The target of such a query operation may |
36 | 36 | constitute either a host, a service, content or even a named context. Similarly, |
… |
… |
|
44 | 44 | by a periodic broadcast from the agent itself. |
45 | 45 | |
46 | | }}} |
| 46 | It is presumed that the local agent or gateway can interpret name resolution request |
| 47 | messages and are configured to forward them to a local name resolution service (LNRS) |
| 48 | server. The agent or gateway implementations may support responding to 'lookup' |
| 49 | requests if the request options do not forbid doing so. |
| 50 | |
| 51 | Next, the LNRS server may decide to respond to the request if the request options |
| 52 | allow it, subject to the following implicit exclusions: |
| 53 | (1) the request is an 'insert' (should be done on global service plane), |
| 54 | (2) request is an update, and the new address bindings differ from previous beyond |
| 55 | just the local address component |
| 56 | |
| 57 | A request that reaches the global service plane is handled by the receiving GNRS |
| 58 | server or forwarded onto a peer that can service it. The response, however, is |
| 59 | routed directly back to the original requesting client - doesn't need to retrace |
| 60 | onward path. |
| 61 | }}} |
| 62 | |
| 63 | |
47 | 64 | |
48 | | ==== Request Messages ==== |
| 65 | ==== Requests ==== |
49 | 66 | |
50 | 67 | {{{ |
… |
… |
|
91 | 108 | unique at client to differentiate among multiple outstanding requests |
92 | 109 | Requestor Address:: |
93 | | route-able network address of request originator, for responding |
| 110 | route-able network address of request origin, for responding |
94 | 111 | Request Payload:: |
95 | 112 | variable size with format defined per request type -- see below |
… |
… |
|
107 | 124 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
108 | 125 | ~ ~ |
109 | | | GUID N-bytes | |
| 126 | | GUID | |
110 | 127 | ~ ~ |
111 | 128 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
… |
… |
|
115 | 132 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ---+ |
116 | 133 | | | | | |
117 | | | Type of Binding | Length of Binding (LB) | | |
| 134 | | Address Type | Address Length | | |
118 | 135 | | | | |Entry |
119 | 136 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |for |
120 | | ~ ~ |Binding#1 |
121 | | | Network Location Binding | | |
| 137 | ~ ~ |Addr#1 |
| 138 | | Network Address#1 | | |
122 | 139 | ~ ~ | |
123 | 140 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ---+ |
124 | 141 | ~ ~ |
125 | | | Bindings #2-#S | |
126 | | ~ ~ |
127 | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
128 | | }}} |
| 142 | | Network Addresses #2-#S | |
| 143 | ~ ~ |
| 144 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 145 | }}} |
| 146 | |
| 147 | GUID:: |
| 148 | id of the network entity whose network address bindings are being inserted/updated |
| 149 | Options:: |
| 150 | TBD - e.g., caching restrictions, TTL |
| 151 | Size:: |
| 152 | number of network address bindings sent in this message |
| 153 | Address Type:: |
| 154 | address made generic to support multiple types such as flat network address, IP, geo location, etc |
| 155 | Address Length:: |
| 156 | length in bytes of corresponding address |
| 157 | Network Address:: |
| 158 | variable length value for the network address binding |
129 | 159 | |
130 | 160 | ===== Lookup Request ===== |
… |
… |
|
166 | 196 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
167 | 197 | ~ ~ |
168 | | | Responder Address N-bytes | |
169 | | ~ ~ |
170 | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
171 | | | Response Code | | |
172 | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
173 | | ~ ~ |
174 | | | Response Payload | |
| 198 | | Origin Address | |
| 199 | ~ ~ |
| 200 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 201 | | Response Code | | |
| 202 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 203 | ~ ~ |
| 204 | | Payload | |
175 | 205 | ~ ~ |
176 | 206 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
… |
… |
|
183 | 213 | Request ID:: |
184 | 214 | repeated from original request |
185 | | Responder Address:: |
186 | | route-able address of NRS entity that responded to request |
| 215 | Origin Address:: |
| 216 | route-able address of NRS entity that created the response |
187 | 217 | Response Code:: |
188 | 218 | integer values indicating result of operation and/or error code including SUCCESS, FAILED |
189 | | |
190 | | |
191 | | ==== Early-binding ==== |
| 219 | Payload:: |
| 220 | custom response for each request type |
| 221 | |
| 222 | |
| 223 | == Application Programming Interface == |
| 224 | |
| 225 | |
| 226 | == Client Protocol Stack Functionality == |
| 227 | |
| 228 | ==== Early Binding ==== |
192 | 229 | |
193 | 230 | * It is assumed that an end-host has obtained the GUID(s) of the other communication end-point or network entity through an out-of-band mechanism. |